diff options
author | Richard Guenther <rguenther@suse.de> | 2012-08-22 13:17:26 +0000 |
---|---|---|
committer | Richard Guenther <rguenther@suse.de> | 2012-08-22 13:17:26 +0000 |
commit | 7776b8b0c8638498cdb6cc7d4b7547387ec1f3c9 (patch) | |
tree | 34c557fa3311568283166d9d30556e185c013ce5 /gcc/tree-ssa-pre.c | |
parent | 111c184af03c19530e730bd968329ff3dc475a7d (diff) |
2012-08-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46590
* tree-ssa-alias.h (get_continuation_for_phi): Add alias query
counter output argument.
(walk_non_aliased_vuses): Add alias query counter argument
to the walker callback.
* tree-ssa-alias.c (maybe_skip_until): Add alias query counter
output argument and count alias queries.
(get_continuation_for_phi_1): Likewise.
(get_continuation_for_phi): Likewise.
(walk_non_aliased_vuses): Add alias query counter argument
to the walker callback and allow it to abort the walk by
returning -1.
* tree-ssa-pre.c (translate_vuse_through_block): Adjust.
* tree-ssa-sccvn.c (vn_reference_lookup_2): Add alias query
counter parmeter, abort walk if that is bigger than
--param sccvn-max-alias-queries-per-access.
* params.def (sccvn-max-alias-queries-per-access): New param.
* doc/invoke.texi (sccvn-max-alias-queries-per-access): Document.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@190594 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-pre.c')
-rw-r--r-- | gcc/tree-ssa-pre.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c index e1135395f65..6d10df87a0e 100644 --- a/gcc/tree-ssa-pre.c +++ b/gcc/tree-ssa-pre.c @@ -1289,9 +1289,10 @@ translate_vuse_through_block (VEC (vn_reference_op_s, heap) *operands, if (use_oracle) { bitmap visited = NULL; + unsigned int cnt; /* Try to find a vuse that dominates this phi node by skipping non-clobbering statements. */ - vuse = get_continuation_for_phi (phi, &ref, &visited); + vuse = get_continuation_for_phi (phi, &ref, &cnt, &visited); if (visited) BITMAP_FREE (visited); } |