https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125399

--- Comment #1 from Drea Pinski <pinskia at gcc dot gnu.org> ---
(for bswap (BSWAP BITREVERSE)
 (simplify
  (bswap (bswap @0))
  @0)
 (simplify
  (bswap (bit_not (bswap @0)))
  (bit_not @0))
 (for bitop (bit_xor bit_ior bit_and)
  (simplify
   (bswap (bitop:c (bswap @0) @1))
   (bitop @0 (bswap @1))))
 (for cmp (eq ne)
  (simplify
   (cmp (bswap@2 @0) (bswap @1))
   (with { tree ctype = TREE_TYPE (@2); }
    (cmp (convert:ctype @0) (convert:ctype @1))))
  (simplify
   (cmp (bswap @0) INTEGER_CST@1)
   (with { tree ctype = TREE_TYPE (@1); }
    (cmp (convert:ctype @0) (bswap! @1))))))

Reply via email to