aarch64 fix
authorAnthony Green <green@moxielogic.com>
Fri, 28 Feb 2014 05:17:16 +0000 (00:17 -0500)
committerAnthony Green <green@moxielogic.com>
Fri, 28 Feb 2014 05:17:16 +0000 (00:17 -0500)
ChangeLog
src/aarch64/sysv.S

index 9dcebbd3f1d38ea7bc5323c845537217f63d4617..ca24a095bba71231ded396ca6fd072f1bae88a7e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2014-02-28  Yufeng Zhang  <yufeng.zhang@arm.com>
+
+       * src/aarch64/sysv.S (ffi_closure_SYSV): Use x29 as the
+       main CFA reg; update cfi_rel_offset.
+
 2014-02-09  Heiher  <r@hev.cc>
 
        * src/mips/n32.S: Fix call floating point va function.
index bd67798aa1034f06ac7cdc49eef8a47279a9bdb3..7273b7370d6d8fa02d6e3e0d71b917fec3a3f294 100644 (file)
@@ -249,13 +249,13 @@ CNAME(ffi_closure_SYSV):
         cfi_rel_offset (x30, 8)
 
         mov     x29, sp
+        cfi_def_cfa_register (x29)
 
         sub     sp, sp, #ffi_closure_SYSV_FS
-       cfi_adjust_cfa_offset (ffi_closure_SYSV_FS)
 
         stp     x21, x22, [x29, #-16]
-        cfi_rel_offset (x21, 0)
-        cfi_rel_offset (x22, 8)
+        cfi_rel_offset (x21, -16)
+        cfi_rel_offset (x22, -8)
 
         /* Load x21 with &call_context.  */
         mov     x21, sp
@@ -313,7 +313,7 @@ CNAME(ffi_closure_SYSV):
         cfi_restore (x22)
 
         mov     sp, x29
-       cfi_adjust_cfa_offset (-ffi_closure_SYSV_FS)
+        cfi_def_cfa_register (sp)
 
         ldp     x29, x30, [sp], #16
        cfi_adjust_cfa_offset (-16)