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

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
here is a better example where we have a secondary phiopt happening:
```
short f(int a, int b, int c)
{
  int t1 = 4;
  if (c < t1)  return (c > -1 ? c : -1);
  return t1;
}


short f1(int a, int b, int c)
{
  int t1 = 4;
  short t = t1;
  if (c < t1)  t = (c > -1 ? c : -1);
  return t;
}
```

f1 gets the factor while f does not because there is a GIMPLE_PREDICT there.

Reply via email to