Chris Lattner
51dd965704
- Fix bug in LoopInfo causing ParentLoop to be garbage
...
llvm-svn: 3940
2002-09-26 16:15:19 +00:00
Chris Lattner
8752bb1cfc
- Add methods to ImmediateDominators & DominatorTree to allow updates
...
- Make DominatorTree::Node not inherit from std::vector
llvm-svn: 3939
2002-09-26 16:14:41 +00:00
Chris Lattner
dee21da2c0
- Add methods to ImmediateDominators & DominatorTree to allow updates
...
- Make DominatorTree::Node not inherit from std::vector
llvm-svn: 3938
2002-09-26 16:14:37 +00:00
Chris Lattner
aebc47d30a
Add a new "DominatorSet::addDominator" method to allow updates
...
llvm-svn: 3937
2002-09-26 05:42:47 +00:00
Chris Lattner
bfa0786c7e
- Add new methods to LoopInfo: getLoopPreheader, addBasicBlockToLoop.
...
These allow extra information to be easily gathered, and loopinfo to be
updated.
llvm-svn: 3936
2002-09-26 05:32:50 +00:00
Chris Lattner
4dddc16c8c
- Add new methods to LoopInfo: getLoopPreheader, addBasicBlockToLoop.
...
These allow extra information to be easily gathered, and loopinfo to be
updated.
llvm-svn: 3935
2002-09-26 05:32:43 +00:00
Chris Lattner
989b743c33
- Add new ctor to BasicBlock to allow insertion before any BB, not just at
...
the end of the function.
llvm-svn: 3934
2002-09-26 05:03:22 +00:00
Chris Lattner
06076d8d3e
- Add new ctor to BasicBlock to allow insertion before any BB, not just at
...
the end of the function.
llvm-svn: 3933
2002-09-26 05:03:17 +00:00
Chris Lattner
7cdd2e0cb0
Converted SimpleStructMutation to take TargetData as a required pass.
...
llvm-svn: 3932
2002-09-26 00:17:21 +00:00
Chris Lattner
cbdfa73706
Converted SimpleStructMutation to take TargetData as a required pass.
...
llvm-svn: 3931
2002-09-26 00:17:18 +00:00
Chris Lattner
4b838cd6b5
Change LowerAllocations pass to 'require' TargetData instead of it being
...
passed in.
llvm-svn: 3930
2002-09-25 23:47:49 +00:00
Chris Lattner
7ab2bba3d3
Change LowerAllocations pass to 'require' TargetData instead of it being
...
passed in.
llvm-svn: 3929
2002-09-25 23:47:47 +00:00
Chris Lattner
8cbeb6c60a
Convert TargetData to be an ImmutablePass
...
llvm-svn: 3928
2002-09-25 23:46:56 +00:00
Chris Lattner
0f9d9214ab
Convert TargetData to be an ImmutablePass
...
llvm-svn: 3927
2002-09-25 23:46:55 +00:00
Chris Lattner
07c17104f5
Add documentation for ImmutablePass's
...
llvm-svn: 3926
2002-09-25 22:31:38 +00:00
Chris Lattner
941c5c9a70
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
04af33fe09
Convert BasicVN to be an ImmutablePass
...
llvm-svn: 3924
2002-09-25 22:27:25 +00:00
Chris Lattner
37ae98efd1
* 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
8c104c3afa
Convert BasicAA to be an immutable pass instead of a FunctionPass
...
llvm-svn: 3922
2002-09-25 22:00:18 +00:00
Chris Lattner
e7d8ee84e7
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
205d6a6b20
Strings now handled correctly.
...
llvm-svn: 3920
2002-09-25 20:29:26 +00:00
Chris Lattner
59bfff25cb
Checkin stub for Misha to implement
...
llvm-svn: 3919
2002-09-25 19:10:06 +00:00
Chris Lattner
6fdea2eef7
Make sure to print message when linking a debug .o file
...
llvm-svn: 3918
2002-09-25 17:15:22 +00:00
Chris Lattner
2cf19d980a
- Fix bug: Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.ll
...
llvm-svn: 3917
2002-09-24 21:19:41 +00:00
Chris Lattner
7fafece8e0
Eliminate extraneous #include
...
llvm-svn: 3916
2002-09-24 21:18:40 +00:00
Chris Lattner
e6255793a5
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
1cbd9f2010
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
54cf78c786
Fix bug: SimplifyCFG/2002-09-24-PHIAssertion.ll
...
llvm-svn: 3913
2002-09-24 16:09:17 +00:00
Chris Lattner
5323e8ef58
New testcase that causes SimplifyCFG to assert out.
...
llvm-svn: 3912
2002-09-24 16:02:44 +00:00
Chris Lattner
a4f47fb77e
- 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
25ba5ac7ce
- 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
442d220996
- 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
1014aae962
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
49588769e0
- 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
63940ae296
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
2ccb52142f
Make sure to close the file before deleting it
...
llvm-svn: 3905
2002-09-24 00:09:48 +00:00
Chris Lattner
4e11d9e5de
Minor cleanups
...
llvm-svn: 3904
2002-09-24 00:09:26 +00:00
Chris Lattner
e62cdff96c
Add new BreakCriticalEdges pass
...
llvm-svn: 3903
2002-09-24 00:08:39 +00:00
Chris Lattner
cd247490cd
Add new BreakCriticalEdges pass
...
llvm-svn: 3902
2002-09-24 00:08:37 +00:00
Chris Lattner
c424fd7af2
There are no implicit gep forms of load and store anymore
...
llvm-svn: 3901
2002-09-24 00:08:01 +00:00
Chris Lattner
34d9c4ec10
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
fba5394cf3
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
cb44e9f152
Convert to using long indexes instead of uint
...
llvm-svn: 3898
2002-09-23 23:41:53 +00:00
Chris Lattner
b6c408778a
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
bacc51a4e3
Add some more testcases for things to get optimized away
...
llvm-svn: 3896
2002-09-23 23:39:17 +00:00
Chris Lattner
a4184f9ab6
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
8a7da2fe0d
New testcase distilled from SPEC vortex benchmark
...
llvm-svn: 3894
2002-09-23 22:31:04 +00:00
Chris Lattner
4bf3ffe7f5
Run constantmerge tests too
...
llvm-svn: 3893
2002-09-23 22:26:23 +00:00
Nick Hildenbrandt
cb0b25c6c1
Parenthesis are now added to casts of type array.
...
llvm-svn: 3892
2002-09-23 21:02:50 +00:00
Chris Lattner
2a53929c5d
* 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