diff --git a/include/llvm/ExecutionEngine/ExecutionEngine.h b/include/llvm/ExecutionEngine/ExecutionEngine.h index ba6a6e1cc06..b3f4f9fb451 100644 --- a/include/llvm/ExecutionEngine/ExecutionEngine.h +++ b/include/llvm/ExecutionEngine/ExecutionEngine.h @@ -53,14 +53,16 @@ public: Module &getModule() const { return CurMod; } const TargetData &getTargetData() const { return *TD; } - /// run - Start execution with the specified function, arguments, and - /// environment. - /// - virtual GenericValue run(Function *F, - const std::vector &ArgValues) = 0; - + /// create - This is the factory method for creating an execution engine which + /// is appropriate for the current machine. static ExecutionEngine *create(ModuleProvider *MP, bool ForceInterpreter); + /// runFunction - Execute the specified function with the specified arguments, + /// and return the result. + /// + virtual GenericValue runFunction(Function *F, + const std::vector &ArgValues) = 0; + void addGlobalMapping(const GlobalValue *GV, void *Addr) { void *&CurVal = GlobalAddress[GV]; assert((CurVal == 0 || Addr == 0) && "GlobalMapping already established!");