diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/x86_64/__longjmp.S | 10 | ||||
-rw-r--r-- | sysdeps/x86_64/setjmp.S | 8 |
3 files changed, 14 insertions, 9 deletions
@@ -1,3 +1,8 @@ +2012-05-15 H.J. Lu <hongjiu.lu@intel.com> + + * sysdeps/x86_64/__longjmp.S: Use R*_LP on SP and PC. + * sysdeps/x86_64/setjmp.S: Likewise. + 2012-05-15 Adhemerval Zanella <azanella@linux.vnet.ibm.com> * sysdeps/ieee754/dbl-64/wordsize-64/e_log10.c: New file. diff --git a/sysdeps/x86_64/__longjmp.S b/sysdeps/x86_64/__longjmp.S index 3963f9ca10..22beb888a1 100644 --- a/sysdeps/x86_64/__longjmp.S +++ b/sysdeps/x86_64/__longjmp.S @@ -25,13 +25,13 @@ .text ENTRY(__longjmp) /* Restore registers. */ - movq (JB_RSP*8)(%rdi),%r8 + mov (JB_RSP*8)(%rdi),%R8_LP movq (JB_RBP*8)(%rdi),%r9 - movq (JB_PC*8)(%rdi),%rdx + mov (JB_PC*8)(%rdi),%RDX_LP #ifdef PTR_DEMANGLE - PTR_DEMANGLE (%r8) + PTR_DEMANGLE (%R8_LP) PTR_DEMANGLE (%r9) - PTR_DEMANGLE (%rdx) + PTR_DEMANGLE (%RDX_LP) #endif /* We add unwind information for the target here. */ cfi_def_cfa(%rdi, 0) @@ -50,7 +50,7 @@ ENTRY(__longjmp) movq (JB_R15*8)(%rdi),%r15 /* Set return value for setjmp. */ mov %esi, %eax - movq %r8,%rsp + mov %R8_LP,%RSP_LP movq %r9,%rbp jmpq *%rdx END (__longjmp) diff --git a/sysdeps/x86_64/setjmp.S b/sysdeps/x86_64/setjmp.S index 1902d1458d..87c095238c 100644 --- a/sysdeps/x86_64/setjmp.S +++ b/sysdeps/x86_64/setjmp.S @@ -34,14 +34,14 @@ ENTRY (__sigsetjmp) movq %r13, (JB_R13*8)(%rdi) movq %r14, (JB_R14*8)(%rdi) movq %r15, (JB_R15*8)(%rdi) - leaq 8(%rsp), %rdx /* Save SP as it will be after we return. */ + lea 8(%rsp), %RDX_LP /* Save SP as it will be after we return. */ #ifdef PTR_MANGLE - PTR_MANGLE (%rdx) + PTR_MANGLE (%RDX_LP) #endif movq %rdx, (JB_RSP*8)(%rdi) - movq (%rsp), %rax /* Save PC we are returning to now. */ + mov (%rsp), %RAX_LP /* Save PC we are returning to now. */ #ifdef PTR_MANGLE - PTR_MANGLE (%rax) + PTR_MANGLE (%RAX_LP) #endif movq %rax, (JB_PC*8)(%rdi) |