[InstSimplify] Add patterns for folding (A & B) | (~A ^ B) -> (~A ^ B) and its commuted variants.

We already had (A & ~B) | (A ^ B), but we missed the cases where the not was part of the xor.

llvm-svn: 303004
GitOrigin-RevId: 479daaf74c6d0c5facdf2eceef06d5411c8bf322
2 files changed