From 19ba44e43008541aa17f43d9f5970449bbd505e5 Mon Sep 17 00:00:00 2001 From: aldyh Date: Wed, 2 Oct 2019 19:54:09 +0000 Subject: Inverting a range of VARYING or UNDEFINED traps. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/ranger@276486 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/range-op.cc | 7 ------- gcc/tree-vrp.c | 6 +----- 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/gcc/range-op.cc b/gcc/range-op.cc index 637004005e6..b538b00459a 100644 --- a/gcc/range-op.cc +++ b/gcc/range-op.cc @@ -3005,13 +3005,6 @@ range_tests () r2.invert (); ASSERT_TRUE (r0 == r2); - // NOT(-MIN,+MAX) is the empty set and should return false. - r0 = value_range_base (minint, maxint); - r0.invert (); - ASSERT_TRUE (r0.undefined_p ()); - r1.set_undefined (); - ASSERT_TRUE (r0 == r1); - // Test that booleans and their inverse work as expected. r0 = range_zero (boolean_type_node); ASSERT_TRUE (r0 == value_range_base (build_zero_cst (boolean_type_node), diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c index b4e2a60829f..a2ab4a21925 100644 --- a/gcc/tree-vrp.c +++ b/gcc/tree-vrp.c @@ -6150,11 +6150,7 @@ value_range_base::contains_p (tree cst) const void value_range_base::invert () { - if (undefined_p ()) - return; - if (varying_p ()) - set_undefined (); - else if (m_kind == VR_RANGE) + if (m_kind == VR_RANGE) m_kind = VR_ANTI_RANGE; else if (m_kind == VR_ANTI_RANGE) m_kind = VR_RANGE; -- cgit v1.2.3