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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |enhancement

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
One problem is these two functions don't produce the same code:
unsigned f(unsigned t, unsigned tt, unsigned y)
{
    unsigned u = 1000;
    return t*u + y - (tt*u);
}
unsigned f1(unsigned t, unsigned tt, unsigned y)
{
    unsigned u = 1000;
    return y + ((t-tt)*u);
}

While clang is able to.

Reply via email to