https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30314
--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> --- So the rest is to fold the statements after widening pass. I have a patch for that which does it in isel as I am going to have some isel related match patterns. Note gcc.target/i386/pr95852-2.c and gcc.target/i386/pr95852-4.c testcases need to be fixed also since they have this pattern where widdening pass is the only place which finds the _OVERFLOW variant and then it gets folded. E.g.: ``` int f17 (unsigned x) { unsigned r = x * 35U; return x && (r / x) != 35U; } ```