From 8e80581787d2342824d9b70d238e646326776c31 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 30 Jul 2009 21:29:27 -0700 Subject: Change code a bit to correct CFI. --- sysdeps/x86_64/____longjmp_chk.S | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sysdeps/x86_64/____longjmp_chk.S b/sysdeps/x86_64/____longjmp_chk.S index 23aa0cb..80e4aff 100644 --- a/sysdeps/x86_64/____longjmp_chk.S +++ b/sysdeps/x86_64/____longjmp_chk.S @@ -74,6 +74,8 @@ ENTRY(____longjmp_chk) syscall testl %eax, %eax movl $0, %eax + leaq 24(%rsp), %rsp + cfi_adjust_cfa_offset(-24) jne .Lok movl 8(%rsp), %eax andl $1, %eax @@ -125,7 +127,7 @@ ENTRY(____longjmp_chk) .Lfail: xchgq %r8, %rsp /* We want the stack trace to show that of the caller. */ - cfi_def_cfa(%rsp, 32) + cfi_def_cfa(%rsp, 8) cfi_restore(%rsp) cfi_register(%rbp, %r9) cfi_restore(%rip) -- cgit v1.1