LLVM  14.0.0git
Functions

Modules represent the top-level structure in an LLVM program. An LLVM module is effectively a translation unit or a collection of translation units merged together. More...

Collaboration diagram for Modules:

Functions

LLVMModuleRef LLVMModuleCreateWithName (const char *ModuleID)
 Create a new, empty module in the global context. More...
 
LLVMModuleRef LLVMModuleCreateWithNameInContext (const char *ModuleID, LLVMContextRef C)
 Create a new, empty module in a specific context. More...
 
LLVMModuleRef LLVMCloneModule (LLVMModuleRef M)
 Return an exact copy of the specified module. More...
 
void LLVMDisposeModule (LLVMModuleRef M)
 Destroy a module instance. More...
 
const char * LLVMGetModuleIdentifier (LLVMModuleRef M, size_t *Len)
 Obtain the identifier of a module. More...
 
void LLVMSetModuleIdentifier (LLVMModuleRef M, const char *Ident, size_t Len)
 Set the identifier of a module to a string Ident with length Len. More...
 
const char * LLVMGetSourceFileName (LLVMModuleRef M, size_t *Len)
 Obtain the module's original source file name. More...
 
void LLVMSetSourceFileName (LLVMModuleRef M, const char *Name, size_t Len)
 Set the original source file name of a module to a string Name with length Len. More...
 
const char * LLVMGetDataLayoutStr (LLVMModuleRef M)
 Obtain the data layout for a module. More...
 
const char * LLVMGetDataLayout (LLVMModuleRef M)
 
void LLVMSetDataLayout (LLVMModuleRef M, const char *DataLayoutStr)
 Set the data layout for a module. More...
 
const char * LLVMGetTarget (LLVMModuleRef M)
 Obtain the target triple for a module. More...
 
void LLVMSetTarget (LLVMModuleRef M, const char *Triple)
 Set the target triple for a module. More...
 
LLVMModuleFlagEntryLLVMCopyModuleFlagsMetadata (LLVMModuleRef M, size_t *Len)
 Returns the module flags as an array of flag-key-value triples. More...
 
void LLVMDisposeModuleFlagsMetadata (LLVMModuleFlagEntry *Entries)
 Destroys module flags metadata entries. More...
 
LLVMModuleFlagBehavior LLVMModuleFlagEntriesGetFlagBehavior (LLVMModuleFlagEntry *Entries, unsigned Index)
 Returns the flag behavior for a module flag entry at a specific index. More...
 
const char * LLVMModuleFlagEntriesGetKey (LLVMModuleFlagEntry *Entries, unsigned Index, size_t *Len)
 Returns the key for a module flag entry at a specific index. More...
 
LLVMMetadataRef LLVMModuleFlagEntriesGetMetadata (LLVMModuleFlagEntry *Entries, unsigned Index)
 Returns the metadata for a module flag entry at a specific index. More...
 
LLVMMetadataRef LLVMGetModuleFlag (LLVMModuleRef M, const char *Key, size_t KeyLen)
 Add a module-level flag to the module-level flags metadata if it doesn't already exist. More...
 
void LLVMAddModuleFlag (LLVMModuleRef M, LLVMModuleFlagBehavior Behavior, const char *Key, size_t KeyLen, LLVMMetadataRef Val)
 Add a module-level flag to the module-level flags metadata if it doesn't already exist. More...
 
void LLVMDumpModule (LLVMModuleRef M)
 Dump a representation of a module to stderr. More...
 
LLVMBool LLVMPrintModuleToFile (LLVMModuleRef M, const char *Filename, char **ErrorMessage)
 Print a representation of a module to a file. More...
 
char * LLVMPrintModuleToString (LLVMModuleRef M)
 Return a string representation of the module. More...
 
const char * LLVMGetModuleInlineAsm (LLVMModuleRef M, size_t *Len)
 Get inline assembly for a module. More...
 
void LLVMSetModuleInlineAsm2 (LLVMModuleRef M, const char *Asm, size_t Len)
 Set inline assembly for a module. More...
 
void LLVMAppendModuleInlineAsm (LLVMModuleRef M, const char *Asm, size_t Len)
 Append inline assembly to a module. More...
 
