LLVM 20.0.0git
|
The logical reader owns of all the logical elements created during the debug information parsing. More...
#include "llvm/DebugInfo/LogicalView/Core/LVReader.h"
Static Public Member Functions | |
static LVReader & | getInstance () |
static void | setInstance (LVReader *Reader) |
Protected Member Functions | |
void | addCompileUnitOffset (LVOffset Offset, LVScopeCompileUnit *CompileUnit) |
virtual Error | createScopes () |
std::string | createAlternativePath (StringRef From) |
virtual Error | printScopes () |
virtual Error | printMatchedElements (bool UseMatchedElements) |
virtual void | sortScopes () |
Protected Attributes | |
LVScopeRoot * | Root = nullptr |
std::string | InputFilename |
std::string | FileFormatName |
ScopedPrinter & | W |
raw_ostream & | OS |
LVScopeCompileUnit * | CompileUnit = nullptr |
LVSectionIndex | DotTextSectionIndex = UndefinedSectionIndex |
The logical reader owns of all the logical elements created during the debug information parsing.
For its creation it uses a specific bump allocator for each type of logical element.
Definition at line 60 of file LVReader.h.
|
delete |
|
inline |
Definition at line 172 of file LVReader.h.
|
virtualdefault |
|
inlineprotected |
Definition at line 136 of file LVReader.h.
References llvm::logicalview::Offset.
|
inlineprotected |
Definition at line 155 of file LVReader.h.
References llvm::sys::path::append(), llvm::sys::path::convert_to_slash(), llvm::sys::path::filename(), From, InputFilename, llvm::sys::path::parent_path(), llvm::sys::path::posix, and llvm::sys::path::windows.
Referenced by llvm::logicalview::LVDWARFReader::createScopes().
|
inline |
Definition at line 231 of file LVReader.h.
References Operands.
|
inlineprotectedvirtual |
Reimplemented in llvm::logicalview::LVCodeViewReader, and llvm::logicalview::LVDWARFReader.
Definition at line 141 of file LVReader.h.
References FileFormatName, getFilename(), llvm::logicalview::options(), Root, llvm::logicalview::LVScopeRoot::setFileFormatName(), llvm::logicalview::LVElement::setName(), and llvm::Error::success().
Referenced by llvm::logicalview::LVCodeViewReader::createScopes(), llvm::logicalview::LVDWARFReader::createScopes(), and doLoad().
Error LVReader::doLoad | ( | ) |
Definition at line 214 of file LVReader.cpp.
References llvm::logicalview::LVPatterns::addGenericPatterns(), llvm::logicalview::LVPatterns::addOffsetPatterns(), checkIntegrityScopesTree(), createScopes(), llvm::inconvertibleErrorCode(), llvm::logicalview::options(), llvm::logicalview::patterns(), llvm::logicalview::LVScopeRoot::processRangeInformation(), llvm::logicalview::LVScope::resolveElements(), Root, Select, setInstance(), sortScopes(), llvm::Error::success(), and llvm::logicalview::LVPatterns::updateReportOptions().
Error LVReader::doPrint | ( | ) |
Definition at line 255 of file LVReader.cpp.
References llvm::logicalview::options(), printMatchedElements(), printScopes(), setInstance(), and llvm::Error::success().
Referenced by llvm::logicalview::LVCompare::execute().
Definition at line 306 of file LVReader.h.
References llvm::logicalview::patterns(), and llvm::logicalview::LVPatterns::printElement().
|
inline |
Definition at line 309 of file LVReader.h.
References llvm::logicalview::Location, llvm::logicalview::patterns(), and llvm::logicalview::LVPatterns::printObject().
Definition at line 312 of file LVReader.h.
References llvm::logicalview::patterns(), and llvm::logicalview::LVPatterns::printElement().
Referenced by llvm::logicalview::LVScopeCompileUnit::print().
Definition at line 315 of file LVReader.h.
References llvm::logicalview::patterns(), and llvm::logicalview::LVPatterns::printElement().
Definition at line 318 of file LVReader.h.
References llvm::logicalview::patterns(), and llvm::logicalview::LVPatterns::printElement().
|
inline |
Definition at line 329 of file LVReader.h.
References llvm::dbgs(), and print().
|
inline |
Definition at line 246 of file LVReader.h.
References CompileUnit.
Referenced by llvm::logicalview::getReaderCompileUnit(), llvm::logicalview::LVSymbolVisitor::visitKnownRecord(), and llvm::logicalview::LVLogicalVisitor::visitKnownRecord().
|
inline |
Definition at line 254 of file LVReader.h.
Referenced by llvm::logicalview::LVCodeViewReader::getRegisterName(), and llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
|
inline |
Definition at line 270 of file LVReader.h.
References DotTextSectionIndex.
Referenced by llvm::logicalview::LVSymbolTable::getIndex(), getSectionIndex(), and llvm::logicalview::LVSymbolTable::update().
|
inline |
Definition at line 238 of file LVReader.h.
References FileFormatName.
|
inline |
Definition at line 236 of file LVReader.h.
References InputFilename.
Referenced by createScopes(), and llvm::logicalview::LVDWARFReader::createScopes().
Definition at line 183 of file LVReader.cpp.
Referenced by llvm::logicalview::LVElement::setFile().
|
static |
Definition at line 153 of file LVReader.cpp.
References CurrentReader, llvm_unreachable, and llvm::outs().
Referenced by llvm::logicalview::getReader().
Definition at line 300 of file LVReader.h.
References llvm::codeview::Lines.
|
inlinevirtual |
Reimplemented in llvm::logicalview::LVCodeViewReader, and llvm::logicalview::LVDWARFReader.
Definition at line 264 of file LVReader.h.
References llvm_unreachable.
Referenced by llvm::logicalview::LVOperation::getOperandsCodeViewInfo(), and llvm::logicalview::LVOperation::getOperandsDWARFInfo().
Definition at line 301 of file LVReader.h.
References llvm::logicalview::Scopes.
|
inline |
Definition at line 259 of file LVReader.h.
References Root.
Referenced by llvm::logicalview::LVCompare::execute().
|
inlinevirtual |
Reimplemented in llvm::logicalview::LVBinaryReader.
Definition at line 271 of file LVReader.h.
References getDotTextSectionIndex().
Referenced by llvm::logicalview::LVElement::printLinkageName().
|
inline |
Definition at line 280 of file LVReader.h.
Referenced by llvm::logicalview::getReaderSplitContext().
Definition at line 302 of file LVReader.h.
Definition at line 303 of file LVReader.h.
References llvm::logicalview::Types.
|
inline |
Definition at line 244 of file LVReader.h.
References llvm::logicalview::COFF.
|
inline |
Definition at line 243 of file LVReader.h.
References llvm::logicalview::ELF.
|
inline |
Definition at line 242 of file LVReader.h.
References llvm::logicalview::NONE.
|
inlinevirtual |
Reimplemented in llvm::logicalview::LVCodeViewReader.
Definition at line 275 of file LVReader.h.
Referenced by llvm::logicalview::LVScopeFunction::setName(), and llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
|
inline |
Definition at line 283 of file LVReader.h.
References llvm::codeview::Lines, and llvm::logicalview::options().
Referenced by llvm::logicalview::LVScopeCompileUnit::addedElement().
|
inline |
Definition at line 287 of file LVReader.h.
References llvm::logicalview::options(), and llvm::logicalview::Scopes.
|
inline |
Definition at line 291 of file LVReader.h.
References llvm::logicalview::options().
|
inline |
Definition at line 295 of file LVReader.h.
References llvm::logicalview::options(), and llvm::logicalview::Types.
|
inline |
Definition at line 240 of file LVReader.h.
References OS.
Referenced by llvm::logicalview::LVScope::doPrint(), and llvm::logicalview::LVScopeRoot::doPrintMatches().
void LVReader::print | ( | raw_ostream & | OS | ) | const |
Definition at line 303 of file LVReader.cpp.
References llvm::dbgs(), LLVM_DEBUG, and OS.
Referenced by dump().
Definition at line 296 of file LVReader.cpp.
References llvm::logicalview::LVScopeRoot::doPrintMatches(), OS, and Root.
Referenced by doPrint().
|
inlinevirtual |
Reimplemented in llvm::logicalview::LVCodeViewReader.
Definition at line 326 of file LVReader.h.
Referenced by llvm::logicalview::LVScope::doPrint().
|
protectedvirtual |
Definition at line 280 of file LVReader.cpp.
References llvm::logicalview::LVScope::doPrint(), llvm::logicalview::options(), OS, Root, and llvm::Error::success().
Referenced by doPrint().
|
inline |
Definition at line 247 of file LVReader.h.
References assert().
Referenced by llvm::logicalview::LVLogicalVisitor::createElement(), llvm::logicalview::LVScope::doPrint(), llvm::logicalview::LVScopeRoot::doPrintMatches(), llvm::logicalview::LVCompare::execute(), llvm::logicalview::LVScopeCompileUnit::printSizes(), llvm::logicalview::LVScopeRoot::processRangeInformation(), and llvm::logicalview::LVScope::resolveElements().
|
inline |
Definition at line 251 of file LVReader.h.
Referenced by llvm::logicalview::LVSymbolVisitor::visitKnownRecord().
|
inline |
Definition at line 237 of file LVReader.h.
References InputFilename, and llvm::logicalview::Name.
|
static |
Definition at line 159 of file LVReader.cpp.
References CurrentReader.
Referenced by doLoad(), doPrint(), and llvm::logicalview::LVCompare::execute().
|
inlineprotectedvirtual |
Reimplemented in llvm::logicalview::LVCodeViewReader, and llvm::logicalview::LVDWARFReader.
Definition at line 168 of file LVReader.h.
Referenced by doLoad().
|
protected |
Definition at line 130 of file LVReader.h.
Referenced by getCompileUnit(), and llvm::logicalview::LVBinaryReader::processLines().
|
protected |
Definition at line 133 of file LVReader.h.
Referenced by getDotTextSectionIndex(), llvm::logicalview::LVBinaryReader::getSectionIndex(), and llvm::logicalview::LVBinaryReader::mapVirtualAddress().
|
protected |
Definition at line 127 of file LVReader.h.
Referenced by createScopes(), llvm::logicalview::LVCodeViewReader::createScopes(), llvm::logicalview::LVDWARFReader::createScopes(), and getFileFormatName().
|
protected |
Definition at line 126 of file LVReader.h.
Referenced by createAlternativePath(), getFilename(), and setFilename().
|
protected |
Definition at line 129 of file LVReader.h.
Referenced by outputStream(), print(), llvm::logicalview::LVBinaryReader::print(), llvm::logicalview::LVDWARFReader::print(), printMatchedElements(), llvm::logicalview::LVCodeViewReader::printRecords(), and printScopes().
|
protected |
Definition at line 125 of file LVReader.h.
Referenced by createScopes(), llvm::logicalview::LVCodeViewReader::createScopes(), llvm::logicalview::LVDWARFReader::createScopes(), doLoad(), getScopesRoot(), printMatchedElements(), printScopes(), llvm::logicalview::LVCodeViewReader::sortScopes(), and llvm::logicalview::LVDWARFReader::sortScopes().
|
protected |
Definition at line 128 of file LVReader.h.
Referenced by llvm::logicalview::LVCodeViewReader::createScopes(), and llvm::logicalview::LVDWARFReader::createScopes().