https://gcc.gnu.org/g:155cb8f0d01dbaab55ac339e6c55cf36bd5d7b13
commit 155cb8f0d01dbaab55ac339e6c55cf36bd5d7b13 Author: Alexandre Oliva <ol...@gnu.org> Date: Sun Dec 1 08:18:01 2024 -0300 ifcombine: don't try xor on right-hand op Diff: --- gcc/gimple-fold.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gcc/gimple-fold.cc b/gcc/gimple-fold.cc index 31011b726f36..149df985bee4 100644 --- a/gcc/gimple-fold.cc +++ b/gcc/gimple-fold.cc @@ -7539,6 +7539,10 @@ decode_field_reference (tree *pexp, HOST_WIDE_INT *pbitsize, exp = res_ops[1]; gcc_checking_assert (!xor_cmp_op); } + else if (!xor_cmp_op) + /* Not much we can do when xor appears in the right-hand compare + operand. */ + return NULL_TREE; else { *xor_p = true;