tree-optimization/106379 - add missing ~(a ^ b) folding for _Bool
The following makes sure to fold ~(a ^ b) to a == b for truth
values (but not vectors, we'd have to check for vector support of
equality). That turns the PR106379 testcase into a ranger one.
Note that while we arrive at ~(a ^ b) in a convoluted way from
original !a == !b one can eventually write the expression this
way directly as well.
PR tree-optimization/106379
* match.pd (~(a ^ b) -> a == b): New pattern.
* gcc.dg/pr106379-1.c: New testcase.