mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-26 07:24:25 +00:00
Make CreateArgv part of lli rather than part of ExecutionEngine.
Switch Interpreter and JIT's "run" methods to take a Function and a vector of GenericValues. Move (almost all of) the stuff that constructs a canonical call to main() into lli (new methods "callAsMain", "makeStringVector"). Nuke getCurrentExecutablePath(), enableTracing(), getCurrentFunction(), isStopped(), and many dead decls from interpreter. Add linux strdup() support to interpreter. Make interpreter's atexit handler runner and JIT's runAtExitHandlers() look more alike, in preparation for refactoring. atexit() is spelled "atexit", not "at_exit". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8366 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -44,9 +44,8 @@ public:
|
||||
/// run - Start execution with the specified function, arguments, and
|
||||
/// environment.
|
||||
///
|
||||
virtual int run(const std::string &FnName,
|
||||
const std::vector<std::string> &Args,
|
||||
const char ** envp) = 0;
|
||||
virtual GenericValue run(Function *F,
|
||||
const std::vector<GenericValue> &ArgValues) = 0;
|
||||
|
||||
static ExecutionEngine *create (Module *M, bool ForceInterpreter,
|
||||
bool TraceMode);
|
||||
@ -83,7 +82,6 @@ public: // FIXME: protected: // API shared among subclasses
|
||||
GenericValue getConstantValue(const Constant *C);
|
||||
void StoreValueToMemory(GenericValue Val, GenericValue *Ptr, const Type *Ty);
|
||||
GenericValue LoadValueFromMemory(GenericValue *Ptr, const Type *Ty);
|
||||
void *CreateArgv(const std::vector<std::string> &InputArgv);
|
||||
void InitializeMemory(const Constant *Init, void *Addr);
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user