LLVM API Documentation
![]() |
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.
LLVMValueRef LLVMAddFunction | ( | LLVMModuleRef | M, |
const char * | Name, | ||
LLVMTypeRef | FunctionTy | ||
) |
Add a function to a module under a specified name.
Definition at line 1424 of file Core.cpp.
References llvm::Function::Create(), llvm::GlobalValue::ExternalLinkage, llvm::unwrap(), and llvm::wrap().
void LLVMAddNamedMetadataOperand | ( | LLVMModuleRef | M, |
const char * | name, | ||
LLVMValueRef | Val | ||
) |
Add an operand to named metadata.
Definition at line 648 of file Core.cpp.
References llvm::NamedMDNode::addOperand(), N, and llvm::unwrap().
void LLVMDisposeModule | ( | LLVMModuleRef | M | ) |
Destroy a module instance.
This must be called for every created module or memory will be leaked.
Definition at line 105 of file Core.cpp.
References llvm::unwrap().
void LLVMDumpModule | ( | LLVMModuleRef | M | ) |
Dump a representation of a module to stderr.
Definition at line 127 of file Core.cpp.
References llvm::unwrap().
const char* LLVMGetDataLayout | ( | LLVMModuleRef | M | ) |
Obtain the data layout for a module.
Definition at line 110 of file Core.cpp.
References llvm::unwrap().
LLVMValueRef LLVMGetFirstFunction | ( | LLVMModuleRef | M | ) |
Obtain an iterator to the first Function in a Module.
Definition at line 1434 of file Core.cpp.
References llvm::Module::begin(), llvm::Module::end(), I, llvm::unwrap(), and llvm::wrap().
LLVMValueRef LLVMGetLastFunction | ( | LLVMModuleRef | M | ) |
Obtain an iterator to the last Function in a Module.
Definition at line 1442 of file Core.cpp.
References llvm::Module::begin(), llvm::Module::end(), I, llvm::unwrap(), and llvm::wrap().
LLVMContextRef LLVMGetModuleContext | ( | LLVMModuleRef | M | ) |
Obtain the context to which this module is associated.
Definition at line 167 of file Core.cpp.
References llvm::unwrap(), and llvm::wrap().
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.
Definition at line 1430 of file Core.cpp.
References llvm::unwrap(), and llvm::wrap().
unsigned LLVMGetNamedMetadataNumOperands | ( | LLVMModuleRef | M, |
const char * | name | ||
) |
Obtain the number of operands for named metadata in a module.
Definition at line 631 of file Core.cpp.
References N, and llvm::unwrap().
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.
Definition at line 639 of file Core.cpp.
References llvm::NamedMDNode::getNumOperands(), llvm::NamedMDNode::getOperand(), N, llvm::unwrap(), and llvm::wrap().
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 1450 of file Core.cpp.
References llvm::Module::end(), llvm::GlobalValue::getParent(), I, and llvm::wrap().
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 1458 of file Core.cpp.
References llvm::Module::begin(), llvm::GlobalValue::getParent(), I, and llvm::wrap().
const char* LLVMGetTarget | ( | LLVMModuleRef | M | ) |
Obtain the target triple for a module.
Definition at line 119 of file Core.cpp.
References llvm::unwrap().
LLVMTypeRef LLVMGetTypeByName | ( | LLVMModuleRef | M, |
const char * | Name | ||
) |
Obtain a Type from a module by its registered name.
Definition at line 407 of file Core.cpp.
References llvm::unwrap(), and llvm::wrap().
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 96 of file Core.cpp.
References llvm::getGlobalContext(), and llvm::wrap().
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 100 of file Core.cpp.
References llvm::unwrap(), and llvm::wrap().
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.
Definition at line 131 of file Core.cpp.
References llvm::raw_ostream::flush(), llvm::LibFunc::strdup, and llvm::unwrap().
char* LLVMPrintModuleToString | ( | LLVMModuleRef | M | ) |
Return a string representation of the module. Use LLVMDisposeMessage to free the string.
Definition at line 150 of file Core.cpp.
References llvm::raw_ostream::flush(), llvm::LibFunc::strdup, and llvm::unwrap().
void LLVMSetDataLayout | ( | LLVMModuleRef | M, |
const char * | Triple | ||
) |
Set the data layout for a module.
Definition at line 114 of file Core.cpp.
References llvm::unwrap().
void LLVMSetModuleInlineAsm | ( | LLVMModuleRef | M, |
const char * | Asm | ||
) |
Set inline assembly for a module.
Definition at line 161 of file Core.cpp.
References llvm::unwrap().
void LLVMSetTarget | ( | LLVMModuleRef | M, |
const char * | Triple | ||
) |
Set the target triple for a module.
Definition at line 123 of file Core.cpp.
References llvm::unwrap().