[llvm] 2be46b3 - [MCA][X86][AVX512] Add test coverage for unsigned<->fp conversion instructions

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Sat Nov 12 05:47:38 PST 2022


Author: Simon Pilgrim
Date: 2022-11-12T13:45:16Z
New Revision: 2be46b33d3d8bc383c529dca412b71f1f162a439

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

LOG: [MCA][X86][AVX512] Add test coverage for unsigned<->fp conversion instructions

Added: 
    

Modified: 
    llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s
    llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
    llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s

Removed: 
    


################################################################################
diff  --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s
index 9282df15b5f0b..668434d684499 100644
--- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s
+++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s
@@ -207,6 +207,16 @@ vcvtps2pd         %ymm16, %zmm19 {z}{k1}
 vcvtps2pd         (%rax), %zmm19 {z}{k1}
 vcvtps2pd         (%rax){1to8}, %zmm19 {z}{k1}
 
+vcvtsd2usi        %xmm0, %ecx
+vcvtsd2usi        %xmm0, %rcx
+vcvtsd2usi        (%rax), %ecx
+vcvtsd2usi        (%rax), %rcx
+
+vcvtss2usi        %xmm0, %ecx
+vcvtss2usi        %xmm0, %rcx
+vcvtss2usi        (%rax), %ecx
+vcvtss2usi        (%rax), %rcx
+
 vcvtps2udq        %zmm16, %zmm19
 vcvtps2udq        (%rax), %zmm19
 vcvtps2udq        (%rax){1to16}, %zmm19
@@ -227,6 +237,16 @@ vcvttps2udq       %zmm16, %zmm19 {z}{k1}
 vcvttps2udq       (%rax), %zmm19 {z}{k1}
 vcvttps2udq       (%rax){1to16}, %zmm19 {z}{k1}
 
+vcvttsd2usi       %xmm0, %ecx
+vcvttsd2usi       %xmm0, %rcx
+vcvttsd2usi       (%rax), %ecx
+vcvttsd2usi       (%rax), %rcx
+
+vcvttss2usi       %xmm0, %ecx
+vcvttss2usi       %xmm0, %rcx
+vcvttss2usi       (%rax), %ecx
+vcvttss2usi       (%rax), %rcx
+
 vcvtudq2pd        %ymm16, %zmm19
 vcvtudq2pd        (%rax), %zmm19
 vcvtudq2pd        (%rax){1to8}, %zmm19
@@ -247,6 +267,16 @@ vcvtudq2ps        %zmm16, %zmm19 {z}{k1}
 vcvtudq2ps        (%rax), %zmm19 {z}{k1}
 vcvtudq2ps        (%rax){1to16}, %zmm19 {z}{k1}
 
+vcvtusi2sdl       %ecx, %xmm0, %xmm2
+vcvtusi2sdq       %rcx, %xmm0, %xmm2
+vcvtusi2sdl       (%rax), %xmm0, %xmm2
+vcvtusi2sdq       (%rax), %xmm0, %xmm2
+
+vcvtusi2ssl       %ecx, %xmm0, %xmm2
+vcvtusi2ssq       %rcx, %xmm0, %xmm2
+vcvtusi2ssl       (%rax), %xmm0, %xmm2
+vcvtusi2ssq       (%rax), %xmm0, %xmm2
+
 vdivpd            %zmm16, %zmm17, %zmm19
 vdivpd            (%rax), %zmm17, %zmm19
 vdivpd            (%rax){1to8}, %zmm17, %zmm19
@@ -1164,6 +1194,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  2      2     1.00                        vcvtps2pd	%ymm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      7     1.00    *                   vcvtps2pd	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      7     1.00    *                   vcvtps2pd	(%rax){1to8}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  2      5     1.00                        vcvtsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  2      5     1.00                        vcvtsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      10    1.00    *                   vcvtsd2usi	(%rax), %ecx
+# CHECK-NEXT:  3      10    1.00    *                   vcvtsd2usi	(%rax), %rcx
+# CHECK-NEXT:  2      5     1.00                        vcvtss2usi	%xmm0, %ecx
+# CHECK-NEXT:  2      5     1.00                        vcvtss2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      10    1.00    *                   vcvtss2usi	(%rax), %ecx
+# CHECK-NEXT:  3      10    1.00    *                   vcvtss2usi	(%rax), %rcx
 # CHECK-NEXT:  1      3     1.00                        vcvtps2udq	%zmm16, %zmm19
 # CHECK-NEXT:  2      10    1.00    *                   vcvtps2udq	(%rax), %zmm19
 # CHECK-NEXT:  2      10    1.00    *                   vcvtps2udq	(%rax){1to16}, %zmm19
