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

--- Comment #1 from Stephane Potvin <sepotvin at gmail dot com> ---
Slightly simpler reproduction program

void b() {
  double c;
  for(;;) {
    void e(void*);
    e(c ? 0 : b);
  }
}

Which give the following error

gcc -O2 -mcpu=sifive-u74 -c libimagequant.c.i
libimagequant.c.i: In function ‘b’:
libimagequant.c.i:7:1: error: unrecognizable insn:
    7 | }
      | ^
(insn 7 6 8 2 (set (reg:DI 137)
        (if_then_else:DI (eq:DF (reg/v:DF 135 [ c ])
                (reg:DF 138))
            (reg:DI 139)
            (const_int 0 [0]))) -1
     (nil))
during RTL pass: vregs
libimagequant.c.i:7:1: internal compiler error: in extract_insn, at
recog.cc:2791
0x27546d _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        /usr/src/debug/sys-devel/gcc-13.1.0-r1/gcc-13.1.0/gcc/rtl-error.cc:108
0x27548f _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
        /usr/src/debug/sys-devel/gcc-13.1.0-r1/gcc-13.1.0/gcc/rtl-error.cc:116
0x6abbff extract_insn(rtx_insn*)
        /usr/src/debug/sys-devel/gcc-13.1.0-r1/gcc-13.1.0/gcc/recog.cc:2791
0x4a790b instantiate_virtual_regs_in_insn
        /usr/src/debug/sys-devel/gcc-13.1.0-r1/gcc-13.1.0/gcc/function.cc:1611
0x4a790b instantiate_virtual_regs
        /usr/src/debug/sys-devel/gcc-13.1.0-r1/gcc-13.1.0/gcc/function.cc:1985
0x4a790b execute
        /usr/src/debug/sys-devel/gcc-13.1.0-r1/gcc-13.1.0/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://bugs.gentoo.org/> for instructions.

Reply via email to