[Lldb-commits] [PATCH] D60068: PDBFPO: Refactor register reference resolution

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Apr 1 08:04:41 PDT 2019


labath created this revision.
labath added reviewers: aleksandr.urakov, zturner, amccarth.
Herald added a subscriber: jdoerfert.

This refactors moves the register name->number resolution out of the
FPOProgramNodeRegisterRef class. Instead I create a special
FPOProgramNodeSymbol class, which holds unresolved symbols, and move the
resolution into the ResolveRegisterRefs visitor.

The background here is that I'd like to use this code for Breakpad
unwind info, which uses similar syntax to describe unwind info. For
example, a simple breakpad unwind program might look like:

  .cfa: $esp 8 + $ebp: .cfa 8 - ^

To be able to do this, I need to be able to customize register
resolving, as that is presently hardcoded to use codeview register
names, but breakpad supports a lot more architectures with different
register names. Moving the resolution into a separate class will allow
each user to use a different resolution logic.


https://reviews.llvm.org/D60068

Files:
  source/Plugins/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpression.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D60068.193091.patch
Type: text/x-patch
Size: 8037 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20190401/8cb90fae/attachment-0001.bin>


More information about the lldb-commits mailing list