diff options
author | Chris Lattner <sabre@nondot.org> | 2007-10-21 22:57:11 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2007-10-21 22:57:11 +0000 |
commit | 8b5295b7bb8bf44f13df7fc8e38069d1218b1f94 (patch) | |
tree | 05cb3d24853770dce98bbef628909f04465bbc32 | |
parent | 61c7ef34e35dbf059cfc1add03780343dfe33459 (diff) | |
download | external_llvm-8b5295b7bb8bf44f13df7fc8e38069d1218b1f94.zip external_llvm-8b5295b7bb8bf44f13df7fc8e38069d1218b1f94.tar.gz external_llvm-8b5295b7bb8bf44f13df7fc8e38069d1218b1f94.tar.bz2 |
Add a convenience method for creating EE's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43206 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/ExecutionEngine/ExecutionEngine.h | 8 | ||||
-rw-r--r-- | lib/ExecutionEngine/ExecutionEngine.cpp | 4 |
2 files changed, 11 insertions, 1 deletions
diff --git a/include/llvm/ExecutionEngine/ExecutionEngine.h b/include/llvm/ExecutionEngine/ExecutionEngine.h index 2a2fb7c..da034a7 100644 --- a/include/llvm/ExecutionEngine/ExecutionEngine.h +++ b/include/llvm/ExecutionEngine/ExecutionEngine.h @@ -108,11 +108,17 @@ public: Function *FindFunctionNamed(const char *FnName); /// create - This is the factory method for creating an execution engine which - /// is appropriate for the current machine. + /// is appropriate for the current machine. This takes ownership of the + /// module provider. static ExecutionEngine *create(ModuleProvider *MP, bool ForceInterpreter = false, std::string *ErrorStr = 0); + /// create - This is the factory method for creating an execution engine which + /// is appropriate for the current machine. This takes ownership of the + /// module. + static ExecutionEngine *create(Module *M); + /// runFunction - Execute the specified function with the specified arguments, /// and return the result. /// diff --git a/lib/ExecutionEngine/ExecutionEngine.cpp b/lib/ExecutionEngine/ExecutionEngine.cpp index 512c452..192caa8 100644 --- a/lib/ExecutionEngine/ExecutionEngine.cpp +++ b/lib/ExecutionEngine/ExecutionEngine.cpp @@ -328,6 +328,10 @@ ExecutionEngine *ExecutionEngine::create(ModuleProvider *MP, return EE; } +ExecutionEngine *ExecutionEngine::create(Module *M) { + return create(new ExistingModuleProvider(M)); +} + /// getPointerToGlobal - This returns the address of the specified global /// value. This may involve code generation if it's a function. /// |