LLVMValueRef LLVMGetInlineAsm (LLVMTypeRef Ty, char *AsmString, size_t AsmStringSize, char *Constraints, size_t ConstraintsSize, LLVMBool HasSideEffects, LLVMBool IsAlignStack, LLVMInlineAsmDialect Dialect, LLVMBool CanThrow)
 Create the specified uniqued inline asm string. More...
 
LLVMContextRef LLVMGetModuleContext (LLVMModuleRef M)
 Obtain the context to which this module is associated. More...
 
LLVMTypeRef LLVMGetTypeByName (LLVMModuleRef M, const char *Name)
 Deprecated: Use LLVMGetTypeByName2 instead. More...
 
LLVMNamedMDNodeRef LLVMGetFirstNamedMetadata (LLVMModuleRef M)
 Obtain an iterator to the first NamedMDNode in a Module. More...
 
LLVMNamedMDNodeRef LLVMGetLastNamedMetadata (LLVMModuleRef M)
 Obtain an iterator to the last NamedMDNode in a Module. More...
 
LLVMNamedMDNodeRef LLVMGetNextNamedMetadata (LLVMNamedMDNodeRef NamedMDNode)
 Advance a NamedMDNode iterator to the next NamedMDNode. More...
 
LLVMNamedMDNodeRef LLVMGetPreviousNamedMetadata (LLVMNamedMDNodeRef NamedMDNode)
 Decrement a NamedMDNode iterator to the previous NamedMDNode. More...
 
LLVMNamedMDNodeRef LLVMGetNamedMetadata (LLVMModuleRef M, const char *Name, size_t NameLen)
 Retrieve a NamedMDNode with the given name, returning NULL if no such node exists. More...
 
LLVMNamedMDNodeRef LLVMGetOrInsertNamedMetadata (LLVMModuleRef M, const char *Name, size_t NameLen)
 Retrieve a NamedMDNode with the given name, creating a new node if no such node exists. More...
 
const char * LLVMGetNamedMetadataName (LLVMNamedMDNodeRef NamedMD, size_t *NameLen)
 Retrieve the name of a NamedMDNode. More...
 
unsigned LLVMGetNamedMetadataNumOperands (LLVMModuleRef M, const char *Name)
 Obtain the number of operands for named metadata in a module. More...
 
void LLVMGetNamedMetadataOperands (LLVMModuleRef M, const char *Name, LLVMValueRef *Dest)
 Obtain the named metadata operands for a module. More...
 
void LLVMAddNamedMetadataOperand (LLVMModuleRef M, const char *Name, LLVMValueRef Val)
 Add an operand to named metadata. More...
 
const char * LLVMGetDebugLocDirectory (LLVMValueRef Val, unsigned *Length)
 Return the directory of the debug location for this value, which must be an llvm::Instruction, llvm::GlobalVariable, or llvm::Function. More...
 
const char * LLVMGetDebugLocFilename (LLVMValueRef Val, unsigned *Length)
 Return the filename of the debug location for this value, which must be an llvm::Instruction, llvm::GlobalVariable, or llvm::Function. More...
 
unsigned LLVMGetDebugLocLine (LLVMValueRef Val)
 Return the line number of the debug location for this value, which must be an llvm::Instruction, llvm::GlobalVariable, or llvm::Function. More...
 
unsigned LLVMGetDebugLocColumn (LLVMValueRef Val)
 Return the column number of the debug location for this value, which must be an llvm::Instruction. More...
 
LLVMValueRef LLVMAddFunction (LLVMModuleRef M, const char *Name, LLVMTypeRef FunctionTy)
 Add a function to a module under a specified name. More...
 
LLVMValueRef LLVMGetNamedFunction (LLVMModuleRef M, const char *Name)
 Obtain a Function value from a Module by its name. More...
 
LLVMValueRef LLVMGetFirstFunction (LLVMModuleRef M)
 Obtain an iterator to the first Function in a Module. More...
 
LLVMValueRef LLVMGetLastFunction (LLVMModuleRef M)
 Obtain an iterator to the last Function in a Module. More...
 
LLVMValueRef LLVMGetNextFunction (LLVMValueRef Fn)
 Advance a Function iterator to the next Function. More...
 
