https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100738
--- Comment #4 from Hongtao.liu <crazylht at gmail dot com> --- (In reply to Richard Biener from comment #2) > Confirmed. Watch out for (v4sf)~a though. Note there's > ~(v4si)(a ^ b) to be considered - outer not and inner bitops which could > be combined (likewise inner not and outer bitops). It seems we prefer out not. /* Otherwise prefer ~(X ^ Y) to ~X ^ Y as more canonical. */ (simplify (bit_xor:c (nop_convert?:s (bit_not:s @0)) @1) (if (tree_nop_conversion_p (type, TREE_TYPE (@0))) (bit_not (bit_xor (view_convert @0) @1))))