https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110144
Bug ID: 110144
Summary: cris-unknown-elf cross build fails with ICE if RTL
checking is enabled
Product: gcc
Version: 14.0
Status: UNCONFIRMED
Severity: minor
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: dimitar at gcc dot gnu.org
Target Milestone: ---
I'm trying to cross build the current trunk:
$ configure --target=cris-unknown-elf --with-newlib --without-headers
--enable-languages=c --disable-nls --disable-libssp --enable-checking=yes,rtl
But the configure stage for libgcc fails with:
configure:3814:
/home/dinux/projects/pru/local-workspace/cris-gcc-build/./gcc/xgcc
-B/home/dinux/projects/pru/local-workspace/cris-gcc-build/./gcc/
-B/usr/local/cris-unknown-elf/bin/ -B/usr/local/cris-unknown-elf/lib/ -isystem
/usr/local/cris-unknown-elf/include -isystem
/usr/local/cris-unknown-elf/sys-include -c -g -O2 conftest.c >&5
during RTL pass: mach2
conftest.c: In function 'main':
conftest.c:16:1: internal compiler error: RTL check: expected elt 3 type 'e' or
'u', have '0' (rtx note) in PATTERN, at rtl.h:1511
16 | }
| ^
0x6c9a81 rtl_check_failed_type2(rtx_def const*, int, int, int, char const*,
int, char const*)
../../gcc/gcc/rtl.cc:907
0x767bb8 PATTERN(rtx_def*)
../../gcc/gcc/rtl.h:1511
0x768158 PATTERN(rtx_def*)
../../gcc/gcc/rtl.h:1479
0x768158 cris_postdbr_cmpelim
../../gcc/gcc/config/cris/cris.cc:378
0x768158 execute
../../gcc/gcc/config/cris/cris.cc:331
Note that without "--enable-checking=yes,rtl" the cross toolchain compilation
is successful.