ntdll: Make cfi annotations optional for x86_64.

This commit is contained in:
Alexandre Julliard 2010-04-12 12:38:27 +02:00
parent fd9c41ed20
commit 281f701880
2 changed files with 16 additions and 16 deletions

View File

@ -353,14 +353,14 @@ __ASM_GLOBAL_FUNC( call_entry_point,
#else
__ASM_GLOBAL_FUNC( call_entry_point,
"pushq %rbp\n\t"
".cfi_adjust_cfa_offset 8\n\t"
".cfi_rel_offset %rbp,0\n\t"
__ASM_CFI(".cfi_adjust_cfa_offset 8\n\t")
__ASM_CFI(".cfi_rel_offset %rbp,0\n\t")
"movq %rsp,%rbp\n\t"
".cfi_def_cfa_register %rbp\n\t"
__ASM_CFI(".cfi_def_cfa_register %rbp\n\t")
"pushq %rsi\n\t"
".cfi_rel_offset %rsi,-8\n\t"
__ASM_CFI(".cfi_rel_offset %rsi,-8\n\t")
"pushq %rdi\n\t"
".cfi_rel_offset %rdi,-16\n\t"
__ASM_CFI(".cfi_rel_offset %rdi,-16\n\t")
"movq %rcx,%rax\n\t"
"movq $4,%rcx\n\t"
"cmp %rcx,%rdx\n\t"
@ -378,13 +378,13 @@ __ASM_GLOBAL_FUNC( call_entry_point,
"callq *%rax\n\t"
"leaq -16(%rbp),%rsp\n\t"
"popq %rdi\n\t"
".cfi_same_value %rdi\n\t"
__ASM_CFI(".cfi_same_value %rdi\n\t")
"popq %rsi\n\t"
".cfi_same_value %rsi\n\t"
".cfi_def_cfa_register %rsp\n\t"
__ASM_CFI(".cfi_same_value %rsi\n\t")
__ASM_CFI(".cfi_def_cfa_register %rsp\n\t")
"popq %rbp\n\t"
".cfi_adjust_cfa_offset -8\n\t"
".cfi_same_value %rbp\n\t"
__ASM_CFI(".cfi_adjust_cfa_offset -8\n\t")
__ASM_CFI(".cfi_same_value %rbp\n\t")
"ret")
#endif

View File

@ -1610,10 +1610,10 @@ NTSTATUS context_from_server( CONTEXT *to, const context_t *from )
extern void raise_func_trampoline( EXCEPTION_RECORD *rec, CONTEXT *context, raise_func func );
__ASM_GLOBAL_FUNC( raise_func_trampoline,
".cfi_signal_frame\n\t"
".cfi_def_cfa %rbp,144\n\t" /* red zone + rip + rbp */
".cfi_rel_offset %rip,8\n\t"
".cfi_rel_offset %rbp,0\n\t"
__ASM_CFI(".cfi_signal_frame\n\t")
__ASM_CFI(".cfi_def_cfa %rbp,144\n\t") /* red zone + rip + rbp */
__ASM_CFI(".cfi_rel_offset %rip,8\n\t")
__ASM_CFI(".cfi_rel_offset %rbp,0\n\t")
"call *%rdx\n\t"
"int $3")
@ -2975,14 +2975,14 @@ void call_thread_func( LPTHREAD_START_ROUTINE entry, void *arg, void *frame )
extern void DECLSPEC_NORETURN call_thread_entry_point( LPTHREAD_START_ROUTINE entry, void *arg );
__ASM_GLOBAL_FUNC( call_thread_entry_point,
"subq $8,%rsp\n\t"
".cfi_adjust_cfa_offset 8\n\t"
__ASM_CFI(".cfi_adjust_cfa_offset 8\n\t")
"movq %rsp,%rdx\n\t"
"call " __ASM_NAME("call_thread_func") );
extern void DECLSPEC_NORETURN call_thread_exit_func( int status, void (*func)(int), void *frame );
__ASM_GLOBAL_FUNC( call_thread_exit_func,
"subq $8,%rsp\n\t"
".cfi_adjust_cfa_offset 8\n\t"
__ASM_CFI(".cfi_adjust_cfa_offset 8\n\t")
"movq %rdx,%rsp\n\t"
"call *%rsi" );