mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-30 06:11:15 +00:00
ntdll: Make __wine_syscall_dispatcher_return a separate function to fix Xcode 16 build errors.
LLVM no longer allows non-private labels to appear between .cfi_startproc/endproc when targeting Mach-O. For consistency, also modify ARM and i386.
This commit is contained in:
parent
1953d1e774
commit
802a52cb1b
|
@ -1252,9 +1252,9 @@ __ASM_GLOBAL_FUNC( __wine_syscall_dispatcher,
|
||||||
|
|
||||||
"5:\tmovw r0, #0x000d\n\t" /* STATUS_INVALID_PARAMETER */
|
"5:\tmovw r0, #0x000d\n\t" /* STATUS_INVALID_PARAMETER */
|
||||||
"movt r0, #0xc000\n\t"
|
"movt r0, #0xc000\n\t"
|
||||||
"b " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") "\n\t"
|
"b " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
||||||
".globl " __ASM_NAME("__wine_syscall_dispatcher_return") "\n"
|
|
||||||
__ASM_NAME("__wine_syscall_dispatcher_return") ":\n\t"
|
__ASM_GLOBAL_FUNC( __wine_syscall_dispatcher_return,
|
||||||
"mov r8, r0\n\t"
|
"mov r8, r0\n\t"
|
||||||
"mov r0, r1\n\t"
|
"mov r0, r1\n\t"
|
||||||
"b " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
"b " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
||||||
|
|
|
@ -1607,9 +1607,9 @@ __ASM_GLOBAL_FUNC( __wine_syscall_dispatcher,
|
||||||
"ret x16\n"
|
"ret x16\n"
|
||||||
"4:\tmov x0, #0xc0000000\n\t" /* STATUS_INVALID_PARAMETER */
|
"4:\tmov x0, #0xc0000000\n\t" /* STATUS_INVALID_PARAMETER */
|
||||||
"movk x0, #0x000d\n\t"
|
"movk x0, #0x000d\n\t"
|
||||||
"b " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") "\n\t"
|
"b " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
||||||
".globl " __ASM_NAME("__wine_syscall_dispatcher_return") "\n"
|
|
||||||
__ASM_NAME("__wine_syscall_dispatcher_return") ":\n\t"
|
__ASM_GLOBAL_FUNC( __wine_syscall_dispatcher_return,
|
||||||
"mov sp, x0\n\t"
|
"mov sp, x0\n\t"
|
||||||
"mov x0, x1\n\t"
|
"mov x0, x1\n\t"
|
||||||
"b " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
"b " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
||||||
|
|
|
@ -2768,10 +2768,9 @@ __ASM_GLOBAL_FUNC( __wine_syscall_dispatcher,
|
||||||
__ASM_CFI("\t.cfi_restore_state\n")
|
__ASM_CFI("\t.cfi_restore_state\n")
|
||||||
|
|
||||||
"6:\tmovl $0xc000000d,%eax\n\t" /* STATUS_INVALID_PARAMETER */
|
"6:\tmovl $0xc000000d,%eax\n\t" /* STATUS_INVALID_PARAMETER */
|
||||||
"jmp " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") "\n\t"
|
"jmp " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
||||||
|
|
||||||
".globl " __ASM_NAME("__wine_syscall_dispatcher_return") "\n"
|
__ASM_GLOBAL_FUNC( __wine_syscall_dispatcher_return,
|
||||||
__ASM_NAME("__wine_syscall_dispatcher_return") ":\n\t"
|
|
||||||
"movl 8(%esp),%eax\n\t"
|
"movl 8(%esp),%eax\n\t"
|
||||||
"movl 4(%esp),%esp\n\t"
|
"movl 4(%esp),%esp\n\t"
|
||||||
"jmp " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
"jmp " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
||||||
|
|
|
@ -2876,9 +2876,9 @@ __ASM_GLOBAL_FUNC( __wine_syscall_dispatcher,
|
||||||
__ASM_CFI("\t.cfi_restore_state\n")
|
__ASM_CFI("\t.cfi_restore_state\n")
|
||||||
"5:\tmovl $0xc000000d,%eax\n\t" /* STATUS_INVALID_PARAMETER */
|
"5:\tmovl $0xc000000d,%eax\n\t" /* STATUS_INVALID_PARAMETER */
|
||||||
"movq %rsp,%rcx\n\t"
|
"movq %rsp,%rcx\n\t"
|
||||||
"jmp " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") "\n\t"
|
"jmp " __ASM_LOCAL_LABEL("__wine_syscall_dispatcher_return") )
|
||||||
".globl " __ASM_NAME("__wine_syscall_dispatcher_return") "\n"
|
|
||||||
__ASM_NAME("__wine_syscall_dispatcher_return") ":\n\t"
|
__ASM_GLOBAL_FUNC( __wine_syscall_dispatcher_return,
|
||||||
"movq %rdi,%rcx\n\t"
|
"movq %rdi,%rcx\n\t"
|
||||||
"movl 0xb0(%rcx),%r14d\n\t" /* frame->syscall_flags */
|
"movl 0xb0(%rcx),%r14d\n\t" /* frame->syscall_flags */
|
||||||
"movq %rsi,%rax\n\t"
|
"movq %rsi,%rax\n\t"
|
||||||
|
|
Loading…
Reference in a new issue