aboutsummaryrefslogtreecommitdiff
path: root/libitm
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2014-07-25 02:58:06 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2014-07-25 02:58:06 +0000
commit47740b003ff8b4839e4c6ac43c2537b2ebbf94a4 (patch)
treec6139f98a0a16d7f7be4df89db783bdc2deb9009 /libitm
parent56f6ab4d2649e01d36719ba9ac13417b29726936 (diff)
libitm: Improve aarch64 _ITM_beginTransaction
* config/aarch64/sjlj.S (_ITM_beginTransaction): Use post-inc addressing mode in epilogue. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213035 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libitm')
-rw-r--r--libitm/ChangeLog5
-rw-r--r--libitm/config/aarch64/sjlj.S3
2 files changed, 6 insertions, 2 deletions
diff --git a/libitm/ChangeLog b/libitm/ChangeLog
index 17bb0a66448..ce1cc219ae2 100644
--- a/libitm/ChangeLog
+++ b/libitm/ChangeLog
@@ -1,3 +1,8 @@
+2014-07-24 Richard Henderson <rth@redhat.com>
+
+ * config/aarch64/sjlj.S (_ITM_beginTransaction): Use post-inc
+ addressing mode in epilogue.
+
2014-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* acinclude.m4 (LIBITM_CHECK_LINKER_HWCAP): Check for
diff --git a/libitm/config/aarch64/sjlj.S b/libitm/config/aarch64/sjlj.S
index 4207da96638..77118dd4744 100644
--- a/libitm/config/aarch64/sjlj.S
+++ b/libitm/config/aarch64/sjlj.S
@@ -53,8 +53,7 @@ _ITM_beginTransaction:
bl GTM_begin_transaction
/* Return; we don't need to restore any of the call-saved regs. */
- ldp x29, x30, [sp]
- add sp, sp, #11*16
+ ldp x29, x30, [sp], 11*16
cfi_adjust_cfa_offset(-11*16)
cfi_restore(x29)
cfi_restore(x30)