LLVM 20.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 ArrayRef< uint64_t > Operands) |
Definition at line 23 of file DWARFExpression.h.
|
inline |
Definition at line 146 of file DWARFExpression.h.
References assert().
|
inline |
Definition at line 152 of file DWARFExpression.h.
Referenced by printCompact(), and llvm::DWARFUnit::updateVariableDieMap().
|
inline |
Definition at line 153 of file DWARFExpression.h.
References llvm::DataExtractor::getData(), and llvm::StringRef::size().
Referenced by printCompact(), and llvm::DWARFUnit::updateVariableDieMap().
|
inline |
Definition at line 170 of file DWARFExpression.h.
References llvm::DataExtractor::getData().
Referenced by llvm::dwarf_linker::parallel::CompileUnit::cloneDieAttrExpression().
bool llvm::DWARFExpression::operator== | ( | const DWARFExpression & | RHS | ) | const |
Definition at line 555 of file DWARFExpression.cpp.
References RHS.
|
static |
Definition at line 262 of file DWARFExpression.cpp.
References llvm::format(), llvm::DIDumpOptions::GetNameForDWARFReg, llvm::DIDumpOptions::IsEH, Operands, OS, llvm::prettyPrintBaseTypeRef(), and RegName.
Referenced by llvm::logicalview::LVDWARFReader::getRegisterName(), and llvm::DWARFExpression::Operation::print().
void llvm::DWARFExpression::print | ( | raw_ostream & | OS, |
DIDumpOptions | DumpOpts, | ||
DWARFUnit * | U, | ||
bool | IsEH = false |
||
) | const |
Definition at line 364 of file DWARFExpression.cpp.
References llvm::format(), llvm::DWARFExpression::Operation::getCode(), llvm::DWARFExpression::Operation::getEndOffset(), llvm::DWARFExpression::Operation::getRawOperand(), llvm::DIDumpOptions::IsEH, OS, and llvm::DWARFExpression::Operation::print().
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 549 of file DWARFExpression.cpp.
References begin(), end(), OS, and llvm::printCompactDWARFExpr().
Definition at line 419 of file DWARFExpression.cpp.
References llvm::DWARFExpression::Operation::verify().