@@ -1182,6 +1220,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vcvttps2udq	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vcvttps2udq	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vcvttps2udq	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  2      5     1.00                        vcvttsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  2      5     1.00                        vcvttsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      10    1.00    *                   vcvttsd2usi	(%rax), %ecx
+# CHECK-NEXT:  3      10    1.00    *                   vcvttsd2usi	(%rax), %rcx
+# CHECK-NEXT:  2      5     1.00                        vcvttss2usi	%xmm0, %ecx
+# CHECK-NEXT:  2      5     1.00                        vcvttss2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      10    1.00    *                   vcvttss2usi	(%rax), %ecx
+# CHECK-NEXT:  3      10    1.00    *                   vcvttss2usi	(%rax), %rcx
 # CHECK-NEXT:  2      4     1.00                        vcvtudq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  3      10    1.00    *                   vcvtudq2pd	(%rax), %zmm19
 # CHECK-NEXT:  3      10    1.00    *                   vcvtudq2pd	(%rax){1to8}, %zmm19
@@ -1200,6 +1246,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vcvtudq2ps	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vcvtudq2ps	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vcvtudq2ps	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  2      4     1.00                        vcvtusi2sd	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  2      4     1.00                        vcvtusi2sd	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2sdl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2sdq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  3      5     2.00                        vcvtusi2ss	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  3      5     2.00                        vcvtusi2ss	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  3      10    1.00    *                   vcvtusi2ssl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  3      10    1.00    *                   vcvtusi2ssq	(%rax), %xmm0, %xmm2
 # CHECK-NEXT:  3      45    44.00                       vdivpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  4      52    44.00   *                   vdivpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  4      52    44.00   *                   vdivpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1857,7 +1911,7 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]
-# CHECK-NEXT:  -     1506.00 153.67 282.67 16.00 513.67 275.50 275.50
+# CHECK-NEXT:  -     1506.00 169.67 306.67 16.00 521.67 281.50 281.50
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
@@ -2041,6 +2095,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     1.00    -      -     1.00    -      -     vcvtps2pd	%ymm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vcvtps2pd	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vcvtps2pd	(%rax){1to8}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -     vcvtsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -     vcvtsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -     0.50   0.50   vcvtsd2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -     0.50   0.50   vcvtsd2usi	(%rax), %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -     vcvtss2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -     vcvtss2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -     0.50   0.50   vcvtss2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -     0.50   0.50   vcvtss2usi	(%rax), %rcx
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcvtps2udq	%zmm16, %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcvtps2udq	(%rax), %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcvtps2udq	(%rax){1to16}, %zmm19
@@ -2059,6 +2121,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcvttps2udq	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcvttps2udq	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcvttps2udq	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -     vcvttsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -     vcvttsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -     0.50   0.50   vcvttsd2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -     0.50   0.50   vcvttsd2usi	(%rax), %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -     vcvttss2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -     vcvttss2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -     0.50   0.50   vcvttss2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -     0.50   0.50   vcvttss2usi	(%rax), %rcx
 # CHECK-NEXT:  -      -      -     1.00    -     1.00    -      -     vcvtudq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -     1.00   0.50   0.50   vcvtudq2pd	(%rax), %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -     1.00   0.50   0.50   vcvtudq2pd	(%rax){1to8}, %zmm19
