https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126641
Filip Kastl <pheeck at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |pheeck at gcc dot gnu.org
--- Comment #12 from Filip Kastl <pheeck at gcc dot gnu.org> ---
Here's what I found out in case it is useful
---
I'm also seeing segfaults while building libquadmath on multiple machines (all
of them x86_64). But it is strange. I tried to replicate the error on another
x86_64 machine (of the same microarchitecture, but that shouldn't matter, I
think) and I wasn't successful. Here's one of the errors:
during GIMPLE pass: vrp
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/libquadmath/math/rem_pio2q.c:
In function ‘__quadmath_rem_pio2q’:
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/libquadmath/math/rem_pio2q.c:509:1:
internal compiler error: Segmentation fault
509 | __quadmath_rem_pio2q (__float128 x, __float128 *y)
| ^~~~~~~~~~~~~~~~~~~~
0x21995fc internal_error(char const*, ...)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/diagnostic-global-context.cc:787
0xe8689f crash_signal
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/toplev.cc:325
0xdcafa5 frange_nextafter(machine_mode, real_value&, real_value const&)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/range-op-float.cc:315
0x11cbff7 frange_fusible_p
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/value-range.cc:1041
0x11cbff7 frange::set_pairs(frange_pair*, unsigned int)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/value-range.cc:1129
0x11cc822 frange::union_(vrange const&)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/value-range.cc:1394
0xdcc1ff float_widen_lhs_range
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/range-op-float.cc:2430
0xdcfa09 operator_minus::op2_range(frange&, tree_node*, frange const&, frange
const&, relation_trio) const
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/range-op-float.cc:2516
0xb24bfc gori_compute::compute_operand2_range(vrange&,
gimple_range_op_handler&, vrange const&, fur_source&, value_relation*)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-gori.cc:1261
0xb25c91 gori_compute::compute_operand_range(vrange&, gimple*, vrange const&,
tree_node*, fur_source&, value_relation*)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-gori.cc:784
0xb25cca gori_compute::compute_operand_range(vrange&, gimple*, vrange const&,
tree_node*, fur_source&, value_relation*)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-gori.cc:791
0xb27bcb gori_compute::edge_range_p(vrange&, edge_def*, tree_node*,
range_query&)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-gori.cc:1443
0xb136d0 ranger_cache::edge_range(vrange&, edge_def*, tree_node*,
ranger_cache::rfd_mode)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-cache.cc:1317
0xb1380b ranger_cache::range_on_edge(vrange&, edge_def*, tree_node*)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-cache.cc:1356
0xb1dbdc fold_using_range::range_of_range_op(vrange&, gimple_range_op_handler&,
fur_source&)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-fold.cc:806
0xb1f9c0 fold_using_range::fold_stmt(vrange&, gimple*, fur_source&, tree_node*)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-fold.cc:698
0xb2032b fold_range(vrange&, gimple*, edge_def*, range_query*)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-fold.cc:331
0xb27efd gori_compute::edge_range_p(vrange&, edge_def*, tree_node*,
range_query&)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-gori.cc:1470
0xb136d0 ranger_cache::edge_range(vrange&, edge_def*, tree_node*,
ranger_cache::rfd_mode)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-cache.cc:1317
0xb1380b ranger_cache::range_on_edge(vrange&, edge_def*, tree_node*)
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/gcc/gimple-range-cache.cc:1356
/dev/shm/buildbot/builddir/./gcc/cc1 -quiet -I . -I
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/libquadmath -I
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/libquadmath/../include
-iprefix
/dev/shm/buildbot/builddir/gcc/../lib64/gcc/x86_64-pc-linux-gnu/17.0.0/
-isystem /dev/shm/buildbot/builddir/./gcc/include -isystem
/dev/shm/buildbot/builddir/./gcc/include-fixed -MD math/.libs/rem_pio2q.d -MF
math/.deps/rem_pio2q.Tpo -MP -MT math/rem_pio2q.lo -D HAVE_CONFIG_H -D PIC
-isystem /dev/shm/buildbot/install/gcc/x86_64-pc-linux-gnu/include -isystem
/dev/shm/buildbot/install/gcc/x86_64-pc-linux-gnu/sys-include
/home/gcc/buildworker/lntzen5-gcc-trunk-workdays/build/libquadmath/math/rem_pio2q.c
-quiet -dumpdir math/.libs/ -dumpbase rem_pio2q.c -dumpbase-ext .c -mshstk
-mtune=generic -march=x86-64 -g -O2 -fcf-protection=full -fPIC -o
/tmp/cc9cDiLF.s
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.
I experimented a bit. I tried reverting Aldy's commit
r17-2929-g1e5aaad93d8426. Indeed, this got rid of the error and I was able to
bootstrap. However, when I build GCC from r17-2929-g1e5aaad93d8426, the error
also doesn't occur. So maybe r17-2929-g1e5aaad93d8426 introduced the error but
it was latent and resurfaced due to some later commit?