[llvm] c636f69 - [X86] Add more avx512 instrutions to llvm-mca resource tests

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Sun Feb 16 17:12:25 PST 2020


Author: Craig Topper
Date: 2020-02-16T16:59:36-08:00
New Revision: c636f694c0fa1eac85dd1dc1d12e2d899f77e255

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

LOG: [X86] Add more avx512 instrutions to llvm-mca resource tests

Added: 
    

Modified: 
    llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s
    llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s
    llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s
    llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dq.s
    llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dqvl.s
    llvm/test/tools/llvm-mca/X86/Generic/resources-avx512vl.s
    llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s
    llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s
    llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
    llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s
    llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s
    llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.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 d232058859c5..b832d7af3519 100644
--- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s
+++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512.s
@@ -1,6 +1,15 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -instruction-tables < %s | FileCheck %s
 
+kandw             %k0, %k1, %k2
+kandnw            %k0, %k1, %k2
+korw              %k0, %k1, %k2
+kxnorw            %k0, %k1, %k2
+kxorw             %k0, %k1, %k2
+kshiftlw          $2, %k1, %k2
+kshiftrw          $2, %k1, %k2
+kunpckbw          %k0, %k1, %k2
+
 vaddpd            %zmm16, %zmm17, %zmm19
 vaddpd            (%rax), %zmm17, %zmm19
 vaddpd            (%rax){1to8}, %zmm17, %zmm19
@@ -21,6 +30,33 @@ vaddps            %zmm16, %zmm17, %zmm19 {z}{k1}
 vaddps            (%rax), %zmm17, %zmm19 {z}{k1}
 vaddps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
+vcmppd            $0, %zmm0, %zmm1, %k2
+vcmppd            $0, (%rax), %zmm1, %k2
+vcmppd            $0, (%rax){1to8}, %zmm1, %k2
+vcmppd            $0, %zmm0, %zmm1, %k2 {k3}
+vcmppd            $0, (%rax), %zmm1, %k2 {k3}
+vcmppd            $0, (%rax){1to8}, %zmm1, %k2 {k3}
+
+vcmpps            $0, %zmm0, %zmm1, %k2
+vcmpps            $0, (%rax), %zmm1, %k2
+vcmpps            $0, (%rax){1to16}, %zmm1, %k2
+vcmpps            $0, %zmm0, %zmm1, %k2 {k3}
+vcmpps            $0, (%rax), %zmm1, %k2 {k3}
+vcmpps            $0, (%rax){1to16}, %zmm1, %k2 {k3}
+
+vcmpsd            $0, %xmm0, %xmm1, %k2
+vcmpsd            $0, (%rax), %xmm1, %k2
+vcmpsd            $0, %xmm0, %xmm1, %k2 {k3}
+vcmpsd            $0, (%rax), %xmm1, %k2 {k3}
+
+vcmpss            $0, %xmm0, %xmm1, %k2
+vcmpss            $0, (%rax), %xmm1, %k2
+vcmpss            $0, %xmm0, %xmm1, %k2 {k3}
+vcmpss            $0, (%rax), %xmm1, %k2 {k3}
+
+vcomiss           %xmm16, %xmm17
+vcomiss           (%rax), %xmm17
+
 vcvtdq2pd         %ymm16, %zmm19
 vcvtdq2pd         (%rax), %zmm19
 vcvtdq2pd         (%rax){1to8}, %zmm19
@@ -81,6 +117,11 @@ vdivps            %zmm16, %zmm17, %zmm19 {z}{k1}
 vdivps            (%rax), %zmm17, %zmm19 {z}{k1}
 vdivps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
+vgatherdpd        (%rax,%ymm1,2), %zmm2 {k1}
+vgatherdps        (%rax,%zmm1,2), %zmm2 {k1}
+vgatherqpd        (%rax,%zmm1,2), %zmm2 {k1}
+vgatherqps        (%rax,%zmm1,2), %ymm2 {k1}
+
 vmaxpd            %zmm16, %zmm17, %zmm19
 vmaxpd            (%rax), %zmm17, %zmm19
 vmaxpd            (%rax){1to8}, %zmm17, %zmm19
@@ -181,6 +222,62 @@ vpaddq            %zmm16, %zmm17, %zmm19 {z}{k1}
 vpaddq            (%rax), %zmm17, %zmm19 {z}{k1}
 vpaddq            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
 
+vpcmpd            $0, %zmm0, %zmm1, %k2
+vpcmpd            $0, (%rax), %zmm1, %k2
+vpcmpd            $0, (%rax){1to16}, %zmm1, %k2
+vpcmpd            $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpd            $0, (%rax), %zmm1, %k2 {k3}
+vpcmpd            $0, (%rax){1to16}, %zmm1, %k2 {k3}
+
+vpcmpeqd          %zmm0, %zmm1, %k2
+vpcmpeqd          (%rax), %zmm1, %k2
+vpcmpeqd          (%rax){1to16}, %zmm1, %k2
+vpcmpeqd          %zmm0, %zmm1, %k2 {k3}
+vpcmpeqd          (%rax), %zmm1, %k2 {k3}
+vpcmpeqd          (%rax){1to16}, %zmm1, %k2 {k3}
+
+vpcmpeqq          %zmm0, %zmm1, %k2
+vpcmpeqq          (%rax), %zmm1, %k2
+vpcmpeqq          (%rax){1to8}, %zmm1, %k2
+vpcmpeqq          %zmm0, %zmm1, %k2 {k3}
+vpcmpeqq          (%rax), %zmm1, %k2 {k3}
+vpcmpeqq          (%rax){1to8}, %zmm1, %k2 {k3}
+
+vpcmpgtd          %zmm0, %zmm1, %k2
+vpcmpgtd          (%rax), %zmm1, %k2
+vpcmpgtd          (%rax){1to16}, %zmm1, %k2
+vpcmpgtd          %zmm0, %zmm1, %k2 {k3}
+vpcmpgtd          (%rax), %zmm1, %k2 {k3}
+vpcmpgtd          (%rax){1to16}, %zmm1, %k2 {k3}
+
+vpcmpgtq          %zmm0, %zmm1, %k2
+vpcmpgtq          (%rax), %zmm1, %k2
+vpcmpgtq          (%rax){1to8}, %zmm1, %k2
+vpcmpgtq          %zmm0, %zmm1, %k2 {k3}
+vpcmpgtq          (%rax), %zmm1, %k2 {k3}
+vpcmpgtq          (%rax){1to8}, %zmm1, %k2 {k3}
+
+vpcmpq            $0, %zmm0, %zmm1, %k2
+vpcmpq            $0, (%rax), %zmm1, %k2
+vpcmpq            $0, (%rax){1to8}, %zmm1, %k2
+vpcmpq            $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpq            $0, (%rax), %zmm1, %k2 {k3}
+vpcmpq            $0, (%rax){1to8}, %zmm1, %k2 {k3}
+
+vpcmpud           $0, %zmm0, %zmm1, %k2
+vpcmpud           $0, (%rax), %zmm1, %k2
+vpcmpud           $0, (%rax){1to16}, %zmm1, %k2
+vpcmpud           $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpud           $0, (%rax), %zmm1, %k2 {k3}
+vpcmpud           $0, (%rax){1to16}, %zmm1, %k2 {k3}
+
+vpcmpuq           $0, %zmm0, %zmm1, %k2
+vpcmpuq           $0, (%rax), %zmm1, %k2
+vpcmpuq           $0, (%rax){1to8}, %zmm1, %k2
+vpcmpuq           $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpuq           $0, (%rax), %zmm1, %k2 {k3}
+vpcmpuq           $0, (%rax){1to8}, %zmm1, %k2 {k3}
+
 vpgatherdq        (%rax,%ymm1,2), %zmm2 {k1}
 vpgatherdd        (%rax,%zmm1,2), %zmm2 {k1}
 vpgatherqq        (%rax,%zmm1,2), %zmm2 {k1}
@@ -460,6 +557,34 @@ vpsubq            %zmm16, %zmm17, %zmm19 {z}{k1}
 vpsubq            (%rax), %zmm17, %zmm19 {z}{k1}
 vpsubq            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
 
+vptestmd          %zmm0, %zmm1, %k2
+vptestmd          (%rax), %zmm1, %k2
+vptestmd          (%rax){1to16}, %zmm1, %k2
+vptestmd          %zmm0, %zmm1, %k2 {k3}
+vptestmd          (%rax), %zmm1, %k2 {k3}
+vptestmd          (%rax){1to16}, %zmm1, %k2 {k3}
+
+vptestmq          %zmm0, %zmm1, %k2
+vptestmq          (%rax), %zmm1, %k2
+vptestmq          (%rax){1to8}, %zmm1, %k2
+vptestmq          %zmm0, %zmm1, %k2 {k3}
+vptestmq          (%rax), %zmm1, %k2 {k3}
+vptestmq          (%rax){1to8}, %zmm1, %k2 {k3}
+
+vptestnmd         %zmm0, %zmm1, %k2
+vptestnmd         (%rax), %zmm1, %k2
+vptestnmd         (%rax){1to16}, %zmm1, %k2
+vptestnmd         %zmm0, %zmm1, %k2 {k3}
+vptestnmd         (%rax), %zmm1, %k2 {k3}
+vptestnmd         (%rax){1to16}, %zmm1, %k2 {k3}
+
+vptestnmq         %zmm0, %zmm1, %k2
+vptestnmq         (%rax), %zmm1, %k2
+vptestnmq         (%rax){1to8}, %zmm1, %k2
+vptestnmq         %zmm0, %zmm1, %k2 {k3}
+vptestnmq         (%rax), %zmm1, %k2 {k3}
+vptestnmq         (%rax){1to8}, %zmm1, %k2 {k3}
+
 vsubpd            %zmm16, %zmm17, %zmm19
 vsubpd            (%rax), %zmm17, %zmm19
 vsubpd            (%rax){1to8}, %zmm17, %zmm19
@@ -480,6 +605,9 @@ vsubps            %zmm16, %zmm17, %zmm19 {z}{k1}
 vsubps            (%rax), %zmm17, %zmm19 {z}{k1}
 vsubps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
+vucomiss          %xmm16, %xmm17
+vucomiss          (%rax), %xmm17
+
 vunpckhpd         %zmm16, %zmm17, %zmm19
 vunpckhpd         (%rax), %zmm17, %zmm19
 vunpckhpd         (%rax){1to8}, %zmm17, %zmm19
@@ -529,6 +657,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT: [6]: HasSideEffects (U)
 
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      1     0.33                        kandw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kandnw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        korw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kxnorw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kxorw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kshiftlw	$2, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kshiftrw	$2, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kunpckbw	%k0, %k1, %k2
 # CHECK-NEXT:  1      3     1.00                        vaddpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      10    1.00    *                   vaddpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      10    1.00    *                   vaddpd	(%rax){1to8}, %zmm17, %zmm19
@@ -547,6 +683,28 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vaddps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vaddps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vaddps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqsd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqsd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqsd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqsd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqss	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqss	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqss	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqss	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcomiss	%xmm16, %xmm17
+# CHECK-NEXT:  2      8     1.00    *                   vcomiss	(%rax), %xmm17
 # CHECK-NEXT:  2      4     1.00                        vcvtdq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  3      10    1.00    *                   vcvtdq2pd	(%rax), %zmm19
 # CHECK-NEXT:  3      10    1.00    *                   vcvtdq2pd	(%rax){1to8}, %zmm19
@@ -601,6 +759,10 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  3      29    28.00                       vdivps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  4      36    28.00   *                   vdivps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  4      36    28.00   *                   vdivps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      5     0.50    *                   vgatherdpd	(%rax,%ymm1,2), %zmm2 {%k1}
+# CHECK-NEXT:  1      5     0.50    *                   vgatherdps	(%rax,%zmm1,2), %zmm2 {%k1}
+# CHECK-NEXT:  1      5     0.50    *                   vgatherqpd	(%rax,%zmm1,2), %zmm2 {%k1}
+# CHECK-NEXT:  1      5     0.50    *                   vgatherqps	(%rax,%zmm1,2), %ymm2 {%k1}
 # CHECK-NEXT:  1      3     1.00                        vmaxpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      10    1.00    *                   vmaxpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      10    1.00    *                   vmaxpd	(%rax){1to8}, %zmm17, %zmm19
@@ -691,6 +853,54 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.50                        vpaddq	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequq	(%rax){1to8}, %zmm1, %k2 {%k3}
 # CHECK-NEXT:  1      5     0.50    *                   vpgatherdq	(%rax,%ymm1,2), %zmm2 {%k1}
 # CHECK-NEXT:  1      5     0.50    *                   vpgatherdd	(%rax,%zmm1,2), %zmm2 {%k1}
 # CHECK-NEXT:  1      5     0.50    *                   vpgatherqq	(%rax,%zmm1,2), %zmm2 {%k1}
@@ -941,6 +1151,30 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.50                        vpsubq	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      1     0.33                        vptestmd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestmq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmq	(%rax){1to8}, %zmm1, %k2 {%k3}
 # CHECK-NEXT:  1      3     1.00                        vsubpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      10    1.00    *                   vsubpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      10    1.00    *                   vsubpd	(%rax){1to8}, %zmm17, %zmm19
@@ -959,6 +1193,8 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vsubps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vsubps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vsubps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vucomiss	%xmm16, %xmm17
+# CHECK-NEXT:  2      8     1.00    *                   vucomiss	(%rax), %xmm17
 # CHECK-NEXT:  1      1     1.00                        vunpckhpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1008,10 +1244,18 @@ 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 129.00 144.00  -    270.00 155.00 155.00
+# CHECK-NEXT:  -     1506.00 138.67 201.67  -    306.67 188.00 188.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kandw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kandnw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     korw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kxnorw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kxorw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kshiftlw	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kshiftrw	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kunpckbw	%k0, %k1, %k2
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vaddpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vaddpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vaddpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1030,6 +1274,28 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vaddps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vaddps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vaddps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqpd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqpd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqps	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqps	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqsd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqsd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqsd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqsd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqss	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqss	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqss	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqss	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcomiss	%xmm16, %xmm17
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcomiss	(%rax), %xmm17
 # CHECK-NEXT:  -      -      -     1.00    -     1.00    -      -     vcvtdq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -     1.00   0.50   0.50   vcvtdq2pd	(%rax), %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -     1.00   0.50   0.50   vcvtdq2pd	(%rax){1to8}, %zmm19
