https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88403
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed| |2023-06-02
Severity|normal |enhancement
Ever confirmed|0 |1
Summary|[Mips,AArch64] The gcse |[Mips,AArch64] The gcse and
|prevents if-conversion |division/mod by 1000
| |prevents if-conversion
Status|UNCONFIRMED |NEW
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Confirmed.
GCSE is doing the right thing, just ifcvt can't handle this currently.
Here is a reduced testcase:
```
int f(int a, int b)
{
if (a % 10000 > 10000/2)
a+= 10000/2;
return a / 10000;
}
```