[ros-diffs] [tkreuzer] 53343: [NTDLL] - Add exports for RtlInstallFunctionTableCallback and RtlRestoreContext (amd64 only) [KERNEL32] - Forward RtlCompareMemory, RtlCopyMemory, RtlDeleteFunctionTable and RtlIn...

tkreuzer at svn.reactos.org tkreuzer at svn.reactos.org
Sat Aug 20 19:04:57 UTC 2011


Author: tkreuzer
Date: Sat Aug 20 19:04:55 2011
New Revision: 53343

URL: http://svn.reactos.org/svn/reactos?rev=53343&view=rev
Log:
[NTDLL]
- Add exports for RtlInstallFunctionTableCallback and RtlRestoreContext (amd64 only)
[KERNEL32]
- Forward RtlCompareMemory, RtlCopyMemory, RtlDeleteFunctionTable and RtlInstallFunctionTableCallback to ntdll
- Fix build with MSVC amd64

Modified:
    trunk/reactos/dll/ntdll/def/ntdll.spec
    trunk/reactos/dll/win32/kernel32/client/amd64/fiber.S
    trunk/reactos/dll/win32/kernel32/client/amd64/thread.S
    trunk/reactos/dll/win32/kernel32/kernel32.spec
    trunk/reactos/lib/rtl/amd64/stubs.c

Modified: trunk/reactos/dll/ntdll/def/ntdll.spec
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/ntdll/def/ntdll.spec?rev=53343&r1=53342&r2=53343&view=diff
==============================================================================
--- trunk/reactos/dll/ntdll/def/ntdll.spec [iso-8859-1] (original)
+++ trunk/reactos/dll/ntdll/def/ntdll.spec [iso-8859-1] Sat Aug 20 19:04:55 2011
@@ -721,6 +721,7 @@
 ;@ stdcall RtlInitializeStackTraceDataBase ; 5.1 SP2 and SP3, and 5.2 only
 @ stdcall RtlInsertElementGenericTable(ptr ptr long ptr)
 @ stdcall RtlInsertElementGenericTableAvl(ptr ptr long ptr)
+@ stdcall -arch=x86_64 RtlInstallFunctionTableCallback(double double long ptr ptr ptr)
 @ stdcall RtlInt64ToUnicodeString(double long ptr)
 @ stdcall RtlIntegerToChar(long long long ptr)
 @ stdcall RtlIntegerToUnicodeString(long long ptr)
@@ -855,6 +856,7 @@
 @ stdcall RtlRemoveVectoredContinueHandler(ptr)
 @ stdcall RtlRemoveVectoredExceptionHandler(ptr)
 @ stdcall RtlResetRtlTranslations(ptr)
+@ stdcall -arch=x86_64 RtlRestoreContext(ptr ptr)
 @ stdcall RtlRestoreLastWin32Error(long) RtlSetLastWin32Error
 ;@ stdcall RtlRevertMemoryStream
 @ stdcall RtlRunDecodeUnicodeString(long ptr)

