https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123833
Bug ID: 123833
Summary: [16 Regression] mips64el: ICE at -O1 during RTL pass:
ce1
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: xxs_chy at outlook dot com
Target Milestone: ---
Testcase:
#include <stdint.h>
#define BS_VEC(type, num) type __attribute__((vector_size(num * sizeof(type))))
BS_VEC(int8_t, 2) backsmith_pure_0(int64_t);
uint64_t backsmith_pure_4(int16_t BS_ARG_0)
{
BS_VEC(int16_t, 16)
BS_VAR_0 = __builtin_convertvector(
__builtin_shufflevector(backsmith_pure_0(0), backsmith_pure_0(0), 0, 2,
2, 3, 2, 1, 2, 3, 0, 2, 0, 0, 2, 2, 0, 1),
BS_VEC(int16_t, 16));
for (;;)
{
if (__builtin_ctzg((uint8_t)BS_VAR_0[3], BS_ARG_0))
for (;;);
return 0;
}
}
Command:
> mips64el-unknown-linux-musl-gcc -O1 test.c
Dump:
during RTL pass: ce1
a.c: In function 'backsmith_pure_4':
a.c:17:1: internal compiler error: in mips_load_store_insns, at
config/mips/mips.cc:31
51
17 | }
| ^
0x71170e829d8f __libc_start_call_main
../sysdeps/nptl/libc_start_call_main.h:58
0x71170e829e3f __libc_start_main_impl
../csu/libc-start.c:392
/opt/mips64/bin/../libexec/gcc/mips64el-unknown-linux-musl/16.0.1/cc1 -quiet
-iprefix
/opt/mips64/bin/../lib/gcc/mips64el-unknown-linux-musl/16.0.1/ -isysroot
/opt/mips64/b
in/../mips64el-unknown-linux-musl/sysroot a.c -mel -quiet -dumpbase a.c
-dumpbase-ext
.c -mabi=64 -mhard-float -mllsc -mno-shared -O1 -o /tmp/ccZwKqMB.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.