http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55177
Eric Botcazou <ebotcazou at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2012-11-02 CC| |ebotcazou at gcc dot | |gnu.org Component|tree-optimization |rtl-optimization Summary|Missed optimisation: bswap, |missed optimizations with |mask with constant, bswap |__builtin_bswap |back again. | Ever Confirmed|0 |1 Severity|normal |enhancement --- Comment #2 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2012-11-02 10:56:17 UTC --- If you don't need to swap, then do not use __builtin_bswap! The first example is really dumb. That being said, the second example has some merit and we should do something to optimize it at the RTL level.