https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112830
Bug ID: 112830
Summary: internal compiler error: in
convert_memory_address_addr_space_1, at explow.cc:302
Product: gcc
Version: 14.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: gjl at gcc dot gnu.org
Target Milestone: ---
Compile the following C test case with avr-gcc -S:
typedef __SIZE_TYPE__ size_t;
void copy_n (void *vdst, const __memx void *vsrc, size_t n)
{
typedef struct { char a[n]; } T;
T *dst = (T*) vdst;
const __memx T *src = (const __memx T*) vsrc;
*dst = *src;
}
during RTL pass: expand
ice.c: In function 'copy_n':
ce.c:20:10: internal compiler error: in convert_memory_address_addr_space_1, at
explow.cc:302
20 | *dst = *src;
| ~~~~~^~~~~~
It occurs with at least v5.4 to current master (future v14).
Configured with: ../../source/gcc-master/configure --target=avr --disable-nls
--with-dwarf2 --with-gnu-as --with-gnu-ld --disable-shared
--enable-checking=release --enable-languages=c,c++