From 41ddc5b0a6b44a9df53a259636fa3b534ae41cbe Mon Sep 17 00:00:00 2001 From: Aldy Hernandez Date: Tue, 25 May 2021 08:36:44 +0200 Subject: [PATCH] Fix selftest for targets where short and int are the same size. avr-elf seems to use HImode for both integer_type_node and signed_char_type_node, which is causing the check for different sized VARYING ranges to fail. gcc/ChangeLog: * value-range.cc (range_tests_legacy): Use build_nonstandard_integer_type instead of int and short. --- gcc/value-range.cc | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gcc/value-range.cc b/gcc/value-range.cc index 8d7b46c..f113fd7 100644 --- a/gcc/value-range.cc +++ b/gcc/value-range.cc @@ -2250,11 +2250,13 @@ range_tests_legacy () } // VARYING of different sizes should not be equal. - int_range_max r0 (integer_type_node); - int_range_max r1 (short_integer_type_node); + tree big_type = build_nonstandard_integer_type (32, 1); + tree small_type = build_nonstandard_integer_type (16, 1); + int_range_max r0 (big_type); + int_range_max r1 (small_type); ASSERT_TRUE (r0 != r1); - value_range vr0 (integer_type_node); - int_range_max vr1 (short_integer_type_node); + value_range vr0 (big_type); + int_range_max vr1 (small_type); ASSERT_TRUE (vr0 != vr1); } -- 2.7.4