LLVMValueRef LLVMGetPreviousFunction (LLVMValueRef Fn)
 Decrement a Function iterator to the previous Function. More...
 
void LLVMSetModuleInlineAsm (LLVMModuleRef M, const char *Asm)
 Deprecated: Use LLVMSetModuleInlineAsm2 instead. More...
 

Detailed Description

Modules represent the top-level structure in an LLVM program. An LLVM module is effectively a translation unit or a collection of translation units merged together.

Function Documentation

◆ LLVMAddFunction()

LLVMValueRef LLVMAddFunction ( LLVMModuleRef  M,
const char *  Name,
LLVMTypeRef  FunctionTy 
)

Add a function to a module under a specified name.

See also
llvm::Function::Create()

Definition at line 2316 of file Core.cpp.

References llvm::Function::Create(), llvm::GlobalValue::ExternalLinkage, M, llvm::unwrap(), and llvm::wrap().

◆ LLVMAddModuleFlag()

void LLVMAddModuleFlag ( LLVMModuleRef  M,
LLVMModuleFlagBehavior  Behavior,
const char *  Key,
size_t  KeyLen,
LLVMMetadataRef  Val 
)

Add a module-level flag to the module-level flags metadata if it doesn't already exist.

See also
Module::addModuleFlag()

Definition at line 398 of file Core.cpp.

References M, map_to_llvmModFlagBehavior(), and llvm::unwrap().

◆ LLVMAddNamedMetadataOperand()

void LLVMAddNamedMetadataOperand ( LLVMModuleRef  M,
const char *  Name,
LLVMValueRef  Val 
)

Add an operand to named metadata.

See also
llvm::Module::getNamedMetadata()
llvm::MDNode::addOperand()

Definition at line 1261 of file Core.cpp.

References extractMDNode(), M, N, and llvm::unwrap().

◆ LLVMAppendModuleInlineAsm()

void LLVMAppendModuleInlineAsm ( LLVMModuleRef  M,
const char *  Asm,
size_t  Len 
)

Append inline assembly to a module.

See also
Module::appendModuleInlineAsm()

Definition at line 453 of file Core.cpp.

References llvm::HexStyle::Asm, M, and llvm::unwrap().

◆ LLVMCloneModule()

LLVMModuleRef LLVMCloneModule ( LLVMModuleRef  M)

Return an exact copy of the specified module.

Definition at line 198 of file CloneModule.cpp.

References llvm::CloneModule(), M, llvm::release, llvm::unwrap(), and llvm::wrap().

◆ LLVMCopyModuleFlagsMetadata()

LLVMModuleFlagEntry* LLVMCopyModuleFlagsMetadata ( LLVMModuleRef  M,
size_t *  Len 
)

Returns the module flags as an array of flag-key-value triples.

The caller is responsible for freeing this array by calling LLVMDisposeModuleFlagsMetadata.

See also
Module::getModuleFlagsMetadata()

Definition at line 349 of file Core.cpp.

References i, M, map_from_llvmModFlagBehavior(), llvm::safe_malloc(), llvm::unwrap(), and llvm::wrap().

◆ LLVMDisposeModule()

void LLVMDisposeModule ( LLVMModuleRef  M)

Destroy a module instance.

This must be called for every created module or memory will be leaked.

Definition at line 256 of file Core.cpp.

References M, and llvm::unwrap().

◆ LLVMDisposeModuleFlagsMetadata()

void LLVMDisposeModuleFlagsMetadata ( LLVMModuleFlagEntry Entries)

Destroys module flags metadata entries.

Definition at line 366 of file Core.cpp.

◆ LLVMDumpModule()

void LLVMDumpModule ( LLVMModuleRef  M)

Dump a representation of a module to stderr.

See also
Module::dump()

Definition at line 407 of file Core.cpp.

References llvm::errs(), M, and llvm::unwrap().

◆ LLVMGetDataLayout()

const char* LLVMGetDataLayout ( LLVMModuleRef  M)

Definition at line 285 of file Core.cpp.

References LLVMGetDataLayoutStr(), and M.

◆ LLVMGetDataLayoutStr()

const char* LLVMGetDataLayoutStr ( LLVMModuleRef  M)

Obtain the data layout for a module.

