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

            Bug ID: 80098
           Summary: ICE in curr_insn_transform, at lra-constraints.c:3816
                    on ppc64le
           Product: gcc
           Version: unknown
            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
  Target Milestone: ---
              Host: x86_64-linux-gnu
            Target: ppc64le-linux-gnu

Running cross-compiler, I see following ICE:

$ cat /tmp/ice.i
int a;
float b;
float c ()
{
  if (b == a)
    return b;
  return a;
}

$ ppc64le-linux-gnu-gcc /tmp/ice.i -mmodulo -O3 -mno-vsx
/tmp/ice.i: In function ā€˜c’:
/tmp/ice.i:8:1: error: unable to generate reloads for:
 }
 ^
(insn 29 28 30 2 (set (reg:V2DI 163)
        (if_then_else:V2DI (eq:CCFP (reg:SF 156 [ _2 ])
                (reg:SF 157 [ <retval> ]))
            (const_vector:V2DI [
                    (const_int -1 [0xffffffffffffffff])
                    (const_int -1 [0xffffffffffffffff])
                ])
            (const_vector:V2DI [
                    (const_int 0 [0])
                    (const_int 0 [0])
                ]))) "/tmp/ice.i":8 337 {*fpmasksf}
     (nil))
/tmp/ice.i:8:1: internal compiler error: in curr_insn_transform, at
lra-constraints.c:3816
0xb09768 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        .././../gcc/rtl-error.c:108
0xa09f67 curr_insn_transform
        .././../gcc/lra-constraints.c:3816
0xa0ac36 lra_constraints(bool)
        .././../gcc/lra-constraints.c:4785
0x9f3fac lra(_IO_FILE*)
        .././../gcc/lra.c:2392
0x9a8901 do_reload
        .././../gcc/ira.c:5451
0x9a8901 execute
        .././../gcc/ira.c:5635

Reply via email to