[llvm] a744128 - [X86] Fix znver1 256-bit ALU/Logic/Blend uop counts

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 19 11:10:09 PDT 2022


Author: Simon Pilgrim
Date: 2022-08-19T19:09:39+01:00
New Revision: a7441289e2eb8ccf71c1a60b71d898069e82b22b

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

LOG: [X86] Fix znver1 256-bit ALU/Logic/Blend uop counts

ymm instructions are double pumped on znver1 - noticed while trying to review size-latency costkinds numbers for D132216

Matches AMD 17h SOG / Agner / uops.info

Added: 
    

Modified: 
    llvm/lib/Target/X86/X86ScheduleZnver1.td
    llvm/test/tools/llvm-mca/X86/Znver1/resources-avx1.s
    llvm/test/tools/llvm-mca/X86/Znver1/resources-avx2.s
    llvm/test/tools/llvm-mca/X86/Znver1/zero-idioms.s
    llvm/test/tools/llvm-mca/X86/read-after-ld-2.s

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/X86/X86ScheduleZnver1.td b/llvm/lib/Target/X86/X86ScheduleZnver1.td
index aada3e0bd9063..85f85fbda39e4 100644
--- a/llvm/lib/Target/X86/X86ScheduleZnver1.td
+++ b/llvm/lib/Target/X86/X86ScheduleZnver1.td
@@ -298,10 +298,10 @@ defm : ZnWriteResFpuPair<WriteFBlend,    [ZnFPU01], 1>;
 defm : ZnWriteResFpuPair<WriteFBlendY,   [ZnFPU01], 1>;
 defm : X86WriteResPairUnsupported<WriteFBlendZ>;
 defm : ZnWriteResFpuPair<WriteFVarBlend, [ZnFPU01], 1>;
-defm : ZnWriteResFpuPair<WriteFVarBlendY,[ZnFPU01], 1>;
+defm : ZnWriteResFpuPair<WriteFVarBlendY,[ZnFPU01], 1, [2], 2>;
 defm : X86WriteResPairUnsupported<WriteFVarBlendZ>;
 defm : ZnWriteResFpuPair<WriteVarBlend,  [ZnFPU0],  1>;
-defm : ZnWriteResFpuPair<WriteVarBlendY, [ZnFPU0],  1>;
+defm : ZnWriteResFpuPair<WriteVarBlendY, [ZnFPU0],  1, [2], 2>;
 defm : X86WriteResPairUnsupported<WriteVarBlendZ>;
 defm : ZnWriteResFpuPair<WriteCvtSS2I,   [ZnFPU3],  5>;
 defm : ZnWriteResFpuPair<WriteCvtPS2I,   [ZnFPU3],  5>;
@@ -332,7 +332,7 @@ defm : ZnWriteResFpuPair<WriteFRnd,      [ZnFPU3],  4, [1], 1, 7, 1>; // FIXME:
 defm : ZnWriteResFpuPair<WriteFRndY,     [ZnFPU3],  4, [1], 1, 7, 1>; // FIXME: Should folds require 1 extra uops?
 defm : X86WriteResPairUnsupported<WriteFRndZ>;
 defm : ZnWriteResFpuPair<WriteFLogic,    [ZnFPU],   1>;
-defm : ZnWriteResFpuPair<WriteFLogicY,   [ZnFPU],   1>;
+defm : ZnWriteResFpuPair<WriteFLogicY,   [ZnFPU],   1, [2], 2>;
 defm : X86WriteResPairUnsupported<WriteFLogicZ>;
 defm : ZnWriteResFpuPair<WriteFTest,     [ZnFPU12], 2, [2], 1, 7, 1>;
 defm : ZnWriteResFpuPair<WriteFTestY,    [ZnFPU12], 4, [4], 3, 7, 2>;
@@ -411,14 +411,14 @@ defm : ZnWriteResFpuPair<WriteVarVecShiftY, [ZnFPU1], 3, [4], 2>;
 defm : X86WriteResPairUnsupported<WriteVarVecShiftZ>;
 defm : ZnWriteResFpuPair<WriteVecLogic,   [ZnFPU],   1>;
 defm : ZnWriteResFpuPair<WriteVecLogicX,  [ZnFPU],   1>;
-defm : ZnWriteResFpuPair<WriteVecLogicY,  [ZnFPU],   1>;
+defm : ZnWriteResFpuPair<WriteVecLogicY,  [ZnFPU],   1, [2], 2>;
 defm : X86WriteResPairUnsupported<WriteVecLogicZ>;
 defm : ZnWriteResFpuPair<WriteVecTest,    [ZnFPU12], 2, [2], 1, 7, 1>;
 defm : ZnWriteResFpuPair<WriteVecTestY,   [ZnFPU12], 4, [4], 3, 7, 2>;
 defm : X86WriteResPairUnsupported<WriteVecTestZ>;
 defm : ZnWriteResFpuPair<WriteVecALU,     [ZnFPU],   1>;
 defm : ZnWriteResFpuPair<WriteVecALUX,    [ZnFPU],   1>;
-defm : ZnWriteResFpuPair<WriteVecALUY,    [ZnFPU],   1>;
+defm : ZnWriteResFpuPair<WriteVecALUY,    [ZnFPU],   1, [2], 2>;
 defm : X86WriteResPairUnsupported<WriteVecALUZ>;
 defm : ZnWriteResFpuPair<WriteVecIMul,    [ZnFPU0],  4>;
 defm : ZnWriteResFpuPair<WriteVecIMulX,   [ZnFPU0],  4>;

diff  --git a/llvm/test/tools/llvm-mca/X86/Znver1/resources-avx1.s b/llvm/test/tools/llvm-mca/X86/Znver1/resources-avx1.s
index c6315d540106a..0bd5eac8bd49c 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver1/resources-avx1.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver1/resources-avx1.s
@@ -1064,20 +1064,20 @@ vzeroupper
 # CHECK-NEXT:  1      11    0.50    *                   vaeskeygenassist	$22, (%rax), %xmm2
 # CHECK-NEXT:  1      1     0.25                        vandnpd	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vandnpd	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.25                        vandnpd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vandnpd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vandnpd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vandnpd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vandnps	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vandnps	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.25                        vandnps	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vandnps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vandnps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vandnps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vandpd	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vandpd	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.25                        vandpd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vandpd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vandpd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vandpd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vandps	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vandps	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.25                        vandps	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vandps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vandps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vandps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.50                        vblendpd	$11, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vblendpd	$11, (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      1     0.50                        vblendpd	$11, %ymm0, %ymm1, %ymm2
@@ -1088,12 +1088,12 @@ vzeroupper
 # CHECK-NEXT:  1      8     0.50    *                   vblendps	$11, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.50                        vblendvpd	%xmm3, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vblendvpd	%xmm3, (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.50                        vblendvpd	%ymm3, %ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vblendvpd	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     1.00                        vblendvpd	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *                   vblendvpd	%ymm3, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.50                        vblendvps	%xmm3, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vblendvps	%xmm3, (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.50                        vblendvps	%ymm3, %ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vblendvps	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     1.00                        vblendvps	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *                   vblendvps	%ymm3, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  2      8     0.50    *                   vbroadcastf128	(%rax), %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vbroadcastsd	(%rax), %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vbroadcastss	(%rax), %xmm2
@@ -1353,12 +1353,12 @@ vzeroupper
 # CHECK-NEXT:  2      10    0.50    *                   vmulss	(%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      1     0.25                        vorpd	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vorpd	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.25                        vorpd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vorpd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vorpd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vorpd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vorps	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vorps	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.25                        vorps	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vorps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vorps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vorps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpabsb	%xmm0, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vpabsb	(%rax), %xmm2
 # CHECK-NEXT:  1      1     0.25                        vpabsd	%xmm0, %xmm2
@@ -1713,12 +1713,12 @@ vzeroupper
 # CHECK-NEXT:  1      8     0.50    *                   vunpcklps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vxorpd	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vxorpd	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.25                        vxorpd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vxorpd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vxorpd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vxorpd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vxorps	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     0.50    *                   vxorps	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      1     0.25                        vxorps	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vxorps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vxorps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vxorps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      100   0.25                  U     vzeroall
 # CHECK-NEXT:  1      100   0.25                  U     vzeroupper
 
