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

            Bug ID: 100581
           Summary: [12 Regression] ICE in extract_insn, at recog.c:2770
                    since r12-731-gb1f7fd8a2a5558da
           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: marxin at gcc dot gnu.org
                CC: ubizjak at gmail dot com
  Target Milestone: ---
              Host: x86_64-linux-gnu

The following fails:

$ cat ice.C
typedef float __attribute__((__vector_size__(8))) v64f32;
v64f32 af, bf, ff_a, ff_b;
v64f32 f() { return ff_a > ff_b ? af : bf; }

$ g++ ice.C -c -mxop
ice.C: In function ‘v64f32 f()’:
ice.C:3:44: error: unrecognizable insn:
    3 | v64f32 f() { return ff_a > ff_b ? af : bf; }
      |                                            ^
(insn 10 9 13 2 (set (reg:V2SF 86 [ _7 ])
        (if_then_else:V2SF (reg:V2SF 86 [ _7 ])
            (reg:V2SF 84 [ af.2_4 ])
            (reg:V2SF 85 [ bf.3_5 ]))) "ice.C":3:40 -1
     (nil))
during RTL pass: vregs
ice.C:3:44: internal compiler error: in extract_insn, at recog.c:2770
0x7fd7bb _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        /home/marxin/Programming/gcc/gcc/rtl-error.c:108
0x7fd7dd _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
        /home/marxin/Programming/gcc/gcc/rtl-error.c:116
0x7fb9b1 extract_insn(rtx_insn*)
        /home/marxin/Programming/gcc/gcc/recog.c:2770
0xe62989 instantiate_virtual_regs_in_insn
        /home/marxin/Programming/gcc/gcc/function.c:1609
0xe62989 instantiate_virtual_regs
        /home/marxin/Programming/gcc/gcc/function.c:1983
0xe62989 execute
        /home/marxin/Programming/gcc/gcc/function.c:2032
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.

Reply via email to