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

            Bug ID: 116934
           Summary: [15 Regression] ICE building 526.blender_r
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ktkachov at gcc dot gnu.org
  Target Milestone: ---
            Target: aarch64

blender from SPEC2017 ICEs with current trunk. The reduced testcase is:
int a;
float *b;
void c() {
  for (; a; a--, b += 4) {
    b[0] = b[1] = b[2] = b[2] > 0 ?: 0;
    if (b[3] < 0)
      b[3] = 0;
  }
}

-Ofast -mcpu=neoverse-v2 crashes with an unrecognizable insn:

(insn 40 39 41 6 (set (reg:VNx4SF 163 [ vect__52.30_104 ])
        (unspec:VNx4SF [
                (subreg:VNx4BI (reg:VNx16BI 164) 0)
                (const_int 0 [0])
                (reg:VNx4SF 135 [ vect__2.24 ])
                (const_vector:VNx4SF repeat [
                        (const_double:SF 0.0 [0x0.0p+0])
                    ])
            ] UNSPEC_COND_SMAX)) "rendercore.i":7:12 -1
     (expr_list:REG_EQUAL (smax:VNx4SF (reg:VNx4SF 135 [ vect__2.24 ])
            (const_vector:VNx4SF repeat [
                    (const_double:SF 0.0 [0x0.0p+0])
                ]))
        (nil)))
during RTL pass: vregs

Reply via email to