-
Notifications
You must be signed in to change notification settings - Fork 13.4k
llvm-symbolizer --markup-filter does not adjust addresses without debug info #63178
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@llvm/issue-subscribers-tools-llvm-symbolizer |
Hi! This issue may be a good introductory issue for people new to working on LLVM. If you would like to work on this issue, your first steps are:
For more instructions on how to submit a patch to LLVM, see our documentation. If you have any further questions about this issue, don't hesitate to ask via a comment on this Github issue. @llvm/issue-subscribers-good-first-issue |
Hi @mysterymath I am new to LLVM and interested in beginner issue to start with. Could you assign this issue to me for practicing the contribution process? |
Doesn't look like this is still active, could I take this on @cchung100m? |
I'm working on a fix: maximeplante@b70221b. Could I be the the assignee for this bug since it hasn't been touched in a while? Before I make a pull request with my work I have a question: I am worried |
No symbol definitely doesn't preserve the fact that this was a program counter, but I'd agree that it shouldn't be confusable for the unadjusted raw markup. Perhaps switching from square brackets to angle brackets would suffice: |
If a lookup for debug info fails when symbolizing a log containing markup, a raw representation of the element is printed instead of a best effort version of the value. This makes sense for syntactic or semantic errors, but in cases where debug info simply cannot be found, there is still a good deal of information that the filter can print simply through the contextual markup elements. In particular, it can print addresses adjusted by the runtime memory layout of the process, which makes it easier to e.g. objdump the addresses later.
Fixing this should just be a matter of printing something like
[[[PC <addr>]]]
instead of the currentprintRawElement
. In these cases the correct address has already been computed, so it should be a relatively straightforward change.Reference:
llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp
Symbolizer Markup Format
The text was updated successfully, but these errors were encountered: