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
ae31f5b65f
Implement a -L command line argument to specify a search path. Implement minimal ar compatibility stuff
...
llvm-svn: 975
2001-10-24 06:23:00 +00:00
Chris Lattner
daebd7508d
Changes to get some meaningful feedback from the bytecode reader. At some point this stuff should all be exception driven, but for now it is not.
...
llvm-svn: 970
2001-10-24 01:15:12 +00:00
Chris Lattner
ebaa78852c
Add '-v' option to enable verbose output from the linker
...
llvm-svn: 966
2001-10-23 20:44:55 +00:00
Chris Lattner
3923967f1e
Fix to reference the right header
...
llvm-svn: 915
2001-10-19 15:39:14 +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
1a9680f708
Remove unneccesary retcode var
...
llvm-svn: 905
2001-10-18 20:33:21 +00:00
Chris Lattner
95f87b4e5d
Refactor Assembly/Bytecode writer code into Assembly & bytecode libraries
...
llvm-svn: 904
2001-10-18 20:32:07 +00:00
Chris Lattner
75c9f9f958
Expose more xforms to the opt utility
...
llvm-svn: 900
2001-10-18 20:06:45 +00:00
Chris Lattner
b9acf7e49e
Bytecode writer is yanked out of Module printer
...
llvm-svn: 899
2001-10-18 20:06:31 +00:00
Vikram S. Adve
71f16ecf13
Move malloc/free lowering after tracing until lli supports
...
calls to external malloc/free functions.
llvm-svn: 893
2001-10-18 18:20:20 +00:00
Chris Lattner
8c8b9d10c0
Only output code if file open is successful
...
llvm-svn: 890
2001-10-18 17:07:22 +00:00
Vikram S. Adve
b2ac1e76b4
Trace code should always be exported just before code generation;
...
this is not a debugging option. But we can export it as assembly
instead of bytecode if -debugtrace is specified.
llvm-svn: 889
2001-10-18 13:51:20 +00:00
Chris Lattner
ed8947fb11
Use the standard header not the old one
...
llvm-svn: 886
2001-10-18 06:13:08 +00:00
Chris Lattner
6fc7ff4db8
Add support to insert trace code as an "optimization"
...
llvm-svn: 884
2001-10-18 06:05:15 +00:00
Chris Lattner
d054fae5f1
Convert to new simpler, more powerful pass structure
...
llvm-svn: 882
2001-10-18 05:28:44 +00:00
Chris Lattner
5b6026a13a
* Passes return true if they change something, not if they fail
...
* Convert opt to use Pass's and convert optimizations to pass structure
llvm-svn: 870
2001-10-18 01:31:43 +00:00
Chris Lattner
2fa0dabf9f
Passes return true if they change something, not if they fail
...
llvm-svn: 869
2001-10-18 01:31:22 +00:00
Chris Lattner
8761d50df7
ConcretePass should not be a templated class!
...
llvm-svn: 838
2001-10-15 17:47:13 +00:00
Chris Lattner
d0c15405af
Minor cleanups
...
llvm-svn: 837
2001-10-15 17:41:24 +00:00
Chris Lattner
97fd6c44db
Use the new Pass infrastructure to clean up llc
...
llvm-svn: 835
2001-10-15 17:30:47 +00:00
Chris Lattner
f112d52f2c
Add library
...
llvm-svn: 827
2001-10-15 15:55:15 +00:00
Chris Lattner
41c4ddad51
Minor code cleanups
...
llvm-svn: 825
2001-10-15 13:47:13 +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
Vikram S. Adve
2f084b2c73
*** empty log message ***
...
llvm-svn: 811
2001-10-14 23:29:28 +00:00
Chris Lattner
d631165a45
Add a new -d argument to dump the internal rep as assembly.
...
llvm-svn: 804
2001-10-14 23:23:33 +00:00
Chris Lattner
a8f29f8a80
MethodTypes take an explicit isVarArg argument
...
llvm-svn: 782
2001-10-13 07:07:28 +00:00
Chris Lattner
6d56c6b5b6
Fix comment flyer
...
llvm-svn: 781
2001-10-13 07:06:57 +00:00
Chris Lattner
9d810e0494
Add new linker
...
llvm-svn: 780
2001-10-13 07:06:23 +00:00
Chris Lattner
5de85fcb7f
Build the new linker
...
llvm-svn: 779
2001-10-13 07:06:06 +00:00
Vikram S. Adve
c524e1c714
Repeat some libs due to circular dependences between Sparc and other
...
code gen libraries.
llvm-svn: 722
2001-10-10 20:58:57 +00:00
Chris Lattner
b27d474201
Add hack to get rid of malloc & free instructions for code generation
...
llvm-svn: 713
2001-10-04 01:40:53 +00:00
Chris Lattner
bb09a10929
Pull iterators out of CFG.h and CFGdecls and put them in Support directory
...
llvm-svn: 664
2001-09-28 22:56:31 +00:00
Chris Lattner
0755deabb5
Add support to print a call graph, and also add support for module level interprocedural analyses
...
llvm-svn: 659
2001-09-28 00:07:36 +00:00
Chris Lattner
46f1b61d98
Add proper support to send output to the right place
...
llvm-svn: 649
2001-09-19 16:52:09 +00:00
Chris Lattner
15d8418323
Emit assembly language from the target...
...
llvm-svn: 640
2001-09-19 13:56:47 +00:00
Chris Lattner
6c2c87099a
C++ gives us auto_ptr's, so we might as well use them. :)
...
llvm-svn: 629
2001-09-18 17:04:18 +00:00
Vikram S. Adve
9d40935697
Minor changes.
...
llvm-svn: 622
2001-09-18 13:10:45 +00:00
Ruchira Sasanka
7e81e7bf77
Added regalloc
...
llvm-svn: 584
2001-09-15 00:28:37 +00:00
Chris Lattner
8be8fb9625
Oops, accidentally checked my debugging makefile
...
llvm-svn: 583
2001-09-14 23:21:08 +00:00
Chris Lattner
22a6a90511
Make a new llvm/Target #include directory.
...
Move files from lib/CodeGen/TargetMachine to lib/Target
Move TargetData.h and TargetMachine.h to Target/{Data.h|Machine.h}
Prepare to split TargetMachine.h into several smaller files
llvm-svn: 566
2001-09-14 05:34:53 +00:00
Chris Lattner
f8464e4b8d
Checkin changes to:
...
1. Clean up the TargetMachine structure. No more wierd pointers that have to
be cast around and taken care of by the target.
2. Instruction Scheduling now takes the schedinfo as an argument. The same
should be done with the instinfo, it just isn't now.
llvm-svn: 565
2001-09-14 04:32:55 +00:00
Chris Lattner
0a823a062c
This checkin represents some cleanup of the backend, implementing the following things:
...
1. The TargetMachine structure is free to decide the process a particular target uses to generate code.
2. All of the gooee details of the sparc backend are now localized in the lib/CodeGen/TargetMAchine/Sparc directory. The Sparc.h file that is globally visible is just a stub.
3. The Sparc.h file that esxists now will dissapear entirely someday when we have multiple backends chosen by a factory of some sort.
llvm-svn: 559
2001-09-14 03:37:52 +00:00
Chris Lattner
2a35abb142
Export the instruction forest support from the analysis library
...
llvm-svn: 556
2001-09-14 01:42:42 +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
0223c60bf0
iFix dependence order
...
llvm-svn: 517
2001-09-09 21:03:12 +00:00