The intended broadcast (with AVX512) can very well be done right from
memory.

gcc/

        * config/i386/sse.md: Permit non-immediate operand 1 in AVX2
        form of splitter for PR target/100711.

--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -17356,7 +17356,7 @@
        (and:VI_AVX2
          (vec_duplicate:VI_AVX2
            (not:<ssescalarmode>
-             (match_operand:<ssescalarmode> 1 "register_operand")))
+             (match_operand:<ssescalarmode> 1 "nonimmediate_operand")))
          (match_operand:VI_AVX2 2 "vector_operand")))]
   "TARGET_AVX2"
   [(set (match_dup 3)

Reply via email to