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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |enhancement
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2025-01-28
          Component|other                       |tree-optimization
             Status|UNCONFIRMED                 |NEW

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
The sat case is due to the casts being used twice even though both uses can
remove them.

``
  <bb 2> [local count: 1073741824]:
  _1 = (long unsigned int) b_3(D);
  _2 = (long unsigned int) a_4(D);
  if (_1 < _2)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870912]:
  _6 = _2 - _1;
  _9 = (unsigned int) _6;

  <bb 4> [local count: 1073741824]:
  # prephitmp_10 = PHI <0(2), _9(3)>
```

Reply via email to