On Wed, May 1, 2024 at 12:43 AM Aldy Hernandez <al...@redhat.com> wrote: > > gcc/ChangeLog: > > * ipa-fnsummary.cc (evaluate_properties_for_edge): Initialize > Value_Range's. > * value-range.h (class Value_Range): Add a buffer and remove > m_irange and m_frange. > (Value_Range::Value_Range): Call init. > (Value_Range::set_type): Same. > (Value_Range::init): Use in place new to initialize buffer. > (Value_Range::operator=): Tidy.
I'm seeing a crash building on sparc-sun-solaris2.11 that may be due to this change. The crash occurs in stage 1, the first time the newly built compiler is used. ./xgcc -B./ -B/var/gcc/iant/install/sparc-sun-solaris2.11/bin/ -isystem /var/gcc/iant/install/sparc-sun-solaris2.11/include -isystem /var/gcc/iant/install/sparc-sun-solaris2.11/sys-include -L/var/gcc/iant/bootstrap/gcc/../ld -xc -nostdinc /dev/null -S -o /dev/null -fself-test=../../gcc/gcc/testsuite/selftests In function ‘test_fn’: cc1: internal compiler error: Bus Error 0x1c7db03 crash_signal ../../gcc/gcc/toplev.cc:319 0x104a82c void wi::copy<wide_int_storage, generic_wide_int<wide_int_ref_storage<true, false> > >(wide_int_storage&, generic_wide_int<wide_int_ref_storage<true, false> > const&) ../../gcc/gcc/wide-int.h:2191 0x1049da3 wide_int_storage& wide_int_storage::operator=<wi::hwi_with_prec>(wi::hwi_with_prec const&) ../../gcc/gcc/wide-int.h:1247 0x104929b generic_wide_int<wide_int_storage>& generic_wide_int<wide_int_storage>::operator=<wi::hwi_with_prec>(wi::hwi_with_prec const&) ../../gcc/gcc/wide-int.h:1002 0x104757f irange_bitmask::set_unknown(unsigned int) ../../gcc/gcc/value-range.h:163 0x1047b6f irange::set_varying(tree_node*) ../../gcc/gcc/value-range.h:1067 0x1774d1b Value_Range::set_varying(tree_node*) ../../gcc/gcc/value-range.h:720 0x1aef213 range_cast(vrange&, tree_node*) ../../gcc/gcc/range-op.h:248 0x1ada517 operator_lshift::op1_range(irange&, tree_node*, irange const&, irange const&, relation_trio) const ../../gcc/gcc/range-op.cc:2706 0x1aeaa6b range_op_lshift_tests ../../gcc/gcc/range-op.cc:4750 0x1aee20f selftest::range_op_tests() ../../gcc/gcc/range-op.cc:4887 0x2dfaa37 test_ranges ../../gcc/gcc/function-tests.cc:585 0x2dfb337 selftest::function_tests_cc_tests() ../../gcc/gcc/function-tests.cc:681 0x308a027 selftest::run_tests() ../../gcc/gcc/selftest-run-tests.cc:108 0x1c833ef toplev::run_self_tests() ../../gcc/gcc/toplev.cc:2213 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. make: *** [../../gcc/gcc/c/Make-lang.in:153: s-selftest-c] Error 1 Ian