class MetadataLoader
Declaration
class MetadataLoader { /* full declaration omitted */ };
Description
Helper class that handles loading Metadatas and keeping them available.
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:33
Member Variables
- private std::unique_ptr<MetadataLoaderImpl> Pimpl
Method Overview
- public MetadataLoader(llvm::BitstreamCursor & Stream, llvm::Module & TheModule, llvm::BitcodeReaderValueList & ValueList, bool IsImporting, std::function<Type *(unsigned int)> getTypeByID)
- public MetadataLoader(llvm::MetadataLoader &&)
- public llvm::Metadata * getMetadataFwdRefOrLoad(unsigned int Idx)
- public bool hasFwdRefs() const
- public bool isStrippingTBAA()
- public llvm::DISubprogram * lookupSubprogramForFunction(llvm::Function * F)
- public llvm::Error parseFunctionMetadata()
- private llvm::Error parseMetadata(bool ModuleLevel)
- public llvm::Error parseMetadataAttachment(llvm::Function & F, ArrayRef<llvm::Instruction *> InstructionList)
- public llvm::Error parseMetadataKinds()
- public llvm::Error parseModuleMetadata()
- public void setStripTBAA(bool StripTBAA = true)
- public void shrinkTo(unsigned int N)
- public unsigned int size() const
- public void upgradeDebugIntrinsics(llvm::Function & F)
- public ~MetadataLoader()
Methods
¶MetadataLoader(
llvm::BitstreamCursor& Stream,
llvm::Module& TheModule,
llvm::BitcodeReaderValueList& ValueList,
bool IsImporting,
std::function<Type*(unsigned int)>
getTypeByID)
MetadataLoader(
llvm::BitstreamCursor& Stream,
llvm::Module& TheModule,
llvm::BitcodeReaderValueList& ValueList,
bool IsImporting,
std::function<Type*(unsigned int)>
getTypeByID)
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:40
Parameters
- llvm::BitstreamCursor& Stream
- llvm::Module& TheModule
- llvm::BitcodeReaderValueList& ValueList
- bool IsImporting
- std::function<Type*(unsigned int)> getTypeByID
¶MetadataLoader(llvm::MetadataLoader&&)
MetadataLoader(llvm::MetadataLoader&&)
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:44
Parameters
¶llvm::Metadata* getMetadataFwdRefOrLoad(
unsigned int Idx)
llvm::Metadata* getMetadataFwdRefOrLoad(
unsigned int Idx)
Description
Return the given metadata, creating a replaceable forward reference if necessary.
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:63
Parameters
- unsigned int Idx
¶bool hasFwdRefs() const
bool hasFwdRefs() const
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:59
¶bool isStrippingTBAA()
bool isStrippingTBAA()
Description
Return true if the Loader is stripping TBAA metadata.
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:56
¶llvm::DISubprogram* lookupSubprogramForFunction(
llvm::Function* F)
llvm::DISubprogram* lookupSubprogramForFunction(
llvm::Function* F)
Description
Return the DISubprogram metadata for a Function if any, null otherwise.
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:66
Parameters
¶llvm::Error parseFunctionMetadata()
llvm::Error parseFunctionMetadata()
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:50
¶llvm::Error parseMetadata(bool ModuleLevel)
llvm::Error parseMetadata(bool ModuleLevel)
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:36
Parameters
- bool ModuleLevel
¶llvm::Error parseMetadataAttachment(
llvm::Function& F,
ArrayRef<llvm::Instruction*> InstructionList)
llvm::Error parseMetadataAttachment(
llvm::Function& F,
ArrayRef<llvm::Instruction*> InstructionList)
Description
Parse a `METADATA_ATTACHMENT` block for a function.
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:69
Parameters
- llvm::Function& F
- ArrayRef<llvm::Instruction*> InstructionList
¶llvm::Error parseMetadataKinds()
llvm::Error parseMetadataKinds()
Description
Parse a `METADATA_KIND` block for the current module.
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:73
¶llvm::Error parseModuleMetadata()
llvm::Error parseModuleMetadata()
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:47
¶void setStripTBAA(bool StripTBAA = true)
void setStripTBAA(bool StripTBAA = true)
Description
Set the mode to strip TBAA metadata on load.
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:53
Parameters
- bool StripTBAA = true
¶void shrinkTo(unsigned int N)
void shrinkTo(unsigned int N)
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:76
Parameters
- unsigned int N
¶unsigned int size() const
unsigned int size() const
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:75
¶void upgradeDebugIntrinsics(llvm::Function& F)
void upgradeDebugIntrinsics(llvm::Function& F)
Description
Perform bitcode upgrades on llvm.dbg.* calls.
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:79
Parameters
¶~MetadataLoader()
~MetadataLoader()
Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:39