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.

Reply via email to