https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109505
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |NEW
Assignee|jakub at gcc dot gnu.org |unassigned at gcc dot
gnu.org
--- Comment #24 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
The fix doesn't really work for 11/10:
../../gcc/match.pd:1546:36 error: forcing simplification to a leaf is not
supported for GENERIC
(bit_ior (bit_and @0 @2) (bit_and! @1 @2)))
^
So, we'd either have to guard those patterns with #ifndef GENERIC, but that
would be quite risky change this late on those branches, or perhaps could do
something like
#ifdef GENERIC
(with { tree a = fold_binary (BIT_AND_EXPR, type, @1, @2); }
(if (a && CONSTANT_CLASS_P (a))
(bit_ior (bit_and @0 @2) { a; })))
#else
(bit_ior (bit_and @0 @2) (bit_and! @1 @2)))
#endif
But for all those spots the patch changed. I'm afraid I really don't have time
to do that.