This is an archive of the discontinued LLVM Phabricator instance.

[libunwind] Fix SEH unwinding on ARM
ClosedPublic

Authored by mstorsjo on Jun 2 2022, 2:36 AM.

Details

Reviewers
MaskRay
efriedma
zzheng
Group Reviewers
Restricted Project
Commits
rG7c0e93cb89e6: [libunwind] Fix SEH unwinding on ARM
Summary

Check __SEH__ when checking if ARM EHABI should be impliied.

Fix a warning by using the right format specifier (PRIxPTR instead
of PRIx64), and add a double->float cast in a codepath that hasn't
been built so far.

This is enough to make SEH unwinding of itanium ABI exceptions on
ARM mostly work - one specific issue is fixed in a separate follow-up
patch.

Diff Detail

Event Timeline

mstorsjo created this revision.Jun 2 2022, 2:36 AM
Herald added projects: Restricted Project, Restricted Project. · View Herald TranscriptJun 2 2022, 2:36 AM
Herald added a reviewer: Restricted Project. · View Herald Transcript
mstorsjo requested review of this revision.Jun 2 2022, 2:36 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 2 2022, 2:36 AM
MaskRay accepted this revision.Jun 5 2022, 11:12 AM
This revision is now accepted and ready to land.Jun 5 2022, 11:12 AM
This revision was landed with ongoing or failed builds.Jun 6 2022, 1:28 PM
This revision was automatically updated to reflect the committed changes.