Commit 47aebf67 authored by Alexandre Julliard's avatar Alexandre Julliard

ntdll: Export KiUserCallbackDispatcherReturn.

parent 7344a124
...@@ -70,6 +70,7 @@ ...@@ -70,6 +70,7 @@
@ stdcall -norelay KiRaiseUserExceptionDispatcher() @ stdcall -norelay KiRaiseUserExceptionDispatcher()
@ stdcall -norelay KiUserApcDispatcher(ptr long long long ptr) @ stdcall -norelay KiUserApcDispatcher(ptr long long long ptr)
@ stdcall -norelay KiUserCallbackDispatcher(long ptr long) @ stdcall -norelay KiUserCallbackDispatcher(long ptr long)
@ stdcall -norelay -arch=arm,arm64,arm64ec KiUserCallbackDispatcherReturn()
@ stdcall -norelay KiUserExceptionDispatcher(ptr ptr) @ stdcall -norelay KiUserExceptionDispatcher(ptr ptr)
# @ stub LdrAccessOutOfProcessResource # @ stub LdrAccessOutOfProcessResource
@ stdcall LdrAccessResource(long ptr ptr ptr) @ stdcall LdrAccessResource(long ptr ptr ptr)
......
...@@ -57,6 +57,7 @@ extern void WINAPI LdrInitializeThunk(CONTEXT*,ULONG_PTR,ULONG_PTR,ULONG_PTR); ...@@ -57,6 +57,7 @@ extern void WINAPI LdrInitializeThunk(CONTEXT*,ULONG_PTR,ULONG_PTR,ULONG_PTR);
extern NTSTATUS WINAPI KiUserExceptionDispatcher(EXCEPTION_RECORD*,CONTEXT*); extern NTSTATUS WINAPI KiUserExceptionDispatcher(EXCEPTION_RECORD*,CONTEXT*);
extern void WINAPI KiUserApcDispatcher(CONTEXT*,ULONG_PTR,ULONG_PTR,ULONG_PTR,PNTAPCFUNC); extern void WINAPI KiUserApcDispatcher(CONTEXT*,ULONG_PTR,ULONG_PTR,ULONG_PTR,PNTAPCFUNC);
extern void WINAPI KiUserCallbackDispatcher(ULONG,void*,ULONG); extern void WINAPI KiUserCallbackDispatcher(ULONG,void*,ULONG);
extern void WINAPI KiUserCallbackDispatcherReturn(void);
extern void (WINAPI *pWow64PrepareForException)( EXCEPTION_RECORD *rec, CONTEXT *context ); extern void (WINAPI *pWow64PrepareForException)( EXCEPTION_RECORD *rec, CONTEXT *context );
#if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) #if defined(__x86_64__) || defined(__arm__) || defined(__aarch64__)
......
...@@ -589,6 +589,8 @@ __ASM_GLOBAL_FUNC( KiUserCallbackDispatcher, ...@@ -589,6 +589,8 @@ __ASM_GLOBAL_FUNC( KiUserCallbackDispatcher,
"ldr r1, [sp, #0x04]\n\t" /* len */ "ldr r1, [sp, #0x04]\n\t" /* len */
"ldr r2, [sp, #0x08]\n\t" /* id */ "ldr r2, [sp, #0x08]\n\t" /* id */
"bl " __ASM_NAME("dispatch_user_callback") "\n\t" "bl " __ASM_NAME("dispatch_user_callback") "\n\t"
".globl " __ASM_NAME("KiUserCallbackDispatcherReturn") "\n"
__ASM_NAME("KiUserCallbackDispatcherReturn") ":\n\t"
"mov r2, r0\n\t" /* status */ "mov r2, r0\n\t" /* status */
"mov r1, #0\n\t" /* ret_len */ "mov r1, #0\n\t" /* ret_len */
"mov r0, r1\n\t" /* ret_ptr */ "mov r0, r1\n\t" /* ret_ptr */
......
...@@ -615,6 +615,8 @@ __ASM_GLOBAL_FUNC( KiUserCallbackDispatcher, ...@@ -615,6 +615,8 @@ __ASM_GLOBAL_FUNC( KiUserCallbackDispatcher,
"ldr x0, [sp]\n\t" /* args */ "ldr x0, [sp]\n\t" /* args */
"ldp w1, w2, [sp, #0x08]\n\t" /* len, id */ "ldp w1, w2, [sp, #0x08]\n\t" /* len, id */
"bl " __ASM_NAME("dispatch_user_callback") "\n\t" "bl " __ASM_NAME("dispatch_user_callback") "\n\t"
".globl " __ASM_NAME("KiUserCallbackDispatcherReturn") "\n"
__ASM_NAME("KiUserCallbackDispatcherReturn") ":\n\t"
"mov x2, x0\n\t" /* status */ "mov x2, x0\n\t" /* status */
"mov x1, #0\n\t" /* ret_len */ "mov x1, #0\n\t" /* ret_len */
"mov x0, x1\n\t" /* ret_ptr */ "mov x0, x1\n\t" /* ret_ptr */
......
...@@ -1726,6 +1726,8 @@ __ASM_GLOBAL_FUNC( "#KiUserCallbackDispatcher", ...@@ -1726,6 +1726,8 @@ __ASM_GLOBAL_FUNC( "#KiUserCallbackDispatcher",
"ldr x0, [sp]\n\t" /* args */ "ldr x0, [sp]\n\t" /* args */
"ldp w1, w2, [sp, #0x08]\n\t" /* len, id */ "ldp w1, w2, [sp, #0x08]\n\t" /* len, id */
"bl " __ASM_NAME("dispatch_user_callback") "\n\t" "bl " __ASM_NAME("dispatch_user_callback") "\n\t"
".globl \"#KiUserCallbackDispatcherReturn\"\n"
"\"#KiUserCallbackDispatcherReturn\":\n\t"
"mov x2, x0\n\t" /* status */ "mov x2, x0\n\t" /* status */
"mov x1, #0\n\t" /* ret_len */ "mov x1, #0\n\t" /* ret_len */
"mov x0, x1\n\t" /* ret_ptr */ "mov x0, x1\n\t" /* ret_ptr */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment