Home | History | Annotate | Download | only in complete

Lines Matching refs:Module

12 #include "llvm/IR/Module.h"
706 virtual void notifyObjectCompiled(const Module *M, const MemoryBuffer *Obj) {
725 // MCJIT will call this function before compiling any module
728 virtual MemoryBuffer* getObject(const Module* M) {
761 Module* parseInputIR(std::string InputFile, LLVMContext &Context) {
763 Module *M = ParseIRFile(InputFile, Err, Context);
786 virtual Module *getModuleForNewFunction() = 0;
801 // Make the module, which holds all the code.
805 TheModule = new Module("my cool jit", Context);
808 // Create the JIT. This takes ownership of the module.
849 virtual Module *getModuleForNewFunction() {
879 Module *TheModule;
893 Module *M = parseInputIR(InputIR, Context);
902 Module *getModuleForNewFunction();
910 ExecutionEngine *compileModule(Module *M);
913 typedef std::vector<Module*> ModuleVector;
920 std::map<Module *, ExecutionEngine *> EngineMap;
922 Module *CurrentModule;
937 /// from one generated module to another.
969 // See if we have an execution engine for this module.
970 std::map<Module*, ExecutionEngine*>::iterator mapIt = EngineMap.find(*it);
971 // If we have an EE, the EE owns the module so just delete the EE.
975 // Otherwise, we still own the module. Delete it now.
993 // This function is in a module that has already been JITed.
1013 Module *MCJITHelper::getModuleForNewFunction() {
1014 // If we have a Module that hasn't been JITed, use that.
1018 // Otherwise create a new Module.
1020 Module *M = new Module(ModName, Context);
1027 ExecutionEngine *MCJITHelper::compileModule(Module *M) {
1053 // Create a FPM for this module
1074 // For each function in the module
1075 Module::iterator it;
1076 Module::iterator end = M->end();
1094 // Look for this function in an existing module
1102 std::map<Module*, ExecutionEngine*>::iterator eeIt = EngineMap.find(*it);
1119 // If we have an open module (and we should), pack it up
1134 std::map<Module*, ExecutionEngine*>::iterator eeIt = EngineMap.find(*it);
1259 // Look up the name in the global module table.
1489 Module* M = TheHelper->getModuleForNewFunction();
1493 // The check below will only work if the duplicate is in the open module.