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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |x86_64-*-*, aarch64-*-*
   Last reconfirmed|                            |2026-10-21
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |rguenth at gcc dot 
gnu.org
   Target Milestone|---                         |14.5
           Priority|P3                          |P2

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed.  The issue is that we turn

  <bb 8> [local count: 1716953]:
  # x_1(ab) = PHI <x_8(D)(ab)(2), x_14(ab)(3), x_17(ab)(4), x_19(ab)(5)>
  # y_2(ab) = PHI <y_9(D)(ab)(2), y_16(ab)(3), y_18(ab)(4), y_20(ab)(5)>
  .ABNORMAL_DISPATCHER (0);

  <bb 7> [local count: 1716953]:
<L0>: [non-local]
  o[0] = x_1(ab);
  o[1] = y_2(ab);
  goto <bb 9>; [100.00%]

into

  <bb 8> [local count: 1716953]:
  # x_1(ab) = PHI <x_8(D)(ab)(2), x_14(ab)(3), x_17(ab)(4), x_19(ab)(5)>
  # y_2(ab) = PHI <y_9(D)(ab)(2), y_16(ab)(3), y_18(ab)(4), y_20(ab)(5)>
  _26 = {x_1(ab), y_2(ab)};
  .ABNORMAL_DISPATCHER (0);

  <bb 7> [local count: 1716953]:
<L0>: [non-local]
  MEM <vector(2) long int> [(long int *)&o] = _26;
  goto <bb 9>; [100.00%]


BB SLP regions should not contain abnormal edges (the edge between 8 and 7 is
one).

I have a patch.

Reply via email to