@@ -2077,6 +2147,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcvtudq2ps	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcvtudq2ps	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcvtudq2ps	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     1.00    -     1.00    -      -     vcvtusi2sd	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00    -     1.00    -      -     vcvtusi2sd	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcvtusi2sdl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcvtusi2sdq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00    -     2.00    -      -     vcvtusi2ss	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00    -     2.00    -      -     vcvtusi2ss	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00    -     1.00   0.50   0.50   vcvtusi2ssl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00    -     1.00   0.50   0.50   vcvtusi2ssq	(%rax), %xmm0, %xmm2
 # CHECK-NEXT:  -     44.00  2.50    -      -     0.50    -      -     vdivpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -     44.00  2.50    -      -     0.50   0.50   0.50   vdivpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -     44.00  2.50    -      -     0.50   0.50   0.50   vdivpd	(%rax){1to8}, %zmm17, %zmm19

diff  --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
index eb370576f2c13..2c061becd93aa 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
@@ -207,6 +207,16 @@ vcvtps2pd         %ymm16, %zmm19 {z}{k1}
 vcvtps2pd         (%rax), %zmm19 {z}{k1}
 vcvtps2pd         (%rax){1to8}, %zmm19 {z}{k1}
 
+vcvtsd2usi        %xmm0, %ecx
+vcvtsd2usi        %xmm0, %rcx
+vcvtsd2usi        (%rax), %ecx
+vcvtsd2usi        (%rax), %rcx
+
+vcvtss2usi        %xmm0, %ecx
+vcvtss2usi        %xmm0, %rcx
+vcvtss2usi        (%rax), %ecx
+vcvtss2usi        (%rax), %rcx
+
 vcvtps2udq        %zmm16, %zmm19
 vcvtps2udq        (%rax), %zmm19
 vcvtps2udq        (%rax){1to16}, %zmm19
@@ -227,6 +237,16 @@ vcvttps2udq       %zmm16, %zmm19 {z}{k1}
 vcvttps2udq       (%rax), %zmm19 {z}{k1}
 vcvttps2udq       (%rax){1to16}, %zmm19 {z}{k1}
 
+vcvttsd2usi       %xmm0, %ecx
+vcvttsd2usi       %xmm0, %rcx
+vcvttsd2usi       (%rax), %ecx
+vcvttsd2usi       (%rax), %rcx
+
+vcvttss2usi       %xmm0, %ecx
+vcvttss2usi       %xmm0, %rcx
+vcvttss2usi       (%rax), %ecx
+vcvttss2usi       (%rax), %rcx
+
 vcvtudq2pd        %ymm16, %zmm19
 vcvtudq2pd        (%rax), %zmm19
 vcvtudq2pd        (%rax){1to8}, %zmm19
@@ -247,6 +267,16 @@ vcvtudq2ps        %zmm16, %zmm19 {z}{k1}
 vcvtudq2ps        (%rax), %zmm19 {z}{k1}
 vcvtudq2ps        (%rax){1to16}, %zmm19 {z}{k1}
 
+vcvtusi2sdl       %ecx, %xmm0, %xmm2
+vcvtusi2sdq       %rcx, %xmm0, %xmm2
+vcvtusi2sdl       (%rax), %xmm0, %xmm2
+vcvtusi2sdq       (%rax), %xmm0, %xmm2
+
+vcvtusi2ssl       %ecx, %xmm0, %xmm2
+vcvtusi2ssq       %rcx, %xmm0, %xmm2
+vcvtusi2ssl       (%rax), %xmm0, %xmm2
+vcvtusi2ssq       (%rax), %xmm0, %xmm2
+
 vdivpd            %zmm16, %zmm17, %zmm19
 vdivpd            (%rax), %zmm17, %zmm19
 vdivpd            (%rax){1to8}, %zmm17, %zmm19
@@ -1164,6 +1194,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  2      3     1.00                        vcvtps2pd	%ymm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvtps2pd	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvtps2pd	(%rax){1to8}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  2      6     1.00                        vcvtsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  2      6     1.00                        vcvtsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      12    1.00    *                   vcvtsd2usi	(%rax), %ecx
+# CHECK-NEXT:  3      11    1.00    *                   vcvtsd2usi	(%rax), %rcx
+# CHECK-NEXT:  2      6     1.00                        vcvtss2usi	%xmm0, %ecx
+# CHECK-NEXT:  3      7     1.00                        vcvtss2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      11    1.00    *                   vcvtss2usi	(%rax), %ecx
+# CHECK-NEXT:  3      12    1.00    *                   vcvtss2usi	(%rax), %rcx
 # CHECK-NEXT:  1      4     0.50                        vcvtps2udq	%zmm16, %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtps2udq	(%rax), %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtps2udq	(%rax){1to16}, %zmm19
