https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114086
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|middle-end |tree-optimization --- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (In reply to Jan Schultke from comment #5) > Well, it's not quite equivalent to either of the bit-shifts we've posted. The #c4 foo2/bar2 are functionally equivalent to #c4 foo/bar, it is what gcc actually emits for the latter. x > 6 ? 0 : ((85 >> x) & 1) isn't functionally equivalent to anything mentioned so far here, as it handles negative values differently.