This is an archive of the discontinued LLVM Phabricator instance.

[llvm-readobj] [ARMWinEH] Try to resolve label symbols into regular ones
ClosedPublic

Authored by mstorsjo on Apr 29 2021, 1:37 PM.

Details

Summary

Unwind info generated by MSVC tends to have relocations pointing at
static "label" symbols like "$LN4" instead of regular ones based on
the actual function's name. Try to resolve such symbols to a non-label
symbol if possible (ideally to an external symbol), to improve
the readability.

Diff Detail

Event Timeline

mstorsjo created this revision.Apr 29 2021, 1:37 PM
mstorsjo requested review of this revision.Apr 29 2021, 1:37 PM
Herald added a project: Restricted Project. · View Herald TranscriptApr 29 2021, 1:37 PM
Herald added a subscriber: MaskRay. · View Herald Transcript
rnk added inline comments.Apr 29 2021, 3:11 PM
llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
297

If we get the preferred symbol at every call site, should we just do it in one place here?

mstorsjo updated this revision to Diff 341793.Apr 30 2021, 1:05 AM

Factorized the call into getSymbolForLocation.

rnk accepted this revision.May 4 2021, 12:21 PM

lgtm

This revision is now accepted and ready to land.May 4 2021, 12:21 PM