[llvm] c02f979 - [X86][AVX512] Remove xmm->xmm vpmovsx/vpmovzx rm overrides

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Sun Dec 12 08:09:09 PST 2021


Author: Simon Pilgrim
Date: 2021-12-12T16:08:10Z
New Revision: c02f9791c65a8a01567c5bc5312c168d2bb7168b

URL: https://github.com/llvm/llvm-project/commit/c02f9791c65a8a01567c5bc5312c168d2bb7168b
DIFF: https://github.com/llvm/llvm-project/commit/c02f9791c65a8a01567c5bc5312c168d2bb7168b.diff

LOG: [X86][AVX512] Remove xmm->xmm vpmovsx/vpmovzx rm overrides

The XMM evex cases have the same behaviour as the SSE41 versions, which already uses WriteShuffleX.Folded

Added: 
    

Modified: 
    llvm/lib/Target/X86/X86SchedIceLake.td
    llvm/lib/Target/X86/X86SchedSkylakeServer.td
    llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
    llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s
    llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
    llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.s

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/X86/X86SchedIceLake.td b/llvm/lib/Target/X86/X86SchedIceLake.td
index 889b9b7fa6666..a7b0db24df092 100644
--- a/llvm/lib/Target/X86/X86SchedIceLake.td
+++ b/llvm/lib/Target/X86/X86SchedIceLake.td
@@ -1709,19 +1709,7 @@ def: InstRW<[ICXWriteResGroup136], (instregex "VALIGN(D|Q)Z128rm(b?)i",
                                               "VPMAXSQZ128rm(b?)",
                                               "VPMAXUQZ128rm(b?)",
                                               "VPMINSQZ128rm(b?)",
-                                              "VPMINUQZ128rm(b?)",
-                                              "VPMOVSXBDZ128rm(b?)",
-                                              "VPMOVSXBQZ128rm(b?)",
-                                              "VPMOVSXBWZ128rm(b?)",
-                                              "VPMOVSXDQZ128rm(b?)",
-                                              "VPMOVSXWDZ128rm(b?)",
-                                              "VPMOVSXWQZ128rm(b?)",
-                                              "VPMOVZXBDZ128rm(b?)",
-                                              "VPMOVZXBQZ128rm(b?)",
-                                              "VPMOVZXBWZ128rm(b?)",
-                                              "VPMOVZXDQZ128rm(b?)",
-                                              "VPMOVZXWDZ128rm(b?)",
-                                              "VPMOVZXWQZ128rm(b?)")>;
+                                              "VPMINUQZ128rm(b?)")>;
 
 def ICXWriteResGroup136_2 : SchedWriteRes<[ICXPort5,ICXPort23]> {
   let Latency = 10;

diff  --git a/llvm/lib/Target/X86/X86SchedSkylakeServer.td b/llvm/lib/Target/X86/X86SchedSkylakeServer.td
index 1d8417aef41e3..db32d032aa07f 100644
--- a/llvm/lib/Target/X86/X86SchedSkylakeServer.td
+++ b/llvm/lib/Target/X86/X86SchedSkylakeServer.td
@@ -1701,19 +1701,7 @@ def: InstRW<[SKXWriteResGroup136], (instregex "VALIGN(D|Q)Z128rm(b?)i",
                                               "VPMAXSQZ128rm(b?)",
                                               "VPMAXUQZ128rm(b?)",
                                               "VPMINSQZ128rm(b?)",
-                                              "VPMINUQZ128rm(b?)",
-                                              "VPMOVSXBDZ128rm(b?)",
-                                              "VPMOVSXBQZ128rm(b?)",
-                                              "VPMOVSXBWZ128rm(b?)",
-                                              "VPMOVSXDQZ128rm(b?)",
-                                              "VPMOVSXWDZ128rm(b?)",
-                                              "VPMOVSXWQZ128rm(b?)",
-                                              "VPMOVZXBDZ128rm(b?)",
-                                              "VPMOVZXBQZ128rm(b?)",
-                                              "VPMOVZXBWZ128rm(b?)",
-                                              "VPMOVZXDQZ128rm(b?)",
-                                              "VPMOVZXWDZ128rm(b?)",
-                                              "VPMOVZXWQZ128rm(b?)")>;
+                                              "VPMINUQZ128rm(b?)")>;
 
 def SKXWriteResGroup136_2 : SchedWriteRes<[SKXPort5,SKXPort23]> {
   let Latency = 10;

diff  --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
index 9932946228eac..8b2300ef2da5c 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
@@ -633,11 +633,11 @@ vpmovw2m          %ymm0, %k0
 # CHECK-NEXT:  2      6     2.00                        vpermw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  3      13    2.00    *                   vpermw	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbw	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbw	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbw	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbw	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbw	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbw	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbw	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbw	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbw	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbw	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbw	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbw	%xmm16, %ymm19 {%k1}
@@ -645,11 +645,11 @@ vpmovw2m          %ymm0, %k0
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbw	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbw	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbw	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbw	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbw	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbw	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbw	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbw	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbw	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbw	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbw	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbw	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbw	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbw	%xmm16, %ymm19 {%k1}

diff  --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s
index 95db8f148b21d..4e4668d2d5eba 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s
@@ -1697,11 +1697,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  5      17    1.00    *                   vpgatherqq	(%rax,%xmm1,2), %xmm2 {%k1}
 # CHECK-NEXT:  5      17    1.00    *                   vpgatherqd	(%rax,%xmm1,2), %xmm2 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbd	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbd	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbd	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbd	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbd	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbd	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbd	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbd	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbd	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbd	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbd	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbd	%xmm16, %ymm19 {%k1}
@@ -1709,11 +1709,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbd	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbd	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbq	%xmm16, %ymm19 {%k1}
@@ -1721,11 +1721,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxdq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxdq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxdq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxdq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxdq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxdq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxdq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxdq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxdq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxdq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxdq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxdq	%xmm16, %ymm19 {%k1}
@@ -1733,11 +1733,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxdq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxdq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwd	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwd	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwd	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwd	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwd	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwd	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwd	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwd	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwd	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwd	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxwd	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwd	%xmm16, %ymm19 {%k1}
@@ -1745,11 +1745,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwd	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxwd	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxwq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwq	%xmm16, %ymm19 {%k1}
@@ -1757,11 +1757,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxwq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbd	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbd	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbd	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbd	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbd	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbd	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbd	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbd	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbd	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbd	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbd	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbd	%xmm16, %ymm19 {%k1}
@@ -1769,11 +1769,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbd	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbd	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbq	%xmm16, %ymm19 {%k1}
@@ -1781,11 +1781,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxdq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxdq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxdq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxdq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxdq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxdq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxdq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxdq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxdq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxdq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxdq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxdq	%xmm16, %ymm19 {%k1}
@@ -1793,11 +1793,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxdq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxdq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwd	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwd	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwd	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwd	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwd	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwd	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwd	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwd	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwd	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwd	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxwd	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwd	%xmm16, %ymm19 {%k1}
@@ -1805,11 +1805,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwd	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxwd	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxwq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwq	%xmm16, %ymm19 {%k1}

diff  --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
index 9e7b1d500f53b..45179307e96c1 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
@@ -633,11 +633,11 @@ vpmovw2m          %ymm0, %k0
 # CHECK-NEXT:  2      6     2.00                        vpermw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  3      13    2.00    *                   vpermw	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbw	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbw	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbw	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbw	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbw	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbw	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbw	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbw	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbw	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbw	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbw	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbw	%xmm16, %ymm19 {%k1}
@@ -645,11 +645,11 @@ vpmovw2m          %ymm0, %k0
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbw	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbw	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbw	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbw	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbw	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbw	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbw	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbw	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbw	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbw	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbw	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbw	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbw	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbw	%xmm16, %ymm19 {%k1}

diff  --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.s
index f67a40d2a22bc..98f92d0acc4c5 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.s
@@ -1697,11 +1697,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  5      17    1.00    *                   vpgatherqq	(%rax,%xmm1,2), %xmm2 {%k1}
 # CHECK-NEXT:  5      17    1.00    *                   vpgatherqd	(%rax,%xmm1,2), %xmm2 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbd	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbd	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbd	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbd	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbd	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbd	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbd	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbd	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbd	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbd	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbd	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbd	%xmm16, %ymm19 {%k1}
@@ -1709,11 +1709,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbd	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbd	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxbq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxbq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxbq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbq	%xmm16, %ymm19 {%k1}
@@ -1721,11 +1721,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxbq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxbq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxdq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxdq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxdq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxdq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxdq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxdq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxdq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxdq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxdq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxdq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxdq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxdq	%xmm16, %ymm19 {%k1}
@@ -1733,11 +1733,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxdq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxdq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwd	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwd	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwd	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwd	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwd	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwd	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwd	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwd	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwd	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwd	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxwd	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwd	%xmm16, %ymm19 {%k1}
@@ -1745,11 +1745,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwd	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxwd	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovsxwq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovsxwq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovsxwq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxwq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwq	%xmm16, %ymm19 {%k1}
@@ -1757,11 +1757,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovsxwq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovsxwq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbd	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbd	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbd	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbd	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbd	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbd	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbd	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbd	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbd	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbd	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbd	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbd	%xmm16, %ymm19 {%k1}
@@ -1769,11 +1769,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbd	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbd	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxbq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxbq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxbq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbq	%xmm16, %ymm19 {%k1}
@@ -1781,11 +1781,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxbq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxbq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxdq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxdq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxdq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxdq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxdq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxdq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxdq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxdq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxdq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxdq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxdq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxdq	%xmm16, %ymm19 {%k1}
@@ -1793,11 +1793,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxdq	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxdq	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwd	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwd	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwd	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwd	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwd	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwd	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwd	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwd	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwd	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwd	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxwd	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwd	%xmm16, %ymm19 {%k1}
@@ -1805,11 +1805,11 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwd	%xmm16, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxwd	(%rax), %ymm19 {%k1} {z}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwq	%xmm16, %xmm19
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwq	(%rax), %xmm19
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwq	(%rax), %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwq	%xmm16, %xmm19 {%k1}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwq	(%rax), %xmm19 {%k1}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwq	(%rax), %xmm19 {%k1}
 # CHECK-NEXT:  1      1     1.00                        vpmovzxwq	%xmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT:  2      9     1.00    *                   vpmovzxwq	(%rax), %xmm19 {%k1} {z}
+# CHECK-NEXT:  2      7     1.00    *                   vpmovzxwq	(%rax), %xmm19 {%k1} {z}
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwq	%xmm16, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpmovzxwq	(%rax), %ymm19
 # CHECK-NEXT:  1      3     1.00                        vpmovzxwq	%xmm16, %ymm19 {%k1}


        


More information about the llvm-commits mailing list