See also
Module::getDataLayoutStr()

LLVMGetDataLayout is DEPRECATED, as the name is not only incorrect, but match the name of another method on the module. Prefer the use of LLVMGetDataLayoutStr, which is not ambiguous.

Definition at line 281 of file Core.cpp.

References M, and llvm::unwrap().

Referenced by LLVMGetDataLayout().

◆ LLVMGetDebugLocColumn()

unsigned LLVMGetDebugLocColumn ( LLVMValueRef  Val)

Return the column number of the debug location for this value, which must be an llvm::Instruction.

See also
llvm::Instruction::getDebugLoc()

Definition at line 1341 of file Core.cpp.

References DL, I, and llvm::unwrap().

◆ LLVMGetDebugLocDirectory()

const char* LLVMGetDebugLocDirectory ( LLVMValueRef  Val,
unsigned *  Length 
)

Return the directory of the debug location for this value, which must be an llvm::Instruction, llvm::GlobalVariable, or llvm::Function.

See also
llvm::Instruction::getDebugLoc()
llvm::GlobalVariable::getDebugInfo()
llvm::Function::getSubprogram()

Definition at line 1271 of file Core.cpp.

References assert(), DL, F, I, S, and llvm::unwrap().

◆ LLVMGetDebugLocFilename()

const char* LLVMGetDebugLocFilename ( LLVMValueRef  Val,
unsigned *  Length 
)

Return the filename of the debug location for this value, which must be an llvm::Instruction, llvm::GlobalVariable, or llvm::Function.

See also
llvm::Instruction::getDebugLoc()
llvm::GlobalVariable::getDebugInfo()
llvm::Function::getSubprogram()

Definition at line 1295 of file Core.cpp.

References assert(), DL, F, I, S, and llvm::unwrap().

◆ LLVMGetDebugLocLine()

unsigned LLVMGetDebugLocLine ( LLVMValueRef  Val)

Return the line number of the debug location for this value, which must be an llvm::Instruction, llvm::GlobalVariable, or llvm::Function.

See also
llvm::Instruction::getDebugLoc()
llvm::GlobalVariable::getDebugInfo()
llvm::Function::getSubprogram()

Definition at line 1319 of file Core.cpp.

References assert(), DL, F, I, and llvm::unwrap().

◆ LLVMGetFirstFunction()

LLVMValueRef LLVMGetFirstFunction ( LLVMModuleRef  M)

Obtain an iterator to the first Function in a Module.

See also
llvm::Module::begin()

Definition at line 2326 of file Core.cpp.

References llvm::Module::begin(), llvm::Module::end(), I, M, Mod, llvm::unwrap(), and llvm::wrap().

◆ LLVMGetFirstNamedMetadata()

LLVMNamedMDNodeRef LLVMGetFirstNamedMetadata ( LLVMModuleRef  M)

Obtain an iterator to the first NamedMDNode in a Module.

See also
llvm::Module::named_metadata_begin()

Definition at line 1183 of file Core.cpp.

References I, M, Mod, llvm::Module::named_metadata_begin(), llvm::Module::named_metadata_end(), llvm::unwrap(), and llvm::wrap().

◆ LLVMGetInlineAsm()

LLVMValueRef LLVMGetInlineAsm ( LLVMTypeRef  Ty,
char *  AsmString,
size_t  AsmStringSize,
char *  Constraints,
size_t  ConstraintsSize,
LLVMBool  HasSideEffects,
LLVMBool  IsAlignStack,
LLVMInlineAsmDialect  Dialect,
LLVMBool  CanThrow 
)

Create the specified uniqued inline asm string.

See also
InlineAsm::get()

Definition at line 463 of file Core.cpp.

References llvm::InlineAsm::AD_ATT, llvm::InlineAsm::AD_Intel, llvm::InlineAsm::get(), LLVMInlineAsmDialectATT, LLVMInlineAsmDialectIntel, and llvm::wrap().

◆ LLVMGetLastFunction()

LLVMValueRef LLVMGetLastFunction ( LLVMModuleRef  M)

Obtain an iterator to the last Function in a Module.

See also
llvm::Module::end()

Definition at line 2334 of file Core.cpp.

