https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87186
--- Comment #1 from MCCCS <mcccs at gmx dot com> --- It can simplify ~(~(x|s)|x)|~(~(x|s)|s) to s^x but it can't simplify const int t = x|s; ~(~t|x)|~(~t|s) or const int t = ~(x|s); ~(t|x)|~(t|s) or const int t = ~x&~s; ~(t|x)|~(t|s)