aboutsummaryrefslogtreecommitdiff
path: root/gcc/value-range.cc
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2022-10-13 15:54:17 +0200
committerMartin Liska <mliska@suse.cz>2022-10-13 15:54:17 +0200
commitbd21c04269deded2c7476ceca1100a26f28ea526 (patch)
tree197bf75eedac69362078a4ccc0afe5615c45c327 /gcc/value-range.cc
parentd9e7934d25da4a78ffef1f738206aa1d897911df (diff)
parent786e4c024f941671a233f5779d73a5d22f4e9588 (diff)
downloadgcc-bd21c04269deded2c7476ceca1100a26f28ea526.zip
gcc-bd21c04269deded2c7476ceca1100a26f28ea526.tar.gz
gcc-bd21c04269deded2c7476ceca1100a26f28ea526.tar.bz2
Merge branch 'master' into devel/sphinx
Diffstat (limited to 'gcc/value-range.cc')
-rw-r--r--gcc/value-range.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/value-range.cc b/gcc/value-range.cc
index a14f9bc..26a2b78 100644
--- a/gcc/value-range.cc
+++ b/gcc/value-range.cc
@@ -779,7 +779,7 @@ frange::set_nonnegative (tree type)
// Set +NAN as the only possibility.
if (HONOR_NANS (type))
- update_nan (/*sign=*/0);
+ update_nan (/*sign=*/false);
}
// Here we copy between any two irange's. The ranges can be legacy or
@@ -2903,6 +2903,11 @@ irange::set_range_from_nonzero_bits ()
}
return true;
}
+ else if (popcount == 0)
+ {
+ set_zero (type ());
+ return true;
+ }
return false;
}