@@ -1084,6 +1350,10 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -     28.00  2.50    -      -     0.50    -      -     vdivps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -     28.00  2.50    -      -     0.50   0.50   0.50   vdivps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -     28.00  2.50    -      -     0.50   0.50   0.50   vdivps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -     0.50   0.50   vgatherdpd	(%rax,%ymm1,2), %zmm2 {%k1}
+# CHECK-NEXT:  -      -      -      -      -      -     0.50   0.50   vgatherdps	(%rax,%zmm1,2), %zmm2 {%k1}
+# CHECK-NEXT:  -      -      -      -      -      -     0.50   0.50   vgatherqpd	(%rax,%zmm1,2), %zmm2 {%k1}
+# CHECK-NEXT:  -      -      -      -      -      -     0.50   0.50   vgatherqps	(%rax,%zmm1,2), %ymm2 {%k1}
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vmaxpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vmaxpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vmaxpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1174,6 +1444,54 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpaddq	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpaddq	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpaddq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax){1to8}, %zmm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -      -     0.50   0.50   vpgatherdq	(%rax,%ymm1,2), %zmm2 {%k1}
 # CHECK-NEXT:  -      -      -      -      -      -     0.50   0.50   vpgatherdd	(%rax,%zmm1,2), %zmm2 {%k1}
 # CHECK-NEXT:  -      -      -      -      -      -     0.50   0.50   vpgatherqq	(%rax,%zmm1,2), %zmm2 {%k1}
@@ -1424,6 +1742,30 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpsubq	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpsubq	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax){1to8}, %zmm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vsubpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vsubpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vsubpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1442,6 +1784,8 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vsubps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vsubps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vsubps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vucomiss	%xmm16, %xmm17
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vucomiss	(%rax), %xmm17
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vunpckhpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vunpckhpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vunpckhpd	(%rax){1to8}, %zmm17, %zmm19

diff  --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s
index 145192932f5b..be70d494bf50 100644
--- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s
+++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bw.s
@@ -1,6 +1,25 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -instruction-tables < %s | FileCheck %s
 
+kaddd             %k0, %k1, %k2
+kaddq             %k0, %k1, %k2
+kandd             %k0, %k1, %k2
+kandq             %k0, %k1, %k2
+kandnd            %k0, %k1, %k2
+kandnq            %k0, %k1, %k2
+kord              %k0, %k1, %k2
+korq              %k0, %k1, %k2
+kxnord            %k0, %k1, %k2
+kxnorq            %k0, %k1, %k2
+kxord             %k0, %k1, %k2
+kxorq             %k0, %k1, %k2
+kshiftld          $2, %k1, %k2
+kshiftlq          $2, %k1, %k2
+kshiftrd          $2, %k1, %k2
+kshiftrq          $2, %k1, %k2
+kunpckdq          %k0, %k1, %k2
+kunpckwd          %k0, %k1, %k2
+
 vpabsb            %zmm16, %zmm19
 vpabsb            (%rax), %zmm19
 vpabsb            %zmm16, %zmm19 {k1}
@@ -29,6 +48,46 @@ vpaddw            (%rax), %zmm17, %zmm19 {k1}
 vpaddw            %zmm16, %zmm17, %zmm19 {z}{k1}
 vpaddw            (%rax), %zmm17, %zmm19 {z}{k1}
 
+vpcmpb            $0, %zmm0, %zmm1, %k2
+vpcmpb            $0, (%rax), %zmm1, %k2
+vpcmpb            $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpb            $0, (%rax), %zmm1, %k2 {k3}
+
+vpcmpeqb          %zmm0, %zmm1, %k2
+vpcmpeqb          (%rax), %zmm1, %k2
+vpcmpeqb          %zmm0, %zmm1, %k2 {k3}
+vpcmpeqb          (%rax), %zmm1, %k2 {k3}
+
+vpcmpeqw          %zmm0, %zmm1, %k2
+vpcmpeqw          (%rax), %zmm1, %k2
+vpcmpeqw          %zmm0, %zmm1, %k2 {k3}
+vpcmpeqw          (%rax), %zmm1, %k2 {k3}
+
+vpcmpgtb          %zmm0, %zmm1, %k2
+vpcmpgtb          (%rax), %zmm1, %k2
+vpcmpgtb          %zmm0, %zmm1, %k2 {k3}
+vpcmpgtb          (%rax), %zmm1, %k2 {k3}
+
+vpcmpgtw          %zmm0, %zmm1, %k2
+vpcmpgtw          (%rax), %zmm1, %k2
+vpcmpgtw          %zmm0, %zmm1, %k2 {k3}
+vpcmpgtw          (%rax), %zmm1, %k2 {k3}
+
+vpcmpub           $0, %zmm0, %zmm1, %k2
+vpcmpub           $0, (%rax), %zmm1, %k2
+vpcmpub           $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpub           $0, (%rax), %zmm1, %k2 {k3}
+
+vpcmpuw           $0, %zmm0, %zmm1, %k2
+vpcmpuw           $0, (%rax), %zmm1, %k2
+vpcmpuw           $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpuw           $0, (%rax), %zmm1, %k2 {k3}
+
+vpcmpw            $0, %zmm0, %zmm1, %k2
+vpcmpw            $0, (%rax), %zmm1, %k2
+vpcmpw            $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpw            $0, (%rax), %zmm1, %k2 {k3}
+
 vpermw            %zmm16, %zmm17, %zmm19
 vpermw            (%rax), %zmm17, %zmm19
 vpermw            %zmm16, %zmm17, %zmm19 {k1}
@@ -71,6 +130,26 @@ vpsubw            (%rax), %zmm17, %zmm19 {k1}
 vpsubw            %zmm16, %zmm17, %zmm19 {z}{k1}
 vpsubw            (%rax), %zmm17, %zmm19 {z}{k1}
 
+vptestmb          %zmm0, %zmm1, %k2
+vptestmb          (%rax), %zmm1, %k2
+vptestmb          %zmm0, %zmm1, %k2 {k3}
+vptestmb          (%rax), %zmm1, %k2 {k3}
+
+vptestmw          %zmm0, %zmm1, %k2
+vptestmw          (%rax), %zmm1, %k2
+vptestmw          %zmm0, %zmm1, %k2 {k3}
+vptestmw          (%rax), %zmm1, %k2 {k3}
+
+vptestnmb         %zmm0, %zmm1, %k2
+vptestnmb         (%rax), %zmm1, %k2
+vptestnmb         %zmm0, %zmm1, %k2 {k3}
+vptestnmb         (%rax), %zmm1, %k2 {k3}
+
+vptestnmw         %zmm0, %zmm1, %k2
+vptestnmw         (%rax), %zmm1, %k2
+vptestnmw         %zmm0, %zmm1, %k2 {k3}
+vptestnmw         (%rax), %zmm1, %k2 {k3}
+
 vpunpckhbw        %zmm16, %zmm17, %zmm19
 vpunpckhbw        (%rax), %zmm17, %zmm19
 vpunpckhbw        %zmm16, %zmm17, %zmm19 {k1}
@@ -108,6 +187,24 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT: [6]: HasSideEffects (U)
 
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      1     0.33                        kaddd	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kaddq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kandd	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kandq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kandnd	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kandnq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kord	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        korq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kxnord	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kxnorq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kxord	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kxorq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kshiftld	$2, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kshiftlq	$2, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kshiftrd	$2, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kshiftrq	$2, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kunpckdq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kunpckwd	%k0, %k1, %k2
 # CHECK-NEXT:  1      1     0.50                        vpabsb	%zmm16, %zmm19
 # CHECK-NEXT:  2      8     0.50    *                   vpabsb	(%rax), %zmm19
 # CHECK-NEXT:  1      1     0.50                        vpabsb	%zmm16, %zmm19 {%k1}
@@ -132,6 +229,38 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddw	(%rax), %zmm17, %zmm19 {%k1}
 # CHECK-NEXT:  1      1     0.50                        vpaddw	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddw	(%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqw	(%rax), %zmm1, %k2 {%k3}
 # CHECK-NEXT:  1      1     1.00                        vpermw	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vpermw	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  1      1     1.00                        vpermw	%zmm16, %zmm17, %zmm19 {%k1}
@@ -168,6 +297,22 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubw	(%rax), %zmm17, %zmm19 {%k1}
 # CHECK-NEXT:  1      1     0.50                        vpsubw	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubw	(%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      1     0.33                        vptestmb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestmw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmw	(%rax), %zmm1, %k2 {%k3}
 # CHECK-NEXT:  1      1     1.00                        vpunpckhbw	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vpunpckhbw	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  1      1     1.00                        vpunpckhbw	%zmm16, %zmm17, %zmm19 {%k1}
