diff options
author | Jeff Law <law@redhat.com> | 2015-09-16 21:01:03 -0600 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2015-09-16 21:01:03 -0600 |
commit | e8ae63bb6ccbb7ec3dc5fbfbaf8236b71c59650e (patch) | |
tree | beeb6ae89f5ced6e7def72c713e3e747502a1c12 /gcc/tree-ssa-threadedge.h | |
parent | a481f93b12d748610b2ebe947f8532765e4890d0 (diff) | |
download | gcc-e8ae63bb6ccbb7ec3dc5fbfbaf8236b71c59650e.zip gcc-e8ae63bb6ccbb7ec3dc5fbfbaf8236b71c59650e.tar.gz gcc-e8ae63bb6ccbb7ec3dc5fbfbaf8236b71c59650e.tar.bz2 |
[PATCH] Pass in avail_expr_stack and setup edge_infos earlier
PR tree-optimization/47679
* tree-ssa-dom.c (free_edge_info): Factored out of free_all_edge_infos.
(free_all_edge_infos): Use it.
(allocate_edge_info): Free preexisting edge info data.
(pass_dominator::execute): Set up initial edge info structures.
(dom_opt_dom_walker::thread_across_edge): Pass avail_expr_stack to
thread_across_edge.
* tree-ssa-threadedge.c (thread_across_edge): Accept new argument. If
non-null, then push/pop markers appropriately.
* tree-ssa-threadedge.h (thread_across_edge): Update prototype.
* tree-vrp.c (identify_jump_threads): Pass NULL for new argument to
thread-across_edge.
From-SVN: r227842
Diffstat (limited to 'gcc/tree-ssa-threadedge.h')
-rw-r--r-- | gcc/tree-ssa-threadedge.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-ssa-threadedge.h b/gcc/tree-ssa-threadedge.h index 521fd0e..0def2e0 100644 --- a/gcc/tree-ssa-threadedge.h +++ b/gcc/tree-ssa-threadedge.h @@ -31,6 +31,8 @@ extern void threadedge_finalize_values (void); extern bool potentially_threadable_block (basic_block); extern void propagate_threaded_block_debug_into (basic_block, basic_block); extern void thread_across_edge (gcond *, edge, bool, - const_and_copies *, tree (*) (gimple, gimple)); + const_and_copies *, + avail_exprs_stack *, + tree (*) (gimple, gimple)); #endif /* GCC_TREE_SSA_THREADEDGE_H */ |