Commit Graph

40 Commits

Author SHA1 Message Date
Chris Lattner f119a2b1df Yes, we REALLY DO want to run the reassociate pass.
llvm-svn: 2809
2002-06-30 16:19:14 +00:00
Anand Shukla fef3241cc6 Changes for 64bit gcc
llvm-svn: 2799
2002-06-25 21:57:48 +00:00
Chris Lattner 5aa3a0779e Simplify the code that adds passes so compilation can stop after any step
llvm-svn: 2775
2002-06-25 15:57:43 +00:00
Chris Lattner f08d7436ca No need to run dce with adce right behind!
llvm-svn: 2738
2002-05-23 19:27:50 +00:00
Chris Lattner 702eacab25 Add the ADCE pass to gccas finally!
llvm-svn: 2719
2002-05-22 21:30:24 +00:00
Chris Lattner 8c1d9485cd Simplify CFG after code generation is done
llvm-svn: 2698
2002-05-21 20:05:08 +00:00
Chris Lattner c914944a61 Run another local value numbering phase after redundancy elimination
llvm-svn: 2625
2002-05-14 16:23:14 +00:00
Chris Lattner 47d923c2e0 Add LICM pass to compiler
llvm-svn: 2613
2002-05-10 22:44:31 +00:00
Chris Lattner 356ef11e5a Run expression reassociation as part of gccas
llvm-svn: 2556
2002-05-08 22:18:20 +00:00
Chris Lattner 89a20ef164 Merge all include/llvm/Transforms/Scalar/* into a single Scalar.h
llvm-svn: 2538
2002-05-07 20:03:27 +00:00
Chris Lattner cfa675c142 GCSE is faster than SCCP, and it makes SCCP's job easier, so run it first.
llvm-svn: 2503
2002-05-06 18:54:12 +00:00
Chris Lattner dcb7ff00b1 Instruction Combination can create a ton of trivially dead instructions. Remove
them with an DIE pass before more expensive optimizations are run.

llvm-svn: 2491
2002-05-06 16:52:15 +00:00
Chris Lattner 878bbb2f1c Run DCE AFTER SCCP and GCSE!
llvm-svn: 2476
2002-05-06 03:04:17 +00:00
Chris Lattner 0fb0022f68 Move constant merging pass earlier
Include the SCCP pass in gccas

llvm-svn: 2410
2002-04-29 20:11:38 +00:00
Chris Lattner d5a847057b Eliminate duplicate or unneccesary #include's
llvm-svn: 2397
2002-04-29 17:42:12 +00:00
Chris Lattner 10aa1b64bb Run GCSE as part of gccas.
llvm-svn: 2340
2002-04-28 01:00:15 +00:00
Chris Lattner c065ad850c 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.

llvm-svn: 2303
2002-04-18 19:55:25 +00:00
Chris Lattner c4414d4a10 The cleangcc pass is brokeninto two pieces, execute both of them.
llvm-svn: 2225
2002-04-10 20:33:32 +00:00
Chris Lattner 8c61bc0859 Move the PromoteMemoryToRegister pass to be run _after_ the raise pointer
references pass, so it is given the chance to do some good!

llvm-svn: 2089
2002-04-01 19:45:11 +00:00
Cameron Buschardt 9dcd905f71 Rename constructor function for mem2reg pass.
llvm-svn: 2008
2002-03-27 23:29:23 +00:00
Chris Lattner 30c37c24e8 Add a debugging option to gccas to cause it to not do level raise or anything
after it.

llvm-svn: 1934
2002-03-21 21:21:50 +00:00
Chris Lattner 8fdf51f9c0 Change to use new pass accessor functions
llvm-svn: 1817
2002-02-26 21:47:29 +00:00
Chris Lattner ad50ec2f37 PassManager is now in it's own header file
llvm-svn: 1608
2002-01-31 00:46:22 +00:00
Chris Lattner 044b5d90d8 Only run DeadInst elimination early, because it is quick and painless and
pipelines well

llvm-svn: 1549
2002-01-22 21:06:44 +00:00
Chris Lattner 3bb02e4797 Misc cleanups. Allocate ofstream statically, and use a pass to write out the bytecode
llvm-svn: 1529
2002-01-22 03:30:46 +00:00
Chris Lattner 3787ee6be6 Rename LowerAllocations.h to ChangeAllocations.h since it now contains the
RaiseAllocations pass as well.

llvm-svn: 1525
2002-01-22 01:04:08 +00:00
Chris Lattner 4f0f09757d Pull RaiseAllocations stuff out of the CleanGCC pass into it's own pass in
the ChangeAllocations.h header file.

llvm-svn: 1522
2002-01-22 00:13:51 +00:00
Chris Lattner ee965abc36 Move stuff out of the Optimizations directories into the appropriate Transforms
directories.  Eliminate the opt namespace.

llvm-svn: 1520
2002-01-21 23:17:48 +00:00
Chris Lattner 0686e435d1 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.

llvm-svn: 1507
2002-01-21 07:31:50 +00:00
Chris Lattner 7f74a56e24 Changes to build successfully with GCC 3.02
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Chris Lattner 05377bbe3f Add more passes to run after raising
llvm-svn: 1476
2001-12-14 16:48:30 +00:00
Chris Lattner a57615faaa Run DCE before cleanupGCCoutput which will cause some dead types (like FILE) to be removed
llvm-svn: 1429
2001-12-07 04:25:36 +00:00
Chris Lattner 0f5a8d4749 Simplify induction variables before 'raising' the representation
llvm-svn: 1418
2001-12-05 06:34:58 +00:00
Chris Lattner 5de2204fe8 Create a new #include "Support/..." directory structure to move things
from "llvm/Support/..." that are not llvm dependant.

Move files and fix #includes

llvm-svn: 1400
2001-11-27 00:03:19 +00:00
Chris Lattner 5af7da01b0 -raise includes constprop and dce
llvm-svn: 1397
2001-11-26 19:37:43 +00:00
Chris Lattner 638969c6de Run constprop before -raise
llvm-svn: 1354
2001-11-26 18:16:07 +00:00
Chris Lattner e326957333 Move the Raise xform from opt to transforms
llvm-svn: 1072
2001-11-01 02:41:09 +00:00
Chris Lattner 9fb50fe167 crunch the output of GCC a bit to make it nicer
llvm-svn: 1068
2001-10-31 06:36:48 +00:00
Chris Lattner ae6de303fc Fix dumb copy and paste typos
llvm-svn: 1063
2001-10-31 04:33:33 +00:00
Chris Lattner 1a30617664 Initial checkin of GCCAS
llvm-svn: 1058
2001-10-31 04:28:11 +00:00