I noticed this while backporting support to the 4.9 branch. I'm not sure what I was thinking when I wrote this originally; probably too much cut-and-paste from another implementation.
Anyway, sanity tested and committed. r~ * config/aarch64/sjlj.S (_ITM_beginTransaction): Use post-inc addressing mode in epilogue. diff --git a/libitm/config/aarch64/sjlj.S b/libitm/config/aarch64/sjlj.S index 4207da9..77118dd 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) -- 1.9.3