aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-pre.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2014-09-01 11:35:10 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2014-09-01 11:35:10 +0000
commit26f3a4e144110002301c9eb884fcb05d26e9957f (patch)
treea50714c621ef63ef6cb6fa0e243cdd2cd6bd5c60 /gcc/tree-ssa-pre.c
parenta0107bd001ec4bc30b345a157561f27ca4419e0b (diff)
downloadgcc-26f3a4e144110002301c9eb884fcb05d26e9957f.zip
gcc-26f3a4e144110002301c9eb884fcb05d26e9957f.tar.gz
gcc-26f3a4e144110002301c9eb884fcb05d26e9957f.tar.bz2
tree-ssa-sccvn.h (copy_reference_ops_from_ref, [...]): Remove.
2014-09-01 Richard Biener <rguenther@suse.de> * tree-ssa-sccvn.h (copy_reference_ops_from_ref, copy_reference_ops_from_call, vn_nary_op_compute_hash, vn_reference_compute_hash, vn_reference_insert): Remove. (vn_reference_lookup_call): New function. * tree-ssa-sccvn.c (vn_reference_compute_hash, copy_reference_ops_from_ref, copy_reference_ops_from_call, vn_reference_insert, vn_nary_op_compute_hash): Make static. (create_reference_ops_from_call): Remove. (vn_reference_lookup_3): Properly update shared_lookup_references. (vn_reference_lookup_pieces): Assert that we updated shared_lookup_references properly. (vn_reference_lookup): Likewise. (vn_reference_lookup_call): New function. (visit_reference_op_call): Use it. Avoid re-building the reference ops. (visit_reference_op_load): Remove redundant lookup. (visit_reference_op_store): Perform special tail-merging work only when possibly doing tail-merging. (visit_use): Likewise. * tree-ssa-pre.c (compute_avail): Use vn_reference_lookup_call. From-SVN: r214787
Diffstat (limited to 'gcc/tree-ssa-pre.c')
-rw-r--r--gcc/tree-ssa-pre.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c
index ce9cf73..7acf25f 100644
--- a/gcc/tree-ssa-pre.c
+++ b/gcc/tree-ssa-pre.c
@@ -3767,17 +3767,14 @@ compute_avail (void)
case GIMPLE_CALL:
{
vn_reference_t ref;
+ vn_reference_s ref1;
pre_expr result = NULL;
- auto_vec<vn_reference_op_s> ops;
/* We can value number only calls to real functions. */
if (gimple_call_internal_p (stmt))
continue;
- copy_reference_ops_from_call (stmt, &ops);
- vn_reference_lookup_pieces (gimple_vuse (stmt), 0,
- gimple_expr_type (stmt),
- ops, &ref, VN_NOWALK);
+ vn_reference_lookup_call (stmt, &ref, &ref1);
if (!ref)
continue;