LLVM 20.0.0git
|
#include "llvm/DebugInfo/LogicalView/Core/LVLocation.h"
Public Member Functions | |
LVLocation () | |
LVLocation (const LVLocation &)=delete | |
LVLocation & | operator= (const LVLocation &)=delete |
virtual | ~LVLocation ()=default |
PROPERTY (Property, IsAddressRange) | |
PROPERTY (Property, IsBaseClassOffset) | |
PROPERTY (Property, IsBaseClassStep) | |
PROPERTY_1 (Property, IsClassOffset, IsLocationSimple) | |
PROPERTY_1 (Property, IsFixedAddress, IsLocationSimple) | |
PROPERTY (Property, IsLocationSimple) | |
PROPERTY (Property, IsGapEntry) | |
PROPERTY (Property, IsOperationList) | |
PROPERTY (Property, IsOperation) | |
PROPERTY (Property, IsRegister) | |
PROPERTY_1 (Property, IsStackOffset, IsLocationSimple) | |
PROPERTY (Property, IsDiscardedRange) | |
PROPERTY (Property, IsInvalidRange) | |
PROPERTY (Property, IsInvalidLower) | |
PROPERTY (Property, IsInvalidUpper) | |
PROPERTY (Property, IsCallSite) | |
const char * | kind () const override |
virtual void | updateKind () |
const LVLine * | getLowerLine () const |
void | setLowerLine (LVLine *Line) |
const LVLine * | getUpperLine () const |
void | setUpperLine (LVLine *Line) |
LVAddress | getLowerAddress () const override |
void | setLowerAddress (LVAddress Address) override |
LVAddress | getUpperAddress () const override |
void | setUpperAddress (LVAddress Address) override |
std::string | getIntervalInfo () const |
bool | validateRanges () |
virtual void | addObject (LVAddress LowPC, LVAddress HighPC, LVUnsigned SectionOffset, uint64_t LocDescOffset) |
virtual void | addObject (LVSmall Opcode, ArrayRef< LVUnsigned > Operands) |
void | printInterval (raw_ostream &OS, bool Full=true) const |
void | printRaw (raw_ostream &OS, bool Full=true) const |
virtual void | printRawExtra (raw_ostream &OS, bool Full=true) const |
void | print (raw_ostream &OS, bool Full=true) const override |
void | printExtra (raw_ostream &OS, bool Full=true) const override |
void | dump () const override |
Public Member Functions inherited from llvm::logicalview::LVObject | |
LVObject () | |
LVObject & | operator= (const LVObject &)=delete |
virtual | ~LVObject ()=default |
PROPERTY (Property, IsLocation) | |
PROPERTY (Property, IsGlobalReference) | |
PROPERTY (Property, IsGeneratedName) | |
PROPERTY (Property, IsResolved) | |
PROPERTY (Property, IsResolvedName) | |
PROPERTY (Property, IsDiscarded) | |
PROPERTY (Property, IsOptimized) | |
PROPERTY (Property, IsAdded) | |
PROPERTY (Property, IsMatched) | |
PROPERTY (Property, IsMissing) | |
PROPERTY (Property, IsMissingLink) | |
PROPERTY (Property, IsInCompare) | |
PROPERTY (Property, IsFileFromReference) | |
PROPERTY (Property, IsLineFromReference) | |
PROPERTY (Property, HasMoved) | |
PROPERTY (Property, HasPattern) | |
PROPERTY (Property, IsFinalized) | |
PROPERTY (Property, IsReferenced) | |
PROPERTY (Property, HasCodeViewLocation) | |
virtual bool | isNamed () const |
virtual bool | isTyped () const |
virtual bool | isFiled () const |
bool | isLined () const |
dwarf::Tag | getTag () const |
void | setTag (dwarf::Tag Tag) |
dwarf::Attribute | getAttr () const |
void | setAttr (dwarf::Attribute Attr) |
LVSmall | getOpcode () const |
void | setOpcode (LVSmall Opcode) |
LVOffset | getOffset () const |
void | setOffset (LVOffset DieOffset) |
LVLevel | getLevel () const |
void | setLevel (LVLevel Level) |
virtual StringRef | getName () const |
virtual void | setName (StringRef ObjectName) |
LVElement * | getParent () const |
LVScope * | getParentScope () const |
LVSymbol * | getParentSymbol () const |
void | setParent (LVScope *Scope) |
void | setParent (LVSymbol *Symbol) |
void | resetParent () |
virtual LVAddress | getLowerAddress () const |
virtual void | setLowerAddress (LVAddress Address) |
virtual LVAddress | getUpperAddress () const |
virtual void | setUpperAddress (LVAddress Address) |
uint32_t | getLineNumber () const |
void | setLineNumber (uint32_t Number) |
virtual const char * | kind () const |
std::string | indentAsString () const |
std::string | indentAsString (LVLevel Level) const |
virtual std::string | noLineAsString (bool ShowZero) const |
virtual std::string | lineNumberAsString (bool ShowZero=false) const |
std::string | lineNumberAsStringStripped (bool ShowZero=false) const |
virtual Error | doPrint (bool Split, bool Match, bool Print, raw_ostream &OS, bool Full=true) const |
void | printAttributes (raw_ostream &OS, bool Full=true) const |
void | printAttributes (raw_ostream &OS, bool Full, StringRef Name, LVObject *Parent, StringRef Value, bool UseQuotes=false, bool PrintRef=false) const |
void | markBranchAsMissing () |
virtual void | print (raw_ostream &OS, bool Full=true) const |
virtual void | printExtra (raw_ostream &OS, bool Full=true) const |
virtual void | dump () const |
uint64_t | getID () const |
Static Public Member Functions | |
static bool | calculateCoverage (LVLocations *Locations, unsigned &Factor, float &Percentage) |
static void | print (LVLocations *Locations, raw_ostream &OS, bool Full=true) |
Protected Member Functions | |
void | setKind () |
Protected Member Functions inherited from llvm::logicalview::LVObject | |
std::string | lineAsString (uint32_t LineNumber, LVHalf Discriminator, bool ShowZero) const |
std::string | referenceAsString (uint32_t LineNumber, bool Spaces) const |
virtual void | printFileIndex (raw_ostream &OS, bool Full=true) const |
Protected Attributes | |
LVLine * | LowerLine = nullptr |
LVLine * | UpperLine = nullptr |
LVAddress | LowPC = 0 |
LVAddress | HighPC = 0 |
Definition at line 57 of file LVLocation.h.
|
inline |
Definition at line 99 of file LVLocation.h.
|
delete |
|
virtualdefault |
|
inlinevirtual |
Reimplemented in llvm::logicalview::LVLocationSymbol.
Definition at line 150 of file LVLocation.h.
Referenced by llvm::logicalview::LVSymbol::addLocation(), and llvm::logicalview::LVSymbol::addLocationOperands().
|
inlinevirtual |
Reimplemented in llvm::logicalview::LVLocationSymbol.
Definition at line 152 of file LVLocation.h.
|
static |
Definition at line 496 of file LVLocation.cpp.
References llvm::logicalview::Location, llvm::logicalview::Locations, and llvm::logicalview::options().
Referenced by llvm::logicalview::LVSymbol::calculateCoverage().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Definition at line 163 of file LVLocation.h.
References llvm::dbgs(), and print().
std::string LVLocation::getIntervalInfo | ( | ) | const |
Definition at line 431 of file LVLocation.cpp.
References getLowerAddress(), getLowerLine(), getUpperAddress(), getUpperLine(), llvm::logicalview::hexString(), llvm::logicalview::options(), and llvm::String.
Referenced by printInterval().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Definition at line 132 of file LVLocation.h.
References LowPC.
Referenced by getIntervalInfo(), and printRaw().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Definition at line 134 of file LVLocation.h.
References HighPC.
Referenced by getIntervalInfo(), and printRaw().
Reimplemented from llvm::logicalview::LVObject.
Definition at line 410 of file LVLocation.cpp.
References llvm::logicalview::Kind.
|
delete |
|
static |
Definition at line 621 of file LVLocation.cpp.
References llvm::format(), llvm::Full, llvm::logicalview::LVScope::getCoverageFactor(), llvm::logicalview::LVSymbol::getCoverageFactor(), llvm::logicalview::LVSymbol::getCoveragePercentage(), llvm::logicalview::LVObject::getParentScope(), llvm::logicalview::getReader(), llvm::logicalview::Location, llvm::logicalview::Locations, llvm::logicalview::options(), OS, llvm::logicalview::LVObject::printAttributes(), llvm::String, and llvm::logicalview::LVObject::Symbol.
Referenced by dump(), and llvm::logicalview::LVSymbol::printExtra().
|
overridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Definition at line 545 of file LVLocation.cpp.
References llvm::Full, llvm::logicalview::getReader(), OS, llvm::logicalview::LVObject::print(), and printExtra().
|
overridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Reimplemented in llvm::logicalview::LVLocationSymbol.
Definition at line 552 of file LVLocation.cpp.
References llvm::Full, OS, and printInterval().
Referenced by print().
void LVLocation::printInterval | ( | raw_ostream & | OS, |
bool | Full = true |
||
) | const |
Definition at line 540 of file LVLocation.cpp.
References getIntervalInfo(), and OS.
Referenced by printExtra(), and llvm::logicalview::LVLocationSymbol::printExtra().
void LVLocation::printRaw | ( | raw_ostream & | OS, |
bool | Full = true |
||
) | const |
Definition at line 532 of file LVLocation.cpp.
References llvm::Full, getLowerAddress(), getUpperAddress(), llvm::logicalview::hexString(), OS, and printRawExtra().
|
inlinevirtual |
Reimplemented in llvm::logicalview::LVLocationSymbol.
Definition at line 157 of file LVLocation.h.
Referenced by printRaw().
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsAddressRange | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsBaseClassOffset | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsBaseClassStep | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsCallSite | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsDiscardedRange | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsGapEntry | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsInvalidLower | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsInvalidRange | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsInvalidUpper | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsLocationSimple | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsOperation | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsOperationList | |||
) |
llvm::logicalview::LVLocation::PROPERTY | ( | Property | , |
IsRegister | |||
) |
llvm::logicalview::LVLocation::PROPERTY_1 | ( | Property | , |
IsClassOffset | , | ||
IsLocationSimple | |||
) |
llvm::logicalview::LVLocation::PROPERTY_1 | ( | Property | , |
IsFixedAddress | , | ||
IsLocationSimple | |||
) |
llvm::logicalview::LVLocation::PROPERTY_1 | ( | Property | , |
IsStackOffset | , | ||
IsLocationSimple | |||
) |
|
protected |
Definition at line 587 of file LVLocation.cpp.
References llvm::logicalview::LVObject::getAttr(), and llvm::logicalview::LVObject::getParentSymbol().
Referenced by llvm::logicalview::LVLocationSymbol::addObject().
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Definition at line 133 of file LVLocation.h.
References llvm::Address, and LowPC.
Referenced by llvm::logicalview::LVLocationSymbol::addObject().
|
inline |
|
inlineoverridevirtual |
Reimplemented from llvm::logicalview::LVObject.
Definition at line 135 of file LVLocation.h.
References llvm::Address, and HighPC.
Referenced by llvm::logicalview::LVLocationSymbol::addObject().
|
inline |
|
inlinevirtual |
Definition at line 123 of file LVLocation.h.
bool LVLocation::validateRanges | ( | ) |
Definition at line 462 of file LVLocation.cpp.
References llvm::logicalview::LVObject::getLineNumber(), llvm::logicalview::getReaderCompileUnit(), llvm::logicalview::LVScopeCompileUnit::lineRange(), llvm::logicalview::Range, setLowerLine(), and setUpperLine().
|
protected |
Definition at line 94 of file LVLocation.h.
Referenced by llvm::logicalview::LVLocationSymbol::addObject(), getUpperAddress(), and setUpperAddress().
|
protected |
Definition at line 87 of file LVLocation.h.
Referenced by getLowerLine(), and setLowerLine().
|
protected |
Definition at line 93 of file LVLocation.h.
Referenced by llvm::logicalview::LVLocationSymbol::addObject(), getLowerAddress(), and setLowerAddress().
|
protected |
Definition at line 88 of file LVLocation.h.
Referenced by getUpperLine(), and setUpperLine().