Chris Lattner
acd2890ec1
Jello is going away
...
llvm-svn: 5117
2002-12-23 23:47:20 +00:00
Chris Lattner
8e628685d9
Fix compilation on gcc 2.96
...
llvm-svn: 5116
2002-12-23 23:46:55 +00:00
Chris Lattner
285f1458f0
Add definition for the bswap instruction
...
*** FIX: the encoding of the SUB instruction
llvm-svn: 5115
2002-12-23 23:46:31 +00:00
Chris Lattner
9e13907a4f
Add support for the bswap instruction
...
llvm-svn: 5114
2002-12-23 23:46:00 +00:00
Chris Lattner
7abe5199b3
Fix compilation on GCC 2.96
...
llvm-svn: 5113
2002-12-23 23:44:04 +00:00
Brian Gaeke
8f7c7a40c5
brg
...
Add statistic for number of bytes of data area initialized.
We used this statistic in collecting data for the paper, but I forgot
to commit it.
llvm-svn: 5112
2002-12-22 18:53:23 +00:00
Chris Lattner
6b8e873886
Add support for isnan
...
llvm-svn: 5111
2002-12-20 04:18:13 +00:00
Chris Lattner
3b100b8767
Add stats output
...
llvm-svn: 5110
2002-12-20 04:14:19 +00:00
Chris Lattner
2dc1b58c11
Fix warning
...
llvm-svn: 5109
2002-12-20 04:13:28 +00:00
Chris Lattner
f8876bb77d
CBW doesn't modify AL
...
llvm-svn: 5108
2002-12-20 04:13:11 +00:00
Chris Lattner
d838414ec1
fix warning
...
llvm-svn: 5107
2002-12-20 04:12:48 +00:00
Chris Lattner
5ddc4b5f94
* Fix several register aliasing bugs
...
* Add a new option to eliminate spilling of registers that are only used
within a basic block.
llvm-svn: 5106
2002-12-18 08:14:26 +00:00
Chris Lattner
8557cb2489
Print argc as well as argv
...
llvm-svn: 5105
2002-12-18 02:07:21 +00:00
Chris Lattner
c21fd773b8
Don't force setCC instructions into AL
...
llvm-svn: 5104
2002-12-18 01:44:31 +00:00
Chris Lattner
bb2e7ec2b1
Implicit defs/uses list may be empty.
...
llvm-svn: 5103
2002-12-18 01:11:14 +00:00
Chris Lattner
b1c74bb421
Add comments, switch uses/defs to match InstrInfo.def file
...
llvm-svn: 5102
2002-12-18 01:05:54 +00:00
Chris Lattner
0607e84008
Add reg clobber list for direct calls
...
Represent empty use/def list as a null pointer
llvm-svn: 5101
2002-12-18 01:05:31 +00:00
Chris Lattner
079d149fbd
Simplify interface to remove virtual function references
...
llvm-svn: 5100
2002-12-17 04:20:39 +00:00
Chris Lattner
c6ac5c70c6
Use new reginfo interface
...
llvm-svn: 5099
2002-12-17 04:19:40 +00:00
Chris Lattner
0b617b0e1d
Update to use new interface for register info
...
llvm-svn: 5098
2002-12-17 04:19:17 +00:00
Chris Lattner
cbc794db30
New file
...
llvm-svn: 5097
2002-12-17 04:03:08 +00:00
Chris Lattner
e66a7e80c3
Add prolog/epilog spills/reloads to counters
...
Move X86 specific alignment gunk to X86 files
llvm-svn: 5096
2002-12-17 03:16:10 +00:00
Chris Lattner
dbca3de031
Round number of bytes allocated on the stack up to a multiple of 4 so that the
...
stack remains aligned
llvm-svn: 5095
2002-12-17 03:15:26 +00:00
Chris Lattner
305d72e965
Local register allocator is now stable enough for use, it passes all tests
...
llvm-svn: 5094
2002-12-17 02:51:15 +00:00
Chris Lattner
8dd15fd26c
Fix many bugs, regallocator now saves callee-save registers instead of target
...
llvm-svn: 5093
2002-12-17 02:50:10 +00:00
Chris Lattner
4a60d804c2
Register allocator is responsible for spilling callee saved regs
...
llvm-svn: 5092
2002-12-17 02:48:57 +00:00
Chris Lattner
dcb3cfb698
Make testcase return 0 on success
...
llvm-svn: 5091
2002-12-17 02:02:01 +00:00
Chris Lattner
c7e6dd2341
Build add instructions of the correct form!
...
llvm-svn: 5090
2002-12-16 23:36:57 +00:00
Chris Lattner
7418dc3975
Add dummy implementation of __main
...
llvm-svn: 5089
2002-12-16 23:31:48 +00:00
Chris Lattner
f5da16f2f6
Two fixes:
...
* Only load incoming arguments into virtual registers once at the
beginning of the function
* Assign different virtual registers to each reference to constants/globals
llvm-svn: 5088
2002-12-16 22:54:46 +00:00
Chris Lattner
9d64c1e53a
Fix prolog/epilog in the presence of alloca
...
llvm-svn: 5087
2002-12-16 22:29:30 +00:00
Chris Lattner
2e17697e81
Make sure stack manipulation refers to ESP the right number of times
...
llvm-svn: 5086
2002-12-16 22:29:06 +00:00
Chris Lattner
dfcaf6aa62
New testcase for printing out arguments
...
llvm-svn: 5085
2002-12-16 20:09:54 +00:00
Chris Lattner
de4d89ef9f
Add some special cases to make common getelementptr cases easier to read/faster
...
llvm-svn: 5084
2002-12-16 19:32:50 +00:00
Chris Lattner
4576429b7c
Finish implementation of alias list impl
...
llvm-svn: 5083
2002-12-16 19:31:48 +00:00
Chris Lattner
cdcde16ad0
* Fix a gross X86 hack that was intended to avoid allocating SP and BP
...
* Implement register alias set support
llvm-svn: 5082
2002-12-16 17:44:42 +00:00
Chris Lattner
0ede83ee56
Keep the stack frame aligned.
...
llvm-svn: 5081
2002-12-16 17:42:40 +00:00
Chris Lattner
3b7f709ebd
Add support for register alias set description
...
llvm-svn: 5080
2002-12-16 16:39:14 +00:00
Chris Lattner
4d0ca4b442
Add mechanism to select register allocator to use
...
llvm-svn: 5079
2002-12-16 16:15:51 +00:00
Chris Lattner
d44868a709
Initial checkin of "local" register allocator. Bugs are still present.
...
llvm-svn: 5078
2002-12-16 16:15:28 +00:00
Chris Lattner
b833239d6b
Try #2 to get alias set stuff to work
...
llvm-svn: 5077
2002-12-16 16:14:51 +00:00
Chris Lattner
eae93bdb93
Add comments
...
llvm-svn: 5076
2002-12-16 15:57:44 +00:00
Chris Lattner
fd065b6b1a
Add info about register aliases, add prototype for createLocalRegisterAllocator
...
llvm-svn: 5075
2002-12-16 15:55:51 +00:00
Chris Lattner
b413ce63d5
Add info about register file aliasing
...
llvm-svn: 5074
2002-12-16 15:55:25 +00:00
Chris Lattner
e6ad4941fc
Add information about register file aliasing
...
llvm-svn: 5073
2002-12-16 15:54:59 +00:00
Chris Lattner
68af8985f4
Add call clobber info
...
llvm-svn: 5072
2002-12-16 15:54:42 +00:00
Chris Lattner
566fb4c7b7
Rename createSimpleX86RegisterAllocator to createSimpleRegisterAllocator
...
llvm-svn: 5071
2002-12-16 14:38:13 +00:00
Chris Lattner
064dd4ef95
Rename createSimpleX86RegisterAllocator to createSimpleRegisterAllocator.
...
Remvoe some dead code
llvm-svn: 5070
2002-12-16 14:37:00 +00:00
Brian Gaeke
e4da1d5de6
brg
...
Fix some bugs in use of MBB vs. BB and iterators that are invalidated before
we use them.
Reference targetClass by enum name, not by number.
llvm-svn: 5069
2002-12-16 04:23:29 +00:00
Vikram S. Adve
f8f55b5549
Use -Wl,-x instead of -s: it is more portable, and in particular,
...
is needed on BSD (MacOS).
Also, use -Ldir instead of -L dir on the link line. Same reason...
llvm-svn: 5068
2002-12-16 01:31:18 +00:00