summaryrefslogtreecommitdiff
path: root/libffi
diff options
context:
space:
mode:
authorYufeng Zhang <yufeng.zhang@arm.com>2014-03-12 16:18:29 +0000
committerYufeng Zhang <yufeng@gcc.gnu.org>2014-03-12 16:18:29 +0000
commit5309143d87984d2ae3a5dc247df8779e58bcc56a (patch)
treeee53bd4d7897688e5d14f5398cafa12311b4a377 /libffi
parent3d05d0c0fac86b9b1f04982172f77577da4ce118 (diff)
sysv.S (ffi_closure_SYSV): Use x29 as the main CFA reg; update cfi_rel_offset.
libffi/ * src/aarch64/sysv.S (ffi_closure_SYSV): Use x29 as the main CFA reg; update cfi_rel_offset. From-SVN: r208515
Diffstat (limited to 'libffi')
-rw-r--r--libffi/ChangeLog5
-rw-r--r--libffi/src/aarch64/sysv.S8
2 files changed, 9 insertions, 4 deletions
diff --git a/libffi/ChangeLog b/libffi/ChangeLog
index 80e94ed77ca..aebe8553b90 100644
--- a/libffi/ChangeLog
+++ b/libffi/ChangeLog
@@ -1,3 +1,8 @@
+2014-03-12 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-17 Eric Botcazou <ebotcazou@adacore.com>
PR libffi/60073
diff --git a/libffi/src/aarch64/sysv.S b/libffi/src/aarch64/sysv.S
index b8cd421a8a5..ffb16f84cb1 100644
--- a/libffi/src/aarch64/sysv.S
+++ b/libffi/src/aarch64/sysv.S
@@ -231,13 +231,13 @@ 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
@@ -295,7 +295,7 @@ 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)