Ruchira Sasanka
f6dfca1395
fixed setUsedRegAtMI
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1317 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 15:00:53 +00:00
Vikram S. Adve
2ed5ccd512
Print incoming arguments and return values.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1315 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 15:00:16 +00:00
Vikram S. Adve
b9959d8058
Fix int->float conversion.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1314 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 14:59:56 +00:00
Chris Lattner
430aa9ec1c
-cleangcc pass now remove type names that are never referenced and type names for pointers to primitive types.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1312 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 04:34:46 +00:00
Ruchira Sasanka
20ac79e329
Changed phi elimination code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1311 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-15 00:27:14 +00:00
Vikram S. Adve
0e7c737f6e
Fix cute little bug that was causing the last
...
structure offset to be ignored in computing an offset!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1310 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 21:24:44 +00:00
Ruchira Sasanka
8d24337eea
Small changed to printing a machine operand - It the operand is a def, it prints
...
a star after it - only for debugging
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1309 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 20:05:23 +00:00
Vikram S. Adve
ecd5813639
Don't assume constant operand can only be in position 1!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1308 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 18:49:45 +00:00
Vikram S. Adve
4c5fe2d3ed
Add function returning which operand holds immediate constant
...
for a given opcode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1307 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 18:48:36 +00:00
Vikram S. Adve
9e29f78029
Idiotic error in last fix.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1306 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 17:55:02 +00:00
Vikram S. Adve
c811745156
Don't need to load a NULL pointer constant from memory!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1305 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 17:24:49 +00:00
Vikram S. Adve
c9c6aa0445
Change latency of SETX to improve schedule -- just a hack.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1304 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 15:54:44 +00:00
Ruchira Sasanka
cbddf49665
Added support method for setting interference for pseudo instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1303 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 15:37:13 +00:00
Ruchira Sasanka
d63aaaaabe
Added M_PSEUDO_FLAG for SETX .. instr
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1301 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 15:35:13 +00:00
Ruchira Sasanka
22ccb1b905
Added interference for args in pseudo instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1300 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 15:33:58 +00:00
Chris Lattner
3bcce72f95
Rename cruft
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1299 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 11:28:18 +00:00
Chris Lattner
65ea171409
Remove much cruft from the MemAccessInst instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1298 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 11:27:58 +00:00
Chris Lattner
d5b48ca422
Better heuristics for handling arrays
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1296 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 11:02:49 +00:00
Ruchira Sasanka
84dce16fb1
commented out lines printing code after scheduling
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1295 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 23:12:53 +00:00
Ruchira Sasanka
f221a2e0a8
Fixed a bug concering LR spilling. Earlier, added spilled code was not inserted
...
into the instruction stream correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1294 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 23:09:30 +00:00
Ruchira Sasanka
5f98aca57c
Changed checking for invalid register number - earlier it was uisng a contant
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1293 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 23:08:19 +00:00
Chris Lattner
1b600144bd
Implement some more rand functions for em3d benchmark
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1291 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 05:46:08 +00:00
Chris Lattner
ce22ec1251
* Change ExpressionConvertableToType to more closely match map behavior of
...
ConvertExpressionToType
* Make ValueHandle's remove instruction from maps when they are deleted so that
no false map hits occur if a subsequent instruction is allocated to the same
space in memory. This was a VERY VERY VERY EVIL NASTY BUG to track down. :-P
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1288 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 05:01:36 +00:00
Chris Lattner
e72c557dff
Minor style cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1287 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 04:59:58 +00:00
Chris Lattner
3d775c3f39
Avoid assertion failure when taking size of unsized array. Todo item herE
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1286 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-13 04:59:41 +00:00
Vikram S. Adve
e85f2332db
Do the same for allocating spills to get their alignment right too.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1285 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 23:40:22 +00:00
Vikram S. Adve
00521d79bf
When allocating space on stack for writing a register,
...
use the size of the register, not the size of the Value type,
to get the right alignment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1284 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 23:26:35 +00:00
Vikram S. Adve
e492c9d4d1
Bug fix in offset alignment computations: don't subtract the padding
...
value from size *before* subtracting size from offset!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1283 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 23:26:23 +00:00
Chris Lattner
e6e8b28a57
Remove debug info :(
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1280 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 21:52:57 +00:00
Chris Lattner
77a316ad2b
Fix bug in new assertion
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1279 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 21:48:38 +00:00
Ruchira Sasanka
9d47866497
Fixed a bug with pervious ColorCallArg
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1278 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:54:19 +00:00
Ruchira Sasanka
91014f6b0c
Canged ColorCallArg so that when a call arg is directly pushed on to stack
...
for argument passing, that instruction is directly added to the InstructionsBefore
set of the called machine instruction - i.e., it is not reordered.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1277 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:31:47 +00:00
Chris Lattner
27afeb2be8
Add an assertion check
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1276 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:30:32 +00:00
Chris Lattner
b7325433aa
I don't know what I was thinking
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1275 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:30:12 +00:00
Chris Lattner
84efe09e3d
Print percentages for profiling info better
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1274 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:13:14 +00:00
Chris Lattner
fd79ab5088
Fix minor bug
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1273 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 20:13:04 +00:00
Ruchira Sasanka
7130938f94
For phi elimination, now we are generating only one instruction
...
using cpValue2Value instead of
passing vector to createCopyInstructionByType.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1272 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 19:42:27 +00:00
Ruchira Sasanka
061b8edb27
Changed insert instructions only for CONSTANTS - back to original
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1271 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 19:32:04 +00:00
Vikram S. Adve
3438b21ebd
Disable use of the Phi machine instruction which is no longer needed
...
for register allocation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1270 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 18:54:11 +00:00
Vikram S. Adve
200a435966
Eliminate most uses of the machine instruction vector for each LLVM instr,
...
since some m. instr. may be generated by LLVM instrs. in other blocks.
Handle non-SSA (anti and output) edges and true edges uniformly by
working with machine instructions alone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1269 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 18:53:43 +00:00
Chris Lattner
a95c69997f
Print profile info if exit() is called
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1268 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 16:28:48 +00:00
Chris Lattner
e240906471
Hack a structure profiling option together
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1267 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 16:19:45 +00:00
Ruchira Sasanka
67a463ac04
Added phi elimination code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1265 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 14:45:33 +00:00
Ruchira Sasanka
b2490fc4fb
Added phi elimination code - not final
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1264 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 14:44:50 +00:00
Vikram S. Adve
d9beb975f2
Improved printing routines.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1263 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 14:19:47 +00:00
Vikram S. Adve
af00d485a4
Major improvement to how nodes are built for a BB.
...
LLVM instruction is no longer recorded in each node, but BB is.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1262 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 14:18:01 +00:00
Vikram S. Adve
5567e942c0
Adjust all stack variable offsets to be aligned by size.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1261 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 05:17:23 +00:00
Vikram S. Adve
fd9b7dcbf5
Fix dumb bug in alignment adjustment code!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1260 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-12 05:16:39 +00:00
Vikram S. Adve
998cf0d25f
Fix bogus code that was eliminating needed args.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1259 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 23:11:36 +00:00
Ruchira Sasanka
c56e5c1485
Fixed FP and SP usage. SP for outgoing args - for everything else FP
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1258 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 22:37:51 +00:00
Ruchira Sasanka
6beb013c37
cahnged StackPointer accesses to FramePointer
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1257 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 21:49:37 +00:00
Vikram S. Adve
f1a0a10813
Fix errors in computing downgrowing offsets, and in
...
computing size of extra outgoing args.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1256 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 21:23:33 +00:00
Vikram S. Adve
5a81692f47
Down-growing offsets from FP should start at 0, not -1.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1255 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 21:22:11 +00:00
Vikram S. Adve
5b43af962b
Only add true dep. edges from an earlier to a later instruction.
...
This wasn't a problem until we started putting copies for Phi values
that produced cycles in the SchedGraph!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1254 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-11 01:23:27 +00:00
Ruchira Sasanka
65480b75af
Changed code to ignore Phi Nodes in PhyRegAlloc
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1253 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 21:21:36 +00:00
Ruchira Sasanka
ae4bcd7566
Corrected reodering code for instructions inserted before calls
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1252 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 21:20:43 +00:00
Chris Lattner
7546c21ae1
Initail checking of structure swapper
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1248 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 07:28:25 +00:00
Chris Lattner
bff7c3a898
Initial checkin of structure mutator
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1246 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 07:26:31 +00:00
Vikram S. Adve
2144722389
Several bug fixes in printing constants, particularly with unsized
...
arrays and multi-dimensional arrays.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1239 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 02:03:06 +00:00
Vikram S. Adve
671b16d055
Must generate an instruction for GetElementPtr if single user is not
...
a memory instruction!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1238 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 01:05:26 +00:00
Ruchira Sasanka
aa12a78a36
Disabled some debuggin messages
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1237 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 00:26:55 +00:00
Ruchira Sasanka
efaf9be8a4
Coalesing bug fix - now checks for the same regType instead of the same
...
regClass since FP class has two reg Types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1236 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-10 00:20:24 +00:00
Ruchira Sasanka
ad1400924d
No major change
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1235 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 23:49:42 +00:00
Ruchira Sasanka
868cf82c68
Added code for correct reordering of call arguments
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1234 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 23:49:14 +00:00
Chris Lattner
b61107aa51
New pass to find types in use by a program
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1232 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 05:27:21 +00:00
Vikram S. Adve
4a48c339d6
Added class MachineCacheInfo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1229 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 02:20:18 +00:00
Vikram S. Adve
915b58d2ed
Add support to print constant arrays and structures.
...
Align data larger than an L1 cache line on L1 cache line boundary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1228 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 02:19:29 +00:00
Vikram S. Adve
6ad7c553fd
Do the same for float->int that we did for int->float earlier.
...
Also check IsPointerType() in addition to IsIntegral() in several places.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1227 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 02:18:16 +00:00
Vikram S. Adve
5b6082eccf
Added function UltraSparcInstrInfo::CreateCodeToCopyFloatToInt.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1226 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 02:16:40 +00:00
Vikram S. Adve
b7048409ae
Added class UltraSparcCacheInfo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1225 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 02:16:04 +00:00
Vikram S. Adve
5afff3b917
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1224 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 02:15:52 +00:00
Vikram S. Adve
fb1a6c87d6
Use node->getOpCode() instead of node->getMachineInstr()->getOpCode().
...
Much nicer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1223 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 02:14:20 +00:00
Chris Lattner
cf1ae7cea1
Remove false optimization that basically broke everything
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1219 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-09 01:08:10 +00:00
Chris Lattner
0bf7bad0c3
* 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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1218 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 22:06:31 +00:00
Chris Lattner
00d91c6cd8
Add method decl
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1217 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 20:55:05 +00:00
Chris Lattner
c0b90e7dd5
Improve raising significantly
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1214 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 20:19:56 +00:00
Chris Lattner
837bb2ce96
Print the method that makes an instruction invalid
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1213 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 19:29:51 +00:00
Ruchira Sasanka
226f1f0b22
corrected insertCode4Spilled ... bug.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1212 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 19:11:30 +00:00
Ruchira Sasanka
5a61d85f97
Uncommented LR spill code insertion
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1207 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 16:43:25 +00:00
Vikram S. Adve
ffbba0f325
Bug fix: need to use .reserve for uninitialized data.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1205 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 14:29:57 +00:00
Vikram S. Adve
ddf5ff6f8c
Bug fix: cannot modify Phi operands while iterating over them!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1203 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 05:25:33 +00:00
Vikram S. Adve
e64574ce71
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1199 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 05:20:23 +00:00
Vikram S. Adve
af1d2c80e0
MachineCodeForMethod is now an annotation on class Method.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1198 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 05:18:18 +00:00
Vikram S. Adve
7a2f1e7c5d
Add handle to TargetMachine object in all Machine...Info classes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1197 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 05:15:08 +00:00
Vikram S. Adve
3e95814685
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1196 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 05:14:02 +00:00
Vikram S. Adve
29ff873c6c
Fixed function getEscapedString to follow the Sparc assembly rules
...
for symbol names! (And renamed it to getValidSymbolName).
Fixed format for float and other constants.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1195 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 05:12:37 +00:00
Vikram S. Adve
ff5a09ee44
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1194 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 05:04:09 +00:00
Vikram S. Adve
b9c3863e08
Added new function UltraSparcInstrInfo::CreateCodeToCopyIntToFloat.
...
Also major overhaul of how stack frame is managed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1193 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 04:57:53 +00:00
Vikram S. Adve
1c0fba6e9c
Removed class RegStackOffsets and used class MachineCodeForMethod
...
directly to manage stack frame.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1192 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 04:56:41 +00:00
Vikram S. Adve
7f37fe5187
Use MachineFrameInfo as base class of UltraSparcFrameInfo, and made
...
a major overhaul of this class and how stack frames are managed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1191 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 04:55:13 +00:00
Vikram S. Adve
38f5d46aff
Added two minor methods.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1187 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 04:49:52 +00:00
Vikram S. Adve
12af164c87
Removed class RegStackOffsets and used class MachineCodeForMethod
...
directly to manage stack frame.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1186 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 04:48:50 +00:00
Vikram S. Adve
be49526193
Major overhaul of stack frame management.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1185 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 04:47:06 +00:00
Vikram S. Adve
4dea947926
Removed MachineCodeForMethod object and made it an annotation.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1183 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-08 04:38:58 +00:00
Chris Lattner
2618fba8e3
Initial checkin of pointer safety checker
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1181 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-07 21:16:12 +00:00
Chris Lattner
070cf5e47e
Correct problem that allows indirect function calls
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1179 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-07 20:12:30 +00:00
Chris Lattner
ea38c0e85c
* 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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1177 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-07 19:46:27 +00:00
Chris Lattner
8e5c0b473a
Killing warnings
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1175 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-07 14:01:59 +00:00
Chris Lattner
161aa5ad93
Add #includes to enable buiding in Release mode
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1174 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-07 13:49:45 +00:00
Chris Lattner
6dad506d81
Squelch warnings about not returning a value
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1173 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-07 13:49:12 +00:00