LLVM 24.0.0git
llvm::MetadataLoader Class Reference

Helper class that handles loading Metadatas and keeping them available. More...

#include "Bitcode/Reader/MetadataLoader.h"

Classes

class  MetadataLoaderImpl

Public Member Functions

 ~MetadataLoader ()
 MetadataLoader (BitstreamCursor &Stream, Module &TheModule, BitcodeReaderValueList &ValueList, bool IsImporting, MetadataLoaderCallbacks Callbacks)
MetadataLoader & operator= (MetadataLoader &&)
 MetadataLoader (MetadataLoader &&)
Error parseModuleMetadata ()
Error parseFunctionMetadata ()
void setStripTBAA (bool StripTBAA=true)
 Set the mode to strip TBAA metadata on load.
bool isStrippingTBAA ()
 Return true if the Loader is stripping TBAA metadata.
bool hasFwdRefs () const
Metadata * getMetadataFwdRefOrLoad (unsigned Idx)
 Return the given metadata, creating a replaceable forward reference if necessary.
DISubprogram * lookupSubprogramForFunction (Function *F)
 Return the DISubprogram metadata for a Function if any, null otherwise.
Error parseMetadataAttachment (Function &F, ArrayRef< Instruction * > InstructionList)
 Parse a METADATA_ATTACHMENT block for a function.
Error parseMetadataKinds ()
 Parse a METADATA_KIND block for the current module.
unsigned size () const
void shrinkTo (unsigned N)
void upgradeDebugIntrinsics (Function &F)
 Perform bitcode upgrades on llvm.dbg.* calls.
MDNode * upgradeAliasScopeList (MDNode *ScopeList)
 Mark any domains in ScopeList that don't have a disjointness flag as non-disjoint.

Detailed Description

Helper class that handles loading Metadatas and keeping them available.

Definition at line 49 of file MetadataLoader.h.

Constructor & Destructor Documentation

◆ ~MetadataLoader()

MetadataLoader::~MetadataLoader ( )
default

References MetadataLoader().

◆ MetadataLoader() [1/2]

MetadataLoader::MetadataLoader ( BitstreamCursor & Stream,
Module & TheModule,
BitcodeReaderValueList & ValueList,
bool IsImporting,
MetadataLoaderCallbacks Callbacks )

Definition at line 2818 of file MetadataLoader.cpp.

References llvm::move().

Referenced by MetadataLoader(), operator=(), and ~MetadataLoader().

◆ MetadataLoader() [2/2]

MetadataLoader::MetadataLoader ( MetadataLoader && RHS)

Definition at line 2814 of file MetadataLoader.cpp.

References MetadataLoader(), and llvm::move().

Member Function Documentation

◆ getMetadataFwdRefOrLoad()

Metadata * MetadataLoader::getMetadataFwdRefOrLoad ( unsigned Idx)

Return the given metadata, creating a replaceable forward reference if necessary.

Definition at line 2833 of file MetadataLoader.cpp.

◆ hasFwdRefs()

bool MetadataLoader::hasFwdRefs ( ) const

Definition at line 2829 of file MetadataLoader.cpp.

◆ isStrippingTBAA()

bool MetadataLoader::isStrippingTBAA ( )

Return true if the Loader is stripping TBAA metadata.

Definition at line 2854 of file MetadataLoader.cpp.

◆ lookupSubprogramForFunction()

DISubprogram * MetadataLoader::lookupSubprogramForFunction ( Function * F)

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

Definition at line 2837 of file MetadataLoader.cpp.

References F.

◆ operator=()

MetadataLoader & MetadataLoader::operator= ( MetadataLoader && RHS)

Definition at line 2810 of file MetadataLoader.cpp.

References MetadataLoader().

◆ parseFunctionMetadata()

Error llvm::MetadataLoader::parseFunctionMetadata ( )
inline

Definition at line 66 of file MetadataLoader.h.

References parseMetadata().

◆ parseMetadataAttachment()

Error MetadataLoader::parseMetadataAttachment ( Function & F,
ArrayRef< Instruction * > InstructionList )

Parse a METADATA_ATTACHMENT block for a function.

Definition at line 2841 of file MetadataLoader.cpp.

References F.

◆ parseMetadataKinds()

Error MetadataLoader::parseMetadataKinds ( )

Parse a METADATA_KIND block for the current module.

Definition at line 2846 of file MetadataLoader.cpp.

◆ parseModuleMetadata()

Error llvm::MetadataLoader::parseModuleMetadata ( )
inline

Definition at line 63 of file MetadataLoader.h.

References parseMetadata().

◆ setStripTBAA()

void MetadataLoader::setStripTBAA ( bool StripTBAA = true)

Set the mode to strip TBAA metadata on load.

Definition at line 2850 of file MetadataLoader.cpp.

◆ shrinkTo()

void MetadataLoader::shrinkTo ( unsigned N)

Definition at line 2857 of file MetadataLoader.cpp.

References N.

◆ size()

unsigned MetadataLoader::size ( ) const

Definition at line 2856 of file MetadataLoader.cpp.

◆ upgradeAliasScopeList()

MDNode * MetadataLoader::upgradeAliasScopeList ( MDNode * ScopeList)

Mark any domains in ScopeList that don't have a disjointness flag as non-disjoint.

Returns the original list if there are no changes.

Definition at line 2863 of file MetadataLoader.cpp.

◆ upgradeDebugIntrinsics()

void MetadataLoader::upgradeDebugIntrinsics ( Function & F)

Perform bitcode upgrades on llvm.dbg.* calls.

Definition at line 2859 of file MetadataLoader.cpp.

References F.


The documentation for this class was generated from the following files: