[Bug ipa/124128] [16 Regression] ICE in intersect, at value-range.cc:2043 on s390x-linux-gnu
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Mar 30 11:12:04 GMT 2026
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124128
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |NEW
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
gcc -Wdate-time -D_FORTIFY_SOURCE=3 -g -O2
-Werror=implicit-function-declaration -mbackchain -flto=auto
-fstack-protector-strong -Wformat -Werror=format-security
-fno-stack-clash-protection -m64 -fPIC -o openblas_utest_ext
test_extensions/test_saxpby.o cblas_sscal.o -r -nostdlib
-flinker-output=nolto-rel
2043 gcc_checking_assert (undefined_p () || r.undefined_p ()
2044 || range_compatible_p (type (), r.type ()));
(gdb) p debug (v)
warning: RTTI symbol not found for class 'int_range<3u, true>'
warning: RTTI symbol not found for class 'int_range<3u, true>'
[irange] unsigned int [1, 2]
$2 = void
(gdb) p debug (*this)
warning: RTTI symbol not found for class 'int_range<3u, true>'
[irange] blasint [-INF, -INF][0, +INF]
and in the caller
1821 if (src_type == dst_type)
1822 {
1823 vr.intersect (op_res);
and both src/dst type are blasint. That is int vs. unsigned int.
The operation is ABSU_EXPR, so I assume that
if (operation != NOP_EXPR)
isn't good enough or that testing src/dst_type seem wrong. Probably
using src_type == op_res.type () would work better?
I'll attach preprocessed source of the two TUs, possibly with knowing
it's ABSU_EXPR an artificial testcase could be produced.
More information about the Gcc-bugs
mailing list