References llvm::Module::begin(), llvm::Module::end(), I, M, Mod, llvm::unwrap(), and llvm::wrap().

◆ LLVMGetLastNamedMetadata()

LLVMNamedMDNodeRef LLVMGetLastNamedMetadata ( LLVMModuleRef  M)

Obtain an iterator to the last NamedMDNode in a Module.

See also
llvm::Module::named_metadata_end()

Definition at line 1191 of file Core.cpp.

References I, M, Mod, llvm::Module::named_metadata_begin(), llvm::Module::named_metadata_end(), llvm::unwrap(), and llvm::wrap().

◆ LLVMGetModuleContext()

LLVMContextRef LLVMGetModuleContext ( LLVMModuleRef  M)

Obtain the context to which this module is associated.

See also
Module::getContext()

Definition at line 484 of file Core.cpp.

References M, llvm::unwrap(), and llvm::wrap().

◆ LLVMGetModuleFlag()

LLVMMetadataRef LLVMGetModuleFlag ( LLVMModuleRef  M,
const char *  Key,
size_t  KeyLen 
)

Add a module-level flag to the module-level flags metadata if it doesn't already exist.

See also
Module::getModuleFlag()

Definition at line 393 of file Core.cpp.

References M, llvm::unwrap(), and llvm::wrap().

◆ LLVMGetModuleIdentifier()

const char* LLVMGetModuleIdentifier ( LLVMModuleRef  M,
size_t *  Len 
)

Obtain the identifier of a module.

Parameters
MModule to obtain identifier of
LenOut parameter which holds the length of the returned string.
Returns
The identifier of M.
See also
Module::getModuleIdentifier()

Definition at line 260 of file Core.cpp.

References M, and llvm::unwrap().

◆ LLVMGetModuleInlineAsm()

const char* LLVMGetModuleInlineAsm ( LLVMModuleRef  M,
size_t *  Len 
)

Get inline assembly for a module.

See also
Module::getModuleInlineAsm()

Definition at line 457 of file Core.cpp.

References M, and llvm::unwrap().

◆ LLVMGetNamedFunction()

LLVMValueRef LLVMGetNamedFunction ( LLVMModuleRef  M,
const char *  Name 
)

Obtain a Function value from a Module by its name.

The returned value corresponds to a llvm::Function value.

See also
llvm::Module::getFunction()

Definition at line 2322 of file Core.cpp.

References getFunction(), M, llvm::unwrap(), and llvm::wrap().

◆ LLVMGetNamedMetadata()

LLVMNamedMDNodeRef LLVMGetNamedMetadata ( LLVMModuleRef  M,
const char *  Name,
size_t  NameLen 
)

Retrieve a NamedMDNode with the given name, returning NULL if no such node exists.

See also
llvm::Module::getNamedMetadata()

Definition at line 1215 of file Core.cpp.

References M, llvm::unwrap(), and llvm::wrap().

◆ LLVMGetNamedMetadataName()

const char* LLVMGetNamedMetadataName ( LLVMNamedMDNodeRef  NamedMD,
size_t *  NameLen 
)

Retrieve the name of a NamedMDNode.

See also
llvm::NamedMDNode::getName()

Definition at line 1225 of file Core.cpp.

References llvm::StringRef::data(), llvm::NamedMDNode::getName(), and llvm::StringRef::size().

◆ LLVMGetNamedMetadataNumOperands()

unsigned LLVMGetNamedMetadataNumOperands ( LLVMModuleRef  M,
const char *  Name 
)

Obtain the number of operands for named metadata in a module.

See also
llvm::Module::getNamedMetadata()

Definition at line 1244 of file Core.cpp.

References M, N, and llvm::unwrap().

◆ LLVMGetNamedMetadataOperands()

void LLVMGetNamedMetadataOperands ( LLVMModuleRef  M,
const char *  Name,
LLVMValueRef Dest 
)

Obtain the named metadata operands for a module.

The passed LLVMValueRef pointer should refer to an array of LLVMValueRef at least LLVMGetNamedMetadataNumOperands long. This array will be populated with the LLVMValueRef instances. Each instance corresponds to a llvm::MDNode.

See also
llvm::Module::getNamedMetadata()
llvm::MDNode::getOperand()

Definition at line 1251 of file Core.cpp.

