From cae444de225e07fb30dedab6ea8ea12356242a14 Mon Sep 17 00:00:00 2001 From: rguenth Date: Thu, 21 Aug 2008 11:25:28 +0000 Subject: 2008-08-21 Richard Guenther PR tree-optimization/37181 * tree-vrp.c (extract_range_from_binary_expr): Check for NULL folding result. (extract_range_from_unary_expr): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@139375 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/tree-vrp.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'gcc/tree-vrp.c') diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c index a71002fd9e4..a61f292c43f 100644 --- a/gcc/tree-vrp.c +++ b/gcc/tree-vrp.c @@ -2062,7 +2062,8 @@ extract_range_from_binary_expr (value_range_t *vr, && (op1 = op_with_constant_singleton_value_range (op1)) != NULL_TREE) { tree tem = fold_binary (code, expr_type, op0, op1); - if (is_gimple_min_invariant (tem) + if (tem + && is_gimple_min_invariant (tem) && !is_overflow_infinity (tem)) { set_value_range (vr, VR_RANGE, tem, tem, NULL); @@ -2477,7 +2478,8 @@ extract_range_from_unary_expr (value_range_t *vr, enum tree_code code, if ((op0 = op_with_constant_singleton_value_range (op0)) != NULL_TREE) { tree tem = fold_unary (code, type, op0); - if (is_gimple_min_invariant (tem) + if (tem + && is_gimple_min_invariant (tem) && !is_overflow_infinity (tem)) { set_value_range (vr, VR_RANGE, tem, tem, NULL); -- cgit v1.2.1