ntoskrnl.exe: Specify fastcall entry points using the appropriate spec file flag.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
e22fda8463
commit
556bc03758
|
@ -1739,12 +1739,8 @@ NTSTATUS WINAPI IoCallDriver( DEVICE_OBJECT *device, IRP *irp )
|
|||
/***********************************************************************
|
||||
* IofCallDriver (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL2_ENTRYPOINT
|
||||
DEFINE_FASTCALL2_ENTRYPOINT( IofCallDriver )
|
||||
NTSTATUS WINAPI DECLSPEC_HIDDEN __regs_IofCallDriver( DEVICE_OBJECT *device, IRP *irp )
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( IofCallDriver, 8 )
|
||||
NTSTATUS WINAPI IofCallDriver( DEVICE_OBJECT *device, IRP *irp )
|
||||
#endif
|
||||
{
|
||||
TRACE( "%p %p\n", device, irp );
|
||||
return IoCallDriver( device, irp );
|
||||
|
@ -2073,12 +2069,8 @@ VOID WINAPI IoCompleteRequest( IRP *irp, UCHAR priority_boost )
|
|||
/***********************************************************************
|
||||
* IofCompleteRequest (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL2_ENTRYPOINT
|
||||
DEFINE_FASTCALL2_ENTRYPOINT( IofCompleteRequest )
|
||||
void WINAPI DECLSPEC_HIDDEN __regs_IofCompleteRequest( IRP *irp, UCHAR priority_boost )
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( IofCompleteRequest, 8 )
|
||||
void WINAPI IofCompleteRequest( IRP *irp, UCHAR priority_boost )
|
||||
#endif
|
||||
{
|
||||
TRACE( "%p %u\n", irp, priority_boost );
|
||||
IoCompleteRequest( irp, priority_boost );
|
||||
|
@ -2088,12 +2080,8 @@ void WINAPI IofCompleteRequest( IRP *irp, UCHAR priority_boost )
|
|||
/***********************************************************************
|
||||
* InterlockedCompareExchange (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL3_ENTRYPOINT
|
||||
DEFINE_FASTCALL3_ENTRYPOINT( NTOSKRNL_InterlockedCompareExchange )
|
||||
LONG WINAPI DECLSPEC_HIDDEN __regs_NTOSKRNL_InterlockedCompareExchange( LONG volatile *dest, LONG xchg, LONG compare )
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( NTOSKRNL_InterlockedCompareExchange, 12 )
|
||||
LONG WINAPI NTOSKRNL_InterlockedCompareExchange( LONG volatile *dest, LONG xchg, LONG compare )
|
||||
#endif
|
||||
{
|
||||
return InterlockedCompareExchange( dest, xchg, compare );
|
||||
}
|
||||
|
@ -2102,12 +2090,8 @@ LONG WINAPI NTOSKRNL_InterlockedCompareExchange( LONG volatile *dest, LONG xchg,
|
|||
/***********************************************************************
|
||||
* InterlockedDecrement (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL1_ENTRYPOINT
|
||||
DEFINE_FASTCALL1_ENTRYPOINT( NTOSKRNL_InterlockedDecrement )
|
||||
LONG WINAPI DECLSPEC_HIDDEN __regs_NTOSKRNL_InterlockedDecrement( LONG volatile *dest )
|
||||
#else
|
||||
DEFINE_FASTCALL1_WRAPPER( NTOSKRNL_InterlockedDecrement )
|
||||
LONG WINAPI NTOSKRNL_InterlockedDecrement( LONG volatile *dest )
|
||||
#endif
|
||||
{
|
||||
return InterlockedDecrement( dest );
|
||||
}
|
||||
|
@ -2116,12 +2100,8 @@ LONG WINAPI NTOSKRNL_InterlockedDecrement( LONG volatile *dest )
|
|||
/***********************************************************************
|
||||
* InterlockedExchange (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL2_ENTRYPOINT
|
||||
DEFINE_FASTCALL2_ENTRYPOINT( NTOSKRNL_InterlockedExchange )
|
||||
LONG WINAPI DECLSPEC_HIDDEN __regs_NTOSKRNL_InterlockedExchange( LONG volatile *dest, LONG val )
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( NTOSKRNL_InterlockedExchange, 8 )
|
||||
LONG WINAPI NTOSKRNL_InterlockedExchange( LONG volatile *dest, LONG val )
|
||||
#endif
|
||||
{
|
||||
return InterlockedExchange( dest, val );
|
||||
}
|
||||
|
@ -2130,12 +2110,8 @@ LONG WINAPI NTOSKRNL_InterlockedExchange( LONG volatile *dest, LONG val )
|
|||
/***********************************************************************
|
||||
* InterlockedExchangeAdd (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL2_ENTRYPOINT
|
||||
DEFINE_FASTCALL2_ENTRYPOINT( NTOSKRNL_InterlockedExchangeAdd )
|
||||
LONG WINAPI DECLSPEC_HIDDEN __regs_NTOSKRNL_InterlockedExchangeAdd( LONG volatile *dest, LONG incr )
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( NTOSKRNL_InterlockedExchangeAdd, 8 )
|
||||
LONG WINAPI NTOSKRNL_InterlockedExchangeAdd( LONG volatile *dest, LONG incr )
|
||||
#endif
|
||||
{
|
||||
return InterlockedExchangeAdd( dest, incr );
|
||||
}
|
||||
|
@ -2144,12 +2120,8 @@ LONG WINAPI NTOSKRNL_InterlockedExchangeAdd( LONG volatile *dest, LONG incr )
|
|||
/***********************************************************************
|
||||
* InterlockedIncrement (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL1_ENTRYPOINT
|
||||
DEFINE_FASTCALL1_ENTRYPOINT( NTOSKRNL_InterlockedIncrement )
|
||||
LONG WINAPI DECLSPEC_HIDDEN __regs_NTOSKRNL_InterlockedIncrement( LONG volatile *dest )
|
||||
#else
|
||||
DEFINE_FASTCALL1_WRAPPER( NTOSKRNL_InterlockedIncrement )
|
||||
LONG WINAPI NTOSKRNL_InterlockedIncrement( LONG volatile *dest )
|
||||
#endif
|
||||
{
|
||||
return InterlockedIncrement( dest );
|
||||
}
|
||||
|
@ -2736,12 +2708,8 @@ NTSTATUS WINAPI ObReferenceObjectByPointer(void *obj, ACCESS_MASK access,
|
|||
/***********************************************************************
|
||||
* ObfReferenceObject (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL1_ENTRYPOINT
|
||||
DEFINE_FASTCALL1_ENTRYPOINT( ObfReferenceObject )
|
||||
void WINAPI DECLSPEC_HIDDEN __regs_ObfReferenceObject( void *obj )
|
||||
#else
|
||||
DEFINE_FASTCALL1_WRAPPER( ObfReferenceObject )
|
||||
void WINAPI ObfReferenceObject( void *obj )
|
||||
#endif
|
||||
{
|
||||
ObReferenceObject( obj );
|
||||
}
|
||||
|
@ -2750,12 +2718,8 @@ void WINAPI ObfReferenceObject( void *obj )
|
|||
/***********************************************************************
|
||||
* ObfDereferenceObject (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL1_ENTRYPOINT
|
||||
DEFINE_FASTCALL1_ENTRYPOINT( ObfDereferenceObject )
|
||||
void WINAPI DECLSPEC_HIDDEN __regs_ObfDereferenceObject( void *obj )
|
||||
#else
|
||||
DEFINE_FASTCALL1_WRAPPER( ObfDereferenceObject )
|
||||
void WINAPI ObfDereferenceObject( void *obj )
|
||||
#endif
|
||||
{
|
||||
ObDereferenceObject( obj );
|
||||
}
|
||||
|
@ -4053,13 +4017,8 @@ typedef struct _EX_PUSH_LOCK_WAIT_BLOCK *PEX_PUSH_LOCK_WAIT_BLOCK;
|
|||
/*********************************************************************
|
||||
* ExfUnblockPushLock (NTOSKRNL.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL2_ENTRYPOINT
|
||||
DEFINE_FASTCALL2_ENTRYPOINT( ExfUnblockPushLock )
|
||||
void WINAPI DECLSPEC_HIDDEN __regs_ExfUnblockPushLock( EX_PUSH_LOCK *lock,
|
||||
PEX_PUSH_LOCK_WAIT_BLOCK block)
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( ExfUnblockPushLock, 8 )
|
||||
void WINAPI ExfUnblockPushLock( EX_PUSH_LOCK *lock, PEX_PUSH_LOCK_WAIT_BLOCK block )
|
||||
#endif
|
||||
{
|
||||
FIXME( "stub: %p, %p\n", lock, block );
|
||||
}
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
@ stdcall -norelay ExAcquireFastMutexUnsafe(ptr)
|
||||
@ stdcall -fastcall ExAcquireFastMutexUnsafe(ptr)
|
||||
@ stub ExAcquireRundownProtection
|
||||
@ stub ExAcquireRundownProtectionEx
|
||||
@ stub ExInitializeRundownProtection
|
||||
@ stub ExInterlockedAddLargeStatistic
|
||||
@ stub ExInterlockedCompareExchange64
|
||||
@ stub ExInterlockedFlushSList
|
||||
@ stdcall -arch=i386 -norelay ExInterlockedPopEntrySList(ptr ptr) NTOSKRNL_ExInterlockedPopEntrySList
|
||||
@ stdcall -arch=i386 -norelay ExInterlockedPushEntrySList (ptr ptr ptr) NTOSKRNL_ExInterlockedPushEntrySList
|
||||
@ stdcall -fastcall -arch=i386 ExInterlockedPopEntrySList(ptr ptr) NTOSKRNL_ExInterlockedPopEntrySList
|
||||
@ stdcall -fastcall -arch=i386 ExInterlockedPushEntrySList (ptr ptr ptr) NTOSKRNL_ExInterlockedPushEntrySList
|
||||
@ stub ExReInitializeRundownProtection
|
||||
@ stdcall -norelay ExReleaseFastMutexUnsafe(ptr)
|
||||
@ stdcall -fastcall ExReleaseFastMutexUnsafe(ptr)
|
||||
@ stdcall ExReleaseResourceLite(ptr)
|
||||
@ stub ExReleaseRundownProtection
|
||||
@ stub ExReleaseRundownProtectionEx
|
||||
|
@ -22,7 +22,7 @@
|
|||
@ stub ExfInterlockedInsertTailList
|
||||
@ stub ExfInterlockedPopEntryList
|
||||
@ stub ExfInterlockedPushEntryList
|
||||
@ stdcall -norelay -arch=i386 ExfInterlockedRemoveHeadList(ptr ptr)
|
||||
@ stdcall -fastcall -arch=i386 ExfInterlockedRemoveHeadList(ptr ptr)
|
||||
@ stub ExfReleasePushLock
|
||||
@ stub Exfi386InterlockedDecrementLong
|
||||
@ stub Exfi386InterlockedExchangeUlong
|
||||
|
@ -30,35 +30,35 @@
|
|||
@ stdcall -arch=win64 ExpInterlockedPopEntrySList(ptr) RtlInterlockedPopEntrySList
|
||||
@ stdcall -arch=win64 ExpInterlockedPushEntrySList(ptr ptr) RtlInterlockedPushEntrySList
|
||||
@ stub HalExamineMBR
|
||||
@ stdcall -norelay InterlockedCompareExchange(ptr long long) NTOSKRNL_InterlockedCompareExchange
|
||||
@ stdcall -norelay InterlockedDecrement(ptr) NTOSKRNL_InterlockedDecrement
|
||||
@ stdcall -norelay InterlockedExchange(ptr long) NTOSKRNL_InterlockedExchange
|
||||
@ stdcall -norelay InterlockedExchangeAdd(ptr long) NTOSKRNL_InterlockedExchangeAdd
|
||||
@ stdcall -norelay InterlockedIncrement(ptr) NTOSKRNL_InterlockedIncrement
|
||||
@ stdcall -arch=win32 -norelay InterlockedPopEntrySList(ptr) NTOSKRNL_InterlockedPopEntrySList
|
||||
@ stdcall -arch=win32 -norelay InterlockedPushEntrySList(ptr ptr) NTOSKRNL_InterlockedPushEntrySList
|
||||
@ stdcall -fastcall InterlockedCompareExchange(ptr long long) NTOSKRNL_InterlockedCompareExchange
|
||||
@ stdcall -fastcall InterlockedDecrement(ptr) NTOSKRNL_InterlockedDecrement
|
||||
@ stdcall -fastcall InterlockedExchange(ptr long) NTOSKRNL_InterlockedExchange
|
||||
@ stdcall -fastcall InterlockedExchangeAdd(ptr long) NTOSKRNL_InterlockedExchangeAdd
|
||||
@ stdcall -fastcall InterlockedIncrement(ptr) NTOSKRNL_InterlockedIncrement
|
||||
@ stdcall -fastcall -arch=win32 InterlockedPopEntrySList(ptr) NTOSKRNL_InterlockedPopEntrySList
|
||||
@ stdcall -fastcall -arch=win32 InterlockedPushEntrySList(ptr ptr) NTOSKRNL_InterlockedPushEntrySList
|
||||
@ stdcall -arch=win64 ExQueryDepthSList(ptr) RtlQueryDepthSList
|
||||
@ stub IoAssignDriveLetters
|
||||
@ stub IoReadPartitionTable
|
||||
@ stub IoSetPartitionInformation
|
||||
@ stub IoWritePartitionTable
|
||||
@ stdcall -norelay IofCallDriver(ptr ptr)
|
||||
@ stdcall -norelay IofCompleteRequest(ptr long)
|
||||
@ stdcall -fastcall IofCallDriver(ptr ptr)
|
||||
@ stdcall -fastcall IofCompleteRequest(ptr long)
|
||||
@ stdcall -arch=arm,arm64,x86_64 KeAcquireInStackQueuedSpinLock(ptr ptr)
|
||||
@ stdcall -norelay KeAcquireInStackQueuedSpinLockAtDpcLevel(ptr ptr)
|
||||
@ stdcall -fastcall KeAcquireInStackQueuedSpinLockAtDpcLevel(ptr ptr)
|
||||
@ stdcall KeEnterGuardedRegion()
|
||||
@ stdcall KeExpandKernelStackAndCallout(ptr ptr long)
|
||||
@ stdcall KeExpandKernelStackAndCalloutEx(ptr ptr long long ptr)
|
||||
@ stdcall KeLeaveGuardedRegion()
|
||||
@ stdcall -arch=arm,arm64,x86_64 KeReleaseInStackQueuedSpinLock(ptr)
|
||||
@ stdcall -norelay KeReleaseInStackQueuedSpinLockFromDpcLevel(ptr)
|
||||
@ stdcall -fastcall KeReleaseInStackQueuedSpinLockFromDpcLevel(ptr)
|
||||
@ stub KeSetTimeUpdateNotifyRoutine
|
||||
@ stub KefAcquireSpinLockAtDpcLevel
|
||||
@ stub KefReleaseSpinLockFromDpcLevel
|
||||
@ stub KiAcquireSpinLock
|
||||
@ stub KiReleaseSpinLock
|
||||
@ stdcall -norelay ObfDereferenceObject(ptr)
|
||||
@ stdcall -norelay ObfReferenceObject(ptr)
|
||||
@ stdcall -fastcall ObfDereferenceObject(ptr)
|
||||
@ stdcall -fastcall ObfReferenceObject(ptr)
|
||||
@ stub RtlPrefetchMemoryNonTemporal
|
||||
@ cdecl -i386 -norelay RtlUlongByteSwap()
|
||||
@ cdecl -ret64 RtlUlonglongByteSwap(int64)
|
||||
|
@ -140,7 +140,7 @@
|
|||
@ stub ExEnumHandleTable
|
||||
@ extern ExEventObjectType
|
||||
@ stub ExExtendZone
|
||||
@ stdcall -norelay ExfUnblockPushLock(ptr ptr)
|
||||
@ stdcall -fastcall ExfUnblockPushLock(ptr ptr)
|
||||
@ stdcall ExFreePool(ptr)
|
||||
@ stdcall ExFreePoolWithTag(ptr long)
|
||||
@ stub ExFreeToPagedLookasideList
|
||||
|
|
|
@ -27,27 +27,24 @@ struct _OBJECT_TYPE {
|
|||
void (*release)(void*); /* called when the last reference is released */
|
||||
};
|
||||
|
||||
|
||||
#ifdef __i386__
|
||||
#define DEFINE_FASTCALL1_ENTRYPOINT( name ) \
|
||||
__ASM_STDCALL_FUNC( name, 4, \
|
||||
#define DEFINE_FASTCALL1_WRAPPER(func) \
|
||||
__ASM_GLOBAL_FUNC( __fastcall_ ## func, \
|
||||
"popl %eax\n\t" \
|
||||
"pushl %ecx\n\t" \
|
||||
"pushl %eax\n\t" \
|
||||
"jmp " __ASM_NAME("__regs_") #name __ASM_STDCALL(4))
|
||||
#define DEFINE_FASTCALL2_ENTRYPOINT( name ) \
|
||||
__ASM_STDCALL_FUNC( name, 8, \
|
||||
"jmp " __ASM_NAME(#func) __ASM_STDCALL(4) )
|
||||
#define DEFINE_FASTCALL_WRAPPER(func,args) \
|
||||
__ASM_GLOBAL_FUNC( __fastcall_ ## func, \
|
||||
"popl %eax\n\t" \
|
||||
"pushl %edx\n\t" \
|
||||
"pushl %ecx\n\t" \
|
||||
"pushl %eax\n\t" \
|
||||
"jmp " __ASM_NAME("__regs_") #name __ASM_STDCALL(8))
|
||||
#define DEFINE_FASTCALL3_ENTRYPOINT( name ) \
|
||||
__ASM_STDCALL_FUNC( name, 12, \
|
||||
"popl %eax\n\t" \
|
||||
"pushl %edx\n\t" \
|
||||
"pushl %ecx\n\t" \
|
||||
"pushl %eax\n\t" \
|
||||
"jmp " __ASM_NAME("__regs_") #name __ASM_STDCALL(12))
|
||||
"jmp " __ASM_NAME(#func) __ASM_STDCALL(args) )
|
||||
#else
|
||||
#define DEFINE_FASTCALL1_WRAPPER(func) /* nothing */
|
||||
#define DEFINE_FASTCALL_WRAPPER(func,args) /* nothing */
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
@ -436,12 +436,8 @@ void WINAPI KeReleaseSpinLockFromDpcLevel( KSPIN_LOCK *lock )
|
|||
/***********************************************************************
|
||||
* KeAcquireInStackQueuedSpinLockAtDpcLevel (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL2_ENTRYPOINT
|
||||
DEFINE_FASTCALL2_ENTRYPOINT( KeAcquireInStackQueuedSpinLockAtDpcLevel )
|
||||
void WINAPI DECLSPEC_HIDDEN __regs_KeAcquireInStackQueuedSpinLockAtDpcLevel( KSPIN_LOCK *lock, KLOCK_QUEUE_HANDLE *queue )
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( KeAcquireInStackQueuedSpinLockAtDpcLevel, 8 )
|
||||
void WINAPI KeAcquireInStackQueuedSpinLockAtDpcLevel( KSPIN_LOCK *lock, KLOCK_QUEUE_HANDLE *queue )
|
||||
#endif
|
||||
{
|
||||
KSPIN_LOCK_QUEUE *tail;
|
||||
|
||||
|
@ -467,12 +463,8 @@ void WINAPI KeAcquireInStackQueuedSpinLockAtDpcLevel( KSPIN_LOCK *lock, KLOCK_QU
|
|||
/***********************************************************************
|
||||
* KeReleaseInStackQueuedSpinLockFromDpcLevel (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL1_ENTRYPOINT
|
||||
DEFINE_FASTCALL1_ENTRYPOINT( KeReleaseInStackQueuedSpinLockFromDpcLevel )
|
||||
void WINAPI DECLSPEC_HIDDEN __regs_KeReleaseInStackQueuedSpinLockFromDpcLevel( KLOCK_QUEUE_HANDLE *queue )
|
||||
#else
|
||||
DEFINE_FASTCALL1_WRAPPER( KeReleaseInStackQueuedSpinLockFromDpcLevel )
|
||||
void WINAPI KeReleaseInStackQueuedSpinLockFromDpcLevel( KLOCK_QUEUE_HANDLE *queue )
|
||||
#endif
|
||||
{
|
||||
KSPIN_LOCK *lock = (KSPIN_LOCK *)((ULONG_PTR)queue->LockQueue.Lock & ~QUEUED_SPINLOCK_OWNED);
|
||||
KSPIN_LOCK_QUEUE *next;
|
||||
|
@ -555,13 +547,14 @@ void WINAPI IoReleaseCancelSpinLock( KIRQL irql )
|
|||
KeReleaseSpinLock( &cancel_lock, irql );
|
||||
}
|
||||
|
||||
#ifdef __i386__
|
||||
DEFINE_FASTCALL2_ENTRYPOINT( ExfInterlockedRemoveHeadList )
|
||||
PLIST_ENTRY WINAPI DECLSPEC_HIDDEN __regs_ExfInterlockedRemoveHeadList( LIST_ENTRY *list, KSPIN_LOCK *lock )
|
||||
/***********************************************************************
|
||||
* ExfInterlockedRemoveHeadList (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
DEFINE_FASTCALL_WRAPPER( ExfInterlockedRemoveHeadList, 8 )
|
||||
PLIST_ENTRY WINAPI ExfInterlockedRemoveHeadList( LIST_ENTRY *list, KSPIN_LOCK *lock )
|
||||
{
|
||||
return ExInterlockedRemoveHeadList( list, lock );
|
||||
}
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* ExInterlockedRemoveHeadList (NTOSKRNL.EXE.@)
|
||||
|
@ -580,17 +573,12 @@ LIST_ENTRY * WINAPI ExInterlockedRemoveHeadList( LIST_ENTRY *list, KSPIN_LOCK *l
|
|||
return ret;
|
||||
}
|
||||
|
||||
#ifndef _WIN64
|
||||
|
||||
/***********************************************************************
|
||||
* InterlockedPopEntrySList (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL1_ENTRYPOINT
|
||||
DEFINE_FASTCALL1_ENTRYPOINT( NTOSKRNL_InterlockedPopEntrySList )
|
||||
PSLIST_ENTRY WINAPI DECLSPEC_HIDDEN __regs_NTOSKRNL_InterlockedPopEntrySList( PSLIST_HEADER list )
|
||||
#else
|
||||
DEFINE_FASTCALL1_WRAPPER( NTOSKRNL_InterlockedPopEntrySList )
|
||||
PSLIST_ENTRY WINAPI NTOSKRNL_InterlockedPopEntrySList( PSLIST_HEADER list )
|
||||
#endif
|
||||
{
|
||||
return RtlInterlockedPopEntrySList( list );
|
||||
}
|
||||
|
@ -599,59 +587,38 @@ PSLIST_ENTRY WINAPI NTOSKRNL_InterlockedPopEntrySList( PSLIST_HEADER list )
|
|||
/***********************************************************************
|
||||
* InterlockedPushEntrySList (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL2_ENTRYPOINT
|
||||
DEFINE_FASTCALL2_ENTRYPOINT( NTOSKRNL_InterlockedPushEntrySList )
|
||||
PSLIST_ENTRY WINAPI DECLSPEC_HIDDEN __regs_NTOSKRNL_InterlockedPushEntrySList( PSLIST_HEADER list,
|
||||
PSLIST_ENTRY entry )
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( NTOSKRNL_InterlockedPushEntrySList, 8 )
|
||||
PSLIST_ENTRY WINAPI NTOSKRNL_InterlockedPushEntrySList( PSLIST_HEADER list, PSLIST_ENTRY entry )
|
||||
#endif
|
||||
{
|
||||
return RtlInterlockedPushEntrySList( list, entry );
|
||||
}
|
||||
|
||||
#ifdef __i386__
|
||||
|
||||
/***********************************************************************
|
||||
* ExInterlockedPopEntrySList (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL2_ENTRYPOINT
|
||||
DEFINE_FASTCALL2_ENTRYPOINT( NTOSKRNL_ExInterlockedPopEntrySList )
|
||||
PSLIST_ENTRY WINAPI __regs_NTOSKRNL_ExInterlockedPopEntrySList( PSLIST_HEADER list, PKSPIN_LOCK lock )
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( NTOSKRNL_ExInterlockedPopEntrySList, 8 )
|
||||
PSLIST_ENTRY WINAPI NTOSKRNL_ExInterlockedPopEntrySList( PSLIST_HEADER list, PKSPIN_LOCK lock )
|
||||
#endif
|
||||
{
|
||||
return RtlInterlockedPopEntrySList( list );
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* ExInterlockedPushEntrySList (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL3_ENTRYPOINT
|
||||
DEFINE_FASTCALL3_ENTRYPOINT( NTOSKRNL_ExInterlockedPushEntrySList )
|
||||
PSLIST_ENTRY WINAPI DECLSPEC_HIDDEN __regs_NTOSKRNL_ExInterlockedPushEntrySList( PSLIST_HEADER list,
|
||||
PSLIST_ENTRY entry,
|
||||
PKSPIN_LOCK lock )
|
||||
#else
|
||||
DEFINE_FASTCALL_WRAPPER( NTOSKRNL_ExInterlockedPushEntrySList, 12 )
|
||||
PSLIST_ENTRY WINAPI NTOSKRNL_ExInterlockedPushEntrySList( PSLIST_HEADER list, PSLIST_ENTRY entry, PKSPIN_LOCK lock )
|
||||
#endif
|
||||
{
|
||||
return RtlInterlockedPushEntrySList( list, entry );
|
||||
}
|
||||
|
||||
#endif /* __i386__ */
|
||||
#endif /* _WIN64 */
|
||||
|
||||
/***********************************************************************
|
||||
* ExAcquireFastMutexUnsafe (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL1_ENTRYPOINT
|
||||
DEFINE_FASTCALL1_ENTRYPOINT(ExAcquireFastMutexUnsafe)
|
||||
void WINAPI __regs_ExAcquireFastMutexUnsafe( FAST_MUTEX *mutex )
|
||||
#else
|
||||
DEFINE_FASTCALL1_WRAPPER(ExAcquireFastMutexUnsafe)
|
||||
void WINAPI ExAcquireFastMutexUnsafe( FAST_MUTEX *mutex )
|
||||
#endif
|
||||
{
|
||||
LONG count;
|
||||
|
||||
|
@ -665,12 +632,8 @@ void WINAPI ExAcquireFastMutexUnsafe( FAST_MUTEX *mutex )
|
|||
/***********************************************************************
|
||||
* ExReleaseFastMutexUnsafe (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
#ifdef DEFINE_FASTCALL1_ENTRYPOINT
|
||||
DEFINE_FASTCALL1_ENTRYPOINT(ExReleaseFastMutexUnsafe)
|
||||
void WINAPI __regs_ExReleaseFastMutexUnsafe( FAST_MUTEX *mutex )
|
||||
#else
|
||||
DEFINE_FASTCALL1_WRAPPER(ExReleaseFastMutexUnsafe)
|
||||
void WINAPI ExReleaseFastMutexUnsafe( FAST_MUTEX *mutex )
|
||||
#endif
|
||||
{
|
||||
LONG count;
|
||||
|
||||
|
|
Loading…
Reference in New Issue