Commit Graph

140 Commits

Author SHA1 Message Date
Chris Lattner
88fcc513aa Add LICM pass to compiler
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2613 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-10 22:44:31 +00:00
Chris Lattner
94fbab0022 Run expression reassociation as part of gccas
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2556 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-08 22:18:20 +00:00
Chris Lattner
65f1b895bb Merge all include/llvm/Transforms/Scalar/* into a single Scalar.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2538 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-07 20:03:27 +00:00
Chris Lattner
ddca9d0dcb Fix makefiles after shuffling passes around the libraries
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2532 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-07 19:27:33 +00:00
Chris Lattner
2154d13354 Straighten out makefiles after moving code to new Transform Utils library
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2520 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-07 18:18:26 +00:00
Chris Lattner
5f06e10a84 GCSE is faster than SCCP, and it makes SCCP's job easier, so run it first.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2503 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-06 18:54:12 +00:00
Chris Lattner
eadd32cda2 Instruction Combination can create a ton of trivially dead instructions. Remove
them with an DIE pass before more expensive optimizations are run.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2491 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-06 16:52:15 +00:00
Chris Lattner
9c1291c85e Run DCE AFTER SCCP and GCSE!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2476 91177308-0d34-0410-b5e6-96231b3b80d8
2002-05-06 03:04:17 +00:00
Chris Lattner
8ac58a83eb Move constant merging pass earlier
Include the SCCP pass in gccas


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2410 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-29 20:11:38 +00:00
Chris Lattner
c6f3ae5c66 Eliminate duplicate or unneccesary #include's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2397 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-29 17:42:12 +00:00
Chris Lattner
598d21c7e5 Run GCSE as part of gccas.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2340 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-28 01:00:15 +00:00
Chris Lattner
76d12299b5 Make sure that there is no case where a signal can occur leaving a partially
written output file.  This is important because crashing testcases often write
part of a file out, and the testing harness decides the file is up-to-date next
time the test is run.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2303 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-18 19:55:25 +00:00
Chris Lattner
6a1f6940a1 The cleangcc pass is brokeninto two pieces, execute both of them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2225 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-10 20:33:32 +00:00
Chris Lattner
94202988a8 Remove asmwriter library from link line, because the useful contents of it
have been incorporated into the vmcore library.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2153 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-07 22:35:30 +00:00
Chris Lattner
69cd2b1ade Move the PromoteMemoryToRegister pass to be run _after_ the raise pointer
references pass, so it is given the chance to do some good!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2089 91177308-0d34-0410-b5e6-96231b3b80d8
2002-04-01 19:45:11 +00:00
Cameron Buschardt
0732c70ffb Rename constructor function for mem2reg pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2008 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-27 23:29:23 +00:00
Chris Lattner
081c409e27 Add a debugging option to gccas to cause it to not do level raise or anything
after it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1934 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-21 21:21:50 +00:00
Chris Lattner
71e7bb4bc0 Pull interprocedural analyses out of Analysis library into their own lib
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1827 91177308-0d34-0410-b5e6-96231b3b80d8
2002-03-06 18:44:29 +00:00
Chris Lattner
417fbe5287 Change to use new pass accessor functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1817 91177308-0d34-0410-b5e6-96231b3b80d8
2002-02-26 21:47:29 +00:00
Chris Lattner
0253ceeb56 Resolve deps
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1615 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 15:52:41 +00:00
Chris Lattner
0f3bfffd9e PassManager is now in it's own header file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1608 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-31 00:46:22 +00:00
Chris Lattner
e94525575f Only run DeadInst elimination early, because it is quick and painless and
pipelines well


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1549 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-22 21:06:44 +00:00
Chris Lattner
3dc67dd95b Misc cleanups. Allocate ofstream statically, and use a pass to write out the bytecode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1529 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-22 03:30:46 +00:00
Chris Lattner
d7db863c1d Rename LowerAllocations.h to ChangeAllocations.h since it now contains the
RaiseAllocations pass as well.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1525 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-22 01:04:08 +00:00
Chris Lattner
5048c3b853 Pull RaiseAllocations stuff out of the CleanGCC pass into it's own pass in
the ChangeAllocations.h header file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1522 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-22 00:13:51 +00:00
Chris Lattner
59b6b8e0b3 Move stuff out of the Optimizations directories into the appropriate Transforms
directories.  Eliminate the opt namespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1520 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-21 23:17:48 +00:00
Chris Lattner
8efb9d733f Eliminate opt library
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1516 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-21 23:13:46 +00:00
Chris Lattner
f4de63f65f Implement a more powerful, simpler, pass system. This pass system can figure
out how to run a collection of passes optimially given their behaviors and
charactaristics.

Convert code to use it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1507 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-21 07:31:50 +00:00
Chris Lattner
697954c15d Changes to build successfully with GCC 3.02
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
2002-01-20 22:54:45 +00:00
Chris Lattner
d584dcc6ef Add more passes to run after raising
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1476 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-14 16:48:30 +00:00
Chris Lattner
0d7a474463 Run DCE before cleanupGCCoutput which will cause some dead types (like FILE) to be removed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1429 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-07 04:25:36 +00:00
Chris Lattner
9c6f2ac665 Simplify induction variables before 'raising' the representation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1418 91177308-0d34-0410-b5e6-96231b3b80d8
2001-12-05 06:34:58 +00:00
Chris Lattner
cee8f9ae67 Create a new #include "Support/..." directory structure to move things
from "llvm/Support/..." that are not llvm dependant.

Move files and fix #includes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-27 00:03:19 +00:00
Chris Lattner
2409ddb5b2 -raise includes constprop and dce
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1397 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 19:37:43 +00:00
Chris Lattner
a8b3015d40 Run constprop before -raise
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1354 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-26 18:16:07 +00:00
Chris Lattner
c2ae4f6d3b Fix link prob
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1297 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-14 11:03:17 +00:00
Chris Lattner
068f487ee5 Move the Raise xform from opt to transforms
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1072 91177308-0d34-0410-b5e6-96231b3b80d8
2001-11-01 02:41:09 +00:00
Chris Lattner
dbe0514e12 crunch the output of GCC a bit to make it nicer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1068 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-31 06:36:48 +00:00
Chris Lattner
11c862cf46 Fix dumb copy and paste typos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1063 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-31 04:33:33 +00:00
Chris Lattner
ecbde333a2 Initial checkin of GCCAS
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1058 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-31 04:28:11 +00:00