aboutsummaryrefslogtreecommitdiff
path: root/gcc/passes.def
diff options
context:
space:
mode:
authorTom de Vries <tom@codesourcery.com>2015-11-16 12:40:41 +0000
committerTom de Vries <vries@gcc.gnu.org>2015-11-16 12:40:41 +0000
commitc06883ac2d1cc41a051a54141abff4deed429f35 (patch)
tree20813276f7d4d2e3f8730db9827136142a62ec84 /gcc/passes.def
parent813ccd83aef21bfaee56ea3d84ce5bf6c60984f7 (diff)
downloadgcc-c06883ac2d1cc41a051a54141abff4deed429f35.zip
gcc-c06883ac2d1cc41a051a54141abff4deed429f35.tar.gz
gcc-c06883ac2d1cc41a051a54141abff4deed429f35.tar.bz2
Remove first_pass_instance from pass_ccp
2015-11-16 Tom de Vries <tom@codesourcery.com> * passes.def: Add arg to pass_ccp pass instantiation. * tree-ssa-ccp.c (ccp_finalize): Add param nonzero_p. Use nonzero_p instead of first_pass_instance. (do_ssa_ccp): Add and handle param nonzero_p. (pass_ccp::pass_ccp): Initialize nonzero_p. (pass_ccp::set_pass_param): New member function. Set nonzero_p. (pass_ccp::execute): Call do_ssa_ccp with extra arg. (pass_ccp::nonzero_p): New private member. From-SVN: r230419
Diffstat (limited to 'gcc/passes.def')
-rw-r--r--gcc/passes.def10
1 files changed, 6 insertions, 4 deletions
diff --git a/gcc/passes.def b/gcc/passes.def
index 64883a7..17027786 100644
--- a/gcc/passes.def
+++ b/gcc/passes.def
@@ -78,7 +78,9 @@ along with GCC; see the file COPYING3. If not see
PUSH_INSERT_PASSES_WITHIN (pass_all_early_optimizations)
NEXT_PASS (pass_remove_cgraph_callee_edges);
NEXT_PASS (pass_object_sizes, true /* insert_min_max_p */);
- NEXT_PASS (pass_ccp);
+ /* Don't record nonzero bits before IPA to avoid
+ using too much memory. */
+ NEXT_PASS (pass_ccp, false /* nonzero_p */);
/* After CCP we rewrite no longer addressed locals into SSA
form if possible. */
NEXT_PASS (pass_forwprop);
@@ -157,7 +159,7 @@ along with GCC; see the file COPYING3. If not see
/* Initial scalar cleanups before alias computation.
They ensure memory accesses are not indirect wherever possible. */
NEXT_PASS (pass_strip_predict_hints);
- NEXT_PASS (pass_ccp);
+ NEXT_PASS (pass_ccp, true /* nonzero_p */);
/* After CCP we rewrite no longer addressed locals into SSA
form if possible. */
NEXT_PASS (pass_complete_unrolli);
@@ -209,7 +211,7 @@ along with GCC; see the file COPYING3. If not see
NEXT_PASS (pass_dce);
NEXT_PASS (pass_forwprop);
NEXT_PASS (pass_phiopt);
- NEXT_PASS (pass_ccp);
+ NEXT_PASS (pass_ccp, true /* nonzero_p */);
/* After CCP we rewrite no longer addressed locals into SSA
form if possible. */
NEXT_PASS (pass_cse_sincos);
@@ -319,7 +321,7 @@ along with GCC; see the file COPYING3. If not see
NEXT_PASS (pass_lower_complex);
NEXT_PASS (pass_lower_vector_ssa);
/* Perform simple scalar cleanup which is constant/copy propagation. */
- NEXT_PASS (pass_ccp);
+ NEXT_PASS (pass_ccp, true /* nonzero_p */);
NEXT_PASS (pass_object_sizes);
/* Fold remaining builtins. */
NEXT_PASS (pass_fold_builtins);