Protect second call to extract_range_from_multiplicative_op_1
Following on from: * tree-vrp.c (extract_range_from_multiplicative_op_1): Assert for VR_RANGE only; don't allow VR_ANTI_RANGE. (extract_range_from_binary_expr_1): Don't call extract_range_from_multiplicative_op_1 if !range_int_cst_p. there was a later call to extract_range_from_multiplicative_op_1 too, that used a negative test for a symbolic (!is_gimple_min_invariant) range rather than a positive test for an integer range. 2017-11-04 Richard Sandiford <richard.sandiford@linaro.org> gcc/ * tree-vrp.c (extract_range_from_binary_expr_1): Check range_int_cst_p rather than !symbolic_range_p before calling extract_range_from_multiplicative_op_1. From-SVN: r256262
This commit is contained in:
parent
682820ccf9
commit
1e678f69f7
|
@ -1,3 +1,9 @@
|
|||
2018-01-04 Richard Sandiford <richard.sandiford@linaro.org>
|
||||
|
||||
* tree-vrp.c (extract_range_from_binary_expr_1): Check
|
||||
range_int_cst_p rather than !symbolic_range_p before calling
|
||||
extract_range_from_multiplicative_op_1.
|
||||
|
||||
2017-01-04 Jeff Law <law@redhat.com>
|
||||
|
||||
* tree-ssa-math-opts.c (execute_cse_reciprocals_1): Remove
|
||||
|
|
|
@ -2042,7 +2042,7 @@ extract_range_from_binary_expr_1 (value_range *vr,
|
|||
return;
|
||||
}
|
||||
}
|
||||
else if (!symbolic_range_p (&vr0) && !symbolic_range_p (&vr1))
|
||||
else if (range_int_cst_p (&vr0) && range_int_cst_p (&vr1))
|
||||
{
|
||||
extract_range_from_multiplicative_op_1 (vr, code, &vr0, &vr1);
|
||||
return;
|
||||
|
|
Loading…
Reference in New Issue