@@ -1182,6 +1220,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      3     0.50                        vcvttps2udq	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvttps2udq	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvttps2udq	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  2      6     1.00                        vcvttsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  2      6     1.00                        vcvttsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      12    1.00    *                   vcvttsd2usi	(%rax), %ecx
+# CHECK-NEXT:  3      11    1.00    *                   vcvttsd2usi	(%rax), %rcx
+# CHECK-NEXT:  2      6     1.00                        vcvttss2usi	%xmm0, %ecx
+# CHECK-NEXT:  3      7     1.00                        vcvttss2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      11    1.00    *                   vcvttss2usi	(%rax), %ecx
+# CHECK-NEXT:  3      12    1.00    *                   vcvttss2usi	(%rax), %rcx
 # CHECK-NEXT:  2      7     1.00                        vcvtudq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtudq2pd	(%rax), %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtudq2pd	(%rax){1to8}, %zmm19
@@ -1200,6 +1246,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      4     0.50                        vcvtudq2ps	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvtudq2ps	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvtudq2ps	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  2      5     1.00                        vcvtusi2sd	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  2      5     1.00                        vcvtusi2sd	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2sdl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2sdq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      5     1.00                        vcvtusi2ss	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  3      6     2.00                        vcvtusi2ss	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2ssl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2ssq	(%rax), %xmm0, %xmm2
 # CHECK-NEXT:  3      23    16.00                       vdivpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1861,7 +1915,7 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]
-# CHECK-NEXT:  -     612.00 282.17 67.67  308.83 308.83 16.00  631.17 2.00   5.33    -      -
+# CHECK-NEXT:  -     612.00 301.50 85.00  314.83 314.83 16.00  641.50 2.00   5.33    -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   Instructions:
@@ -2045,6 +2099,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -      -      -     vcvtps2pd	%ymm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtps2pd	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtps2pd	(%rax){1to8}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -      -      -     vcvtsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -      -      -     vcvtsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtsd2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -      -      -      -      -      -     vcvtsd2usi	(%rax), %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -      -      -     vcvtss2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.33   0.33    -      -      -     1.33    -      -      -      -     vcvtss2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -      -      -      -      -      -     vcvtss2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtss2usi	(%rax), %rcx
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -      -      -     vcvtps2udq	%zmm16, %zmm19
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtps2udq	(%rax), %zmm19
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtps2udq	(%rax){1to16}, %zmm19
@@ -2063,6 +2125,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -      -      -     vcvttps2udq	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvttps2udq	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvttps2udq	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -      -      -     vcvttsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -      -      -     vcvttsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvttsd2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -      -      -      -      -      -     vcvttsd2usi	(%rax), %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -      -      -     vcvttss2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.33   0.33    -      -      -     1.33    -      -      -      -     vcvttss2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -      -      -      -      -      -     vcvttss2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvttss2usi	(%rax), %rcx
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     1.50    -      -      -      -     vcvtudq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtudq2pd	(%rax), %zmm19
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtudq2pd	(%rax){1to8}, %zmm19
@@ -2081,6 +2151,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -      -      -     vcvtudq2ps	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtudq2ps	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -      -      -     vcvtudq2ps	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     1.33    -      -      -      -     vcvtusi2sd	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     1.33    -      -      -      -     vcvtusi2sd	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00   0.50   0.50    -      -      -      -      -      -     vcvtusi2sdl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00   0.50   0.50    -      -      -      -      -      -     vcvtusi2sdq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     1.33    -      -      -      -     vcvtusi2ss	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     2.33    -      -      -      -     vcvtusi2ss	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00   0.50   0.50    -      -      -      -      -      -     vcvtusi2ssl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00   0.50   0.50    -      -      -      -      -      -     vcvtusi2ssq	(%rax), %xmm0, %xmm2
 # CHECK-NEXT:  -     16.00  2.00    -      -      -      -     1.00    -      -      -      -     vdivpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -      -      -     vdivpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -      -      -     vdivpd	(%rax){1to8}, %zmm17, %zmm19

