summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libcxxabi/src/Unwind/UnwindRegistersRestore.S2
-rw-r--r--libcxxabi/src/Unwind/UnwindRegistersSave.S2
2 files changed, 4 insertions, 0 deletions
diff --git a/libcxxabi/src/Unwind/UnwindRegistersRestore.S b/libcxxabi/src/Unwind/UnwindRegistersRestore.S
index 15e2072fda7..9f077051b99 100644
--- a/libcxxabi/src/Unwind/UnwindRegistersRestore.S
+++ b/libcxxabi/src/Unwind/UnwindRegistersRestore.S
@@ -266,6 +266,7 @@ Lnovec:
; On entry:
; thread_state pointer is in x0
;
+ .align 2
DEFINE_LIBUNWIND_PRIVATE_FUNCTION(_ZN9libunwind15Registers_arm646jumptoEv)
; skip restore of x0,x1 for now
ldp x2, x3, [x0, #0x010]
@@ -315,6 +316,7 @@ DEFINE_LIBUNWIND_PRIVATE_FUNCTION(_ZN9libunwind15Registers_arm646jumptoEv)
@ On entry:
@ thread_state pointer is in r0
@
+ .align 2
DEFINE_LIBUNWIND_PRIVATE_FUNCTION(_ZN9libunwind13Registers_arm6jumptoEv)
@ Use lr as base so that r0 can be restored.
mov lr, r0
diff --git a/libcxxabi/src/Unwind/UnwindRegistersSave.S b/libcxxabi/src/Unwind/UnwindRegistersSave.S
index 6f19f6c663d..681b44c7442 100644
--- a/libcxxabi/src/Unwind/UnwindRegistersSave.S
+++ b/libcxxabi/src/Unwind/UnwindRegistersSave.S
@@ -238,6 +238,7 @@ DEFINE_LIBUNWIND_FUNCTION(unw_getcontext)
; On entry:
; thread_state pointer is in x0
;
+ .align 2
DEFINE_LIBUNWIND_FUNCTION(unw_getcontext)
stp x0, x1, [x0, #0x000]
stp x2, x3, [x0, #0x010]
@@ -287,6 +288,7 @@ DEFINE_LIBUNWIND_FUNCTION(unw_getcontext)
@ On entry:
@ thread_state pointer is in r0
@
+ .align 2
DEFINE_LIBUNWIND_FUNCTION(unw_getcontext)
@ 32bit thumb-2 restrictions for stm:
@ . the sp (r13) cannot be in the list
OpenPOWER on IntegriCloud