https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98648
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I guess the reason why simplify-rtx.c doesn't optimize it is that these patterns really don't have valid RTL, bitwise and/or/xor/andnot are expected to have integral or integral vector arguments, not floating point vector. Don't know if we couldn't e.g. represent these as (set (match_operand:V4SF 0) (subreg:V4SF (and:V4SI (subreg:V4SI (match_operand:V4SF 1) 0) (subreg:V4SI (match_operand:V4SF 2) 0)) 0)) etc.