[Bug target/96448] New: ICE: maximum number of generated reload insns per insn achieved (90)

asolokha at gmx dot com gcc-bugzilla@gcc.gnu.org
Tue Aug 4 03:15:17 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96448

            Bug ID: 96448
           Summary: ICE: maximum number of generated reload insns per insn
                    achieved (90)
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---
            Target: powerpc-*-linux-gnu

Probably another invalid target issue, but still…

gcc-11.0.0-alpha20200802 snapshot (g:6e46b3f3da5c03bc529b3690dd0995927feb9142)
configured for a 32-bit BE powerpc target ICEs when compiling the following
testcase, extracted from test/CodeGen/x86-inline-asm-min-vector-width.c from
clang 10.0.1 test suite, w/ -mcpu=power10:

typedef long long __m256i __attribute__ ((vector_size (32)));

__m256i testYMMout(__m256i *p) {
  __m256i ymm0;
  __asm__("vmovdqu %1, %0" :"=v"(ymm0) : "m"(*(__m256i*)p));
  return ymm0;
}

% powerpc-e300c3-linux-gnu-gcc-11.0.0 -mcpu=power10 -w -c dcbvmywg.c
dcbvmywg.c: In function 'testYMMout':
dcbvmywg.c:5:3: note: the layout of aggregates containing vectors with 32-byte
alignment has changed in GCC 5
    5 |   __asm__("vmovdqu %1, %0" :"=v"(ymm0) : "m"(*(__m256i*)p));
      |   ^~~~~~~
during RTL pass: reload
dcbvmywg.c:7:1: internal compiler error: maximum number of generated reload
insns per insn achieved (90)
    7 | }
      | ^
0xc1ddd0 lra_constraints(bool)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200802/work/gcc-11-20200802/gcc/lra-constraints.c:4954
0xc07540 lra(_IO_FILE*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200802/work/gcc-11-20200802/gcc/lra.c:2415
0xbbea4c do_reload
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200802/work/gcc-11-20200802/gcc/ira.c:5525
0xbbea4c execute
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200802/work/gcc-11-20200802/gcc/ira.c:5711


More information about the Gcc-bugs mailing list