This is an archive of the discontinued LLVM Phabricator instance.

[MC] Fallback on DWARF when generating compact unwind on AArch64
ClosedPublic

Authored by thegameg on May 31 2018, 8:02 AM.

Details

Summary

Instead of asserting when using the def_cfa directive with a register different from fp, fallback on DWARF.

Easily triggered with:

.cfi_def_cfa x1, 32;

Diff Detail

Repository
rL LLVM

Event Timeline

thegameg created this revision.May 31 2018, 8:02 AM
thegameg updated this revision to Diff 149301.May 31 2018, 8:16 AM
pete accepted this revision.May 31 2018, 9:22 AM

Nice catch. This LGTM.

test/MC/AArch64/arm64-compact-unwind-fallback.s
5 ↗(On Diff #149301)

You should be able to get this with:

llvm-objdump -macho -unwind-info ...

This revision is now accepted and ready to land.May 31 2018, 9:22 AM
This revision was automatically updated to reflect the committed changes.
thegameg marked an inline comment as done.May 31 2018, 9:38 AM
thegameg added inline comments.
test/MC/AArch64/arm64-compact-unwind-fallback.s
5 ↗(On Diff #149301)

Thanks for the tip! I used that in the committed version.