https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99540
Bug ID: 99540 Summary: ICE: Segmentation fault in aarch64_add_offset Product: gcc Version: 11.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- Target: aarch64-linux-gnu gcc-11.0.1-alpha20210307 snapshot (g:a18ebd6c439227b048a91fbfa66f5983f884c157) ICEs when compiling the following testcase w/ -mcpu=neoverse-n2 -O3 -ffloat-store -ftrapv: float *MSalign2m2m_rec_initverticalw, *MSalign2m2m_rec_currentw; void match_ribosum (int MSalign2m2m_rec_i, int MSalign2m2m_rec_lgth1, int MSalign2m2m_rec_lgth2) { float **WMMTX; while (MSalign2m2m_rec_i < 1) WMMTX[MSalign2m2m_rec_i++][0] = MSalign2m2m_rec_initverticalw[0]; while (MSalign2m2m_rec_i < MSalign2m2m_rec_lgth1) MSalign2m2m_rec_initverticalw[MSalign2m2m_rec_i++] += 0.1; while (MSalign2m2m_rec_i < MSalign2m2m_rec_lgth2) MSalign2m2m_rec_currentw[MSalign2m2m_rec_i++] += 0.1; } % aarch64-linux-gnu-gcc-11.0.1 -mcpu=neoverse-n2 -O3 -ffloat-store -ftrapv -c i4sksvj6.c during RTL pass: expand i4sksvj6.c: In function 'match_ribosum': i4sksvj6.c:4:1: internal compiler error: Segmentation fault 4 | match_ribosum (int MSalign2m2m_rec_i, int MSalign2m2m_rec_lgth1, | ^~~~~~~~~~~~~ 0xedb516 crash_signal /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/toplev.c:327 0xb193ed force_reg(machine_mode, rtx_def*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/explow.c:671 0x127a3ed aarch64_add_offset /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/config/aarch64/aarch64.c:4677 0x1293eea aarch64_expand_mov_immediate(rtx_def*, rtx_def*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/config/aarch64/aarch64.c:5281 0x167c29a gen_movdi(rtx_def*, rtx_def*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/config/aarch64/aarch64.md:1249 0xb41ec8 rtx_insn* insn_gen_fn::operator()<rtx_def*, rtx_def*>(rtx_def*, rtx_def*) const /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/recog.h:407 0xb41ec8 emit_move_ccmode /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/expr.c:3640 0xb41ec8 emit_move_insn_1(rtx_def*, rtx_def*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/expr.c:3785 0xb4232e emit_move_insn(rtx_def*, rtx_def*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/expr.c:3936 0xb193ae copy_to_mode_reg(machine_mode, rtx_def*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/explow.c:653 0xdb20e4 maybe_legitimize_operand /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/optabs.c:7626 0xdb20e4 maybe_legitimize_operands(insn_code, unsigned int, unsigned int, expand_operand*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/optabs.c:7758 0xdb23e4 maybe_gen_insn(insn_code, unsigned int, expand_operand*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/optabs.c:7777 0xdba917 expand_binop_directly /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/optabs.c:1409 0xdb6bc5 expand_binop(machine_mode, optab_tag, rtx_def*, rtx_def*, rtx_def*, int, optab_methods) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/optabs.c:1496 0xb479b8 force_operand(rtx_def*, rtx_def*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/expr.c:7753 0xb193ca copy_to_mode_reg(machine_mode, rtx_def*) /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/explow.c:649 0xdb070f maybe_legitimize_operand_same_code /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/optabs.c:7575 0xdb070f maybe_legitimize_operand_same_code /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/optabs.c:7550 0xdb20d4 maybe_legitimize_operand /var/tmp/portage/cross-aarch64-linux-gnu/gcc-11.0.1_alpha20210307/work/gcc-11-20210307/gcc/optabs.c:7623