Chris Lattner
|
d771fdfd75
|
Loop invariant code motion now depends on the LoopPreheader pass. Dead code
has not yet been removed.
llvm-svn: 3945
|
2002-09-26 16:19:31 +00:00 |
Chris Lattner
|
bedbd6bc16
|
- Cleanup break-crit-edges pass by making SplitCriticalEdge a member method.
- break-crit-edges pass does not invalidate loop-preheader pass.
llvm-svn: 3944
|
2002-09-26 16:18:51 +00:00 |
Chris Lattner
|
9b4c1aa389
|
Checkin new loop-preheader insertion pass.
llvm-svn: 3943
|
2002-09-26 16:17:33 +00:00 |
Chris Lattner
|
61992f66d8
|
Checkin new loop-preheader insertion pass.
llvm-svn: 3942
|
2002-09-26 16:17:31 +00:00 |
Chris Lattner
|
3524f58309
|
Fix printing of loop information
llvm-svn: 3941
|
2002-09-26 16:15:54 +00:00 |
Chris Lattner
|
0fcb61f2b7
|
- Fix bug in LoopInfo causing ParentLoop to be garbage
llvm-svn: 3940
|
2002-09-26 16:15:19 +00:00 |
Chris Lattner
|
98ae0f1897
|
- 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
|
6561db0c12
|
- 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
|
9ff37c5265
|
Add a new "DominatorSet::addDominator" method to allow updates
llvm-svn: 3937
|
2002-09-26 05:42:47 +00:00 |
Chris Lattner
|
08373d1c9c
|
- 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
|
0a96a521eb
|
- 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
|
4dfede8070
|
- 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
|
506389a37f
|
- 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
|
870a4a5bb4
|
Converted SimpleStructMutation to take TargetData as a required pass.
llvm-svn: 3932
|
2002-09-26 00:17:21 +00:00 |
Chris Lattner
|
7b5746bfcf
|
Converted SimpleStructMutation to take TargetData as a required pass.
llvm-svn: 3931
|
2002-09-26 00:17:18 +00:00 |
Chris Lattner
|
79efacbb19
|
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
|
3cab9f0396
|
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
|
fec6850f90
|
Convert TargetData to be an ImmutablePass
llvm-svn: 3928
|
2002-09-25 23:46:56 +00:00 |
Chris Lattner
|
09cfdcb1a3
|
Convert TargetData to be an ImmutablePass
llvm-svn: 3927
|
2002-09-25 23:46:55 +00:00 |
Chris Lattner
|
9720dda185
|
Add documentation for ImmutablePass's
llvm-svn: 3926
|
2002-09-25 22:31:38 +00:00 |
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 |