diff options
author | Andreas Gampe <agampe@google.com> | 2015-06-26 19:49:24 -0700 |
---|---|---|
committer | Andreas Gampe <agampe@google.com> | 2015-06-26 19:51:35 -0700 |
commit | 6b90d42316e0370c789dddb5dda48d7403ea378f (patch) | |
tree | 69af01ba975dd1c149e676fef1c94da99577c246 /runtime/arch/arm64 | |
parent | 921c7a62ba9dd6a4a855b08eca7cc1aae081adeb (diff) | |
download | art-6b90d42316e0370c789dddb5dda48d7403ea378f.tar.gz art-6b90d42316e0370c789dddb5dda48d7403ea378f.tar.bz2 art-6b90d42316e0370c789dddb5dda48d7403ea378f.zip |
ART: Fix CFI annotation in arm64, x86 and x86-64 assembly
To be able to unroll in the exception case, the state needs to be
reset to before the jump.
Bug: 22014525
Change-Id: Ic60400b5bf0efcb713c24df1728623d072f344ab
Diffstat (limited to 'runtime/arch/arm64')
-rw-r--r-- | runtime/arch/arm64/quick_entrypoints_arm64.S | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/runtime/arch/arm64/quick_entrypoints_arm64.S b/runtime/arch/arm64/quick_entrypoints_arm64.S index 78d3116af7..f3c111f99f 100644 --- a/runtime/arch/arm64/quick_entrypoints_arm64.S +++ b/runtime/arch/arm64/quick_entrypoints_arm64.S @@ -1100,6 +1100,8 @@ ENTRY art_quick_check_cast .cfi_adjust_cfa_offset -32 ret + .cfi_adjust_cfa_offset 32 // Reset unwind info so following code unwinds. + .Lthrow_class_cast_exception: // Restore ldr xLR, [sp, #24] |