LLVM 20.0.0git
|
#include "llvm/DebugInfo/BTF/BTFParser.h"
Classes | |
struct | ParseContext |
struct | ParseOptions |
Public Member Functions | |
StringRef | findString (uint32_t Offset) const |
const BTF::BPFLineInfo * | findLineInfo (SectionedAddress Address) const |
const BTF::BPFFieldReloc * | findFieldReloc (SectionedAddress Address) const |
void | symbolize (const BTF::BPFFieldReloc *Reloc, SmallVectorImpl< char > &Result) const |
const BTF::CommonType * | findType (uint32_t Id) const |
size_t | typesCount () const |
Error | parse (const ObjectFile &Obj, const ParseOptions &Opts) |
Error | parse (const ObjectFile &Obj) |
Static Public Member Functions | |
static bool | hasBTFSections (const ObjectFile &Obj) |
Definition at line 35 of file BTFParser.h.
const BTF::BPFFieldReloc * BTFParser::findFieldReloc | ( | SectionedAddress | Address | ) | const |
Definition at line 454 of file BTFParser.cpp.
References llvm::Address, and findInfo().
const BTF::BPFLineInfo * BTFParser::findLineInfo | ( | SectionedAddress | Address | ) | const |
Definition at line 449 of file BTFParser.cpp.
References llvm::Address, and findInfo().
Referenced by llvm::BTFContext::getLineInfoForAddress().
Definition at line 427 of file BTFParser.cpp.
References llvm::StringRef::find(), llvm::Offset, and llvm::StringRef::slice().
Referenced by llvm::BTFContext::getLineInfoForAddress(), printMod(), and symbolize().
const BTF::CommonType * BTFParser::findType | ( | uint32_t | Id | ) | const |
Definition at line 458 of file BTFParser.cpp.
Referenced by skipModsAndTypedefs(), and symbolize().
|
static |
Definition at line 410 of file BTFParser.cpp.
References BTFExtSectionName, BTFSectionName, llvm::errs(), llvm::logAllUnhandledErrors(), Name, and llvm::object::ObjectFile::sections().
Referenced by llvm::symbolize::useBTFContext().
|
inline |
Error BTFParser::parse | ( | const ObjectFile & | Obj, |
const ParseOptions & | Opts | ||
) |
Definition at line 378 of file BTFParser.cpp.
References BTFExtSectionName, BTFSectionName, llvm::object::ObjectFile::sections(), llvm::BTFParser::ParseContext::Sections, llvm::Error::success(), and llvm::Expected< T >::takeError().
void BTFParser::symbolize | ( | const BTF::BPFFieldReloc * | Reloc, |
SmallVectorImpl< char > & | Result | ||
) | const |
Definition at line 657 of file BTFParser.cpp.
References llvm::consumeUnsignedInteger(), llvm::StringRef::empty(), llvm::BTF::ENUM_SIGNED_FLAG, Fail, findString(), findType(), llvm::format(), llvm::BTF::FWD_UNION_FLAG, I, Idx, llvm::BTF::BTFEnum::NameOff, llvm::BTF::BTFEnum64::NameOff, llvm::BTF::BPFFieldReloc::OffsetNameOff, printMod(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::BTF::BPFFieldReloc::RelocKind, relocKindGroup(), relocKindName(), RKG_ENUMVAL, RKG_FIELD, RKG_TYPE, llvm::SmallVectorBase< Size_T >::size(), llvm::StringRef::size(), skipModsAndTypedefs(), llvm::StringRef::substr(), llvm::Type::Type(), llvm::BTF::BPFFieldReloc::TypeID, llvm::BTF::BTFEnum::Val, llvm::BTF::BTFEnum64::Val_Hi32, and llvm::BTF::BTFEnum64::Val_Lo32.
|
inline |
Definition at line 105 of file BTFParser.h.