#include "llvm/DebugInfo/LogicalView/Core/LVScope.h"
#include "llvm/DebugInfo/LogicalView/Core/LVCompare.h"
#include "llvm/DebugInfo/LogicalView/Core/LVLine.h"
#include "llvm/DebugInfo/LogicalView/Core/LVLocation.h"
#include "llvm/DebugInfo/LogicalView/Core/LVRange.h"
#include "llvm/DebugInfo/LogicalView/Core/LVReader.h"
#include "llvm/DebugInfo/LogicalView/Core/LVSymbol.h"
#include "llvm/DebugInfo/LogicalView/Core/LVType.h"
usingnamespacellvm;
usingnamespacellvm::logicalview;
#define DEBUG_TYPE …
namespace {
const char *const KindArray = …;
const char *const KindBlock = …;
const char *const KindCallSite = …;
const char *const KindClass = …;
const char *const KindCompileUnit = …;
const char *const KindEnumeration = …;
const char *const KindFile = …;
const char *const KindFunction = …;
const char *const KindInlinedFunction = …;
const char *const KindNamespace = …;
const char *const KindStruct = …;
const char *const KindTemplateAlias = …;
const char *const KindTemplatePack = …;
const char *const KindUndefined = …;
const char *const KindUnion = …;
}
const char *LVScope::kind() const { … }
LVScopeDispatch LVScope::Dispatch = …;
void LVScope::addToChildren(LVElement *Element) { … }
void LVScope::addElement(LVElement *Element) { … }
void LVScope::addElement(LVLine *Line) { … }
void LVScope::addObject(LVLocation *Location) { … }
void LVScope::addElement(LVScope *Scope) { … }
void LVScope::addElement(LVSymbol *Symbol) { … }
void LVScope::addElement(LVType *Type) { … }
void LVScope::addObject(LVAddress LowerAddress, LVAddress UpperAddress) { … }
bool LVScope::removeElement(LVElement *Element) { … }
void LVScope::addMissingElements(LVScope *Reference) { … }
void LVScope::updateLevel(LVScope *Parent, bool Moved) { … }
void LVScope::resolve() { … }
void LVScope::resolveName() { … }
void LVScope::resolveReferences() { … }
void LVScope::resolveElements() { … }
StringRef LVScope::resolveReferencesChain() { … }
bool LVScope::getTemplateParameterTypes(LVTypes &Params) { … }
void LVScope::resolveTemplate() { … }
void LVScope::getQualifiedName(std::string &QualifiedName) const { … }
void LVScope::encodeTemplateArguments(std::string &Name) const { … }
void LVScope::encodeTemplateArguments(std::string &Name,
const LVTypes *Types) const { … }
bool LVScope::resolvePrinting() const { … }
Error LVScope::doPrint(bool Split, bool Match, bool Print, raw_ostream &OS,
bool Full) const { … }
void LVScope::sort() { … }
void LVScope::traverseParents(LVScopeGetFunction GetFunction,
LVScopeSetFunction SetFunction) { … }
void LVScope::traverseParentsAndChildren(LVObjectGetFunction GetFunction,
LVObjectSetFunction SetFunction) { … }
void LVScope::getLocations(LVLocations &LocationList,
LVValidLocation ValidLocation, bool RecordInvalid) { … }
void LVScope::getRanges(LVLocations &LocationList,
LVValidLocation ValidLocation, bool RecordInvalid) { … }
void LVScope::getRanges(LVRange &RangeList) { … }
LVScope *LVScope::outermostParent(LVAddress Address) { … }
LVScope *LVScope::findIn(const LVScopes *Targets) const { … }
bool LVScope::equalNumberOfChildren(const LVScope *Scope) const { … }
void LVScope::markMissingParents(const LVScope *Target, bool TraverseChildren) { … }
void LVScope::markMissingParents(const LVScopes *References,
const LVScopes *Targets,
bool TraverseChildren) { … }
bool LVScope::equals(const LVScope *Scope) const { … }
LVScope *LVScope::findEqualScope(const LVScopes *Scopes) const { … }
bool LVScope::equals(const LVScopes *References, const LVScopes *Targets) { … }
void LVScope::report(LVComparePass Pass) { … }
void LVScope::printActiveRanges(raw_ostream &OS, bool Full) const { … }
void LVScope::printEncodedArgs(raw_ostream &OS, bool Full) const { … }
void LVScope::print(raw_ostream &OS, bool Full) const { … }
void LVScope::printExtra(raw_ostream &OS, bool Full) const { … }
bool LVScopeAggregate::equals(const LVScope *Scope) const { … }
LVScope *LVScopeAggregate::findEqualScope(const LVScopes *Scopes) const { … }
void LVScopeAggregate::printExtra(raw_ostream &OS, bool Full) const { … }
bool LVScopeAlias::equals(const LVScope *Scope) const { … }
void LVScopeAlias::printExtra(raw_ostream &OS, bool Full) const { … }
void LVScopeArray::resolveExtra() { … }
bool LVScopeArray::equals(const LVScope *Scope) const { … }
void LVScopeArray::printExtra(raw_ostream &OS, bool Full) const { … }
void LVScopeCompileUnit::addSize(LVScope *Scope, LVOffset Lower,
LVOffset Upper) { … }
void LVScopeCompileUnit::propagatePatternMatch() { … }
void LVScopeCompileUnit::processRangeLocationCoverage(
LVValidLocation ValidLocation) { … }
void LVScopeCompileUnit::addMapping(LVLine *Line, LVSectionIndex SectionIndex) { … }
LVLine *LVScopeCompileUnit::lineLowerBound(LVAddress Address,
LVScope *Scope) const { … }
LVLine *LVScopeCompileUnit::lineUpperBound(LVAddress Address,
LVScope *Scope) const { … }
LVLineRange LVScopeCompileUnit::lineRange(LVLocation *Location) const { … }
StringRef LVScopeCompileUnit::getFilename(size_t Index) const { … }
bool LVScopeCompileUnit::equals(const LVScope *Scope) const { … }
void LVScopeCompileUnit::incrementPrintedLines() { … }
void LVScopeCompileUnit::incrementPrintedScopes() { … }
void LVScopeCompileUnit::incrementPrintedSymbols() { … }
void LVScopeCompileUnit::incrementPrintedTypes() { … }
void LVScopeCompileUnit::increment(LVLine *Line) { … }
void LVScopeCompileUnit::increment(LVScope *Scope) { … }
void LVScopeCompileUnit::increment(LVSymbol *Symbol) { … }
void LVScopeCompileUnit::increment(LVType *Type) { … }
void LVScopeCompileUnit::addedElement(LVLine *Line) { … }
void LVScopeCompileUnit::addedElement(LVScope *Scope) { … }
void LVScopeCompileUnit::addedElement(LVSymbol *Symbol) { … }
void LVScopeCompileUnit::addedElement(LVType *Type) { … }
void LVScopeCompileUnit::addDebugTag(dwarf::Tag Target, LVOffset Offset) { … }
void LVScopeCompileUnit::addInvalidOffset(LVOffset Offset, LVElement *Element) { … }
void LVScopeCompileUnit::addInvalidCoverage(LVSymbol *Symbol) { … }
void LVScopeCompileUnit::addInvalidLocation(LVLocation *Location) { … }
void LVScopeCompileUnit::addInvalidRange(LVLocation *Location) { … }
void LVScopeCompileUnit::addLineZero(LVLine *Line) { … }
void LVScopeCompileUnit::printLocalNames(raw_ostream &OS, bool Full) const { … }
void LVScopeCompileUnit::printWarnings(raw_ostream &OS, bool Full) const { … }
void LVScopeCompileUnit::printTotals(raw_ostream &OS) const { … }
void LVScopeCompileUnit::printScopeSize(const LVScope *Scope, raw_ostream &OS) { … }
void LVScopeCompileUnit::printSizes(raw_ostream &OS) const { … }
void LVScopeCompileUnit::printSummary(raw_ostream &OS) const { … }
void LVScopeCompileUnit::printSummary(raw_ostream &OS, const LVCounter &Counter,
const char *Header) const { … }
void LVScopeCompileUnit::printMatchedElements(raw_ostream &OS,
bool UseMatchedElements) { … }
void LVScopeCompileUnit::print(raw_ostream &OS, bool Full) const { … }
void LVScopeCompileUnit::printExtra(raw_ostream &OS, bool Full) const { … }
bool LVScopeEnumeration::equals(const LVScope *Scope) const { … }
void LVScopeEnumeration::printExtra(raw_ostream &OS, bool Full) const { … }
bool LVScopeFormalPack::equals(const LVScope *Scope) const { … }
void LVScopeFormalPack::printExtra(raw_ostream &OS, bool Full) const { … }
void LVScopeFunction::resolveReferences() { … }
void LVScopeFunction::setName(StringRef ObjectName) { … }
void LVScopeFunction::resolveExtra() { … }
bool LVScopeFunction::equals(const LVScope *Scope) const { … }
LVScope *LVScopeFunction::findEqualScope(const LVScopes *Scopes) const { … }
void LVScopeFunction::printExtra(raw_ostream &OS, bool Full) const { … }
void LVScopeFunctionInlined::resolveExtra() { … }
bool LVScopeFunctionInlined::equals(const LVScope *Scope) const { … }
LVScope *LVScopeFunctionInlined::findEqualScope(const LVScopes *Scopes) const { … }
void LVScopeFunctionInlined::printExtra(raw_ostream &OS, bool Full) const { … }
void LVScopeFunctionType::resolveExtra() { … }
bool LVScopeNamespace::equals(const LVScope *Scope) const { … }
LVScope *LVScopeNamespace::findEqualScope(const LVScopes *Scopes) const { … }
void LVScopeNamespace::printExtra(raw_ostream &OS, bool Full) const { … }
void LVScopeRoot::processRangeInformation() { … }
void LVScopeRoot::transformScopedName() { … }
bool LVScopeRoot::equals(const LVScope *Scope) const { … }
void LVScopeRoot::print(raw_ostream &OS, bool Full) const { … }
void LVScopeRoot::printExtra(raw_ostream &OS, bool Full) const { … }
Error LVScopeRoot::doPrintMatches(bool Split, raw_ostream &OS,
bool UseMatchedElements) const { … }
bool LVScopeTemplatePack::equals(const LVScope *Scope) const { … }
void LVScopeTemplatePack::printExtra(raw_ostream &OS, bool Full) const { … }