@@ -1738,7 +1738,7 @@ vzeroupper
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]
-# CHECK-NEXT: 175.00 175.00  -      -      -      -      -     142.58 181.08 216.25 523.08  -
+# CHECK-NEXT: 175.00 175.00  -      -      -      -      -     148.58 187.08 220.25 527.08  -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   Instructions:
@@ -1776,20 +1776,20 @@ vzeroupper
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50    -      -      -     vaeskeygenassist	$22, (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandnpd	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandnpd	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandnpd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandnpd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vandnpd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vandnpd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandnps	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandnps	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandnps	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandnps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vandnps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vandnps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandpd	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandpd	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandpd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandpd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vandpd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vandpd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandps	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandps	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandps	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vandps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vandps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vandps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     vblendpd	$11, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50    -      -      -     vblendpd	$11, (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     vblendpd	$11, %ymm0, %ymm1, %ymm2
@@ -1800,12 +1800,12 @@ vzeroupper
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50    -      -      -     vblendps	$11, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     vblendvpd	%xmm3, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50    -      -      -     vblendvpd	%xmm3, (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     vblendvpd	%ymm3, %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50    -      -      -     vblendvpd	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   1.00    -      -      -     vblendvpd	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00   1.00    -      -      -     vblendvpd	%ymm3, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     vblendvps	%xmm3, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50    -      -      -     vblendvps	%xmm3, (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     vblendvps	%ymm3, %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50    -      -      -     vblendvps	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   1.00    -      -      -     vblendvps	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00   1.00    -      -      -     vblendvps	%ymm3, (%rax), %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50    -     0.50    -     vbroadcastf128	(%rax), %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     vbroadcastsd	(%rax), %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     vbroadcastss	(%rax), %xmm2
@@ -2065,12 +2065,12 @@ vzeroupper
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50    -      -      -     vmulss	(%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vorpd	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vorpd	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vorpd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vorpd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vorpd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vorpd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vorps	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vorps	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vorps	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vorps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vorps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vorps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpabsb	%xmm0, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpabsb	(%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpabsd	%xmm0, %xmm2
@@ -2425,11 +2425,11 @@ vzeroupper
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     vunpcklps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vxorpd	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vxorpd	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vxorpd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vxorpd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vxorpd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vxorpd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vxorps	%xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vxorps	(%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vxorps	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vxorps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vxorps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vxorps	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     vzeroall
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     vzeroupper

diff  --git a/llvm/test/tools/llvm-mca/X86/Znver1/resources-avx2.s b/llvm/test/tools/llvm-mca/X86/Znver1/resources-avx2.s
index 820728ef2d1d6..f5a4d491dae1f 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver1/resources-avx2.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver1/resources-avx2.s
@@ -478,12 +478,12 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vmovntdqa	(%rax), %ymm0
 # CHECK-NEXT:  1      100   0.25                        vmpsadbw	$1, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  1      100   0.25    *                   vmpsadbw	$1, (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpabsb	%ymm0, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpabsb	(%rax), %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpabsd	%ymm0, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpabsd	(%rax), %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpabsw	%ymm0, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpabsw	(%rax), %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpackssdw	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vpackssdw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpacksswb	%ymm0, %ymm1, %ymm2
@@ -492,38 +492,38 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vpackusdw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpackuswb	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vpackuswb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpaddb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpaddb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpaddd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpaddd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpaddq	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpaddq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpaddsb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpaddsb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpaddsw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpaddsw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpaddusb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpaddusb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpaddusw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpaddusw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpaddw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpaddw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpalignr	$1, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vpalignr	$1, (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpand	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpand	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpandn	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpandn	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpavgb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpavgb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpavgw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpavgw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.50                        vpblendd	$11, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  2      8     1.00    *                   vpblendd	$11, (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      1     0.50                        vpblendd	$11, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      9     1.50    *                   vpblendd	$11, (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     1.00                        vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     1.00    *                   vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     2.00                        vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     2.00    *                   vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      2     0.33                        vpblendw	$11, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      9     0.50    *                   vpblendw	$11, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpbroadcastb	%xmm0, %xmm0
@@ -542,22 +542,22 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  2      8     1.00    *                   vpbroadcastw	(%rax), %xmm0
 # CHECK-NEXT:  1      2     0.25                        vpbroadcastw	%xmm0, %ymm0
 # CHECK-NEXT:  2      8     2.00    *                   vpbroadcastw	(%rax), %ymm0
-# CHECK-NEXT:  1      1     0.25                        vpcmpeqb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpcmpeqb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpcmpeqd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpcmpeqd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpcmpeqq	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpcmpeqq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpcmpeqw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpcmpeqw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpcmpgtb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpcmpgtb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpcmpgtd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      8     1.00    *                   vpcmpgtq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpcmpgtw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpcmpgtw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      2     0.25                        vperm2i128	$1, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  1      9     0.50    *                   vperm2i128	$1, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      2     0.25                        vpermd	%ymm0, %ymm1, %ymm2
@@ -600,30 +600,30 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  2      9     1.50    *                   vpmaskmovq	(%rax), %ymm0, %ymm2
 # CHECK-NEXT:  1      100   0.25    *      *            vpmaskmovq	%xmm0, %xmm1, (%rax)
 # CHECK-NEXT:  1      100   0.25    *      *            vpmaskmovq	%ymm0, %ymm1, (%rax)
-# CHECK-NEXT:  1      1     0.25                        vpmaxsb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpmaxsb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpmaxsd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpmaxsd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpmaxsw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpmaxsw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpmaxub	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpmaxub	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpmaxud	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpmaxud	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpmaxuw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpmaxuw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpminsb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpminsb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpminsd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpminsd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpminsw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpminsw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpminub	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpminub	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpminud	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpminud	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpminuw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpminuw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  2      2     2.00                        vpmovmskb	%ymm0, %ecx
 # CHECK-NEXT:  3      1     2.00                        vpmovsxbd	%xmm0, %ymm2
 # CHECK-NEXT:  3      8     2.00    *                   vpmovsxbd	(%rax), %ymm2
@@ -663,8 +663,8 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      11    1.00    *                   vpmullw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      4     1.00                        vpmuludq	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  1      11    1.00    *                   vpmuludq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpor	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpor	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      3     1.00                        vpsadbw	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  1      10    1.00    *                   vpsadbw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpshufb	%ymm0, %ymm1, %ymm2
@@ -675,12 +675,12 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vpshufhw	$1, (%rax), %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpshuflw	$1, %ymm0, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vpshuflw	$1, (%rax), %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsignb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsignb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsignd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsignd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsignw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsignw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  2      1     2.00                        vpslld	$1, %ymm0, %ymm2
 # CHECK-NEXT:  2      1     2.00                        vpslld	%xmm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      8     2.00    *                   vpslld	(%rax), %ymm1, %ymm2
@@ -727,22 +727,22 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  2      1     2.00                        vpsrlw	$1, %ymm0, %ymm2
 # CHECK-NEXT:  2      1     2.00                        vpsrlw	%xmm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      8     2.00    *                   vpsrlw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsubb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsubb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsubd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsubd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsubq	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsubq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsubsb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsubsb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsubsw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsubsw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsubusb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsubusb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsubusw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsubusw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpsubw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpsubw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpunpckhbw	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vpunpckhbw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpunpckhdq	%ymm0, %ymm1, %ymm2
@@ -759,8 +759,8 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vpunpcklqdq	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  1      1     0.25                        vpunpcklwd	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  1      8     0.50    *                   vpunpcklwd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vpxor	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  1      8     0.50    *                   vpxor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *                   vpxor	(%rax), %ymm1, %ymm2
 
 # CHECK:      Resources:
 # CHECK-NEXT: [0]   - ZnAGU0
@@ -778,7 +778,7 @@ vpxor           (%rax), %ymm1, %ymm2
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]
-# CHECK-NEXT: 67.00  67.00   -      -      -      -      -     71.17  159.67 141.00 41.17   -
+# CHECK-NEXT: 67.00  67.00   -      -      -      -      -     96.67  183.17 164.50 64.67   -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   Instructions:
@@ -800,12 +800,12 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -     vmovntdqa	(%rax), %ymm0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     vmpsadbw	$1, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     vmpsadbw	$1, (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpabsb	%ymm0, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpabsb	(%rax), %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpabsd	%ymm0, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpabsd	(%rax), %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpabsw	%ymm0, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpabsb	%ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpabsd	%ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpabsw	%ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpabsw	(%rax), %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpackssdw	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpackssdw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpacksswb	%ymm0, %ymm1, %ymm2
@@ -814,38 +814,38 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpackusdw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpackuswb	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpackuswb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddq	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddsb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddsb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddsw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddsw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddusb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddusb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddusw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddusw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpaddw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpalignr	$1, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpalignr	$1, (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpand	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpand	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpandn	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpandn	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpavgb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpavgb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpavgw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpavgw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     vpblendd	$11, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00   1.00    -      -      -     vpblendd	$11, (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     vpblendd	$11, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.50   1.50    -      -      -     vpblendd	$11, (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -     vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     2.00    -      -      -      -     vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33    -     0.33    -     vpblendw	$11, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.33   0.33    -     0.33    -     vpblendw	$11, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpbroadcastb	%xmm0, %xmm0
@@ -864,22 +864,22 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     1.00   1.00    -      -     vpbroadcastw	(%rax), %xmm0
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpbroadcastw	%xmm0, %ymm0
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     2.00    -      -      -     vpbroadcastw	(%rax), %ymm0
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpeqb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpeqb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpeqd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpeqd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpeqq	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpeqq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpeqw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpeqw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpgtb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpgtb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpgtd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpgtd	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.50    -      -     0.50    -     vpcmpgtq	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -     1.00    -     vpcmpgtq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpgtw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpcmpgtw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vperm2i128	$1, %ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vperm2i128	$1, (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpermd	%ymm0, %ymm1, %ymm2
@@ -922,30 +922,30 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.50   1.50    -      -      -     vpmaskmovq	(%rax), %ymm0, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     vpmaskmovq	%xmm0, %xmm1, (%rax)
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     vpmaskmovq	%ymm0, %ymm1, (%rax)
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxsb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxsb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxsd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxsd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxsw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxsw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxub	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxub	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxud	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxud	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxuw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpmaxuw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminsb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminsb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminsd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminsd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminsw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminsw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminub	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminub	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminud	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminud	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminuw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpminuw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpmovmskb	%ymm0, %ecx
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00   2.00    -      -     vpmovsxbd	%xmm0, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     2.00   2.00    -      -     vpmovsxbd	(%rax), %ymm2
@@ -985,8 +985,8 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     vpmullw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpmuludq	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     vpmuludq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpor	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpor	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpsadbw	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     vpsadbw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpshufb	%ymm0, %ymm1, %ymm2
@@ -997,12 +997,12 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpshufhw	$1, (%rax), %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpshuflw	$1, %ymm0, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpshuflw	$1, (%rax), %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsignb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsignb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsignd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsignd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsignw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsignw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpslld	$1, %ymm0, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpslld	%xmm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     2.00    -      -     vpslld	(%rax), %ymm1, %ymm2
@@ -1049,22 +1049,22 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpsrlw	$1, %ymm0, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpsrlw	%xmm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     2.00    -      -     vpsrlw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubd	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubq	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubq	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubsb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubsb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubsw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubsw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubusb	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubusb	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubusw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubusw	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubw	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpsubw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpunpckhbw	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpunpckhbw	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpunpckhdq	%ymm0, %ymm1, %ymm2
@@ -1081,5 +1081,5 @@ vpxor           (%rax), %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpunpcklqdq	(%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpunpcklwd	%ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpunpcklwd	(%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpxor	%ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     vpxor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.50   0.50   0.50   0.50    -     vpxor	(%rax), %ymm1, %ymm2

diff  --git a/llvm/test/tools/llvm-mca/X86/Znver1/zero-idioms.s b/llvm/test/tools/llvm-mca/X86/Znver1/zero-idioms.s
index 4596ff6b26c68..9adc74d11d221 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver1/zero-idioms.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver1/zero-idioms.s
@@ -100,13 +100,13 @@ vpxor  %ymm3, %ymm3, %ymm5
 
 # CHECK:      Iterations:        1
 # CHECK-NEXT: Instructions:      83
-# CHECK-NEXT: Total Cycles:      24
-# CHECK-NEXT: Total uOps:        83
+# CHECK-NEXT: Total Cycles:      32
+# CHECK-NEXT: Total uOps:        109
 
 # CHECK:      Dispatch Width:    4
-# CHECK-NEXT: uOps Per Cycle:    3.46
-# CHECK-NEXT: IPC:               3.46
-# CHECK-NEXT: Block RThroughput: 20.8
+# CHECK-NEXT: uOps Per Cycle:    3.41
+# CHECK-NEXT: IPC:               2.59
+# CHECK-NEXT: Block RThroughput: 27.3
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -136,14 +136,14 @@ vpxor  %ymm3, %ymm3, %ymm5
 # CHECK-NEXT:  1      1     0.25                        vpcmpgtd	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      1     0.25                        vpcmpgtw	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      1     0.25                        vpcmpgtb	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  1      1     0.25                        vpcmpgtd	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vpcmpgtb	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vpcmpgtd	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  1      1     0.25                        vpcmpgtw	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  1      1     0.25                        vpcmpgtb	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  1      1     0.25                        vpcmpgtd	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vpcmpgtw	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vpcmpgtb	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vpcmpgtd	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT:  1      1     0.50                        vpcmpgtq	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  1      1     0.25                        vpcmpgtw	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vpcmpgtw	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT:  1      1     0.25                        psubb	%mm2, %mm2
 # CHECK-NEXT:  1      1     0.25                        psubd	%mm2, %mm2
 # CHECK-NEXT:  1      1     0.25                        psubq	%mm2, %mm2
@@ -156,50 +156,50 @@ vpxor  %ymm3, %ymm3, %ymm5
 # CHECK-NEXT:  1      1     0.25                        vpsubd	%xmm3, %xmm3, %xmm3
 # CHECK-NEXT:  1      1     0.25                        vpsubq	%xmm3, %xmm3, %xmm3
 # CHECK-NEXT:  1      1     0.25                        vpsubw	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      1     0.25                        vpsubb	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  1      1     0.25                        vpsubd	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  1      1     0.25                        vpsubq	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  1      1     0.25                        vpsubw	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vpsubb	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vpsubd	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vpsubq	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vpsubw	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT:  1      1     0.25                        vpsubb	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      1     0.25                        vpsubd	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      1     0.25                        vpsubq	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      1     0.25                        vpsubw	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      1     0.25                        vpsubb	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  1      1     0.25                        vpsubd	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  1      1     0.25                        vpsubq	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  1      1     0.25                        vpsubw	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vpsubb	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vpsubd	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vpsubq	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vpsubw	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT:  1      1     0.25                        andnps	%xmm0, %xmm0
 # CHECK-NEXT:  1      1     0.25                        andnpd	%xmm1, %xmm1
 # CHECK-NEXT:  1      1     0.25                        vandnps	%xmm2, %xmm2, %xmm2
 # CHECK-NEXT:  1      1     0.25                        vandnpd	%xmm1, %xmm1, %xmm1
-# CHECK-NEXT:  1      1     0.25                        vandnps	%ymm2, %ymm2, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vandnpd	%ymm1, %ymm1, %ymm1
+# CHECK-NEXT:  2      1     0.50                        vandnps	%ymm2, %ymm2, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vandnpd	%ymm1, %ymm1, %ymm1
 # CHECK-NEXT:  1      1     0.25                        pandn	%mm2, %mm2
 # CHECK-NEXT:  1      1     0.25                        pandn	%xmm2, %xmm2
 # CHECK-NEXT:  1      1     0.25                        vpandn	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      1     0.25                        vpandn	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vpandn	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT:  1      1     0.25                        vandnps	%xmm2, %xmm2, %xmm5
 # CHECK-NEXT:  1      1     0.25                        vandnpd	%xmm1, %xmm1, %xmm5
 # CHECK-NEXT:  1      1     0.25                        vpandn	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      1     0.25                        vandnps	%ymm2, %ymm2, %ymm5
-# CHECK-NEXT:  1      1     0.25                        vandnpd	%ymm1, %ymm1, %ymm5
-# CHECK-NEXT:  1      1     0.25                        vpandn	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vandnps	%ymm2, %ymm2, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vandnpd	%ymm1, %ymm1, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vpandn	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT:  1      1     0.25                        xorps	%xmm0, %xmm0
 # CHECK-NEXT:  1      1     0.25                        xorpd	%xmm1, %xmm1
 # CHECK-NEXT:  1      1     0.25                        vxorps	%xmm2, %xmm2, %xmm2
 # CHECK-NEXT:  1      1     0.25                        vxorpd	%xmm1, %xmm1, %xmm1
-# CHECK-NEXT:  1      1     0.25                        vxorps	%ymm2, %ymm2, %ymm2
-# CHECK-NEXT:  1      1     0.25                        vxorpd	%ymm1, %ymm1, %ymm1
+# CHECK-NEXT:  2      1     0.50                        vxorps	%ymm2, %ymm2, %ymm2
+# CHECK-NEXT:  2      1     0.50                        vxorpd	%ymm1, %ymm1, %ymm1
 # CHECK-NEXT:  1      1     0.25                        pxor	%mm2, %mm2
 # CHECK-NEXT:  1      1     0.25                        pxor	%xmm2, %xmm2
 # CHECK-NEXT:  1      1     0.25                        vpxor	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      1     0.25                        vpxor	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vpxor	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT:  1      1     0.25                        vxorps	%xmm4, %xmm4, %xmm5
 # CHECK-NEXT:  1      1     0.25                        vxorpd	%xmm1, %xmm1, %xmm3
-# CHECK-NEXT:  1      1     0.25                        vxorps	%ymm4, %ymm4, %ymm5
-# CHECK-NEXT:  1      1     0.25                        vxorpd	%ymm1, %ymm1, %ymm3
+# CHECK-NEXT:  2      1     0.50                        vxorps	%ymm4, %ymm4, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vxorpd	%ymm1, %ymm1, %ymm3
 # CHECK-NEXT:  1      1     0.25                        vpxor	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      1     0.25                        vpxor	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  2      1     0.50                        vpxor	%ymm3, %ymm3, %ymm5
 
 # CHECK:      Register File statistics:
 # CHECK-NEXT: Total number of mappings created:    0
@@ -231,7 +231,7 @@ vpxor  %ymm3, %ymm3, %ymm5
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]
-# CHECK-NEXT:  -      -     1.00   1.00   1.00   1.00    -     19.00  20.00  20.00  20.00   -
+# CHECK-NEXT:  -      -     1.00   1.00   1.00   1.00    -     26.00  26.00  26.00  27.00   -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   Instructions:
@@ -254,158 +254,158 @@ vpxor  %ymm3, %ymm3, %ymm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpcmpgtd	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpcmpgtq	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpcmpgtw	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpcmpgtb	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpcmpgtd	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -     vpcmpgtb	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -     vpcmpgtd	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpcmpgtq	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpcmpgtw	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpcmpgtb	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpcmpgtd	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpcmpgtw	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -     vpcmpgtb	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -     vpcmpgtd	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpcmpgtq	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpcmpgtw	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpcmpgtw	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     psubb	%mm2, %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     psubd	%mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     psubq	%mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     psubw	%mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     psubb	%xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     psubd	%xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     psubq	%xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     psubw	%xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpsubb	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpsubd	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpsubq	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpsubw	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpsubb	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpsubd	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpsubq	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpsubw	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpsubb	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpsubd	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpsubq	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpsubw	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpsubb	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpsubd	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpsubq	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpsubw	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     andnps	%xmm0, %xmm0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     andnpd	%xmm1, %xmm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vandnps	%xmm2, %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vandnpd	%xmm1, %xmm1, %xmm1
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vandnps	%ymm2, %ymm2, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vandnpd	%ymm1, %ymm1, %ymm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     pandn	%mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     pandn	%xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpandn	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpandn	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vandnps	%xmm2, %xmm2, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vandnpd	%xmm1, %xmm1, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpandn	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vandnps	%ymm2, %ymm2, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vandnpd	%ymm1, %ymm1, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpandn	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     xorps	%xmm0, %xmm0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     xorpd	%xmm1, %xmm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vxorps	%xmm2, %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vxorpd	%xmm1, %xmm1, %xmm1
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vxorps	%ymm2, %ymm2, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vxorpd	%ymm1, %ymm1, %ymm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     pxor	%mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     pxor	%xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpxor	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpxor	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vxorps	%xmm4, %xmm4, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vxorpd	%xmm1, %xmm1, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vxorps	%ymm4, %ymm4, %ymm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vxorpd	%ymm1, %ymm1, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     psubq	%mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     psubw	%mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     psubb	%xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     psubd	%xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     psubq	%xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     psubw	%xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpsubb	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpsubd	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpsubq	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpsubw	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpsubb	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -     vpsubd	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -     vpsubq	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -     vpsubw	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpsubb	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpsubd	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vpsubq	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vpsubw	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpsubb	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -     vpsubd	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -     vpsubq	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -     vpsubw	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     andnps	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     andnpd	%xmm1, %xmm1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vandnps	%xmm2, %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vandnpd	%xmm1, %xmm1, %xmm1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vandnps	%ymm2, %ymm2, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -     vandnpd	%ymm1, %ymm1, %ymm1
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     pandn	%mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     pandn	%xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpandn	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -     vpandn	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     vandnps	%xmm2, %xmm2, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vandnpd	%xmm1, %xmm1, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpandn	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -     vandnps	%ymm2, %ymm2, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -     vandnpd	%ymm1, %ymm1, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     vpandn	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     xorps	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     xorpd	%xmm1, %xmm1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vxorps	%xmm2, %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vxorpd	%xmm1, %xmm1, %xmm1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -     vxorps	%ymm2, %ymm2, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -     vxorpd	%ymm1, %ymm1, %ymm1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     pxor	%mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     pxor	%xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpxor	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -     vpxor	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -     vxorps	%xmm4, %xmm4, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vxorpd	%xmm1, %xmm1, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -     vxorps	%ymm4, %ymm4, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -     vxorpd	%ymm1, %ymm1, %ymm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     vpxor	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00    -      -      -     vpxor	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -     vpxor	%ymm3, %ymm3, %ymm5
 
 # CHECK:      Timeline view:
-# CHECK-NEXT:                     0123456789
-# CHECK-NEXT: Index     0123456789          0123
+# CHECK-NEXT:                     0123456789          01
+# CHECK-NEXT: Index     0123456789          0123456789
 
-# CHECK:      [0,0]     DeER .    .    .    .  .   subl	%eax, %eax
-# CHECK-NEXT: [0,1]     DeER .    .    .    .  .   subq	%rax, %rax
-# CHECK-NEXT: [0,2]     DeER .    .    .    .  .   xorl	%eax, %eax
-# CHECK-NEXT: [0,3]     DeER .    .    .    .  .   xorq	%rax, %rax
-# CHECK-NEXT: [0,4]     .DeER.    .    .    .  .   pcmpgtb	%mm2, %mm2
-# CHECK-NEXT: [0,5]     .DeER.    .    .    .  .   pcmpgtd	%mm2, %mm2
-# CHECK-NEXT: [0,6]     .DeER.    .    .    .  .   pcmpgtw	%mm2, %mm2
-# CHECK-NEXT: [0,7]     .DeER.    .    .    .  .   pcmpgtb	%xmm2, %xmm2
-# CHECK-NEXT: [0,8]     . DeER    .    .    .  .   pcmpgtd	%xmm2, %xmm2
-# CHECK-NEXT: [0,9]     . DeER    .    .    .  .   pcmpgtq	%xmm2, %xmm2
-# CHECK-NEXT: [0,10]    . DeER    .    .    .  .   pcmpgtw	%xmm2, %xmm2
-# CHECK-NEXT: [0,11]    . DeER    .    .    .  .   vpcmpgtb	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,12]    .  DeER   .    .    .  .   vpcmpgtd	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,13]    .  DeER   .    .    .  .   vpcmpgtq	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,14]    .  DeER   .    .    .  .   vpcmpgtw	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,15]    .  DeER   .    .    .  .   vpcmpgtb	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,16]    .   DeER  .    .    .  .   vpcmpgtd	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,17]    .   DeER  .    .    .  .   vpcmpgtq	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,18]    .   DeER  .    .    .  .   vpcmpgtw	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,19]    .   DeER  .    .    .  .   vpcmpgtb	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,20]    .    DeER .    .    .  .   vpcmpgtd	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,21]    .    DeER .    .    .  .   vpcmpgtq	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,22]    .    DeER .    .    .  .   vpcmpgtw	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,23]    .    DeER .    .    .  .   vpcmpgtb	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: [0,24]    .    .DeER.    .    .  .   vpcmpgtd	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: [0,25]    .    .DeER.    .    .  .   vpcmpgtq	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: [0,26]    .    .DeER.    .    .  .   vpcmpgtw	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: [0,27]    .    .DeER.    .    .  .   psubb	%mm2, %mm2
-# CHECK-NEXT: [0,28]    .    . DeER    .    .  .   psubd	%mm2, %mm2
-# CHECK-NEXT: [0,29]    .    . DeER    .    .  .   psubq	%mm2, %mm2
-# CHECK-NEXT: [0,30]    .    . DeER    .    .  .   psubw	%mm2, %mm2
-# CHECK-NEXT: [0,31]    .    . DeER    .    .  .   psubb	%xmm2, %xmm2
-# CHECK-NEXT: [0,32]    .    .  DeER   .    .  .   psubd	%xmm2, %xmm2
-# CHECK-NEXT: [0,33]    .    .  DeER   .    .  .   psubq	%xmm2, %xmm2
-# CHECK-NEXT: [0,34]    .    .  DeER   .    .  .   psubw	%xmm2, %xmm2
-# CHECK-NEXT: [0,35]    .    .  DeER   .    .  .   vpsubb	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,36]    .    .   DeER  .    .  .   vpsubd	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,37]    .    .   DeER  .    .  .   vpsubq	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,38]    .    .   DeER  .    .  .   vpsubw	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,39]    .    .   DeER  .    .  .   vpsubb	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,40]    .    .    DeER .    .  .   vpsubd	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,41]    .    .    DeER .    .  .   vpsubq	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,42]    .    .    DeER .    .  .   vpsubw	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,43]    .    .    DeER .    .  .   vpsubb	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,44]    .    .    .DeER.    .  .   vpsubd	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,45]    .    .    .DeER.    .  .   vpsubq	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,46]    .    .    .DeER.    .  .   vpsubw	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,47]    .    .    .DeER.    .  .   vpsubb	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: [0,48]    .    .    . DeER    .  .   vpsubd	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: [0,49]    .    .    . DeER    .  .   vpsubq	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: [0,50]    .    .    . DeER    .  .   vpsubw	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: [0,51]    .    .    . DeER    .  .   andnps	%xmm0, %xmm0
-# CHECK-NEXT: [0,52]    .    .    .  DeER   .  .   andnpd	%xmm1, %xmm1
-# CHECK-NEXT: [0,53]    .    .    .  DeER   .  .   vandnps	%xmm2, %xmm2, %xmm2
-# CHECK-NEXT: [0,54]    .    .    .  DeER   .  .   vandnpd	%xmm1, %xmm1, %xmm1
-# CHECK-NEXT: [0,55]    .    .    .  DeER   .  .   vandnps	%ymm2, %ymm2, %ymm2
-# CHECK-NEXT: [0,56]    .    .    .   DeER  .  .   vandnpd	%ymm1, %ymm1, %ymm1
-# CHECK-NEXT: [0,57]    .    .    .   DeER  .  .   pandn	%mm2, %mm2
-# CHECK-NEXT: [0,58]    .    .    .   DeER  .  .   pandn	%xmm2, %xmm2
-# CHECK-NEXT: [0,59]    .    .    .   DeER  .  .   vpandn	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,60]    .    .    .    DeER .  .   vpandn	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,61]    .    .    .    DeER .  .   vandnps	%xmm2, %xmm2, %xmm5
-# CHECK-NEXT: [0,62]    .    .    .    DeER .  .   vandnpd	%xmm1, %xmm1, %xmm5
-# CHECK-NEXT: [0,63]    .    .    .    DeER .  .   vpandn	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,64]    .    .    .    .DeER.  .   vandnps	%ymm2, %ymm2, %ymm5
-# CHECK-NEXT: [0,65]    .    .    .    .DeER.  .   vandnpd	%ymm1, %ymm1, %ymm5
-# CHECK-NEXT: [0,66]    .    .    .    .DeER.  .   vpandn	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: [0,67]    .    .    .    .DeER.  .   xorps	%xmm0, %xmm0
-# CHECK-NEXT: [0,68]    .    .    .    . DeER  .   xorpd	%xmm1, %xmm1
-# CHECK-NEXT: [0,69]    .    .    .    . DeER  .   vxorps	%xmm2, %xmm2, %xmm2
-# CHECK-NEXT: [0,70]    .    .    .    . DeER  .   vxorpd	%xmm1, %xmm1, %xmm1
-# CHECK-NEXT: [0,71]    .    .    .    . DeER  .   vxorps	%ymm2, %ymm2, %ymm2
-# CHECK-NEXT: [0,72]    .    .    .    .  DeER .   vxorpd	%ymm1, %ymm1, %ymm1
-# CHECK-NEXT: [0,73]    .    .    .    .  DeER .   pxor	%mm2, %mm2
-# CHECK-NEXT: [0,74]    .    .    .    .  DeER .   pxor	%xmm2, %xmm2
-# CHECK-NEXT: [0,75]    .    .    .    .  DeER .   vpxor	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,76]    .    .    .    .   DeER.   vpxor	%ymm3, %ymm3, %ymm3
-# CHECK-NEXT: [0,77]    .    .    .    .   DeER.   vxorps	%xmm4, %xmm4, %xmm5
-# CHECK-NEXT: [0,78]    .    .    .    .   DeER.   vxorpd	%xmm1, %xmm1, %xmm3
-# CHECK-NEXT: [0,79]    .    .    .    .   DeER.   vxorps	%ymm4, %ymm4, %ymm5
-# CHECK-NEXT: [0,80]    .    .    .    .    DeER   vxorpd	%ymm1, %ymm1, %ymm3
-# CHECK-NEXT: [0,81]    .    .    .    .    DeER   vpxor	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,82]    .    .    .    .    DeER   vpxor	%ymm3, %ymm3, %ymm5
+# CHECK:      [0,0]     DeER .    .    .    .    .    ..   subl	%eax, %eax
+# CHECK-NEXT: [0,1]     DeER .    .    .    .    .    ..   subq	%rax, %rax
+# CHECK-NEXT: [0,2]     DeER .    .    .    .    .    ..   xorl	%eax, %eax
+# CHECK-NEXT: [0,3]     DeER .    .    .    .    .    ..   xorq	%rax, %rax
+# CHECK-NEXT: [0,4]     .DeER.    .    .    .    .    ..   pcmpgtb	%mm2, %mm2
+# CHECK-NEXT: [0,5]     .DeER.    .    .    .    .    ..   pcmpgtd	%mm2, %mm2
+# CHECK-NEXT: [0,6]     .DeER.    .    .    .    .    ..   pcmpgtw	%mm2, %mm2
+# CHECK-NEXT: [0,7]     .DeER.    .    .    .    .    ..   pcmpgtb	%xmm2, %xmm2
+# CHECK-NEXT: [0,8]     . DeER    .    .    .    .    ..   pcmpgtd	%xmm2, %xmm2
+# CHECK-NEXT: [0,9]     . DeER    .    .    .    .    ..   pcmpgtq	%xmm2, %xmm2
+# CHECK-NEXT: [0,10]    . DeER    .    .    .    .    ..   pcmpgtw	%xmm2, %xmm2
+# CHECK-NEXT: [0,11]    . DeER    .    .    .    .    ..   vpcmpgtb	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,12]    .  DeER   .    .    .    .    ..   vpcmpgtd	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,13]    .  DeER   .    .    .    .    ..   vpcmpgtq	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,14]    .  DeER   .    .    .    .    ..   vpcmpgtw	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,15]    .  DeER   .    .    .    .    ..   vpcmpgtb	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,16]    .   DeER  .    .    .    .    ..   vpcmpgtd	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,17]    .   DeER  .    .    .    .    ..   vpcmpgtq	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,18]    .   DeER  .    .    .    .    ..   vpcmpgtw	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,19]    .    DeER .    .    .    .    ..   vpcmpgtb	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,20]    .    DeER .    .    .    .    ..   vpcmpgtd	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,21]    .    .DeER.    .    .    .    ..   vpcmpgtq	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,22]    .    .DeER.    .    .    .    ..   vpcmpgtw	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,23]    .    . DeER    .    .    .    ..   vpcmpgtb	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT: [0,24]    .    . DeER    .    .    .    ..   vpcmpgtd	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT: [0,25]    .    .  DeER   .    .    .    ..   vpcmpgtq	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT: [0,26]    .    .  DeER   .    .    .    ..   vpcmpgtw	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT: [0,27]    .    .  D=eER  .    .    .    ..   psubb	%mm2, %mm2
+# CHECK-NEXT: [0,28]    .    .   DeER  .    .    .    ..   psubd	%mm2, %mm2
+# CHECK-NEXT: [0,29]    .    .   DeER  .    .    .    ..   psubq	%mm2, %mm2
+# CHECK-NEXT: [0,30]    .    .   D=eER .    .    .    ..   psubw	%mm2, %mm2
+# CHECK-NEXT: [0,31]    .    .   D=eER .    .    .    ..   psubb	%xmm2, %xmm2
+# CHECK-NEXT: [0,32]    .    .    DeER .    .    .    ..   psubd	%xmm2, %xmm2
+# CHECK-NEXT: [0,33]    .    .    DeER .    .    .    ..   psubq	%xmm2, %xmm2
+# CHECK-NEXT: [0,34]    .    .    D=eER.    .    .    ..   psubw	%xmm2, %xmm2
+# CHECK-NEXT: [0,35]    .    .    D=eER.    .    .    ..   vpsubb	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,36]    .    .    .DeER.    .    .    ..   vpsubd	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,37]    .    .    .DeER.    .    .    ..   vpsubq	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,38]    .    .    .D=eER    .    .    ..   vpsubw	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,39]    .    .    . DeER    .    .    ..   vpsubb	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,40]    .    .    . DeER    .    .    ..   vpsubd	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,41]    .    .    .  DeER   .    .    ..   vpsubq	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,42]    .    .    .  DeER   .    .    ..   vpsubw	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,43]    .    .    .   DeER  .    .    ..   vpsubb	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,44]    .    .    .   DeER  .    .    ..   vpsubd	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,45]    .    .    .   D=eER .    .    ..   vpsubq	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,46]    .    .    .   D=eER .    .    ..   vpsubw	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,47]    .    .    .    DeER .    .    ..   vpsubb	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT: [0,48]    .    .    .    DeER .    .    ..   vpsubd	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT: [0,49]    .    .    .    .DeER.    .    ..   vpsubq	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT: [0,50]    .    .    .    .DeER.    .    ..   vpsubw	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT: [0,51]    .    .    .    . DeER    .    ..   andnps	%xmm0, %xmm0
+# CHECK-NEXT: [0,52]    .    .    .    . DeER    .    ..   andnpd	%xmm1, %xmm1
+# CHECK-NEXT: [0,53]    .    .    .    . D=eER   .    ..   vandnps	%xmm2, %xmm2, %xmm2
+# CHECK-NEXT: [0,54]    .    .    .    . D=eER   .    ..   vandnpd	%xmm1, %xmm1, %xmm1
+# CHECK-NEXT: [0,55]    .    .    .    .  DeER   .    ..   vandnps	%ymm2, %ymm2, %ymm2
+# CHECK-NEXT: [0,56]    .    .    .    .  DeER   .    ..   vandnpd	%ymm1, %ymm1, %ymm1
+# CHECK-NEXT: [0,57]    .    .    .    .   DeER  .    ..   pandn	%mm2, %mm2
+# CHECK-NEXT: [0,58]    .    .    .    .   DeER  .    ..   pandn	%xmm2, %xmm2
+# CHECK-NEXT: [0,59]    .    .    .    .   D=eER .    ..   vpandn	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,60]    .    .    .    .    DeER .    ..   vpandn	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,61]    .    .    .    .    DeER .    ..   vandnps	%xmm2, %xmm2, %xmm5
+# CHECK-NEXT: [0,62]    .    .    .    .    DeER .    ..   vandnpd	%xmm1, %xmm1, %xmm5
+# CHECK-NEXT: [0,63]    .    .    .    .    .DeER.    ..   vpandn	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,64]    .    .    .    .    .DeER.    ..   vandnps	%ymm2, %ymm2, %ymm5
+# CHECK-NEXT: [0,65]    .    .    .    .    . DeER    ..   vandnpd	%ymm1, %ymm1, %ymm5
+# CHECK-NEXT: [0,66]    .    .    .    .    . DeER    ..   vpandn	%ymm3, %ymm3, %ymm5
+# CHECK-NEXT: [0,67]    .    .    .    .    .  DeER   ..   xorps	%xmm0, %xmm0
+# CHECK-NEXT: [0,68]    .    .    .    .    .  DeER   ..   xorpd	%xmm1, %xmm1
+# CHECK-NEXT: [0,69]    .    .    .    .    .  D=eER  ..   vxorps	%xmm2, %xmm2, %xmm2
+# CHECK-NEXT: [0,70]    .    .    .    .    .  D=eER  ..   vxorpd	%xmm1, %xmm1, %xmm1
+# CHECK-NEXT: [0,71]    .    .    .    .    .   DeER  ..   vxorps	%ymm2, %ymm2, %ymm2
+# CHECK-NEXT: [0,72]    .    .    .    .    .   DeER  ..   vxorpd	%ymm1, %ymm1, %ymm1
+# CHECK-NEXT: [0,73]    .    .    .    .    .    DeER ..   pxor	%mm2, %mm2
+# CHECK-NEXT: [0,74]    .    .    .    .    .    DeER ..   pxor	%xmm2, %xmm2
+# CHECK-NEXT: [0,75]    .    .    .    .    .    D=eER..   vpxor	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,76]    .    .    .    .    .    .DeER..   vpxor	%ymm3, %ymm3, %ymm3
+# CHECK-NEXT: [0,77]    .    .    .    .    .    .DeER..   vxorps	%xmm4, %xmm4, %xmm5
+# CHECK-NEXT: [0,78]    .    .    .    .    .    .DeER..   vxorpd	%xmm1, %xmm1, %xmm3
+# CHECK-NEXT: [0,79]    .    .    .    .    .    . DeER.   vxorps	%ymm4, %ymm4, %ymm5
+# CHECK-NEXT: [0,80]    .    .    .    .    .    . DeER.   vxorpd	%ymm1, %ymm1, %ymm3
+# CHECK-NEXT: [0,81]    .    .    .    .    .    .  DeER   vpxor	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,82]    .    .    .    .    .    .  DeER   vpxor	%ymm3, %ymm3, %ymm5
 
 # CHECK:      Average Wait times (based on the timeline view):
 # CHECK-NEXT: [0]: Executions
@@ -441,39 +441,39 @@ vpxor  %ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 24.    1     1.0    1.0    0.0       vpcmpgtd	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 25.    1     1.0    1.0    0.0       vpcmpgtq	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 26.    1     1.0    1.0    0.0       vpcmpgtw	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT: 27.    1     1.0    1.0    0.0       psubb	%mm2, %mm2
+# CHECK-NEXT: 27.    1     2.0    2.0    0.0       psubb	%mm2, %mm2
 # CHECK-NEXT: 28.    1     1.0    1.0    0.0       psubd	%mm2, %mm2
 # CHECK-NEXT: 29.    1     1.0    1.0    0.0       psubq	%mm2, %mm2
-# CHECK-NEXT: 30.    1     1.0    1.0    0.0       psubw	%mm2, %mm2
-# CHECK-NEXT: 31.    1     1.0    1.0    0.0       psubb	%xmm2, %xmm2
+# CHECK-NEXT: 30.    1     2.0    2.0    0.0       psubw	%mm2, %mm2
+# CHECK-NEXT: 31.    1     2.0    2.0    0.0       psubb	%xmm2, %xmm2
 # CHECK-NEXT: 32.    1     1.0    1.0    0.0       psubd	%xmm2, %xmm2
 # CHECK-NEXT: 33.    1     1.0    1.0    0.0       psubq	%xmm2, %xmm2
-# CHECK-NEXT: 34.    1     1.0    1.0    0.0       psubw	%xmm2, %xmm2
-# CHECK-NEXT: 35.    1     1.0    1.0    0.0       vpsubb	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 34.    1     2.0    2.0    0.0       psubw	%xmm2, %xmm2
+# CHECK-NEXT: 35.    1     2.0    2.0    0.0       vpsubb	%xmm3, %xmm3, %xmm3
 # CHECK-NEXT: 36.    1     1.0    1.0    0.0       vpsubd	%xmm3, %xmm3, %xmm3
 # CHECK-NEXT: 37.    1     1.0    1.0    0.0       vpsubq	%xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 38.    1     1.0    1.0    0.0       vpsubw	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 38.    1     2.0    2.0    0.0       vpsubw	%xmm3, %xmm3, %xmm3
 # CHECK-NEXT: 39.    1     1.0    1.0    0.0       vpsubb	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT: 40.    1     1.0    1.0    0.0       vpsubd	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT: 41.    1     1.0    1.0    0.0       vpsubq	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT: 42.    1     1.0    1.0    0.0       vpsubw	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT: 43.    1     1.0    1.0    0.0       vpsubb	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT: 44.    1     1.0    1.0    0.0       vpsubd	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 45.    1     1.0    1.0    0.0       vpsubq	%xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 46.    1     1.0    1.0    0.0       vpsubw	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 45.    1     2.0    2.0    0.0       vpsubq	%xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 46.    1     2.0    2.0    0.0       vpsubw	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT: 47.    1     1.0    1.0    0.0       vpsubb	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 48.    1     1.0    1.0    0.0       vpsubd	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 49.    1     1.0    1.0    0.0       vpsubq	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 50.    1     1.0    1.0    0.0       vpsubw	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 51.    1     1.0    1.0    0.0       andnps	%xmm0, %xmm0
 # CHECK-NEXT: 52.    1     1.0    1.0    0.0       andnpd	%xmm1, %xmm1
-# CHECK-NEXT: 53.    1     1.0    1.0    0.0       vandnps	%xmm2, %xmm2, %xmm2
-# CHECK-NEXT: 54.    1     1.0    1.0    0.0       vandnpd	%xmm1, %xmm1, %xmm1
+# CHECK-NEXT: 53.    1     2.0    2.0    0.0       vandnps	%xmm2, %xmm2, %xmm2
+# CHECK-NEXT: 54.    1     2.0    2.0    0.0       vandnpd	%xmm1, %xmm1, %xmm1
 # CHECK-NEXT: 55.    1     1.0    1.0    0.0       vandnps	%ymm2, %ymm2, %ymm2
 # CHECK-NEXT: 56.    1     1.0    1.0    0.0       vandnpd	%ymm1, %ymm1, %ymm1
 # CHECK-NEXT: 57.    1     1.0    1.0    0.0       pandn	%mm2, %mm2
 # CHECK-NEXT: 58.    1     1.0    1.0    0.0       pandn	%xmm2, %xmm2
-# CHECK-NEXT: 59.    1     1.0    1.0    0.0       vpandn	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 59.    1     2.0    2.0    0.0       vpandn	%xmm3, %xmm3, %xmm3
 # CHECK-NEXT: 60.    1     1.0    1.0    0.0       vpandn	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT: 61.    1     1.0    1.0    0.0       vandnps	%xmm2, %xmm2, %xmm5
 # CHECK-NEXT: 62.    1     1.0    1.0    0.0       vandnpd	%xmm1, %xmm1, %xmm5
@@ -483,13 +483,13 @@ vpxor  %ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 66.    1     1.0    1.0    0.0       vpandn	%ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 67.    1     1.0    1.0    0.0       xorps	%xmm0, %xmm0
 # CHECK-NEXT: 68.    1     1.0    1.0    0.0       xorpd	%xmm1, %xmm1
-# CHECK-NEXT: 69.    1     1.0    1.0    0.0       vxorps	%xmm2, %xmm2, %xmm2
-# CHECK-NEXT: 70.    1     1.0    1.0    0.0       vxorpd	%xmm1, %xmm1, %xmm1
+# CHECK-NEXT: 69.    1     2.0    2.0    0.0       vxorps	%xmm2, %xmm2, %xmm2
+# CHECK-NEXT: 70.    1     2.0    2.0    0.0       vxorpd	%xmm1, %xmm1, %xmm1
 # CHECK-NEXT: 71.    1     1.0    1.0    0.0       vxorps	%ymm2, %ymm2, %ymm2
 # CHECK-NEXT: 72.    1     1.0    1.0    0.0       vxorpd	%ymm1, %ymm1, %ymm1
 # CHECK-NEXT: 73.    1     1.0    1.0    0.0       pxor	%mm2, %mm2
 # CHECK-NEXT: 74.    1     1.0    1.0    0.0       pxor	%xmm2, %xmm2
-# CHECK-NEXT: 75.    1     1.0    1.0    0.0       vpxor	%xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 75.    1     2.0    2.0    0.0       vpxor	%xmm3, %xmm3, %xmm3
 # CHECK-NEXT: 76.    1     1.0    1.0    0.0       vpxor	%ymm3, %ymm3, %ymm3
 # CHECK-NEXT: 77.    1     1.0    1.0    0.0       vxorps	%xmm4, %xmm4, %xmm5
 # CHECK-NEXT: 78.    1     1.0    1.0    0.0       vxorpd	%xmm1, %xmm1, %xmm3
@@ -497,4 +497,4 @@ vpxor  %ymm3, %ymm3, %ymm5
 # CHECK-NEXT: 80.    1     1.0    1.0    0.0       vxorpd	%ymm1, %ymm1, %ymm3
 # CHECK-NEXT: 81.    1     1.0    1.0    0.0       vpxor	%xmm3, %xmm3, %xmm5
 # CHECK-NEXT: 82.    1     1.0    1.0    0.0       vpxor	%ymm3, %ymm3, %ymm5
-# CHECK-NEXT:        1     1.0    1.0    0.0       <total>
+# CHECK-NEXT:        1     1.2    1.2    0.0       <total>

diff  --git a/llvm/test/tools/llvm-mca/X86/read-after-ld-2.s b/llvm/test/tools/llvm-mca/X86/read-after-ld-2.s
index 53f9fb08b2fcc..fc6a825af347e 100644
--- a/llvm/test/tools/llvm-mca/X86/read-after-ld-2.s
+++ b/llvm/test/tools/llvm-mca/X86/read-after-ld-2.s
@@ -30,8 +30,8 @@ cmp     %edi, %edx
 # SKYLAKE-NEXT: Total Cycles:      110
 # SKYLAKE-NEXT: Total uOps:        500
 
-# ZNVER1-NEXT:  Total Cycles:      110
-# ZNVER1-NEXT:  Total uOps:        400
+# ZNVER1-NEXT:  Total Cycles:      143
+# ZNVER1-NEXT:  Total uOps:        500
 
 # ZNVER2-NEXT:  Total Cycles:      110
 # ZNVER2-NEXT:  Total uOps:        400
@@ -52,9 +52,9 @@ cmp     %edi, %edx
 # SKYLAKE-NEXT: Block RThroughput: 0.8
 
 # ZNVER1:       Dispatch Width:    4
-# ZNVER1-NEXT:  uOps Per Cycle:    3.64
-# ZNVER1-NEXT:  IPC:               3.64
-# ZNVER1-NEXT:  Block RThroughput: 1.0
+# ZNVER1-NEXT:  uOps Per Cycle:    3.50
+# ZNVER1-NEXT:  IPC:               2.80
+# ZNVER1-NEXT:  Block RThroughput: 1.3
 
 # ZNVER2:       Dispatch Width:    4
 # ZNVER2-NEXT:  uOps Per Cycle:    3.64
@@ -73,7 +73,7 @@ cmp     %edi, %edx
 # SKYLAKE-NEXT: Index     0123456789
 
 # ZNVER1-NEXT:                      0123456789
-# ZNVER1-NEXT:  Index     0123456789
+# ZNVER1-NEXT:  Index     0123456789          012
 
 # ZNVER2-NEXT:                      0123456789
 # ZNVER2-NEXT:  Index     0123456789
@@ -201,46 +201,46 @@ cmp     %edi, %edx
 # SKYLAKE-NEXT: [9,2]     .    .   DeE-------R   addq	$32, %r8
 # SKYLAKE-NEXT: [9,3]     .    .   D=eE------R   cmpl	%edi, %edx
 
-# ZNVER1:       [0,0]     DeER .    .    .   .   addl	$1, %edx
-# ZNVER1-NEXT:  [0,1]     DeeeeeeeeER    .   .   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [0,2]     DeE-------R    .   .   addq	$32, %r8
-# ZNVER1-NEXT:  [0,3]     D=eE------R    .   .   cmpl	%edi, %edx
-# ZNVER1-NEXT:  [1,0]     .DeE------R    .   .   addl	$1, %edx
-# ZNVER1-NEXT:  [1,1]     .DeeeeeeeeER   .   .   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [1,2]     .DeE-------R   .   .   addq	$32, %r8
-# ZNVER1-NEXT:  [1,3]     .D=eE------R   .   .   cmpl	%edi, %edx
-# ZNVER1-NEXT:  [2,0]     . DeE------R   .   .   addl	$1, %edx
-# ZNVER1-NEXT:  [2,1]     . DeeeeeeeeER  .   .   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [2,2]     . DeE-------R  .   .   addq	$32, %r8
-# ZNVER1-NEXT:  [2,3]     . D=eE------R  .   .   cmpl	%edi, %edx
-# ZNVER1-NEXT:  [3,0]     .  DeE------R  .   .   addl	$1, %edx
-# ZNVER1-NEXT:  [3,1]     .  DeeeeeeeeER .   .   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [3,2]     .  DeE-------R .   .   addq	$32, %r8
-# ZNVER1-NEXT:  [3,3]     .  D=eE------R .   .   cmpl	%edi, %edx
-# ZNVER1-NEXT:  [4,0]     .   DeE------R .   .   addl	$1, %edx
-# ZNVER1-NEXT:  [4,1]     .   DeeeeeeeeER.   .   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [4,2]     .   DeE-------R.   .   addq	$32, %r8
-# ZNVER1-NEXT:  [4,3]     .   D=eE------R.   .   cmpl	%edi, %edx
-# ZNVER1-NEXT:  [5,0]     .    DeE------R.   .   addl	$1, %edx
-# ZNVER1-NEXT:  [5,1]     .    DeeeeeeeeER   .   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [5,2]     .    DeE-------R   .   addq	$32, %r8
-# ZNVER1-NEXT:  [5,3]     .    D=eE------R   .   cmpl	%edi, %edx
-# ZNVER1-NEXT:  [6,0]     .    .DeE------R   .   addl	$1, %edx
-# ZNVER1-NEXT:  [6,1]     .    .DeeeeeeeeER  .   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [6,2]     .    .DeE-------R  .   addq	$32, %r8
-# ZNVER1-NEXT:  [6,3]     .    .D=eE------R  .   cmpl	%edi, %edx
-# ZNVER1-NEXT:  [7,0]     .    . DeE------R  .   addl	$1, %edx
-# ZNVER1-NEXT:  [7,1]     .    . DeeeeeeeeER .   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [7,2]     .    . DeE-------R .   addq	$32, %r8
-# ZNVER1-NEXT:  [7,3]     .    . D=eE------R .   cmpl	%edi, %edx
-# ZNVER1-NEXT:  [8,0]     .    .  DeE------R .   addl	$1, %edx
-# ZNVER1-NEXT:  [8,1]     .    .  DeeeeeeeeER.   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [8,2]     .    .  DeE-------R.   addq	$32, %r8
-# ZNVER1-NEXT:  [8,3]     .    .  D=eE------R.   cmpl	%edi, %edx
-# ZNVER1-NEXT:  [9,0]     .    .   DeE------R.   addl	$1, %edx
-# ZNVER1-NEXT:  [9,1]     .    .   DeeeeeeeeER   vpaddd	(%r8), %ymm0, %ymm0
-# ZNVER1-NEXT:  [9,2]     .    .   DeE-------R   addq	$32, %r8
-# ZNVER1-NEXT:  [9,3]     .    .   D=eE------R   cmpl	%edi, %edx
+# ZNVER1:       [0,0]     DeER .    .    .    . .   addl	$1, %edx
+# ZNVER1-NEXT:  [0,1]     DeeeeeeeeER    .    . .   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [0,2]     DeE-------R    .    . .   addq	$32, %r8
+# ZNVER1-NEXT:  [0,3]     .DeE------R    .    . .   cmpl	%edi, %edx
+# ZNVER1-NEXT:  [1,0]     .DeE------R    .    . .   addl	$1, %edx
+# ZNVER1-NEXT:  [1,1]     .DeeeeeeeeER   .    . .   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [1,2]     . DeE------R   .    . .   addq	$32, %r8
+# ZNVER1-NEXT:  [1,3]     . DeE------R   .    . .   cmpl	%edi, %edx
+# ZNVER1-NEXT:  [2,0]     . DeE------R   .    . .   addl	$1, %edx
+# ZNVER1-NEXT:  [2,1]     .  DeeeeeeeeER .    . .   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [2,2]     .  DeE-------R .    . .   addq	$32, %r8
+# ZNVER1-NEXT:  [2,3]     .  DeE-------R .    . .   cmpl	%edi, %edx
+# ZNVER1-NEXT:  [3,0]     .   DeE------R .    . .   addl	$1, %edx
+# ZNVER1-NEXT:  [3,1]     .   DeeeeeeeeER.    . .   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [3,2]     .   DeE-------R.    . .   addq	$32, %r8
+# ZNVER1-NEXT:  [3,3]     .    DeE------R.    . .   cmpl	%edi, %edx
+# ZNVER1-NEXT:  [4,0]     .    DeE------R.    . .   addl	$1, %edx
+# ZNVER1-NEXT:  [4,1]     .    DeeeeeeeeER    . .   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [4,2]     .    .DeE------R    . .   addq	$32, %r8
+# ZNVER1-NEXT:  [4,3]     .    .DeE------R    . .   cmpl	%edi, %edx
+# ZNVER1-NEXT:  [5,0]     .    .DeE------R    . .   addl	$1, %edx
+# ZNVER1-NEXT:  [5,1]     .    . DeeeeeeeeER  . .   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [5,2]     .    . DeE-------R  . .   addq	$32, %r8
+# ZNVER1-NEXT:  [5,3]     .    . DeE-------R  . .   cmpl	%edi, %edx
+# ZNVER1-NEXT:  [6,0]     .    .  DeE------R  . .   addl	$1, %edx
+# ZNVER1-NEXT:  [6,1]     .    .  DeeeeeeeeER . .   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [6,2]     .    .  DeE-------R . .   addq	$32, %r8
+# ZNVER1-NEXT:  [6,3]     .    .   DeE------R . .   cmpl	%edi, %edx
+# ZNVER1-NEXT:  [7,0]     .    .   DeE------R . .   addl	$1, %edx
+# ZNVER1-NEXT:  [7,1]     .    .   DeeeeeeeeER. .   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [7,2]     .    .    DeE------R. .   addq	$32, %r8
+# ZNVER1-NEXT:  [7,3]     .    .    DeE------R. .   cmpl	%edi, %edx
+# ZNVER1-NEXT:  [8,0]     .    .    DeE------R. .   addl	$1, %edx
+# ZNVER1-NEXT:  [8,1]     .    .    .DeeeeeeeeER.   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [8,2]     .    .    .DeE-------R.   addq	$32, %r8
+# ZNVER1-NEXT:  [8,3]     .    .    .DeE-------R.   cmpl	%edi, %edx
+# ZNVER1-NEXT:  [9,0]     .    .    . DeE------R.   addl	$1, %edx
+# ZNVER1-NEXT:  [9,1]     .    .    . DeeeeeeeeER   vpaddd	(%r8), %ymm0, %ymm0
+# ZNVER1-NEXT:  [9,2]     .    .    . DeE-------R   addq	$32, %r8
+# ZNVER1-NEXT:  [9,3]     .    .    .  DeE------R   cmpl	%edi, %edx
 
 # ZNVER2:       [0,0]     DeER .    .    .   .   addl	$1, %edx
 # ZNVER2-NEXT:  [0,1]     DeeeeeeeeER    .   .   vpaddd	(%r8), %ymm0, %ymm0
@@ -294,7 +294,7 @@ cmp     %edi, %edx
 # BDWELL-NEXT:  0.     10    1.0    0.4    4.5       addl	$1, %edx
 # HASWELL-NEXT: 0.     10    1.0    0.4    5.4       addl	$1, %edx
 # SKYLAKE-NEXT: 0.     10    1.9    0.1    5.4       addl	$1, %edx
-# ZNVER1-NEXT:  0.     10    1.0    0.1    5.4       addl	$1, %edx
+# ZNVER1-NEXT:  0.     10    1.0    0.4    5.4       addl	$1, %edx
 # ZNVER2-NEXT:  0.     10    1.0    0.1    5.4       addl	$1, %edx
 
 # ALL-NEXT:     1.     10    1.0    0.1    0.0       vpaddd	(%r8), %ymm0, %ymm0
@@ -311,9 +311,9 @@ cmp     %edi, %edx
 # SKYLAKE-NEXT: 3.     10    2.0    0.0    6.0       cmpl	%edi, %edx
 # SKYLAKE-NEXT:        10    1.5    0.1    4.6       <total>
 
-# ZNVER1-NEXT:  2.     10    1.0    0.1    7.0       addq	$32, %r8
-# ZNVER1-NEXT:  3.     10    2.0    0.0    6.0       cmpl	%edi, %edx
-# ZNVER1-NEXT:         10    1.3    0.1    4.6       <total>
+# ZNVER1-NEXT:  2.     10    1.0    0.4    6.7       addq	$32, %r8
+# ZNVER1-NEXT:  3.     10    1.0    0.0    6.3       cmpl	%edi, %edx
+# ZNVER1-NEXT:         10    1.0    0.2    4.6       <total>
 
 # ZNVER2-NEXT:  2.     10    1.0    0.1    7.0       addq	$32, %r8
 # ZNVER2-NEXT:  3.     10    2.0    0.0    6.0       cmpl	%edi, %edx


        


More information about the llvm-commits mailing list