Chris Lattner
13c14c20ee
Provide const version of function with the name the other will be eventually renamed to
...
llvm-svn: 1241
2001-11-10 06:48:14 +00:00
Chris Lattner
2549cbf978
Refactor some functionality to expose more useful stuff
...
llvm-svn: 1240
2001-11-10 06:47:45 +00:00
Vikram S. Adve
ca73b36000
Several bug fixes in printing constants, particularly with unsized
...
arrays and multi-dimensional arrays.
llvm-svn: 1239
2001-11-10 02:03:06 +00:00
Vikram S. Adve
cbc2cec180
Must generate an instruction for GetElementPtr if single user is not
...
a memory instruction!
llvm-svn: 1238
2001-11-10 01:05:26 +00:00
Ruchira Sasanka
e98f033070
Disabled some debuggin messages
...
llvm-svn: 1237
2001-11-10 00:26:55 +00:00
Ruchira Sasanka
699d104906
Coalesing bug fix - now checks for the same regType instead of the same
...
regClass since FP class has two reg Types.
llvm-svn: 1236
2001-11-10 00:20:24 +00:00
Ruchira Sasanka
c32ebd1a4e
No major change
...
llvm-svn: 1235
2001-11-09 23:49:42 +00:00
Ruchira Sasanka
a4a64f3755
Added code for correct reordering of call arguments
...
llvm-svn: 1234
2001-11-09 23:49:14 +00:00
Chris Lattner
3659e104ec
Add hooks for the FindUsedTypes pass
...
llvm-svn: 1233
2001-11-09 05:27:34 +00:00
Chris Lattner
37955a1d28
New pass to find types in use by a program
...
llvm-svn: 1232
2001-11-09 05:27:21 +00:00
Chris Lattner
41baa6823a
New pass to figure out what types are in use by a program
...
llvm-svn: 1231
2001-11-09 05:27:10 +00:00
Vikram S. Adve
23c29608c8
Added function LL__main.
...
llvm-svn: 1230
2001-11-09 02:21:38 +00:00
Vikram S. Adve
68306457ae
Added class MachineCacheInfo.
...
llvm-svn: 1229
2001-11-09 02:20:18 +00:00
Vikram S. Adve
6c5f14ebbc
Add support to print constant arrays and structures.
...
Align data larger than an L1 cache line on L1 cache line boundary.
llvm-svn: 1228
2001-11-09 02:19:29 +00:00
Vikram S. Adve
91f30ac019
Do the same for float->int that we did for int->float earlier.
...
Also check IsPointerType() in addition to IsIntegral() in several places.
llvm-svn: 1227
2001-11-09 02:18:16 +00:00
Vikram S. Adve
61173418a7
Added function UltraSparcInstrInfo::CreateCodeToCopyFloatToInt.
...
llvm-svn: 1226
2001-11-09 02:16:40 +00:00
Vikram S. Adve
8766f0ad37
Added class UltraSparcCacheInfo.
...
llvm-svn: 1225
2001-11-09 02:16:04 +00:00
Vikram S. Adve
1b7faa892c
Bug fix: Need to include the stack offset "bias" in assembly code itself.
...
Added class UltraSparcCacheInfo.
Added function to convert float to int by copying via memory.
llvm-svn: 1224
2001-11-09 02:15:52 +00:00
Vikram S. Adve
cc746868d7
Use node->getOpCode() instead of node->getMachineInstr()->getOpCode().
...
Much nicer.
llvm-svn: 1223
2001-11-09 02:14:20 +00:00
Vikram S. Adve
1639b0edef
Cache parameters for target machine.
...
llvm-svn: 1222
2001-11-09 02:11:25 +00:00
Vikram S. Adve
440465ad0e
Added class MachineCacheInfo.
...
Also added function to convert float to int by copying via memory.
llvm-svn: 1221
2001-11-09 02:11:03 +00:00
Chris Lattner
de13795a04
Remove false optimization that basically broke everything
...
llvm-svn: 1219
2001-11-09 01:08:10 +00:00
Chris Lattner
7969ed3025
* Add better caching of data to avoid silly recusions
...
* Only check to see if uses of instructions can be converted for expressions... so we don't look at all of the uses of a constant. This was making the code unnecessarily conservative
llvm-svn: 1218
2001-11-08 22:06:31 +00:00
Chris Lattner
d0f1f10bec
Add method decl
...
llvm-svn: 1217
2001-11-08 20:55:05 +00:00
Chris Lattner
77d6db28d3
Remove unneeded forward decl
...
llvm-svn: 1216
2001-11-08 20:54:51 +00:00
Chris Lattner
fdc70e08d0
Improve raising significantly
...
llvm-svn: 1214
2001-11-08 20:19:56 +00:00
Chris Lattner
41f173e9d0
Print the method that makes an instruction invalid
...
llvm-svn: 1213
2001-11-08 19:29:51 +00:00
Ruchira Sasanka
5ebbfbdd2e
corrected insertCode4Spilled ... bug.
...
llvm-svn: 1212
2001-11-08 19:11:30 +00:00
Vikram S. Adve
588c8a623a
Eliminate cleaning step for individual %.bc files created by our gcc.
...
llvm-svn: 1211
2001-11-08 18:42:08 +00:00
Vikram S. Adve
6894dc91f5
Took out .clean.bc target.
...
llvm-svn: 1210
2001-11-08 18:25:05 +00:00
Vikram S. Adve
1403a726ac
Run cleaning pass only when linking multiple files.
...
llvm-svn: 1209
2001-11-08 18:14:20 +00:00
Vikram S. Adve
4a979f9321
Add cleaning pass after linking.
...
llvm-svn: 1208
2001-11-08 18:13:17 +00:00
Ruchira Sasanka
1f95b36e06
Uncommented LR spill code insertion
...
llvm-svn: 1207
2001-11-08 16:43:25 +00:00
Vikram S. Adve
2d86468029
Keep *.s files while we're debugging the native code.
...
Also, fix rule for $(LLCLIBS).
llvm-svn: 1206
2001-11-08 14:31:05 +00:00
Vikram S. Adve
9073d4427a
Bug fix: need to use .reserve for uninitialized data.
...
llvm-svn: 1205
2001-11-08 14:29:57 +00:00
Vikram S. Adve
9d78f2d0e6
Add rule for %.clean.bc.
...
llvm-svn: 1204
2001-11-08 05:28:08 +00:00
Vikram S. Adve
a0da8fc9c5
Bug fix: cannot modify Phi operands while iterating over them!
...
llvm-svn: 1203
2001-11-08 05:25:33 +00:00
Vikram S. Adve
8e3065c528
Add handle to object MachineFrameInfo.
...
llvm-svn: 1202
2001-11-08 05:23:45 +00:00
Vikram S. Adve
a63363151d
Include handle to TargetMachine in each Machine...Info class.
...
llvm-svn: 1201
2001-11-08 05:22:43 +00:00
Vikram S. Adve
45b91e38e5
Add method CreateCodeToCopyIntToFloat.
...
Include handle to TargetMachine in each Machine...Info object.
llvm-svn: 1200
2001-11-08 05:22:15 +00:00
Vikram S. Adve
841ffd6a44
Major change to how defs are found when adding dependences (they
...
are now found as part of the initial walk of the machine code).
Also memory load/store instructions can be generated for non-memory
LLVM instructions, which wasn't handled before. It is now.
llvm-svn: 1199
2001-11-08 05:20:23 +00:00
Vikram S. Adve
149bd3837d
MachineCodeForMethod is now an annotation on class Method.
...
llvm-svn: 1198
2001-11-08 05:18:18 +00:00
Vikram S. Adve
2bb61e90a3
Add handle to TargetMachine object in all Machine...Info classes.
...
llvm-svn: 1197
2001-11-08 05:15:08 +00:00
Vikram S. Adve
347a3cab9e
Added support for bitwise logical operators. Use different labels for
...
for these than for boolean logicals to avoid making Burg diverge.
See Burg manual for more information.
llvm-svn: 1196
2001-11-08 05:14:02 +00:00
Vikram S. Adve
ef146ce336
Fixed function getEscapedString to follow the Sparc assembly rules
...
for symbol names! (And renamed it to getValidSymbolName).
Fixed format for float and other constants.
llvm-svn: 1195
2001-11-08 05:12:37 +00:00
Vikram S. Adve
a7383895cd
Fix bugs in FITOS/D instruction generation.
...
The space for optional args in the stack frame is now being computed,
so finish the code generation for the variable `alloca'.
Finally, made a major overhaul of how stack frame is managed.
llvm-svn: 1194
2001-11-08 05:04:09 +00:00
Vikram S. Adve
61f4694d6e
Added new function UltraSparcInstrInfo::CreateCodeToCopyIntToFloat.
...
Also major overhaul of how stack frame is managed.
llvm-svn: 1193
2001-11-08 04:57:53 +00:00
Vikram S. Adve
77dca53970
Removed class RegStackOffsets and used class MachineCodeForMethod
...
directly to manage stack frame.
llvm-svn: 1192
2001-11-08 04:56:41 +00:00
Vikram S. Adve
1cc04e4908
Use MachineFrameInfo as base class of UltraSparcFrameInfo, and made
...
a major overhaul of this class and how stack frames are managed.
llvm-svn: 1191
2001-11-08 04:55:13 +00:00
Vikram S. Adve
d985dbcdd8
Machine-independent interface to target's stack frame layout parameters.
...
llvm-svn: 1190
2001-11-08 04:52:27 +00:00