aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2018-11-12 11:16:36 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2018-11-12 11:16:36 +0000
commitbdfac905dab78abf4ae4d652919fefc3b669eb52 (patch)
tree5f74dadf66f61f02759978710ae90490fdfb5db1 /gcc
parent682abf8d15c091b67158a8eee5b93a14b9b9740b (diff)
downloadgcc-bdfac905dab78abf4ae4d652919fefc3b669eb52.zip
gcc-bdfac905dab78abf4ae4d652919fefc3b669eb52.tar.gz
gcc-bdfac905dab78abf4ae4d652919fefc3b669eb52.tar.bz2
tree-vrp.c (set_value_range_to_nonnull): Clear equiv.
2018-11-12 Richard Biener <rguenther@suse.de> * tree-vrp.c (set_value_range_to_nonnull): Clear equiv. (set_value_range_to_null): Likewise. * vr-values.c (vr_values::extract_range_from_comparison): Clear equiv for constant singleton ranges. From-SVN: r266027
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/tree-vrp.c4
-rw-r--r--gcc/vr-values.c4
3 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b12964f..ecfd6aa 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2018-11-12 Richard Biener <rguenther@suse.de>
+
+ * tree-vrp.c (set_value_range_to_nonnull): Clear equiv.
+ (set_value_range_to_null): Likewise.
+ * vr-values.c (vr_values::extract_range_from_comparison):
+ Clear equiv for constant singleton ranges.
+
2018-11-12 Wei Xiao <wei3.xiao@intel.com>
* config/i386/sse.md: Combine VFIXUPIMM* patterns
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
index 3ef676b..4b32340 100644
--- a/gcc/tree-vrp.c
+++ b/gcc/tree-vrp.c
@@ -767,7 +767,7 @@ void
set_value_range_to_nonnull (value_range *vr, tree type)
{
tree zero = build_int_cst (type, 0);
- vr->update (VR_ANTI_RANGE, zero, zero);
+ set_value_range (vr, VR_ANTI_RANGE, zero, zero, NULL);
}
@@ -776,7 +776,7 @@ set_value_range_to_nonnull (value_range *vr, tree type)
void
set_value_range_to_null (value_range *vr, tree type)
{
- set_value_range_to_value (vr, build_int_cst (type, 0), vr->equiv ());
+ set_value_range_to_value (vr, build_int_cst (type, 0), NULL);
}
/* Return true, if VAL1 and VAL2 are equal values for VRP purposes. */
diff --git a/gcc/vr-values.c b/gcc/vr-values.c
index 4edc5a4..dc8a071 100644
--- a/gcc/vr-values.c
+++ b/gcc/vr-values.c
@@ -896,7 +896,7 @@ vr_values::extract_range_from_comparison (value_range *vr, enum tree_code code,
type. */
val = fold_convert (type, val);
if (is_gimple_min_invariant (val))
- set_value_range_to_value (vr, val, vr->equiv ());
+ set_value_range_to_value (vr, val, NULL);
else
vr->update (VR_RANGE, val, val);
}
@@ -1672,7 +1672,7 @@ vr_values::adjust_range_with_scev (value_range *vr, struct loop *loop,
/* Like in PR19590, scev can return a constant function. */
if (is_gimple_min_invariant (chrec))
{
- set_value_range_to_value (vr, chrec, vr->equiv ());
+ set_value_range_to_value (vr, chrec, NULL);
return;
}