class Reader
Declaration
class Reader { /* full declaration omitted */ };
Description
This class can be used to read a Symtab and Strtab produced by irsymtab::build.
Declared at: llvm/include/llvm/Object/IRSymtab.h:236
Member Variables
- private llvm::StringRef Symtab
- private llvm::StringRef Strtab
- private ArrayRef<storage::Module> Modules
- private ArrayRef<storage::Comdat> Comdats
- private ArrayRef<storage::Symbol> Symbols
- private ArrayRef<storage::Uncommon> Uncommons
- private ArrayRef<storage::Str> DependentLibraries
Method Overview
- public Reader()
- public Reader(llvm::StringRef Symtab, llvm::StringRef Strtab)
- public llvm::StringRef getCOFFLinkerOpts() const
- public std::vector<std::pair<StringRef, llvm::Comdat::SelectionKind>> getComdatTable() const
- public std::vector<StringRef> getDependentLibraries() const
- public size_t getNumModules() const
- public llvm::StringRef getSourceFileName() const
- public llvm::StringRef getTargetTriple() const
- private const storage::Header & header() const
- public llvm::irsymtab::Reader::symbol_range module_symbols(unsigned int I) const
- private template <typename T>ArrayRef<T> range(storage::Range<T> R) const
- private llvm::StringRef str(storage::Str S) const
- public llvm::irsymtab::Reader::symbol_range symbols() const
Methods
¶Reader()
Reader()
Declared at: llvm/include/llvm/Object/IRSymtab.h:258
¶Reader(llvm::StringRef Symtab,
llvm::StringRef Strtab)
Reader(llvm::StringRef Symtab,
llvm::StringRef Strtab)
Declared at: llvm/include/llvm/Object/IRSymtab.h:259
Parameters
- llvm::StringRef Symtab
- llvm::StringRef Strtab
¶llvm::StringRef getCOFFLinkerOpts() const
llvm::StringRef getCOFFLinkerOpts() const
Description
COFF-specific: returns linker options specified in the input file.
Declared at: llvm/include/llvm/Object/IRSymtab.h:298
¶std::vector<
std::pair<StringRef,
llvm::Comdat::SelectionKind>>
getComdatTable() const
std::vector<
std::pair<StringRef,
llvm::Comdat::SelectionKind>>
getComdatTable() const
Description
Returns a table with all the comdats used by this file.
Declared at: llvm/include/llvm/Object/IRSymtab.h:288
¶std::vector<StringRef> getDependentLibraries()
const
std::vector<StringRef> getDependentLibraries()
const
Description
Returns dependent library specifiers
Declared at: llvm/include/llvm/Object/IRSymtab.h:301
¶size_t getNumModules() const
size_t getNumModules() const
Declared at: llvm/include/llvm/Object/IRSymtab.h:274
¶llvm::StringRef getSourceFileName() const
llvm::StringRef getSourceFileName() const
Description
Returns the source file path specified at compile time.
Declared at: llvm/include/llvm/Object/IRSymtab.h:284
¶llvm::StringRef getTargetTriple() const
llvm::StringRef getTargetTriple() const
Declared at: llvm/include/llvm/Object/IRSymtab.h:281
¶const storage::Header& header() const
const storage::Header& header() const
Declared at: llvm/include/llvm/Object/IRSymtab.h:251
¶llvm::irsymtab::Reader::symbol_range
module_symbols(unsigned int I) const
llvm::irsymtab::Reader::symbol_range
module_symbols(unsigned int I) const
Description
Returns a slice of the symbol table for the I'th module in the file. The symbols enumerated by this method are ephemeral, but they can be copied into an irsymtab::Symbol object.
Declared at: llvm/include/llvm/Object/IRSymtab.h:279
Parameters
- unsigned int I
¶template <typename T>
ArrayRef<T> range(storage::Range<T> R) const
template <typename T>
ArrayRef<T> range(storage::Range<T> R) const
Declared at: llvm/include/llvm/Object/IRSymtab.h:247
Templates
- T
Parameters
- storage::Range<T> R
¶llvm::StringRef str(storage::Str S) const
llvm::StringRef str(storage::Str S) const
Declared at: llvm/include/llvm/Object/IRSymtab.h:245
Parameters
¶llvm::irsymtab::Reader::symbol_range symbols()
const
llvm::irsymtab::Reader::symbol_range symbols()
const
Description
Returns the symbol table for the entire bitcode file. The symbols enumerated by this method are ephemeral, but they can be copied into an irsymtab::Symbol object.
Declared at: llvm/include/llvm/Object/IRSymtab.h:272