diff options
author | Jeff Law <law@redhat.com> | 2015-09-18 20:56:15 -0600 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2015-09-18 20:56:15 -0600 |
commit | 8e33db8fc08900f77200506f2cdf5c50e2fbfcba (patch) | |
tree | 62af4cc89d09878673cfb0755453089addf8f45e /gcc/tree-vrp.c | |
parent | 8788ec94173a9551076ee7d9f52b7f6c7afc9c68 (diff) | |
download | gcc-8e33db8fc08900f77200506f2cdf5c50e2fbfcba.zip gcc-8e33db8fc08900f77200506f2cdf5c50e2fbfcba.tar.gz gcc-8e33db8fc08900f77200506f2cdf5c50e2fbfcba.tar.bz2 |
[PATCH] avail_expr_stack is no longer file scoped
PR tree-optimization/47679
* tree-ssa-dom.c (avail_exprs_stack): No longer file scoped. Move
it here ...
(dom_opt_dom_walker): New private member holding the avail_exprs_stack
object. Update constructor.
(pass_dominator::execute): Corresponding chagnes to declaration
and initialization of avail_exprs_stack. Update constructor call
for dom_opt_dom_walker object.
(lookup_avail_expr, record_cond): Accept additional argument. Pass
it down to children as needed.
(record_equivalences_from_incoming_edge): Likewise.
(eliminate_redundant_computations): Likewise.
(record_equivalences_from_stmt): Likewise.
(simplify_stmt_for_jump_threading): Likewise.
(record_temporary_equivalences): Likewise.
(optimize_stmt): Likewise.
(dom_opt_dom_walker::thread_across_edge): Update access to
avail_exprs_stack object and pass it to children as needed.
(dom_opt_dom_walker::before_dom_children): Similarly.
(dom_opt_dom_walker::after_dom_children): Similarly.
* tree-ssa-threadedge.c (pfn_simplify): New typedef.
(record_temporary_equivalences_from_stmts_at_dest): Use new typedef.
Add avail_expr_stack argument. Pass it to children as needed.
(dummy_simplify): Likewise.
(simplify_control_stmt_condition): Likewise.
(thread_around_empty_blocks): Likewise.
(thread_through_normal_block): Likewise.
(thread_across_edge): Likewise.
* tree-ssa-threadedge.h (thread_across_edge): Update prototype.
* tree-vrp.c (simplify_stmt_for_jump_threading): Update.
From-SVN: r227931
Diffstat (limited to 'gcc/tree-vrp.c')
-rw-r--r-- | gcc/tree-vrp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c index 5e81390..cfb8329 100644 --- a/gcc/tree-vrp.c +++ b/gcc/tree-vrp.c @@ -10066,7 +10066,8 @@ const_and_copies *equiv_stack; for any overflow warnings. */ static tree -simplify_stmt_for_jump_threading (gimple stmt, gimple within_stmt) +simplify_stmt_for_jump_threading (gimple stmt, gimple within_stmt, + class avail_exprs_stack *avail_exprs_stack ATTRIBUTE_UNUSED) { if (gcond *cond_stmt = dyn_cast <gcond *> (stmt)) return vrp_evaluate_conditional (gimple_cond_code (cond_stmt), |