diff  --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s
index 5576a44b7a75a..f31c9ac42f88f 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s
@@ -207,6 +207,16 @@ vcvtps2pd         %ymm16, %zmm19 {z}{k1}
 vcvtps2pd         (%rax), %zmm19 {z}{k1}
 vcvtps2pd         (%rax){1to8}, %zmm19 {z}{k1}
 
+vcvtsd2usi        %xmm0, %ecx
+vcvtsd2usi        %xmm0, %rcx
+vcvtsd2usi        (%rax), %ecx
+vcvtsd2usi        (%rax), %rcx
+
+vcvtss2usi        %xmm0, %ecx
+vcvtss2usi        %xmm0, %rcx
+vcvtss2usi        (%rax), %ecx
+vcvtss2usi        (%rax), %rcx
+
 vcvtps2udq        %zmm16, %zmm19
 vcvtps2udq        (%rax), %zmm19
 vcvtps2udq        (%rax){1to16}, %zmm19
@@ -227,6 +237,16 @@ vcvttps2udq       %zmm16, %zmm19 {z}{k1}
 vcvttps2udq       (%rax), %zmm19 {z}{k1}
 vcvttps2udq       (%rax){1to16}, %zmm19 {z}{k1}
 
+vcvttsd2usi       %xmm0, %ecx
+vcvttsd2usi       %xmm0, %rcx
+vcvttsd2usi       (%rax), %ecx
+vcvttsd2usi       (%rax), %rcx
+
+vcvttss2usi       %xmm0, %ecx
+vcvttss2usi       %xmm0, %rcx
+vcvttss2usi       (%rax), %ecx
+vcvttss2usi       (%rax), %rcx
+
 vcvtudq2pd        %ymm16, %zmm19
 vcvtudq2pd        (%rax), %zmm19
 vcvtudq2pd        (%rax){1to8}, %zmm19
@@ -247,6 +267,16 @@ vcvtudq2ps        %zmm16, %zmm19 {z}{k1}
 vcvtudq2ps        (%rax), %zmm19 {z}{k1}
 vcvtudq2ps        (%rax){1to16}, %zmm19 {z}{k1}
 
+vcvtusi2sdl       %ecx, %xmm0, %xmm2
+vcvtusi2sdq       %rcx, %xmm0, %xmm2
+vcvtusi2sdl       (%rax), %xmm0, %xmm2
+vcvtusi2sdq       (%rax), %xmm0, %xmm2
+
+vcvtusi2ssl       %ecx, %xmm0, %xmm2
+vcvtusi2ssq       %rcx, %xmm0, %xmm2
+vcvtusi2ssl       (%rax), %xmm0, %xmm2
+vcvtusi2ssq       (%rax), %xmm0, %xmm2
+
 vdivpd            %zmm16, %zmm17, %zmm19
 vdivpd            (%rax), %zmm17, %zmm19
 vdivpd            (%rax){1to8}, %zmm17, %zmm19
@@ -1164,6 +1194,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  2      3     1.00                        vcvtps2pd	%ymm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvtps2pd	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvtps2pd	(%rax){1to8}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  2      6     1.00                        vcvtsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  2      6     1.00                        vcvtsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      12    1.00    *                   vcvtsd2usi	(%rax), %ecx
+# CHECK-NEXT:  3      11    1.00    *                   vcvtsd2usi	(%rax), %rcx
+# CHECK-NEXT:  2      6     1.00                        vcvtss2usi	%xmm0, %ecx
+# CHECK-NEXT:  3      7     1.00                        vcvtss2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      11    1.00    *                   vcvtss2usi	(%rax), %ecx
+# CHECK-NEXT:  3      12    1.00    *                   vcvtss2usi	(%rax), %rcx
 # CHECK-NEXT:  1      4     0.50                        vcvtps2udq	%zmm16, %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtps2udq	(%rax), %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtps2udq	(%rax){1to16}, %zmm19
