|
roadrunner
2.6.0
Fast simulator for SBML models
|
a convenience class to pull the vars out of a context, and store them as ivars. More...
#include <CodeGenBase.h>
Public Types | |
| typedef FunctionPtrType | FunctionPtr |
Public Member Functions | |
| llvm::Function * | createFunction () |
Protected Member Functions | |
| CodeGenBase (const ModelGeneratorContext &mgc) | |
| virtual llvm::Value * | codeGen ()=0 |
| template<size_t N> | |
| llvm::BasicBlock * | codeGenHeader (const char *functionName, llvm::Type *retType, llvm::Type *(&argTypes)[N], const char *(&argNames)[N], llvm::Value *(&args)[N]) |
| llvm::BasicBlock * | codeGenVoidModelDataHeader (const char *functionName, llvm::Value *&modelData) |
| the most common type of generated function takes a ModelData*, and returns void. | |
| llvm::Function * | verifyFunction () |
Protected Attributes | |
| const ModelGeneratorContext & | modelGenContext |
| const libsbml::Model * | model |
| could potentially be null, everything else is guaranteed to be valid | |
| const LLVMModelDataSymbols & | dataSymbols |
| const LLVMModelSymbols & | modelSymbols |
| llvm::LLVMContext & | context |
| llvm::Module * | module |
| llvm::IRBuilder & | builder |
| llvm::Function * | function |
| llvm::legacy::FunctionPassManager * | functionPassManager |
| function pass manager. More... | |
| const unsigned | options |
| the options bit field that was passed into the top level load method. | |
a convenience class to pull the vars out of a context, and store them as ivars.
It can get tedious alwasy typing mgc.getThis and mgc.getThat. Furthermore, its faster to access them as ivars as it does not incur a func call each time.
|
inlineprotected |
verifyFunction - Check a function for errors, printing messages on stderr. Return true if the function is corrupt.
|
protected |
function pass manager.
Null if no optimization.