ntdll: NtCurrentTeb is not exported on x86_64.

This commit is contained in:
Alexandre Julliard 2008-12-15 13:32:15 +01:00
parent a518edc3aa
commit b9e10147d9
3 changed files with 6 additions and 2 deletions

View File

@ -144,7 +144,7 @@
@ stdcall NtCreateTimer(ptr long ptr long) @ stdcall NtCreateTimer(ptr long ptr long)
@ stub NtCreateToken @ stub NtCreateToken
# @ stub NtCreateWaitablePort # @ stub NtCreateWaitablePort
@ stdcall NtCurrentTeb() @ stdcall -arch=i386,sparc,alpha,powerpc NtCurrentTeb()
# @ stub NtDebugActiveProcess # @ stub NtDebugActiveProcess
# @ stub NtDebugContinue # @ stub NtDebugContinue
@ stdcall NtDelayExecution(long ptr) @ stdcall NtDelayExecution(long ptr)

View File

@ -1465,6 +1465,10 @@ __ASM_GLOBAL_FUNC( NtCurrentTeb, ".byte 0x64\n\tmovl 0x18,%eax\n\tret" )
/* Nothing needs to be done. MS C "magically" exports the inline version from winnt.h */ /* Nothing needs to be done. MS C "magically" exports the inline version from winnt.h */
#elif defined(__x86_64__) && defined(__GNUC__)
/* not exported on x86_64 */
#else #else
/**********************************************************************/ /**********************************************************************/

View File

@ -2261,7 +2261,7 @@ extern inline struct _TEB * WINAPI NtCurrentTeb(void)
return teb; return teb;
} }
#elif defined(__x86_64__) && defined(__GNUC__) #elif defined(__x86_64__) && defined(__GNUC__)
extern inline struct _TEB * WINAPI NtCurrentTeb(void) static inline struct _TEB * WINAPI NtCurrentTeb(void)
{ {
struct _TEB *teb; struct _TEB *teb;
__asm__(".byte 0x65\n\tmovq (0x30),%0" : "=r" (teb)); __asm__(".byte 0x65\n\tmovq (0x30),%0" : "=r" (teb));