References Context, llvm::MetadataAsValue::get(), i, M, N, llvm::unwrap(), and llvm::wrap().

◆ LLVMGetNextFunction()

LLVMValueRef LLVMGetNextFunction ( LLVMValueRef  Fn)

Advance a Function iterator to the next Function.

Returns NULL if the iterator was already at the end and there are no more functions.

Definition at line 2342 of file Core.cpp.

References I, and llvm::wrap().

◆ LLVMGetNextNamedMetadata()

LLVMNamedMDNodeRef LLVMGetNextNamedMetadata ( LLVMNamedMDNodeRef  NamedMDNode)

Advance a NamedMDNode iterator to the next NamedMDNode.

Returns NULL if the iterator was already at the end and there are no more named metadata nodes.

Definition at line 1199 of file Core.cpp.

References llvm::NamedMDNode::getParent(), I, llvm::Module::named_metadata_end(), and llvm::wrap().

◆ LLVMGetOrInsertNamedMetadata()

LLVMNamedMDNodeRef LLVMGetOrInsertNamedMetadata ( LLVMModuleRef  M,
const char *  Name,
size_t  NameLen 
)

Retrieve a NamedMDNode with the given name, creating a new node if no such node exists.

See also
llvm::Module::getOrInsertNamedMetadata()

Definition at line 1220 of file Core.cpp.

References M, llvm::unwrap(), and llvm::wrap().

◆ LLVMGetPreviousFunction()

LLVMValueRef LLVMGetPreviousFunction ( LLVMValueRef  Fn)

Decrement a Function iterator to the previous Function.

Returns NULL if the iterator was already at the beginning and there are no previous functions.

Definition at line 2350 of file Core.cpp.

References I, and llvm::wrap().

◆ LLVMGetPreviousNamedMetadata()

LLVMNamedMDNodeRef LLVMGetPreviousNamedMetadata ( LLVMNamedMDNodeRef  NamedMDNode)

Decrement a NamedMDNode iterator to the previous NamedMDNode.

Returns NULL if the iterator was already at the beginning and there are no previous named metadata nodes.

Definition at line 1207 of file Core.cpp.

References llvm::NamedMDNode::getParent(), I, llvm::Module::named_metadata_begin(), and llvm::wrap().

◆ LLVMGetSourceFileName()

const char* LLVMGetSourceFileName ( LLVMModuleRef  M,
size_t *  Len 
)

Obtain the module's original source file name.

Parameters
MModule to obtain the name of
LenOut parameter which holds the length of the returned string
Returns
The original source file name of M
See also
Module::getSourceFileName()

Definition at line 270 of file Core.cpp.

References M, and llvm::unwrap().

◆ LLVMGetTarget()

const char* LLVMGetTarget ( LLVMModuleRef  M)

Obtain the target triple for a module.

See also
Module::getTargetTriple()

Definition at line 294 of file Core.cpp.

References M, and llvm::unwrap().

◆ LLVMGetTypeByName()

LLVMTypeRef LLVMGetTypeByName ( LLVMModuleRef  M,
const char *  Name 
)

Deprecated: Use LLVMGetTypeByName2 instead.

Definition at line 761 of file Core.cpp.

References llvm::StructType::getTypeByName(), M, llvm::unwrap(), and llvm::wrap().

◆ LLVMModuleCreateWithName()

LLVMModuleRef LLVMModuleCreateWithName ( const char *  ModuleID)

Create a new, empty module in the global context.

This is equivalent to calling LLVMModuleCreateWithNameInContext with LLVMGetGlobalContext() as the context parameter.

Every invocation should be paired with LLVMDisposeModule() or memory will be leaked.

Definition at line 247 of file Core.cpp.

References GlobalContext, Module, and llvm::wrap().

◆ LLVMModuleCreateWithNameInContext()

LLVMModuleRef LLVMModuleCreateWithNameInContext ( const char *  ModuleID,
LLVMContextRef  C 
)

Create a new, empty module in a specific context.

Every invocation should be paired with LLVMDisposeModule() or memory will be leaked.

Definition at line 251 of file Core.cpp.

References Module, llvm::unwrap(), and llvm::wrap().

◆ LLVMModuleFlagEntriesGetFlagBehavior()

