[PATCH] D149759: [symbolizer] Support symbol lookup

Serge Pavlov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 3 09:13:25 PDT 2023


sepavloff created this revision.
sepavloff added reviewers: jhenderson, dblaikie, mysterymath, MaskRay, ikudrin, dvyukov.
Herald added a subscriber: hiraditya.
Herald added a project: All.
sepavloff requested review of this revision.
Herald added a project: LLVM.

Recent versions of GNU binutils starting from 2.39 support symbol+offset
lookup in addition to the usual address lookup. This change adds symbol
lookup to llvm-symbolize.

If llvm-symbolize is called as llvm-addr2line, it tries to behave close
to GNU addr2line, - if the value specified in command line or input stream
is not a number, it is treated as a symbol name. Another way to use symbol
lookup in llvm-symbolize is to use the command SYMBOL, as in the next
example:

  llvm-symbolize --obj=abc.so "SYMBOL func_22"

This lookup is now supported only for functions. Specification with
offset is not supported yet.

Depends on D149757 <https://reviews.llvm.org/D149757>


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D149759

Files:
  llvm/include/llvm/DebugInfo/Symbolize/DIPrinter.h
  llvm/include/llvm/DebugInfo/Symbolize/SymbolizableModule.h
  llvm/include/llvm/DebugInfo/Symbolize/SymbolizableObjectFile.h
  llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h
  llvm/lib/DebugInfo/Symbolize/DIPrinter.cpp
  llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
  llvm/lib/DebugInfo/Symbolize/Symbolize.cpp
  llvm/test/tools/llvm-symbolizer/Inputs/addr2.inp
  llvm/test/tools/llvm-symbolizer/invalid-input-address.test
  llvm/test/tools/llvm-symbolizer/output-style-empty-line.test
  llvm/test/tools/llvm-symbolizer/output-style-json-code.test
  llvm/test/tools/llvm-symbolizer/sym.test
  llvm/test/tools/llvm-symbolizer/symbol-search.test
  llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
  llvm/unittests/ProfileData/MemProfTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D149759.519106.patch
Type: text/x-patch
Size: 23412 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230503/b42a64ee/attachment.bin>


More information about the llvm-commits mailing list