https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117723
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |needs-bisection --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- tree-ssa-ifcombine is ignorning `(e != 0)` for some reason. I suspect it is one of Alexandre's changes. At first I thought it could be my r15-5024-g2a2e6784074e1f change but ` _2 = d_4(D) & 2;` is not a cast and should be rejected . Plus we got this output from ifcombine: optimizing double bit test to d_4(D) & T == T with temporary T = (1 << 1) | (1 << 0) Removing basic block 5 So it is unrelated to my change which happens after the "optimizing double bit test" stuff.