Chris Lattner
635d8919a7
ImmutablePass's don't need a runOnFunction, nor do they need to explicitly say
...
that they preserve all xforms
llvm-svn: 3925
2002-09-25 22:27:54 +00:00
Chris Lattner
ceae380b2c
Convert BasicVN to be an ImmutablePass
...
llvm-svn: 3924
2002-09-25 22:27:25 +00:00
Chris Lattner
480b37d479
* Fix ugly bug in previous checkin where I reused the name 'i' one too many times
...
* Print out immutable passes in the -debug-pass=Structure report.
llvm-svn: 3923
2002-09-25 22:26:52 +00:00
Chris Lattner
81f4eaab04
Convert BasicAA to be an immutable pass instead of a FunctionPass
...
llvm-svn: 3922
2002-09-25 22:00:18 +00:00
Chris Lattner
ee0788d42d
Add support for ImmutablePasses, which are not run, and cannot be
...
invalidated.
llvm-svn: 3921
2002-09-25 21:59:11 +00:00
Nick Hildenbrandt
88e87783b8
Strings now handled correctly.
...
llvm-svn: 3920
2002-09-25 20:29:26 +00:00
Chris Lattner
7a6ce5a28c
Checkin stub for Misha to implement
...
llvm-svn: 3919
2002-09-25 19:10:06 +00:00
Chris Lattner
8d081dd436
Make sure to print message when linking a debug .o file
...
llvm-svn: 3918
2002-09-25 17:15:22 +00:00
Chris Lattner
b408154f5f
- Fix bug: Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.ll
...
llvm-svn: 3917
2002-09-24 21:19:41 +00:00
Chris Lattner
4357e54760
Eliminate extraneous #include
...
llvm-svn: 3916
2002-09-24 21:18:40 +00:00
Chris Lattner
588378fb38
A lot of this stuff has been done. Remove the done items
...
llvm-svn: 3915
2002-09-24 16:15:36 +00:00
Chris Lattner
4e6e0eda00
New feature test for something we have done for a long time
...
llvm-svn: 3914
2002-09-24 16:13:20 +00:00
Chris Lattner
d6dcd8ec32
Fix bug: SimplifyCFG/2002-09-24-PHIAssertion.ll
...
llvm-svn: 3913
2002-09-24 16:09:17 +00:00
Chris Lattner
710e9a5c65
New testcase that causes SimplifyCFG to assert out.
...
llvm-svn: 3912
2002-09-24 16:02:44 +00:00
Chris Lattner
c05ad96803
- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
...
removing it from Transforms/Local.h and from Transforms/Utils/*
llvm-svn: 3911
2002-09-24 15:52:01 +00:00
Chris Lattner
75f80bd0b6
- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
...
removing it from Transforms/Local.h and from Transforms/Utils/*
llvm-svn: 3910
2002-09-24 15:51:56 +00:00
Chris Lattner
068c681a84
- Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
...
removing it from Transforms/Local.h and from Transforms/Utils/*
llvm-svn: 3909
2002-09-24 15:51:54 +00:00
Chris Lattner
b4e7e22be3
Correlated Exprs pass now requires BCE pass instead of doing it manually
...
llvm-svn: 3908
2002-09-24 15:43:56 +00:00
Chris Lattner
4bec665b09
- Expose passinfo from BreakCriticalEdges pass so that it may be "Required"
...
by other passes. Make BCE pass be in anonymous namespace now.
llvm-svn: 3907
2002-09-24 15:43:12 +00:00
Chris Lattner
13fea86b05
Expose passinfo from BreakCriticalEdges pass so that it may be "Required" by
...
other passes
llvm-svn: 3906
2002-09-24 15:42:27 +00:00
Chris Lattner
47c2e3e952
Make sure to close the file before deleting it
...
llvm-svn: 3905
2002-09-24 00:09:48 +00:00
Chris Lattner
5325c5f340
Minor cleanups
...
llvm-svn: 3904
2002-09-24 00:09:26 +00:00
Chris Lattner
b03832d5d0
Add new BreakCriticalEdges pass
...
llvm-svn: 3903
2002-09-24 00:08:39 +00:00
Chris Lattner
9f48a00e43
Add new BreakCriticalEdges pass
...
llvm-svn: 3902
2002-09-24 00:08:37 +00:00
Chris Lattner
34d39668f9
There are no implicit gep forms of load and store anymore
...
llvm-svn: 3901
2002-09-24 00:08:01 +00:00
Chris Lattner
c952e4558b
Make users of FindUsedTypes not have problems with linkage. This fixes
...
Cwriter.
llvm-svn: 3900
2002-09-24 00:07:21 +00:00
Chris Lattner
fc75a8552d
Make users of FindUsedTypes not have problems with linkage. This fixes
...
cwriter.
llvm-svn: 3899
2002-09-24 00:07:17 +00:00
Chris Lattner
d4c8f4e826
Convert to using long indexes instead of uint
...
llvm-svn: 3898
2002-09-23 23:41:53 +00:00
Chris Lattner
555518c70f
Optimize away cases like:
...
%cast109 = cast uint %cast212 to short ; <short> [#uses=1]
%cast214 = cast short %cast109 to uint ; <uint> [#uses=1]
%cast215 = cast uint %cast214 to short ; <short> [#uses=1]
llvm-svn: 3897
2002-09-23 23:39:43 +00:00
Chris Lattner
ef453e2800
Add some more testcases for things to get optimized away
...
llvm-svn: 3896
2002-09-23 23:39:17 +00:00
Chris Lattner
28d103548d
Fix: ConstantMerge/2002-09-23-CPR-Update.ll
...
Basically, this bug boiled down to calling replaceUsesOfWith on a constant,
which changed it's shape in an illegal way. This pass now goes through all
of the trouble neccesary to do the replacement on constants.
llvm-svn: 3895
2002-09-23 23:00:46 +00:00
Chris Lattner
be4521f333
New testcase distilled from SPEC vortex benchmark
...
llvm-svn: 3894
2002-09-23 22:31:04 +00:00
Chris Lattner
935559ad2a
Run constantmerge tests too
...
llvm-svn: 3893
2002-09-23 22:26:23 +00:00
Nick Hildenbrandt
9cedce62ee
Parenthesis are now added to casts of type array.
...
llvm-svn: 3892
2002-09-23 21:02:50 +00:00
Chris Lattner
7ccb217f21
* Fix bug: CorrelatedExprs/2002-09-23-PHIUpdateBug.ll
...
* Make sure "Changed" is updated correctly
llvm-svn: 3891
2002-09-23 20:06:22 +00:00
Chris Lattner
caad373759
Fix testcase to accurately expose bug
...
llvm-svn: 3890
2002-09-23 20:04:54 +00:00
Chris Lattner
16c563fd78
New testcase distilled from SPEC MCF benchmark
...
llvm-svn: 3889
2002-09-23 19:54:06 +00:00
Chris Lattner
4037a261d8
Insert resolved constants into the global map so they are reused correctly.
...
This bug was exposed linking the SPEC benchmark suite.
llvm-svn: 3888
2002-09-23 18:14:15 +00:00
Chris Lattner
6b9be6f95a
Group #includes better
...
llvm-svn: 3887
2002-09-23 17:45:52 +00:00
Vikram S. Adve
ff0ebda5d7
Allow LLC to be executed on Linux; only the LLC output should not be executed.
...
llvm-svn: 3886
2002-09-23 14:24:19 +00:00
Vikram S. Adve
b4e9f91b81
C tests are run via Makefile.singlesrc so don't run them twice.
...
llvm-svn: 3885
2002-09-23 14:23:15 +00:00
Vikram S. Adve
8e6e1816c0
Put intermediate source files in a subdirectory here instead of with
...
object files. Also,
llvm-svn: 3884
2002-09-23 13:12:28 +00:00
Vikram S. Adve
7765a4a4f6
Disable reassociation pass in LLC until it is fixed.
...
llvm-svn: 3883
2002-09-23 12:55:50 +00:00
Chris Lattner
20ebb24264
'whoami' doesn't exist on solaris
...
llvm-svn: 3882
2002-09-22 23:35:11 +00:00
Chris Lattner
0fbbd8a742
Update url
...
llvm-svn: 3881
2002-09-22 21:25:12 +00:00
Chris Lattner
1047feff1b
Add information about the DEBUG() macro and the Statistic template
...
llvm-svn: 3880
2002-09-22 19:38:40 +00:00
Chris Lattner
387d76a983
* Remove the -stopraise option, which is no longer needed now that we have
...
the -debug-pass=Arguments option
* Run instcombining BEFORE mem2reg so that getelementptr X, long 0's are
cleaned up. This is also important because scalar replacement of aggr.
will want instcombine to run before it goes as well.
llvm-svn: 3879
2002-09-22 18:50:22 +00:00
Chris Lattner
facc751260
Don't insert a PHI node to merge "returns" from an inlined function if there
...
is only a single return from the function!
llvm-svn: 3878
2002-09-22 18:41:25 +00:00
Chris Lattner
a8ce09e2de
* Minor fixes to support C files.
...
* Build burg as a utility now, change its location
* Clean up other rules
llvm-svn: 3876
2002-09-22 02:47:15 +00:00
Chris Lattner
75246ec78d
Clean up dead rules
...
llvm-svn: 3875
2002-09-22 02:41:20 +00:00