Commit Graph

3802 Commits

Author SHA1 Message Date
Chris Lattner
2da7afb963 Convert TargetData to be an ImmutablePass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3928 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 23:46:56 +00:00
Chris Lattner
aa31ad016a Convert TargetData to be an ImmutablePass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3927 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 23:46:55 +00:00
Chris Lattner
f004f9afe1 Add documentation for ImmutablePass's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3926 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 22:31:38 +00:00
Chris Lattner
9be827a875 ImmutablePass's don't need a runOnFunction, nor do they need to explicitly say
that they preserve all xforms


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3925 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 22:27:54 +00:00
Chris Lattner
c3a388143b Convert BasicVN to be an ImmutablePass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3924 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 22:27:25 +00:00
Chris Lattner
6ffa0a7f7c * 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3923 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 22:26:52 +00:00
Chris Lattner
700975bc9b Convert BasicAA to be an immutable pass instead of a FunctionPass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3922 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 22:00:18 +00:00
Chris Lattner
70b4f3e051 Add support for ImmutablePasses, which are not run, and cannot be
invalidated.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3921 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 21:59:11 +00:00
Nick Hildenbrandt
e548f009f7 Strings now handled correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3920 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 20:29:26 +00:00
Chris Lattner
9474dd68e8 Checkin stub for Misha to implement
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3919 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 19:10:06 +00:00
Chris Lattner
9e39816f13 Make sure to print message when linking a debug .o file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3918 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-25 17:15:22 +00:00
Chris Lattner
112e97dbee - Fix bug: Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3917 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 21:19:41 +00:00
Chris Lattner
2ada19ea04 Eliminate extraneous #include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3916 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 21:18:40 +00:00
Chris Lattner
ab608564c5 A lot of this stuff has been done. Remove the done items
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3915 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 16:15:36 +00:00
Chris Lattner
04b9d2903e New feature test for something we have done for a long time
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3914 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 16:13:20 +00:00
Chris Lattner
929b2c6900 Fix bug: SimplifyCFG/2002-09-24-PHIAssertion.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3913 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 16:09:17 +00:00
Chris Lattner
d7490bcf9a New testcase that causes SimplifyCFG to assert out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3912 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 16:02:44 +00:00
Chris Lattner
f03cafc280 - Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
removing it from Transforms/Local.h and from Transforms/Utils/*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3911 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 15:52:01 +00:00
Chris Lattner
eb0456c8fd - Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
removing it from Transforms/Local.h and from Transforms/Utils/*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3910 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 15:51:56 +00:00
Chris Lattner
04d8dc31f6 - Do not expose Critical Edge breaking mechanics outside the BCE pass, thus
removing it from Transforms/Local.h and from Transforms/Utils/*


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3909 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 15:51:54 +00:00
Chris Lattner
16e7a5295f Correlated Exprs pass now requires BCE pass instead of doing it manually
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3908 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 15:43:56 +00:00
Chris Lattner
6de302bbdb - Expose passinfo from BreakCriticalEdges pass so that it may be "Required"
by other passes.  Make BCE pass be in anonymous namespace now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3907 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 15:43:12 +00:00
Chris Lattner
87944916a4 Expose passinfo from BreakCriticalEdges pass so that it may be "Required" by
other passes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3906 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 15:42:27 +00:00
Chris Lattner
93c26685bf Make sure to close the file before deleting it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3905 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 00:09:48 +00:00
Chris Lattner
3abb95df01 Minor cleanups
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3904 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 00:09:26 +00:00
Chris Lattner
d76efa0186 Add new BreakCriticalEdges pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3903 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 00:08:39 +00:00
Chris Lattner
119e9ea33b Add new BreakCriticalEdges pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3902 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 00:08:37 +00:00
Chris Lattner
2d23785852 There are no implicit gep forms of load and store anymore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3901 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 00:08:01 +00:00
Chris Lattner
5057b00faf Make users of FindUsedTypes not have problems with linkage. This fixes
Cwriter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3900 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 00:07:21 +00:00
Chris Lattner
47b6f84736 Make users of FindUsedTypes not have problems with linkage. This fixes
cwriter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3899 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-24 00:07:17 +00:00
Chris Lattner
aaab467e44 Convert to using long indexes instead of uint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3898 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 23:41:53 +00:00
Chris Lattner
d06451f920 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]


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3897 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 23:39:43 +00:00
Chris Lattner
a30b70f381 Add some more testcases for things to get optimized away
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3896 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 23:39:17 +00:00
Chris Lattner
e4314ed315 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3895 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 23:00:46 +00:00
Chris Lattner
10b37b6493 New testcase distilled from SPEC vortex benchmark
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3894 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 22:31:04 +00:00
Chris Lattner
da37a05774 Run constantmerge tests too
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3893 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 22:26:23 +00:00
Nick Hildenbrandt
c14ded4858 Parenthesis are now added to casts of type array.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3892 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 21:02:50 +00:00
Chris Lattner
c017d9132a * Fix bug: CorrelatedExprs/2002-09-23-PHIUpdateBug.ll
* Make sure "Changed" is updated correctly


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3891 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 20:06:22 +00:00
Chris Lattner
cba39ca9fe Fix testcase to accurately expose bug
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3890 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 20:04:54 +00:00
Chris Lattner
b9c0d60991 New testcase distilled from SPEC MCF benchmark
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3889 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 19:54:06 +00:00
Chris Lattner
d149c053cd Insert resolved constants into the global map so they are reused correctly.
This bug was exposed linking the SPEC benchmark suite.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3888 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 18:14:15 +00:00
Chris Lattner
fb8c89fbd3 Group #includes better
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3887 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 17:45:52 +00:00
Vikram S. Adve
11fd1d3165 Allow LLC to be executed on Linux; only the LLC output should not be executed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3886 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 14:24:19 +00:00
Vikram S. Adve
26d4a48ee6 C tests are run via Makefile.singlesrc so don't run them twice.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3885 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 14:23:15 +00:00
Vikram S. Adve
1b5710a8fc Put intermediate source files in a subdirectory here instead of with
object files.  Also,


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3884 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 13:12:28 +00:00
Vikram S. Adve
c308aefe92 Disable reassociation pass in LLC until it is fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3883 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-23 12:55:50 +00:00
Chris Lattner
35fcad0193 'whoami' doesn't exist on solaris
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3882 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-22 23:35:11 +00:00
Chris Lattner
ab0577be5a Update url
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3881 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-22 21:25:12 +00:00
Chris Lattner
986e0c952f Add information about the DEBUG() macro and the Statistic template
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3880 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-22 19:38:40 +00:00
Chris Lattner
cc377df7f5 * 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3879 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-22 18:50:22 +00:00