1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 04:02:41 +01:00
Commit Graph

1248 Commits

Author SHA1 Message Date
Vikram S. Adve
af9c0a766a 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.

llvm-svn: 1284
2001-11-12 23:26:35 +00:00
Vikram S. Adve
0bd498dd38 Bug fix in offset alignment computations: don't subtract the padding
value from size *before* subtracting size from offset!

llvm-svn: 1283
2001-11-12 23:26:23 +00:00
Vikram S. Adve
a503b77130 Distinguish LOCAL_LDFLAGS and LOCAL_LCFLAGS from LOCAL_CFLAGS.
In particular, never put -lm in LOCAL_[L]CFLAGS because it
disables an implicit rule that has LOCAL_CFLAGS as a prerequisite.

llvm-svn: 1281
2001-11-12 23:10:29 +00:00
Chris Lattner
7d0854c71e Remove debug info :(
llvm-svn: 1280
2001-11-12 21:52:57 +00:00
Chris Lattner
a6ada3716c Fix bug in new assertion
llvm-svn: 1279
2001-11-12 21:48:38 +00:00
Ruchira Sasanka
3484bbb97c Fixed a bug with pervious ColorCallArg
llvm-svn: 1278
2001-11-12 20:54:19 +00:00
Ruchira Sasanka
67478b7484 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.

llvm-svn: 1277
2001-11-12 20:31:47 +00:00
Chris Lattner
3dc54c19b3 Add an assertion check
llvm-svn: 1276
2001-11-12 20:30:32 +00:00
Chris Lattner
2dce653a78 I don't know what I was thinking
llvm-svn: 1275
2001-11-12 20:30:12 +00:00
Chris Lattner
ab0f8a05f6 Print percentages for profiling info better
llvm-svn: 1274
2001-11-12 20:13:14 +00:00
Chris Lattner
184137a419 Fix minor bug
llvm-svn: 1273
2001-11-12 20:13:04 +00:00
Ruchira Sasanka
d6c5e0f535 For phi elimination, now we are generating only one instruction
using cpValue2Value instead of
passing vector to createCopyInstructionByType.

llvm-svn: 1272
2001-11-12 19:42:27 +00:00
Ruchira Sasanka
3e193c7709 Changed insert instructions only for CONSTANTS - back to original
llvm-svn: 1271
2001-11-12 19:32:04 +00:00
Vikram S. Adve
a3f0115c71 Disable use of the Phi machine instruction which is no longer needed
for register allocation.

llvm-svn: 1270
2001-11-12 18:54:11 +00:00
Vikram S. Adve
624846d3fd 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.

llvm-svn: 1269
2001-11-12 18:53:43 +00:00
Chris Lattner
29ad087a83 Print profile info if exit() is called
llvm-svn: 1268
2001-11-12 16:28:48 +00:00
Chris Lattner
28afda8ca4 Hack a structure profiling option together
llvm-svn: 1267
2001-11-12 16:19:45 +00:00
Ruchira Sasanka
50880b3791 Changed for adding Phi Elimination code
llvm-svn: 1266
2001-11-12 14:46:00 +00:00
Ruchira Sasanka
426d6e2b10 Added phi elimination code
llvm-svn: 1265
2001-11-12 14:45:33 +00:00
Ruchira Sasanka
9b7638e108 Added phi elimination code - not final
llvm-svn: 1264
2001-11-12 14:44:50 +00:00
Vikram S. Adve
1fc185b8e7 Improved printing routines.
llvm-svn: 1263
2001-11-12 14:19:47 +00:00
Vikram S. Adve
3a5bf13976 Major improvement to how nodes are built for a BB.
LLVM instruction is no longer recorded in each node, but BB is.

llvm-svn: 1262
2001-11-12 14:18:01 +00:00
Vikram S. Adve
31372d2b26 Adjust all stack variable offsets to be aligned by size.
llvm-svn: 1261
2001-11-12 05:17:23 +00:00
Vikram S. Adve
bb424a4fe1 Fix dumb bug in alignment adjustment code!
llvm-svn: 1260
2001-11-12 05:16:39 +00:00
Vikram S. Adve
2b5e92123c Fix bogus code that was eliminating needed args.
llvm-svn: 1259
2001-11-11 23:11:36 +00:00
Ruchira Sasanka
661bf856f5 Fixed FP and SP usage. SP for outgoing args - for everything else FP
llvm-svn: 1258
2001-11-11 22:37:51 +00:00
Ruchira Sasanka
9d20df621c cahnged StackPointer accesses to FramePointer
llvm-svn: 1257
2001-11-11 21:49:37 +00:00
Vikram S. Adve
51265e7072 Fix errors in computing downgrowing offsets, and in
computing size of extra outgoing args.

llvm-svn: 1256
2001-11-11 21:23:33 +00:00
Vikram S. Adve
b98d36462b Down-growing offsets from FP should start at 0, not -1.
llvm-svn: 1255
2001-11-11 21:22:11 +00:00
Vikram S. Adve
0b0bd6e749 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!

llvm-svn: 1254
2001-11-11 01:23:27 +00:00
Ruchira Sasanka
bf9791fe90 Changed code to ignore Phi Nodes in PhyRegAlloc
llvm-svn: 1253
2001-11-10 21:21:36 +00:00
Ruchira Sasanka
bf341d2d5d Corrected reodering code for instructions inserted before calls
llvm-svn: 1252
2001-11-10 21:20:43 +00:00
Ruchira Sasanka
da9d0c48ba Made isPhi const
llvm-svn: 1251
2001-11-10 20:58:58 +00:00
Vikram S. Adve
c47553b77d Use cc instead of gcc to compile *.native
llvm-svn: 1250
2001-11-10 14:23:54 +00:00
Chris Lattner
053906abc0 Initail checking of structure swapper
llvm-svn: 1248
2001-11-10 07:28:25 +00:00
Chris Lattner
485b4f452a Testcase for structure field reordering
llvm-svn: 1247
2001-11-10 07:26:59 +00:00
Chris Lattner
79fd0836bb Initial checkin of structure mutator
llvm-svn: 1246
2001-11-10 07:26:31 +00:00
Chris Lattner
ad95d27488 Initial checkin of Structure mutator
llvm-svn: 1245
2001-11-10 07:26:22 +00:00
Chris Lattner
6f00b04246 Add hooks to call the new swap structcontents pass
llvm-svn: 1243
2001-11-10 07:16:10 +00:00
Chris Lattner
c9486bac28 add Yet Another Instance of a Static Library
llvm-svn: 1242
2001-11-10 07:15:53 +00:00
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