https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105853
Bug ID: 105853
Summary: ice in pieces_addr constructor
Product: gcc
Version: 12.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: dcb314 at hotmail dot com
Target Milestone: ---
Created attachment 53086
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53086&action=edit
C source code
The attached C code does this:
$ ../results/bin/gcc -c -w -march=bdver2 bug818.c
during RTL pass: expand
lib/packets.c: In function ‘compose_nd_ns’:
lib/packets.c:1701:5: internal compiler error: Segmentation fault
0xdad1c9 crash_signal(int)
/home/dcb/gcc/working/gcc/../../trunk.git/gcc/toplev.cc:322
0x955a4d pieces_addr::pieces_addr(rtx_def*, bool, rtx_def* (*)(void*, void*,
long, fixed_size_mode), void*)
/home/dcb/gcc/working/gcc/../../trunk.git/gcc/expr.cc:996
0x955a4d op_by_pieces_d::op_by_pieces_d(unsigned int, rtx_def*, bool, rtx_def*,
bool, rtx_def* (*)(void*, void*, l
ong, fixed_size_mode), void*, unsigned long, unsigned int, bool, bool)
/home/dcb/gcc/working/gcc/../../trunk.git/gcc/expr.cc:1174
The code seems to break sometime between git hash 919822adc923b00e
and aec868578d851576.
I will have my usual go at reducing the code.