Commit Graph

49 Commits

Author SHA1 Message Date
Alexandre Julliard 7e112c2917 loader: Setup the TLS register on x86-64 for stack protector checks. 2010-12-21 19:38:27 +01:00
Alexandre Julliard 61d2d80795 loader: Define asm functions instead of inlines for x86-64 syscalls to avoid trouble with register constraints. 2010-12-18 12:33:29 +01:00
Alexandre Julliard 0a0862001b loader: Build the preloader for x86-64. 2010-12-16 17:59:24 +01:00
Alexandre Julliard fe031c937d loader: Use long instead of int in the preloader for anything that can store a pointer. 2010-12-16 16:53:24 +01:00
Alexandre Julliard 144cb78dba loader: Make sure the new stack is 16-byte aligned in the preloader. 2010-12-16 16:52:02 +01:00
Harald Hoyer 2bea45dd0a preloader: Fix moving of auxiliary values. 2010-07-29 17:33:35 +02:00
Austin English df9fda760e loader: Remove mapat from map_so_lib, where it is unused. 2010-05-28 12:31:12 +02:00
Alexandre Julliard fa6ffb4d5d Fix empty function prototypes. 2009-10-07 12:24:53 +02:00
Alexandre Julliard 4d35f3f270 preloader: Reserve addresses only up to 0x68000000, that should be enough for ole32. 2009-07-01 16:03:56 +02:00
Alexandre Julliard 8d833ee2e7 loader: Reserve some more memory to cover the native ole32 addresses. 2009-06-25 14:34:11 +02:00
Stefan Reimer 3dcd1285f1 loader: Fix build with gcc-4.3 and ssp. 2009-01-04 13:33:01 +01:00
Alexandre Julliard 912e4d4def loader: Reserve some space for the virtual heap too. 2008-11-07 11:05:38 +01:00
Alexandre Julliard 7a4d575029 preloader: Silence the warning for the low 64k. 2008-05-05 19:46:15 +02:00
Alexandre Julliard 195ca1e85f preloader: Reserve low memory areas in separate chunks. 2008-04-14 20:38:17 +02:00
Francois Gouget d8c41a25da Spelling fix in the ldt bitfields. 2008-04-14 12:40:22 +02:00
Joris Huizer e1e54d1ee7 preloader: sign-compare fix. 2007-03-05 15:31:56 +01:00
Alexandre Julliard 092ac1fbf5 preloader: Added printf format checking and fix some formats. 2007-01-11 12:46:06 +01:00
Alexandre Julliard 13029a2536 preloader: Remove reserved ranges that we failed to allocate. 2007-01-11 12:35:42 +01:00
Alexandre Julliard 4d9f3dfae1 preloader: Reset both AT_SYSINFO and AT_SYSINFO_EHDR when one of them conflicts. 2007-01-02 12:21:45 +01:00
Alexandre Julliard 4c4094e86e preloader: Clear %gs again before calling the interpreter entry point. 2006-11-04 20:25:06 +01:00
Alexandre Julliard a68d293bae preloader: Setup a fake thread-local storage block pointed to by %gs. 2006-11-03 13:55:41 +01:00
Alexandre Julliard 30a3866b78 preloader: Added support for the new style DT_GNU_HASH symbol table. 2006-07-31 21:02:38 +02:00
Alexandre Julliard 51d8482222 preloader: Fixed type checking in symbol lookup. 2006-07-31 17:44:20 +02:00
Alexandre Julliard 8aab67d238 preloader: Properly use the ELF hash table when looking up a symbol. 2006-07-31 17:44:20 +02:00
Alexandre Julliard e325efbd8d preloader: Allocate more space in low memory as well as for top-down allocations. 2006-07-24 15:25:39 +02:00
Alexandre Julliard 875b5db17b preloader: Make sure the WINEPRELOADRESERVE area doesn't overlap the low memory area. 2006-07-19 15:06:16 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Alexandre Julliard 0216c404dc preloader: Workaround for broken no-exec protections.
Add an executable page at the top of the address space to defeat
broken no-exec protections that play with the code selector limit.
2006-04-12 19:53:16 +02:00
Alexandre Julliard c20d6c4095 loader: Hide the preloader from the ps output. 2006-03-31 19:16:22 +02:00
Eric Pouech e66e227dbe Fixes for missing prototypes warnings. 2006-02-06 13:13:28 +01:00
Mike McCormack 7cd9a8f8dc preloader: Allow compiling the preloader with -fstack-protector. 2006-01-26 13:21:54 +01:00
Alexandre Julliard 0577113e35 preloader: Reserve some space for the shared user data. 2005-12-14 12:19:18 +01:00
Alexandre Julliard cc01e8ff05 Preserve 16-byte stack alignment in the various assembly
functions. Needed for MacOSX.
2005-11-23 19:55:06 +01:00
Marcus Meissner 2b6e7dad58 Elf32_auxv_t.a_un.a_ptr no longer exists in HEAD glibc CVS, use
a_val.
2005-06-02 10:30:08 +00:00
Francois Gouget 821d4c4645 Fix nativeapi.pm so it knows about AC_HEADER_STAT().
Make the error message about unexpected '#ifdef HAVE_XXX' clearer.
Protect sys/stat.h #includes with the corresponding '#ifdef HAVE_XXX'
check.
2005-05-06 16:22:54 +00:00
Aaron Arvey a31a75244c Added __bb_init_func for linking purposes. 2005-04-15 16:13:49 +00:00
Mike Hearn fa153c62dd Increase PE reserve area size to 512Mb. 2005-03-22 16:42:25 +00:00
Rémi Assailly 193d527736 char -> const char fixes. 2005-01-28 14:02:52 +00:00
Peter Chapman 505dfdefb5 Fix up several inline assembler blocks so that they produce correct
code with the -fomit-frame-pointer gcc flag.
2004-12-02 18:19:25 +00:00
Alexandre Julliard e9f2eb5241 Support compiling with -fPIC for people who somehow think this is a
good idea.
2004-09-24 00:25:32 +00:00
Alexandre Julliard 0c8d6908df Avoid using strlen. 2004-07-06 18:46:05 +00:00
Mike McCormack 2113bd43f1 Define AT_SYSINFO_* if it's missing. 2004-06-28 20:28:05 +00:00
Alexandre Julliard f558741fab Remove the AT_SYSINFO and AT_SYSINFO_EHDR values if the sysinfo page
is in one of our reserved ranges.
2004-06-26 00:12:20 +00:00
Alexandre Julliard bfac60bfeb Do direct Linux system calls in the preloader to avoid trouble with
some broken static libcs.
2004-06-22 02:42:05 +00:00
Alexandre Julliard c3193925d8 Add the preloader itself as argv[0] and remove it again before running
the real loader, this way the ps output makes more sense.
2004-06-15 20:31:06 +00:00
Alexandre Julliard 9f33a4b109 Make it possible to add auxiliary values to the existing array; this
is required for older kernels.
2004-06-03 23:36:01 +00:00
Alexandre Julliard 92425aab60 Added support for specifying the PE exe address range through the
WINEPRELOADRESERVE environment variable.
2004-06-02 21:40:00 +00:00
Alexandre Julliard 6d2099f4f8 A few small fixes. 2004-06-01 19:47:11 +00:00
Alexandre Julliard b1abca8a5d Initial version of the Wine preloader, used to reserve memory
areas at startup. Based on the work of Mike McCormack.
2004-05-28 20:59:22 +00:00