diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2018-09-12 07:04:19 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@gcc.gnu.org> | 2018-09-12 07:04:19 +0000 |
commit | 28aa63232068fa0adb8911b1987ff9efa0101750 (patch) | |
tree | 8f15a200648baa936a0018cd2c49ea033a8358e7 /gcc/tree-vrp.c | |
parent | bb753cad995b2a0f98a566cc710feef45e1b46b3 (diff) | |
download | gcc-28aa63232068fa0adb8911b1987ff9efa0101750.zip gcc-28aa63232068fa0adb8911b1987ff9efa0101750.tar.gz gcc-28aa63232068fa0adb8911b1987ff9efa0101750.tar.bz2 |
tree-vrp.c (vrp_shift_undefined_p): Remove.
* tree-vrp.c (vrp_shift_undefined_p): Remove.
(extract_range_from_binary_expr_1: Call
wide_int_range_shift_undefined_p instead of vrp_shift_undefined_p.
* wide-int-range.h (wide_int_range_shift_undefined_p): Do not
depend on sign.
From-SVN: r264228
Diffstat (limited to 'gcc/tree-vrp.c')
-rw-r--r-- | gcc/tree-vrp.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c index a82cf3e..d26011a 100644 --- a/gcc/tree-vrp.c +++ b/gcc/tree-vrp.c @@ -1018,17 +1018,6 @@ extract_range_into_wide_ints (const value_range *vr, } } -/* Value range wrapper for wide_int_range_shift_undefined_p. */ - -static inline bool -vrp_shift_undefined_p (const value_range &shifter, unsigned prec) -{ - tree type = TREE_TYPE (shifter.min); - return wide_int_range_shift_undefined_p (TYPE_SIGN (type), prec, - wi::to_wide (shifter.min), - wi::to_wide (shifter.max)); -} - /* Value range wrapper for wide_int_range_multiplicative_op: *VR = *VR0 .CODE. *VR1. */ @@ -1549,7 +1538,9 @@ extract_range_from_binary_expr_1 (value_range *vr, || code == LSHIFT_EXPR) { if (range_int_cst_p (&vr1) - && !vrp_shift_undefined_p (vr1, prec)) + && !wide_int_range_shift_undefined_p (prec, + wi::to_wide (vr1.min), + wi::to_wide (vr1.max))) { if (code == RSHIFT_EXPR) { |