gcc/ChangeLog:

    PR target/110021
    * config/i386/i386-expand.cc (ix86_expand_vecop_qihi2): Also require
    TARGET_AVX512BW to generate truncv16hiv16qi2.

Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.

Uros.
diff --git a/gcc/config/i386/i386-expand.cc b/gcc/config/i386/i386-expand.cc
index 0d8953b8c75..5d21810669a 100644
--- a/gcc/config/i386/i386-expand.cc
+++ b/gcc/config/i386/i386-expand.cc
@@ -23361,7 +23361,7 @@ ix86_expand_vecop_qihi2 (enum rtx_code code, rtx dest, 
rtx op1, rtx op2)
     {
     case E_V16QImode:
       himode = V16HImode;
-      if (TARGET_AVX512VL)
+      if (TARGET_AVX512VL && TARGET_AVX512BW)
        gen_truncate = gen_truncv16hiv16qi2;
       break;
     case E_V32QImode:

Reply via email to