Modified: trunk/reactos/dll/win32/kernel32/client/amd64/fiber.S
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/client/amd64/fiber.S?rev=53343&r1=53342&r2=53343&view=diff
==============================================================================
--- trunk/reactos/dll/win32/kernel32/client/amd64/fiber.S [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/kernel32/client/amd64/fiber.S [iso-8859-1] Sat Aug 20 19:04:55 2011
@@ -8,20 +8,25 @@
 
 #include <asm.inc>
 
+.code64
+
 PUBLIC BaseFiberStartup
-.PROC BaseFiberStartup
+FUNC BaseFiberStartup
+    .ENDPROLOG
     UNIMPLEMENTED BaseFiberStartup
     /* FIXME: TODO */
     ret
 
-.ENDP BaseFiberStartup
+ENDFUNC BaseFiberStartup
 
 
 PUBLIC SwitchToFiber
 
-SwitchToFiber:
+FUNC SwitchToFiber
+    .ENDPROLOG
     UNIMPLEMENTED BaseFiberStartup
     /* FIXME: TODO */
     ret
+ENDFUNC SwitchToFiber
 
 END

Modified: trunk/reactos/dll/win32/kernel32/client/amd64/thread.S
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/client/amd64/thread.S?rev=53343&r1=53342&r2=53343&view=diff
==============================================================================
--- trunk/reactos/dll/win32/kernel32/client/amd64/thread.S [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/kernel32/client/amd64/thread.S [iso-8859-1] Sat Aug 20 19:04:55 2011
@@ -7,16 +7,19 @@
  */
 
 #include <asm.inc>
+.code64
 
+EXTERN BaseThreadStartup:PROC
+EXTERN BaseProcessStartup:PROC
 
 PUBLIC BaseThreadStartupThunk
 PUBLIC BaseProcessStartThunk
 
 BaseThreadStartupThunk:
-    
+
     /* Start out fresh */
     xor rbp, rbp
-    
+
     push rbx                  /* lpParameter */
     push rax                  /* lpStartAddress */
     push 0                    /* Return RIP */
@@ -26,7 +29,7 @@
 
     /* Start out fresh */
     xor rbp, rbp
-    
+
     push rax                  /* lpStartAddress */
     push 0                    /* Return RIP */
     jmp BaseProcessStartup

Modified: trunk/reactos/dll/win32/kernel32/kernel32.spec
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/kernel32.spec?rev=53343&r1=53342&r2=53343&view=diff
==============================================================================
--- trunk/reactos/dll/win32/kernel32/kernel32.spec [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/kernel32/kernel32.spec [iso-8859-1] Sat Aug 20 19:04:55 2011
@@ -974,11 +974,11 @@
 @ stdcall lstrlenA(str)
 @ stdcall lstrlenW(wstr)
 
-@ cdecl -arch=x86_64 RtlAddFunctionTable(ptr long long) ntdll.RtlAddFunctionTable
-@ stdcall -arch=x86_64 RtlCompareMemory(ptr ptr ptr)
-@ stdcall -arch=x86_64 RtlCopyMemory(ptr ptr ptr)
-@ stdcall -arch=x86_64 RtlDeleteFunctionTable(ptr)
-@ stdcall -arch=x86_64 RtlInstallFunctionTableCallback(double double long ptr ptr ptr)
+@ stdcall -arch=x86_64 RtlAddFunctionTable(ptr long long) ntdll.RtlAddFunctionTable
+@ stdcall -arch=x86_64 RtlCompareMemory(ptr ptr ptr) ntdll.RtlCompareMemory
+@ stdcall -arch=x86_64 RtlCopyMemory(ptr ptr ptr) ntdll.memcpy
+@ stdcall -arch=x86_64 RtlDeleteFunctionTable(ptr) ntdll.RtlDeleteFunctionTable
+@ stdcall -arch=x86_64 RtlInstallFunctionTableCallback(double double long ptr ptr ptr) ntdll.RtlInstallFunctionTableCallback
 @ stdcall -arch=x86_64 RtlLookupFunctionEntry(ptr ptr ptr) ntdll.RtlLookupFunctionEntry
 @ stdcall -arch=x86_64 RtlPcToFileHeader(ptr ptr) ntdll.RtlPcToFileHeader
 @ stdcall -arch=x86_64 RtlRaiseException(ptr) ntdll.RtlRaiseException

Modified: trunk/reactos/lib/rtl/amd64/stubs.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/amd64/stubs.c?rev=53343&r1=53342&r2=53343&view=diff
==============================================================================
--- trunk/reactos/lib/rtl/amd64/stubs.c [iso-8859-1] (original)
+++ trunk/reactos/lib/rtl/amd64/stubs.c [iso-8859-1] Sat Aug 20 19:04:55 2011
@@ -51,3 +51,27 @@
     UNIMPLEMENTED;
     return FALSE;
 }
+
+NTSYSAPI
+VOID
+RtlRestoreContext(
+    PCONTEXT ContextRecord,
+    PEXCEPTION_RECORD ExceptionRecord)
+{
+    UNIMPLEMENTED;
+}
+
+NTSYSAPI
+BOOLEAN
+RtlInstallFunctionTableCallback(
+    DWORD64 TableIdentifier,
+    DWORD64 BaseAddress,
+    DWORD Length,
+    PGET_RUNTIME_FUNCTION_CALLBACK Callback,
+    PVOID Context,
+    PCWSTR OutOfProcessCallbackDll)
+{
+    UNIMPLREMENTED;
+    return FALSE;
+}
+




More information about the Ros-diffs mailing list