aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ExecutionEngine/Interpreter
Commit message (Collapse)AuthorAgeFilesLines
* Be friendly to gcc 3.4... good compiler. Nice compiler.Chris Lattner2003-11-053-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9726 91177308-0d34-0410-b5e6-96231b3b80d8
* Abort when the user program calls abort, instead of printing a funny message ↵Brian Gaeke2003-11-051-4/+2
| | | | | | and calling exit(1). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9716 91177308-0d34-0410-b5e6-96231b3b80d8
* Use regular old malloc to emulate malloc/alloca instructions.Brian Gaeke2003-11-051-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9713 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a comment which no longer applies.Brian Gaeke2003-11-051-5/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9712 91177308-0d34-0410-b5e6-96231b3b80d8
* Unbreak the buildChris Lattner2003-10-251-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9502 91177308-0d34-0410-b5e6-96231b3b80d8
* ExecutionEngine::create no longer takes a TraceMode argument.Brian Gaeke2003-10-241-18/+4
| | | | | | | | | | | CurFrame, TraceMode, and the CachedWriter are history. The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history. ExecutionContext now keeps Values for each stack frame in a std::map. printValue() and print() are history. executeInstruction() is now part of run(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9493 91177308-0d34-0410-b5e6-96231b3b80d8
* ExecutionEngine::create no longer takes a TraceMode argument.Brian Gaeke2003-10-241-13/+7
| | | | | | | CurFrame, TraceMode, and the CachedWriter are history. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9492 91177308-0d34-0410-b5e6-96231b3b80d8
* The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history.Brian Gaeke2003-10-241-71/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9490 91177308-0d34-0410-b5e6-96231b3b80d8
* Reduce the number of #includes.Brian Gaeke2003-10-241-186/+22
| | | | | | | | | | | | | | CurFrame, TraceMode, and the CachedWriter are history. ArrayChecksEnabled and non-QuietMode are history. The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history. ExecutionContext now keeps Values for each stack frame in a std::map. Stop pre-initializing Values on the stack to 42. Remove some dead variables, excess whitespace and commented-out code. executeInstruction() is now part of run(). printValue() and print() are history. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9489 91177308-0d34-0410-b5e6-96231b3b80d8
* Added LLVM copyright header.John Criswell2003-10-212-0/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9321 91177308-0d34-0410-b5e6-96231b3b80d8
* Added LLVM copyright notice to Makefiles.John Criswell2003-10-201-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9312 91177308-0d34-0410-b5e6-96231b3b80d8
* Added LLVM project notice to the top of every C++ source file.John Criswell2003-10-203-0/+21
| | | | | | | Header files will be on the way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
* Interpret the new varargs intrinsics correctlyChris Lattner2003-10-183-28/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9222 91177308-0d34-0410-b5e6-96231b3b80d8
* Order #includes as per the style guide.Misha Brukman2003-10-141-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9128 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't include Config/stdio.h or <stdio.h>.Brian Gaeke2003-10-101-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9031 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix spelling.Misha Brukman2003-10-102-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9021 91177308-0d34-0410-b5e6-96231b3b80d8
* Never set any signal handlers.Brian Gaeke2003-10-101-37/+2
| | | | | | | Never call setjmp(), longjmp() or strsignal(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9014 91177308-0d34-0410-b5e6-96231b3b80d8
* Rewrite head-of-file comment.Brian Gaeke2003-10-101-14/+16
| | | | | | | | | | In lookupFunction(): Change to use "F" for Function argument instead of ancient "M". Remove commented-out code. Change to use GetAddressOfSymbol instead of dlsym. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9013 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not read past the end of the contained type listChris Lattner2003-10-091-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8986 91177308-0d34-0410-b5e6-96231b3b80d8
* Squelch warningChris Lattner2003-09-221-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8659 91177308-0d34-0410-b5e6-96231b3b80d8
* Change FunctionInfo from being an annotation put on Functions to beChris Lattner2003-09-173-22/+9
| | | | | | | something which is mapped from functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8580 91177308-0d34-0410-b5e6-96231b3b80d8
* Reorder #includes to follow LLVM conventionsChris Lattner2003-09-051-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8375 91177308-0d34-0410-b5e6-96231b3b80d8
* ExecutionEngine.h, GenericValue.h --> include/llvm/ExecutionEngine/Brian Gaeke2003-09-051-2/+2
| | | | | | | Build ExecutionEngine as library. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8370 91177308-0d34-0410-b5e6-96231b3b80d8
* Make getOperandValue and executeCastOperation methods of Interpreter.Brian Gaeke2003-09-052-3/+6
| | | | | | | This lets us protect a few more ExecutionEngine methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8367 91177308-0d34-0410-b5e6-96231b3b80d8
* Make CreateArgv part of lli rather than part of ExecutionEngine.Brian Gaeke2003-09-053-110/+54
| | | | | | | | | | | | | | | | 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
* Remove printOperandInfo(), and simplify run().Brian Gaeke2003-09-051-30/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8362 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove support for printing values from a module by name, only usedBrian Gaeke2003-09-053-109/+0
| | | | | | | | w/ interactive keyboard entry of names. With that, Support.cpp is history. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8360 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove support for interactive (step finish next) instructions.Brian Gaeke2003-09-054-186/+44
| | | | | | | | | | Remove printCurrentInstruction, printStackFrame and infoValue (only used interactively) and other unused methods of Interpreter. Fold UserInput.cpp containing only callMainFunction() into Interpreter.cpp. Remove unused Profile flag. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8359 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove support for breakpoints (not used).Brian Gaeke2003-09-043-47/+8
| | | | | | | Remove some dead code and whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8346 91177308-0d34-0410-b5e6-96231b3b80d8
* Interpreter cleanups:Brian Gaeke2003-09-044-317/+30
| | | | | | | | | | | | | Get rid of support for DebugMode (make it always off). Mung some comments. Get rid of interpreter's PROFILE_STRUCTURE_FIELDS and PerformExitStuff which have been disabled forever. Get rid of -abort-on-exception (make it always on). Get rid of user interaction stuff (debug mode innards). Simplify Interpreter's callMainFunction(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8344 91177308-0d34-0410-b5e6-96231b3b80d8
* ExecutionEngine.cpp: Move execution engine creation stuff into a newBrian Gaeke2003-09-032-6/+9
| | | | | | | | | | | | | | | | | | | static method here. Remove some extra blank lines. ExecutionEngine.h: Add its prototype. lli.cpp: Call it. Make creation method for each type of EE into a static method of its own subclass. Interpreter/Interpreter.cpp: ExecutionEngine::createInterpreter --> Interpreter::create Interpreter/Interpreter.h: Likewise. JIT/JIT.cpp: ExecutionEngine::createJIT --> VM::create JIT/VM.h: Likewise. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8343 91177308-0d34-0410-b5e6-96231b3b80d8
* Targets now configure themselves based on the source module, not on theChris Lattner2003-08-242-10/+28
| | | | | | | ad-hoc "Config" flags git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8134 91177308-0d34-0410-b5e6-96231b3b80d8
* Add preliminary support for "any" pointersize/endianness. This will needChris Lattner2003-08-241-1/+2
| | | | | | | to change soon though. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8123 91177308-0d34-0410-b5e6-96231b3b80d8
* The JIT now passes the environment pointer to the main() function when itJohn Criswell2003-08-212-2/+4
| | | | | | | | starts a program. This allows the GNU env program to compile and JIT under LLVM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8022 91177308-0d34-0410-b5e6-96231b3b80d8
* Spell `necessary' correctly.Misha Brukman2003-08-181-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7944 91177308-0d34-0410-b5e6-96231b3b80d8
* Deconstify parameter to getPointerToFunction().Brian Gaeke2003-08-131-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7822 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove redundant const qualifierChris Lattner2003-07-231-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7254 91177308-0d34-0410-b5e6-96231b3b80d8
* Merged in autoconf branch. This provides configuration via the autoconfJohn Criswell2003-06-301-3/+3
| | | | | | | system. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7014 91177308-0d34-0410-b5e6-96231b3b80d8
* Include <cmath> instead of <math.h>Brian Gaeke2003-06-231-10/+1
| | | | | | | Remove isnan; it's too unportable to handle cleanly at this point. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6866 91177308-0d34-0410-b5e6-96231b3b80d8
* Use std::isnan instead of isnan. Brought back to you from theBrian Gaeke2003-06-171-1/+1
| | | | | | | future, by the reconciliation of the C++ and C99 standards. Someday. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6751 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for atexit function, remove support for __main functionChris Lattner2003-05-145-14/+37
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6194 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure that globals are emitted AFTER the passmanager is set up for the JIT,Chris Lattner2003-05-121-0/+1
| | | | | | | because the globals may refer to functions that need to be compiled! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6105 91177308-0d34-0410-b5e6-96231b3b80d8
* switch main LLI core execution to use an InstVisitor instead of a switch ↵Chris Lattner2003-05-102-67/+61
| | | | | | statement git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6081 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix testcase: SingleSource/UnitTests/2003-05-02-DependantPHI.cChris Lattner2003-05-102-34/+55
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6074 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement varargs support for LLI!Chris Lattner2003-05-082-73/+56
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6043 91177308-0d34-0410-b5e6-96231b3b80d8
* A large number of simple changes:Chris Lattner2003-05-087-178/+95
| | | | | | | | * s/Method/Function * Kill some obsolete (external) functions that used to be to support tracing git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6041 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for recording arguments passed through the ... of a varargs functionChris Lattner2003-05-082-10/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6040 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove two fields from TargetData which are target specific.Chris Lattner2003-04-261-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5963 91177308-0d34-0410-b5e6-96231b3b80d8
* Only do the %ld -> %lld promotion when running a 64 bit bytecode on a 32 bit ↵Chris Lattner2003-04-251-1/+2
| | | | | | host git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5942 91177308-0d34-0410-b5e6-96231b3b80d8
* Add __strdupChris Lattner2003-04-251-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5941 91177308-0d34-0410-b5e6-96231b3b80d8