aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2016-06-13 17:44:12 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2016-06-13 17:44:12 +0000
commitec67c62e3c3b4f2cc6f328135b87f562e20e1b75 (patch)
tree81bb2a02f5c31224f0fa271f5c363233b4162739 /gcc
parentf7e4f2e3f34178795180ed6160b135eb7072c987 (diff)
downloadgcc-ec67c62e3c3b4f2cc6f328135b87f562e20e1b75.zip
gcc-ec67c62e3c3b4f2cc6f328135b87f562e20e1b75.tar.gz
gcc-ec67c62e3c3b4f2cc6f328135b87f562e20e1b75.tar.bz2
tree-ssa-sccvn.c (vn_reference_lookup_3): Use a uniform test and update shared_lookup_references only once after changing...
* tree-ssa-sccvn.c (vn_reference_lookup_3): Use a uniform test and update shared_lookup_references only once after changing operands. From-SVN: r237388
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-ssa-sccvn.c9
2 files changed, 7 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 89098e7..b1026bd 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2016-06-13 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tree-ssa-sccvn.c (vn_reference_lookup_3): Use a uniform test and
+ update shared_lookup_references only once after changing operands.
+
2016-06-13 Thomas Schwinge <thomas@codesourcery.com>
PR middle-end/71373
diff --git a/gcc/tree-ssa-sccvn.c b/gcc/tree-ssa-sccvn.c
index 730db04..0cbd2cd 100644
--- a/gcc/tree-ssa-sccvn.c
+++ b/gcc/tree-ssa-sccvn.c
@@ -2089,11 +2089,7 @@ vn_reference_lookup_3 (ao_ref *ref, tree vuse, void *vr_,
/* We need to pre-pend vr->operands[0..i] to rhs. */
vec<vn_reference_op_s> old = vr->operands;
if (i + 1 + rhs.length () > vr->operands.length ())
- {
- vr->operands.safe_grow (i + 1 + rhs.length ());
- if (old == shared_lookup_references)
- shared_lookup_references = vr->operands;
- }
+ vr->operands.safe_grow (i + 1 + rhs.length ());
else
vr->operands.truncate (i + 1 + rhs.length ());
FOR_EACH_VEC_ELT (rhs, j, vro)
@@ -2244,8 +2240,7 @@ vn_reference_lookup_3 (ao_ref *ref, tree vuse, void *vr_,
{
vec<vn_reference_op_s> old = vr->operands;
vr->operands.safe_grow_cleared (2);
- if (old == shared_lookup_references
- && vr->operands != old)
+ if (old == shared_lookup_references)
shared_lookup_references = vr->operands;
}
else