@@ -205,10 +350,28 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]
-# CHECK-NEXT:  -      -      -     21.00   -     63.00  21.00  21.00
+# CHECK-NEXT:  -      -     9.33   46.33   -     94.33  33.00  33.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kaddd	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kaddq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kandd	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kandq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kandnd	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kandnq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kord	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     korq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kxnord	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kxnorq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kxord	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kxorq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kshiftld	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kshiftlq	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kshiftrd	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kshiftrq	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kunpckdq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kunpckwd	%k0, %k1, %k2
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpabsb	%zmm16, %zmm19
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpabsb	(%rax), %zmm19
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpabsb	%zmm16, %zmm19 {%k1}
@@ -233,6 +396,38 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpaddw	(%rax), %zmm17, %zmm19 {%k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpaddw	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpaddw	(%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %zmm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpermw	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpermw	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpermw	%zmm16, %zmm17, %zmm19 {%k1}
@@ -269,6 +464,22 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpsubw	(%rax), %zmm17, %zmm19 {%k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpsubw	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpsubw	(%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmw	(%rax), %zmm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpunpckhbw	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpunpckhbw	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpunpckhbw	%zmm16, %zmm17, %zmm19 {%k1}

diff  --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s
index 71c54b8f9411..2f227a7a1c13 100644
--- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s
+++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512bwvl.s
@@ -57,6 +57,86 @@ vpaddw            (%rax), %ymm17, %ymm19 {k1}
 vpaddw            %ymm16, %ymm17, %ymm19 {z}{k1}
 vpaddw            (%rax), %ymm17, %ymm19 {z}{k1}
 
+vpcmpb            $0, %xmm0, %xmm1, %k2
+vpcmpb            $0, (%rax), %xmm1, %k2
+vpcmpb            $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpb            $0, (%rax), %xmm1, %k2 {k3}
+
+vpcmpb            $0, %ymm0, %ymm1, %k2
+vpcmpb            $0, (%rax), %ymm1, %k2
+vpcmpb            $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpb            $0, (%rax), %ymm1, %k2 {k3}
+
+vpcmpeqb          %xmm0, %xmm1, %k2
+vpcmpeqb          (%rax), %xmm1, %k2
+vpcmpeqb          %xmm0, %xmm1, %k2 {k3}
+vpcmpeqb          (%rax), %xmm1, %k2 {k3}
+
+vpcmpeqb          %ymm0, %ymm1, %k2
+vpcmpeqb          (%rax), %ymm1, %k2
+vpcmpeqb          %ymm0, %ymm1, %k2 {k3}
+vpcmpeqb          (%rax), %ymm1, %k2 {k3}
+
+vpcmpeqw          %xmm0, %xmm1, %k2
+vpcmpeqw          (%rax), %xmm1, %k2
+vpcmpeqw          %xmm0, %xmm1, %k2 {k3}
+vpcmpeqw          (%rax), %xmm1, %k2 {k3}
+
+vpcmpeqw          %ymm0, %ymm1, %k2
+vpcmpeqw          (%rax), %ymm1, %k2
+vpcmpeqw          %ymm0, %ymm1, %k2 {k3}
+vpcmpeqw          (%rax), %ymm1, %k2 {k3}
+
+vpcmpgtb          %xmm0, %xmm1, %k2
+vpcmpgtb          (%rax), %xmm1, %k2
+vpcmpgtb          %xmm0, %xmm1, %k2 {k3}
+vpcmpgtb          (%rax), %xmm1, %k2 {k3}
+
+vpcmpgtb          %ymm0, %ymm1, %k2
+vpcmpgtb          (%rax), %ymm1, %k2
+vpcmpgtb          %ymm0, %ymm1, %k2 {k3}
+vpcmpgtb          (%rax), %ymm1, %k2 {k3}
+
+vpcmpgtw          %xmm0, %xmm1, %k2
+vpcmpgtw          (%rax), %xmm1, %k2
+vpcmpgtw          %xmm0, %xmm1, %k2 {k3}
+vpcmpgtw          (%rax), %xmm1, %k2 {k3}
+
+vpcmpgtw          %ymm0, %ymm1, %k2
+vpcmpgtw          (%rax), %ymm1, %k2
+vpcmpgtw          %ymm0, %ymm1, %k2 {k3}
+vpcmpgtw          (%rax), %ymm1, %k2 {k3}
+
+vpcmpub           $0, %xmm0, %xmm1, %k2
+vpcmpub           $0, (%rax), %xmm1, %k2
+vpcmpub           $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpub           $0, (%rax), %xmm1, %k2 {k3}
+
+vpcmpub           $0, %ymm0, %ymm1, %k2
+vpcmpub           $0, (%rax), %ymm1, %k2
+vpcmpub           $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpub           $0, (%rax), %ymm1, %k2 {k3}
+
+vpcmpuw           $0, %xmm0, %xmm1, %k2
+vpcmpuw           $0, (%rax), %xmm1, %k2
+vpcmpuw           $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpuw           $0, (%rax), %xmm1, %k2 {k3}
+
+vpcmpuw           $0, %ymm0, %ymm1, %k2
+vpcmpuw           $0, (%rax), %ymm1, %k2
+vpcmpuw           $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpuw           $0, (%rax), %ymm1, %k2 {k3}
+
+vpcmpw            $0, %xmm0, %xmm1, %k2
+vpcmpw            $0, (%rax), %xmm1, %k2
+vpcmpw            $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpw            $0, (%rax), %xmm1, %k2 {k3}
+
+vpcmpw            $0, %ymm0, %ymm1, %k2
+vpcmpw            $0, (%rax), %ymm1, %k2
+vpcmpw            $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpw            $0, (%rax), %ymm1, %k2 {k3}
+
 vpermw            %xmm16, %xmm17, %xmm19
 vpermw            (%rax), %xmm17, %xmm19
 vpermw            %xmm16, %xmm17, %xmm19 {k1}
@@ -127,6 +207,46 @@ vpsubw            (%rax), %ymm17, %ymm19 {k1}
 vpsubw            %ymm16, %ymm17, %ymm19 {z}{k1}
 vpsubw            (%rax), %ymm17, %ymm19 {z}{k1}
 
+vptestmb          %xmm0, %xmm1, %k2
+vptestmb          (%rax), %xmm1, %k2
+vptestmb          %xmm0, %xmm1, %k2 {k3}
+vptestmb          (%rax), %xmm1, %k2 {k3}
+
+vptestmb          %ymm0, %ymm1, %k2
+vptestmb          (%rax), %ymm1, %k2
+vptestmb          %ymm0, %ymm1, %k2 {k3}
+vptestmb          (%rax), %ymm1, %k2 {k3}
+
+vptestmw          %xmm0, %xmm1, %k2
+vptestmw          (%rax), %xmm1, %k2
+vptestmw          %xmm0, %xmm1, %k2 {k3}
+vptestmw          (%rax), %xmm1, %k2 {k3}
+
+vptestmw          %ymm0, %ymm1, %k2
+vptestmw          (%rax), %ymm1, %k2
+vptestmw          %ymm0, %ymm1, %k2 {k3}
+vptestmw          (%rax), %ymm1, %k2 {k3}
+
+vptestnmb         %xmm0, %xmm1, %k2
+vptestnmb         (%rax), %xmm1, %k2
+vptestnmb         %xmm0, %xmm1, %k2 {k3}
+vptestnmb         (%rax), %xmm1, %k2 {k3}
+
+vptestnmb         %ymm0, %ymm1, %k2
+vptestnmb         (%rax), %ymm1, %k2
+vptestnmb         %ymm0, %ymm1, %k2 {k3}
+vptestnmb         (%rax), %ymm1, %k2 {k3}
+
+vptestnmw         %xmm0, %xmm1, %k2
+vptestnmw         (%rax), %xmm1, %k2
+vptestnmw         %xmm0, %xmm1, %k2 {k3}
+vptestnmw         (%rax), %xmm1, %k2 {k3}
+
+vptestnmw         %ymm0, %ymm1, %k2
+vptestnmw         (%rax), %ymm1, %k2
+vptestnmw         %ymm0, %ymm1, %k2 {k3}
+vptestnmw         (%rax), %ymm1, %k2 {k3}
+
 vpunpckhbw         %xmm16, %xmm17, %xmm19
 vpunpckhbw         (%rax), %xmm17, %xmm19
 vpunpckhbw         %xmm16, %xmm17, %xmm19 {k1}
@@ -240,6 +360,70 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddw	(%rax), %ymm17, %ymm19 {%k1}
 # CHECK-NEXT:  1      1     0.50                        vpaddw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddw	(%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqw	(%rax), %ymm1, %k2 {%k3}
 # CHECK-NEXT:  1      1     1.00                        vpermw	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  2      8     1.00    *                   vpermw	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpermw	%xmm16, %xmm17, %xmm19 {%k1}
@@ -300,6 +484,38 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubw	(%rax), %ymm17, %ymm19 {%k1}
 # CHECK-NEXT:  1      1     0.50                        vpsubw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubw	(%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      1     0.33                        vptestmb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestmb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestmb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestmb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestmw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestmw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestmw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestmw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmw	(%rax), %ymm1, %k2 {%k3}
 # CHECK-NEXT:  1      1     0.50                        vpunpckhbw	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  2      7     0.50    *                   vpunpckhbw	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  1      1     0.50                        vpunpckhbw	%xmm16, %xmm17, %xmm19 {%k1}
@@ -361,7 +577,7 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]
-# CHECK-NEXT:  -      -      -     57.00   -     99.00  39.00  39.00
+# CHECK-NEXT:  -      -     10.67  99.67   -     141.67 63.00  63.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
@@ -413,6 +629,70 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpaddw	(%rax), %ymm17, %ymm19 {%k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpaddw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpaddw	(%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqw	(%rax), %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpermw	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpermw	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpermw	%xmm16, %xmm17, %xmm19 {%k1}
@@ -473,6 +753,38 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpsubw	(%rax), %ymm17, %ymm19 {%k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpsubw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpsubw	(%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmw	(%rax), %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpunpckhbw	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpunpckhbw	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpunpckhbw	%xmm16, %xmm17, %xmm19 {%k1}

diff  --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dq.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dq.s
index 1947562b5cf0..3630534fc049 100644
--- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dq.s
+++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dq.s
@@ -1,6 +1,16 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -instruction-tables < %s | FileCheck %s
 
+kaddb             %k0, %k1, %k2
+kaddw             %k0, %k1, %k2
+kandb             %k0, %k1, %k2
+kandnb            %k0, %k1, %k2
+korb              %k0, %k1, %k2
+kxnorb            %k0, %k1, %k2
+kxorb             %k0, %k1, %k2
+kshiftlb          $2, %k1, %k2
+kshiftrb          $2, %k1, %k2
+
 vandnpd           %zmm16, %zmm17, %zmm19
 vandnpd           (%rax), %zmm17, %zmm19
 vandnpd           (%rax){1to8}, %zmm17, %zmm19
@@ -81,6 +91,30 @@ vorps             %zmm16, %zmm17, %zmm19 {z}{k1}
 vorps             (%rax), %zmm17, %zmm19 {z}{k1}
 vorps             (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
+vfpclasspd        $0xab, %zmm16, %k1
+vfpclasspdz       $0xab, (%rax), %k1
+vfpclasspdz       $0xab, (%rax){1to8}, %k1
+vfpclasspd        $0xab, %zmm16, %k1 {k2}
+vfpclasspdz       $0xab, (%rax), %k1 {k2}
+vfpclasspdz       $0xab, (%rax){1to8}, %k1 {k2}
+
+vfpclassps        $0xab, %zmm16, %k1
+vfpclasspsz       $0xab, (%rax), %k1
+vfpclasspsz       $0xab, (%rax){1to16}, %k1
+vfpclassps        $0xab, %zmm16, %k1 {k2}
+vfpclasspsz       $0xab, (%rax), %k1 {k2}
+vfpclasspsz       $0xab, (%rax){1to16}, %k1 {k2}
+
+vfpclasssd        $0xab, %xmm16, %k1
+vfpclasssd        $0xab, (%rax), %k1
+vfpclasssd        $0xab, %xmm16, %k1 {k2}
+vfpclasssd        $0xab, (%rax), %k1 {k2}
+
+vfpclassss        $0xab, %xmm16, %k1
+vfpclassss        $0xab, (%rax), %k1
+vfpclassss        $0xab, %xmm16, %k1 {k2}
+vfpclassss        $0xab, (%rax), %k1 {k2}
+
 vpmullq           %zmm16, %zmm17, %zmm19
 vpmullq           (%rax), %zmm17, %zmm19
 vpmullq           %zmm16, %zmm17, %zmm19 {k1}
@@ -117,6 +151,15 @@ vxorps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT: [6]: HasSideEffects (U)
 
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      1     0.33                        kaddb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kaddw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kandb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kandnb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        korb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kxnorb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     0.33                        kxorb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kshiftlb	$2, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kshiftrb	$2, %k1, %k2
 # CHECK-NEXT:  1      1     1.00                        vandnpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vandnpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vandnpd	(%rax){1to8}, %zmm17, %zmm19
@@ -189,6 +232,26 @@ vxorps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      1     1.00                        vorps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     1.00    *                   vorps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     1.00    *                   vorps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %zmm16, %k1
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspdz	$171, (%rax), %k1
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspd	$171, (%rax){1to8}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %zmm16, %k1 {%k2}
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspdz	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspd	$171, (%rax){1to8}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %zmm16, %k1
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspsz	$171, (%rax), %k1
+# CHECK-NEXT:  2      10    1.00    *                   vfpclassps	$171, (%rax){1to16}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %zmm16, %k1 {%k2}
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspsz	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      10    1.00    *                   vfpclassps	$171, (%rax){1to16}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclasssd	$171, %xmm16, %k1
+# CHECK-NEXT:  2      9     1.00    *                   vfpclasssd	$171, (%rax), %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclasssd	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  2      9     1.00    *                   vfpclasssd	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclassss	$171, %xmm16, %k1
+# CHECK-NEXT:  2      9     1.00    *                   vfpclassss	$171, (%rax), %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclassss	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  2      9     1.00    *                   vfpclassss	$171, (%rax), %k1 {%k2}
 # CHECK-NEXT:  1      5     1.00                        vpmullq	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      12    1.00    *                   vpmullq	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  1      5     1.00                        vpmullq	%zmm16, %zmm17, %zmm19 {%k1}
@@ -226,10 +289,19 @@ vxorps            (%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:  -      -     6.00   18.00   -     81.00  31.50  31.50
+# CHECK-NEXT:  -      -     8.33   40.33   -     85.33  37.50  37.50
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kaddb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kaddw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kandb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kandnb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     korb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kxnorb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     kxorb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kshiftlb	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     kshiftrb	$2, %k1, %k2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vandnpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vandnpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vandnpd	(%rax){1to8}, %zmm17, %zmm19
@@ -302,6 +374,26 @@ vxorps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vorps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vorps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vorps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclasspd	$171, %zmm16, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspdz	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspd	$171, (%rax){1to8}, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclasspd	$171, %zmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspdz	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspd	$171, (%rax){1to8}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclassps	$171, %zmm16, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspsz	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclassps	$171, (%rax){1to16}, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclassps	$171, %zmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspsz	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclassps	$171, (%rax){1to16}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclasssd	$171, %xmm16, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasssd	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclasssd	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasssd	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclassss	$171, %xmm16, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclassss	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclassss	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclassss	$171, (%rax), %k1 {%k2}
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpmullq	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpmullq	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpmullq	%zmm16, %zmm17, %zmm19 {%k1}

diff  --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dqvl.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dqvl.s
index 90c25753e37b..ac28d91d83fa 100644
--- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dqvl.s
+++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512dqvl.s
@@ -121,6 +121,34 @@ vorps             %ymm16, %ymm17, %ymm19 {z}{k1}
 vorps             (%rax), %ymm17, %ymm19 {z}{k1}
 vorps             (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 
+vfpclasspd        $0xab, %xmm16, %k1
+vfpclasspdx       $0xab, (%rax), %k1
+vfpclasspdx       $0xab, (%rax){1to2}, %k1
+vfpclasspd        $0xab, %xmm16, %k1 {k2}
+vfpclasspdx       $0xab, (%rax), %k1 {k2}
+vfpclasspdx       $0xab, (%rax){1to2}, %k1 {k2}
+
+vfpclasspd        $0xab, %ymm16, %k1
+vfpclasspdy       $0xab, (%rax), %k1
+vfpclasspdy       $0xab, (%rax){1to4}, %k1
+vfpclasspd        $0xab, %ymm16, %k1 {k2}
+vfpclasspdy       $0xab, (%rax), %k1 {k2}
+vfpclasspdy       $0xab, (%rax){1to4}, %k1 {k2}
+
+vfpclassps        $0xab, %xmm16, %k1
+vfpclasspsx       $0xab, (%rax), %k1
+vfpclasspsx       $0xab, (%rax){1to4}, %k1
+vfpclassps        $0xab, %xmm16, %k1 {k2}
+vfpclasspsx       $0xab, (%rax), %k1 {k2}
+vfpclasspsx       $0xab, (%rax){1to4}, %k1 {k2}
+
+vfpclassps        $0xab, %ymm16, %k1
+vfpclasspsy       $0xab, (%rax), %k1
+vfpclasspsy       $0xab, (%rax){1to8}, %k1
+vfpclassps        $0xab, %ymm16, %k1 {k2}
+vfpclasspsy       $0xab, (%rax), %k1 {k2}
+vfpclasspsy       $0xab, (%rax){1to8}, %k1 {k2}
+
 vpmullq           %xmm16, %xmm17, %xmm19
 vpmullq           (%rax), %xmm17, %xmm19
 vpmullq           %xmm16, %xmm17, %xmm19 {k1}
@@ -292,6 +320,30 @@ vxorps            (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      1     1.00                        vorps	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     1.00    *                   vorps	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     1.00    *                   vorps	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %xmm16, %k1
+# CHECK-NEXT:  2      9     1.00    *                   vfpclasspdx	$171, (%rax), %k1
+# CHECK-NEXT:  2      9     1.00    *                   vfpclasspd	$171, (%rax){1to2}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  2      9     1.00    *                   vfpclasspdx	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      9     1.00    *                   vfpclasspd	$171, (%rax){1to2}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %ymm16, %k1
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspdy	$171, (%rax), %k1
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspd	$171, (%rax){1to4}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %ymm16, %k1 {%k2}
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspdy	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspd	$171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %xmm16, %k1
+# CHECK-NEXT:  2      9     1.00    *                   vfpclasspsx	$171, (%rax), %k1
+# CHECK-NEXT:  2      9     1.00    *                   vfpclassps	$171, (%rax){1to4}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  2      9     1.00    *                   vfpclasspsx	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      9     1.00    *                   vfpclassps	$171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %ymm16, %k1
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspsy	$171, (%rax), %k1
+# CHECK-NEXT:  2      10    1.00    *                   vfpclassps	$171, (%rax){1to8}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %ymm16, %k1 {%k2}
+# CHECK-NEXT:  2      10    1.00    *                   vfpclasspsy	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      10    1.00    *                   vfpclassps	$171, (%rax){1to8}, %k1 {%k2}
 # CHECK-NEXT:  1      5     1.00                        vpmullq	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  2      11    1.00    *                   vpmullq	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  1      5     1.00                        vpmullq	%xmm16, %xmm17, %xmm19 {%k1}
@@ -353,7 +405,7 @@ vxorps            (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]
-# CHECK-NEXT:  -      -     12.00  18.00   -     144.00 51.00  51.00
+# CHECK-NEXT:  -      -     12.00  42.00   -     144.00 59.00  59.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
@@ -465,6 +517,30 @@ vxorps            (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vorps	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vorps	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vorps	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclasspd	$171, %xmm16, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspdx	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspd	$171, (%rax){1to2}, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclasspd	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspdx	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspd	$171, (%rax){1to2}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclasspd	$171, %ymm16, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspdy	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspd	$171, (%rax){1to4}, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclasspd	$171, %ymm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspdy	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspd	$171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclassps	$171, %xmm16, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspsx	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclassps	$171, (%rax){1to4}, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclassps	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspsx	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclassps	$171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclassps	$171, %ymm16, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspsy	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclassps	$171, (%rax){1to8}, %k1
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vfpclassps	$171, %ymm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclasspsy	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vfpclassps	$171, (%rax){1to8}, %k1 {%k2}
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpmullq	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpmullq	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpmullq	%xmm16, %xmm17, %xmm19 {%k1}

diff  --git a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512vl.s b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512vl.s
index 6d43b8c54b40..2ba7bb5c674e 100644
--- a/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512vl.s
+++ b/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512vl.s
@@ -41,6 +41,34 @@ vaddps            %ymm16, %ymm17, %ymm19 {z}{k1}
 vaddps            (%rax), %ymm17, %ymm19 {z}{k1}
 vaddps            (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 
+vcmppd            $0, %xmm0, %xmm1, %k2
+vcmppd            $0, (%rax), %xmm1, %k2
+vcmppd            $0, (%rax){1to2}, %xmm1, %k2
+vcmppd            $0, %xmm0, %xmm1, %k2 {k3}
+vcmppd            $0, (%rax), %xmm1, %k2 {k3}
+vcmppd            $0, (%rax){1to2}, %xmm1, %k2 {k3}
+
+vcmppd            $0, %ymm0, %ymm1, %k2
+vcmppd            $0, (%rax), %ymm1, %k2
+vcmppd            $0, (%rax){1to4}, %ymm1, %k2
+vcmppd            $0, %ymm0, %ymm1, %k2 {k3}
+vcmppd            $0, (%rax), %ymm1, %k2 {k3}
+vcmppd            $0, (%rax){1to4}, %ymm1, %k2 {k3}
+
+vcmpps            $0, %xmm0, %xmm1, %k2
+vcmpps            $0, (%rax), %xmm1, %k2
+vcmpps            $0, (%rax){1to4}, %xmm1, %k2
+vcmpps            $0, %xmm0, %xmm1, %k2 {k3}
+vcmpps            $0, (%rax), %xmm1, %k2 {k3}
+vcmpps            $0, (%rax){1to4}, %xmm1, %k2 {k3}
+
+vcmpps            $0, %ymm0, %ymm1, %k2
+vcmpps            $0, (%rax), %ymm1, %k2
+vcmpps            $0, (%rax){1to8}, %ymm1, %k2
+vcmpps            $0, %ymm0, %ymm1, %k2 {k3}
+vcmpps            $0, (%rax), %ymm1, %k2 {k3}
+vcmpps            $0, (%rax){1to8}, %ymm1, %k2 {k3}
+
 vcvtdq2pd         %xmm16, %xmm19
 vcvtdq2pd         (%rax), %xmm19
 vcvtdq2pd         (%rax){1to2}, %xmm19
@@ -291,6 +319,118 @@ vpaddq            %ymm16, %ymm17, %ymm19 {z}{k1}
 vpaddq            (%rax), %ymm17, %ymm19 {z}{k1}
 vpaddq            (%rax){1to4}, %ymm17, %ymm19 {z}{k1}
 
+vpcmpd            $0, %xmm0, %xmm1, %k2
+vpcmpd            $0, (%rax), %xmm1, %k2
+vpcmpd            $0, (%rax){1to4}, %xmm1, %k2
+vpcmpd            $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpd            $0, (%rax), %xmm1, %k2 {k3}
+vpcmpd            $0, (%rax){1to4}, %xmm1, %k2 {k3}
+
+vpcmpd            $0, %ymm0, %ymm1, %k2
+vpcmpd            $0, (%rax), %ymm1, %k2
+vpcmpd            $0, (%rax){1to8}, %ymm1, %k2
+vpcmpd            $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpd            $0, (%rax), %ymm1, %k2 {k3}
+vpcmpd            $0, (%rax){1to8}, %ymm1, %k2 {k3}
+
+vpcmpeqd          %xmm0, %xmm1, %k2
+vpcmpeqd          (%rax), %xmm1, %k2
+vpcmpeqd          (%rax){1to4}, %xmm1, %k2
+vpcmpeqd          %xmm0, %xmm1, %k2 {k3}
+vpcmpeqd          (%rax), %xmm1, %k2 {k3}
+vpcmpeqd          (%rax){1to4}, %xmm1, %k2 {k3}
+
+vpcmpeqd          %ymm0, %ymm1, %k2
+vpcmpeqd          (%rax), %ymm1, %k2
+vpcmpeqd          (%rax){1to8}, %ymm1, %k2
+vpcmpeqd          %ymm0, %ymm1, %k2 {k3}
+vpcmpeqd          (%rax), %ymm1, %k2 {k3}
+vpcmpeqd          (%rax){1to8}, %ymm1, %k2 {k3}
+
+vpcmpeqq          %xmm0, %xmm1, %k2
+vpcmpeqq          (%rax), %xmm1, %k2
+vpcmpeqq          (%rax){1to2}, %xmm1, %k2
+vpcmpeqq          %xmm0, %xmm1, %k2 {k3}
+vpcmpeqq          (%rax), %xmm1, %k2 {k3}
+vpcmpeqq          (%rax){1to2}, %xmm1, %k2 {k3}
+
+vpcmpeqq          %ymm0, %ymm1, %k2
+vpcmpeqq          (%rax), %ymm1, %k2
+vpcmpeqq          (%rax){1to4}, %ymm1, %k2
+vpcmpeqq          %ymm0, %ymm1, %k2 {k3}
+vpcmpeqq          (%rax), %ymm1, %k2 {k3}
+vpcmpeqq          (%rax){1to4}, %ymm1, %k2 {k3}
+
+vpcmpgtd          %xmm0, %xmm1, %k2
+vpcmpgtd          (%rax), %xmm1, %k2
+vpcmpgtd          (%rax){1to4}, %xmm1, %k2
+vpcmpgtd          %xmm0, %xmm1, %k2 {k3}
+vpcmpgtd          (%rax), %xmm1, %k2 {k3}
+vpcmpgtd          (%rax){1to4}, %xmm1, %k2 {k3}
+
+vpcmpgtd          %ymm0, %ymm1, %k2
+vpcmpgtd          (%rax), %ymm1, %k2
+vpcmpgtd          (%rax){1to8}, %ymm1, %k2
+vpcmpgtd          %ymm0, %ymm1, %k2 {k3}
+vpcmpgtd          (%rax), %ymm1, %k2 {k3}
+vpcmpgtd          (%rax){1to8}, %ymm1, %k2 {k3}
+
+vpcmpgtq          %xmm0, %xmm1, %k2
+vpcmpgtq          (%rax), %xmm1, %k2
+vpcmpgtq          (%rax){1to2}, %xmm1, %k2
+vpcmpgtq          %xmm0, %xmm1, %k2 {k3}
+vpcmpgtq          (%rax), %xmm1, %k2 {k3}
+vpcmpgtq          (%rax){1to2}, %xmm1, %k2 {k3}
+
+vpcmpgtq          %ymm0, %ymm1, %k2
+vpcmpgtq          (%rax), %ymm1, %k2
+vpcmpgtq          (%rax){1to4}, %ymm1, %k2
+vpcmpgtq          %ymm0, %ymm1, %k2 {k3}
+vpcmpgtq          (%rax), %ymm1, %k2 {k3}
+vpcmpgtq          (%rax){1to4}, %ymm1, %k2 {k3}
+
+vpcmpq            $0, %xmm0, %xmm1, %k2
+vpcmpq            $0, (%rax), %xmm1, %k2
+vpcmpq            $0, (%rax){1to2}, %xmm1, %k2
+vpcmpq            $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpq            $0, (%rax), %xmm1, %k2 {k3}
+vpcmpq            $0, (%rax){1to2}, %xmm1, %k2 {k3}
+
+vpcmpq            $0, %ymm0, %ymm1, %k2
+vpcmpq            $0, (%rax), %ymm1, %k2
+vpcmpq            $0, (%rax){1to4}, %ymm1, %k2
+vpcmpq            $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpq            $0, (%rax), %ymm1, %k2 {k3}
+vpcmpq            $0, (%rax){1to4}, %ymm1, %k2 {k3}
+
+vpcmpud           $0, %xmm0, %xmm1, %k2
+vpcmpud           $0, (%rax), %xmm1, %k2
+vpcmpud           $0, (%rax){1to4}, %xmm1, %k2
+vpcmpud           $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpud           $0, (%rax), %xmm1, %k2 {k3}
+vpcmpud           $0, (%rax){1to4}, %xmm1, %k2 {k3}
+
+vpcmpud           $0, %ymm0, %ymm1, %k2
+vpcmpud           $0, (%rax), %ymm1, %k2
+vpcmpud           $0, (%rax){1to8}, %ymm1, %k2
+vpcmpud           $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpud           $0, (%rax), %ymm1, %k2 {k3}
+vpcmpud           $0, (%rax){1to8}, %ymm1, %k2 {k3}
+
+vpcmpuq           $0, %xmm0, %xmm1, %k2
+vpcmpuq           $0, (%rax), %xmm1, %k2
+vpcmpuq           $0, (%rax){1to2}, %xmm1, %k2
+vpcmpuq           $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpuq           $0, (%rax), %xmm1, %k2 {k3}
+vpcmpuq           $0, (%rax){1to2}, %xmm1, %k2 {k3}
+
+vpcmpuq           $0, %ymm0, %ymm1, %k2
+vpcmpuq           $0, (%rax), %ymm1, %k2
+vpcmpuq           $0, (%rax){1to4}, %ymm1, %k2
+vpcmpuq           $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpuq           $0, (%rax), %ymm1, %k2 {k3}
+vpcmpuq           $0, (%rax){1to4}, %ymm1, %k2 {k3}
+
 vpermd            %ymm16, %ymm17, %ymm19
 vpermd            (%rax), %ymm17, %ymm19
 vpermd            (%rax){1to8}, %ymm17, %ymm19
@@ -521,6 +661,62 @@ vpsubq            %ymm16, %ymm17, %ymm19 {z}{k1}
 vpsubq            (%rax), %ymm17, %ymm19 {z}{k1}
 vpsubq            (%rax){1to4}, %ymm17, %ymm19 {z}{k1}
 
+vptestmd          %xmm0, %xmm1, %k2
+vptestmd          (%rax), %xmm1, %k2
+vptestmd          (%rax){1to4}, %xmm1, %k2
+vptestmd          %xmm0, %xmm1, %k2 {k3}
+vptestmd          (%rax), %xmm1, %k2 {k3}
+vptestmd          (%rax){1to4}, %xmm1, %k2 {k3}
+
+vptestmd          %ymm0, %ymm1, %k2
+vptestmd          (%rax), %ymm1, %k2
+vptestmd          (%rax){1to8}, %ymm1, %k2
+vptestmd          %ymm0, %ymm1, %k2 {k3}
+vptestmd          (%rax), %ymm1, %k2 {k3}
+vptestmd          (%rax){1to8}, %ymm1, %k2 {k3}
+
+vptestmq          %xmm0, %xmm1, %k2
+vptestmq          (%rax), %xmm1, %k2
+vptestmq          (%rax){1to2}, %xmm1, %k2
+vptestmq          %xmm0, %xmm1, %k2 {k3}
+vptestmq          (%rax), %xmm1, %k2 {k3}
+vptestmq          (%rax){1to2}, %xmm1, %k2 {k3}
+
+vptestmq          %ymm0, %ymm1, %k2
+vptestmq          (%rax), %ymm1, %k2
+vptestmq          (%rax){1to4}, %ymm1, %k2
+vptestmq          %ymm0, %ymm1, %k2 {k3}
+vptestmq          (%rax), %ymm1, %k2 {k3}
+vptestmq          (%rax){1to4}, %ymm1, %k2 {k3}
+
+vptestnmd         %xmm0, %xmm1, %k2
+vptestnmd         (%rax), %xmm1, %k2
+vptestnmd         (%rax){1to4}, %xmm1, %k2
+vptestnmd         %xmm0, %xmm1, %k2 {k3}
+vptestnmd         (%rax), %xmm1, %k2 {k3}
+vptestnmd         (%rax){1to4}, %xmm1, %k2 {k3}
+
+vptestnmd         %ymm0, %ymm1, %k2
+vptestnmd         (%rax), %ymm1, %k2
+vptestnmd         (%rax){1to8}, %ymm1, %k2
+vptestnmd         %ymm0, %ymm1, %k2 {k3}
+vptestnmd         (%rax), %ymm1, %k2 {k3}
+vptestnmd         (%rax){1to8}, %ymm1, %k2 {k3}
+
+vptestnmq         %xmm0, %xmm1, %k2
+vptestnmq         (%rax), %xmm1, %k2
+vptestnmq         (%rax){1to2}, %xmm1, %k2
+vptestnmq         %xmm0, %xmm1, %k2 {k3}
+vptestnmq         (%rax), %xmm1, %k2 {k3}
+vptestnmq         (%rax){1to2}, %xmm1, %k2 {k3}
+
+vptestnmq         %ymm0, %ymm1, %k2
+vptestnmq         (%rax), %ymm1, %k2
+vptestnmq         (%rax){1to4}, %ymm1, %k2
+vptestnmq         %ymm0, %ymm1, %k2 {k3}
+vptestnmq         (%rax), %ymm1, %k2 {k3}
+vptestnmq         (%rax){1to4}, %ymm1, %k2 {k3}
+
 vpunpckhdq        %xmm16, %xmm17, %xmm19
 vpunpckhdq        (%rax), %xmm17, %xmm19
 vpunpckhdq        (%rax){1to4}, %xmm17, %xmm19
@@ -806,6 +1002,30 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      3     1.00                        vaddps	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vaddps	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      10    1.00    *                   vaddps	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqpd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqpd	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqpd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqpd	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqps	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqps	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqps	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqps	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax){1to8}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  2      4     1.00                        vcvtdq2pd	%xmm16, %xmm19
 # CHECK-NEXT:  3      10    1.00    *                   vcvtdq2pd	(%rax), %xmm19
 # CHECK-NEXT:  3      10    1.00    *                   vcvtdq2pd	(%rax){1to2}, %xmm19
@@ -1030,6 +1250,102 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.50                        vpaddq	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpgtq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpeqq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpeqq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vpcmpequq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.50                        vpcmpequq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.50                        vpcmpequq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpequq	(%rax){1to4}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  1      1     1.00                        vpermd	%ymm16, %ymm17, %ymm19
 # CHECK-NEXT:  2      8     1.00    *                   vpermd	(%rax), %ymm17, %ymm19
 # CHECK-NEXT:  2      8     1.00    *                   vpermd	(%rax){1to8}, %ymm17, %ymm19
@@ -1236,6 +1552,54 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.50                        vpsubq	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      1     0.33                        vptestmd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestmd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestmd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestmd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestmd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestmd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestmq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestmq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestmq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestmq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestmq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestmq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestmq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestmq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestmq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      7     0.50    *                   vptestnmq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      1     0.33                        vptestnmq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      1     0.33                        vptestnmq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      8     0.50    *                   vptestnmq	(%rax){1to4}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  1      1     0.50                        vpunpckhdq	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  2      7     0.50    *                   vpunpckhdq	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  2      7     0.50    *                   vpunpckhdq	(%rax){1to4}, %xmm17, %xmm19
@@ -1465,7 +1829,7 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]
-# CHECK-NEXT:  -     1935.00 180.00 229.50  -    346.50 230.00 230.00
+# CHECK-NEXT:  -     1935.00 196.00 317.50  -    410.50 286.00 286.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
@@ -1505,6 +1869,30 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vaddps	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vaddps	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vaddps	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqpd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqpd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqpd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqpd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqpd	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqps	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqps	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqps	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     vcmpeqps	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     1.00    -      -     0.50   0.50   vcmpeqps	(%rax){1to8}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -     1.00    -     1.00    -      -     vcvtdq2pd	%xmm16, %xmm19
 # CHECK-NEXT:  -      -      -     1.00    -     1.00   0.50   0.50   vcvtdq2pd	(%rax), %xmm19
 # CHECK-NEXT:  -      -      -     1.00    -     1.00   0.50   0.50   vcvtdq2pd	(%rax){1to2}, %xmm19
@@ -1729,6 +2117,102 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpaddq	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpaddq	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpaddq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpgtq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpgtq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpeqq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpeqq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpcmpequq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpcmpequq	(%rax){1to4}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpermd	%ymm16, %ymm17, %ymm19
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpermd	(%rax), %ymm17, %ymm19
 # CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpermd	(%rax){1to8}, %ymm17, %ymm19
@@ -1935,6 +2419,54 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpsubq	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpsubq	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpsubq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestmq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestmq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     vptestnmq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   vptestnmq	(%rax){1to4}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -     0.50    -     0.50    -      -     vpunpckhdq	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpunpckhdq	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -     0.50    -     0.50   0.50   0.50   vpunpckhdq	(%rax){1to4}, %xmm17, %xmm19

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 e99030b7d439..c18ed71b15a5 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s
@@ -1,6 +1,15 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake-avx512 -instruction-tables < %s | FileCheck %s
 
+kandw             %k0, %k1, %k2
+kandnw            %k0, %k1, %k2
+korw              %k0, %k1, %k2
+kxnorw            %k0, %k1, %k2
+kxorw             %k0, %k1, %k2
+kshiftlw          $2, %k1, %k2
+kshiftrw          $2, %k1, %k2
+kunpckbw          %k0, %k1, %k2
+
 vaddpd            %zmm16, %zmm17, %zmm19
 vaddpd            (%rax), %zmm17, %zmm19
 vaddpd            (%rax){1to8}, %zmm17, %zmm19
@@ -21,6 +30,33 @@ vaddps            %zmm16, %zmm17, %zmm19 {z}{k1}
 vaddps            (%rax), %zmm17, %zmm19 {z}{k1}
 vaddps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
+vcmppd            $0, %zmm0, %zmm1, %k2
+vcmppd            $0, (%rax), %zmm1, %k2
+vcmppd            $0, (%rax){1to8}, %zmm1, %k2
+vcmppd            $0, %zmm0, %zmm1, %k2 {k3}
+vcmppd            $0, (%rax), %zmm1, %k2 {k3}
+vcmppd            $0, (%rax){1to8}, %zmm1, %k2 {k3}
+
+vcmpps            $0, %zmm0, %zmm1, %k2
+vcmpps            $0, (%rax), %zmm1, %k2
+vcmpps            $0, (%rax){1to16}, %zmm1, %k2
+vcmpps            $0, %zmm0, %zmm1, %k2 {k3}
+vcmpps            $0, (%rax), %zmm1, %k2 {k3}
+vcmpps            $0, (%rax){1to16}, %zmm1, %k2 {k3}
+
+vcmpsd            $0, %xmm0, %xmm1, %k2
+vcmpsd            $0, (%rax), %xmm1, %k2
+vcmpsd            $0, %xmm0, %xmm1, %k2 {k3}
+vcmpsd            $0, (%rax), %xmm1, %k2 {k3}
+
+vcmpss            $0, %xmm0, %xmm1, %k2
+vcmpss            $0, (%rax), %xmm1, %k2
+vcmpss            $0, %xmm0, %xmm1, %k2 {k3}
+vcmpss            $0, (%rax), %xmm1, %k2 {k3}
+
+vcomiss           %xmm16, %xmm17
+vcomiss           (%rax), %xmm17
+
 vcvtdq2pd         %ymm16, %zmm19
 vcvtdq2pd         (%rax), %zmm19
 vcvtdq2pd         (%rax){1to8}, %zmm19
@@ -186,6 +222,62 @@ vpaddq            %zmm16, %zmm17, %zmm19 {z}{k1}
 vpaddq            (%rax), %zmm17, %zmm19 {z}{k1}
 vpaddq            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
 
+vpcmpd            $0, %zmm0, %zmm1, %k2
+vpcmpd            $0, (%rax), %zmm1, %k2
+vpcmpd            $0, (%rax){1to16}, %zmm1, %k2
+vpcmpd            $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpd            $0, (%rax), %zmm1, %k2 {k3}
+vpcmpd            $0, (%rax){1to16}, %zmm1, %k2 {k3}
+
+vpcmpeqd          %zmm0, %zmm1, %k2
+vpcmpeqd          (%rax), %zmm1, %k2
+vpcmpeqd          (%rax){1to16}, %zmm1, %k2
+vpcmpeqd          %zmm0, %zmm1, %k2 {k3}
+vpcmpeqd          (%rax), %zmm1, %k2 {k3}
+vpcmpeqd          (%rax){1to16}, %zmm1, %k2 {k3}
+
+vpcmpeqq          %zmm0, %zmm1, %k2
+vpcmpeqq          (%rax), %zmm1, %k2
+vpcmpeqq          (%rax){1to8}, %zmm1, %k2
+vpcmpeqq          %zmm0, %zmm1, %k2 {k3}
+vpcmpeqq          (%rax), %zmm1, %k2 {k3}
+vpcmpeqq          (%rax){1to8}, %zmm1, %k2 {k3}
+
+vpcmpgtd          %zmm0, %zmm1, %k2
+vpcmpgtd          (%rax), %zmm1, %k2
+vpcmpgtd          (%rax){1to16}, %zmm1, %k2
+vpcmpgtd          %zmm0, %zmm1, %k2 {k3}
+vpcmpgtd          (%rax), %zmm1, %k2 {k3}
+vpcmpgtd          (%rax){1to16}, %zmm1, %k2 {k3}
+
+vpcmpgtq          %zmm0, %zmm1, %k2
+vpcmpgtq          (%rax), %zmm1, %k2
+vpcmpgtq          (%rax){1to8}, %zmm1, %k2
+vpcmpgtq          %zmm0, %zmm1, %k2 {k3}
+vpcmpgtq          (%rax), %zmm1, %k2 {k3}
+vpcmpgtq          (%rax){1to8}, %zmm1, %k2 {k3}
+
+vpcmpq            $0, %zmm0, %zmm1, %k2
+vpcmpq            $0, (%rax), %zmm1, %k2
+vpcmpq            $0, (%rax){1to8}, %zmm1, %k2
+vpcmpq            $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpq            $0, (%rax), %zmm1, %k2 {k3}
+vpcmpq            $0, (%rax){1to8}, %zmm1, %k2 {k3}
+
+vpcmpud           $0, %zmm0, %zmm1, %k2
+vpcmpud           $0, (%rax), %zmm1, %k2
+vpcmpud           $0, (%rax){1to16}, %zmm1, %k2
+vpcmpud           $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpud           $0, (%rax), %zmm1, %k2 {k3}
+vpcmpud           $0, (%rax){1to16}, %zmm1, %k2 {k3}
+
+vpcmpuq           $0, %zmm0, %zmm1, %k2
+vpcmpuq           $0, (%rax), %zmm1, %k2
+vpcmpuq           $0, (%rax){1to8}, %zmm1, %k2
+vpcmpuq           $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpuq           $0, (%rax), %zmm1, %k2 {k3}
+vpcmpuq           $0, (%rax){1to8}, %zmm1, %k2 {k3}
+
 vpgatherdq        (%rax,%ymm1,2), %zmm2 {k1}
 vpgatherdd        (%rax,%zmm1,2), %zmm2 {k1}
 vpgatherqq        (%rax,%zmm1,2), %zmm2 {k1}
@@ -465,6 +557,34 @@ vpsubq            %zmm16, %zmm17, %zmm19 {z}{k1}
 vpsubq            (%rax), %zmm17, %zmm19 {z}{k1}
 vpsubq            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
 
+vptestmd          %zmm0, %zmm1, %k2
+vptestmd          (%rax), %zmm1, %k2
+vptestmd          (%rax){1to16}, %zmm1, %k2
+vptestmd          %zmm0, %zmm1, %k2 {k3}
+vptestmd          (%rax), %zmm1, %k2 {k3}
+vptestmd          (%rax){1to16}, %zmm1, %k2 {k3}
+
+vptestmq          %zmm0, %zmm1, %k2
+vptestmq          (%rax), %zmm1, %k2
+vptestmq          (%rax){1to8}, %zmm1, %k2
+vptestmq          %zmm0, %zmm1, %k2 {k3}
+vptestmq          (%rax), %zmm1, %k2 {k3}
+vptestmq          (%rax){1to8}, %zmm1, %k2 {k3}
+
+vptestnmd         %zmm0, %zmm1, %k2
+vptestnmd         (%rax), %zmm1, %k2
+vptestnmd         (%rax){1to16}, %zmm1, %k2
+vptestnmd         %zmm0, %zmm1, %k2 {k3}
+vptestnmd         (%rax), %zmm1, %k2 {k3}
+vptestnmd         (%rax){1to16}, %zmm1, %k2 {k3}
+
+vptestnmq         %zmm0, %zmm1, %k2
+vptestnmq         (%rax), %zmm1, %k2
+vptestnmq         (%rax){1to8}, %zmm1, %k2
+vptestnmq         %zmm0, %zmm1, %k2 {k3}
+vptestnmq         (%rax), %zmm1, %k2 {k3}
+vptestnmq         (%rax){1to8}, %zmm1, %k2 {k3}
+
 vsubpd            %zmm16, %zmm17, %zmm19
 vsubpd            (%rax), %zmm17, %zmm19
 vsubpd            (%rax){1to8}, %zmm17, %zmm19
@@ -485,6 +605,9 @@ vsubps            %zmm16, %zmm17, %zmm19 {z}{k1}
 vsubps            (%rax), %zmm17, %zmm19 {z}{k1}
 vsubps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
+vucomiss          %xmm16, %xmm17
+vucomiss          (%rax), %xmm17
+
 vunpckhpd         %zmm16, %zmm17, %zmm19
 vunpckhpd         (%rax), %zmm17, %zmm19
 vunpckhpd         (%rax){1to8}, %zmm17, %zmm19
@@ -534,6 +657,14 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT: [6]: HasSideEffects (U)
 
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      1     1.00                        kandw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kandnw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        korw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kxnorw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kxorw	%k0, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kshiftlw	$2, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kshiftrw	$2, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kunpckbw	%k0, %k1, %k2
 # CHECK-NEXT:  1      4     0.50                        vaddpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vaddpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vaddpd	(%rax){1to8}, %zmm17, %zmm19
@@ -552,6 +683,28 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      4     0.50                        vaddps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqsd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqsd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqsd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqsd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqss	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqss	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqss	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqss	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      2     1.00                        vcomiss	%xmm16, %xmm17
+# CHECK-NEXT:  2      7     1.00    *                   vcomiss	(%rax), %xmm17
 # CHECK-NEXT:  2      7     1.00                        vcvtdq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtdq2pd	(%rax), %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vcvtdq2pd	(%rax){1to8}, %zmm19
@@ -700,6 +853,54 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.33                        vpaddq	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequq	(%rax){1to8}, %zmm1, %k2 {%k3}
 # CHECK-NEXT:  5      21    4.00    *                   vpgatherdq	(%rax,%ymm1,2), %zmm2 {%k1}
 # CHECK-NEXT:  5      25    8.00    *                   vpgatherdd	(%rax,%zmm1,2), %zmm2 {%k1}
 # CHECK-NEXT:  5      21    4.00    *                   vpgatherqq	(%rax,%zmm1,2), %zmm2 {%k1}
@@ -950,6 +1151,30 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.33                        vpsubq	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vptestmd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestmq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmq	(%rax){1to8}, %zmm1, %k2 {%k3}
 # CHECK-NEXT:  1      4     0.50                        vsubpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vsubpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      11    0.50    *                   vsubpd	(%rax){1to8}, %zmm17, %zmm19
@@ -968,6 +1193,8 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      4     0.50                        vsubps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vsubps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vsubps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      2     1.00                        vucomiss	%xmm16, %xmm17
+# CHECK-NEXT:  2      7     1.00    *                   vucomiss	(%rax), %xmm17
 # CHECK-NEXT:  1      1     1.00                        vunpckhpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1019,10 +1246,18 @@ 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 200.67 30.67  193.00 193.00  -     334.67 2.00    -
+# CHECK-NEXT:  -     612.00 209.67 30.67  224.00 224.00  -     429.67 2.00    -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandnw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     korw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxnorw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxorw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftlw	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftrw	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kunpckbw	%k0, %k1, %k2
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vaddpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1041,6 +1276,28 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vaddps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqpd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqpd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqps	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqps	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqsd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqsd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqsd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqsd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqss	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqss	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqss	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqss	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vcomiss	%xmm16, %xmm17
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vcomiss	(%rax), %xmm17
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     1.50    -      -     vcvtdq2pd	%ymm16, %zmm19
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax), %zmm19
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax){1to8}, %zmm19
@@ -1189,6 +1446,54 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddq	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax){1to8}, %zmm1, %k2 {%k3}
 # CHECK-NEXT:  -      -     1.58   0.58   4.00   4.00    -     0.58   0.25    -     vpgatherdq	(%rax,%ymm1,2), %zmm2 {%k1}
 # CHECK-NEXT:  -      -     1.58   0.58   8.00   8.00    -     0.58   0.25    -     vpgatherdd	(%rax,%zmm1,2), %zmm2 {%k1}
 # CHECK-NEXT:  -      -     1.58   0.58   4.00   4.00    -     0.58   0.25    -     vpgatherqq	(%rax,%zmm1,2), %zmm2 {%k1}
@@ -1439,6 +1744,30 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubq	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmd	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmd	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmq	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmq	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax){1to8}, %zmm1, %k2 {%k3}
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vsubpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubpd	(%rax){1to8}, %zmm17, %zmm19
@@ -1457,6 +1786,8 @@ vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vsubps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vucomiss	%xmm16, %xmm17
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vucomiss	(%rax), %xmm17
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpckhpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhpd	(%rax){1to8}, %zmm17, %zmm19

diff  --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s
index a73e63c846f7..048f0767a27f 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bw.s
@@ -1,6 +1,25 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake-avx512 -instruction-tables < %s | FileCheck %s
 
+kaddd             %k0, %k1, %k2
+kaddq             %k0, %k1, %k2
+kandd             %k0, %k1, %k2
+kandq             %k0, %k1, %k2
+kandnd            %k0, %k1, %k2
+kandnq            %k0, %k1, %k2
+kord              %k0, %k1, %k2
+korq              %k0, %k1, %k2
+kxnord            %k0, %k1, %k2
+kxnorq            %k0, %k1, %k2
+kxord             %k0, %k1, %k2
+kxorq             %k0, %k1, %k2
+kshiftld          $2, %k1, %k2
+kshiftlq          $2, %k1, %k2
+kshiftrd          $2, %k1, %k2
+kshiftrq          $2, %k1, %k2
+kunpckdq          %k0, %k1, %k2
+kunpckwd          %k0, %k1, %k2
+
 vpabsb            %zmm16, %zmm19
 vpabsb            (%rax), %zmm19
 vpabsb            %zmm16, %zmm19 {k1}
@@ -29,6 +48,46 @@ vpaddw            (%rax), %zmm17, %zmm19 {k1}
 vpaddw            %zmm16, %zmm17, %zmm19 {z}{k1}
 vpaddw            (%rax), %zmm17, %zmm19 {z}{k1}
 
+vpcmpb            $0, %zmm0, %zmm1, %k2
+vpcmpb            $0, (%rax), %zmm1, %k2
+vpcmpb            $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpb            $0, (%rax), %zmm1, %k2 {k3}
+
+vpcmpeqb          %zmm0, %zmm1, %k2
+vpcmpeqb          (%rax), %zmm1, %k2
+vpcmpeqb          %zmm0, %zmm1, %k2 {k3}
+vpcmpeqb          (%rax), %zmm1, %k2 {k3}
+
+vpcmpeqw          %zmm0, %zmm1, %k2
+vpcmpeqw          (%rax), %zmm1, %k2
+vpcmpeqw          %zmm0, %zmm1, %k2 {k3}
+vpcmpeqw          (%rax), %zmm1, %k2 {k3}
+
+vpcmpgtb          %zmm0, %zmm1, %k2
+vpcmpgtb          (%rax), %zmm1, %k2
+vpcmpgtb          %zmm0, %zmm1, %k2 {k3}
+vpcmpgtb          (%rax), %zmm1, %k2 {k3}
+
+vpcmpgtw          %zmm0, %zmm1, %k2
+vpcmpgtw          (%rax), %zmm1, %k2
+vpcmpgtw          %zmm0, %zmm1, %k2 {k3}
+vpcmpgtw          (%rax), %zmm1, %k2 {k3}
+
+vpcmpub           $0, %zmm0, %zmm1, %k2
+vpcmpub           $0, (%rax), %zmm1, %k2
+vpcmpub           $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpub           $0, (%rax), %zmm1, %k2 {k3}
+
+vpcmpuw           $0, %zmm0, %zmm1, %k2
+vpcmpuw           $0, (%rax), %zmm1, %k2
+vpcmpuw           $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpuw           $0, (%rax), %zmm1, %k2 {k3}
+
+vpcmpw            $0, %zmm0, %zmm1, %k2
+vpcmpw            $0, (%rax), %zmm1, %k2
+vpcmpw            $0, %zmm0, %zmm1, %k2 {k3}
+vpcmpw            $0, (%rax), %zmm1, %k2 {k3}
+
 vpermw            %zmm16, %zmm17, %zmm19
 vpermw            (%rax), %zmm17, %zmm19
 vpermw            %zmm16, %zmm17, %zmm19 {k1}
@@ -71,6 +130,26 @@ vpsubw            (%rax), %zmm17, %zmm19 {k1}
 vpsubw            %zmm16, %zmm17, %zmm19 {z}{k1}
 vpsubw            (%rax), %zmm17, %zmm19 {z}{k1}
 
+vptestmb          %zmm0, %zmm1, %k2
+vptestmb          (%rax), %zmm1, %k2
+vptestmb          %zmm0, %zmm1, %k2 {k3}
+vptestmb          (%rax), %zmm1, %k2 {k3}
+
+vptestmw          %zmm0, %zmm1, %k2
+vptestmw          (%rax), %zmm1, %k2
+vptestmw          %zmm0, %zmm1, %k2 {k3}
+vptestmw          (%rax), %zmm1, %k2 {k3}
+
+vptestnmb         %zmm0, %zmm1, %k2
+vptestnmb         (%rax), %zmm1, %k2
+vptestnmb         %zmm0, %zmm1, %k2 {k3}
+vptestnmb         (%rax), %zmm1, %k2 {k3}
+
+vptestnmw         %zmm0, %zmm1, %k2
+vptestnmw         (%rax), %zmm1, %k2
+vptestnmw         %zmm0, %zmm1, %k2 {k3}
+vptestnmw         (%rax), %zmm1, %k2 {k3}
+
 vpunpckhbw        %zmm16, %zmm17, %zmm19
 vpunpckhbw        (%rax), %zmm17, %zmm19
 vpunpckhbw        %zmm16, %zmm17, %zmm19 {k1}
@@ -108,6 +187,24 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT: [6]: HasSideEffects (U)
 
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      3     1.00                        kaddd	%k0, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kaddq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kandd	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kandq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kandnd	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kandnq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kord	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        korq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kxnord	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kxnorq	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kxord	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kxorq	%k0, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kshiftld	$2, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kshiftlq	$2, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kshiftrd	$2, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kshiftrq	$2, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kunpckdq	%k0, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kunpckwd	%k0, %k1, %k2
 # CHECK-NEXT:  1      1     1.00                        vpabsb	%zmm16, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vpabsb	(%rax), %zmm19
 # CHECK-NEXT:  1      1     1.00                        vpabsb	%zmm16, %zmm19 {%k1}
@@ -132,6 +229,38 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddw	(%rax), %zmm17, %zmm19 {%k1}
 # CHECK-NEXT:  1      1     0.33                        vpaddw	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddw	(%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqw	(%rax), %zmm1, %k2 {%k3}
 # CHECK-NEXT:  2      6     2.00                        vpermw	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  3      13    2.00    *                   vpermw	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      6     2.00                        vpermw	%zmm16, %zmm17, %zmm19 {%k1}
@@ -168,6 +297,22 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubw	(%rax), %zmm17, %zmm19 {%k1}
 # CHECK-NEXT:  1      1     0.33                        vpsubw	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubw	(%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vptestmb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestmw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmw	(%rax), %zmm1, %k2 {%k3}
 # CHECK-NEXT:  1      1     1.00                        vpunpckhbw	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      8     1.00    *                   vpunpckhbw	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  1      1     1.00                        vpunpckhbw	%zmm16, %zmm17, %zmm19 {%k1}
@@ -207,10 +352,28 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
-# CHECK-NEXT:  -      -     20.00  8.00   21.00  21.00   -     62.00   -      -
+# CHECK-NEXT:  -      -     30.00  8.00   33.00  33.00   -     118.00  -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kaddd	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kaddq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandd	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandnd	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandnq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kord	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     korq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxnord	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxnorq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxord	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxorq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftld	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftlq	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftrd	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftrq	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kunpckdq	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kunpckwd	%k0, %k1, %k2
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vpabsb	%zmm16, %zmm19
 # CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsb	(%rax), %zmm19
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vpabsb	%zmm16, %zmm19 {%k1}
@@ -235,6 +398,38 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddw	(%rax), %zmm17, %zmm19 {%k1}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddw	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddw	(%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %zmm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -     vpermw	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     vpermw	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -     vpermw	%zmm16, %zmm17, %zmm19 {%k1}
@@ -271,6 +466,22 @@ vpunpcklwd        (%rax), %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubw	(%rax), %zmm17, %zmm19 {%k1}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubw	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubw	(%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmw	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmb	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmb	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmb	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmb	(%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmw	%zmm0, %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmw	(%rax), %zmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmw	%zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmw	(%rax), %zmm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhbw	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhbw	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhbw	%zmm16, %zmm17, %zmm19 {%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 2939f1cbe496..be35aae60ba3 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512bwvl.s
@@ -57,6 +57,86 @@ vpaddw            (%rax), %ymm17, %ymm19 {k1}
 vpaddw            %ymm16, %ymm17, %ymm19 {z}{k1}
 vpaddw            (%rax), %ymm17, %ymm19 {z}{k1}
 
+vpcmpb            $0, %xmm0, %xmm1, %k2
+vpcmpb            $0, (%rax), %xmm1, %k2
+vpcmpb            $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpb            $0, (%rax), %xmm1, %k2 {k3}
+
+vpcmpb            $0, %ymm0, %ymm1, %k2
+vpcmpb            $0, (%rax), %ymm1, %k2
+vpcmpb            $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpb            $0, (%rax), %ymm1, %k2 {k3}
+
+vpcmpeqb          %xmm0, %xmm1, %k2
+vpcmpeqb          (%rax), %xmm1, %k2
+vpcmpeqb          %xmm0, %xmm1, %k2 {k3}
+vpcmpeqb          (%rax), %xmm1, %k2 {k3}
+
+vpcmpeqb          %ymm0, %ymm1, %k2
+vpcmpeqb          (%rax), %ymm1, %k2
+vpcmpeqb          %ymm0, %ymm1, %k2 {k3}
+vpcmpeqb          (%rax), %ymm1, %k2 {k3}
+
+vpcmpeqw          %xmm0, %xmm1, %k2
+vpcmpeqw          (%rax), %xmm1, %k2
+vpcmpeqw          %xmm0, %xmm1, %k2 {k3}
+vpcmpeqw          (%rax), %xmm1, %k2 {k3}
+
+vpcmpeqw          %ymm0, %ymm1, %k2
+vpcmpeqw          (%rax), %ymm1, %k2
+vpcmpeqw          %ymm0, %ymm1, %k2 {k3}
+vpcmpeqw          (%rax), %ymm1, %k2 {k3}
+
+vpcmpgtb          %xmm0, %xmm1, %k2
+vpcmpgtb          (%rax), %xmm1, %k2
+vpcmpgtb          %xmm0, %xmm1, %k2 {k3}
+vpcmpgtb          (%rax), %xmm1, %k2 {k3}
+
+vpcmpgtb          %ymm0, %ymm1, %k2
+vpcmpgtb          (%rax), %ymm1, %k2
+vpcmpgtb          %ymm0, %ymm1, %k2 {k3}
+vpcmpgtb          (%rax), %ymm1, %k2 {k3}
+
+vpcmpgtw          %xmm0, %xmm1, %k2
+vpcmpgtw          (%rax), %xmm1, %k2
+vpcmpgtw          %xmm0, %xmm1, %k2 {k3}
+vpcmpgtw          (%rax), %xmm1, %k2 {k3}
+
+vpcmpgtw          %ymm0, %ymm1, %k2
+vpcmpgtw          (%rax), %ymm1, %k2
+vpcmpgtw          %ymm0, %ymm1, %k2 {k3}
+vpcmpgtw          (%rax), %ymm1, %k2 {k3}
+
+vpcmpub           $0, %xmm0, %xmm1, %k2
+vpcmpub           $0, (%rax), %xmm1, %k2
+vpcmpub           $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpub           $0, (%rax), %xmm1, %k2 {k3}
+
+vpcmpub           $0, %ymm0, %ymm1, %k2
+vpcmpub           $0, (%rax), %ymm1, %k2
+vpcmpub           $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpub           $0, (%rax), %ymm1, %k2 {k3}
+
+vpcmpuw           $0, %xmm0, %xmm1, %k2
+vpcmpuw           $0, (%rax), %xmm1, %k2
+vpcmpuw           $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpuw           $0, (%rax), %xmm1, %k2 {k3}
+
+vpcmpuw           $0, %ymm0, %ymm1, %k2
+vpcmpuw           $0, (%rax), %ymm1, %k2
+vpcmpuw           $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpuw           $0, (%rax), %ymm1, %k2 {k3}
+
+vpcmpw            $0, %xmm0, %xmm1, %k2
+vpcmpw            $0, (%rax), %xmm1, %k2
+vpcmpw            $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpw            $0, (%rax), %xmm1, %k2 {k3}
+
+vpcmpw            $0, %ymm0, %ymm1, %k2
+vpcmpw            $0, (%rax), %ymm1, %k2
+vpcmpw            $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpw            $0, (%rax), %ymm1, %k2 {k3}
+
 vpermw            %xmm16, %xmm17, %xmm19
 vpermw            (%rax), %xmm17, %xmm19
 vpermw            %xmm16, %xmm17, %xmm19 {k1}
@@ -127,6 +207,46 @@ vpsubw            (%rax), %ymm17, %ymm19 {k1}
 vpsubw            %ymm16, %ymm17, %ymm19 {z}{k1}
 vpsubw            (%rax), %ymm17, %ymm19 {z}{k1}
 
+vptestmb          %xmm0, %xmm1, %k2
+vptestmb          (%rax), %xmm1, %k2
+vptestmb          %xmm0, %xmm1, %k2 {k3}
+vptestmb          (%rax), %xmm1, %k2 {k3}
+
+vptestmb          %ymm0, %ymm1, %k2
+vptestmb          (%rax), %ymm1, %k2
+vptestmb          %ymm0, %ymm1, %k2 {k3}
+vptestmb          (%rax), %ymm1, %k2 {k3}
+
+vptestmw          %xmm0, %xmm1, %k2
+vptestmw          (%rax), %xmm1, %k2
+vptestmw          %xmm0, %xmm1, %k2 {k3}
+vptestmw          (%rax), %xmm1, %k2 {k3}
+
+vptestmw          %ymm0, %ymm1, %k2
+vptestmw          (%rax), %ymm1, %k2
+vptestmw          %ymm0, %ymm1, %k2 {k3}
+vptestmw          (%rax), %ymm1, %k2 {k3}
+
+vptestnmb         %xmm0, %xmm1, %k2
+vptestnmb         (%rax), %xmm1, %k2
+vptestnmb         %xmm0, %xmm1, %k2 {k3}
+vptestnmb         (%rax), %xmm1, %k2 {k3}
+
+vptestnmb         %ymm0, %ymm1, %k2
+vptestnmb         (%rax), %ymm1, %k2
+vptestnmb         %ymm0, %ymm1, %k2 {k3}
+vptestnmb         (%rax), %ymm1, %k2 {k3}
+
+vptestnmw         %xmm0, %xmm1, %k2
+vptestnmw         (%rax), %xmm1, %k2
+vptestnmw         %xmm0, %xmm1, %k2 {k3}
+vptestnmw         (%rax), %xmm1, %k2 {k3}
+
+vptestnmw         %ymm0, %ymm1, %k2
+vptestnmw         (%rax), %ymm1, %k2
+vptestnmw         %ymm0, %ymm1, %k2 {k3}
+vptestnmw         (%rax), %ymm1, %k2 {k3}
+
 vpunpckhbw         %xmm16, %xmm17, %xmm19
 vpunpckhbw         (%rax), %xmm17, %xmm19
 vpunpckhbw         %xmm16, %xmm17, %xmm19 {k1}
@@ -240,6 +360,70 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddw	(%rax), %ymm17, %ymm19 {%k1}
 # CHECK-NEXT:  1      1     0.33                        vpaddw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddw	(%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqw	(%rax), %ymm1, %k2 {%k3}
 # CHECK-NEXT:  2      6     2.00                        vpermw	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  3      12    2.00    *                   vpermw	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  2      6     2.00                        vpermw	%xmm16, %xmm17, %xmm19 {%k1}
@@ -300,6 +484,38 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubw	(%rax), %ymm17, %ymm19 {%k1}
 # CHECK-NEXT:  1      1     0.33                        vpsubw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubw	(%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vptestmb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestmb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestmb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestmb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestmw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestmw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestmw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestmw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmw	(%rax), %ymm1, %k2 {%k3}
 # CHECK-NEXT:  1      1     1.00                        vpunpckhbw	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  2      7     1.00    *                   vpunpckhbw	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  1      1     1.00                        vpunpckhbw	%xmm16, %xmm17, %xmm19 {%k1}
@@ -363,7 +579,7 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
-# CHECK-NEXT:  -      -     28.00  28.00  39.00  39.00   -     112.00  -      -
+# CHECK-NEXT:  -      -     28.00  28.00  63.00  63.00   -     208.00  -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -415,6 +631,70 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddw	(%rax), %ymm17, %ymm19 {%k1}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddw	(%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqw	(%rax), %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -     vpermw	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     vpermw	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -     vpermw	%xmm16, %xmm17, %xmm19 {%k1}
@@ -475,6 +755,38 @@ vpunpcklwd         (%rax), %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubw	(%rax), %ymm17, %ymm19 {%k1}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubw	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubw	(%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmw	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmb	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmb	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmb	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmb	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmb	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmb	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmb	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmb	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmw	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmw	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmw	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmw	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmw	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmw	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmw	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmw	(%rax), %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhbw	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhbw	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhbw	%xmm16, %xmm17, %xmm19 {%k1}

diff  --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s
index 1612ede05fb5..8bbc0777e0cb 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s
@@ -1,6 +1,16 @@
 # NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
 # RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake-avx512 -instruction-tables < %s | FileCheck %s
 
+kaddb             %k0, %k1, %k2
+kaddw             %k0, %k1, %k2
+kandb             %k0, %k1, %k2
+kandnb            %k0, %k1, %k2
+korb              %k0, %k1, %k2
+kxnorb            %k0, %k1, %k2
+kxorb             %k0, %k1, %k2
+kshiftlb          $2, %k1, %k2
+kshiftrb          $2, %k1, %k2
+
 vandnpd           %zmm16, %zmm17, %zmm19
 vandnpd           (%rax), %zmm17, %zmm19
 vandnpd           (%rax){1to8}, %zmm17, %zmm19
@@ -81,6 +91,30 @@ vorps             %zmm16, %zmm17, %zmm19 {z}{k1}
 vorps             (%rax), %zmm17, %zmm19 {z}{k1}
 vorps             (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 
+vfpclasspd        $0xab, %zmm16, %k1
+vfpclasspdz       $0xab, (%rax), %k1
+vfpclasspdz       $0xab, (%rax){1to8}, %k1
+vfpclasspd        $0xab, %zmm16, %k1 {k2}
+vfpclasspdz       $0xab, (%rax), %k1 {k2}
+vfpclasspdz       $0xab, (%rax){1to8}, %k1 {k2}
+
+vfpclassps        $0xab, %zmm16, %k1
+vfpclasspsz       $0xab, (%rax), %k1
+vfpclasspsz       $0xab, (%rax){1to16}, %k1
+vfpclassps        $0xab, %zmm16, %k1 {k2}
+vfpclasspsz       $0xab, (%rax), %k1 {k2}
+vfpclasspsz       $0xab, (%rax){1to16}, %k1 {k2}
+
+vfpclasssd        $0xab, %xmm16, %k1
+vfpclasssd        $0xab, (%rax), %k1
+vfpclasssd        $0xab, %xmm16, %k1 {k2}
+vfpclasssd        $0xab, (%rax), %k1 {k2}
+
+vfpclassss        $0xab, %xmm16, %k1
+vfpclassss        $0xab, (%rax), %k1
+vfpclassss        $0xab, %xmm16, %k1 {k2}
+vfpclassss        $0xab, (%rax), %k1 {k2}
+
 vpmullq           %zmm16, %zmm17, %zmm19
 vpmullq           (%rax), %zmm17, %zmm19
 vpmullq           %zmm16, %zmm17, %zmm19 {k1}
@@ -117,6 +151,15 @@ vxorps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT: [6]: HasSideEffects (U)
 
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      3     1.00                        kaddb	%k0, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kaddw	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kandb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kandnb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        korb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kxnorb	%k0, %k1, %k2
+# CHECK-NEXT:  1      1     1.00                        kxorb	%k0, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kshiftlb	$2, %k1, %k2
+# CHECK-NEXT:  1      3     1.00                        kshiftrb	$2, %k1, %k2
 # CHECK-NEXT:  1      1     0.50                        vandnpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  2      8     0.50    *                   vandnpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  2      8     0.50    *                   vandnpd	(%rax){1to8}, %zmm17, %zmm19
@@ -189,6 +232,26 @@ vxorps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.50                        vorps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vorps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vorps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %zmm16, %k1
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspdz	$171, (%rax), %k1
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspd	$171, (%rax){1to8}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %zmm16, %k1 {%k2}
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspdz	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspd	$171, (%rax){1to8}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %zmm16, %k1
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspsz	$171, (%rax), %k1
+# CHECK-NEXT:  2      11    0.50    *                   vfpclassps	$171, (%rax){1to16}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %zmm16, %k1 {%k2}
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspsz	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      11    0.50    *                   vfpclassps	$171, (%rax){1to16}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclasssd	$171, %xmm16, %k1
+# CHECK-NEXT:  2      8     1.00    *                   vfpclasssd	$171, (%rax), %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclasssd	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  2      8     1.00    *                   vfpclasssd	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclassss	$171, %xmm16, %k1
+# CHECK-NEXT:  2      9     1.00    *                   vfpclassss	$171, (%rax), %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclassss	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  2      9     1.00    *                   vfpclassss	$171, (%rax), %k1 {%k2}
 # CHECK-NEXT:  3      12    1.50                        vpmullq	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  4      19    1.00    *                   vpmullq	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  3      12    1.50                        vpmullq	%zmm16, %zmm17, %zmm19 {%k1}
@@ -228,10 +291,19 @@ vxorps            (%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:  -      -     50.50  7.00   31.50  31.50   -     57.50   -      -
+# CHECK-NEXT:  -      -     59.50  7.00   37.50  37.50   -     77.50   -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kaddb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kaddw	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandnb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     korb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxnorb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxorb	%k0, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftlb	$2, %k1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftrb	$2, %k1, %k2
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vandnpd	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vandnpd	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vandnpd	(%rax){1to8}, %zmm17, %zmm19
@@ -304,6 +376,26 @@ vxorps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vorps	%zmm16, %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vorps	(%rax), %zmm17, %zmm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vorps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclasspd	$171, %zmm16, %k1
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vfpclasspdz	$171, (%rax), %k1
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vfpclasspd	$171, (%rax){1to8}, %k1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclasspd	$171, %zmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vfpclasspdz	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vfpclasspd	$171, (%rax){1to8}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclassps	$171, %zmm16, %k1
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vfpclasspsz	$171, (%rax), %k1
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vfpclassps	$171, (%rax){1to16}, %k1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclassps	$171, %zmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vfpclasspsz	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vfpclassps	$171, (%rax){1to16}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclasssd	$171, %xmm16, %k1
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vfpclasssd	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclasssd	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vfpclasssd	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclassss	$171, %xmm16, %k1
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vfpclassss	$171, (%rax), %k1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclassss	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vfpclassss	$171, (%rax), %k1 {%k2}
 # CHECK-NEXT:  -      -     1.50    -      -      -      -     1.50    -      -     vpmullq	%zmm16, %zmm17, %zmm19
 # CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -     1.00    -      -     vpmullq	(%rax), %zmm17, %zmm19
 # CHECK-NEXT:  -      -     1.50    -      -      -      -     1.50    -      -     vpmullq	%zmm16, %zmm17, %zmm19 {%k1}

diff  --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s
index f6b3cd63833e..8968d576b6fd 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s
@@ -121,6 +121,34 @@ vorps             %ymm16, %ymm17, %ymm19 {z}{k1}
 vorps             (%rax), %ymm17, %ymm19 {z}{k1}
 vorps             (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 
+vfpclasspd        $0xab, %xmm16, %k1
+vfpclasspdx       $0xab, (%rax), %k1
+vfpclasspdx       $0xab, (%rax){1to2}, %k1
+vfpclasspd        $0xab, %xmm16, %k1 {k2}
+vfpclasspdx       $0xab, (%rax), %k1 {k2}
+vfpclasspdx       $0xab, (%rax){1to2}, %k1 {k2}
+
+vfpclasspd        $0xab, %ymm16, %k1
+vfpclasspdy       $0xab, (%rax), %k1
+vfpclasspdy       $0xab, (%rax){1to4}, %k1
+vfpclasspd        $0xab, %ymm16, %k1 {k2}
+vfpclasspdy       $0xab, (%rax), %k1 {k2}
+vfpclasspdy       $0xab, (%rax){1to4}, %k1 {k2}
+
+vfpclassps        $0xab, %xmm16, %k1
+vfpclasspsx       $0xab, (%rax), %k1
+vfpclasspsx       $0xab, (%rax){1to4}, %k1
+vfpclassps        $0xab, %xmm16, %k1 {k2}
+vfpclasspsx       $0xab, (%rax), %k1 {k2}
+vfpclasspsx       $0xab, (%rax){1to4}, %k1 {k2}
+
+vfpclassps        $0xab, %ymm16, %k1
+vfpclasspsy       $0xab, (%rax), %k1
+vfpclasspsy       $0xab, (%rax){1to8}, %k1
+vfpclassps        $0xab, %ymm16, %k1 {k2}
+vfpclasspsy       $0xab, (%rax), %k1 {k2}
+vfpclasspsy       $0xab, (%rax){1to8}, %k1 {k2}
+
 vpmullq           %xmm16, %xmm17, %xmm19
 vpmullq           (%rax), %xmm17, %xmm19
 vpmullq           %xmm16, %xmm17, %xmm19 {k1}
@@ -292,6 +320,30 @@ vxorps            (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.33                        vorps	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vorps	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vorps	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %xmm16, %k1
+# CHECK-NEXT:  2      10    0.50    *                   vfpclasspdx	$171, (%rax), %k1
+# CHECK-NEXT:  2      10    0.50    *                   vfpclasspd	$171, (%rax){1to2}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  2      10    0.50    *                   vfpclasspdx	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      10    0.50    *                   vfpclasspd	$171, (%rax){1to2}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %ymm16, %k1
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspdy	$171, (%rax), %k1
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspd	$171, (%rax){1to4}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclasspd	$171, %ymm16, %k1 {%k2}
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspdy	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspd	$171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %xmm16, %k1
+# CHECK-NEXT:  2      10    0.50    *                   vfpclasspsx	$171, (%rax), %k1
+# CHECK-NEXT:  2      10    0.50    *                   vfpclassps	$171, (%rax){1to4}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  2      10    0.50    *                   vfpclasspsx	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      10    0.50    *                   vfpclassps	$171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %ymm16, %k1
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspsy	$171, (%rax), %k1
+# CHECK-NEXT:  2      11    0.50    *                   vfpclassps	$171, (%rax){1to8}, %k1
+# CHECK-NEXT:  1      3     1.00                        vfpclassps	$171, %ymm16, %k1 {%k2}
+# CHECK-NEXT:  2      11    0.50    *                   vfpclasspsy	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  2      11    0.50    *                   vfpclassps	$171, (%rax){1to8}, %k1 {%k2}
 # CHECK-NEXT:  3      12    1.50                        vpmullq	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  4      18    1.00    *                   vpmullq	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  3      12    1.50                        vpmullq	%xmm16, %xmm17, %xmm19 {%k1}
@@ -355,7 +407,7 @@ vxorps            (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
-# CHECK-NEXT:  -      -     64.00  64.00  51.00  51.00   -     52.00   -      -
+# CHECK-NEXT:  -      -     72.00  72.00  59.00  59.00   -     60.00   -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -467,6 +519,30 @@ vxorps            (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vorps	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vorps	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vorps	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclasspd	$171, %xmm16, %k1
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspdx	$171, (%rax), %k1
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspd	$171, (%rax){1to2}, %k1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclasspd	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspdx	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspd	$171, (%rax){1to2}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclasspd	$171, %ymm16, %k1
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspdy	$171, (%rax), %k1
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspd	$171, (%rax){1to4}, %k1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclasspd	$171, %ymm16, %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspdy	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspd	$171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclassps	$171, %xmm16, %k1
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspsx	$171, (%rax), %k1
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclassps	$171, (%rax){1to4}, %k1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclassps	$171, %xmm16, %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspsx	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclassps	$171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclassps	$171, %ymm16, %k1
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspsy	$171, (%rax), %k1
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclassps	$171, (%rax){1to8}, %k1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vfpclassps	$171, %ymm16, %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclasspsy	$171, (%rax), %k1 {%k2}
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vfpclassps	$171, (%rax){1to8}, %k1 {%k2}
 # CHECK-NEXT:  -      -     1.50   1.50    -      -      -      -      -      -     vpmullq	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -     1.00    -      -     vpmullq	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  -      -     1.50   1.50    -      -      -      -      -      -     vpmullq	%xmm16, %xmm17, %xmm19 {%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 4b8db4f0f4d4..b31524dbacb2 100644
--- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.s
+++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.s
@@ -41,6 +41,34 @@ vaddps            %ymm16, %ymm17, %ymm19 {z}{k1}
 vaddps            (%rax), %ymm17, %ymm19 {z}{k1}
 vaddps            (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 
+vcmppd            $0, %xmm0, %xmm1, %k2
+vcmppd            $0, (%rax), %xmm1, %k2
+vcmppd            $0, (%rax){1to2}, %xmm1, %k2
+vcmppd            $0, %xmm0, %xmm1, %k2 {k3}
+vcmppd            $0, (%rax), %xmm1, %k2 {k3}
+vcmppd            $0, (%rax){1to2}, %xmm1, %k2 {k3}
+
+vcmppd            $0, %ymm0, %ymm1, %k2
+vcmppd            $0, (%rax), %ymm1, %k2
+vcmppd            $0, (%rax){1to4}, %ymm1, %k2
+vcmppd            $0, %ymm0, %ymm1, %k2 {k3}
+vcmppd            $0, (%rax), %ymm1, %k2 {k3}
+vcmppd            $0, (%rax){1to4}, %ymm1, %k2 {k3}
+
+vcmpps            $0, %xmm0, %xmm1, %k2
+vcmpps            $0, (%rax), %xmm1, %k2
+vcmpps            $0, (%rax){1to4}, %xmm1, %k2
+vcmpps            $0, %xmm0, %xmm1, %k2 {k3}
+vcmpps            $0, (%rax), %xmm1, %k2 {k3}
+vcmpps            $0, (%rax){1to4}, %xmm1, %k2 {k3}
+
+vcmpps            $0, %ymm0, %ymm1, %k2
+vcmpps            $0, (%rax), %ymm1, %k2
+vcmpps            $0, (%rax){1to8}, %ymm1, %k2
+vcmpps            $0, %ymm0, %ymm1, %k2 {k3}
+vcmpps            $0, (%rax), %ymm1, %k2 {k3}
+vcmpps            $0, (%rax){1to8}, %ymm1, %k2 {k3}
+
 vcvtdq2pd         %xmm16, %xmm19
 vcvtdq2pd         (%rax), %xmm19
 vcvtdq2pd         (%rax){1to2}, %xmm19
@@ -291,6 +319,118 @@ vpaddq            %ymm16, %ymm17, %ymm19 {z}{k1}
 vpaddq            (%rax), %ymm17, %ymm19 {z}{k1}
 vpaddq            (%rax){1to4}, %ymm17, %ymm19 {z}{k1}
 
+vpcmpd            $0, %xmm0, %xmm1, %k2
+vpcmpd            $0, (%rax), %xmm1, %k2
+vpcmpd            $0, (%rax){1to4}, %xmm1, %k2
+vpcmpd            $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpd            $0, (%rax), %xmm1, %k2 {k3}
+vpcmpd            $0, (%rax){1to4}, %xmm1, %k2 {k3}
+
+vpcmpd            $0, %ymm0, %ymm1, %k2
+vpcmpd            $0, (%rax), %ymm1, %k2
+vpcmpd            $0, (%rax){1to8}, %ymm1, %k2
+vpcmpd            $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpd            $0, (%rax), %ymm1, %k2 {k3}
+vpcmpd            $0, (%rax){1to8}, %ymm1, %k2 {k3}
+
+vpcmpeqd          %xmm0, %xmm1, %k2
+vpcmpeqd          (%rax), %xmm1, %k2
+vpcmpeqd          (%rax){1to4}, %xmm1, %k2
+vpcmpeqd          %xmm0, %xmm1, %k2 {k3}
+vpcmpeqd          (%rax), %xmm1, %k2 {k3}
+vpcmpeqd          (%rax){1to4}, %xmm1, %k2 {k3}
+
+vpcmpeqd          %ymm0, %ymm1, %k2
+vpcmpeqd          (%rax), %ymm1, %k2
+vpcmpeqd          (%rax){1to8}, %ymm1, %k2
+vpcmpeqd          %ymm0, %ymm1, %k2 {k3}
+vpcmpeqd          (%rax), %ymm1, %k2 {k3}
+vpcmpeqd          (%rax){1to8}, %ymm1, %k2 {k3}
+
+vpcmpeqq          %xmm0, %xmm1, %k2
+vpcmpeqq          (%rax), %xmm1, %k2
+vpcmpeqq          (%rax){1to2}, %xmm1, %k2
+vpcmpeqq          %xmm0, %xmm1, %k2 {k3}
+vpcmpeqq          (%rax), %xmm1, %k2 {k3}
+vpcmpeqq          (%rax){1to2}, %xmm1, %k2 {k3}
+
+vpcmpeqq          %ymm0, %ymm1, %k2
+vpcmpeqq          (%rax), %ymm1, %k2
+vpcmpeqq          (%rax){1to4}, %ymm1, %k2
+vpcmpeqq          %ymm0, %ymm1, %k2 {k3}
+vpcmpeqq          (%rax), %ymm1, %k2 {k3}
+vpcmpeqq          (%rax){1to4}, %ymm1, %k2 {k3}
+
+vpcmpgtd          %xmm0, %xmm1, %k2
+vpcmpgtd          (%rax), %xmm1, %k2
+vpcmpgtd          (%rax){1to4}, %xmm1, %k2
+vpcmpgtd          %xmm0, %xmm1, %k2 {k3}
+vpcmpgtd          (%rax), %xmm1, %k2 {k3}
+vpcmpgtd          (%rax){1to4}, %xmm1, %k2 {k3}
+
+vpcmpgtd          %ymm0, %ymm1, %k2
+vpcmpgtd          (%rax), %ymm1, %k2
+vpcmpgtd          (%rax){1to8}, %ymm1, %k2
+vpcmpgtd          %ymm0, %ymm1, %k2 {k3}
+vpcmpgtd          (%rax), %ymm1, %k2 {k3}
+vpcmpgtd          (%rax){1to8}, %ymm1, %k2 {k3}
+
+vpcmpgtq          %xmm0, %xmm1, %k2
+vpcmpgtq          (%rax), %xmm1, %k2
+vpcmpgtq          (%rax){1to2}, %xmm1, %k2
+vpcmpgtq          %xmm0, %xmm1, %k2 {k3}
+vpcmpgtq          (%rax), %xmm1, %k2 {k3}
+vpcmpgtq          (%rax){1to2}, %xmm1, %k2 {k3}
+
+vpcmpgtq          %ymm0, %ymm1, %k2
+vpcmpgtq          (%rax), %ymm1, %k2
+vpcmpgtq          (%rax){1to4}, %ymm1, %k2
+vpcmpgtq          %ymm0, %ymm1, %k2 {k3}
+vpcmpgtq          (%rax), %ymm1, %k2 {k3}
+vpcmpgtq          (%rax){1to4}, %ymm1, %k2 {k3}
+
+vpcmpq            $0, %xmm0, %xmm1, %k2
+vpcmpq            $0, (%rax), %xmm1, %k2
+vpcmpq            $0, (%rax){1to2}, %xmm1, %k2
+vpcmpq            $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpq            $0, (%rax), %xmm1, %k2 {k3}
+vpcmpq            $0, (%rax){1to2}, %xmm1, %k2 {k3}
+
+vpcmpq            $0, %ymm0, %ymm1, %k2
+vpcmpq            $0, (%rax), %ymm1, %k2
+vpcmpq            $0, (%rax){1to4}, %ymm1, %k2
+vpcmpq            $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpq            $0, (%rax), %ymm1, %k2 {k3}
+vpcmpq            $0, (%rax){1to4}, %ymm1, %k2 {k3}
+
+vpcmpud           $0, %xmm0, %xmm1, %k2
+vpcmpud           $0, (%rax), %xmm1, %k2
+vpcmpud           $0, (%rax){1to4}, %xmm1, %k2
+vpcmpud           $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpud           $0, (%rax), %xmm1, %k2 {k3}
+vpcmpud           $0, (%rax){1to4}, %xmm1, %k2 {k3}
+
+vpcmpud           $0, %ymm0, %ymm1, %k2
+vpcmpud           $0, (%rax), %ymm1, %k2
+vpcmpud           $0, (%rax){1to8}, %ymm1, %k2
+vpcmpud           $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpud           $0, (%rax), %ymm1, %k2 {k3}
+vpcmpud           $0, (%rax){1to8}, %ymm1, %k2 {k3}
+
+vpcmpuq           $0, %xmm0, %xmm1, %k2
+vpcmpuq           $0, (%rax), %xmm1, %k2
+vpcmpuq           $0, (%rax){1to2}, %xmm1, %k2
+vpcmpuq           $0, %xmm0, %xmm1, %k2 {k3}
+vpcmpuq           $0, (%rax), %xmm1, %k2 {k3}
+vpcmpuq           $0, (%rax){1to2}, %xmm1, %k2 {k3}
+
+vpcmpuq           $0, %ymm0, %ymm1, %k2
+vpcmpuq           $0, (%rax), %ymm1, %k2
+vpcmpuq           $0, (%rax){1to4}, %ymm1, %k2
+vpcmpuq           $0, %ymm0, %ymm1, %k2 {k3}
+vpcmpuq           $0, (%rax), %ymm1, %k2 {k3}
+vpcmpuq           $0, (%rax){1to4}, %ymm1, %k2 {k3}
+
 vpermd            %ymm16, %ymm17, %ymm19
 vpermd            (%rax), %ymm17, %ymm19
 vpermd            (%rax){1to8}, %ymm17, %ymm19
@@ -521,6 +661,62 @@ vpsubq            %ymm16, %ymm17, %ymm19 {z}{k1}
 vpsubq            (%rax), %ymm17, %ymm19 {z}{k1}
 vpsubq            (%rax){1to4}, %ymm17, %ymm19 {z}{k1}
 
+vptestmd          %xmm0, %xmm1, %k2
+vptestmd          (%rax), %xmm1, %k2
+vptestmd          (%rax){1to4}, %xmm1, %k2
+vptestmd          %xmm0, %xmm1, %k2 {k3}
+vptestmd          (%rax), %xmm1, %k2 {k3}
+vptestmd          (%rax){1to4}, %xmm1, %k2 {k3}
+
+vptestmd          %ymm0, %ymm1, %k2
+vptestmd          (%rax), %ymm1, %k2
+vptestmd          (%rax){1to8}, %ymm1, %k2
+vptestmd          %ymm0, %ymm1, %k2 {k3}
+vptestmd          (%rax), %ymm1, %k2 {k3}
+vptestmd          (%rax){1to8}, %ymm1, %k2 {k3}
+
+vptestmq          %xmm0, %xmm1, %k2
+vptestmq          (%rax), %xmm1, %k2
+vptestmq          (%rax){1to2}, %xmm1, %k2
+vptestmq          %xmm0, %xmm1, %k2 {k3}
+vptestmq          (%rax), %xmm1, %k2 {k3}
+vptestmq          (%rax){1to2}, %xmm1, %k2 {k3}
+
+vptestmq          %ymm0, %ymm1, %k2
+vptestmq          (%rax), %ymm1, %k2
+vptestmq          (%rax){1to4}, %ymm1, %k2
+vptestmq          %ymm0, %ymm1, %k2 {k3}
+vptestmq          (%rax), %ymm1, %k2 {k3}
+vptestmq          (%rax){1to4}, %ymm1, %k2 {k3}
+
+vptestnmd         %xmm0, %xmm1, %k2
+vptestnmd         (%rax), %xmm1, %k2
+vptestnmd         (%rax){1to4}, %xmm1, %k2
+vptestnmd         %xmm0, %xmm1, %k2 {k3}
+vptestnmd         (%rax), %xmm1, %k2 {k3}
+vptestnmd         (%rax){1to4}, %xmm1, %k2 {k3}
+
+vptestnmd         %ymm0, %ymm1, %k2
+vptestnmd         (%rax), %ymm1, %k2
+vptestnmd         (%rax){1to8}, %ymm1, %k2
+vptestnmd         %ymm0, %ymm1, %k2 {k3}
+vptestnmd         (%rax), %ymm1, %k2 {k3}
+vptestnmd         (%rax){1to8}, %ymm1, %k2 {k3}
+
+vptestnmq         %xmm0, %xmm1, %k2
+vptestnmq         (%rax), %xmm1, %k2
+vptestnmq         (%rax){1to2}, %xmm1, %k2
+vptestnmq         %xmm0, %xmm1, %k2 {k3}
+vptestnmq         (%rax), %xmm1, %k2 {k3}
+vptestnmq         (%rax){1to2}, %xmm1, %k2 {k3}
+
+vptestnmq         %ymm0, %ymm1, %k2
+vptestnmq         (%rax), %ymm1, %k2
+vptestnmq         (%rax){1to4}, %ymm1, %k2
+vptestnmq         %ymm0, %ymm1, %k2 {k3}
+vptestnmq         (%rax), %ymm1, %k2 {k3}
+vptestnmq         (%rax){1to4}, %ymm1, %k2 {k3}
+
 vpunpckhdq        %xmm16, %xmm17, %xmm19
 vpunpckhdq        (%rax), %xmm17, %xmm19
 vpunpckhdq        (%rax){1to4}, %xmm17, %xmm19
@@ -806,6 +1002,30 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      4     0.50                        vaddps	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqpd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqpd	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqpd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqpd	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqpd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqpd	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqps	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqps	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqps	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vcmpeqps	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vcmpeqps	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vcmpeqps	(%rax){1to8}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  2      5     1.00                        vcvtdq2pd	%xmm16, %xmm19
 # CHECK-NEXT:  2      10    0.50    *                   vcvtdq2pd	(%rax), %xmm19
 # CHECK-NEXT:  2      10    0.50    *                   vcvtdq2pd	(%rax){1to2}, %xmm19
@@ -1030,6 +1250,102 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.33                        vpaddq	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpgtq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpgtq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpgtq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpeqq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpeqq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpeqq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vpcmpequq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vpcmpequq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vpcmpequq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vpcmpequq	(%rax){1to4}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  1      3     1.00                        vpermd	%ymm16, %ymm17, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpermd	(%rax), %ymm17, %ymm19
 # CHECK-NEXT:  2      10    1.00    *                   vpermd	(%rax){1to8}, %ymm17, %ymm19
@@ -1236,6 +1552,54 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  1      1     0.33                        vpsubq	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  1      3     1.00                        vptestmd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestmd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestmd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestmd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestmd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestmd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestmq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestmq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestmq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestmq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestmq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestmq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestmq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestmq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestmq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  2      9     1.00    *                   vptestnmq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  1      3     1.00                        vptestnmq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  1      3     1.00                        vptestnmq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  2      10    1.00    *                   vptestnmq	(%rax){1to4}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  1      1     1.00                        vpunpckhdq	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  2      7     1.00    *                   vpunpckhdq	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  2      7     1.00    *                   vpunpckhdq	(%rax){1to4}, %xmm17, %xmm19
@@ -1467,7 +1831,7 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
-# CHECK-NEXT:  -     423.00 242.33 154.33 252.00 252.00  -     337.33 4.00    -
+# CHECK-NEXT:  -     423.00 242.33 154.33 308.00 308.00  -     505.33 4.00    -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -1507,6 +1871,30 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     vaddps	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vaddps	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     vaddps	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqpd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqpd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqpd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqpd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqps	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqps	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqps	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqps	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax){1to8}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     1.33    -      -     vcvtdq2pd	%xmm16, %xmm19
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax), %xmm19
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax){1to2}, %xmm19
@@ -1731,6 +2119,102 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddq	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax){1to4}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermd	%ymm16, %ymm17, %ymm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermd	(%rax), %ymm17, %ymm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermd	(%rax){1to8}, %ymm17, %ymm19
@@ -1937,6 +2421,54 @@ vunpcklps         (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
 # CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubq	%ymm16, %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax), %ymm17, %ymm19 {%k1} {z}
 # CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmd	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmd	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmd	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmd	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmq	%xmm0, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax), %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmq	%xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmq	%ymm0, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax), %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmq	%ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax){1to4}, %ymm1, %k2 {%k3}
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhdq	%xmm16, %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhdq	(%rax), %xmm17, %xmm19
 # CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhdq	(%rax){1to4}, %xmm17, %xmm19


        


More information about the llvm-commits mailing list