LLVM 17.0.0git
|
#include "llvm/DebugInfo/DWARF/DWARFExpression.h"
Classes | |
class | iterator |
An iterator to go through the expression operations. More... | |
class | Operation |
This class represents an Operation in the Expression. More... | |
Public Member Functions | |
DWARFExpression (DataExtractor Data, uint8_t AddressSize, std::optional< dwarf::DwarfFormat > Format=std::nullopt) | |
iterator | begin () const |
iterator | end () const |
void | print (raw_ostream &OS, DIDumpOptions DumpOpts, DWARFUnit *U, bool IsEH=false) const |
bool | printCompact (raw_ostream &OS, std::function< StringRef(uint64_t RegNum, bool IsEH)> GetNameForDWARFReg=nullptr) |
Print the expression in a format intended to be compact and useful to a user, but not perfectly unambiguous, or capable of representing every valid DWARF expression. | |
bool | verify (DWARFUnit *U) |
bool | operator== (const DWARFExpression &RHS) const |
StringRef | getData () const |
Static Public Member Functions | |
static bool | prettyPrintRegisterOp (DWARFUnit *U, raw_ostream &OS, DIDumpOptions DumpOpts, uint8_t Opcode, const uint64_t Operands[2]) |
Definition at line 23 of file DWARFExpression.h.
|
inline |
Definition at line 140 of file DWARFExpression.h.
References assert().
|
inline |
Definition at line 146 of file DWARFExpression.h.
Referenced by printCompact(), and llvm::DWARFUnit::updateVariableDieMap().
|
inline |
Definition at line 147 of file DWARFExpression.h.
References Data.
Referenced by printCompact(), and llvm::DWARFUnit::updateVariableDieMap().
|
inline |
Definition at line 164 of file DWARFExpression.h.
References Data.
bool llvm::DWARFExpression::operator== | ( | const DWARFExpression & | RHS | ) | const |
Definition at line 506 of file DWARFExpression.cpp.
References llvm::Data, and RHS.
|
static |
Definition at line 227 of file DWARFExpression.cpp.
References llvm::format(), llvm::DIDumpOptions::GetNameForDWARFReg, llvm::DIDumpOptions::IsEH, Operands, OS, llvm::prettyPrintBaseTypeRef(), and RegName.
Referenced by llvm::logicalview::LVELFReader::getRegisterName(), and llvm::DWARFExpression::Operation::print().
void llvm::DWARFExpression::print | ( | raw_ostream & | OS, |
DIDumpOptions | DumpOpts, | ||
DWARFUnit * | U, | ||
bool | IsEH = false |
||
) | const |
Definition at line 322 of file DWARFExpression.cpp.
References llvm::Data, llvm::format(), llvm::DIDumpOptions::IsEH, and OS.
Referenced by dumpExpression(), and dumpLocationExpr().
bool llvm::DWARFExpression::printCompact | ( | raw_ostream & | OS, |
std::function< StringRef(uint64_t RegNum, bool IsEH)> | GetNameForDWARFReg = nullptr |
||
) |
Print the expression in a format intended to be compact and useful to a user, but not perfectly unambiguous, or capable of representing every valid DWARF expression.
Returns true if the expression was sucessfully printed.
Definition at line 500 of file DWARFExpression.cpp.
References begin(), end(), OS, and llvm::printCompactDWARFExpr().
Definition at line 380 of file DWARFExpression.cpp.
References llvm::DWARFExpression::Operation::verify().