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

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
(gdb) p start_i
$1 = 0
(gdb) p *matches@group_size
$2 = {{v = -2}, {v = -2}, {v = -2}, {v = -2}, {v = -2}, {v = -2}, {v = -2}, {
    v = -2}, {v = -2}}

Hmm.  The stmts are

patt_900 = .MASK_LOAD (_1661, 32B, patt_231, 0.0);
patt_2620 = .MASK_LOAD (_448, 32B, patt_2574, 0.0);
patt_2675 = .MASK_LOAD (_1176, 32B, patt_2663, 0.0);
...

and we run into

      /* Non-grouped store or load.  */
      else if (ldst_p)
        {
...
              /* Not grouped load.  */
              if (dump_enabled_p ())
                dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,
                                 "Build SLP failed: not grouped load %G",
stmt);

              if (is_a <bb_vec_info> (vinfo))
                matches[i] = -2;
              continue;

I have to refactor this a bit.

Reply via email to