@@ -1182,6 +1220,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      3     0.50                        vcvttps2udq	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvttps2udq	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvttps2udq	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  2      6     1.00                        vcvttsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  2      6     1.00                        vcvttsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      12    1.00    *                   vcvttsd2usi	(%rax), %ecx
+# CHECK-NEXT:  3      11    1.00    *                   vcvttsd2usi	(%rax), %rcx
+# CHECK-NEXT:  2      6     1.00                        vcvttss2usi	%xmm0, %ecx
+# CHECK-NEXT:  3      7     1.00                        vcvttss2usi	%xmm0, %rcx
+# CHECK-NEXT:  3      11    1.00    *                   vcvttss2usi	(%rax), %ecx
+# CHECK-NEXT:  3      12    1.00    *                   vcvttss2usi	(%rax), %rcx
 # CHECK-NEXT:  2      7     1.00                        vcvtudq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtudq2pd	(%rax), %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtudq2pd	(%rax){1to8}, %zmm19
@@ -1200,6 +1246,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      4     0.50                        vcvtudq2ps	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvtudq2ps	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vcvtudq2ps	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  2      5     1.00                        vcvtusi2sd	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  2      5     1.00                        vcvtusi2sd	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2sdl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2sdq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      5     1.00                        vcvtusi2ss	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  3      6     2.00                        vcvtusi2ss	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2ssl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.00    *                   vcvtusi2ssq	(%rax), %xmm0, %xmm2
 # CHECK-NEXT:  3      23    16.00                       vdivpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1859,7 +1913,7 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
-# CHECK-NEXT:  -     612.00 290.67 80.67  308.83 308.83 16.00  609.67 2.00   5.33
+# CHECK-NEXT:  -     612.00 311.67 99.67  314.83 314.83 16.00  616.67 2.00   5.33
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -2043,6 +2097,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     vcvtps2pd	%ymm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvtps2pd	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvtps2pd	(%rax){1to8}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -     vcvtsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -     vcvtsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.50   0.50   0.50   0.50    -      -      -      -     vcvtsd2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -      -      -      -     vcvtsd2usi	(%rax), %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -     vcvtss2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.50   0.50    -      -      -     1.00    -      -     vcvtss2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -      -      -      -     vcvtss2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.50   0.50   0.50   0.50    -      -      -      -     vcvtss2usi	(%rax), %rcx
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtps2udq	%zmm16, %zmm19
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvtps2udq	(%rax), %zmm19
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvtps2udq	(%rax){1to16}, %zmm19
@@ -2061,6 +2123,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvttps2udq	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvttps2udq	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvttps2udq	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -     vcvttsd2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -     vcvttsd2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.50   0.50   0.50   0.50    -      -      -      -     vcvttsd2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -      -      -      -     vcvttsd2usi	(%rax), %rcx
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -     vcvttss2usi	%xmm0, %ecx
+# CHECK-NEXT:  -      -     1.50   0.50    -      -      -     1.00    -      -     vcvttss2usi	%xmm0, %rcx
+# CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -      -      -      -     vcvttss2usi	(%rax), %ecx
+# CHECK-NEXT:  -      -     1.50   0.50   0.50   0.50    -      -      -      -     vcvttss2usi	(%rax), %rcx
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     1.50    -      -     vcvtudq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvtudq2pd	(%rax), %zmm19
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvtudq2pd	(%rax){1to8}, %zmm19
@@ -2079,6 +2149,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtudq2ps	%zmm16, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvtudq2ps	(%rax), %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vcvtudq2ps	(%rax){1to16}, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     vcvtusi2sd	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     vcvtusi2sd	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00   0.50   0.50    -      -      -      -     vcvtusi2sdl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00   0.50   0.50    -      -      -      -     vcvtusi2sdq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     vcvtusi2ss	%ecx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     2.00    -      -     vcvtusi2ss	%rcx, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00   0.50   0.50    -      -      -      -     vcvtusi2ssl	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -     1.00   0.50   0.50    -      -      -      -     vcvtusi2ssq	(%rax), %xmm0, %xmm2
 # CHECK-NEXT:  -     16.00  2.00    -      -      -      -     1.00    -      -     vdivpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivpd	(%rax){1to8}, %zmm17, %zmm19


        


More information about the llvm-commits mailing list