proxygen
|
Classes | |
struct | FileName |
Public Member Functions | |
LineNumberVM (folly::StringPiece data, folly::StringPiece compilationDirectory) | |
bool | findAddress (uintptr_t address, Path &file, uint64_t &line) |
Private Types | |
enum | StepResult { CONTINUE, COMMIT, END } |
Private Member Functions | |
void | init () |
void | reset () |
bool | next (folly::StringPiece &program) |
StepResult | step (folly::StringPiece &program) |
FileName | getFileName (uint64_t index) const |
folly::StringPiece | getIncludeDirectory (uint64_t index) const |
bool | nextDefineFile (folly::StringPiece &program, FileName &fn) const |
Static Private Member Functions | |
static bool | readFileName (folly::StringPiece &sp, FileName &fn) |
Private Attributes | |
bool | is64Bit_ |
folly::StringPiece | data_ |
folly::StringPiece | compilationDirectory_ |
uint16_t | version_ |
uint8_t | minLength_ |
bool | defaultIsStmt_ |
int8_t | lineBase_ |
uint8_t | lineRange_ |
uint8_t | opcodeBase_ |
const uint8_t * | standardOpcodeLengths_ |
folly::StringPiece | includeDirectories_ |
size_t | includeDirectoryCount_ |
folly::StringPiece | fileNames_ |
size_t | fileNameCount_ |
uint64_t | address_ |
uint64_t | file_ |
uint64_t | line_ |
uint64_t | column_ |
bool | isStmt_ |
bool | basicBlock_ |
bool | endSequence_ |
bool | prologueEnd_ |
bool | epilogueBegin_ |
uint64_t | isa_ |
uint64_t | discriminator_ |
|
private |
folly::symbolizer::Dwarf::LineNumberVM::LineNumberVM | ( | folly::StringPiece | data, |
folly::StringPiece | compilationDirectory | ||
) |
Definition at line 620 of file Dwarf.cpp.
References data_, FOLLY_SAFE_CHECK, init(), folly::symbolizer::Dwarf::Section::is64Bit(), is64Bit_, folly::symbolizer::Dwarf::Section::next(), and reset().
bool folly::symbolizer::Dwarf::LineNumberVM::findAddress | ( | uintptr_t | address, |
Path & | file, | ||
uint64_t & | line | ||
) |
Definition at line 906 of file Dwarf.cpp.
References address_, compilationDirectory_, data_, folly::Range< Iter >::empty(), file_, getFileName(), getIncludeDirectory(), line_, next(), reset(), and uint64_t.
Referenced by folly::symbolizer::Dwarf::findLocation().
|
private |
Definition at line 697 of file Dwarf.cpp.
References data_, fileNameCount_, fileNames_, FOLLY_SAFE_CHECK, nextDefineFile(), and readFileName().
Referenced by findAddress().
|
private |
Definition at line 722 of file Dwarf.cpp.
References folly::Range< Iter >::empty(), FOLLY_SAFE_CHECK, includeDirectories_, and includeDirectoryCount_.
Referenced by findAddress().
|
private |
Definition at line 645 of file Dwarf.cpp.
References folly::Range< Iter >::assign(), folly::Range< Iter >::data(), data_, defaultIsStmt_, folly::empty(), folly::Range< Iter >::end(), fileNameCount_, fileNames_, FOLLY_SAFE_CHECK, includeDirectories_, includeDirectoryCount_, is64Bit_, lineBase_, lineRange_, minLength_, opcodeBase_, readFileName(), folly::Range< Iter >::size(), standardOpcodeLengths_, uint64_t, uint8_t, and version_.
Referenced by LineNumberVM().
|
private |
Definition at line 688 of file Dwarf.cpp.
References COMMIT, CONTINUE, and step().
Referenced by findAddress().
|
private |
Definition at line 757 of file Dwarf.cpp.
References folly::Range< Iter >::advance(), folly::Range< Iter >::empty(), FOLLY_SAFE_CHECK, opcodeBase_, readFileName(), standardOpcodeLengths_, and uint8_t.
Referenced by getFileName().
|
staticprivate |
Definition at line 743 of file Dwarf.cpp.
References folly::symbolizer::Dwarf::LineNumberVM::FileName::directoryIndex, folly::Range< Iter >::empty(), and folly::symbolizer::Dwarf::LineNumberVM::FileName::relativeName.
Referenced by getFileName(), init(), and nextDefineFile().
|
private |
Definition at line 631 of file Dwarf.cpp.
References address_, basicBlock_, column_, defaultIsStmt_, discriminator_, endSequence_, epilogueBegin_, file_, isa_, isStmt_, line_, and prologueEnd_.
Referenced by findAddress(), and LineNumberVM().
|
private |
Definition at line 797 of file Dwarf.cpp.
References address_, folly::Range< Iter >::advance(), basicBlock_, column_, COMMIT, CONTINUE, discriminator_, END, epilogueBegin_, file_, FOLLY_SAFE_CHECK, isa_, isStmt_, line_, lineBase_, lineRange_, minLength_, opcodeBase_, prologueEnd_, standardOpcodeLengths_, uint8_t, and version_.
Referenced by next().
|
private |
Definition at line 251 of file Dwarf.h.
Referenced by findAddress(), reset(), and step().
|
private |
|
private |
|
private |
Definition at line 233 of file Dwarf.h.
Referenced by findAddress().
|
private |
Definition at line 232 of file Dwarf.h.
Referenced by findAddress(), getFileName(), init(), and LineNumberVM().
|
private |
|
private |
|
private |
|
private |
|
private |
Definition at line 252 of file Dwarf.h.
Referenced by findAddress(), reset(), and step().
|
private |
Definition at line 248 of file Dwarf.h.
Referenced by getFileName(), and init().
|
private |
Definition at line 247 of file Dwarf.h.
Referenced by getFileName(), and init().
|
private |
Definition at line 244 of file Dwarf.h.
Referenced by getIncludeDirectory(), and init().
|
private |
Definition at line 245 of file Dwarf.h.
Referenced by getIncludeDirectory(), and init().
|
private |
Definition at line 231 of file Dwarf.h.
Referenced by init(), and LineNumberVM().
|
private |
|
private |
|
private |
Definition at line 253 of file Dwarf.h.
Referenced by findAddress(), reset(), and step().
|
private |
|
private |
|
private |
|
private |
Definition at line 241 of file Dwarf.h.
Referenced by init(), nextDefineFile(), and step().
|
private |
|
private |
Definition at line 242 of file Dwarf.h.
Referenced by init(), nextDefineFile(), and step().
|
private |