https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114194
--- Comment #6 from Bruce Hoult ---
The ICE also happens with bzero().
The ICE does NOT happen with a constant length of 16 of greater, in which case
a function call is made instead of expanding inline.
With rv64gv or rv64gcv a series of N
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114194
--- Comment #5 from Bruce Hoult ---
oops .. 379 lines .. I grep'd wrong. Anyway...
gcc/config/riscv/riscv-vector-switch.def
-ENTRY (RVVMF2QI, true, LMUL_F2, 16)
-ENTRY (RVVMF4QI, true, LMUL_F4, 32)
-ENTRY (RVVMF8QI, TARGET_MIN_VLEN > 32,
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114194
--- Comment #4 from Bruce Hoult ---
I've bisected this and the problem is introduced in 2d7205eb2c3 "RISC-V: Handle
differences between XTheadvector and Vector"
Fortunately this commit touches only 136 lines of code, unlike the later two
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114194
--- Comment #3 from Bruce Hoult ---
Simpler example, found independently.
void *memset();
void a(void *b){ memset(b, 0, 1lu); }
There might be a lot of code that triggers this. Fortunately the source file
this happened in didn't
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114172
Bruce Hoult changed:
What|Removed |Added
CC||bruce at hoult dot org
--- Comment #1
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114226
Bruce Hoult changed:
What|Removed |Added
Keywords||ice-on-valid-code
URL|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114226
--- Comment #2 from Bruce Hoult ---
Created attachment 57601
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57601=edit
compiler output
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114226
Bug ID: 114226
Summary: ICE on valid vanilla code when xtheadvector enabled
Product: gcc
Version: 14.0
Status: UNCONFIRMED
Severity: normal
Priority: P3