diff options
author | Ulrich Drepper <drepper@redhat.com> | 2009-07-30 20:09:30 -0700 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2009-07-30 20:09:30 -0700 |
commit | 07df80996944b95a238be755eb4957a83a5e4762 (patch) | |
tree | a3289076c92d4bea338750bacfd4c2fff342a710 | |
parent | 85d9d2f3a089f747177895b115ca2186f34b0122 (diff) | |
download | glibc-07df80996944b95a238be755eb4957a83a5e4762.zip glibc-07df80996944b95a238be755eb4957a83a5e4762.tar.gz glibc-07df80996944b95a238be755eb4957a83a5e4762.tar.bz2 |
Optimize ____longjmp_chk for x86-64 a bit.
-rw-r--r-- | sysdeps/x86_64/____longjmp_chk.S | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/sysdeps/x86_64/____longjmp_chk.S b/sysdeps/x86_64/____longjmp_chk.S index 50d2fca..23aa0cb 100644 --- a/sysdeps/x86_64/____longjmp_chk.S +++ b/sysdeps/x86_64/____longjmp_chk.S @@ -66,14 +66,12 @@ ENTRY(____longjmp_chk) cmpq %r8, %rsp jbe .Lok - subq $32, %rsp - cfi_adjust_cfa_offset(32) - movq %r10, 24(%rsp) + subq $24, %rsp + cfi_adjust_cfa_offset(24) xorl %edi, %edi movq %rsp, %rsi movl $__NR_sigaltstack, %eax syscall - movq 24(%rsp), %r10 testl %eax, %eax movl $0, %eax jne .Lok @@ -127,7 +125,7 @@ ENTRY(____longjmp_chk) .Lfail: xchgq %r8, %rsp /* We want the stack trace to show that of the caller. */ - cfi_def_cfa(%rsp, 40) + cfi_def_cfa(%rsp, 32) cfi_restore(%rsp) cfi_register(%rbp, %r9) cfi_restore(%rip) |