Chris Lattner
5564406f6e
Add the ability for users to specify a specific argv[0] to pass into the
...
program
llvm-svn: 9565
2003-10-28 22:51:44 +00:00
Brian Gaeke
055148bdc1
TraceMode, as you may have heard, is history.
...
ExecutionEngine::create no longer takes a TraceMode argument.
llvm-svn: 9495
2003-10-24 20:00:17 +00:00
John Criswell
abe5cdcf21
Added LLVM copyright to Makefiles.
...
llvm-svn: 9314
2003-10-20 22:29:16 +00:00
John Criswell
567fe2f312
Removed extraneous comment line.
...
llvm-svn: 9308
2003-10-20 20:40:30 +00:00
John Criswell
09344dcf97
Added copyright header to all C++ source files.
...
llvm-svn: 9291
2003-10-20 17:47:21 +00:00
Misha Brukman
5b255e59ac
Enabling incremental bytecode loading in the JIT:
...
* Use the incremental bytecode reader interface to speed up execution
llvm-svn: 9127
2003-10-14 21:39:53 +00:00
Misha Brukman
c2186e3110
To be consistent with the rest of LLVM codebase (and the rest of this file):
...
* Changed tabs to spaces
* Removed a space between a function call and its arguments (...)
llvm-svn: 8712
2003-09-25 18:10:34 +00:00
Chris Lattner
ad48131254
Reorder #includes to follow LLVM conventions
...
llvm-svn: 8375
2003-09-05 20:08:15 +00:00
Brian Gaeke
e99ca44153
Interpreter, JIT moved to lib/ExecutionEngine (includes -> llvm/ExecutionEngine)
...
Build lli using executionengine library
llvm-svn: 8372
2003-09-05 19:42:34 +00:00
Brian Gaeke
a7669038fc
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".
llvm-svn: 8366
2003-09-05 18:42:01 +00:00
Brian Gaeke
92f8b30d24
Move EE dtor where it belongs
...
llvm-svn: 8345
2003-09-04 22:57:27 +00:00
Brian Gaeke
e80e5ba7f8
Interpreter cleanups:
...
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().
llvm-svn: 8344
2003-09-04 22:21:24 +00:00
Brian Gaeke
4bd3bd5b5a
ExecutionEngine.cpp: Move execution engine creation stuff into a new
...
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.
llvm-svn: 8343
2003-09-03 20:34:19 +00:00
Chris Lattner
e722930efd
Preselection is now integrated into the Sparc target library
...
llvm-svn: 8305
2003-09-01 20:30:17 +00:00
Chris Lattner
c7f87d30ab
Sparc peephole optimizer moved out of post-opts library into Sparc target library
...
llvm-svn: 8302
2003-09-01 20:26:14 +00:00
Chris Lattner
5c13c941de
Remove some long-dead code
...
llvm-svn: 8135
2003-08-24 19:52:02 +00:00
Chris Lattner
4d4f424f0c
Targets now configure themselves based on the source module, not on the
...
ad-hoc "Config" flags
llvm-svn: 8134
2003-08-24 19:50:53 +00:00
Chris Lattner
479854091a
Add preliminary support for "any" pointersize/endianness. This will need
...
to change soon though.
llvm-svn: 8123
2003-08-24 14:02:47 +00:00
John Criswell
71c3e6236f
The JIT now passes the environment pointer to the main() function when it
...
starts a program. This allows the GNU env program to compile and JIT under
LLVM.
llvm-svn: 8022
2003-08-21 21:12:30 +00:00
Chris Lattner
6ae402fd2c
rename selection library to selectiondag
...
llvm-svn: 7878
2003-08-15 04:56:09 +00:00
Chris Lattner
32fdf188e7
Incorporate mapping library into the sparc library
...
llvm-svn: 7800
2003-08-13 02:28:20 +00:00
Chris Lattner
f458b7dd3b
Include the new selection library for the X86 target
...
llvm-svn: 7720
2003-08-11 14:59:53 +00:00
Misha Brukman
c69f4a575c
Add in support to load shared objects (-load is provided by Support library).
...
llvm-svn: 7360
2003-07-28 19:06:19 +00:00
Misha Brukman
7dee443c1c
* If compiling on X86 or Sparc, automagically enable the JIT for that arch
...
* Setting ENABLE_X86_JIT or ENABLE_SPARC_JIT on the `make' command-line will
force the inclusion of that JIT on a different architecture
* If neither JIT is enabled (e.g., compiling on a different architecture), the
-march option will not be available to LLI.
* As a side effect of the $ARCH variable, the Sparc LLI can now link just a bit
faster by not including the x86 library.
llvm-svn: 7070
2003-07-02 17:53:19 +00:00
John Criswell
3ef61afb76
Merged in autoconf branch. This provides configuration via the autoconf
...
system.
llvm-svn: 7014
2003-06-30 21:59:07 +00:00
Brian Gaeke
e38c7d9f2d
Use $(PLATFORMLIBDL) to selectively bring in -ldl only on those platforms where
...
it is needed.
llvm-svn: 6753
2003-06-17 20:09:18 +00:00
Chris Lattner
dcd6bcb71d
Life is too short. Link in too much stuff on Linux to make building on sun easier
...
llvm-svn: 6748
2003-06-17 19:14:59 +00:00
Chris Lattner
eba0e9930d
The never-ending odyssey trying to get sparc to link
...
llvm-svn: 6747
2003-06-17 18:19:52 +00:00
Chris Lattner
f9f0005af7
Make sure to get the value of ARCH before we use it
...
llvm-svn: 6746
2003-06-17 17:53:35 +00:00
Chris Lattner
d9cc372613
Do not link in the Sparc JIT when building on X86. Eventually the sparc will not
...
link in the X86 JIT either, but this makes testing easier.
For some reason, the sparc JIT was breaking the X86 JIT when it was linked in. :(
llvm-svn: 6745
2003-06-17 15:54:52 +00:00
Chris Lattner
66e018bb80
Whoops, didn't mean to check that in :(
...
llvm-svn: 6743
2003-06-17 15:46:34 +00:00
Chris Lattner
d9e6bfae0e
Use more structured command line option processing
...
llvm-svn: 6742
2003-06-17 15:43:13 +00:00
Misha Brukman
80f0eb3a82
Link in Sparc libs for the JIT, even on X86 to be able to support debugging
...
of Sparc JIT (printing out instrs) on X86. Con: this increases linking time.
llvm-svn: 6361
2003-05-27 21:42:05 +00:00
Brian Gaeke
b752116230
Remove ".bc" from the end of InputFile if it is there, in
...
tools/lli/lli.cpp:main().
llvm-svn: 6317
2003-05-23 20:28:07 +00:00
Chris Lattner
966e1a20ce
The JIT is the default mode for LLI now
...
llvm-svn: 6118
2003-05-12 14:31:57 +00:00
Chris Lattner
7d4c04c99a
We now need to link libscalar to get the switch lowering pass
...
llvm-svn: 5874
2003-04-23 16:43:02 +00:00
Chris Lattner
cebde8d74c
Build the appropriate target machine for the input pointer size and endianness
...
llvm-svn: 5838
2003-04-22 18:10:32 +00:00
Chris Lattner
3fef999fcb
Fix didn't fix the race condition in the makefiles
...
llvm-svn: 5394
2003-01-22 15:41:10 +00:00
Chris Lattner
cff8ebe6a3
Fix race condition in Makefile
...
llvm-svn: 5380
2003-01-21 15:20:50 +00:00
Chris Lattner
93fbc67720
No longer need scalaropts lib
...
llvm-svn: 5252
2003-01-13 00:58:18 +00:00
Chris Lattner
5aa5663353
Fixes to compile with GCC 3.2
...
llvm-svn: 5134
2002-12-24 00:39:16 +00:00
Chris Lattner
a0d7b084ef
Substantial changes to refactor LLI to incorporate both the Jello JIT and
...
the traditional LLI interpreter
llvm-svn: 5125
2002-12-23 23:59:41 +00:00
Chris Lattner
4f96aa450e
Add support to count the number of dynamic instructions executed by LLI
...
llvm-svn: 4955
2002-12-08 05:51:08 +00:00
Chris Lattner
a416ad30df
No need to explicitly inclue ExportSymbols now
...
llvm-svn: 4543
2002-11-04 20:50:57 +00:00
Chris Lattner
6ba47f6d5b
Export symbols for linux
...
llvm-svn: 3707
2002-09-13 22:20:19 +00:00
Chris Lattner
6d044b588b
Namespace correctness is good
...
llvm-svn: 3088
2002-07-25 16:39:56 +00:00
Chris Lattner
ba614ba122
REmove extra blank lines
...
llvm-svn: 3084
2002-07-25 15:40:38 +00:00
Chris Lattner
a896b08b5c
*** empty log message ***
...
llvm-svn: 3002
2002-07-23 17:52:38 +00:00
Chris Lattner
f5cad15a67
*** empty log message ***
...
llvm-svn: 2985
2002-07-22 02:10:13 +00:00
Chris Lattner
13e8979767
Remove tracing code hack
...
llvm-svn: 2673
2002-05-20 21:16:46 +00:00
Vikram S. Adve
b810407ddb
Link with test/Libraries/libinstr32.a for runtime routines
...
supporting tracing. That should be moved to a "runtime" directory.
llvm-svn: 2660
2002-05-19 16:00:28 +00:00
Chris Lattner
cd739a66cf
Remove asmwriter library from link line, because the useful contents of it
...
have been incorporated into the vmcore library.
llvm-svn: 2153
2002-04-07 22:35:30 +00:00
Chris Lattner
0e66f3ec92
Remove runtime library in favor of users linking against real libraries.
...
llvm-svn: 1853
2002-03-11 17:57:13 +00:00
Chris Lattner
5b46fa248f
Remove hack. This is better fixed in Makefile.common
...
llvm-svn: 1795
2002-02-24 23:25:46 +00:00
Chris Lattner
5079e2ea56
Build with newer compiler, with same bug
...
llvm-svn: 1793
2002-02-24 23:11:05 +00:00
Chris Lattner
4a75c2b248
Eliminate opt library
...
llvm-svn: 1516
2002-01-21 23:13:46 +00:00
Chris Lattner
403ff802a3
Build runtime library with local GCCAS
...
llvm-svn: 1447
2001-12-13 00:44:23 +00:00
Chris Lattner
fbf1106e2c
Implement strlen strdup strcmp
...
llvm-svn: 1446
2001-12-13 00:44:09 +00:00
Chris Lattner
5de2204fe8
Create a new #include "Support/..." directory structure to move things
...
from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
llvm-svn: 1400
2001-11-27 00:03:19 +00:00
Chris Lattner
921875394f
Fix problem where lli < foo.bc would have argc = 0
...
llvm-svn: 1393
2001-11-26 19:20:38 +00:00
Chris Lattner
0d5c295536
Implement memset memcpy, calloc
...
llvm-svn: 1055
2001-10-30 22:37:01 +00:00
Chris Lattner
3f741a560a
Initialize map for purify
...
llvm-svn: 1049
2001-10-30 20:28:46 +00:00
Chris Lattner
eec6046adf
I screwed up the macros, so of course strtol didn't work. *sigh*
...
llvm-svn: 1035
2001-10-29 17:47:10 +00:00
Chris Lattner
c6503e8a2f
Oops, accidentally broke reading from stdin when doing command line arguments
...
llvm-svn: 1026
2001-10-29 14:00:48 +00:00
Chris Lattner
009f8108bc
Implement a -trace command line option and a trace option in the interpreter.
...
llvm-svn: 989
2001-10-27 08:43:52 +00:00
Chris Lattner
0b00b31c78
* Make pointer values work better by treating them uniformly as 64 bit values.
...
This causes code that is generated by gcc to work better.
* Implement mul & div
* Export malloc, free, and pow
* add strtol, atoi, and atol to the runtime library
llvm-svn: 988
2001-10-27 08:28:11 +00:00
Chris Lattner
6642eec003
Provide argv for commands
...
llvm-svn: 987
2001-10-27 05:54:31 +00:00
Chris Lattner
15157b88e9
* Implement exit() builtin function
...
* Implement linked in runtime library with puts(char*) in it
* implement builtin putchar(int) function
llvm-svn: 985
2001-10-27 04:15:57 +00:00
Chris Lattner
f9e623e1f9
Add support for building a runtime library for LLI
...
llvm-svn: 983
2001-10-24 19:52:41 +00:00
Chris Lattner
d299dbac0e
Enhancements to pass argc & argv to main if required
...
llvm-svn: 909
2001-10-18 21:55:32 +00:00
Chris Lattner
c62e2e5bf7
Implement global variables. Struct and Pointer initializers are not implemented yet though
...
llvm-svn: 818
2001-10-15 05:51:48 +00:00
Chris Lattner
676d4118cf
Genericize support for calling functions a bit
...
Add external method support
llvm-svn: 528
2001-09-10 04:49:44 +00:00
Chris Lattner
9373bd69b7
Make use of the new TOOLNAME/USEDLIBS options provided in Makefile.common
...
llvm-svn: 501
2001-09-07 22:59:25 +00:00
Chris Lattner
2c1a98ef08
Lots of new functionality
...
llvm-svn: 372
2001-08-27 05:16:50 +00:00
Chris Lattner
d7ff578767
Initial checkin of interpreter
...
llvm-svn: 361
2001-08-23 17:05:04 +00:00