https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68136
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed|2015-10-28 00:00:00 |2021-7-26 --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Improved for GCC 11 by r11-3207 . The testcase even was changed to show that it is not fully fixed: typedef long long s64; int foo (s64 a, s64 b, s64 c) { s64 d = a - b; if (d == 0) return a + c; else return b + c + d; }