diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-12-12 19:59:16 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-12-12 19:59:16 +0000 |
commit | 54aceb26880f3f980cf33c2913fc2b7842233e13 (patch) | |
tree | c76d6731feeecd4ca0a01da9f4b777624a718874 /gcc/passes.c | |
parent | 9d1e88f076eb4a08b3d0175495f2e11ee49d8ec2 (diff) | |
download | gcc-54aceb26880f3f980cf33c2913fc2b7842233e13.tar.gz |
* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Remove
reassociation code.
* passes.c (init_optimization_passes): Run reassociation again
after loop optimizations.
* tree-ssa-dom.c (thread_across_edge): Canonicalize condition
if necessary.
(optimize_stmt): Ditto.
(canonicalize_comparison): New function.
* tree-ssa-operands.c (swap_tree_operands): Make external.
(get_expr_operands): Stop auto-canonicalization.
* tree-ssa-reassoc.c: Rewrite.
(init_optimization_passes):
* tree-flow.h (swap_tree_operands): Prototype.
* Makefile.in (tree-ssa-reassoc.o): Update dependencies.
* gcc.dg/tree-ssa/ssa-pre-2.c: Update due to reassociation changes.
* gcc.dg/tree-ssa/reassoc-1.c: Likewise.
* gcc.dg/tree-ssa/reassoc-2.c: Likewise.
* gcc.dg/tree-ssa/reassoc-3.c: Likewise.
* gcc.dg/tree-ssa/reassoc-4.c: Likewise.
* gcc.dg/tree-ssa/reassoc-5.c: New.
* gcc.dg/tree-ssa/reassoc-6.c: New.
* gcc.dg/tree-ssa/reassoc-7.c: New.
* gcc.dg/tree-ssa/reassoc-8.c: New.
* gcc.dg/tree-ssa/reassoc-9.c: New.
* gcc.dg/tree-ssa/reassoc-10.c: New.
* gcc.dg/tree-ssa/reassoc-11.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108425 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/passes.c')
-rw-r--r-- | gcc/passes.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/passes.c b/gcc/passes.c index 7add1208069..7673c677a49 100644 --- a/gcc/passes.c +++ b/gcc/passes.c @@ -538,6 +538,7 @@ init_optimization_passes (void) propagate away the degenerate PHI nodes. */ NEXT_PASS (pass_phi_only_copy_prop); + NEXT_PASS (pass_reassoc); NEXT_PASS (pass_dce); NEXT_PASS (pass_dse); NEXT_PASS (pass_may_alias); @@ -553,10 +554,10 @@ init_optimization_passes (void) NEXT_PASS (pass_may_alias); NEXT_PASS (pass_cse_reciprocals); NEXT_PASS (pass_split_crit_edges); - NEXT_PASS (pass_reassoc); NEXT_PASS (pass_pre); NEXT_PASS (pass_sink_code); NEXT_PASS (pass_tree_loop); + NEXT_PASS (pass_reassoc); NEXT_PASS (pass_dominator); /* The only copy propagation opportunities left after DOM |