Hi David,
Another small patch in instcombine to transform ( ( ~A ^ B ) ^ ( A & ~B ) ) to A | ~B .
Please if you could let me know your i/p's on the same.
Proof-
$ cat t.cvc
A, B : BITVECTOR(32);
QUERY BVXOR(BVXOR(~A, B), (A &~B) ) = A|~B;
$ cvc3 t.cvc
Valid.
Thanks
Karthik Bhat
You have what appear to be eight different patterns you are trying to match but only one test case. Are you sure we need all of them? What happens if you ran a reassociate pass first?