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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |ASSIGNED
   Last reconfirmed|                            |2023-06-04
         Resolution|DUPLICATE                   |---
           Assignee|unassigned at gcc dot gnu.org      |pinskia at gcc dot 
gnu.org
     Ever confirmed|0                           |1
           Severity|normal                      |enhancement

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Actually this is not done after the patch for PR 89263.

The problem (after the patch for PR 89263) is we have:
  b.0_1 = (unsigned int) b_2(D);
  if (a_3(D) < 0)
    goto <bb 4>; [41.00%]
  else
    goto <bb 3>; [59.00%]

  <bb 3> [local count: 633507681]:
  _5 = (unsigned int) a_3(D);
  _7 = b.0_1 > _5;

  <bb 4> [local count: 1073741824]:
  # iftmp.1_6 = PHI <_7(3), 1(2)>
  return iftmp.1_6;


The assignment of _5 causes phiopt to skip these BB. I am going to fix this
part later on.

Reply via email to