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

            Bug ID: 79495
           Summary: ICE in extract_constrain_insn, at recog.c:2213
           Product: gcc
           Version: 7.0.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gerhard.steinmetz.fort...@t-online.de
  Target Milestone: ---

A test run with option -msoft-float hits an ICE for testsuite file
.../ieee/fp-cmp-3.c, version 6/7 at -Os, -O1 or higher.
Reduced :


$ cat z1.c
long double dnan = 1.0l/0.0l - 1.0l/0.0l;
long double x = 1.0l;
void fn1 (void)
{
  if (dnan != x)
    x = 1.0;
}


$ gcc-7-20170212 -O2 -msoft-float -c z1.c
z1.c: In function 'fn1':
z1.c:7:1: error: insn does not satisfy its constraints:
 }
 ^
(insn 29 16 30 3 (set (mem/c:DI (symbol_ref:DI ("x") [flags 0x2] <var_decl
0x2ad2b9f5dea0 x>) [1 x+0 S8 A128])
        (const_int -9223372036854775808 [0x8000000000000000])) "z1.c":6 81
{*movdi_internal}
     (nil))
z1.c:7:1: internal compiler error: in extract_constrain_insn, at recog.c:2213
0xb894d8 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        ../../gcc/rtl-error.c:108
0xb894ff _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
        ../../gcc/rtl-error.c:119
0xb57bfd extract_constrain_insn(rtx_insn*)
        ../../gcc/recog.c:2213
0xb609ef copyprop_hardreg_forward_1
        ../../gcc/regcprop.c:794
0xb61724 execute
        ../../gcc/regcprop.c:1301

Reply via email to