LLVMModuleFlagBehavior LLVMModuleFlagEntriesGetFlagBehavior ( LLVMModuleFlagEntry Entries,
unsigned  Index 
)

Returns the flag behavior for a module flag entry at a specific index.

See also
Module::ModuleFlagEntry::Behavior

Definition at line 371 of file Core.cpp.

◆ LLVMModuleFlagEntriesGetKey()

const char* LLVMModuleFlagEntriesGetKey ( LLVMModuleFlagEntry Entries,
unsigned  Index,
size_t *  Len 
)

Returns the key for a module flag entry at a specific index.

See also
Module::ModuleFlagEntry::Key

Definition at line 378 of file Core.cpp.

◆ LLVMModuleFlagEntriesGetMetadata()

LLVMMetadataRef LLVMModuleFlagEntriesGetMetadata ( LLVMModuleFlagEntry Entries,
unsigned  Index 
)

Returns the metadata for a module flag entry at a specific index.

See also
Module::ModuleFlagEntry::Val

Definition at line 386 of file Core.cpp.

◆ LLVMPrintModuleToFile()

LLVMBool LLVMPrintModuleToFile ( LLVMModuleRef  M,
const char *  Filename,
char **  ErrorMessage 
)

Print a representation of a module to a file.

The ErrorMessage needs to be disposed with LLVMDisposeMessage. Returns 0 on success, 1 otherwise.

See also
Module::print()

Definition at line 412 of file Core.cpp.

References llvm::raw_fd_ostream::close(), E, llvm::raw_fd_ostream::error(), llvm::raw_fd_ostream::has_error(), M, llvm::sys::fs::OF_TextWithCRLF, and llvm::unwrap().

◆ LLVMPrintModuleToString()

char* LLVMPrintModuleToString ( LLVMModuleRef  M)

Return a string representation of the module.

Use LLVMDisposeMessage to free the string.

See also
Module::print()

Definition at line 434 of file Core.cpp.

References llvm::raw_ostream::flush(), M, and llvm::unwrap().

◆ LLVMSetDataLayout()

void LLVMSetDataLayout ( LLVMModuleRef  M,
const char *  DataLayoutStr 
)

Set the data layout for a module.

See also
Module::setDataLayout()

Definition at line 289 of file Core.cpp.

References M, and llvm::unwrap().

◆ LLVMSetModuleIdentifier()

void LLVMSetModuleIdentifier ( LLVMModuleRef  M,
const char *  Ident,
size_t  Len 
)

Set the identifier of a module to a string Ident with length Len.

Parameters
MThe module to set identifier
IdentThe string to set M's identifier to
LenLength of Ident
See also
Module::setModuleIdentifier()

Definition at line 266 of file Core.cpp.

References M, and llvm::unwrap().

◆ LLVMSetModuleInlineAsm()

void LLVMSetModuleInlineAsm ( LLVMModuleRef  M,
const char *  Asm 
)

Deprecated: Use LLVMSetModuleInlineAsm2 instead.

Definition at line 449 of file Core.cpp.

References llvm::HexStyle::Asm, M, and llvm::unwrap().

◆ LLVMSetModuleInlineAsm2()

void LLVMSetModuleInlineAsm2 ( LLVMModuleRef  M,
const char *  Asm,
size_t  Len 
)

Set inline assembly for a module.

See also
Module::setModuleInlineAsm()

Definition at line 445 of file Core.cpp.

References llvm::HexStyle::Asm, M, and llvm::unwrap().

◆ LLVMSetSourceFileName()

void LLVMSetSourceFileName ( LLVMModuleRef  M,
const char *  Name,
size_t  Len 
)

Set the original source file name of a module to a string Name with length Len.

Parameters
MThe module to set the source file name of
NameThe string to set M's source file name to
LenLength of Name
See also
Module::setSourceFileName()

Definition at line 276 of file Core.cpp.

References M, and llvm::unwrap().

◆ LLVMSetTarget()

void LLVMSetTarget ( LLVMModuleRef  M,
const char *  Triple 
)

Set the target triple for a module.

See also
Module::setTargetTriple()

Definition at line 298 of file Core.cpp.

References M, and llvm::unwrap().