Jacek Caban
ea5e89a545
winebuild: Make mingw a separated platform from msvc.
...
Based on winegcc.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-26 09:02:04 +01:00
Alexandre Julliard
b636f9816f
krnl386: Move the 16-bit stack out of the WOW32Reserved field.
...
Based on a patch by Sebastian Lackner.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-26 21:31:53 +01:00
Alexandre Julliard
2746797ad5
winebuild: Support building krnl386.exe in PE format.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 10:55:25 +02:00
Alexandre Julliard
7b494f13e7
winebuild: Store wine_ldt_copy pointer in the NE header at load time.
...
Avoids having to import libwine from 16-bit modules.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-17 20:01:01 +02:00
Alexandre Julliard
075e561f5c
winebuild: Don't change %fs and %gs when calling 16-bit register functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-17 20:00:59 +02:00
Alexandre Julliard
96c77a8cf6
winebuild: Stop building the DPMI event check routine.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 17:16:13 +01:00
Alexandre Julliard
e3a236e6ce
winebuild: Remove 32-bit register function support.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-26 10:43:09 +02:00
Alexandre Julliard
9e59362ae3
ntdll: Move the plaform-specific thread data to the SystemReserved2 TEB field.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-19 19:13:30 +02:00
Qian Hong
604c4dba80
ntdll: Correctly document the offset of ntdll_thread_data.
...
This is a follow up of 16ddc62405
.
2015-04-21 14:30:45 +09:00
Sebastian Lackner
4c8b3f63be
winebuild: Conditionally use different code for restoring the context structure.
...
Fixes a regression introduced by 44fbc018ed
.
2015-03-03 18:12:30 +09:00
Sebastian Lackner
44fbc018ed
winebuild: Do not access memory below ESP when restoring thread contexts.
...
Based on a patch by John Reiser.
2015-02-27 15:05:54 +09:00
Frédéric Delanoy
355a0aef8b
winebuild: Avoid dead code in BuildCallFrom16Core (Coverity).
2011-11-28 16:40:47 +01:00
Alexandre Julliard
bea2be5cce
winebuild: Get rid of support for register entry points on x86_64.
2011-01-27 14:12:41 +01:00
Alexandre Julliard
5c2db41cdc
winebuild: Add cfi annotations to the relay functions for i386.
2010-04-12 12:33:19 +02:00
Alexandre Julliard
e550e8a100
winebuild: Add a wrapper function to output cfi directives.
2010-04-11 12:49:00 +02:00
Alexandre Julliard
539da1b073
winebuild: Output the 16-bit asm relay functions as needed and get rid of --relay16 mode.
2010-01-16 15:58:48 +01:00
Alexandre Julliard
10e4a55b6c
winebuild: Output the asm relay functions as needed and get rid of --relay32 mode.
2010-01-16 15:50:27 +01:00
Alexandre Julliard
102dd9e92f
winebuild: Rename __wine_call_from_32_regs for consistency with 64-bit.
2010-01-16 15:41:48 +01:00
Alexandre Julliard
873e027e01
winebuild: Add unwind annotations to all the generated functions for x86_64.
2009-06-16 14:26:51 +02:00
Alexandre Julliard
e00b4582a1
winebuild: Properly restore %rax and %rbx in call_from_regs on x86_64.
2009-06-10 13:22:04 +02:00
Alexandre Julliard
880d00fb43
winebuild: Use iretq on x86_64 to restore more system registers and flags.
2009-05-01 18:03:23 +02:00
Alexandre Julliard
b374e7e36e
winebuild: Don't include any Windows header to avoid data types dependencies.
2009-04-09 20:58:43 +02:00
Alexandre Julliard
89f6bc2ef4
winebuild: Hardcode the stack frame offsets instead of using the data structures.
2009-04-09 20:30:10 +02:00
Alexandre Julliard
d71284f0b4
winebuild: Hardcode the i386 register context offsets instead of using the data structure.
2009-04-09 20:01:56 +02:00
Alexandre Julliard
465ddc51dc
winebuild: Implement register entry points for x86_64.
2009-01-06 17:01:44 +01:00
Alexandre Julliard
e31188d9da
winebuild: Improve the calling sequence for register functions.
...
Pass parameters on the stack instead of retrieving them from the code
stream; this ensures that the code contains only valid instructions.
2009-01-06 12:51:18 +01:00
Alexandre Julliard
8a87aaa9d9
winebuild: Generate the __wine_call_from_32_regs function along with the 16-bit kernel routines.
2008-12-27 19:50:25 +01:00
Alexandre Julliard
5625c6079e
Get rid of the global thread.h header.
2008-03-01 11:57:00 +01:00
Austin English
90f89fa74d
tools: Spelling fixes.
2008-01-18 12:52:09 +01:00
Alexandre Julliard
44c9758d05
ntdll: Move private data to make room in the TEB for the activation context data.
2007-07-19 16:56:10 +02:00
Alexandre Julliard
715804999e
winebuild: Added output() function to properly deal with write errors.
2006-08-11 20:41:29 +02:00
Alexandre Julliard
d489a0a312
winebuild: Get rid of the data16 prefix, it shouldn't be needed anymore and causes warnings.
2006-06-19 21:16:50 +02:00
Alexandre Julliard
fb15dabdcd
winebuild: Fix a few printf format warnings by casting size_t.
2006-06-13 14:14:59 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Marcus Meissner
1ed3ca0883
winebuild: Output a .note.GNU-stack section to allow nonexecutable stack.
2006-01-21 19:23:36 +01:00
Alexandre Julliard
76ece8530a
winebuild: Moved offset definitions to relay.c since they are only
...
needed there.
Hardcoded a couple of TEB offsets to support cross-compilation.
2006-01-20 19:45:57 +01:00
Alexandre Julliard
4ce433d826
ntdll: Move the %gs register to the ntdll_thread_regs structure.
2006-01-20 16:54:11 +01:00
Alexandre Julliard
8651ceb18e
ntdll: Make __wine_call_from_32_restore_regs take a context pointer.
...
Changed exception raise functions to call it explicitly.
2005-12-19 09:59:50 +01:00
Alexandre Julliard
c367dc4f2e
Enforce 16-byte stack alignment when returning from 16-bit code and
...
when calling a register function.
2005-11-28 17:38:40 +01:00
Alexandre Julliard
2aae74dff0
Factor out a couple of useful helper functions.
2005-09-21 11:50:04 +00:00
Alexandre Julliard
c5c6968e96
Fixed stack offset of %eax register.
2005-09-20 11:38:29 +00:00
Alexandre Julliard
96508ad686
Moved return value handling to the individual relay thunks so that we
...
only need one version of wine_call_from_16.
Patch the wine_call_from_16 address along with the cs value directly
in the 16-bit code segment to avoid the need for special magic in the
import thunks.
2005-09-18 12:25:22 +00:00
Alexandre Julliard
89024a63d3
Make the users of wine_call_from_32_regs save %eax so that we don't
...
need a special hack in the import thunk.
Added a get_pc_thunk_eax function to simplify the code a bit.
2005-09-18 11:13:54 +00:00
Alexandre Julliard
13baa7b364
Added a common function to declare global symbols, and make them
...
hidden on platforms that support it.
2005-09-15 18:48:39 +00:00
Alexandre Julliard
7c91993eba
Don't depend on ELF features for PIC code.
...
A couple of optimizations.
2005-07-05 21:06:00 +00:00
Alexandre Julliard
2b33634018
Intercept functions for 16-bit relay debugging by patching the
...
CALLFROM16 table instead of having the wine_call_from_16 functions
call out the relay functions explicitly.
2005-07-05 12:52:07 +00:00
Alexandre Julliard
e56d9deac4
Added vararg argument type so that the relay code can distinguish from
...
a normal cdecl function.
Don't rely on the relay thunk preserving the stack pointer.
2005-07-05 11:50:40 +00:00
Alexandre Julliard
1a0f2863db
Moved all 16-bit relay code to the text section.
...
Changed a few symbol names for better consistency.
2005-07-03 11:28:44 +00:00
Alexandre Julliard
71914125ce
Moved most of the implementation of CALL32_CBClient(Ex) to the C
...
code.
2005-07-01 16:24:32 +00:00
Alexandre Julliard
445fb59802
Replaced all uses of the __ASM_NAME macro by the asm_name function to
...
allow run-time determination of the correct format.
2005-06-27 18:59:54 +00:00