https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96921
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Andrew Pinski from comment #4) > Hmm, thinking about expanding this further: Even further. int f1(int n) { if (n&~8) __builtin_unreachable(); return 63 - n; } ---- CUT ---- So the nonzero bits just need to be make sure they no non-overlapping bits.