Vikram S. Adve
7977a283e6
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
0043cc1109
Remove false optimization that basically broke everything
...
llvm-svn: 1219
2001-11-09 01:08:10 +00:00
Chris Lattner
54e9f453c9
* 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
2b48b9694c
Add method decl
...
llvm-svn: 1217
2001-11-08 20:55:05 +00:00
Chris Lattner
2a4e3cfab7
Remove unneeded forward decl
...
llvm-svn: 1216
2001-11-08 20:54:51 +00:00
Chris Lattner
583e95e0b2
Improve raising significantly
...
llvm-svn: 1214
2001-11-08 20:19:56 +00:00
Chris Lattner
cf66422978
Print the method that makes an instruction invalid
...
llvm-svn: 1213
2001-11-08 19:29:51 +00:00
Ruchira Sasanka
dc709780aa
corrected insertCode4Spilled ... bug.
...
llvm-svn: 1212
2001-11-08 19:11:30 +00:00
Vikram S. Adve
b92658976a
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
7048762a3e
Took out .clean.bc target.
...
llvm-svn: 1210
2001-11-08 18:25:05 +00:00
Vikram S. Adve
17bfd13a39
Run cleaning pass only when linking multiple files.
...
llvm-svn: 1209
2001-11-08 18:14:20 +00:00
Vikram S. Adve
04a251d785
Add cleaning pass after linking.
...
llvm-svn: 1208
2001-11-08 18:13:17 +00:00
Ruchira Sasanka
19a5165c29
Uncommented LR spill code insertion
...
llvm-svn: 1207
2001-11-08 16:43:25 +00:00
Vikram S. Adve
7543782956
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
56e61ec517
Bug fix: need to use .reserve for uninitialized data.
...
llvm-svn: 1205
2001-11-08 14:29:57 +00:00
Vikram S. Adve
7a3c4070d6
Add rule for %.clean.bc.
...
llvm-svn: 1204
2001-11-08 05:28:08 +00:00
Vikram S. Adve
3b193679f0
Bug fix: cannot modify Phi operands while iterating over them!
...
llvm-svn: 1203
2001-11-08 05:25:33 +00:00
Vikram S. Adve
e4e91e3835
Add handle to object MachineFrameInfo.
...
llvm-svn: 1202
2001-11-08 05:23:45 +00:00
Vikram S. Adve
e6ecf513a1
Include handle to TargetMachine in each Machine...Info class.
...
llvm-svn: 1201
2001-11-08 05:22:43 +00:00
Vikram S. Adve
06d8c600ea
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
621b90440b
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
80310bba37
MachineCodeForMethod is now an annotation on class Method.
...
llvm-svn: 1198
2001-11-08 05:18:18 +00:00
Vikram S. Adve
c2f8911114
Add handle to TargetMachine object in all Machine...Info classes.
...
llvm-svn: 1197
2001-11-08 05:15:08 +00:00
Vikram S. Adve
81908213ae
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
03f12f521f
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
f889a11590
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
503d3098fa
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
7a1524f971
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
6fcb28924b
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
1ef453c2ff
Machine-independent interface to target's stack frame layout parameters.
...
llvm-svn: 1190
2001-11-08 04:52:27 +00:00
Vikram S. Adve
e316915197
Use different op labels for bitwise logical operations and boolean logical
...
operations in BURG input trees.
llvm-svn: 1189
2001-11-08 04:51:39 +00:00
Vikram S. Adve
70dd1d4ee4
Added a second constructor for and improved class TmpInstruction.
...
llvm-svn: 1188
2001-11-08 04:50:33 +00:00
Vikram S. Adve
bdbb802c2f
Added two minor methods.
...
llvm-svn: 1187
2001-11-08 04:49:52 +00:00
Vikram S. Adve
d9f8598104
Removed class RegStackOffsets and used class MachineCodeForMethod
...
directly to manage stack frame.
llvm-svn: 1186
2001-11-08 04:48:50 +00:00
Vikram S. Adve
c53037205b
Major overhaul of stack frame management.
...
llvm-svn: 1185
2001-11-08 04:47:06 +00:00
Vikram S. Adve
07900bde2d
Old file which was moved to include/llvm/Target some time back.
...
llvm-svn: 1184
2001-11-08 04:46:08 +00:00
Vikram S. Adve
b375b89e00
Removed MachineCodeForMethod object and made it an annotation.
...
llvm-svn: 1183
2001-11-08 04:38:58 +00:00
Chris Lattner
c1c54a2a92
Add analysis pass.
...
llvm-svn: 1182
2001-11-07 21:16:29 +00:00
Chris Lattner
83f1528061
Initial checkin of pointer safety checker
...
llvm-svn: 1181
2001-11-07 21:16:12 +00:00
Chris Lattner
b1f672812b
Correct problem that allows indirect function calls
...
llvm-svn: 1179
2001-11-07 20:12:30 +00:00
Chris Lattner
31e9e4d219
* Switch to operation on pointers with PointerTy more consistently
...
* Fix misspeling
* Catch SIGFPE for traps
* info XXX now prints the raw contents of the GenericValue
* Switch to calloc instead of malloc (temporarily I hope) to bandaid Olden benchmarks
* Implement binary And & Or
* Convert expressions like this:
PointerTy SrcPtr = getOperandValue(I->getPtrOperand(), SF).PointerVal;
to:
GenericValue SRC = getOperandValue(I->getPtrOperand(), SF);
PointerTy SrcPtr = SRC.PointerVal;
because the prior way confuses purify.
* Taint the initial values of the value planes
* Handling 'print bb4' in the interpreter without crashing
* Print nicer stack frames with concise return type
* printf doesn't suck nearly as badly as it used to
llvm-svn: 1177
2001-11-07 19:46:27 +00:00
Chris Lattner
75586e2ace
1. -Winline emits spurious warnings that aren't useful right now
...
2. Fix the "rebuild everything if I change one file" problem
llvm-svn: 1176
2001-11-07 14:50:58 +00:00
Chris Lattner
e147d062fa
Killing warnings
...
llvm-svn: 1175
2001-11-07 14:01:59 +00:00
Chris Lattner
3b7199e36c
Add #includes to enable buiding in Release mode
...
llvm-svn: 1174
2001-11-07 13:49:45 +00:00
Chris Lattner
5e030830a3
Squelch warnings about not returning a value
...
llvm-svn: 1173
2001-11-07 13:49:12 +00:00
Vikram S. Adve
b8157d5a29
Roll back all these changes that have broken Makefile.target again.
...
llvm-svn: 1172
2001-11-07 12:29:40 +00:00
Chris Lattner
28e969d689
Okay, so this is a huge hack. Fixme later
...
llvm-svn: 1171
2001-11-07 05:31:53 +00:00
Chris Lattner
eaec4ede57
*Print Stack traces better.
...
* Use the cache writer for all it's problems.
* print arguments to methods in stack traces.
*Print the current stack from for up/down commands.
llvm-svn: 1170
2001-11-07 05:31:27 +00:00
Chris Lattner
1f01726487
* Use cached writer to speed up printing and get symbolic types more consistently
...
* When a segfault or bus error occurs, stop the program, print a stack trace, and dump the user in the debugger mode
llvm-svn: 1169
2001-11-07 04:23:00 +00:00
Chris Lattner
7db7958bd4
Implement CachedWriter class to allow module level printing of various components very quickly
...
llvm-svn: 1168
2001-11-07 04:21:57 +00:00