Chris Lattner
6c4681ca28
Fix minor bug for shifts
...
llvm-svn: 1160
2001-11-06 21:51:48 +00:00
Chris Lattner
2f2d947f73
Print out the abridged form of the call instruction.
...
llvm-svn: 1159
2001-11-06 21:28:12 +00:00
Chris Lattner
82b7872326
Build .bc from .c better.
...
llvm-svn: 1158
2001-11-06 20:44:15 +00:00
Chris Lattner
21af446166
Don't forget to make the clean version.
...
llvm-svn: 1157
2001-11-06 20:23:50 +00:00
Vikram S. Adve
096a76aa92
Really fix Makefile to compile individual tests and Olden codes.
...
by using a better naming scheme.
llvm-svn: 1156
2001-11-06 17:09:49 +00:00
Vikram S. Adve
2f4b825ca1
Moved *.c files into subdirectory TestSources to avoid overwriting
...
corresponding *.ll files.
llvm-svn: 1155
2001-11-06 17:06:06 +00:00
Ruchira Sasanka
074d52d60d
Fixed bug - added code in pushUnconstrainedIGNodes() to check whether a node
...
is already pushed to stack by a previous call to the same method.
llvm-svn: 1154
2001-11-06 15:25:38 +00:00
Chris Lattner
0c993260fe
Reorder paramters to make the command line more easily modifiable
...
llvm-svn: 1153
2001-11-06 08:34:56 +00:00
Chris Lattner
0136101e37
Fix bugs
...
llvm-svn: 1152
2001-11-06 08:34:29 +00:00
Chris Lattner
4031cdde57
Fix many bugs. Implement PHI transforms & other cycles
...
llvm-svn: 1151
2001-11-06 08:34:17 +00:00
Chris Lattner
9d3292d327
Give me PHI's space back
...
llvm-svn: 1150
2001-11-06 08:33:46 +00:00
Vikram S. Adve
928833ecea
Bug fix: uninitialized variable.
...
llvm-svn: 1147
2001-11-06 05:11:05 +00:00
Vikram S. Adve
f5b4f47cff
Bug fix: Printing AdIBef and AdIAft outside the scope where they
...
were declared, and in some cases when they were unintialized.
llvm-svn: 1146
2001-11-06 05:01:54 +00:00
Chris Lattner
29644b3849
Print PHI nodes with zero operands even if they are illegal
...
llvm-svn: 1145
2001-11-06 01:48:45 +00:00
Chris Lattner
710c3861b5
Fix bug with ADD nodes and malloc promotion
...
llvm-svn: 1144
2001-11-05 21:13:30 +00:00
Chris Lattner
7bb67c8ab8
Fix makefile to compile olden and main benchmarks
...
llvm-svn: 1142
2001-11-05 19:43:24 +00:00
Chris Lattner
7e89a616e6
Don't print spurious linking warnings about methods that are never used.
...
Cleanup ExprTypeConvert a bit.
llvm-svn: 1141
2001-11-05 19:43:10 +00:00
Chris Lattner
0ecba60d26
Use the expression map correctly.
...
llvm-svn: 1140
2001-11-05 18:30:53 +00:00
Chris Lattner
ad480c5a34
Make the olden benchmarks compile again
...
llvm-svn: 1139
2001-11-05 18:25:37 +00:00
Vikram S. Adve
596721384b
Modified graph construction to use one pass to find all defs.
...
Avoids having to handle some special cases that cause complex interactions
with instr. selection.
llvm-svn: 1138
2001-11-05 04:04:23 +00:00
Vikram S. Adve
59a13288a6
Make reg. numbers signed ints.
...
llvm-svn: 1137
2001-11-05 03:56:02 +00:00
Vikram S. Adve
6cb546970f
Put it back!
...
llvm-svn: 1136
2001-11-05 00:48:27 +00:00
Vikram S. Adve
daa6058a13
Removed by mistake; will add it back immediately.
...
llvm-svn: 1135
2001-11-05 00:48:05 +00:00
Vikram S. Adve
d3be60db35
Make gcc generate assembly files (%.ll) until Chris has a stable
...
version of his gccas. Plus another dumb bug fix (the bug, not the fix).
llvm-svn: 1134
2001-11-05 00:35:56 +00:00
Vikram S. Adve
4d04e00072
Delete rule to disassemble %.bc -- need to make it effective only when
...
%.ll is not a pre-existing file.
llvm-svn: 1133
2001-11-05 00:23:25 +00:00
Vikram S. Adve
491d8dde35
Replaced another HERE.
...
llvm-svn: 1132
2001-11-05 00:22:16 +00:00
Vikram S. Adve
e943db9be9
Put common rules for compiling programs into Makefile.target.
...
llvm-svn: 1130
2001-11-05 00:18:30 +00:00
Chris Lattner
db750679a3
New file for expression tree conversion
...
llvm-svn: 1128
2001-11-04 23:24:20 +00:00
Chris Lattner
3084cb65ff
Refactor code to share stuff
...
llvm-svn: 1127
2001-11-04 23:24:06 +00:00
Chris Lattner
cb3da314d9
* Relax restriction that prevented malloc promotion in certain cases
...
llvm-svn: 1125
2001-11-04 22:11:10 +00:00
Vikram S. Adve
80cf60687d
Generate code for Rem instruction.
...
llvm-svn: 1124
2001-11-04 21:59:14 +00:00
Chris Lattner
dc194d54f9
Fix obscure nasty bug with bytecode writing that could cause the last byte to be dropped.
...
llvm-svn: 1123
2001-11-04 21:32:41 +00:00
Chris Lattner
36c5a79153
* Disable debug output
...
* fix minor bug with taking datasize of unsized array type
* Insert code to support speculative changes later
llvm-svn: 1122
2001-11-04 21:32:11 +00:00
Chris Lattner
40a2d9076b
Convert backward conversion of expression trees into a new more powerful bidirectional approach. Add transforms for more instructions.
...
llvm-svn: 1121
2001-11-04 20:21:12 +00:00
Vikram S. Adve
ea5d1f5db8
Fixed instruction information for RDCCR and WRCCR.
...
Fixed selection to create a TmpInstruction for each integer CC register
(since it is an implicit side-effect, unlike FP CC registers which are
explicit operands).
llvm-svn: 1120
2001-11-04 19:34:49 +00:00
Chris Lattner
33d9cb9903
Minor method rename
...
llvm-svn: 1119
2001-11-04 08:08:34 +00:00
Chris Lattner
f00563d39d
Add transformations for Load and GetElementPtr. Fix broken transform with shr.
...
llvm-svn: 1118
2001-11-04 07:42:17 +00:00
Chris Lattner
eb7b620d58
Fix cast instructions that end up in bad places in GCC output
...
llvm-svn: 1117
2001-11-04 07:40:51 +00:00
Ruchira Sasanka
471babe2d2
Added an assertion since it seems like AdjList returns an errornous size in method
...
IGNode::pushOnStack().
llvm-svn: 1116
2001-11-03 22:01:09 +00:00
Chris Lattner
033324fc0c
Avoid making a broken transformation!
...
llvm-svn: 1115
2001-11-03 21:30:22 +00:00
Chris Lattner
ec83fc091e
Add new cleanup pass:
...
// 1. PHI nodes with multiple entries for the same predecessor. GCC sometimes
// generates code that looks like this:
//
// bb7: br bool %cond1004, label %bb8, label %bb8
// bb8: %reg119 = phi uint [ 0, %bb7 ], [ 1, %bb7 ]
//
// which is completely illegal LLVM code. To compensate for this, we insert
// an extra basic block, and convert the code to look like this:
//
// bb7: br bool %cond1004, label %bbX, label %bb8
// bbX: br label bb8
// bb8: %reg119 = phi uint [ 0, %bbX ], [ 1, %bb7 ]
//
llvm-svn: 1114
2001-11-03 21:08:59 +00:00
Chris Lattner
34f8595c0b
Add a helper function to PHI node
...
llvm-svn: 1113
2001-11-03 21:08:00 +00:00
Ruchira Sasanka
51fc1c2d72
Added support for correct spilling of %ccr
...
llvm-svn: 1112
2001-11-03 20:41:22 +00:00
Ruchira Sasanka
9d8950d240
Added code to support correct saving of %ccr across calls
...
llvm-svn: 1111
2001-11-03 19:59:59 +00:00
Chris Lattner
784c623efb
* Export method to merge identically named methods
...
* Add code to fix PHI nodes that are missing arguments. These PHI nodes can
be generated by GCC if there is an uninitialized variable flowing into a merge
point. For example:
int foo(int y) {
int X;
if (y) X = 1;
return X;
}
llvm-svn: 1110
2001-11-03 19:51:56 +00:00
Chris Lattner
cf5befef63
Expose method to merge identically named methods
...
llvm-svn: 1109
2001-11-03 19:49:54 +00:00
Ruchira Sasanka
ca632ed71a
Arranged stack frame - needs furhter organization
...
llvm-svn: 1108
2001-11-03 17:14:44 +00:00
Ruchira Sasanka
97b93aea81
Moved InsertCallerSaveInstr to the SparcRegInfo.cpp and made machine independent
...
llvm-svn: 1107
2001-11-03 17:14:13 +00:00
Ruchira Sasanka
b7a397253f
Arranged stack frame - needs furhter organization
...
Moved InsertCallerSaveInstr to the SparcRegInfo.cpp
llvm-svn: 1106
2001-11-03 17:13:27 +00:00
Ruchira Sasanka
629a15247a
Commented out code so that copies are inserted for all phi args
...
CahedCopyMap was disabled to insert phi elimination code for all phi args
llvm-svn: 1105
2001-11-03 17:09:59 +00:00