https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100306
Bug ID: 100306 Summary: aarch64: ICE (output_operand: invalid expression as operand) during final Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: acoplan at gcc dot gnu.org Target Milestone: --- The following (reduced from GROMACS 2021.1) fails: $ cat test.c typedef double c[3]; typedef int d[3]; typedef struct { d e; } f; typedef struct { f g; f h; } i; i j; double k; int l; void w(void *); void x(char); void u(void *, void *); void m() { char a[4096], n[4096], b[4096], o[4096], p[4096], s[4096], r[4096], t[4096]; w(t); w(p); w(n); w(b); u(a, s); char v = r[0]; c g; { int q[4096]; w(q); w(o); } x(v); l = 0; for (; l < 3; l++) { j.g.e[l] = g[l]; j.h.e[l] = k; } } $ aarch64-linux-gnu-gcc -c test.c -O2 -ftree-vectorize during RTL pass: final test.c: In function ‘m’: test.c:36:1: internal compiler error: output_operand: invalid expression as operand 36 | } | ^ 0xa062c6 output_operand_lossage(char const*, ...) /home/alecop01/toolchain/src/gcc/gcc/final.c:3627 0xa06b17 output_addr_const(_IO_FILE*, rtx_def*) /home/alecop01/toolchain/src/gcc/gcc/final.c:4224 0xa069fa output_addr_const(_IO_FILE*, rtx_def*) /home/alecop01/toolchain/src/gcc/gcc/final.c:4184 0x12415d8 aarch64_print_operand_address /home/alecop01/toolchain/src/gcc/gcc/config/aarch64/aarch64.c:11235 0xa064ee output_address(machine_mode, rtx_def*) /home/alecop01/toolchain/src/gcc/gcc/final.c:4085 0x1244129 aarch64_print_operand /home/alecop01/toolchain/src/gcc/gcc/config/aarch64/aarch64.c:10916 0xa06453 output_operand(rtx_def*, int) /home/alecop01/toolchain/src/gcc/gcc/final.c:4069 0xa06ec8 output_asm_insn(char const*, rtx_def**) /home/alecop01/toolchain/src/gcc/gcc/final.c:3981 0xa0adc3 final_scan_insn_1 /home/alecop01/toolchain/src/gcc/gcc/final.c:3125 0xa0b1d0 final_scan_insn(rtx_insn*, _IO_FILE*, int, int, int*) /home/alecop01/toolchain/src/gcc/gcc/final.c:3171 0xa0bdf0 final_1 /home/alecop01/toolchain/src/gcc/gcc/final.c:2022 0xa0c14e rest_of_handle_final /home/alecop01/toolchain/src/gcc/gcc/final.c:4676 0xa0c14e execute /home/alecop01/toolchain/src/gcc/gcc/final.c:4754 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.