[PATCH] D124317: [llvm-pdbutil] Add options to only dump symbol record at specified offset and its parents or children with spcified depth.

Zequan Wu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 22 18:46:46 PDT 2022


zequanwu created this revision.
zequanwu added reviewers: rnk, aganea.
Herald added a subscriber: hiraditya.
Herald added a project: All.
zequanwu requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Right now, if we want to dump symbol at specified offset, we need to use `grep`.
And it can only show surrounding symbols in layout (not in lexical scope sense).

This adds similar options to `dump` command as `llvm-dwarfdump` to allow users
to dump symbol record at specified offset and its parents or children with
spcified depth.

`--symbol-offset=` must be used with `--modi` to dump only one symbol at given
offset.

`--show-parents`/`--show-children` must be used with `--symbol-offset` to
dump all symbols that are parents/children of the symbol at given offset.

`--parent-recurse-depth`/`--children-recurse-depth` must be used with
`--show-parents`/`--show-children` to specify the max up/down depth.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D124317

Files:
  llvm/include/llvm/DebugInfo/CodeView/CVSymbolVisitor.h
  llvm/include/llvm/DebugInfo/PDB/Native/InputFile.h
  llvm/include/llvm/DebugInfo/PDB/Native/LinePrinter.h
  llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp
  llvm/lib/DebugInfo/PDB/Native/InputFile.cpp
  llvm/test/tools/llvm-pdbutil/Inputs/symbol-offset.yaml
  llvm/test/tools/llvm-pdbutil/symbol-offset.test
  llvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
  llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D124317.424679.patch
Type: text/x-patch
Size: 26522 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220423/9191d225/attachment.bin>


More information about the llvm-commits mailing list