49 Commits

Author SHA1 Message Date
Ken Thomases
2e636d4fe8 kernel32: For Mac 64-bit, re-enable the inlining of various functions, leveraging the TEB self pointer at %gs:0x30.
On other platforms, gsbase is set to point to Wine's TEB.  So, these functions
can use %gs-relative addressing with the field offsets to access the fields of
the TEB.

On the Mac, gsbase points to internals of the pthread implementation and that
wouldn't work.  However, Wine hijacks %gs:0x30 and stores the TEB address there.
So, we access the TEB fields by first loading the TEB address and then
accessing its fields relative to that.

Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:02 +09:00
Hans Leidekker
c90845cf93 kernel32: Improve the stub for GetThreadPreferredUILanguages.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:30:57 +09:00
Michael Müller
9d58aac467 kernel32: Implement Set/GetThreadGroupAffinity and add tests.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-02 18:11:31 +09:00
Sebastian Lackner
6c586d5db8 kernel32: Forward threadpool wait functions to ntdll. 2015-07-06 14:49:39 +09:00
Sebastian Lackner
eadd27a38a kernel32: Forward remaining threadpool functions to ntdll. 2015-07-03 13:08:20 +09:00
Sebastian Lackner
56b9af1150 kernel32: Forward threadpool instance functions to ntdll. 2015-07-03 13:08:05 +09:00
Sebastian Lackner
4b0ecd3e22 kernel32: Forward threadpool timer functions to ntdll. 2015-07-03 13:07:47 +09:00
Sebastian Lackner
1165cc0953 kernel32: Forward threadpool work functions to ntdll. 2015-07-03 13:07:37 +09:00
Sebastian Lackner
a54d972868 kernel32: Forward threadpool cleanup group functions to ntdll. 2015-07-03 13:07:18 +09:00
Nikolay Sivov
85a3d09329 kernel32: Implement GetProcessIdOfThread(). 2015-03-20 21:31:57 +09:00
Charles Davis
193d15cc3c kernel32: Don't use %gs on 64-bit Mac OS. 2015-01-23 11:11:37 +01:00
Sebastian Lackner
cfd09b0967 ntdll: Fix leaking activation context when terminating via exit_thread(). (Valgrind). 2014-06-23 10:17:26 +02:00
Alexandre Julliard
4af4df5af3 ntdll: Add stubs for the SRW lock functions. 2013-09-03 16:58:19 +02:00
Dan Kegel
073d7212a7 kernel32: Make SetThreadPriorityBoost return success. 2013-05-28 14:54:49 +02:00
Dan Kegel
db48235880 kernel32: Quiet an extremely verbose stub fixme. 2012-06-11 11:27:24 +02:00
Daniel Jelinski
53b551440c kernel32: Make SetThreadStackGuarantee stub return TRUE. 2012-06-01 13:24:47 +02:00
André Hentschel
5e5b435e7d kernel32: Add stub for SetThreadStackGuarantee. 2012-05-29 10:44:28 +02:00
Louis Lenders
3f1b41ebb2 kernel32: Add stubs for several SRW lock functions. 2011-10-13 19:57:19 +02:00
Louis Lenders
e24438c1d1 kernel32: Add stub for GetThreadPreferredUILanguages. 2011-10-12 17:07:32 +02:00
Bernhard Loos
4e4bdbe53e kernel32: Make CreateThread hotpatchable. 2011-08-22 19:49:39 +02:00
Austin English
cad8afb8ee kernel32: Add a stub for SetThreadPreferredUILanguages. 2011-04-25 13:03:07 +02:00
Hans Leidekker
06562d16b3 kernel32: Add a stub implementation of GetThreadIOPendingFlag. 2011-01-10 10:42:23 +01:00
Austin English
4be494c081 kernel32: Add a stub for GetThreadUILanguage. 2010-09-08 13:23:05 +02:00
Alexandre Julliard
383879f686 kernel32: Add an x86_64 implementation for the TEB access functions. 2010-05-07 14:15:25 +02:00
Alexandre Julliard
18dbaadfc5 kernel32: Define GetProcessHeap as an assembler function on i386. 2010-05-07 14:07:45 +02:00
Peter Rosin
678cb27b3a kernel32: Document SetThreadErrorMode and GetThreadErrorMode. 2010-02-05 10:07:40 +01:00
Peter Rosin
805f7d79db kernel32: Add SetThreadErrorMode and GetThreadErrorMode. 2010-02-04 13:39:27 +01:00
Alexandre Julliard
8268ed9783 kernel32: Do not include 16-bit headers in 32-bit files. 2009-12-30 16:21:56 +01:00
Alexandre Julliard
b6e0b3428d kernel32: Move the 16-bit thread and process functions to kernel16.c. 2009-10-08 11:11:45 +02:00
Alexandre Julliard
fe2c157fe9 kernel32: Move the 16-bit error functions to error16.c. 2009-10-08 11:10:08 +02:00
Alexandre Julliard
b088cc5781 kernel32: Moved GetThreadSelectorEntry to thread.c. 2009-09-28 19:58:45 +02:00
Alexandre Julliard
cb0607ced2 kernel32: Fix the GetThreadPriorityBoost return value. 2009-08-29 16:48:54 +02:00
Andrew Nguyen
20276d0b38 kernel32: Revise SetThreadIdealProcessor to return success. 2009-08-07 14:57:31 +02:00
Alexandre Julliard
d303d9dc29 kernel32: Add appropriate stdcall decorations to assembly functions. 2009-06-15 13:42:26 +02:00
Lionel Debroux
e85a037516 kernel32: Fix doc header for SetThreadIdealProcessor. 2009-05-21 16:17:50 +02:00
Alexandre Julliard
fea2aa55d0 include: Fix the 64-bit value of magic handle constants. 2008-12-08 15:51:22 +01:00
Alexandre Julliard
74cdb539a4 ntdll: Store the exit code in the server in RtlExitUserThread. 2008-10-29 20:37:43 +01:00
Alexandre Julliard
94e217891c exception.h: Make the RtlUnwind wrapper available separately.
Also avoid dependency on winternl.h.
2008-07-03 13:08:19 +02:00
Austin English
d5de9977df kernel32: Spelling fixes. 2008-03-18 11:44:09 +01:00
Alexandre Julliard
5625c6079e Get rid of the global thread.h header. 2008-03-01 11:57:00 +01:00
Francois Gouget
5f7a9cea38 Assorted spelling fixes. 2007-12-07 16:35:32 +01:00
Rob Shearman
8296548bb5 kernel32: Implement GetThreadId. 2007-11-13 13:29:27 +01:00
Alexandre Julliard
797dd942ec ntdll: Implemented handling of the per-thread activation context stack. 2007-07-19 17:07:48 +02:00
Dmitry Timoshkov
a67b689121 kernel32: Fix compilation warnings in 64-bit mode. 2007-05-23 13:13:54 +02:00
Dmitry Timoshkov
5f1a234731 kernel32: Fix the size of ThreadAffinityMask to match PSDK. 2007-05-21 19:11:01 +02:00
Andrew Talbot
7919badd70 kernel32: Exclude unused headers. 2007-05-07 20:35:07 +02:00
Alexandre Julliard
7a383cf83f ntdll: Abuse RtlCreateUserThread to call the thread function for CreateThread directly. 2007-01-18 15:02:11 +01:00
Michael Stefaniuc
8c38b88068 kernel32: Win64 printf format warning fixes. 2006-10-13 12:08:25 +02:00
Alexandre Julliard
489d87d1e5 kernel32: Renamed the kernel directory to kernel32.
Also get rid of the kernel/messages subdirectory.
2006-09-12 13:34:06 +02:00