Make the creation functions take an error string. This will help the
authorReid Spencer <rspencer@reidspencer.com>
Sat, 3 Mar 2007 18:18:11 +0000 (18:18 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Sat, 3 Mar 2007 18:18:11 +0000 (18:18 +0000)
ExecutionEngine report errors on creation (like bytecode stuff) and also
help to get rid of exception handling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34886 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ExecutionEngine/ExecutionEngine.h

index 3ebc65c621be4f85d2f6ee7cec8f129f8eb31f13..71aa18e0e502f3b0b6b0de58b09aebca7e08652a 100644 (file)
@@ -76,7 +76,7 @@ protected:
   // To avoid having libexecutionengine depend on the JIT and interpreter
   // libraries, the JIT and Interpreter set these functions to ctor pointers
   // at startup time if they are linked in.
-  typedef ExecutionEngine *(*EECtorFn)(ModuleProvider*);
+  typedef ExecutionEngine *(*EECtorFn)(ModuleProvider*, std::string*);
   static EECtorFn JITCtor, InterpCtor;
     
 public:
@@ -106,7 +106,8 @@ public:
   /// 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 = false);
+                                 bool ForceInterpreter = false,
+                                 std::string *ErrorStr = 0);
 
   /// runFunction - Execute the specified function with the specified arguments,
   /// and return the result.