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

            Bug ID: 107057
           Summary: [10/11/12/13 Regression] ICE in
                    extract_constrain_insn, at recog.cc:2692
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gs...@t-online.de
  Target Milestone: ---

Started between 20190630 and 20190728, at -O3 or -Ofast :


$ cat z1.c
typedef double v2df __attribute__ ((vector_size (16)));
v2df f (double a, double b)
{
  v2df v;
  double *c = (double *)&v;
  *c = a;
  *(c+1) = b;
  return v;
}
void g ()
{
  v2df x = f (1.0, 1.0);
  v2df y = f (2.0, 2.0);
  for (;*(double *)&x<=8; x+=y)
    g ();
}


$ gcc-13-20220925 -c z1.c -mavx -mcmodel=large -O2
$
$ gcc-13-20220925 -c z1.c -mavx -mcmodel=large -O3
z1.c: In function 'g':
z1.c:16:1: error: insn does not satisfy its constraints:
   16 | }
      | ^
(insn 76 407 101 5 (set (reg/v:V2DF 24 xmm4 [orig:108 x ] [108])
        (vec_concat:V2DF (mem/u/c:DF (reg:DI 0 ax [330]) [0  S8 A64])
            (mem/u/c:DF (reg:DI 4 si [331]) [0  S8 A64]))) "z1.c":7:10 5952
{vec_concatv2df}
     (expr_list:REG_EQUAL (const_vector:V2DF [
                (const_double:DF 1.0e+0 [0x0.8p+1]) repeated x2
            ])
        (nil)))
during RTL pass: reload
z1.c:16:1: internal compiler error: in extract_constrain_insn, at recog.cc:2692
0x69f5c0 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        ../../gcc/rtl-error.cc:108
0x69f5e9 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
        ../../gcc/rtl-error.cc:118
0xe20add extract_constrain_insn(rtx_insn*)
        ../../gcc/recog.cc:2692
0xce0d77 check_rtl
        ../../gcc/lra.cc:2126
0xce6296 lra(_IO_FILE*)
        ../../gcc/lra.cc:2544
0xc93fc9 do_reload
        ../../gcc/ira.cc:5940
0xc93fc9 execute
        ../../gcc/ira.cc:6126

Reply via email to