diff --git a/gcc/value-range.cc b/gcc/value-range.cc index d55d85846c1e756ca85333062885312202389443..34fac636cada2cc96be26f4818c693316f18cb21 100644 --- a/gcc/value-range.cc +++ b/gcc/value-range.cc @@ -3928,6 +3928,11 @@ range_tests_signed_zeros () r0.set_nonnegative (float_type_node); if (HONOR_NANS (float_type_node)) ASSERT_TRUE (r0.maybe_isnan ()); + + // Numbers containing zero should have an unknown SIGNBIT. + r0 = frange_float ("0", "10"); + r0.clear_nan (); + ASSERT_TRUE (r0.signbit_p (signbit) && !signbit); } static void @@ -3944,10 +3949,6 @@ range_tests_signbit () r0 = frange_float ("1", "10"); r0.clear_nan (); ASSERT_TRUE (r0.signbit_p (signbit) && !signbit); - // Numbers containing zero should have an unknown SIGNBIT. - r0 = frange_float ("0", "10"); - r0.clear_nan (); - ASSERT_TRUE (r0.signbit_p (signbit) && !signbit); // Numbers spanning both positive and negative should have an // unknown SIGNBIT. r0 = frange_float ("-10", "10");