[HWASan] Fixed slow DWARF unwinding.

Summary: CFA was setup incorrectly, as there is an 8-byte gap at the top of the stack for SP 16-byte alignment purposes.

Reviewers: eugenis

Reviewed By: eugenis

Subscribers: kubamracek, javed.absar, #sanitizers, llvm-commits, pcc

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D60798

llvm-svn: 358535
This commit is contained in:
Mitch Phillips 2019-04-16 22:16:01 +00:00
parent 896b0c7b99
commit 8f9d95d9d7
1 changed files with 3 additions and 3 deletions

View File

@ -68,9 +68,9 @@ __hwasan_tag_mismatch:
// __hwasan_tag_mismatch. The frame pointer is already correctly setup
// by __hwasan_check_*.
add x29, sp, #232
CFI_DEF_CFA(w29, 16)
CFI_OFFSET(w30, -8)
CFI_OFFSET(w29, -16)
CFI_DEF_CFA(w29, 24)
CFI_OFFSET(w30, -16)
CFI_OFFSET(w29, -24)
// Save the rest of the registers into the preallocated space left by
// __hwasan_check.