[llvm] 1e0ee9c - [X86] Fix znver4 fcmp/fma throughputs
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Sat Jul 15 07:50:35 PDT 2023
Author: Simon Pilgrim
Date: 2023-07-15T15:46:16+01:00
New Revision: 1e0ee9c9e0e8bc39bfc56f3a6d96562e88593a8b
URL: https://github.com/llvm/llvm-project/commit/1e0ee9c9e0e8bc39bfc56f3a6d96562e88593a8b
DIFF: https://github.com/llvm/llvm-project/commit/1e0ee9c9e0e8bc39bfc56f3a6d96562e88593a8b.diff
LOG: [X86] Fix znver4 fcmp/fma throughputs
Reported by SeeSpring - it looks like when the numbers were copied from the znver3 model, the resources were altered when it should have just been the latency.
Now matches uops.info / Agner / AMD SoG
Fixes #63877
Added:
Modified:
llvm/lib/Target/X86/X86ScheduleZnver4.td
llvm/test/tools/llvm-mca/X86/Znver4/resources-avx1.s
llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512.s
llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dq.s
llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dqvl.s
llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512vl.s
llvm/test/tools/llvm-mca/X86/Znver4/resources-fma.s
llvm/test/tools/llvm-mca/X86/Znver4/resources-sse1.s
llvm/test/tools/llvm-mca/X86/Znver4/resources-sse2.s
Removed:
################################################################################
diff --git a/llvm/lib/Target/X86/X86ScheduleZnver4.td b/llvm/lib/Target/X86/X86ScheduleZnver4.td
index c3f08998419fc2..269d77374beb30 100644
--- a/llvm/lib/Target/X86/X86ScheduleZnver4.td
+++ b/llvm/lib/Target/X86/X86ScheduleZnver4.td
@@ -908,13 +908,13 @@ defm : Zn4WriteResXMMPair<WriteFAdd64X, [Zn4FPFAdd01], 3, [1], 1>; // Floating p
defm : Zn4WriteResYMMPair<WriteFAdd64Y, [Zn4FPFAdd01], 3, [1], 1>; // Floating point double add/sub (YMM).
defm : Zn4WriteResZMMPair<WriteFAdd64Z, [Zn4FPFAdd01], 3, [2], 1>; // Floating point double add/sub (ZMM).
defm : Zn4WriteResXMMPair<WriteFCmp, [Zn4FPFMul01], 2, [2], 1>; // Floating point compare.
-defm : Zn4WriteResXMMPair<WriteFCmpX, [Zn4FPFMul01], 1, [1], 1>; // Floating point compare (XMM).
-defm : Zn4WriteResYMMPair<WriteFCmpY, [Zn4FPFMul01], 2, [2], 1>; // Floating point compare (YMM).
-defm : Zn4WriteResZMMPair<WriteFCmpZ, [Zn4FPFMul01], 2, [4], 1>; // Floating point compare (ZMM).
+defm : Zn4WriteResXMMPair<WriteFCmpX, [Zn4FPFMul01], 2, [1], 1>; // Floating point compare (XMM).
+defm : Zn4WriteResYMMPair<WriteFCmpY, [Zn4FPFMul01], 2, [1], 1>; // Floating point compare (YMM).
+defm : Zn4WriteResZMMPair<WriteFCmpZ, [Zn4FPFMul01], 2, [2], 1>; // Floating point compare (ZMM).
defm : Zn4WriteResXMMPair<WriteFCmp64, [Zn4FPFMul01], 1, [1], 1>; // Floating point double compare.
-defm : Zn4WriteResXMMPair<WriteFCmp64X, [Zn4FPFMul01], 1, [1], 1>; // Floating point double compare (XMM).
-defm : Zn4WriteResYMMPair<WriteFCmp64Y, [Zn4FPFMul01], 2, [2], 1>; // Floating point double compare (YMM).
-defm : Zn4WriteResZMMPair<WriteFCmp64Z, [Zn4FPFMul01], 2, [4], 1>; // Floating point double compare (ZMM).
+defm : Zn4WriteResXMMPair<WriteFCmp64X, [Zn4FPFMul01], 2, [1], 1>; // Floating point double compare (XMM).
+defm : Zn4WriteResYMMPair<WriteFCmp64Y, [Zn4FPFMul01], 2, [1], 1>; // Floating point double compare (YMM).
+defm : Zn4WriteResZMMPair<WriteFCmp64Z, [Zn4FPFMul01], 2, [2], 1>; // Floating point double compare (ZMM).
defm : Zn4WriteResXMMPair<WriteFCom, [Zn4FPFMul01], 3, [2], 1>; // FIXME: latency not from llvm-exegesis // Floating point compare to flags (X87).
defm : Zn4WriteResXMMPair<WriteFComX, [Zn4FPFMul01], 4, [2], 2>; // FIXME: latency not from llvm-exegesis // Floating point compare to flags (SSE).
defm : Zn4WriteResXMMPair<WriteFMul, [Zn4FPFMul01], 3, [1], 1>; // Floating point multiplication.
@@ -951,9 +951,9 @@ defm : Zn4WriteResXMMPair<WriteFRsqrtX, [Zn4FPFDiv], 4, [1], 1>; // Floating poi
defm : Zn4WriteResYMMPair<WriteFRsqrtY, [Zn4FPFDiv], 4, [1], 1>; // Floating point reciprocal square root estimate (YMM).
defm : Zn4WriteResZMMPair<WriteFRsqrtZ, [Zn4FPFDiv], 5, [2], 1>; // Floating point reciprocal square root estimate (ZMM).
defm : Zn4WriteResXMMPair<WriteFMA, [Zn4FPFMul01], 4, [2], 1>; // Fused Multiply Add.
-defm : Zn4WriteResXMMPair<WriteFMAX, [Zn4FPFMul01], 4, [2], 1>; // Fused Multiply Add (XMM).
-defm : Zn4WriteResYMMPair<WriteFMAY, [Zn4FPFMul01], 4, [2], 1>; // Fused Multiply Add (YMM).
-defm : Zn4WriteResZMMPair<WriteFMAZ, [Zn4FPFMul01], 4, [4], 1>; // Fused Multiply Add (ZMM).
+defm : Zn4WriteResXMMPair<WriteFMAX, [Zn4FPFMul01], 4, [1], 1>; // Fused Multiply Add (XMM).
+defm : Zn4WriteResYMMPair<WriteFMAY, [Zn4FPFMul01], 4, [1], 1>; // Fused Multiply Add (YMM).
+defm : Zn4WriteResZMMPair<WriteFMAZ, [Zn4FPFMul01], 4, [2], 1>; // Fused Multiply Add (ZMM).
defm : Zn4WriteResXMMPair<WriteDPPD, [Zn4FPFMul01], 7, [6], 3, /*LoadUOps=*/2>; // Floating point double dot product.
defm : Zn4WriteResXMMPair<WriteDPPS, [Zn4FPFMul01], 11, [8], 8, /*LoadUOps=*/2>; // Floating point single dot product.
defm : Zn4WriteResYMMPair<WriteDPPSY, [Zn4FPFMul01], 11, [8], 7, /*LoadUOps=*/1>; // Floating point single dot product (YMM).
diff --git a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx1.s b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx1.s
index ab3d2413c3f6d9..5a5cb305c42584 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx1.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx1.s
@@ -1099,13 +1099,13 @@ vzeroupper
# CHECK-NEXT: 1 8 0.50 * vbroadcastss (%rax), %xmm2
# CHECK-NEXT: 1 8 0.50 * vbroadcastss (%rax), %ymm2
# CHECK-NEXT: 1 2 1.00 vcmpeqpd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 8 0.50 * vcmpeqpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 2 1.00 vcmpeqpd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 9 1.00 * vcmpeqpd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 2 0.50 vcmpeqpd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 2 1.00 vcmpeqps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 8 0.50 * vcmpeqps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 2 1.00 vcmpeqps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 9 1.00 * vcmpeqps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 2 0.50 vcmpeqps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 2 1.00 vcmpeqsd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 8 0.50 * vcmpeqsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 2 1.00 vcmpeqss %xmm0, %xmm1, %xmm2
@@ -1228,26 +1228,26 @@ vzeroupper
# CHECK-NEXT: 1 8 0.50 * vmaskmovps (%rax), %ymm0, %ymm2
# CHECK-NEXT: 18 1 6.00 * * vmaskmovps %xmm0, %xmm1, (%rax)
# CHECK-NEXT: 42 1 12.00 * * vmaskmovps %ymm0, %ymm1, (%rax)
-# CHECK-NEXT: 1 1 0.50 vmaxpd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 8 0.50 * vmaxpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 2 1.00 vmaxpd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 1 0.50 vmaxps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 8 0.50 * vmaxps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 2 1.00 vmaxps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 2 0.50 vmaxpd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 2 0.50 vmaxpd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 2 0.50 vmaxps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 2 0.50 vmaxps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 2 1.00 vmaxsd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 8 0.50 * vmaxsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 2 1.00 vmaxss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 9 1.00 * vmaxss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 1 0.50 vminpd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 8 0.50 * vminpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 2 1.00 vminpd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 9 1.00 * vminpd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 1 0.50 vminps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 8 0.50 * vminps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 2 1.00 vminps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 9 1.00 * vminps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 2 0.50 vminpd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 2 0.50 vminpd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 2 0.50 vminps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 2 0.50 vminps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 2 1.00 vminsd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 8 0.50 * vminsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 2 1.00 vminss %xmm0, %xmm1, %xmm2
@@ -1749,7 +1749,7 @@ vzeroupper
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1]
-# CHECK-NEXT: 1.33 1.33 1.33 16.50 16.50 16.50 16.50 - 211.25 420.08 288.58 158.08 208.50 208.50 65.00 119.67 119.67 119.67 107.00 107.00 107.00 19.00 19.00
+# CHECK-NEXT: 1.33 1.33 1.33 16.50 16.50 16.50 16.50 - 205.25 414.08 288.58 158.08 208.50 208.50 65.00 119.67 119.67 119.67 107.00 107.00 107.00 19.00 19.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1] Instructions:
@@ -1823,12 +1823,12 @@ vzeroupper
# CHECK-NEXT: - - - - - - - - - 0.50 0.50 - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vbroadcastss (%rax), %ymm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqpd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqpd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vcmpeqpd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqps %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vcmpeqps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqsd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqss %xmm0, %xmm1, %xmm2
@@ -1953,24 +1953,24 @@ vzeroupper
# CHECK-NEXT: - - - - - - - - - - - - 6.00 6.00 12.00 0.33 0.33 0.33 - - - 0.50 0.50 vmaskmovps %ymm0, %ymm1, (%rax)
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vmaxpd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxpd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vmaxpd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vmaxps %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vmaxps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxsd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxss (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vminpd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminpd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vminpd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vminps %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vminps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminsd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminss %xmm0, %xmm1, %xmm2
diff --git a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512.s b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512.s
index ea1b1da108f110..4fb89645febce6 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512.s
@@ -1084,18 +1084,18 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 3 9 1.00 * vbroadcastss (%rax), %zmm19 {%k1}
# CHECK-NEXT: 1 2 1.00 vbroadcastss %xmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 3 9 1.00 * vbroadcastss (%rax), %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 2 2.00 vcmpeqpd %zmm0, %zmm1, %k2
-# CHECK-NEXT: 1 9 2.00 * vcmpeqpd (%rax), %zmm1, %k2
-# CHECK-NEXT: 1 9 2.00 * vcmpeqpd (%rax){1to8}, %zmm1, %k2
-# CHECK-NEXT: 1 2 2.00 vcmpeqpd %zmm0, %zmm1, %k2 {%k3}
-# CHECK-NEXT: 1 9 2.00 * vcmpeqpd (%rax), %zmm1, %k2 {%k3}
-# CHECK-NEXT: 1 9 2.00 * vcmpeqpd (%rax){1to8}, %zmm1, %k2 {%k3}
-# CHECK-NEXT: 1 2 2.00 vcmpeqps %zmm0, %zmm1, %k2
-# CHECK-NEXT: 1 9 2.00 * vcmpeqps (%rax), %zmm1, %k2
-# CHECK-NEXT: 1 9 2.00 * vcmpeqps (%rax){1to16}, %zmm1, %k2
-# CHECK-NEXT: 1 2 2.00 vcmpeqps %zmm0, %zmm1, %k2 {%k3}
-# CHECK-NEXT: 1 9 2.00 * vcmpeqps (%rax), %zmm1, %k2 {%k3}
-# CHECK-NEXT: 1 9 2.00 * vcmpeqps (%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT: 1 2 1.00 vcmpeqpd %zmm0, %zmm1, %k2
+# CHECK-NEXT: 1 9 1.00 * vcmpeqpd (%rax), %zmm1, %k2
+# CHECK-NEXT: 1 9 1.00 * vcmpeqpd (%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT: 1 2 1.00 vcmpeqpd %zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 1.00 * vcmpeqpd (%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 1.00 * vcmpeqpd (%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT: 1 2 1.00 vcmpeqps %zmm0, %zmm1, %k2
+# CHECK-NEXT: 1 9 1.00 * vcmpeqps (%rax), %zmm1, %k2
+# CHECK-NEXT: 1 9 1.00 * vcmpeqps (%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT: 1 2 1.00 vcmpeqps %zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 1.00 * vcmpeqps (%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 1.00 * vcmpeqps (%rax){1to16}, %zmm1, %k2 {%k3}
# CHECK-NEXT: 1 2 1.00 vcmpeqsd %xmm0, %xmm1, %k2
# CHECK-NEXT: 1 9 1.00 * vcmpeqsd (%rax), %xmm1, %k2
# CHECK-NEXT: 1 2 1.00 vcmpeqsd %xmm0, %xmm1, %k2 {%k3}
@@ -1279,41 +1279,41 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 1 5 0.33 * vgatherqpd (%rax,%zmm1,2), %zmm2 {%k1}
# CHECK-NEXT: 1 5 0.33 * vgatherqps (%rax,%zmm1,2), %ymm2 {%k1}
# CHECK-NEXT: 1 2 1.00 vmaxpd %zmm16, %zmm17, %zmm19
-# CHECK-NEXT: 1 9 2.00 * vmaxpd (%rax), %zmm17, %zmm19
-# CHECK-NEXT: 1 9 2.00 * vmaxpd (%rax){1to8}, %zmm17, %zmm19
+# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax), %zmm17, %zmm19
+# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax){1to8}, %zmm17, %zmm19
# CHECK-NEXT: 1 2 1.00 vmaxpd %zmm16, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 9 2.00 * vmaxpd (%rax), %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 9 2.00 * vmaxpd (%rax){1to8}, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax){1to8}, %zmm17, %zmm19 {%k1}
# CHECK-NEXT: 1 2 1.00 vmaxpd %zmm16, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 9 2.00 * vmaxpd (%rax), %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 9 2.00 * vmaxpd (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 2 2.00 vmaxps %zmm16, %zmm17, %zmm19
-# CHECK-NEXT: 1 9 2.00 * vmaxps (%rax), %zmm17, %zmm19
-# CHECK-NEXT: 1 9 2.00 * vmaxps (%rax){1to16}, %zmm17, %zmm19
-# CHECK-NEXT: 1 2 2.00 vmaxps %zmm16, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 9 2.00 * vmaxps (%rax), %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 9 2.00 * vmaxps (%rax){1to16}, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 2 2.00 vmaxps %zmm16, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 9 2.00 * vmaxps (%rax), %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 9 2.00 * vmaxps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 2 1.00 vmaxps %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax), %zmm17, %zmm19
+# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax){1to16}, %zmm17, %zmm19
+# CHECK-NEXT: 1 2 1.00 vmaxps %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax){1to16}, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 2 1.00 vmaxps %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 1 2 1.00 vminpd %zmm16, %zmm17, %zmm19
-# CHECK-NEXT: 1 9 2.00 * vminpd (%rax), %zmm17, %zmm19
-# CHECK-NEXT: 1 9 2.00 * vminpd (%rax){1to8}, %zmm17, %zmm19
+# CHECK-NEXT: 1 9 1.00 * vminpd (%rax), %zmm17, %zmm19
+# CHECK-NEXT: 1 9 1.00 * vminpd (%rax){1to8}, %zmm17, %zmm19
# CHECK-NEXT: 1 2 1.00 vminpd %zmm16, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 9 2.00 * vminpd (%rax), %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 9 2.00 * vminpd (%rax){1to8}, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 9 1.00 * vminpd (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 9 1.00 * vminpd (%rax){1to8}, %zmm17, %zmm19 {%k1}
# CHECK-NEXT: 1 2 1.00 vminpd %zmm16, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 9 2.00 * vminpd (%rax), %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 9 2.00 * vminpd (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 2 2.00 vminps %zmm16, %zmm17, %zmm19
-# CHECK-NEXT: 1 9 2.00 * vminps (%rax), %zmm17, %zmm19
-# CHECK-NEXT: 1 9 2.00 * vminps (%rax){1to16}, %zmm17, %zmm19
-# CHECK-NEXT: 1 2 2.00 vminps %zmm16, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 9 2.00 * vminps (%rax), %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 9 2.00 * vminps (%rax){1to16}, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: 1 2 2.00 vminps %zmm16, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 9 2.00 * vminps (%rax), %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: 1 9 2.00 * vminps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 1.00 * vminpd (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 1.00 * vminpd (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 2 1.00 vminps %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: 1 9 1.00 * vminps (%rax), %zmm17, %zmm19
+# CHECK-NEXT: 1 9 1.00 * vminps (%rax){1to16}, %zmm17, %zmm19
+# CHECK-NEXT: 1 2 1.00 vminps %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 9 1.00 * vminps (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 9 1.00 * vminps (%rax){1to16}, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: 1 2 1.00 vminps %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 1.00 * vminps (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 1.00 * vminps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 1 0 0.17 vmovapd %zmm16, %zmm19
# CHECK-NEXT: 1 8 0.50 * vmovapd (%rax), %zmm19
# CHECK-NEXT: 1 1 1.00 * vmovapd %zmm16, (%rax)
@@ -1928,7 +1928,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1]
-# CHECK-NEXT: 2.67 2.67 2.67 - - - - - 209.00 1048.50 618.00 352.50 277.50 277.50 16.00 187.67 187.67 187.67 182.33 182.33 182.33 8.00 8.00
+# CHECK-NEXT: 2.67 2.67 2.67 - - - - - 167.00 1006.50 618.00 352.50 277.50 277.50 16.00 187.67 187.67 187.67 182.33 182.33 182.33 8.00 8.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1] Instructions:
@@ -2001,18 +2001,18 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - - - - - - - - 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vbroadcastss (%rax), %zmm19 {%k1}
# CHECK-NEXT: - - - - - - - - - 1.00 - - - - - - - - - - - - - vbroadcastss %xmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - - 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vbroadcastss (%rax), %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vcmpeqpd %zmm0, %zmm1, %k2
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %zmm1, %k2
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax){1to8}, %zmm1, %k2
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vcmpeqpd %zmm0, %zmm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %zmm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax){1to8}, %zmm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vcmpeqps %zmm0, %zmm1, %k2
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %zmm1, %k2
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to16}, %zmm1, %k2
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vcmpeqps %zmm0, %zmm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %zmm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to16}, %zmm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqpd %zmm0, %zmm1, %k2
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %zmm1, %k2
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax){1to8}, %zmm1, %k2
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqpd %zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax){1to8}, %zmm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqps %zmm0, %zmm1, %k2
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %zmm1, %k2
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to16}, %zmm1, %k2
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqps %zmm0, %zmm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %zmm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to16}, %zmm1, %k2 {%k3}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqsd %xmm0, %xmm1, %k2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqsd (%rax), %xmm1, %k2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqsd %xmm0, %xmm1, %k2 {%k3}
@@ -2196,41 +2196,41 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 0.33 0.33 0.33 - - - - - - - - - - - - 0.33 0.33 0.33 0.33 0.33 0.33 - - vgatherqpd (%rax,%zmm1,2), %zmm2 {%k1}
# CHECK-NEXT: 0.33 0.33 0.33 - - - - - - - - - - - - 0.33 0.33 0.33 0.33 0.33 0.33 - - vgatherqps (%rax,%zmm1,2), %ymm2 {%k1}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxpd %zmm16, %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to8}, %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to8}, %zmm17, %zmm19
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxpd %zmm16, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to8}, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to8}, %zmm17, %zmm19 {%k1}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxpd %zmm16, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vmaxps %zmm16, %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to16}, %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vmaxps %zmm16, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to16}, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vmaxps %zmm16, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxps %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to16}, %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxps %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to16}, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxps %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminpd %zmm16, %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to8}, %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to8}, %zmm17, %zmm19
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminpd %zmm16, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to8}, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to8}, %zmm17, %zmm19 {%k1}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminpd %zmm16, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vminps %zmm16, %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to16}, %zmm17, %zmm19
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vminps %zmm16, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to16}, %zmm17, %zmm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vminps %zmm16, %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %zmm17, %zmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminps %zmm16, %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to16}, %zmm17, %zmm19
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminps %zmm16, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to16}, %zmm17, %zmm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminps %zmm16, %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %zmm17, %zmm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - vmovapd %zmm16, %zmm19
# CHECK-NEXT: - - - - - - - - - - - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmovapd (%rax), %zmm19
# CHECK-NEXT: - - - - - - - - - - - - 0.50 0.50 1.00 0.33 0.33 0.33 - - - 0.50 0.50 vmovapd %zmm16, (%rax)
diff --git a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dq.s b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dq.s
index 6eee1e4c2e3ff6..4740080ab2aa78 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dq.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dq.s
@@ -673,18 +673,18 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 1 1 1.00 vextracti64x2 $1, %zmm16, %xmm19 {%k1}
# CHECK-NEXT: 1 1 1.00 * vextracti64x2 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 1.00 vextracti64x2 $1, %zmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 2 2.00 vfpclasspd $171, %zmm16, %k1
-# CHECK-NEXT: 1 9 2.00 * vfpclasspdz $171, (%rax), %k1
-# CHECK-NEXT: 1 9 2.00 * vfpclasspd $171, (%rax){1to8}, %k1
-# CHECK-NEXT: 1 2 2.00 vfpclasspd $171, %zmm16, %k1 {%k2}
-# CHECK-NEXT: 1 9 2.00 * vfpclasspdz $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: 1 9 2.00 * vfpclasspd $171, (%rax){1to8}, %k1 {%k2}
-# CHECK-NEXT: 1 2 2.00 vfpclassps $171, %zmm16, %k1
-# CHECK-NEXT: 1 9 2.00 * vfpclasspsz $171, (%rax), %k1
-# CHECK-NEXT: 1 9 2.00 * vfpclassps $171, (%rax){1to16}, %k1
-# CHECK-NEXT: 1 2 2.00 vfpclassps $171, %zmm16, %k1 {%k2}
-# CHECK-NEXT: 1 9 2.00 * vfpclasspsz $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: 1 9 2.00 * vfpclassps $171, (%rax){1to16}, %k1 {%k2}
+# CHECK-NEXT: 1 2 1.00 vfpclasspd $171, %zmm16, %k1
+# CHECK-NEXT: 1 9 1.00 * vfpclasspdz $171, (%rax), %k1
+# CHECK-NEXT: 1 9 1.00 * vfpclasspd $171, (%rax){1to8}, %k1
+# CHECK-NEXT: 1 2 1.00 vfpclasspd $171, %zmm16, %k1 {%k2}
+# CHECK-NEXT: 1 9 1.00 * vfpclasspdz $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: 1 9 1.00 * vfpclasspd $171, (%rax){1to8}, %k1 {%k2}
+# CHECK-NEXT: 1 2 1.00 vfpclassps $171, %zmm16, %k1
+# CHECK-NEXT: 1 9 1.00 * vfpclasspsz $171, (%rax), %k1
+# CHECK-NEXT: 1 9 1.00 * vfpclassps $171, (%rax){1to16}, %k1
+# CHECK-NEXT: 1 2 1.00 vfpclassps $171, %zmm16, %k1 {%k2}
+# CHECK-NEXT: 1 9 1.00 * vfpclasspsz $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: 1 9 1.00 * vfpclassps $171, (%rax){1to16}, %k1 {%k2}
# CHECK-NEXT: 1 2 1.00 vfpclasssd $171, %xmm16, %k1
# CHECK-NEXT: 1 9 1.00 * vfpclasssd $171, (%rax), %k1
# CHECK-NEXT: 1 2 1.00 vfpclasssd $171, %xmm16, %k1 {%k2}
@@ -883,7 +883,7 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1]
-# CHECK-NEXT: 0.33 0.33 0.33 2.00 2.00 2.00 2.00 - 98.00 147.00 313.50 312.50 113.50 113.50 10.00 71.33 71.33 71.33 68.00 68.00 68.00 5.00 5.00
+# CHECK-NEXT: 0.33 0.33 0.33 2.00 2.00 2.00 2.00 - 86.00 135.00 313.50 312.50 113.50 113.50 10.00 71.33 71.33 71.33 68.00 68.00 68.00 5.00 5.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1] Instructions:
@@ -1093,18 +1093,18 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - - - - - - - - 1.00 - - - - - - - - - - - - - vextracti64x2 $1, %zmm16, %xmm19 {%k1}
# CHECK-NEXT: - - - - - - - - - - - - 0.50 0.50 1.00 0.33 0.33 0.33 - - - 0.50 0.50 vextracti64x2 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - - - 1.00 - - - - - - - - - - - - - vextracti64x2 $1, %zmm16, %xmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vfpclasspd $171, %zmm16, %k1
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspdz $171, (%rax), %k1
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspd $171, (%rax){1to8}, %k1
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vfpclasspd $171, %zmm16, %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspdz $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspd $171, (%rax){1to8}, %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vfpclassps $171, %zmm16, %k1
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsz $171, (%rax), %k1
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to16}, %k1
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - - - - - - - - - - - - vfpclassps $171, %zmm16, %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsz $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 2.00 2.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to16}, %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclasspd $171, %zmm16, %k1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspdz $171, (%rax), %k1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspd $171, (%rax){1to8}, %k1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclasspd $171, %zmm16, %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspdz $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspd $171, (%rax){1to8}, %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclassps $171, %zmm16, %k1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsz $171, (%rax), %k1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to16}, %k1
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclassps $171, %zmm16, %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsz $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to16}, %k1 {%k2}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclasssd $171, %xmm16, %k1
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasssd $171, (%rax), %k1
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclasssd $171, %xmm16, %k1 {%k2}
diff --git a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dqvl.s b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dqvl.s
index 37e42daa955f26..2183462453a0d8 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dqvl.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512dqvl.s
@@ -921,30 +921,30 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: 1 1 1.00 vextracti64x2 $1, %ymm16, %xmm19 {%k1}
# CHECK-NEXT: 1 1 1.00 * vextracti64x2 $1, %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 1.00 vextracti64x2 $1, %ymm16, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 1 0.50 vfpclasspd $171, %xmm16, %k1
-# CHECK-NEXT: 1 8 0.50 * vfpclasspdx $171, (%rax), %k1
-# CHECK-NEXT: 1 8 0.50 * vfpclasspd $171, (%rax){1to2}, %k1
-# CHECK-NEXT: 1 1 0.50 vfpclasspd $171, %xmm16, %k1 {%k2}
-# CHECK-NEXT: 1 8 0.50 * vfpclasspdx $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: 1 8 0.50 * vfpclasspd $171, (%rax){1to2}, %k1 {%k2}
-# CHECK-NEXT: 1 2 1.00 vfpclasspd $171, %ymm16, %k1
-# CHECK-NEXT: 1 9 1.00 * vfpclasspdy $171, (%rax), %k1
-# CHECK-NEXT: 1 9 1.00 * vfpclasspd $171, (%rax){1to4}, %k1
-# CHECK-NEXT: 1 2 1.00 vfpclasspd $171, %ymm16, %k1 {%k2}
-# CHECK-NEXT: 1 9 1.00 * vfpclasspdy $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: 1 9 1.00 * vfpclasspd $171, (%rax){1to4}, %k1 {%k2}
-# CHECK-NEXT: 1 1 0.50 vfpclassps $171, %xmm16, %k1
-# CHECK-NEXT: 1 8 0.50 * vfpclasspsx $171, (%rax), %k1
-# CHECK-NEXT: 1 8 0.50 * vfpclassps $171, (%rax){1to4}, %k1
-# CHECK-NEXT: 1 1 0.50 vfpclassps $171, %xmm16, %k1 {%k2}
-# CHECK-NEXT: 1 8 0.50 * vfpclasspsx $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: 1 8 0.50 * vfpclassps $171, (%rax){1to4}, %k1 {%k2}
-# CHECK-NEXT: 1 2 1.00 vfpclassps $171, %ymm16, %k1
-# CHECK-NEXT: 1 9 1.00 * vfpclasspsy $171, (%rax), %k1
-# CHECK-NEXT: 1 9 1.00 * vfpclassps $171, (%rax){1to8}, %k1
-# CHECK-NEXT: 1 2 1.00 vfpclassps $171, %ymm16, %k1 {%k2}
-# CHECK-NEXT: 1 9 1.00 * vfpclasspsy $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: 1 9 1.00 * vfpclassps $171, (%rax){1to8}, %k1 {%k2}
+# CHECK-NEXT: 1 2 0.50 vfpclasspd $171, %xmm16, %k1
+# CHECK-NEXT: 1 9 0.50 * vfpclasspdx $171, (%rax), %k1
+# CHECK-NEXT: 1 9 0.50 * vfpclasspd $171, (%rax){1to2}, %k1
+# CHECK-NEXT: 1 2 0.50 vfpclasspd $171, %xmm16, %k1 {%k2}
+# CHECK-NEXT: 1 9 0.50 * vfpclasspdx $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: 1 9 0.50 * vfpclasspd $171, (%rax){1to2}, %k1 {%k2}
+# CHECK-NEXT: 1 2 0.50 vfpclasspd $171, %ymm16, %k1
+# CHECK-NEXT: 1 9 0.50 * vfpclasspdy $171, (%rax), %k1
+# CHECK-NEXT: 1 9 0.50 * vfpclasspd $171, (%rax){1to4}, %k1
+# CHECK-NEXT: 1 2 0.50 vfpclasspd $171, %ymm16, %k1 {%k2}
+# CHECK-NEXT: 1 9 0.50 * vfpclasspdy $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: 1 9 0.50 * vfpclasspd $171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT: 1 2 0.50 vfpclassps $171, %xmm16, %k1
+# CHECK-NEXT: 1 9 0.50 * vfpclasspsx $171, (%rax), %k1
+# CHECK-NEXT: 1 9 0.50 * vfpclassps $171, (%rax){1to4}, %k1
+# CHECK-NEXT: 1 2 0.50 vfpclassps $171, %xmm16, %k1 {%k2}
+# CHECK-NEXT: 1 9 0.50 * vfpclasspsx $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: 1 9 0.50 * vfpclassps $171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT: 1 2 0.50 vfpclassps $171, %ymm16, %k1
+# CHECK-NEXT: 1 9 0.50 * vfpclasspsy $171, (%rax), %k1
+# CHECK-NEXT: 1 9 0.50 * vfpclassps $171, (%rax){1to8}, %k1
+# CHECK-NEXT: 1 2 0.50 vfpclassps $171, %ymm16, %k1 {%k2}
+# CHECK-NEXT: 1 9 0.50 * vfpclasspsy $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: 1 9 0.50 * vfpclassps $171, (%rax){1to8}, %k1 {%k2}
# CHECK-NEXT: 1 2 1.00 vinsertf64x2 $1, %xmm16, %ymm16, %ymm19
# CHECK-NEXT: 3 9 1.00 * vinsertf64x2 $1, (%rax), %ymm16, %ymm19
# CHECK-NEXT: 1 2 1.00 vinsertf64x2 $1, %xmm16, %ymm16, %ymm19 {%k1}
@@ -1149,7 +1149,7 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1]
-# CHECK-NEXT: - - - 4.00 4.00 4.00 4.00 - 72.00 102.00 240.00 240.00 167.50 167.50 4.00 111.67 111.67 111.67 110.33 110.33 110.33 2.00 2.00
+# CHECK-NEXT: - - - 4.00 4.00 4.00 4.00 - 66.00 96.00 240.00 240.00 167.50 167.50 4.00 111.67 111.67 111.67 110.33 110.33 110.33 2.00 2.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1] Instructions:
@@ -1481,24 +1481,24 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfpclasspd $171, %xmm16, %k1 {%k2}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspdx $171, (%rax), %k1 {%k2}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspd $171, (%rax){1to2}, %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclasspd $171, %ymm16, %k1
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspdy $171, (%rax), %k1
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspd $171, (%rax){1to4}, %k1
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclasspd $171, %ymm16, %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspdy $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspd $171, (%rax){1to4}, %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfpclasspd $171, %ymm16, %k1
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspdy $171, (%rax), %k1
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspd $171, (%rax){1to4}, %k1
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfpclasspd $171, %ymm16, %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspdy $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspd $171, (%rax){1to4}, %k1 {%k2}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfpclassps $171, %xmm16, %k1
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsx $171, (%rax), %k1
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to4}, %k1
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfpclassps $171, %xmm16, %k1 {%k2}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsx $171, (%rax), %k1 {%k2}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to4}, %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclassps $171, %ymm16, %k1
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsy $171, (%rax), %k1
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to8}, %k1
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfpclassps $171, %ymm16, %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsy $171, (%rax), %k1 {%k2}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to8}, %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfpclassps $171, %ymm16, %k1
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsy $171, (%rax), %k1
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to8}, %k1
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfpclassps $171, %ymm16, %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclasspsy $171, (%rax), %k1 {%k2}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfpclassps $171, (%rax){1to8}, %k1 {%k2}
# CHECK-NEXT: - - - - - - - - - 1.00 - - - - - - - - - - - - - vinsertf64x2 $1, %xmm16, %ymm16, %ymm19
# CHECK-NEXT: - - - - - - - - - 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vinsertf64x2 $1, (%rax), %ymm16, %ymm19
# CHECK-NEXT: - - - - - - - - - 1.00 - - - - - - - - - - - - - vinsertf64x2 $1, %xmm16, %ymm16, %ymm19 {%k1}
diff --git a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512vl.s b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512vl.s
index 1408037ef99ae4..a1fd2056d85426 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512vl.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver4/resources-avx512vl.s
@@ -1685,30 +1685,30 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: 3 9 1.00 * vbroadcastss (%rax), %ymm19 {%k1}
# CHECK-NEXT: 1 2 1.00 vbroadcastss %xmm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 3 9 1.00 * vbroadcastss (%rax), %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 1 0.50 vcmpeqpd %xmm0, %xmm1, %k2
-# CHECK-NEXT: 1 8 0.50 * vcmpeqpd (%rax), %xmm1, %k2
-# CHECK-NEXT: 1 8 0.50 * vcmpeqpd (%rax){1to2}, %xmm1, %k2
-# CHECK-NEXT: 1 1 0.50 vcmpeqpd %xmm0, %xmm1, %k2 {%k3}
-# CHECK-NEXT: 1 8 0.50 * vcmpeqpd (%rax), %xmm1, %k2 {%k3}
-# CHECK-NEXT: 1 8 0.50 * vcmpeqpd (%rax){1to2}, %xmm1, %k2 {%k3}
-# CHECK-NEXT: 1 2 1.00 vcmpeqpd %ymm0, %ymm1, %k2
-# CHECK-NEXT: 1 9 1.00 * vcmpeqpd (%rax), %ymm1, %k2
-# CHECK-NEXT: 1 9 1.00 * vcmpeqpd (%rax){1to4}, %ymm1, %k2
-# CHECK-NEXT: 1 2 1.00 vcmpeqpd %ymm0, %ymm1, %k2 {%k3}
-# CHECK-NEXT: 1 9 1.00 * vcmpeqpd (%rax), %ymm1, %k2 {%k3}
-# CHECK-NEXT: 1 9 1.00 * vcmpeqpd (%rax){1to4}, %ymm1, %k2 {%k3}
-# CHECK-NEXT: 1 1 0.50 vcmpeqps %xmm0, %xmm1, %k2
-# CHECK-NEXT: 1 8 0.50 * vcmpeqps (%rax), %xmm1, %k2
-# CHECK-NEXT: 1 8 0.50 * vcmpeqps (%rax){1to4}, %xmm1, %k2
-# CHECK-NEXT: 1 1 0.50 vcmpeqps %xmm0, %xmm1, %k2 {%k3}
-# CHECK-NEXT: 1 8 0.50 * vcmpeqps (%rax), %xmm1, %k2 {%k3}
-# CHECK-NEXT: 1 8 0.50 * vcmpeqps (%rax){1to4}, %xmm1, %k2 {%k3}
-# CHECK-NEXT: 1 2 1.00 vcmpeqps %ymm0, %ymm1, %k2
-# CHECK-NEXT: 1 9 1.00 * vcmpeqps (%rax), %ymm1, %k2
-# CHECK-NEXT: 1 9 1.00 * vcmpeqps (%rax){1to8}, %ymm1, %k2
-# CHECK-NEXT: 1 2 1.00 vcmpeqps %ymm0, %ymm1, %k2 {%k3}
-# CHECK-NEXT: 1 9 1.00 * vcmpeqps (%rax), %ymm1, %k2 {%k3}
-# CHECK-NEXT: 1 9 1.00 * vcmpeqps (%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT: 1 2 0.50 vcmpeqpd %xmm0, %xmm1, %k2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax), %xmm1, %k2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax){1to2}, %xmm1, %k2
+# CHECK-NEXT: 1 2 0.50 vcmpeqpd %xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax){1to2}, %xmm1, %k2 {%k3}
+# CHECK-NEXT: 1 2 0.50 vcmpeqpd %ymm0, %ymm1, %k2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax), %ymm1, %k2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT: 1 2 0.50 vcmpeqpd %ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 0.50 * vcmpeqpd (%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT: 1 2 0.50 vcmpeqps %xmm0, %xmm1, %k2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax), %xmm1, %k2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax){1to4}, %xmm1, %k2
+# CHECK-NEXT: 1 2 0.50 vcmpeqps %xmm0, %xmm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax), %xmm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax){1to4}, %xmm1, %k2 {%k3}
+# CHECK-NEXT: 1 2 0.50 vcmpeqps %ymm0, %ymm1, %k2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax), %ymm1, %k2
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT: 1 2 0.50 vcmpeqps %ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT: 1 9 0.50 * vcmpeqps (%rax){1to8}, %ymm1, %k2 {%k3}
# CHECK-NEXT: 1 3 0.50 vcvtdq2pd %xmm16, %xmm19
# CHECK-NEXT: 1 10 0.50 * vcvtdq2pd (%rax), %xmm19
# CHECK-NEXT: 1 10 0.50 * vcvtdq2pd (%rax){1to2}, %xmm19
@@ -1970,77 +1970,77 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: 1 5 0.33 * vgatherqpd (%rax,%xmm1,2), %xmm2 {%k1}
# CHECK-NEXT: 1 5 0.33 * vgatherqps (%rax,%xmm1,2), %xmm2 {%k1}
# CHECK-NEXT: 1 2 1.00 vmaxpd %xmm16, %xmm17, %xmm19
-# CHECK-NEXT: 1 8 0.50 * vmaxpd (%rax), %xmm17, %xmm19
-# CHECK-NEXT: 1 8 0.50 * vmaxpd (%rax){1to2}, %xmm17, %xmm19
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax), %xmm17, %xmm19
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax){1to2}, %xmm17, %xmm19
# CHECK-NEXT: 1 2 1.00 vmaxpd %xmm16, %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 8 0.50 * vmaxpd (%rax), %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 8 0.50 * vmaxpd (%rax){1to2}, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax){1to2}, %xmm17, %xmm19 {%k1}
# CHECK-NEXT: 1 2 1.00 vmaxpd %xmm16, %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 8 0.50 * vmaxpd (%rax), %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 8 0.50 * vmaxpd (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: 1 2 1.00 vmaxpd %ymm16, %ymm17, %ymm19
-# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax), %ymm17, %ymm19
-# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax){1to4}, %ymm17, %ymm19
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax), %ymm17, %ymm19
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax){1to4}, %ymm17, %ymm19
# CHECK-NEXT: 1 2 1.00 vmaxpd %ymm16, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax), %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax){1to4}, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax){1to4}, %ymm17, %ymm19 {%k1}
# CHECK-NEXT: 1 2 1.00 vmaxpd %ymm16, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax), %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 9 1.00 * vmaxpd (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 1 0.50 vmaxps %xmm16, %xmm17, %xmm19
-# CHECK-NEXT: 1 8 0.50 * vmaxps (%rax), %xmm17, %xmm19
-# CHECK-NEXT: 1 8 0.50 * vmaxps (%rax){1to4}, %xmm17, %xmm19
-# CHECK-NEXT: 1 1 0.50 vmaxps %xmm16, %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 8 0.50 * vmaxps (%rax), %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 8 0.50 * vmaxps (%rax){1to4}, %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 1 0.50 vmaxps %xmm16, %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 8 0.50 * vmaxps (%rax), %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 8 0.50 * vmaxps (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 2 1.00 vmaxps %ymm16, %ymm17, %ymm19
-# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax), %ymm17, %ymm19
-# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax){1to8}, %ymm17, %ymm19
-# CHECK-NEXT: 1 2 1.00 vmaxps %ymm16, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax), %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax){1to8}, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 2 1.00 vmaxps %ymm16, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax), %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 9 1.00 * vmaxps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vmaxpd (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 2 0.50 vmaxps %xmm16, %xmm17, %xmm19
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax), %xmm17, %xmm19
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax){1to4}, %xmm17, %xmm19
+# CHECK-NEXT: 1 2 0.50 vmaxps %xmm16, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax){1to4}, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 2 0.50 vmaxps %xmm16, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 2 0.50 vmaxps %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax), %ymm17, %ymm19
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax){1to8}, %ymm17, %ymm19
+# CHECK-NEXT: 1 2 0.50 vmaxps %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax){1to8}, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 2 0.50 vmaxps %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vmaxps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 2 1.00 vminpd %xmm16, %xmm17, %xmm19
-# CHECK-NEXT: 1 8 0.50 * vminpd (%rax), %xmm17, %xmm19
-# CHECK-NEXT: 1 8 0.50 * vminpd (%rax){1to2}, %xmm17, %xmm19
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax), %xmm17, %xmm19
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax){1to2}, %xmm17, %xmm19
# CHECK-NEXT: 1 2 1.00 vminpd %xmm16, %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 8 0.50 * vminpd (%rax), %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 8 0.50 * vminpd (%rax){1to2}, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax){1to2}, %xmm17, %xmm19 {%k1}
# CHECK-NEXT: 1 2 1.00 vminpd %xmm16, %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 8 0.50 * vminpd (%rax), %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 8 0.50 * vminpd (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: 1 2 1.00 vminpd %ymm16, %ymm17, %ymm19
-# CHECK-NEXT: 1 9 1.00 * vminpd (%rax), %ymm17, %ymm19
-# CHECK-NEXT: 1 9 1.00 * vminpd (%rax){1to4}, %ymm17, %ymm19
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax), %ymm17, %ymm19
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax){1to4}, %ymm17, %ymm19
# CHECK-NEXT: 1 2 1.00 vminpd %ymm16, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 9 1.00 * vminpd (%rax), %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 9 1.00 * vminpd (%rax){1to4}, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax){1to4}, %ymm17, %ymm19 {%k1}
# CHECK-NEXT: 1 2 1.00 vminpd %ymm16, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 9 1.00 * vminpd (%rax), %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 9 1.00 * vminpd (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 1 0.50 vminps %xmm16, %xmm17, %xmm19
-# CHECK-NEXT: 1 8 0.50 * vminps (%rax), %xmm17, %xmm19
-# CHECK-NEXT: 1 8 0.50 * vminps (%rax){1to4}, %xmm17, %xmm19
-# CHECK-NEXT: 1 1 0.50 vminps %xmm16, %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 8 0.50 * vminps (%rax), %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 8 0.50 * vminps (%rax){1to4}, %xmm17, %xmm19 {%k1}
-# CHECK-NEXT: 1 1 0.50 vminps %xmm16, %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 8 0.50 * vminps (%rax), %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 8 0.50 * vminps (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: 1 2 1.00 vminps %ymm16, %ymm17, %ymm19
-# CHECK-NEXT: 1 9 1.00 * vminps (%rax), %ymm17, %ymm19
-# CHECK-NEXT: 1 9 1.00 * vminps (%rax){1to8}, %ymm17, %ymm19
-# CHECK-NEXT: 1 2 1.00 vminps %ymm16, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 9 1.00 * vminps (%rax), %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 9 1.00 * vminps (%rax){1to8}, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: 1 2 1.00 vminps %ymm16, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 9 1.00 * vminps (%rax), %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: 1 9 1.00 * vminps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vminpd (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 2 0.50 vminps %xmm16, %xmm17, %xmm19
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax), %xmm17, %xmm19
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax){1to4}, %xmm17, %xmm19
+# CHECK-NEXT: 1 2 0.50 vminps %xmm16, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax), %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax){1to4}, %xmm17, %xmm19 {%k1}
+# CHECK-NEXT: 1 2 0.50 vminps %xmm16, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax), %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
+# CHECK-NEXT: 1 2 0.50 vminps %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax), %ymm17, %ymm19
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax){1to8}, %ymm17, %ymm19
+# CHECK-NEXT: 1 2 0.50 vminps %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax){1to8}, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: 1 2 0.50 vminps %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: 1 9 0.50 * vminps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 0 0.17 vmovapd %xmm16, %xmm19
# CHECK-NEXT: 1 8 0.50 * vmovapd (%rax), %xmm19
# CHECK-NEXT: 1 1 1.00 * vmovapd %xmm16, (%rax)
@@ -3015,7 +3015,7 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1]
-# CHECK-NEXT: 5.33 5.33 5.33 - - - - - 175.00 945.00 531.50 261.50 442.50 442.50 32.00 300.33 300.33 300.33 289.67 289.67 289.67 16.00 16.00
+# CHECK-NEXT: 5.33 5.33 5.33 - - - - - 154.00 924.00 531.50 261.50 442.50 442.50 32.00 300.33 300.33 300.33 289.67 289.67 289.67 16.00 16.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1] Instructions:
@@ -3121,24 +3121,24 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vcmpeqpd %xmm0, %xmm1, %k2 {%k3}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %xmm1, %k2 {%k3}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax){1to2}, %xmm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqpd %ymm0, %ymm1, %k2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %ymm1, %k2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax){1to4}, %ymm1, %k2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqpd %ymm0, %ymm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %ymm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax){1to4}, %ymm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vcmpeqpd %ymm0, %ymm1, %k2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %ymm1, %k2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax){1to4}, %ymm1, %k2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vcmpeqpd %ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqpd (%rax){1to4}, %ymm1, %k2 {%k3}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vcmpeqps %xmm0, %xmm1, %k2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %xmm1, %k2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to4}, %xmm1, %k2
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vcmpeqps %xmm0, %xmm1, %k2 {%k3}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %xmm1, %k2 {%k3}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to4}, %xmm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqps %ymm0, %ymm1, %k2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %ymm1, %k2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to8}, %ymm1, %k2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vcmpeqps %ymm0, %ymm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %ymm1, %k2 {%k3}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to8}, %ymm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vcmpeqps %ymm0, %ymm1, %k2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %ymm1, %k2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to8}, %ymm1, %k2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vcmpeqps %ymm0, %ymm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax), %ymm1, %k2 {%k3}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcmpeqps (%rax){1to8}, %ymm1, %k2 {%k3}
# CHECK-NEXT: - - - - - - - - - - 0.50 0.50 - - - - - - - - - - - vcvtdq2pd %xmm16, %xmm19
# CHECK-NEXT: - - - - - - - - - - 0.50 0.50 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcvtdq2pd (%rax), %xmm19
# CHECK-NEXT: - - - - - - - - - - 0.50 0.50 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vcvtdq2pd (%rax){1to2}, %xmm19
@@ -3409,14 +3409,14 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxpd %ymm16, %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to4}, %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to4}, %ymm17, %ymm19
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxpd %ymm16, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to4}, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to4}, %ymm17, %ymm19 {%k1}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxpd %ymm16, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxpd (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vmaxps %xmm16, %xmm17, %xmm19
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %xmm17, %xmm19
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to4}, %xmm17, %xmm19
@@ -3426,15 +3426,15 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vmaxps %xmm16, %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxps %ymm16, %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to8}, %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxps %ymm16, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to8}, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vmaxps %ymm16, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vmaxps %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to8}, %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vmaxps %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to8}, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vmaxps %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmaxps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminpd %xmm16, %xmm17, %xmm19
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %xmm17, %xmm19
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to2}, %xmm17, %xmm19
@@ -3445,14 +3445,14 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminpd %ymm16, %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to4}, %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to4}, %ymm17, %ymm19
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminpd %ymm16, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to4}, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to4}, %ymm17, %ymm19 {%k1}
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminpd %ymm16, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminpd (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vminps %xmm16, %xmm17, %xmm19
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %xmm17, %xmm19
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to4}, %xmm17, %xmm19
@@ -3462,15 +3462,15 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vminps %xmm16, %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %xmm17, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminps %ymm16, %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to8}, %ymm17, %ymm19
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminps %ymm16, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to8}, %ymm17, %ymm19 {%k1}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vminps %ymm16, %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %ymm17, %ymm19 {%k1} {z}
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vminps %ymm16, %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to8}, %ymm17, %ymm19
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vminps %ymm16, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to8}, %ymm17, %ymm19 {%k1}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vminps %ymm16, %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax), %ymm17, %ymm19 {%k1} {z}
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vminps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - - - - - - - - - - - - - - - - - vmovapd %xmm16, %xmm19
# CHECK-NEXT: - - - - - - - - - - - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vmovapd (%rax), %xmm19
# CHECK-NEXT: - - - - - - - - - - - - 0.50 0.50 1.00 0.33 0.33 0.33 - - - 0.50 0.50 vmovapd %xmm16, (%rax)
diff --git a/llvm/test/tools/llvm-mca/X86/Znver4/resources-fma.s b/llvm/test/tools/llvm-mca/X86/Znver4/resources-fma.s
index 3d2dd4c695f2e5..1d9272f5d13b97 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver4/resources-fma.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver4/resources-fma.s
@@ -298,30 +298,30 @@ vfnmsub231ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: [6]: HasSideEffects (U)
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
-# CHECK-NEXT: 1 4 1.00 vfmadd132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmadd132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmadd213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmadd213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmadd231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmadd231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmadd132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmadd132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmadd213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmadd213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmadd231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmadd231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmadd231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmadd132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmadd132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmadd213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmadd213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmadd231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmadd231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmadd132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmadd132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmadd213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmadd213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmadd231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmadd231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmadd231ps (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 4 1.00 vfmadd132sd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfmadd132sd (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 4 1.00 vfmadd213sd %xmm0, %xmm1, %xmm2
@@ -334,54 +334,54 @@ vfnmsub231ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfmadd213ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 4 1.00 vfmadd231ss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfmadd231ss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmaddsub231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmaddsub231ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsub132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsub132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsub213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsub213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsub231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsub231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsub132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsub132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsub213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsub213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsub231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsub231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsub231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmaddsub231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmaddsub231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsub132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsub132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsub213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsub213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsub231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsub231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsub132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsub132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsub213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsub213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsub231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsub231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsub231ps (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 4 1.00 vfmsub132sd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfmsub132sd (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 4 1.00 vfmsub213sd %xmm0, %xmm1, %xmm2
@@ -394,54 +394,54 @@ vfnmsub231ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfmsub213ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 4 1.00 vfmsub231ss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfmsub231ss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfmsubadd231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfmsubadd231ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmadd231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmadd231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfmsubadd231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfmsubadd231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmadd231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmadd231ps (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 4 1.00 vfnmadd132sd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfnmadd132sd (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 4 1.00 vfnmadd213sd %xmm0, %xmm1, %xmm2
@@ -454,30 +454,30 @@ vfnmsub231ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfnmadd213ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 4 1.00 vfnmadd231ss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfnmadd231ss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 1 4 1.00 vfnmsub231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1 11 1.00 * vfnmsub231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: 1 4 0.50 vfnmsub231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1 11 0.50 * vfnmsub231ps (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 4 1.00 vfnmsub132sd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 11 1.00 * vfnmsub132sd (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 4 1.00 vfnmsub213sd %xmm0, %xmm1, %xmm2
@@ -518,34 +518,34 @@ vfnmsub231ss (%rax), %xmm1, %xmm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1]
-# CHECK-NEXT: - - - - - - - - 192.00 192.00 - - 48.00 48.00 - 32.00 32.00 32.00 32.00 32.00 32.00 - -
+# CHECK-NEXT: - - - - - - - - 120.00 120.00 - - 48.00 48.00 - 32.00 32.00 32.00 32.00 32.00 32.00 - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12.0] [12.1] [13] [14.0] [14.1] [14.2] [15.0] [15.1] [15.2] [16.0] [16.1] Instructions:
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmadd231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd231ps (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd132sd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd132sd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd213sd %xmm0, %xmm1, %xmm2
@@ -558,54 +558,54 @@ vfnmsub231ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd213ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmadd231ss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmadd231ss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmaddsub231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub231ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmaddsub231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmaddsub231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsub231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub231ps (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub132sd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub132sd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub213sd %xmm0, %xmm1, %xmm2
@@ -618,54 +618,54 @@ vfnmsub231ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub213ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsub231ss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsub231ss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfmsubadd231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd231ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfmsubadd231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfmsubadd231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmadd231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd231ps (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd132sd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd132sd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd213sd %xmm0, %xmm1, %xmm2
@@ -678,30 +678,30 @@ vfnmsub231ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd213ss (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmadd231ss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmadd231ss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub132pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub132pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub132pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub132pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub213pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub213pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub213pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub213pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub231pd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub231pd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub231pd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub231pd (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub132ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub132ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub132ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub132ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub213ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub213ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub213ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub213ps (%rax), %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub231ps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub231ps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub231ps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub231ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub132pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub132pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub132pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub132pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub213pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub213pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub213pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub213pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub231pd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub231pd (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub231pd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub231pd (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub132ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub132ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub132ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub132ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub213ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub213ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub213ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub213ps (%rax), %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub231ps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub231ps (%rax), %xmm1, %xmm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - - - - - - - - - - - - vfnmsub231ps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: - - - - - - - - 0.50 0.50 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub231ps (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub132sd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - 0.50 0.50 - 0.33 0.33 0.33 0.33 0.33 0.33 - - vfnmsub132sd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - - 1.00 1.00 - - - - - - - - - - - - - vfnmsub213sd %xmm0, %xmm1, %xmm2
diff --git a/llvm/test/tools/llvm-mca/X86/Znver4/resources-sse1.s b/llvm/test/tools/llvm-mca/X86/Znver4/resources-sse1.s
index 6879fb28ffdf9d..767477a79165fc 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver4/resources-sse1.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver4/resources-sse1.s
@@ -203,7 +203,7 @@ xorps (%rax), %xmm2
# CHECK-NEXT: 1 1 0.25 andps %xmm0, %xmm2
# CHECK-NEXT: 1 8 0.50 * andps (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 cmpeqps %xmm0, %xmm2
-# CHECK-NEXT: 1 8 0.50 * cmpeqps (%rax), %xmm2
+# CHECK-NEXT: 1 9 0.50 * cmpeqps (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 cmpeqss %xmm0, %xmm2
# CHECK-NEXT: 1 9 1.00 * cmpeqss (%rax), %xmm2
# CHECK-NEXT: 2 4 1.00 comiss %xmm0, %xmm1
@@ -232,12 +232,12 @@ xorps (%rax), %xmm2
# CHECK-NEXT: 1 18 3.00 * divss (%rax), %xmm2
# CHECK-NEXT: 1 5 1.50 * * U ldmxcsr (%rax)
# CHECK-NEXT: 1 1 0.50 * * U maskmovq %mm0, %mm1
-# CHECK-NEXT: 1 1 0.50 maxps %xmm0, %xmm2
-# CHECK-NEXT: 1 8 0.50 * maxps (%rax), %xmm2
+# CHECK-NEXT: 1 2 0.50 maxps %xmm0, %xmm2
+# CHECK-NEXT: 1 9 0.50 * maxps (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 maxss %xmm0, %xmm2
# CHECK-NEXT: 1 9 1.00 * maxss (%rax), %xmm2
-# CHECK-NEXT: 1 1 0.50 minps %xmm0, %xmm2
-# CHECK-NEXT: 1 8 0.50 * minps (%rax), %xmm2
+# CHECK-NEXT: 1 2 0.50 minps %xmm0, %xmm2
+# CHECK-NEXT: 1 9 0.50 * minps (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 minss %xmm0, %xmm2
# CHECK-NEXT: 1 9 1.00 * minss (%rax), %xmm2
# CHECK-NEXT: 1 0 0.17 movaps %xmm0, %xmm2
diff --git a/llvm/test/tools/llvm-mca/X86/Znver4/resources-sse2.s b/llvm/test/tools/llvm-mca/X86/Znver4/resources-sse2.s
index 02013b85f417a0..dde829373465ba 100644
--- a/llvm/test/tools/llvm-mca/X86/Znver4/resources-sse2.s
+++ b/llvm/test/tools/llvm-mca/X86/Znver4/resources-sse2.s
@@ -417,7 +417,7 @@ xorpd (%rax), %xmm2
# CHECK-NEXT: 1 8 0.50 * andpd (%rax), %xmm2
# CHECK-NEXT: 1 5 0.33 * * U clflush (%rax)
# CHECK-NEXT: 1 2 1.00 cmpeqpd %xmm0, %xmm2
-# CHECK-NEXT: 1 8 0.50 * cmpeqpd (%rax), %xmm2
+# CHECK-NEXT: 1 9 0.50 * cmpeqpd (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 cmpeqsd %xmm0, %xmm2
# CHECK-NEXT: 1 8 0.50 * cmpeqsd (%rax), %xmm2
# CHECK-NEXT: 2 4 1.00 comisd %xmm0, %xmm1
@@ -466,13 +466,13 @@ xorpd (%rax), %xmm2
# CHECK-NEXT: 1 20 5.00 * divsd (%rax), %xmm2
# CHECK-NEXT: 1 1 10.00 * * U lfence
# CHECK-NEXT: 1 1 1.00 * * U maskmovdqu %xmm0, %xmm1
-# CHECK-NEXT: 1 1 0.50 maxpd %xmm0, %xmm2
-# CHECK-NEXT: 1 8 0.50 * maxpd (%rax), %xmm2
+# CHECK-NEXT: 1 2 0.50 maxpd %xmm0, %xmm2
+# CHECK-NEXT: 1 9 0.50 * maxpd (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 maxsd %xmm0, %xmm2
# CHECK-NEXT: 1 8 0.50 * maxsd (%rax), %xmm2
# CHECK-NEXT: 1 1 25.00 * * U mfence
-# CHECK-NEXT: 1 1 0.50 minpd %xmm0, %xmm2
-# CHECK-NEXT: 1 8 0.50 * minpd (%rax), %xmm2
+# CHECK-NEXT: 1 2 0.50 minpd %xmm0, %xmm2
+# CHECK-NEXT: 1 9 0.50 * minpd (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 minsd %xmm0, %xmm2
# CHECK-NEXT: 1 8 0.50 * minsd (%rax), %xmm2
# CHECK-NEXT: 1 0 0.17 movapd %xmm0, %xmm2
More information about the llvm-commits
mailing list