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

Methods

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&&)

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:44

Parameters

llvm::MetadataLoader&&

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

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:59

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)

Description

Return the DISubprogram metadata for a Function if any, null otherwise.

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:66

Parameters

llvm::Function* F

llvm::Error parseFunctionMetadata()

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:50

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)

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()

Description

Parse a `METADATA_KIND` block for the current module.

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:73

llvm::Error parseModuleMetadata()

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:47

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)

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:76

Parameters

unsigned int N

unsigned int size() const

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:75

void upgradeDebugIntrinsics(llvm::Function& F)

Description

Perform bitcode upgrades on llvm.dbg.* calls.

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:79

Parameters

llvm::Function& F

~MetadataLoader()

Declared at: llvm/lib/Bitcode/Reader/MetadataLoader.h:39