https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68110
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|target |tree-optimization Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Last reconfirmed| |2021-08-21 --- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> --- The testcase is fixed on rtl level since gcc 6 for x86_64. For aarch64, it was fixed on the rtl level since GCC 9. On the gimple level we still have: _4 = .SUB_OVERFLOW (a_2(D), b_3(D)); _1 = IMAGPART_EXPR <_4>; Maybe a simple match.pd pattern is needed: (if (TYPE_SIGN (type) == UNSIGNED) (simplify (imagpart (sub_overflow:s @0 @1)) (convert (le @0 @1))))