Commit 7ab1122a by James A. Morrison

tree-vrp.c (compare_ranges): Return false for EQ_EXPR if VR0 is less than VR1 or vice-versa.

2005-11-19  James A. Morrison  <phython@gcc.gnu.org>

        * tree-vrp.c (compare_ranges): Return false for EQ_EXPR if VR0 is less
        than VR1 or vice-versa.

From-SVN: r107243
parent b3231ce8
2005-11-19 James A. Morrison <phython@gcc.gnu.org>
* tree-vrp.c (compare_ranges): Return false for EQ_EXPR if VR0 is less
than VR1 or vice-versa.
2005-11-19 Hans-Peter Nilsson <hp@axis.com>
PR middle-end/24912
......
2005-11-19 James A. Morrison <phython@gcc.gnu.org>
* gcc.dg/tree-ssa/vrp22.c: New test.
2005-11-19 Hans-Peter Nilsson <hp@axis.com>
PR middle-end/24912
/* { dg-do compile } */
/* { dg-options "-O1 -ftree-vrp -fdump-tree-vrp" } */
extern void link_error ();
void test02(unsigned int a, unsigned int b)
{
unsigned int x = 0x80000000;
if (a > x)
if (b < x)
if (a == b)
link_error ();
}
/* { dg-final { scan-tree-dump-times "link_error" 0 "vrp" } } */
/* { dg-final { cleanup-tree-dump "vrp" } } */
......@@ -1878,6 +1878,10 @@ compare_ranges (enum tree_code comp, value_range_t *vr0, value_range_t *vr1)
else if (cmp_min != -2 && cmp_max != -2)
return boolean_false_node;
}
/* If [V0_MIN, V1_MAX] < [V1_MIN, V1_MAX] then V0 != V1. */
else if (compare_values (vr0->min, vr1->max) == 1
|| compare_values (vr1->min, vr0->max) == 1)
return boolean_false_node;
return NULL_TREE;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment