[Bug target/107970] New: ICE in extract_insn, at recog.cc:2791 since r13-2730-gd0c73b6c85677e67

marxin at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Dec 5 08:51:42 GMT 2022


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

            Bug ID: 107970
           Summary: ICE in extract_insn, at recog.cc:2791 since
                    r13-2730-gd0c73b6c85677e67
           Product: gcc
           Version: 13.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: crazylht at gmail dot com
  Target Milestone: ---
              Host: x86_64-linux-gnu

The following crashes:

$ cat ice.i
float *foo_p;

void
foo(float *__restrict q) {
  foo_p[0] = __builtin_truncf(q[0]);
  foo_p[1] = __builtin_truncf(q[1]);
}

$ gcc -m32 -Ofast -m3dnowa -mavx512vpopcntdq ice.i -c
ice.i: In function ‘foo’:
ice.i:7:1: error: unrecognizable insn:
    7 | }
      | ^
(insn 7 6 8 2 (set (reg:V2SF 84 [ vect__3.8 ])
        (unspec:V2SF [
                (reg:V2SF 86 [ vect__1.7 ])
                (const_int 11 [0xb])
            ] UNSPEC_ROUND)) "ice.i":5:14 -1
     (nil))
during RTL pass: vregs
ice.i:7:1: internal compiler error: in extract_insn, at recog.cc:2791
0x75acd4 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        /home/marxin/Programming/gcc/gcc/rtl-error.cc:108
0x75acf0 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
        /home/marxin/Programming/gcc/gcc/rtl-error.cc:116
0x7592b5 extract_insn(rtx_insn*)
        /home/marxin/Programming/gcc/gcc/recog.cc:2791
0xb88100 instantiate_virtual_regs_in_insn
        /home/marxin/Programming/gcc/gcc/function.cc:1611
0xb88100 instantiate_virtual_regs
        /home/marxin/Programming/gcc/gcc/function.cc:1985
0xb88100 execute
        /home/marxin/Programming/gcc/gcc/function.cc:2034
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.


More information about the Gcc-bugs mailing list