[1/2] ntdll: Add stubs for RtlAddFunctionTable and RtlDeleteFunctionTable on ARM
André Hentschel
nerv at dawncrow.de
Sat Mar 23 11:20:28 CDT 2013
---
dlls/kernel32/kernel32.spec | 4 ++--
dlls/ntdll/ntdll.spec | 4 ++--
dlls/ntdll/signal_arm.c | 20 ++++++++++++++++++++
include/winnt.h | 3 +++
4 files changed, 27 insertions(+), 4 deletions(-)
diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
index 93bfb77..a07a9ff 100644
--- a/dlls/kernel32/kernel32.spec
+++ b/dlls/kernel32/kernel32.spec
@@ -1028,11 +1028,11 @@
@ stdcall ResetWriteWatch(ptr long)
@ stdcall RestoreLastError(long) ntdll.RtlRestoreLastWin32Error
@ stdcall ResumeThread(long)
-@ cdecl -arch=x86_64 RtlAddFunctionTable(ptr long long) ntdll.RtlAddFunctionTable
+@ cdecl -arch=arm,x86_64 RtlAddFunctionTable(ptr long long) ntdll.RtlAddFunctionTable
@ stdcall -register RtlCaptureContext(ptr) ntdll.RtlCaptureContext
@ stdcall RtlCaptureStackBackTrace(long long ptr ptr) ntdll.RtlCaptureStackBackTrace
@ stdcall -arch=x86_64 RtlCompareMemory(ptr ptr long) ntdll.RtlCompareMemory
-@ cdecl -arch=x86_64 RtlDeleteFunctionTable(ptr) ntdll.RtlDeleteFunctionTable
+@ cdecl -arch=arm,x86_64 RtlDeleteFunctionTable(ptr) ntdll.RtlDeleteFunctionTable
@ stdcall RtlFillMemory(ptr long long) ntdll.RtlFillMemory
@ stdcall -arch=x86_64 RtlLookupFunctionEntry(long ptr ptr) ntdll.RtlLookupFunctionEntry
@ stdcall RtlMoveMemory(ptr ptr long) ntdll.RtlMoveMemory
diff --git a/dlls/ntdll/ntdll.spec b/dlls/ntdll/ntdll.spec
index 83e9260..d67c85e 100644
--- a/dlls/ntdll/ntdll.spec
+++ b/dlls/ntdll/ntdll.spec
@@ -409,7 +409,7 @@
# @ stub RtlAddAuditAccessObjectAce
# @ stub RtlAddCompoundAce
# @ stub RtlAddRange
-@ cdecl -arch=x86_64 RtlAddFunctionTable(ptr long long)
+@ cdecl -arch=arm,x86_64 RtlAddFunctionTable(ptr long long)
@ stdcall RtlAddRefActivationContext(ptr)
# @ stub RtlAddRefMemoryStream
@ stdcall RtlAddVectoredExceptionHandler(long ptr)
@@ -515,7 +515,7 @@
@ stdcall RtlDeleteCriticalSection(ptr)
@ stub RtlDeleteElementGenericTable
@ stub RtlDeleteElementGenericTableAvl
-@ cdecl -arch=x86_64 RtlDeleteFunctionTable(ptr)
+@ cdecl -arch=arm,x86_64 RtlDeleteFunctionTable(ptr)
@ stub RtlDeleteNoSplay
@ stub RtlDeleteOwnersRanges
@ stub RtlDeleteRange
diff --git a/dlls/ntdll/signal_arm.c b/dlls/ntdll/signal_arm.c
index ce6a6b6..f9cde38 100644
--- a/dlls/ntdll/signal_arm.c
+++ b/dlls/ntdll/signal_arm.c
@@ -913,6 +913,26 @@ void __wine_enter_vm86( CONTEXT *context )
MESSAGE("vm86 mode not supported on this platform\n");
}
+
+/**********************************************************************
+ * RtlAddFunctionTable (NTDLL.@)
+ */
+BOOLEAN CDECL RtlAddFunctionTable( RUNTIME_FUNCTION *table, DWORD count, DWORD addr )
+{
+ FIXME( "%p %u %x: stub\n", table, count, addr );
+ return TRUE;
+}
+
+
+/**********************************************************************
+ * RtlDeleteFunctionTable (NTDLL.@)
+ */
+BOOLEAN CDECL RtlDeleteFunctionTable( RUNTIME_FUNCTION *table )
+{
+ FIXME( "%p: stub\n", table );
+ return TRUE;
+}
+
/***********************************************************************
* RtlUnwind (NTDLL.@)
*/
diff --git a/include/winnt.h b/include/winnt.h
index 447e727..a40ff75 100644
--- a/include/winnt.h
+++ b/include/winnt.h
@@ -1708,6 +1708,9 @@ typedef struct _CONTEXT {
ULONG Cpsr;
} CONTEXT;
+BOOLEAN CDECL RtlAddFunctionTable(RUNTIME_FUNCTION*,DWORD,DWORD);
+BOOLEAN CDECL RtlDeleteFunctionTable(RUNTIME_FUNCTION*);
+
#endif /* __arm__ */
#ifdef __aarch64__
--
1.8.0
--
Best Regards, André Hentschel
More information about the wine-patches
mailing list