This is an archive of the discontinued LLVM Phabricator instance.

[llvm-objdump][ARM] support --symbolize-operands for ARM/ELF
Needs ReviewPublic

Authored by covanam on Feb 10 2023, 4:27 AM.

Details

Summary

Support --symbolize-operands on ARM/Thumb architecture.
Only support ELF object files for now.

Diff Detail

Event Timeline

covanam created this revision.Feb 10 2023, 4:27 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 10 2023, 4:27 AM
covanam requested review of this revision.Feb 10 2023, 4:27 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 10 2023, 4:27 AM
hoy added a subscriber: hoy.Feb 13 2023, 10:24 AM
hoy added inline comments.
llvm/tools/llvm-objdump/llvm-objdump.cpp
1169–1171

Is this always true for linked binary?

Esme added a comment.Feb 14 2023, 7:25 PM

Please include as much context as possible with your diff. https://llvm.org/docs/Phabricator.html#requesting-a-review-via-the-web-interface

llvm/tools/llvm-objdump/llvm-objdump.cpp
1145

Please capitalize the first letter of variable names.

1172

ditto.

Please include as much context as possible with your diff. https://llvm.org/docs/Phabricator.html#requesting-a-review-via-the-web-interface

Thank you. Will read that and will add more context.

llvm/tools/llvm-objdump/llvm-objdump.cpp
1145

Sorry I am newcomer. clang-format didn't say anything, so I thought this is okay.
Will be fixed. Same for the other one.

1169–1171

Actually I don't know, from my practical experience, it seems to be true. However, I checked ARM's documentation on ELF files and they do not say anything about this.

I will think about this and will come back later.

jhenderson added inline comments.Feb 20 2023, 12:44 AM
llvm/tools/llvm-objdump/llvm-objdump.cpp
1145

clang-format is only for formatting. It won't do things like variable name styles. You may want to look into clang-tidy which does a lot more. Also, make sure you've fully read and digested the LLVM coding standards.

FWIW, here you can't simply do triple -> Triple, since Triple is a type. You probably can use TargetTriple or something along those lines.