https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70232
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- Btw, the bswap pass for arm doesn't detect any bswap32 or bswap64 instruction. There is (define_expand "bswapsi2" [(set (match_operand:SI 0 "s_register_operand" "=r") (bswap:SI (match_operand:SI 1 "s_register_operand" "r")))] "TARGET_EITHER && (arm_arch6 || !optimize_size)" but no bswapdi2.