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 | 466b3effd8f70f0d2c18314367c33ff7c60584c8 (patch) | |
tree | 05cb3d24853770dce98bbef628909f04465bbc32 | |
parent | fb0fa9102951c085f9f79ae88917bebafc4ab807 (diff) | |
download | external_llvm-466b3effd8f70f0d2c18314367c33ff7c60584c8.tar.gz external_llvm-466b3effd8f70f0d2c18314367c33ff7c60584c8.tar.bz2 external_llvm-466b3effd8f70f0d2c18314367c33ff7c60584c8.zip |
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 2a2fb7cb8c..da034a7cc2 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 512c4520e0..192caa894c 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. /// |