[llvm] c3b7ab7 - [X86] Fix Store AGU/Memory ports on IceLakeServer model
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 5 04:28:09 PDT 2023
Author: Simon Pilgrim
Date: 2023-07-05T12:27:43+01:00
New Revision: c3b7ab728a7a1ee2ad4b638fafd477e533471d37
URL: https://github.com/llvm/llvm-project/commit/c3b7ab728a7a1ee2ad4b638fafd477e533471d37
DIFF: https://github.com/llvm/llvm-project/commit/c3b7ab728a7a1ee2ad4b638fafd477e533471d37.diff
LOG: [X86] Fix Store AGU/Memory ports on IceLakeServer model
The IceLakeServer model was directly copied from SkylakeServer model and we didn't do much to adjust the changes in port layout etc.
IceLake handles all store AGU on ports 7/8 (and not 2/3/7 like Skylake), store memory ops are handled on ports 4/9 (and not just port 4)
Fixes #62602
Added:
Modified:
llvm/lib/Target/X86/X86SchedIceLake.td
llvm/test/tools/llvm-mca/X86/IceLakeServer/independent-load-stores.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx2.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dqvl.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-cmpxchg.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-f16c.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-mmx.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-movbe.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse1.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse2.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse41.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x87.s
llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-xsave.s
Removed:
################################################################################
diff --git a/llvm/lib/Target/X86/X86SchedIceLake.td b/llvm/lib/Target/X86/X86SchedIceLake.td
index ab0e2a95df722d..283995f8203b0f 100644
--- a/llvm/lib/Target/X86/X86SchedIceLake.td
+++ b/llvm/lib/Target/X86/X86SchedIceLake.td
@@ -55,7 +55,6 @@ def ICXPort9 : ProcResource<1>;
// Many micro-ops are capable of issuing on multiple ports.
def ICXPort01 : ProcResGroup<[ICXPort0, ICXPort1]>;
def ICXPort23 : ProcResGroup<[ICXPort2, ICXPort3]>;
-def ICXPort237 : ProcResGroup<[ICXPort2, ICXPort3, ICXPort7]>;
def ICXPort04 : ProcResGroup<[ICXPort0, ICXPort4]>;
def ICXPort05 : ProcResGroup<[ICXPort0, ICXPort5]>;
def ICXPort06 : ProcResGroup<[ICXPort0, ICXPort6]>;
@@ -117,7 +116,7 @@ multiclass ICXWriteResPair<X86FoldableSchedWrite SchedRW,
// A folded store needs a cycle on port 4 for the store data, and an extra port
// 2/3/7 cycle to recompute the address.
-def : WriteRes<WriteRMW, [ICXPort237,ICXPort4]>;
+def : WriteRes<WriteRMW, [ICXPort78,ICXPort49]>;
// Arithmetic.
defm : ICXWriteResPair<WriteALU, [ICXPort0156], 1>; // Simple integer ALU op.
@@ -146,7 +145,7 @@ def : WriteRes<WriteIMulHLd, []> {
defm : X86WriteRes<WriteBSWAP32, [ICXPort15], 1, [1], 1>;
defm : X86WriteRes<WriteBSWAP64, [ICXPort06, ICXPort15], 2, [1,1], 2>;
defm : X86WriteRes<WriteCMPXCHG,[ICXPort06, ICXPort0156], 5, [2,3], 5>;
-defm : X86WriteRes<WriteCMPXCHGRMW,[ICXPort23,ICXPort06,ICXPort0156,ICXPort237,ICXPort4], 8, [1,2,1,1,1], 6>;
+defm : X86WriteRes<WriteCMPXCHGRMW,[ICXPort23,ICXPort06,ICXPort0156,ICXPort78,ICXPort49], 8, [1,2,1,1,1], 6>;
defm : X86WriteRes<WriteXCHG, [ICXPort0156], 2, [3], 3>;
// TODO: Why isn't the ICXDivider used?
@@ -174,7 +173,7 @@ def : WriteRes<WriteLEA, [ICXPort15]>; // LEA instructions can't fold loads.
defm : ICXWriteResPair<WriteCMOV, [ICXPort06], 1, [1], 1>; // Conditional move.
defm : X86WriteRes<WriteFCMOV, [ICXPort1], 3, [1], 1>; // x87 conditional move.
def : WriteRes<WriteSETCC, [ICXPort06]>; // Setcc.
-def : WriteRes<WriteSETCCStore, [ICXPort06,ICXPort4,ICXPort237]> {
+def : WriteRes<WriteSETCCStore, [ICXPort06,ICXPort49,ICXPort78]> {
let Latency = 2;
let NumMicroOps = 3;
}
@@ -195,8 +194,8 @@ defm : ICXWriteResPair<WriteRotateCL, [ICXPort06], 3, [3], 3>;
// SHLD/SHRD.
defm : X86WriteRes<WriteSHDrri, [ICXPort1], 3, [1], 1>;
defm : X86WriteRes<WriteSHDrrcl,[ICXPort1,ICXPort06,ICXPort0156], 6, [1, 2, 1], 4>;
-defm : X86WriteRes<WriteSHDmri, [ICXPort1,ICXPort23,ICXPort237,ICXPort0156], 9, [1, 1, 1, 1], 4>;
-defm : X86WriteRes<WriteSHDmrcl,[ICXPort1,ICXPort23,ICXPort237,ICXPort06,ICXPort0156], 11, [1, 1, 1, 2, 1], 6>;
+defm : X86WriteRes<WriteSHDmri, [ICXPort1,ICXPort23,ICXPort78,ICXPort0156], 9, [1, 1, 1, 1], 4>;
+defm : X86WriteRes<WriteSHDmrcl,[ICXPort1,ICXPort23,ICXPort78,ICXPort06,ICXPort0156], 11, [1, 1, 1, 2, 1], 6>;
// Bit counts.
defm : ICXWriteResPair<WriteBSF, [ICXPort1], 3>;
@@ -212,8 +211,8 @@ defm : ICXWriteResPair<WriteBZHI, [ICXPort15], 1>;
// Loads, stores, and moves, not folded with other operations.
defm : X86WriteRes<WriteLoad, [ICXPort23], 5, [1], 1>;
-defm : X86WriteRes<WriteStore, [ICXPort237, ICXPort4], 1, [1,1], 1>;
-defm : X86WriteRes<WriteStoreNT, [ICXPort237, ICXPort4], 1, [1,1], 2>;
+defm : X86WriteRes<WriteStore, [ICXPort78, ICXPort49], 1, [1,1], 1>;
+defm : X86WriteRes<WriteStoreNT, [ICXPort78, ICXPort49], 1, [1,1], 2>;
defm : X86WriteRes<WriteMove, [ICXPort0156], 1, [1], 1>;
// Model the effect of clobbering the read-write mask operand of the GATHER operation.
@@ -237,17 +236,17 @@ defm : X86WriteRes<WriteFLoadX, [ICXPort23], 6, [1], 1>;
defm : X86WriteRes<WriteFLoadY, [ICXPort23], 7, [1], 1>;
defm : X86WriteRes<WriteFMaskedLoad, [ICXPort23,ICXPort015], 7, [1,1], 2>;
defm : X86WriteRes<WriteFMaskedLoadY, [ICXPort23,ICXPort015], 8, [1,1], 2>;
-defm : X86WriteRes<WriteFStore, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteFStoreX, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteFStoreY, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteFStoreNT, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteFStoreNTX, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteFStoreNTY, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-
-defm : X86WriteRes<WriteFMaskedStore32, [ICXPort237,ICXPort0], 2, [1,1], 2>;
-defm : X86WriteRes<WriteFMaskedStore32Y, [ICXPort237,ICXPort0], 2, [1,1], 2>;
-defm : X86WriteRes<WriteFMaskedStore64, [ICXPort237,ICXPort0], 2, [1,1], 2>;
-defm : X86WriteRes<WriteFMaskedStore64Y, [ICXPort237,ICXPort0], 2, [1,1], 2>;
+defm : X86WriteRes<WriteFStore, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteFStoreX, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteFStoreY, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteFStoreNT, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteFStoreNTX, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteFStoreNTY, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+
+defm : X86WriteRes<WriteFMaskedStore32, [ICXPort78,ICXPort49,ICXPort0], 2, [1,1,1], 2>;
+defm : X86WriteRes<WriteFMaskedStore32Y, [ICXPort78,ICXPort49,ICXPort0], 2, [1,1,1], 2>;
+defm : X86WriteRes<WriteFMaskedStore64, [ICXPort78,ICXPort49,ICXPort0], 2, [1,1,1], 2>;
+defm : X86WriteRes<WriteFMaskedStore64Y, [ICXPort78,ICXPort49,ICXPort0], 2, [1,1,1], 2>;
defm : X86WriteRes<WriteFMove, [ICXPort015], 1, [1], 1>;
defm : X86WriteRes<WriteFMoveX, [ICXPort015], 1, [1], 1>;
@@ -355,15 +354,15 @@ defm : X86WriteRes<WriteVecLoadNT, [ICXPort23], 6, [1], 1>;
defm : X86WriteRes<WriteVecLoadNTY, [ICXPort23], 7, [1], 1>;
defm : X86WriteRes<WriteVecMaskedLoad, [ICXPort23,ICXPort015], 7, [1,1], 2>;
defm : X86WriteRes<WriteVecMaskedLoadY, [ICXPort23,ICXPort015], 8, [1,1], 2>;
-defm : X86WriteRes<WriteVecStore, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteVecStoreX, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteVecStoreY, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteVecStoreNT, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteVecStoreNTY, [ICXPort237,ICXPort4], 1, [1,1], 2>;
-defm : X86WriteRes<WriteVecMaskedStore32, [ICXPort237,ICXPort0], 2, [1,1], 2>;
-defm : X86WriteRes<WriteVecMaskedStore32Y, [ICXPort237,ICXPort0], 2, [1,1], 2>;
-defm : X86WriteRes<WriteVecMaskedStore64, [ICXPort237,ICXPort0], 2, [1,1], 2>;
-defm : X86WriteRes<WriteVecMaskedStore64Y, [ICXPort237,ICXPort0], 2, [1,1], 2>;
+defm : X86WriteRes<WriteVecStore, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteVecStoreX, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteVecStoreY, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteVecStoreNT, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteVecStoreNTY, [ICXPort78,ICXPort49], 1, [1,1], 2>;
+defm : X86WriteRes<WriteVecMaskedStore32, [ICXPort78,ICXPort49,ICXPort0], 2, [1,1,1], 2>;
+defm : X86WriteRes<WriteVecMaskedStore32Y, [ICXPort78,ICXPort49,ICXPort0], 2, [1,1,1], 2>;
+defm : X86WriteRes<WriteVecMaskedStore64, [ICXPort78,ICXPort49,ICXPort0], 2, [1,1,1], 2>;
+defm : X86WriteRes<WriteVecMaskedStore64Y, [ICXPort78,ICXPort49,ICXPort0], 2, [1,1,1], 2>;
defm : X86WriteRes<WriteVecMove, [ICXPort05], 1, [1], 1>;
defm : X86WriteRes<WriteVecMoveX, [ICXPort015], 1, [1], 1>;
defm : X86WriteRes<WriteVecMoveY, [ICXPort015], 1, [1], 1>;
@@ -445,7 +444,7 @@ def : WriteRes<WriteVecExtract, [ICXPort0,ICXPort5]> {
let Latency = 3;
let NumMicroOps = 2;
}
-def : WriteRes<WriteVecExtractSt, [ICXPort4,ICXPort5,ICXPort237]> {
+def : WriteRes<WriteVecExtractSt, [ICXPort49,ICXPort5,ICXPort78]> {
let Latency = 2;
let NumMicroOps = 3;
}
@@ -488,9 +487,9 @@ defm : X86WriteRes<WriteCvtPH2PSZLd, [ICXPort23,ICXPort05], 10, [1,1], 2>;
defm : X86WriteRes<WriteCvtPS2PH, [ICXPort5,ICXPort01], 5, [1,1], 2>;
defm : X86WriteRes<WriteCvtPS2PHY, [ICXPort5,ICXPort01], 7, [1,1], 2>;
defm : X86WriteRes<WriteCvtPS2PHZ, [ICXPort5,ICXPort05], 7, [1,1], 2>;
-defm : X86WriteRes<WriteCvtPS2PHSt, [ICXPort4,ICXPort5,ICXPort237,ICXPort01], 6, [1,1,1,1], 4>;
-defm : X86WriteRes<WriteCvtPS2PHYSt, [ICXPort4,ICXPort5,ICXPort237,ICXPort01], 8, [1,1,1,1], 4>;
-defm : X86WriteRes<WriteCvtPS2PHZSt, [ICXPort4,ICXPort5,ICXPort237,ICXPort05], 8, [1,1,1,1], 4>;
+defm : X86WriteRes<WriteCvtPS2PHSt, [ICXPort49,ICXPort5,ICXPort78,ICXPort01], 6, [1,1,1,1], 4>;
+defm : X86WriteRes<WriteCvtPS2PHYSt, [ICXPort49,ICXPort5,ICXPort78,ICXPort01], 8, [1,1,1,1], 4>;
+defm : X86WriteRes<WriteCvtPS2PHZSt, [ICXPort49,ICXPort5,ICXPort78,ICXPort05], 8, [1,1,1,1], 4>;
// Strings instructions.
@@ -608,11 +607,11 @@ defm : ICXWriteResPair<WriteVarShuffle256, [ICXPort5], 3, [1], 1, 7>; // 256-bi
def : WriteRes<WriteMicrocoded, [ICXPort0156]> { let Latency = 100; } // def WriteMicrocoded : SchedWrite;
// Fence instructions.
-def : WriteRes<WriteFence, [ICXPort23, ICXPort4]>;
+def : WriteRes<WriteFence, [ICXPort78, ICXPort49]>;
// Load/store MXCSR.
def : WriteRes<WriteLDMXCSR, [ICXPort0,ICXPort23,ICXPort0156]> { let Latency = 7; let NumMicroOps = 3; let ResourceCycles = [1,1,1]; }
-def : WriteRes<WriteSTMXCSR, [ICXPort4,ICXPort5,ICXPort237]> { let Latency = 2; let NumMicroOps = 3; let ResourceCycles = [1,1,1]; }
+def : WriteRes<WriteSTMXCSR, [ICXPort49,ICXPort5,ICXPort78]> { let Latency = 2; let NumMicroOps = 3; let ResourceCycles = [1,1,1]; }
// Nop, not very useful expect it provides a model for nops!
def : WriteRes<WriteNop, []>;
@@ -732,7 +731,7 @@ def: InstRW<[ICXWriteResGroup10], (instrs SGDT64m,
STRm,
SYSCALL)>;
-def ICXWriteResGroup11 : SchedWriteRes<[ICXPort4,ICXPort237]> {
+def ICXWriteResGroup11 : SchedWriteRes<[ICXPort49,ICXPort78]> {
let Latency = 1;
let NumMicroOps = 2;
let ResourceCycles = [1,1];
@@ -772,7 +771,7 @@ def ICXWriteResGroup20 : SchedWriteRes<[ICXPort6,ICXPort0156]> {
}
def: InstRW<[ICXWriteResGroup20], (instregex "CLFLUSH")>;
-def ICXWriteResGroup21 : SchedWriteRes<[ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup21 : SchedWriteRes<[ICXPort49,ICXPort78]> {
let Latency = 2;
let NumMicroOps = 2;
let ResourceCycles = [1,1];
@@ -791,21 +790,21 @@ def: InstRW<[ICXWriteResGroup23], (instrs CWD,
ADC32i32, SBB32i32,
ADC64i32, SBB64i32)>;
-def ICXWriteResGroup25 : SchedWriteRes<[ICXPort4,ICXPort6,ICXPort237]> {
+def ICXWriteResGroup25 : SchedWriteRes<[ICXPort49,ICXPort6,ICXPort78]> {
let Latency = 2;
let NumMicroOps = 3;
let ResourceCycles = [1,1,1];
}
def: InstRW<[ICXWriteResGroup25], (instrs FNSTCW16m)>;
-def ICXWriteResGroup27 : SchedWriteRes<[ICXPort4,ICXPort237,ICXPort15]> {
+def ICXWriteResGroup27 : SchedWriteRes<[ICXPort49,ICXPort78,ICXPort15]> {
let Latency = 2;
let NumMicroOps = 3;
let ResourceCycles = [1,1,1];
}
def: InstRW<[ICXWriteResGroup27], (instregex "MOVBE(16|32|64)mr")>;
-def ICXWriteResGroup28 : SchedWriteRes<[ICXPort4,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup28 : SchedWriteRes<[ICXPort49,ICXPort78,ICXPort0156]> {
let Latency = 2;
let NumMicroOps = 3;
let ResourceCycles = [1,1,1];
@@ -814,7 +813,7 @@ def: InstRW<[ICXWriteResGroup28], (instrs PUSH16r, PUSH32r, PUSH64r, PUSH64i8,
STOSB, STOSL, STOSQ, STOSW)>;
def: InstRW<[ICXWriteResGroup28], (instregex "PUSH(16|32|64)rmr")>;
-def ICXWriteResGroup29 : SchedWriteRes<[ICXPort4,ICXPort237,ICXPort15]> {
+def ICXWriteResGroup29 : SchedWriteRes<[ICXPort49,ICXPort78,ICXPort15]> {
let Latency = 2;
let NumMicroOps = 5;
let ResourceCycles = [2,2,1];
@@ -910,7 +909,7 @@ def ICXWriteResGroup42 : SchedWriteRes<[ICXPort6,ICXPort0156]> {
}
def: InstRW<[ICXWriteResGroup42], (instregex "CLD")>;
-def ICXWriteResGroup43 : SchedWriteRes<[ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup43 : SchedWriteRes<[ICXPort49,ICXPort78]> {
let Latency = 3;
let NumMicroOps = 3;
let ResourceCycles = [1,2];
@@ -939,21 +938,21 @@ def ICXWriteResGroup44c : SchedWriteRes<[ICXPort1,ICXPort06,ICXPort0156]> {
}
def: InstRW<[ICXWriteResGroup44c], (instrs RCL8ri, RCL16ri, RCL32ri, RCL64ri)>;
-def ICXWriteResGroup45 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort237]> {
+def ICXWriteResGroup45 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort78]> {
let Latency = 3;
let NumMicroOps = 3;
let ResourceCycles = [1,1,1];
}
def: InstRW<[ICXWriteResGroup45], (instrs FNSTSWm)>;
-def ICXWriteResGroup47 : SchedWriteRes<[ICXPort4,ICXPort6,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup47 : SchedWriteRes<[ICXPort49,ICXPort6,ICXPort78,ICXPort0156]> {
let Latency = 3;
let NumMicroOps = 4;
let ResourceCycles = [1,1,1,1];
}
def: InstRW<[ICXWriteResGroup47], (instregex "CALL(16|32|64)r")>;
-def ICXWriteResGroup48 : SchedWriteRes<[ICXPort4,ICXPort237,ICXPort06,ICXPort0156]> {
+def ICXWriteResGroup48 : SchedWriteRes<[ICXPort49,ICXPort78,ICXPort06,ICXPort0156]> {
let Latency = 3;
let NumMicroOps = 4;
let ResourceCycles = [1,1,1,1];
@@ -1023,7 +1022,7 @@ def: InstRW<[ICXWriteResGroup51], (instregex "VEXPANDPD(Z|Z128|Z256)rr",
"VPMOVUSWB(Z|Z128|Z256)rr",
"VPMOVWB(Z|Z128|Z256)rr")>;
-def ICXWriteResGroup54 : SchedWriteRes<[ICXPort4,ICXPort5,ICXPort237]> {
+def ICXWriteResGroup54 : SchedWriteRes<[ICXPort49,ICXPort5,ICXPort78]> {
let Latency = 4;
let NumMicroOps = 3;
let ResourceCycles = [1,1,1];
@@ -1098,7 +1097,7 @@ def ICXWriteResGroup63 : SchedWriteRes<[ICXPort1,ICXPort6,ICXPort06]> {
}
def: InstRW<[ICXWriteResGroup63], (instregex "STR(16|32|64)r")>;
-def ICXWriteResGroup65 : SchedWriteRes<[ICXPort4,ICXPort237,ICXPort01]> {
+def ICXWriteResGroup65 : SchedWriteRes<[ICXPort49,ICXPort78,ICXPort01]> {
let Latency = 5;
let NumMicroOps = 3;
let ResourceCycles = [1,1,1];
@@ -1107,7 +1106,7 @@ def: InstRW<[ICXWriteResGroup65], (instregex "VCVTPS2PHZ128mr(b?)",
"VCVTPS2PHZ256mr(b?)",
"VCVTPS2PHZmr(b?)")>;
-def ICXWriteResGroup66 : SchedWriteRes<[ICXPort4,ICXPort5,ICXPort237]> {
+def ICXWriteResGroup66 : SchedWriteRes<[ICXPort49,ICXPort5,ICXPort78]> {
let Latency = 5;
let NumMicroOps = 4;
let ResourceCycles = [1,2,1];
@@ -1137,7 +1136,7 @@ def ICXWriteResGroup67 : SchedWriteRes<[ICXPort06,ICXPort0156]> {
}
def: InstRW<[ICXWriteResGroup67], (instrs XSETBV)>;
-def ICXWriteResGroup69 : SchedWriteRes<[ICXPort4,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup69 : SchedWriteRes<[ICXPort49,ICXPort78,ICXPort0156]> {
let Latency = 5;
let NumMicroOps = 6;
let ResourceCycles = [1,1,4];
@@ -1245,7 +1244,7 @@ def ICXWriteResGroup84 : SchedWriteRes<[ICXPort1,ICXPort6,ICXPort06,ICXPort0156]
}
def: InstRW<[ICXWriteResGroup84], (instregex "SLDT(16|32|64)r")>;
-def ICXWriteResGroup86 : SchedWriteRes<[ICXPort4,ICXPort23,ICXPort237,ICXPort06]> {
+def ICXWriteResGroup86 : SchedWriteRes<[ICXPort49,ICXPort23,ICXPort78,ICXPort06]> {
let Latency = 6;
let NumMicroOps = 4;
let ResourceCycles = [1,1,1,1];
@@ -1254,7 +1253,7 @@ def: InstRW<[ICXWriteResGroup86], (instregex "SAR(8|16|32|64)m(1|i)",
"SHL(8|16|32|64)m(1|i)",
"SHR(8|16|32|64)m(1|i)")>;
-def ICXWriteResGroup87 : SchedWriteRes<[ICXPort4,ICXPort23,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup87 : SchedWriteRes<[ICXPort49,ICXPort23,ICXPort78,ICXPort0156]> {
let Latency = 6;
let NumMicroOps = 4;
let ResourceCycles = [1,1,1,1];
@@ -1437,7 +1436,7 @@ def ICXWriteResGroup104 : SchedWriteRes<[ICXPort6,ICXPort23,ICXPort0156]> {
}
def: InstRW<[ICXWriteResGroup104], (instrs LRET64, RET64)>;
-def ICXWriteResGroup106 : SchedWriteRes<[ICXPort4,ICXPort5,ICXPort237]> {
+def ICXWriteResGroup106 : SchedWriteRes<[ICXPort49,ICXPort5,ICXPort78]> {
let Latency = 7;
let NumMicroOps = 4;
let ResourceCycles = [1,2,1];
@@ -1447,7 +1446,7 @@ def: InstRW<[ICXWriteResGroup106], (instregex "VCOMPRESSPD(Z|Z128|Z256)mr(b?)",
"VPCOMPRESSD(Z|Z128|Z256)mr(b?)",
"VPCOMPRESSQ(Z|Z128|Z256)mr(b?)")>;
-def ICXWriteResGroup107 : SchedWriteRes<[ICXPort4,ICXPort23,ICXPort237,ICXPort06]> {
+def ICXWriteResGroup107 : SchedWriteRes<[ICXPort49,ICXPort23,ICXPort78,ICXPort06]> {
let Latency = 7;
let NumMicroOps = 5;
let ResourceCycles = [1,1,1,2];
@@ -1463,14 +1462,14 @@ def ICXWriteResGroup107_1 : SchedWriteRes<[ICXPort06]> {
def: InstRW<[ICXWriteResGroup107_1], (instrs ROL8r1, ROL16r1, ROL32r1, ROL64r1,
ROR8r1, ROR16r1, ROR32r1, ROR64r1)>;
-def ICXWriteResGroup108 : SchedWriteRes<[ICXPort4,ICXPort23,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup108 : SchedWriteRes<[ICXPort49,ICXPort23,ICXPort78,ICXPort0156]> {
let Latency = 7;
let NumMicroOps = 5;
let ResourceCycles = [1,1,1,2];
}
def: InstRW<[ICXWriteResGroup108], (instregex "XADD(8|16|32|64)rm")>;
-def ICXWriteResGroup109 : SchedWriteRes<[ICXPort4,ICXPort6,ICXPort23,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup109 : SchedWriteRes<[ICXPort49,ICXPort6,ICXPort23,ICXPort78,ICXPort0156]> {
let Latency = 7;
let NumMicroOps = 5;
let ResourceCycles = [1,1,1,1,1];
@@ -1478,7 +1477,7 @@ def ICXWriteResGroup109 : SchedWriteRes<[ICXPort4,ICXPort6,ICXPort23,ICXPort237,
def: InstRW<[ICXWriteResGroup109], (instregex "CALL(16|32|64)m")>;
def: InstRW<[ICXWriteResGroup109], (instrs FARCALL64m)>;
-def ICXWriteResGroup110 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup110 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort78,ICXPort0156]> {
let Latency = 7;
let NumMicroOps = 7;
let ResourceCycles = [1,2,2,2];
@@ -1495,7 +1494,7 @@ def ICXWriteResGroup111 : SchedWriteRes<[ICXPort6,ICXPort06,ICXPort15,ICXPort015
}
def: InstRW<[ICXWriteResGroup111], (instrs LOOP)>;
-def ICXWriteResGroup112 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup112 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort78,ICXPort0156]> {
let Latency = 7;
let NumMicroOps = 11;
let ResourceCycles = [1,4,4,2];
@@ -1505,7 +1504,7 @@ def: InstRW<[ICXWriteResGroup112], (instrs VPSCATTERDQZ256mr,
VSCATTERDPDZ256mr,
VSCATTERQPDZ256mr)>;
-def ICXWriteResGroup113 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup113 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort78,ICXPort0156]> {
let Latency = 7;
let NumMicroOps = 19;
let ResourceCycles = [1,8,8,2];
@@ -1515,7 +1514,7 @@ def: InstRW<[ICXWriteResGroup113], (instrs VPSCATTERDQZmr,
VSCATTERDPDZmr,
VSCATTERQPDZmr)>;
-def ICXWriteResGroup114 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort5,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup114 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort5,ICXPort78,ICXPort0156]> {
let Latency = 7;
let NumMicroOps = 36;
let ResourceCycles = [1,16,1,16,2];
@@ -1614,7 +1613,7 @@ def ICXWriteResGroup123 : SchedWriteRes<[ICXPort0,ICXPort5,ICXPort23]> {
}
def: InstRW<[ICXWriteResGroup123], (instregex "MMX_PH(ADD|SUB)SWrm")>;
-def ICXWriteResGroup127 : SchedWriteRes<[ICXPort23,ICXPort237,ICXPort06,ICXPort0156]> {
+def ICXWriteResGroup127 : SchedWriteRes<[ICXPort23,ICXPort78,ICXPort06,ICXPort0156]> {
let Latency = 8;
let NumMicroOps = 5;
let ResourceCycles = [1,1,1,2];
@@ -1622,7 +1621,7 @@ def ICXWriteResGroup127 : SchedWriteRes<[ICXPort23,ICXPort237,ICXPort06,ICXPort0
def: InstRW<[ICXWriteResGroup127], (instregex "RCL(8|16|32|64)m(1|i)",
"RCR(8|16|32|64)m(1|i)")>;
-def ICXWriteResGroup128 : SchedWriteRes<[ICXPort4,ICXPort23,ICXPort237,ICXPort06]> {
+def ICXWriteResGroup128 : SchedWriteRes<[ICXPort49,ICXPort23,ICXPort78,ICXPort06]> {
let Latency = 8;
let NumMicroOps = 6;
let ResourceCycles = [1,1,1,3];
@@ -1633,14 +1632,14 @@ def: InstRW<[ICXWriteResGroup128], (instregex "ROL(8|16|32|64)mCL",
"SHL(8|16|32|64)mCL",
"SHR(8|16|32|64)mCL")>;
-def ICXWriteResGroup130 : SchedWriteRes<[ICXPort4,ICXPort23,ICXPort237,ICXPort06,ICXPort0156]> {
+def ICXWriteResGroup130 : SchedWriteRes<[ICXPort49,ICXPort23,ICXPort78,ICXPort06,ICXPort0156]> {
let Latency = 8;
let NumMicroOps = 6;
let ResourceCycles = [1,1,1,2,1];
}
def: SchedAlias<WriteADCRMW, ICXWriteResGroup130>;
-def ICXWriteResGroup131 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort5,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup131 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort5,ICXPort78,ICXPort0156]> {
let Latency = 8;
let NumMicroOps = 8;
let ResourceCycles = [1,2,1,2,2];
@@ -1650,7 +1649,7 @@ def: InstRW<[ICXWriteResGroup131], (instrs VPSCATTERQDZ128mr,
VSCATTERQPSZ128mr,
VSCATTERQPSZ256mr)>;
-def ICXWriteResGroup132 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort5,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup132 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort5,ICXPort78,ICXPort0156]> {
let Latency = 8;
let NumMicroOps = 12;
let ResourceCycles = [1,4,1,4,2];
@@ -1658,7 +1657,7 @@ def ICXWriteResGroup132 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort5,ICXPort237,I
def: InstRW<[ICXWriteResGroup132], (instrs VPSCATTERDDZ128mr,
VSCATTERDPSZ128mr)>;
-def ICXWriteResGroup133 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort5,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup133 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort5,ICXPort78,ICXPort0156]> {
let Latency = 8;
let NumMicroOps = 20;
let ResourceCycles = [1,8,1,8,2];
@@ -1666,7 +1665,7 @@ def ICXWriteResGroup133 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort5,ICXPort237,I
def: InstRW<[ICXWriteResGroup133], (instrs VPSCATTERDDZ256mr,
VSCATTERDPSZ256mr)>;
-def ICXWriteResGroup134 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort5,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup134 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort5,ICXPort78,ICXPort0156]> {
let Latency = 8;
let NumMicroOps = 36;
let ResourceCycles = [1,16,1,16,2];
@@ -1851,7 +1850,7 @@ def ICXWriteResGroup154 : SchedWriteRes<[ICXPort5,ICXPort01,ICXPort23]> {
def: InstRW<[ICXWriteResGroup154], (instrs VPHADDSWYrm,
VPHSUBSWYrm)>;
-def ICXWriteResGroup157 : SchedWriteRes<[ICXPort4,ICXPort6,ICXPort23,ICXPort237,ICXPort06,ICXPort0156]> {
+def ICXWriteResGroup157 : SchedWriteRes<[ICXPort49,ICXPort6,ICXPort23,ICXPort78,ICXPort06,ICXPort0156]> {
let Latency = 10;
let NumMicroOps = 8;
let ResourceCycles = [1,1,1,1,1,3];
@@ -2056,14 +2055,14 @@ def ICXWriteResGroup194 : SchedWriteRes<[ICXPort1,ICXPort5,ICXPort01,ICXPort23,I
}
def: InstRW<[ICXWriteResGroup194], (instregex "VPCONFLICTDZ128rm(b?)")>;
-def ICXWriteResGroup195 : SchedWriteRes<[ICXPort1,ICXPort23,ICXPort237,ICXPort06,ICXPort15,ICXPort0156]> {
+def ICXWriteResGroup195 : SchedWriteRes<[ICXPort1,ICXPort23,ICXPort78,ICXPort06,ICXPort15,ICXPort0156]> {
let Latency = 15;
let NumMicroOps = 10;
let ResourceCycles = [1,1,1,5,1,1];
}
def: InstRW<[ICXWriteResGroup195], (instregex "RCL(8|16|32|64)mCL")>;
-def ICXWriteResGroup199 : SchedWriteRes<[ICXPort4,ICXPort23,ICXPort237,ICXPort06,ICXPort15,ICXPort0156]> {
+def ICXWriteResGroup199 : SchedWriteRes<[ICXPort49,ICXPort23,ICXPort78,ICXPort06,ICXPort15,ICXPort0156]> {
let Latency = 16;
let NumMicroOps = 14;
let ResourceCycles = [1,1,1,4,2,5];
@@ -2098,7 +2097,7 @@ def ICXWriteResGroup207 : SchedWriteRes<[ICXPort5,ICXPort6,ICXPort06,ICXPort0156
}
def: InstRW<[ICXWriteResGroup207], (instrs CPUID, RDTSC)>;
-def ICXWriteResGroup208 : SchedWriteRes<[ICXPort1,ICXPort23,ICXPort237,ICXPort06,ICXPort15,ICXPort0156]> {
+def ICXWriteResGroup208 : SchedWriteRes<[ICXPort1,ICXPort23,ICXPort78,ICXPort06,ICXPort15,ICXPort0156]> {
let Latency = 18;
let NumMicroOps = 11;
let ResourceCycles = [2,1,1,4,1,2];
@@ -2162,7 +2161,7 @@ def ICXWriteGatherEVEX16 : SchedWriteRes<[ICXPort0,ICXPort23,ICXPort015,ICXPort0
}
def: InstRW<[ICXWriteGatherEVEX16], (instrs VGATHERDPSZrm, VPGATHERDDZrm)>;
-def ICXWriteResGroup219 : SchedWriteRes<[ICXPort4,ICXPort5,ICXPort6,ICXPort23,ICXPort237,ICXPort06,ICXPort0156]> {
+def ICXWriteResGroup219 : SchedWriteRes<[ICXPort49,ICXPort5,ICXPort6,ICXPort23,ICXPort78,ICXPort06,ICXPort0156]> {
let Latency = 20;
let NumMicroOps = 8;
let ResourceCycles = [1,1,1,1,1,1,2];
@@ -2217,7 +2216,7 @@ def ICXWriteResGroup225 : SchedWriteRes<[ICXPort5,ICXPort01,ICXPort015]> {
def: InstRW<[ICXWriteResGroup225], (instregex "VPCONFLICTDZ128rr",
"VPCONFLICTQZ256rr")>;
-def ICXWriteResGroup228 : SchedWriteRes<[ICXPort0,ICXPort4,ICXPort5,ICXPort23,ICXPort237,ICXPort06,ICXPort0156]> {
+def ICXWriteResGroup228 : SchedWriteRes<[ICXPort0,ICXPort49,ICXPort5,ICXPort23,ICXPort78,ICXPort06,ICXPort0156]> {
let Latency = 23;
let NumMicroOps = 19;
let ResourceCycles = [2,1,4,1,1,4,6];
@@ -2260,7 +2259,7 @@ def ICXWriteResGroup247 : SchedWriteRes<[ICXPort5,ICXPort6,ICXPort23,ICXPort06,I
def: InstRW<[ICXWriteResGroup247], (instregex "IN(8|16|32)ri",
"IN(8|16|32)rr")>;
-def ICXWriteResGroup248 : SchedWriteRes<[ICXPort5,ICXPort6,ICXPort23,ICXPort237,ICXPort06,ICXPort0156]> {
+def ICXWriteResGroup248 : SchedWriteRes<[ICXPort5,ICXPort6,ICXPort23,ICXPort78,ICXPort06,ICXPort0156]> {
let Latency = 35;
let NumMicroOps = 23;
let ResourceCycles = [1,5,2,1,4,10];
@@ -2283,14 +2282,14 @@ def ICXWriteResGroup250 : SchedWriteRes<[ICXPort1,ICXPort6,ICXPort23,ICXPort0156
}
def: InstRW<[ICXWriteResGroup250], (instregex "XRSTOR(64)?")>;
-def ICXWriteResGroup252 : SchedWriteRes<[ICXPort1,ICXPort4,ICXPort5,ICXPort6,ICXPort23,ICXPort237,ICXPort15,ICXPort0156]> {
+def ICXWriteResGroup252 : SchedWriteRes<[ICXPort1,ICXPort49,ICXPort5,ICXPort6,ICXPort23,ICXPort78,ICXPort15,ICXPort0156]> {
let Latency = 40;
let NumMicroOps = 18;
let ResourceCycles = [1,1,2,3,1,1,1,8];
}
def: InstRW<[ICXWriteResGroup252], (instrs VMCLEARm)>;
-def ICXWriteResGroup253 : SchedWriteRes<[ICXPort4,ICXPort6,ICXPort23,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup253 : SchedWriteRes<[ICXPort49,ICXPort6,ICXPort23,ICXPort78,ICXPort0156]> {
let Latency = 41;
let NumMicroOps = 39;
let ResourceCycles = [1,10,1,1,26];
@@ -2304,7 +2303,7 @@ def ICXWriteResGroup254 : SchedWriteRes<[ICXPort5,ICXPort0156]> {
}
def: InstRW<[ICXWriteResGroup254], (instrs RDTSCP)>;
-def ICXWriteResGroup255 : SchedWriteRes<[ICXPort4,ICXPort6,ICXPort23,ICXPort237,ICXPort0156]> {
+def ICXWriteResGroup255 : SchedWriteRes<[ICXPort49,ICXPort6,ICXPort23,ICXPort78,ICXPort0156]> {
let Latency = 42;
let NumMicroOps = 40;
let ResourceCycles = [1,11,1,1,26];
@@ -2362,7 +2361,7 @@ def ICXWriteResGroup263 : SchedWriteRes<[ICXPort5,ICXPort05,ICXPort0156]> {
}
def: InstRW<[ICXWriteResGroup263], (instrs FNINIT)>;
-def ICXWriteResGroup266 : SchedWriteRes<[ICXPort0,ICXPort1,ICXPort4,ICXPort5,ICXPort6,ICXPort237,ICXPort06,ICXPort0156]> {
+def ICXWriteResGroup266 : SchedWriteRes<[ICXPort0,ICXPort1,ICXPort49,ICXPort5,ICXPort6,ICXPort78,ICXPort06,ICXPort0156]> {
let Latency = 106;
let NumMicroOps = 100;
let ResourceCycles = [9,1,11,16,1,11,21,30];
@@ -2526,7 +2525,7 @@ def ICXWriteSETA_SETBEr : SchedWriteRes<[ICXPort06]> {
let NumMicroOps = 2;
}
-def ICXWriteSETA_SETBEm : SchedWriteRes<[ICXPort4,ICXPort237,ICXPort06]> {
+def ICXWriteSETA_SETBEm : SchedWriteRes<[ICXPort49,ICXPort78,ICXPort06]> {
let Latency = 3;
let ResourceCycles = [1,1,2];
let NumMicroOps = 4;
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/independent-load-stores.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/independent-load-stores.s
index 6cdbe025d04ca6..70df4681804dd0 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/independent-load-stores.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/independent-load-stores.s
@@ -16,20 +16,20 @@
# ALL: Iterations: 100
# ALL-NEXT: Instructions: 1000
-# NOALIAS-NEXT: Total Cycles: 1009
+# NOALIAS-NEXT: Total Cycles: 509
# YESALIAS-NEXT: Total Cycles: 7003
# ALL-NEXT: Total uOps: 3000
# ALL: Dispatch Width: 6
-# NOALIAS-NEXT: uOps Per Cycle: 2.97
-# NOALIAS-NEXT: IPC: 0.99
+# NOALIAS-NEXT: uOps Per Cycle: 5.89
+# NOALIAS-NEXT: IPC: 1.96
# YESALIAS-NEXT: uOps Per Cycle: 0.43
# YESALIAS-NEXT: IPC: 0.14
-# ALL-NEXT: Block RThroughput: 10.0
+# ALL-NEXT: Block RThroughput: 5.0
# ALL: Instruction Info:
# ALL-NEXT: [1]: #uOps
@@ -40,16 +40,16 @@
# ALL-NEXT: [6]: HasSideEffects (U)
# ALL: [1] [2] [3] [4] [5] [6] Instructions:
-# ALL-NEXT: 3 7 1.00 * * addq $44, 64(%r14)
-# ALL-NEXT: 3 7 1.00 * * addq $44, 128(%r14)
-# ALL-NEXT: 3 7 1.00 * * addq $44, 192(%r14)
-# ALL-NEXT: 3 7 1.00 * * addq $44, 256(%r14)
-# ALL-NEXT: 3 7 1.00 * * addq $44, 320(%r14)
-# ALL-NEXT: 3 7 1.00 * * addq $44, 384(%r14)
-# ALL-NEXT: 3 7 1.00 * * addq $44, 448(%r14)
-# ALL-NEXT: 3 7 1.00 * * addq $44, 512(%r14)
-# ALL-NEXT: 3 7 1.00 * * addq $44, 576(%r14)
-# ALL-NEXT: 3 7 1.00 * * addq $44, 640(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 64(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 128(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 192(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 256(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 320(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 384(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 448(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 512(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 576(%r14)
+# ALL-NEXT: 3 7 0.50 * * addq $44, 640(%r14)
# ALL: Resources:
# ALL-NEXT: [0] - ICXDivider
@@ -67,39 +67,39 @@
# ALL: Resource pressure per iteration:
# ALL-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# ALL-NEXT: - - 2.50 2.50 6.66 6.67 10.00 2.50 2.50 6.67 - -
+# ALL-NEXT: - - 2.50 2.50 5.00 5.00 5.00 2.50 2.50 5.00 5.00 5.00
# ALL: Resource pressure by instruction:
# ALL-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
-# ALL-NEXT: - - - 0.50 0.66 0.67 1.00 - 0.50 0.67 - - addq $44, 64(%r14)
-# ALL-NEXT: - - 0.50 - 0.67 0.66 1.00 0.50 - 0.67 - - addq $44, 128(%r14)
-# ALL-NEXT: - - - 0.50 0.67 0.67 1.00 - 0.50 0.66 - - addq $44, 192(%r14)
-# ALL-NEXT: - - 0.50 - 0.66 0.67 1.00 0.50 - 0.67 - - addq $44, 256(%r14)
-# ALL-NEXT: - - - 0.50 0.67 0.66 1.00 - 0.50 0.67 - - addq $44, 320(%r14)
-# ALL-NEXT: - - 0.50 - 0.67 0.67 1.00 0.50 - 0.66 - - addq $44, 384(%r14)
-# ALL-NEXT: - - - 0.50 0.66 0.67 1.00 - 0.50 0.67 - - addq $44, 448(%r14)
-# ALL-NEXT: - - 0.50 - 0.67 0.66 1.00 0.50 - 0.67 - - addq $44, 512(%r14)
-# ALL-NEXT: - - - 0.50 0.67 0.67 1.00 - 0.50 0.66 - - addq $44, 576(%r14)
-# ALL-NEXT: - - 0.50 - 0.66 0.67 1.00 0.50 - 0.67 - - addq $44, 640(%r14)
+# ALL-NEXT: - - - 0.50 - 1.00 - - 0.50 - 1.00 1.00 addq $44, 64(%r14)
+# ALL-NEXT: - - 0.50 - 1.00 - 1.00 0.50 - 1.00 - - addq $44, 128(%r14)
+# ALL-NEXT: - - - 0.50 - 1.00 - - 0.50 - 1.00 1.00 addq $44, 192(%r14)
+# ALL-NEXT: - - 0.50 - 1.00 - 1.00 0.50 - 1.00 - - addq $44, 256(%r14)
+# ALL-NEXT: - - - 0.50 - 1.00 - - 0.50 - 1.00 1.00 addq $44, 320(%r14)
+# ALL-NEXT: - - 0.50 - 1.00 - 1.00 0.50 - 1.00 - - addq $44, 384(%r14)
+# ALL-NEXT: - - - 0.50 - 1.00 - - 0.50 - 1.00 1.00 addq $44, 448(%r14)
+# ALL-NEXT: - - 0.50 - 1.00 - 1.00 0.50 - 1.00 - - addq $44, 512(%r14)
+# ALL-NEXT: - - - 0.50 - 1.00 - - 0.50 - 1.00 1.00 addq $44, 576(%r14)
+# ALL-NEXT: - - 0.50 - 1.00 - 1.00 0.50 - 1.00 - - addq $44, 640(%r14)
# ALL: Timeline view:
-# NOALIAS-NEXT: 012345678
+# NOALIAS-NEXT: 0123
# NOALIAS-NEXT: Index 0123456789
# YESALIAS-NEXT: 0123456789 0123456789 0123456789 012
# YESALIAS-NEXT: Index 0123456789 0123456789 0123456789 0123456789
-# NOALIAS: [0,0] DeeeeeeeER. . . addq $44, 64(%r14)
-# NOALIAS-NEXT: [0,1] D=eeeeeeeER . . addq $44, 128(%r14)
-# NOALIAS-NEXT: [0,2] .D=eeeeeeeER . . addq $44, 192(%r14)
-# NOALIAS-NEXT: [0,3] .D==eeeeeeeER . . addq $44, 256(%r14)
-# NOALIAS-NEXT: [0,4] . D==eeeeeeeER . . addq $44, 320(%r14)
-# NOALIAS-NEXT: [0,5] . D===eeeeeeeER. . addq $44, 384(%r14)
-# NOALIAS-NEXT: [0,6] . D===eeeeeeeER . addq $44, 448(%r14)
-# NOALIAS-NEXT: [0,7] . D====eeeeeeeER . addq $44, 512(%r14)
-# NOALIAS-NEXT: [0,8] . D====eeeeeeeER. addq $44, 576(%r14)
-# NOALIAS-NEXT: [0,9] . D=====eeeeeeeER addq $44, 640(%r14)
+# NOALIAS: [0,0] DeeeeeeeER. . addq $44, 64(%r14)
+# NOALIAS-NEXT: [0,1] DeeeeeeeER. . addq $44, 128(%r14)
+# NOALIAS-NEXT: [0,2] .DeeeeeeeER . addq $44, 192(%r14)
+# NOALIAS-NEXT: [0,3] .DeeeeeeeER . addq $44, 256(%r14)
+# NOALIAS-NEXT: [0,4] . DeeeeeeeER . addq $44, 320(%r14)
+# NOALIAS-NEXT: [0,5] . DeeeeeeeER . addq $44, 384(%r14)
+# NOALIAS-NEXT: [0,6] . DeeeeeeeER. addq $44, 448(%r14)
+# NOALIAS-NEXT: [0,7] . DeeeeeeeER. addq $44, 512(%r14)
+# NOALIAS-NEXT: [0,8] . DeeeeeeeER addq $44, 576(%r14)
+# NOALIAS-NEXT: [0,9] . DeeeeeeeER addq $44, 640(%r14)
# YESALIAS: [0,0] DeeeeeeeER. . . . . . . . . . . . . . addq $44, 64(%r14)
# YESALIAS-NEXT: [0,1] D=======eeeeeeeER . . . . . . . . . . . . addq $44, 128(%r14)
@@ -121,16 +121,16 @@
# ALL: [0] [1] [2] [3]
# ALL-NEXT: 0. 1 1.0 1.0 0.0 addq $44, 64(%r14)
-# NOALIAS-NEXT: 1. 1 2.0 1.0 0.0 addq $44, 128(%r14)
-# NOALIAS-NEXT: 2. 1 2.0 1.0 0.0 addq $44, 192(%r14)
-# NOALIAS-NEXT: 3. 1 3.0 1.0 0.0 addq $44, 256(%r14)
-# NOALIAS-NEXT: 4. 1 3.0 1.0 0.0 addq $44, 320(%r14)
-# NOALIAS-NEXT: 5. 1 4.0 1.0 0.0 addq $44, 384(%r14)
-# NOALIAS-NEXT: 6. 1 4.0 1.0 0.0 addq $44, 448(%r14)
-# NOALIAS-NEXT: 7. 1 5.0 1.0 0.0 addq $44, 512(%r14)
-# NOALIAS-NEXT: 8. 1 5.0 1.0 0.0 addq $44, 576(%r14)
-# NOALIAS-NEXT: 9. 1 6.0 1.0 0.0 addq $44, 640(%r14)
-# NOALIAS-NEXT: 1 3.5 1.0 0.0 <total>
+# NOALIAS-NEXT: 1. 1 1.0 0.0 0.0 addq $44, 128(%r14)
+# NOALIAS-NEXT: 2. 1 1.0 1.0 0.0 addq $44, 192(%r14)
+# NOALIAS-NEXT: 3. 1 1.0 0.0 0.0 addq $44, 256(%r14)
+# NOALIAS-NEXT: 4. 1 1.0 1.0 0.0 addq $44, 320(%r14)
+# NOALIAS-NEXT: 5. 1 1.0 0.0 0.0 addq $44, 384(%r14)
+# NOALIAS-NEXT: 6. 1 1.0 1.0 0.0 addq $44, 448(%r14)
+# NOALIAS-NEXT: 7. 1 1.0 0.0 0.0 addq $44, 512(%r14)
+# NOALIAS-NEXT: 8. 1 1.0 1.0 0.0 addq $44, 576(%r14)
+# NOALIAS-NEXT: 9. 1 1.0 0.0 0.0 addq $44, 640(%r14)
+# NOALIAS-NEXT: 1 1.0 0.5 0.0 <total>
# YESALIAS-NEXT: 1. 1 8.0 0.0 0.0 addq $44, 128(%r14)
# YESALIAS-NEXT: 2. 1 14.0 0.0 0.0 addq $44, 192(%r14)
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
index acdf4645c1d26c..ad7bc8d27e2159 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
@@ -1193,7 +1193,7 @@ vzeroupper
# CHECK-NEXT: 4 13 1.33 vdpps $22, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: 5 20 1.33 * vdpps $22, (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vextractf128 $1, %ymm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vextractf128 $1, %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vextractf128 $1, %ymm0, (%rax)
# CHECK-NEXT: 2 3 1.00 vextractps $1, %xmm0, %ecx
# CHECK-NEXT: 3 2 1.00 * vextractps $1, %xmm0, (%rax)
# CHECK-NEXT: 3 6 2.00 vhaddpd %xmm0, %xmm1, %xmm2
@@ -1219,7 +1219,7 @@ vzeroupper
# CHECK-NEXT: 1 6 0.50 * vlddqu (%rax), %xmm2
# CHECK-NEXT: 1 7 0.50 * vlddqu (%rax), %ymm2
# CHECK-NEXT: 3 7 1.00 * * U vldmxcsr (%rax)
-# CHECK-NEXT: 2 1 1.00 * * U vmaskmovdqu %xmm0, %xmm1
+# CHECK-NEXT: 2 1 0.50 * * U vmaskmovdqu %xmm0, %xmm1
# CHECK-NEXT: 2 7 0.50 * vmaskmovpd (%rax), %xmm0, %xmm2
# CHECK-NEXT: 2 8 0.50 * vmaskmovpd (%rax), %ymm0, %ymm2
# CHECK-NEXT: 2 2 1.00 * * vmaskmovpd %xmm0, %xmm1, (%rax)
@@ -1253,66 +1253,66 @@ vzeroupper
# CHECK-NEXT: 1 4 0.50 vminss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 2 9 0.50 * vminss (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 1 0.33 vmovapd %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovapd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovapd %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * vmovapd (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 vmovapd %ymm0, %ymm2
-# CHECK-NEXT: 2 1 1.00 * vmovapd %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovapd %ymm0, (%rax)
# CHECK-NEXT: 1 7 0.50 * vmovapd (%rax), %ymm2
# CHECK-NEXT: 1 1 0.33 vmovaps %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovaps %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovaps %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * vmovaps (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 vmovaps %ymm0, %ymm2
-# CHECK-NEXT: 2 1 1.00 * vmovaps %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovaps %ymm0, (%rax)
# CHECK-NEXT: 1 7 0.50 * vmovaps (%rax), %ymm2
# CHECK-NEXT: 1 1 1.00 vmovd %eax, %xmm2
# CHECK-NEXT: 1 5 0.50 * vmovd (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 vmovd %xmm0, %ecx
-# CHECK-NEXT: 2 1 1.00 * vmovd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovd %xmm0, (%rax)
# CHECK-NEXT: 1 1 1.00 vmovddup %xmm0, %xmm2
# CHECK-NEXT: 1 6 0.50 * vmovddup (%rax), %xmm2
# CHECK-NEXT: 1 1 1.00 vmovddup %ymm0, %ymm2
# CHECK-NEXT: 1 7 0.50 * vmovddup (%rax), %ymm2
# CHECK-NEXT: 1 1 0.33 vmovdqa %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovdqa %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqa %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * vmovdqa (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 vmovdqa %ymm0, %ymm2
-# CHECK-NEXT: 2 1 1.00 * vmovdqa %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqa %ymm0, (%rax)
# CHECK-NEXT: 1 7 0.50 * vmovdqa (%rax), %ymm2
# CHECK-NEXT: 1 1 0.33 vmovdqu %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovdqu %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * vmovdqu (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 vmovdqu %ymm0, %ymm2
-# CHECK-NEXT: 2 1 1.00 * vmovdqu %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu %ymm0, (%rax)
# CHECK-NEXT: 1 7 0.50 * vmovdqu (%rax), %ymm2
# CHECK-NEXT: 1 1 1.00 vmovhlps %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 1 1 1.00 vmovlhps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovhpd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovhpd %xmm0, (%rax)
# CHECK-NEXT: 2 6 1.00 * vmovhpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovhps %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovhps %xmm0, (%rax)
# CHECK-NEXT: 2 6 1.00 * vmovhps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovlpd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovlpd %xmm0, (%rax)
# CHECK-NEXT: 2 6 1.00 * vmovlpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovlps %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovlps %xmm0, (%rax)
# CHECK-NEXT: 2 6 1.00 * vmovlps (%rax), %xmm1, %xmm2
# CHECK-NEXT: 1 2 1.00 vmovmskpd %xmm0, %ecx
# CHECK-NEXT: 1 2 1.00 vmovmskpd %ymm0, %ecx
# CHECK-NEXT: 1 2 1.00 vmovmskps %xmm0, %ecx
# CHECK-NEXT: 1 2 1.00 vmovmskps %ymm0, %ecx
-# CHECK-NEXT: 2 1 1.00 * vmovntdq %xmm0, (%rax)
-# CHECK-NEXT: 2 1 1.00 * vmovntdq %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovntdq %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovntdq %ymm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * vmovntdqa (%rax), %xmm2
# CHECK-NEXT: 1 7 0.50 * vmovntdqa (%rax), %ymm2
-# CHECK-NEXT: 2 1 1.00 * vmovntpd %xmm0, (%rax)
-# CHECK-NEXT: 2 1 1.00 * vmovntpd %ymm0, (%rax)
-# CHECK-NEXT: 2 1 1.00 * vmovntps %xmm0, (%rax)
-# CHECK-NEXT: 2 1 1.00 * vmovntps %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovntpd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovntpd %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovntps %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovntps %ymm0, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovq %xmm0, %xmm2
# CHECK-NEXT: 1 1 1.00 vmovq %rax, %xmm2
# CHECK-NEXT: 1 5 0.50 * vmovq (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 vmovq %xmm0, %rcx
-# CHECK-NEXT: 2 1 1.00 * vmovq %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovq %xmm0, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovsd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovsd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovsd %xmm0, (%rax)
# CHECK-NEXT: 1 5 0.50 * vmovsd (%rax), %xmm2
# CHECK-NEXT: 1 1 0.50 vmovshdup %xmm0, %xmm2
# CHECK-NEXT: 1 6 0.50 * vmovshdup (%rax), %xmm2
@@ -1323,19 +1323,19 @@ vzeroupper
# CHECK-NEXT: 1 1 0.50 vmovsldup %ymm0, %ymm2
# CHECK-NEXT: 1 7 0.50 * vmovsldup (%rax), %ymm2
# CHECK-NEXT: 1 1 0.33 vmovss %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovss %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovss %xmm0, (%rax)
# CHECK-NEXT: 1 5 0.50 * vmovss (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 vmovupd %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovupd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovupd %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * vmovupd (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 vmovupd %ymm0, %ymm2
-# CHECK-NEXT: 2 1 1.00 * vmovupd %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovupd %ymm0, (%rax)
# CHECK-NEXT: 1 7 0.50 * vmovupd (%rax), %ymm2
# CHECK-NEXT: 1 1 0.33 vmovups %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vmovups %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovups %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * vmovups (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 vmovups %ymm0, %ymm2
-# CHECK-NEXT: 2 1 1.00 * vmovups %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovups %ymm0, (%rax)
# CHECK-NEXT: 1 7 0.50 * vmovups (%rax), %ymm2
# CHECK-NEXT: 2 4 2.00 vmpsadbw $1, %xmm0, %xmm1, %xmm2
# CHECK-NEXT: 3 10 2.00 * vmpsadbw $1, (%rax), %xmm1, %xmm2
@@ -1738,7 +1738,7 @@ vzeroupper
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - 126.00 322.92 231.92 173.17 173.17 34.00 297.92 6.25 12.67 - -
+# CHECK-NEXT: - 126.00 322.92 231.92 160.50 160.50 19.00 297.92 6.25 19.00 19.00 19.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -1905,9 +1905,9 @@ vzeroupper
# CHECK-NEXT: - - 1.00 1.00 - - - 2.00 - - - - vdpps $22, %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - 1.00 1.00 0.50 0.50 - 2.00 - - - - vdpps $22, (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf128 $1, %ymm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextractf128 $1, %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextractf128 $1, %ymm0, (%rax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - vextractps $1, %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vextractps $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vextractps $1, %xmm0, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 2.33 - - - - vhaddpd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 2.33 - - - - vhaddpd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 2.33 - - - - vhaddpd %ymm0, %ymm1, %ymm2
@@ -1931,15 +1931,15 @@ vzeroupper
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vlddqu (%rax), %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vlddqu (%rax), %ymm2
# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 - 0.25 0.25 - - - vldmxcsr (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmaskmovdqu %xmm0, %xmm1
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmaskmovdqu %xmm0, %xmm1
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmaskmovpd (%rax), %xmm0, %xmm2
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmaskmovpd (%rax), %ymm0, %ymm2
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 - - - 0.33 - - vmaskmovpd %xmm0, %xmm1, (%rax)
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 - - - 0.33 - - vmaskmovpd %ymm0, %ymm1, (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - - 0.50 0.50 0.50 vmaskmovpd %xmm0, %xmm1, (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - - 0.50 0.50 0.50 vmaskmovpd %ymm0, %ymm1, (%rax)
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmaskmovps (%rax), %xmm0, %xmm2
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmaskmovps (%rax), %ymm0, %ymm2
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 - - - 0.33 - - vmaskmovps %xmm0, %xmm1, (%rax)
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 - - - 0.33 - - vmaskmovps %ymm0, %ymm1, (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - - 0.50 0.50 0.50 vmaskmovps %xmm0, %xmm1, (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - - 0.50 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 - - - - - - vmaxpd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - vmaxpd %ymm0, %ymm1, %ymm2
@@ -1965,66 +1965,66 @@ vzeroupper
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - vminss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - vminss (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovapd %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovapd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovapd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovapd (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovapd %ymm0, %ymm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovapd %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovapd %ymm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovapd (%rax), %ymm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovaps %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovaps %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovaps %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovaps (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovaps %ymm0, %ymm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovaps %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovaps %ymm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovaps (%rax), %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovd %eax, %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovd (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - vmovd %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovd %xmm0, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovddup %xmm0, %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovddup (%rax), %xmm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovddup %ymm0, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovddup (%rax), %ymm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovdqa (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa %ymm0, %ymm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa %ymm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovdqa (%rax), %ymm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovdqu (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu %ymm0, %ymm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu %ymm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovdqu (%rax), %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovhlps %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovlhps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovhpd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovhpd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vmovhpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovhps %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovhps %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vmovhps (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovlpd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovlpd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vmovlpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovlps %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovlps %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vmovlps (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - vmovmskpd %xmm0, %ecx
# CHECK-NEXT: - - 1.00 - - - - - - - - - vmovmskpd %ymm0, %ecx
# CHECK-NEXT: - - 1.00 - - - - - - - - - vmovmskps %xmm0, %ecx
# CHECK-NEXT: - - 1.00 - - - - - - - - - vmovmskps %ymm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovntdq %xmm0, (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovntdq %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovntdq %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovntdq %ymm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovntdqa (%rax), %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovntdqa (%rax), %ymm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovntpd %xmm0, (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovntpd %ymm0, (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovntps %xmm0, (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovntps %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovntpd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovntpd %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovntps %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovntps %ymm0, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovq %xmm0, %xmm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovq %rax, %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovq (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - vmovq %xmm0, %rcx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovq %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovq %xmm0, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovsd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovsd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovsd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovsd (%rax), %xmm2
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - - - vmovshdup %xmm0, %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovshdup (%rax), %xmm2
@@ -2035,19 +2035,19 @@ vzeroupper
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - - - vmovsldup %ymm0, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovsldup (%rax), %ymm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovss %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovss %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovss %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovss (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovupd %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovupd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovupd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovupd (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovupd %ymm0, %ymm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovupd %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovupd %ymm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovupd (%rax), %ymm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovups %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovups %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovups %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovups (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovups %ymm0, %ymm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovups %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovups %ymm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - vmovups (%rax), %ymm2
# CHECK-NEXT: - - - - - - - 2.00 - - - - vmpsadbw $1, %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - - - vmpsadbw $1, (%rax), %xmm1, %xmm2
@@ -2160,13 +2160,13 @@ vzeroupper
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpermilps %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpermilps (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - vpextrb $1, %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vpextrb $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vpextrb $1, %xmm0, (%rax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - vpextrd $1, %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vpextrd $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vpextrd $1, %xmm0, (%rax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - vpextrq $1, %xmm0, %rcx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vpextrq $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vpextrq $1, %xmm0, (%rax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - vpextrw $1, %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vpextrw $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vpextrw $1, %xmm0, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 2.33 - - - - vphaddd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 2.33 - - - - vphaddd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - 2.00 - - - - vphaddsw %xmm0, %xmm1, %xmm2
@@ -2382,7 +2382,7 @@ vzeroupper
# CHECK-NEXT: - 6.00 1.00 - 0.50 0.50 - - - - - - vsqrtsd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - 3.00 1.00 - - - - - - - - - vsqrtss %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - 3.00 1.00 - 0.50 0.50 - - - - - - vsqrtss (%rax), %xmm1, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vstmxcsr (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vstmxcsr (%rax)
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - vsubpd %xmm0, %xmm1, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - vsubpd (%rax), %xmm1, %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - vsubpd %ymm0, %ymm1, %ymm2
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx2.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx2.s
index 7934b3d121dc93..e65504f79ff1a9 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx2.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx2.s
@@ -464,7 +464,7 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: 1 3 1.00 vbroadcastsd %xmm0, %ymm0
# CHECK-NEXT: 1 3 1.00 vbroadcastss %xmm0, %ymm0
# CHECK-NEXT: 1 3 1.00 vextracti128 $1, %ymm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * vextracti128 $1, %ymm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vextracti128 $1, %ymm0, (%rax)
# CHECK-NEXT: 5 18 1.00 * vgatherdpd %xmm0, (%rax,%xmm1,2), %xmm2
# CHECK-NEXT: 5 20 2.00 * vgatherdpd %ymm0, (%rax,%xmm1,2), %ymm2
# CHECK-NEXT: 5 20 2.00 * vgatherdps %xmm0, (%rax,%xmm1,2), %xmm2
@@ -778,7 +778,7 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 110.33 102.33 99.67 99.67 1.00 151.33 - 1.67 - -
+# CHECK-NEXT: - - 110.33 102.33 98.00 98.00 2.50 151.33 - 2.50 2.50 2.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -786,7 +786,7 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - vbroadcastsd %xmm0, %ymm0
# CHECK-NEXT: - - - - - - - 1.00 - - - - vbroadcastss %xmm0, %ymm0
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti128 $1, %ymm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextracti128 $1, %ymm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextracti128 $1, %ymm0, (%rax)
# CHECK-NEXT: - - 1.33 0.33 1.00 1.00 - 1.33 - - - - vgatherdpd %xmm0, (%rax,%xmm1,2), %xmm2
# CHECK-NEXT: - - 1.33 0.33 2.00 2.00 - 1.33 - - - - vgatherdpd %ymm0, (%rax,%xmm1,2), %ymm2
# CHECK-NEXT: - - 1.33 0.33 2.00 2.00 - 1.33 - - - - vgatherdps %xmm0, (%rax,%xmm1,2), %xmm2
@@ -916,12 +916,12 @@ vpxor (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - vpmaddwd (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vpmaskmovd (%rax), %xmm0, %xmm2
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vpmaskmovd (%rax), %ymm0, %ymm2
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 - - - 0.33 - - vpmaskmovd %xmm0, %xmm1, (%rax)
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 - - - 0.33 - - vpmaskmovd %ymm0, %ymm1, (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - - 0.50 0.50 0.50 vpmaskmovd %xmm0, %xmm1, (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - - 0.50 0.50 0.50 vpmaskmovd %ymm0, %ymm1, (%rax)
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vpmaskmovq (%rax), %xmm0, %xmm2
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vpmaskmovq (%rax), %ymm0, %ymm2
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 - - - 0.33 - - vpmaskmovq %xmm0, %xmm1, (%rax)
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 - - - 0.33 - - vpmaskmovq %ymm0, %ymm1, (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - - 0.50 0.50 0.50 vpmaskmovq %xmm0, %xmm1, (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - - 0.50 0.50 0.50 vpmaskmovq %ymm0, %ymm1, (%rax)
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - vpmaxsb %ymm0, %ymm1, %ymm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - vpmaxsb (%rax), %ymm1, %ymm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - vpmaxsd %ymm0, %ymm1, %ymm2
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
index a333d37644686f..40ab0656c48889 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512.s
@@ -1316,18 +1316,18 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 2 11 0.50 * vminps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovapd %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovapd (%rax), %zmm19
-# CHECK-NEXT: 2 1 1.00 * vmovapd %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovapd %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovapd %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovapd (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovapd %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovapd %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovapd %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovapd (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovaps %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovaps (%rax), %zmm19
-# CHECK-NEXT: 2 1 1.00 * vmovaps %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovaps %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovaps %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovaps (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovaps %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovaps %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovaps %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovaps (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 1.00 vmovddup %zmm16, %zmm19
@@ -1338,34 +1338,34 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 2 8 0.50 * vmovddup (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovdqa32 %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovdqa32 (%rax), %zmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqa32 %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqa32 %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovdqa32 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqa32 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqa32 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqa32 %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovdqa32 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqa32 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovdqa64 %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovdqa64 (%rax), %zmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqa64 %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqa64 %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovdqa64 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqa64 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqa64 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqa64 %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovdqa64 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqa64 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovdqu32 %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovdqu32 (%rax), %zmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu32 %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu32 %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovdqu32 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqu32 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu32 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu32 %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovdqu32 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqu32 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovdqu64 %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovdqu64 (%rax), %zmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu64 %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu64 %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovdqu64 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqu64 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu64 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu64 %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovdqu64 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqu64 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 1.00 vmovshdup %zmm16, %zmm19
@@ -1382,18 +1382,18 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 2 8 0.50 * vmovsldup (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovupd %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovupd (%rax), %zmm19
-# CHECK-NEXT: 2 1 1.00 * vmovupd %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovupd %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovupd %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovupd (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovupd %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovupd %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovupd %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovupd (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovups %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovups (%rax), %zmm19
-# CHECK-NEXT: 2 1 1.00 * vmovups %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovups %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovups %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovups (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovups %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovups %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovups %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovups (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 4 0.50 vmulpd %zmm16, %zmm17, %zmm19
@@ -1917,7 +1917,7 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - 612.00 317.17 99.67 314.83 314.83 16.00 612.17 2.00 5.33 - -
+# CHECK-NEXT: - 612.00 317.17 99.67 309.50 309.50 8.00 612.17 2.00 8.00 8.00 8.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -2222,18 +2222,18 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - 0.50 - - - - vminps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovapd %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovapd (%rax), %zmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovapd %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovapd %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovapd %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovapd (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovapd %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovapd %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovapd %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovapd (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovaps %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovaps (%rax), %zmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovaps %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovaps %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovaps %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovaps (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovaps %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovaps %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovaps %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovaps (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovddup %zmm16, %zmm19
@@ -2244,34 +2244,34 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovddup (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqa32 %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa32 (%rax), %zmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa32 %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa32 %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqa32 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa32 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa32 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa32 %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqa32 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa32 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqa64 %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa64 (%rax), %zmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa64 %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa64 %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqa64 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa64 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa64 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa64 %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqa64 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa64 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu32 %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu32 (%rax), %zmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu32 %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu32 %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu32 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu32 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu32 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu32 %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu32 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu32 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu64 %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %zmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu64 %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu64 %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu64 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu64 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu64 %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu64 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovshdup %zmm16, %zmm19
@@ -2288,18 +2288,18 @@ vunpcklps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovsldup (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovupd %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovupd (%rax), %zmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovupd %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovupd %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovupd %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovupd (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovupd %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovupd %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovupd %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovupd (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovups %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovups (%rax), %zmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovups %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovups %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovups %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovups (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovups %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovups %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovups %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovups (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmulpd %zmm16, %zmm17, %zmm19
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
index e58280aed136e8..08ad3a0feead41 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bw.s
@@ -619,12 +619,12 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 1 1 1.00 kandnq %k0, %k1, %k2
# CHECK-NEXT: 1 1 1.00 kmovd %k0, %k2
# CHECK-NEXT: 3 7 1.00 * kmovd (%rax), %k2
-# CHECK-NEXT: 2 1 1.00 * kmovd %k0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * kmovd %k0, (%rax)
# CHECK-NEXT: 1 1 1.00 kmovd %eax, %k2
# CHECK-NEXT: 1 3 1.00 kmovd %k0, %eax
# CHECK-NEXT: 1 1 1.00 kmovq %k0, %k2
# CHECK-NEXT: 3 7 1.00 * kmovq (%rax), %k2
-# CHECK-NEXT: 2 1 1.00 * kmovq %k0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * kmovq %k0, (%rax)
# CHECK-NEXT: 1 1 1.00 kmovq %rax, %k2
# CHECK-NEXT: 1 3 1.00 kmovq %k0, %rax
# CHECK-NEXT: 1 1 1.00 knotd %k0, %k2
@@ -653,18 +653,18 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 2 10 1.00 * vdbpsadbw $0, (%rax), %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovdqu8 %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovdqu8 (%rax), %zmm19
-# CHECK-NEXT: 5 2 2.00 * vmovdqu8 %zmm16, (%rax)
+# CHECK-NEXT: 5 2 1.00 * vmovdqu8 %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovdqu8 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqu8 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 5 2 2.00 * vmovdqu8 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 5 2 1.00 * vmovdqu8 %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovdqu8 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqu8 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vmovdqu16 %zmm16, %zmm19
# CHECK-NEXT: 2 8 0.50 * vmovdqu16 (%rax), %zmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu16 %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu16 %zmm16, (%rax)
# CHECK-NEXT: 1 1 0.50 vmovdqu16 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqu16 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu16 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu16 %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.50 vmovdqu16 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqu16 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: 1 1 1.00 vpabsb %zmm16, %zmm19
@@ -1128,7 +1128,7 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1}
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 239.50 17.50 115.33 115.33 16.00 295.50 0.50 5.33 - -
+# CHECK-NEXT: - - 239.50 17.50 110.00 110.00 8.00 295.50 0.50 8.00 8.00 8.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -1140,12 +1140,12 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - 1.00 - - - - - - - - - kandnq %k0, %k1, %k2
# CHECK-NEXT: - - 1.00 - - - - - - - - - kmovd %k0, %k2
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 1.25 0.25 - - - kmovd (%rax), %k2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - kmovd %k0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 kmovd %k0, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - kmovd %eax, %k2
# CHECK-NEXT: - - 1.00 - - - - - - - - - kmovd %k0, %eax
# CHECK-NEXT: - - 1.00 - - - - - - - - - kmovq %k0, %k2
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 1.25 0.25 - - - kmovq (%rax), %k2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - kmovq %k0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 kmovq %k0, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - kmovq %rax, %k2
# CHECK-NEXT: - - 1.00 - - - - - - - - - kmovq %k0, %rax
# CHECK-NEXT: - - 1.00 - - - - - - - - - knotd %k0, %k2
@@ -1174,18 +1174,18 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vdbpsadbw $0, (%rax), %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu8 %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu8 (%rax), %zmm19
-# CHECK-NEXT: - - - 0.50 0.67 0.67 2.00 0.50 - 0.67 - - vmovdqu8 %zmm16, (%rax)
+# CHECK-NEXT: - - - 0.50 - - 1.00 0.50 - 1.00 1.00 1.00 vmovdqu8 %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu8 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu8 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - 0.50 0.67 0.67 2.00 0.50 - 0.67 - - vmovdqu8 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - 0.50 - - 1.00 0.50 - 1.00 1.00 1.00 vmovdqu8 %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu8 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu8 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu16 %zmm16, %zmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu16 (%rax), %zmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu16 %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu16 %zmm16, (%rax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu16 %zmm16, %zmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu16 (%rax), %zmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu16 %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu16 %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - vmovdqu16 %zmm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu16 (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - 1.00 - - - - - - - - - vpabsb %zmm16, %zmm19
@@ -1341,9 +1341,9 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpcmpeqw %zmm0, %zmm1, %k2 {%k3}
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpcmpeqw (%rax), %zmm1, %k2 {%k3}
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - vpextrb $0, %xmm16, %eax
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vpextrb $0, %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vpextrb $0, %xmm16, (%rax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - vpextrw $0, %xmm16, %eax
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vpextrw $0, %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vpextrw $0, %xmm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpinsrb $0, %eax, %xmm16, %xmm19
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpinsrb $0, (%rax), %xmm16, %xmm19
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpinsrw $0, %eax, %xmm16, %xmm19
@@ -1437,17 +1437,17 @@ vpunpcklwd (%rax), %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpmovsxbw %ymm16, %zmm19 {%k1} {z}
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpmovsxbw (%rax), %zmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovswb %zmm16, %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovswb %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovswb %zmm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovswb %zmm16, %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovswb %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovswb %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovuswb %zmm16, %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovuswb %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovuswb %zmm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovuswb %zmm16, %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovuswb %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovuswb %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovwb %zmm16, %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovwb %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovwb %zmm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovwb %zmm16, %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovwb %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovwb %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpmovzxbw %ymm16, %zmm19
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpmovzxbw (%rax), %zmm19
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpmovzxbw %ymm16, %zmm19 {%k1}
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
index 2a1fbcd9458328..a0715cef8b00c8 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512bwvl.s
@@ -1106,34 +1106,34 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: 2 10 1.00 * vdbpsadbw $0, (%rax), %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqu8 %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovdqu8 (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu8 %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu8 %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqu8 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovdqu8 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu8 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu8 %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqu8 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovdqu8 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqu8 %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovdqu8 (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu8 %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu8 %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqu8 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqu8 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu8 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu8 %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqu8 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqu8 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqu16 %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovdqu16 (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu16 %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu16 %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqu16 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovdqu16 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu16 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu16 %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqu16 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovdqu16 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqu16 %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovdqu16 (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu16 %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu16 %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqu16 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqu16 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu16 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu16 %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqu16 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqu16 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.50 vpabsb %xmm16, %xmm19
@@ -2025,7 +2025,7 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1}
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 255.33 303.33 222.67 222.67 20.00 451.33 - 6.67 - -
+# CHECK-NEXT: - - 255.33 303.33 216.00 216.00 10.00 451.33 - 10.00 10.00 10.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -2043,34 +2043,34 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vdbpsadbw $0, (%rax), %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu8 %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu8 (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu8 %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu8 %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu8 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu8 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu8 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu8 %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu8 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu8 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu8 %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu8 (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu8 %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu8 %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu8 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu8 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu8 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu8 %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu8 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu8 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu16 %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu16 (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu16 %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu16 %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu16 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu16 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu16 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu16 %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu16 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu16 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu16 %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu16 (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu16 %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu16 %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu16 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu16 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu16 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu16 %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu16 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu16 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - vpabsb %xmm16, %xmm19
@@ -2554,29 +2554,29 @@ vpunpcklwd (%rax), %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vpmovsxbw %xmm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpmovsxbw (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovswb %xmm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovswb %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovswb %xmm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovswb %xmm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovswb %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovswb %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovswb %ymm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovswb %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovswb %ymm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovswb %ymm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovswb %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovswb %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovuswb %xmm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovuswb %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovuswb %xmm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovuswb %xmm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovuswb %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovuswb %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovuswb %ymm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovuswb %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovuswb %ymm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovuswb %ymm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovuswb %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovuswb %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovwb %xmm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovwb %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovwb %xmm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovwb %xmm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovwb %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovwb %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovwb %ymm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovwb %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovwb %ymm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpmovwb %ymm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 2.00 - 0.33 - - vpmovwb %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 2.00 - 0.50 0.50 0.50 vpmovwb %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - - - vpmovzxbw %xmm16, %xmm19
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - - - vpmovzxbw (%rax), %xmm19
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - - - vpmovzxbw %xmm16, %xmm19 {%k1}
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s
index ef4b40d5d0f149..4da4cebd60994f 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dq.s
@@ -473,7 +473,7 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 1 1 1.00 kandnb %k0, %k1, %k2
# CHECK-NEXT: 1 1 1.00 kmovb %k0, %k2
# CHECK-NEXT: 3 7 1.00 * kmovb (%rax), %k2
-# CHECK-NEXT: 2 1 1.00 * kmovb %k0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * kmovb %k0, (%rax)
# CHECK-NEXT: 1 1 1.00 kmovb %eax, %k2
# CHECK-NEXT: 1 3 1.00 kmovb %k0, %eax
# CHECK-NEXT: 1 1 1.00 knotb %k0, %k2
@@ -654,24 +654,24 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: 3 14 1.00 * vcvtuqq2ps (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 3 14 1.00 * vcvtuqq2ps (%rax){1to8}, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 3 1.00 vextractf32x8 $1, %zmm16, %ymm19
-# CHECK-NEXT: 2 1 1.00 vextractf32x8 $1, %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 vextractf32x8 $1, %zmm16, (%rax)
# CHECK-NEXT: 1 3 1.00 vextractf32x8 $1, %zmm16, %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vextractf32x8 $1, %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vextractf32x8 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 3 1.00 vextractf32x8 $1, %zmm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 3 1.00 vextractf64x2 $1, %zmm16, %xmm19
-# CHECK-NEXT: 2 1 1.00 vextractf64x2 $1, %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 vextractf64x2 $1, %zmm16, (%rax)
# CHECK-NEXT: 1 3 1.00 vextractf64x2 $1, %zmm16, %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vextractf64x2 $1, %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vextractf64x2 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 3 1.00 vextractf64x2 $1, %zmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 1 3 1.00 vextracti32x8 $1, %zmm16, %ymm19
-# CHECK-NEXT: 2 1 1.00 vextracti32x8 $1, %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 vextracti32x8 $1, %zmm16, (%rax)
# CHECK-NEXT: 1 3 1.00 vextracti32x8 $1, %zmm16, %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vextracti32x8 $1, %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vextracti32x8 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 3 1.00 vextracti32x8 $1, %zmm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 3 1.00 vextracti64x2 $1, %zmm16, %xmm19
-# CHECK-NEXT: 2 1 1.00 vextracti64x2 $1, %zmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 vextracti64x2 $1, %zmm16, (%rax)
# CHECK-NEXT: 1 3 1.00 vextracti64x2 $1, %zmm16, %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vextracti64x2 $1, %zmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vextracti64x2 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: 1 3 1.00 vextracti64x2 $1, %zmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 1 4 1.00 vfpclasspd $171, %zmm16, %k1
# CHECK-NEXT: 2 11 1.00 * vfpclasspdz $171, (%rax), %k1
@@ -872,7 +872,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]
-# CHECK-NEXT: - - 197.25 73.25 105.67 105.67 11.00 209.25 0.25 3.67 - -
+# CHECK-NEXT: - - 197.25 73.25 102.00 102.00 5.50 209.25 0.25 5.50 5.50 5.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -882,7 +882,7 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - 1.00 - - - - - - - - - kandnb %k0, %k1, %k2
# CHECK-NEXT: - - 1.00 - - - - - - - - - kmovb %k0, %k2
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 1.25 0.25 - - - kmovb (%rax), %k2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - kmovb %k0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 kmovb %k0, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - kmovb %eax, %k2
# CHECK-NEXT: - - 1.00 - - - - - - - - - kmovb %k0, %eax
# CHECK-NEXT: - - 1.00 - - - - - - - - - knotb %k0, %k2
@@ -1063,24 +1063,24 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 1.00 - - - - vcvtuqq2ps (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 1.00 - - - - vcvtuqq2ps (%rax){1to8}, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf32x8 $1, %zmm16, %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextractf32x8 $1, %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextractf32x8 $1, %zmm16, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf32x8 $1, %zmm16, %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextractf32x8 $1, %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextractf32x8 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf32x8 $1, %zmm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf64x2 $1, %zmm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextractf64x2 $1, %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextractf64x2 $1, %zmm16, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf64x2 $1, %zmm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextractf64x2 $1, %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextractf64x2 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf64x2 $1, %zmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti32x8 $1, %zmm16, %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextracti32x8 $1, %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextracti32x8 $1, %zmm16, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti32x8 $1, %zmm16, %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextracti32x8 $1, %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextracti32x8 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti32x8 $1, %zmm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti64x2 $1, %zmm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextracti64x2 $1, %zmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextracti64x2 $1, %zmm16, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti64x2 $1, %zmm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextracti64x2 $1, %zmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextracti64x2 $1, %zmm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti64x2 $1, %zmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vfpclasspd $171, %zmm16, %k1
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vfpclasspdz $171, (%rax), %k1
@@ -1145,9 +1145,9 @@ vxorps (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - 0.50 - - - - vorps (%rax), %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - 0.50 - - - - vorps (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - vpextrd $1, %xmm16, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vpextrd $1, %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vpextrd $1, %xmm16, (%rax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - vpextrq $1, %xmm16, %rcx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - vpextrq $1, %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 vpextrq $1, %xmm16, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpinsrd $1, %ecx, %xmm16, %xmm19
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vpinsrd $1, (%rax), %xmm16, %xmm19
# CHECK-NEXT: - - - - - - - 2.00 - - - - vpinsrq $1, %rcx, %xmm16, %xmm19
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dqvl.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dqvl.s
index 12fe74777e3f8e..75bae1940a1cac 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dqvl.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512dqvl.s
@@ -912,14 +912,14 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: 2 10 0.50 * vcvtuqq2psx (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 2 11 0.50 * vcvtuqq2ps (%rax){1to4}, %xmm19 {%k1} {z}
# CHECK-NEXT: 1 3 1.00 vextractf64x2 $1, %ymm16, %xmm19
-# CHECK-NEXT: 2 1 1.00 vextractf64x2 $1, %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 vextractf64x2 $1, %ymm16, (%rax)
# CHECK-NEXT: 1 3 1.00 vextractf64x2 $1, %ymm16, %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vextractf64x2 $1, %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vextractf64x2 $1, %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 3 1.00 vextractf64x2 $1, %ymm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 1 3 1.00 vextracti64x2 $1, %ymm16, %xmm19
-# CHECK-NEXT: 2 1 1.00 vextracti64x2 $1, %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 vextracti64x2 $1, %ymm16, (%rax)
# CHECK-NEXT: 1 3 1.00 vextracti64x2 $1, %ymm16, %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vextracti64x2 $1, %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vextracti64x2 $1, %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 3 1.00 vextracti64x2 $1, %ymm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 1 4 1.00 vfpclasspd $171, %xmm16, %k1
# CHECK-NEXT: 2 10 1.00 * vfpclasspdx $171, (%rax), %k1
@@ -1138,7 +1138,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]
-# CHECK-NEXT: - - 240.33 236.33 166.83 166.83 4.00 137.33 - 1.33 - -
+# CHECK-NEXT: - - 240.33 236.33 165.50 165.50 2.00 137.33 - 2.00 2.00 2.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -1455,14 +1455,14 @@ vxorps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - vcvtuqq2psx (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - vcvtuqq2ps (%rax){1to4}, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf64x2 $1, %ymm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextractf64x2 $1, %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextractf64x2 $1, %ymm16, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf64x2 $1, %ymm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextractf64x2 $1, %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextractf64x2 $1, %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextractf64x2 $1, %ymm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti64x2 $1, %ymm16, %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextracti64x2 $1, %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextracti64x2 $1, %ymm16, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti64x2 $1, %ymm16, %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vextracti64x2 $1, %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vextracti64x2 $1, %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vextracti64x2 $1, %ymm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vfpclasspd $171, %xmm16, %k1
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - vfpclasspdx $171, (%rax), %k1
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s
index d1f65731321fb0..6d11293789a60d 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx512vl.s
@@ -2043,34 +2043,34 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: 2 11 0.50 * vminps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovapd %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovapd (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovapd %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovapd %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovapd %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovapd (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovapd %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovapd %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovapd %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovapd (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovapd %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovapd (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovapd %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovapd %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovapd %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovapd (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovapd %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovapd %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovapd %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovapd (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovaps %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovaps (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovaps %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovaps %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovaps %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovaps (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovaps %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovaps %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovaps %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovaps (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovaps %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovaps (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovaps %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovaps %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovaps %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovaps (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovaps %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovaps %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovaps %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovaps (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 1.00 vmovddup %xmm16, %xmm19
@@ -2081,66 +2081,66 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: 2 7 0.50 * vmovddup (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqa32 %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovdqa32 (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqa32 %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqa32 %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqa32 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovdqa32 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqa32 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqa32 %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqa32 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovdqa32 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqa32 %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovdqa32 (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqa32 %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqa32 %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqa32 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqa32 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqa32 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqa32 %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqa32 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqa32 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqa64 %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovdqa64 (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqa64 %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqa64 %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqa64 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovdqa64 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqa64 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqa64 %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqa64 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovdqa64 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqa64 %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovdqa64 (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqa64 %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqa64 %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqa64 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqa64 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqa64 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqa64 %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqa64 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqa64 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqu32 %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovdqu32 (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu32 %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu32 %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqu32 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovdqu32 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu32 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu32 %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqu32 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovdqu32 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqu32 %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovdqu32 (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu32 %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu32 %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqu32 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqu32 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu32 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu32 %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqu32 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqu32 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqu64 %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovdqu64 (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu64 %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu64 %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqu64 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovdqu64 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu64 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu64 %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqu64 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovdqu64 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovdqu64 %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovdqu64 (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovdqu64 %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovdqu64 %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovdqu64 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovdqu64 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovdqu64 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovdqu64 %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovdqu64 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovdqu64 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 1.00 vmovddup %ymm16, %ymm19
@@ -2175,34 +2175,34 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: 2 8 0.50 * vmovsldup (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovupd %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovupd (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovupd %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovupd %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovupd %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovupd (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovupd %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovupd %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovupd %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovupd (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovupd %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovupd (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovupd %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovupd %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovupd %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovupd (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovupd %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovupd %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovupd %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovupd (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovups %xmm16, %xmm19
# CHECK-NEXT: 2 7 0.50 * vmovups (%rax), %xmm19
-# CHECK-NEXT: 2 1 1.00 * vmovups %xmm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovups %xmm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovups %xmm16, %xmm19 {%k1}
# CHECK-NEXT: 2 7 0.50 * vmovups (%rax), %xmm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovups %xmm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovups %xmm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovups %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: 2 7 0.50 * vmovups (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: 1 1 0.33 vmovups %ymm16, %ymm19
# CHECK-NEXT: 2 8 0.50 * vmovups (%rax), %ymm19
-# CHECK-NEXT: 2 1 1.00 * vmovups %ymm16, (%rax)
+# CHECK-NEXT: 2 1 0.50 * vmovups %ymm16, (%rax)
# CHECK-NEXT: 1 1 0.33 vmovups %ymm16, %ymm19 {%k1}
# CHECK-NEXT: 2 8 0.50 * vmovups (%rax), %ymm19 {%k1}
-# CHECK-NEXT: 2 1 1.00 * vmovups %ymm16, (%rax) {%k1}
+# CHECK-NEXT: 2 1 0.50 * vmovups %ymm16, (%rax) {%k1}
# CHECK-NEXT: 1 1 0.33 vmovups %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: 2 8 0.50 * vmovups (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: 1 4 0.50 vmulpd %xmm16, %xmm17, %xmm19
@@ -3004,7 +3004,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]
-# CHECK-NEXT: - 423.00 384.33 359.33 467.17 467.17 32.00 722.33 4.00 10.67 - -
+# CHECK-NEXT: - 423.00 384.33 359.33 456.50 456.50 16.00 722.33 4.00 16.00 16.00 16.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -3462,34 +3462,34 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - vminps (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovapd %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovapd (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovapd %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovapd %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovapd %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovapd (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovapd %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovapd %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovapd %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovapd (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovapd %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovapd (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovapd %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovapd %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovapd %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovapd (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovapd %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovapd %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovapd %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovapd (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovaps %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovaps (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovaps %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovaps %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovaps %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovaps (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovaps %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovaps %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovaps %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovaps (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovaps %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovaps (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovaps %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovaps %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovaps %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovaps (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovaps %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovaps %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovaps %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovaps (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovddup %xmm16, %xmm19
@@ -3500,66 +3500,66 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovddup (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa32 %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa32 (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa32 %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa32 %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa32 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa32 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa32 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa32 %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa32 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa32 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa32 %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa32 (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa32 %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa32 %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa32 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa32 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa32 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa32 %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa32 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa32 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa64 %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa64 (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa64 %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa64 %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa64 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa64 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa64 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa64 %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa64 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa64 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa64 %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa64 (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa64 %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa64 %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa64 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa64 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqa64 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqa64 %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqa64 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqa64 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu32 %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu32 (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu32 %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu32 %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu32 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu32 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu32 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu32 %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu32 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu32 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu32 %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu32 (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu32 %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu32 %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu32 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu32 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu32 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu32 %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu32 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu32 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu64 %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu64 %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu64 %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu64 %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu64 %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu64 %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu64 %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu64 %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu64 %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu64 %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu64 %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovdqu64 %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovdqu64 %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovdqu64 %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovdqu64 (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - - - - - - 1.00 - - - - vmovddup %ymm16, %ymm19
@@ -3594,34 +3594,34 @@ vunpcklps (%rax){1to8}, %ymm17, %ymm19 {z}{k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovsldup (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovupd %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovupd (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovupd %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovupd %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovupd %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovupd (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovupd %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovupd %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovupd %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovupd (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovupd %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovupd (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovupd %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovupd %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovupd %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovupd (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovupd %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovupd %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovupd %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovupd (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovups %xmm16, %xmm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovups (%rax), %xmm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovups %xmm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovups %xmm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovups %xmm16, %xmm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovups (%rax), %xmm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovups %xmm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovups %xmm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovups %xmm16, %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovups (%rax), %xmm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovups %ymm16, %ymm19
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovups (%rax), %ymm19
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovups %ymm16, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovups %ymm16, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovups %ymm16, %ymm19 {%k1}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovups (%rax), %ymm19 {%k1}
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - vmovups %ymm16, (%rax) {%k1}
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 vmovups %ymm16, (%rax) {%k1}
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - vmovups %ymm16, %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.33 0.33 0.50 0.50 - 0.33 - - - - vmovups (%rax), %ymm19 {%k1} {z}
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - vmulpd %xmm16, %xmm17, %xmm19
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-cmpxchg.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-cmpxchg.s
index 4201668fbebd54..4b6498843fb566 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-cmpxchg.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-cmpxchg.s
@@ -36,11 +36,11 @@ lock cmpxchg16b (%rax)
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 17.50 7.50 3.33 3.33 4.00 15.50 13.50 1.33 - -
+# CHECK-NEXT: - - 17.50 7.50 2.00 2.00 2.00 15.50 13.50 2.00 2.00 2.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
-# CHECK-NEXT: - - 3.25 2.25 0.83 0.83 1.00 2.25 3.25 0.33 - - cmpxchg8b (%rax)
-# CHECK-NEXT: - - 5.50 1.50 0.83 0.83 1.00 5.50 3.50 0.33 - - cmpxchg16b (%rax)
-# CHECK-NEXT: - - 3.25 2.25 0.83 0.83 1.00 2.25 3.25 0.33 - - lock cmpxchg8b (%rax)
-# CHECK-NEXT: - - 5.50 1.50 0.83 0.83 1.00 5.50 3.50 0.33 - - lock cmpxchg16b (%rax)
+# CHECK-NEXT: - - 3.25 2.25 0.50 0.50 0.50 2.25 3.25 0.50 0.50 0.50 cmpxchg8b (%rax)
+# CHECK-NEXT: - - 5.50 1.50 0.50 0.50 0.50 5.50 3.50 0.50 0.50 0.50 cmpxchg16b (%rax)
+# CHECK-NEXT: - - 3.25 2.25 0.50 0.50 0.50 2.25 3.25 0.50 0.50 0.50 lock cmpxchg8b (%rax)
+# CHECK-NEXT: - - 5.50 1.50 0.50 0.50 0.50 5.50 3.50 0.50 0.50 0.50 lock cmpxchg16b (%rax)
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-f16c.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-f16c.s
index 5515f7692efdb0..2653ff67eb714c 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-f16c.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-f16c.s
@@ -47,7 +47,7 @@ vcvtps2ph $0, %ymm0, (%rax)
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 4.00 4.00 1.67 1.67 2.00 6.00 - 0.67 - -
+# CHECK-NEXT: - - 4.00 4.00 1.00 1.00 1.00 6.00 - 1.00 1.00 1.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -56,6 +56,6 @@ vcvtps2ph $0, %ymm0, (%rax)
# CHECK-NEXT: - - 0.50 0.50 - - - 1.00 - - - - vcvtph2ps %xmm0, %ymm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - vcvtph2ps (%rax), %ymm2
# CHECK-NEXT: - - 0.50 0.50 - - - 1.00 - - - - vcvtps2ph $0, %xmm0, %xmm2
-# CHECK-NEXT: - - 0.50 0.50 0.33 0.33 1.00 1.00 - 0.33 - - vcvtps2ph $0, %xmm0, (%rax)
+# CHECK-NEXT: - - 0.50 0.50 - - 0.50 1.00 - 0.50 0.50 0.50 vcvtps2ph $0, %xmm0, (%rax)
# CHECK-NEXT: - - 0.50 0.50 - - - 1.00 - - - - vcvtps2ph $0, %ymm0, %xmm2
-# CHECK-NEXT: - - 0.50 0.50 0.33 0.33 1.00 1.00 - 0.33 - - vcvtps2ph $0, %ymm0, (%rax)
+# CHECK-NEXT: - - 0.50 0.50 - - 0.50 1.00 - 0.50 0.50 0.50 vcvtps2ph $0, %ymm0, (%rax)
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-mmx.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-mmx.s
index cfc27d3aa24972..f240be7b2061d2 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-mmx.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-mmx.s
@@ -168,11 +168,11 @@ pxor (%rax), %mm2
# CHECK-NEXT: 1 1 1.00 movd %eax, %mm2
# CHECK-NEXT: 1 5 0.50 * movd (%rax), %mm2
# CHECK-NEXT: 1 2 1.00 movd %mm0, %ecx
-# CHECK-NEXT: 2 1 1.00 * U movd %mm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * U movd %mm0, (%rax)
# CHECK-NEXT: 1 1 1.00 movq %rax, %mm2
# CHECK-NEXT: 1 5 0.50 * movq (%rax), %mm2
# CHECK-NEXT: 1 2 1.00 movq %mm0, %rcx
-# CHECK-NEXT: 2 1 1.00 * movq %mm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movq %mm0, (%rax)
# CHECK-NEXT: 3 3 2.00 packsswb %mm0, %mm2
# CHECK-NEXT: 3 7 2.00 * packsswb (%rax), %mm2
# CHECK-NEXT: 3 3 2.00 packssdw %mm0, %mm2
@@ -286,7 +286,7 @@ pxor (%rax), %mm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 75.50 1.00 23.67 23.67 2.00 41.50 1.00 0.67 - -
+# CHECK-NEXT: - - 75.50 1.00 23.00 23.00 1.00 41.50 1.00 1.00 1.00 1.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -294,11 +294,11 @@ pxor (%rax), %mm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - movd %eax, %mm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movd (%rax), %mm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - movd %mm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movd %mm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movd %mm0, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - movq %rax, %mm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movq (%rax), %mm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - movq %mm0, %rcx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movq %mm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movq %mm0, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 2.25 0.25 - - - packsswb %mm0, %mm2
# CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - - - packsswb (%rax), %mm2
# CHECK-NEXT: - - 0.25 0.25 - - - 2.25 0.25 - - - packssdw %mm0, %mm2
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-movbe.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-movbe.s
index 626f1da62c4455..b5849890ea3303 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-movbe.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-movbe.s
@@ -19,11 +19,11 @@ movbe (%rax), %rcx
# CHECK-NEXT: [6]: HasSideEffects (U)
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
-# CHECK-NEXT: 3 2 1.00 * movbew %cx, (%rax)
+# CHECK-NEXT: 3 2 0.50 * movbew %cx, (%rax)
# CHECK-NEXT: 2 6 0.50 * movbew (%rax), %cx
-# CHECK-NEXT: 3 2 1.00 * movbel %ecx, (%rax)
+# CHECK-NEXT: 3 2 0.50 * movbel %ecx, (%rax)
# CHECK-NEXT: 2 6 0.50 * movbel (%rax), %ecx
-# CHECK-NEXT: 3 2 1.00 * movbeq %rcx, (%rax)
+# CHECK-NEXT: 3 2 0.50 * movbeq %rcx, (%rax)
# CHECK-NEXT: 2 6 0.50 * movbeq (%rax), %rcx
# CHECK: Resources:
@@ -42,13 +42,13 @@ movbe (%rax), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - - 3.00 2.50 2.50 3.00 3.00 - 1.00 - -
+# CHECK-NEXT: - - - 3.00 1.50 1.50 1.50 3.00 - 1.50 1.50 1.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
-# CHECK-NEXT: - - - 0.50 0.33 0.33 1.00 0.50 - 0.33 - - movbew %cx, (%rax)
+# CHECK-NEXT: - - - 0.50 - - 0.50 0.50 - 0.50 0.50 0.50 movbew %cx, (%rax)
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - - - movbew (%rax), %cx
-# CHECK-NEXT: - - - 0.50 0.33 0.33 1.00 0.50 - 0.33 - - movbel %ecx, (%rax)
+# CHECK-NEXT: - - - 0.50 - - 0.50 0.50 - 0.50 0.50 0.50 movbel %ecx, (%rax)
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - - - movbel (%rax), %ecx
-# CHECK-NEXT: - - - 0.50 0.33 0.33 1.00 0.50 - 0.33 - - movbeq %rcx, (%rax)
+# CHECK-NEXT: - - - 0.50 - - 0.50 0.50 - 0.50 0.50 0.50 movbeq %rcx, (%rax)
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - - - movbeq (%rax), %rcx
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse1.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse1.s
index 5c4d49a2230dde..95bb0fd49481db 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse1.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse1.s
@@ -241,22 +241,22 @@ xorps (%rax), %xmm2
# CHECK-NEXT: 1 4 0.50 minss %xmm0, %xmm2
# CHECK-NEXT: 2 9 0.50 * minss (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 movaps %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * movaps %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movaps %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * movaps (%rax), %xmm2
# CHECK-NEXT: 1 1 1.00 movhlps %xmm0, %xmm2
# CHECK-NEXT: 1 1 1.00 movlhps %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * movhps %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movhps %xmm0, (%rax)
# CHECK-NEXT: 2 6 1.00 * movhps (%rax), %xmm2
-# CHECK-NEXT: 2 1 1.00 * movlps %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movlps %xmm0, (%rax)
# CHECK-NEXT: 2 6 1.00 * movlps (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 movmskps %xmm0, %ecx
-# CHECK-NEXT: 2 1 1.00 * movntps %xmm0, (%rax)
-# CHECK-NEXT: 2 1 1.00 * * U movntq %mm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movntps %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * * U movntq %mm0, (%rax)
# CHECK-NEXT: 1 1 0.33 movss %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * movss %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movss %xmm0, (%rax)
# CHECK-NEXT: 1 5 0.50 * movss (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 movups %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * movups %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movups %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * movups (%rax), %xmm2
# CHECK-NEXT: 1 4 0.50 mulps %xmm0, %xmm2
# CHECK-NEXT: 2 10 0.50 * mulps (%rax), %xmm2
@@ -298,7 +298,7 @@ xorps (%rax), %xmm2
# CHECK-NEXT: 2 10 1.00 * rsqrtps (%rax), %xmm2
# CHECK-NEXT: 1 4 1.00 rsqrtss %xmm0, %xmm2
# CHECK-NEXT: 2 9 1.00 * rsqrtss (%rax), %xmm2
-# CHECK-NEXT: 2 2 0.33 * * U sfence
+# CHECK-NEXT: 2 2 0.50 * * U sfence
# CHECK-NEXT: 1 1 0.50 shufps $1, %xmm0, %xmm2
# CHECK-NEXT: 2 7 0.50 * shufps $1, (%rax), %xmm2
# CHECK-NEXT: 1 12 3.00 sqrtps %xmm0, %xmm2
@@ -335,7 +335,7 @@ xorps (%rax), %xmm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - 24.00 67.17 29.17 32.00 32.00 8.00 32.17 0.50 3.00 - -
+# CHECK-NEXT: - 24.00 66.92 28.92 29.00 29.00 4.50 31.92 0.25 4.50 4.50 4.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -386,22 +386,22 @@ xorps (%rax), %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - minss %xmm0, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - minss (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - movaps %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movaps %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movaps %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movaps (%rax), %xmm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - movhlps %xmm0, %xmm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - movlhps %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movhps %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movhps %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - movhps (%rax), %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movlps %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movlps %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - movlps (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - movmskps %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movntps %xmm0, (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movntq %mm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movntps %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movntq %mm0, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - movss %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movss %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movss %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movss (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - movups %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movups %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movups %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movups (%rax), %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - mulps %xmm0, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - mulps (%rax), %xmm2
@@ -443,14 +443,14 @@ xorps (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - - - rsqrtps (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - rsqrtss %xmm0, %xmm2
# CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - - - rsqrtss (%rax), %xmm2
-# CHECK-NEXT: - - 0.25 0.25 0.33 0.33 - 0.25 0.25 0.33 - - sfence
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 sfence
# CHECK-NEXT: - - - 0.50 - - - 0.50 - - - - shufps $1, %xmm0, %xmm2
# CHECK-NEXT: - - - 0.50 0.50 0.50 - 0.50 - - - - shufps $1, (%rax), %xmm2
# CHECK-NEXT: - 3.00 1.00 - - - - - - - - - sqrtps %xmm0, %xmm2
# CHECK-NEXT: - 3.00 1.00 - 0.50 0.50 - - - - - - sqrtps (%rax), %xmm2
# CHECK-NEXT: - 3.00 1.00 - - - - - - - - - sqrtss %xmm0, %xmm2
# CHECK-NEXT: - 3.00 1.00 - 0.50 0.50 - - - - - - sqrtss (%rax), %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - stmxcsr (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 stmxcsr (%rax)
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - subps %xmm0, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - subps (%rax), %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - subss %xmm0, %xmm2
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse2.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse2.s
index 93033709169837..a4a51280b8ca94 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse2.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse2.s
@@ -465,50 +465,50 @@ xorpd (%rax), %xmm2
# CHECK-NEXT: 1 14 4.00 divsd %xmm0, %xmm2
# CHECK-NEXT: 2 19 4.00 * divsd (%rax), %xmm2
# CHECK-NEXT: 2 2 0.50 * * U lfence
-# CHECK-NEXT: 2 1 1.00 * * U maskmovdqu %xmm0, %xmm1
+# CHECK-NEXT: 2 1 0.50 * * U maskmovdqu %xmm0, %xmm1
# CHECK-NEXT: 1 4 0.50 maxpd %xmm0, %xmm2
# CHECK-NEXT: 2 10 0.50 * maxpd (%rax), %xmm2
# CHECK-NEXT: 1 4 0.50 maxsd %xmm0, %xmm2
# CHECK-NEXT: 2 9 0.50 * maxsd (%rax), %xmm2
-# CHECK-NEXT: 3 3 0.50 * * U mfence
+# CHECK-NEXT: 3 3 1.00 * * U mfence
# CHECK-NEXT: 1 4 0.50 minpd %xmm0, %xmm2
# CHECK-NEXT: 2 10 0.50 * minpd (%rax), %xmm2
# CHECK-NEXT: 1 4 0.50 minsd %xmm0, %xmm2
# CHECK-NEXT: 2 9 0.50 * minsd (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 movapd %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * movapd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movapd %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * movapd (%rax), %xmm2
# CHECK-NEXT: 1 1 1.00 movd %eax, %xmm2
# CHECK-NEXT: 1 5 0.50 * movd (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 movd %xmm0, %ecx
-# CHECK-NEXT: 2 1 1.00 * movd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movd %xmm0, (%rax)
# CHECK-NEXT: 1 1 0.33 movdqa %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * movdqa %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movdqa %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * movdqa (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 movdqu %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * movdqu %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movdqu %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * movdqu (%rax), %xmm2
# CHECK-NEXT: 2 2 1.00 movdq2q %xmm0, %mm2
-# CHECK-NEXT: 2 1 1.00 * movhpd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movhpd %xmm0, (%rax)
# CHECK-NEXT: 2 6 1.00 * movhpd (%rax), %xmm2
-# CHECK-NEXT: 2 1 1.00 * movlpd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movlpd %xmm0, (%rax)
# CHECK-NEXT: 2 6 1.00 * movlpd (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 movmskpd %xmm0, %ecx
-# CHECK-NEXT: 2 1 1.00 * movntil %eax, (%rax)
-# CHECK-NEXT: 2 1 1.00 * movntiq %rax, (%rax)
-# CHECK-NEXT: 2 1 1.00 * movntdq %xmm0, (%rax)
-# CHECK-NEXT: 2 1 1.00 * movntpd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movntil %eax, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movntiq %rax, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movntdq %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movntpd %xmm0, (%rax)
# CHECK-NEXT: 1 1 0.33 movq %xmm0, %xmm2
# CHECK-NEXT: 1 1 1.00 movq %rax, %xmm2
# CHECK-NEXT: 1 5 0.50 * movq (%rax), %xmm2
# CHECK-NEXT: 1 2 1.00 movq %xmm0, %rcx
-# CHECK-NEXT: 2 1 1.00 * movq %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movq %xmm0, (%rax)
# CHECK-NEXT: 2 2 2.00 movq2dq %mm0, %xmm2
# CHECK-NEXT: 1 1 0.33 movsd %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * movsd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movsd %xmm0, (%rax)
# CHECK-NEXT: 1 5 0.50 * movsd (%rax), %xmm2
# CHECK-NEXT: 1 1 0.33 movupd %xmm0, %xmm2
-# CHECK-NEXT: 2 1 1.00 * movupd %xmm0, (%rax)
+# CHECK-NEXT: 2 1 0.50 * movupd %xmm0, (%rax)
# CHECK-NEXT: 1 6 0.50 * movupd (%rax), %xmm2
# CHECK-NEXT: 1 4 0.50 mulpd %xmm0, %xmm2
# CHECK-NEXT: 2 10 0.50 * mulpd (%rax), %xmm2
@@ -691,7 +691,7 @@ xorpd (%rax), %xmm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - 40.00 107.42 99.42 63.50 63.50 14.00 76.92 2.25 5.00 - -
+# CHECK-NEXT: - 40.00 106.92 98.92 58.50 58.50 7.50 76.42 1.75 8.00 8.00 7.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -753,50 +753,50 @@ xorpd (%rax), %xmm2
# CHECK-NEXT: - 4.00 1.00 - - - - - - - - - divsd %xmm0, %xmm2
# CHECK-NEXT: - 4.00 1.00 - 0.50 0.50 - - - - - - divsd (%rax), %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - 0.50 0.50 - - - lfence
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - maskmovdqu %xmm0, %xmm1
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 maskmovdqu %xmm0, %xmm1
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - maxpd %xmm0, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - maxpd (%rax), %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - maxsd %xmm0, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - maxsd (%rax), %xmm2
-# CHECK-NEXT: - - 0.50 0.50 0.33 0.33 - 0.50 0.50 0.33 - - mfence
+# CHECK-NEXT: - - - - - - 0.50 - - 1.00 1.00 0.50 mfence
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - minpd %xmm0, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - minpd (%rax), %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - minsd %xmm0, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - minsd (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - movapd %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movapd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movapd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movapd (%rax), %xmm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - movd %eax, %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movd (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - movd %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movd %xmm0, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - movdqa %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movdqa %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movdqa %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movdqa (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - movdqu %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movdqu %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movdqu %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movdqu (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - movdq2q %xmm0, %mm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movhpd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movhpd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - movhpd (%rax), %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movlpd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movlpd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - movlpd (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - movmskpd %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movntil %eax, (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movntiq %rax, (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movntdq %xmm0, (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movntpd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movntil %eax, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movntiq %rax, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movntdq %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movntpd %xmm0, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - movq %xmm0, %xmm2
# CHECK-NEXT: - - - - - - - 1.00 - - - - movq %rax, %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movq (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - - - - - - movq %xmm0, %rcx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movq %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movq %xmm0, (%rax)
# CHECK-NEXT: - - - - - - - 2.00 - - - - movq2dq %mm0, %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - movsd %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movsd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movsd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movsd (%rax), %xmm2
# CHECK-NEXT: - - 0.33 0.33 - - - 0.33 - - - - movupd %xmm0, %xmm2
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - movupd %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 movupd %xmm0, (%rax)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movupd (%rax), %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - mulpd %xmm0, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - mulpd (%rax), %xmm2
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse41.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse41.s
index 06b44336fe9af0..4b4c6b90541a38 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse41.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse41.s
@@ -268,7 +268,7 @@ roundss $1, (%rax), %xmm2
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 36.67 40.67 23.67 23.67 5.00 54.67 - 1.67 - -
+# CHECK-NEXT: - - 36.67 40.67 22.00 22.00 2.50 54.67 - 2.50 2.50 2.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -285,7 +285,7 @@ roundss $1, (%rax), %xmm2
# CHECK-NEXT: - - 1.00 1.00 - - - 2.00 - - - - dpps $22, %xmm0, %xmm2
# CHECK-NEXT: - - 1.00 1.00 0.50 0.50 - 2.00 - - - - dpps $22, (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - extractps $1, %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - extractps $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 extractps $1, %xmm0, (%rax)
# CHECK-NEXT: - - - - - - - 1.00 - - - - insertps $1, %xmm0, %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - insertps $1, (%rax), %xmm2
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - movntdqa (%rax), %xmm2
@@ -300,12 +300,12 @@ roundss $1, (%rax), %xmm2
# CHECK-NEXT: - - 0.50 0.50 - - - - - - - - pcmpeqq %xmm0, %xmm2
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - pcmpeqq (%rax), %xmm2
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - pextrb $1, %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - pextrb $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 pextrb $1, %xmm0, (%rax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - pextrd $1, %xmm0, %ecx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - pextrd $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 pextrd $1, %xmm0, (%rax)
# CHECK-NEXT: - - 1.00 - - - - 1.00 - - - - pextrq $1, %xmm0, %rcx
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - pextrq $1, %xmm0, (%rax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - pextrw $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 pextrq $1, %xmm0, (%rax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 pextrw $1, %xmm0, (%rax)
# CHECK-NEXT: - - 1.00 - - - - - - - - - phminposuw %xmm0, %xmm2
# CHECK-NEXT: - - 1.00 - 0.50 0.50 - - - - - - phminposuw (%rax), %xmm2
# CHECK-NEXT: - - - - - - - 2.00 - - - - pinsrb $1, %eax, %xmm1
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x86_64.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x86_64.s
index 13363145503350..f00ae58e956de6 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x86_64.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x86_64.s
@@ -1093,85 +1093,85 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 6 0.50 * adcq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 addb $7, %al
# CHECK-NEXT: 1 1 0.25 addb $7, %dil
-# CHECK-NEXT: 3 7 1.00 * * addb $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addb %sil, %dil
-# CHECK-NEXT: 3 7 1.00 * * addb %sil, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * addb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 addw $511, %ax
# CHECK-NEXT: 1 1 0.25 addw $511, %di
-# CHECK-NEXT: 3 7 1.00 * * addw $511, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 addw $7, %di
-# CHECK-NEXT: 3 7 1.00 * * addw $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addw %si, %di
-# CHECK-NEXT: 3 7 1.00 * * addw %si, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * addw (%rax), %di
# CHECK-NEXT: 1 1 0.25 addl $665536, %eax
# CHECK-NEXT: 1 1 0.25 addl $665536, %edi
-# CHECK-NEXT: 3 7 1.00 * * addl $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 addl $7, %edi
-# CHECK-NEXT: 3 7 1.00 * * addl $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addl %esi, %edi
-# CHECK-NEXT: 3 7 1.00 * * addl %esi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * addl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 addq $665536, %rax
# CHECK-NEXT: 1 1 0.25 addq $665536, %rdi
-# CHECK-NEXT: 3 7 1.00 * * addq $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 addq $7, %rdi
-# CHECK-NEXT: 3 7 1.00 * * addq $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addq %rsi, %rdi
-# CHECK-NEXT: 3 7 1.00 * * addq %rsi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock addq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * addq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock addq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * addq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 andb $7, %al
# CHECK-NEXT: 1 1 0.25 andb $7, %dil
-# CHECK-NEXT: 3 7 1.00 * * andb $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andb %sil, %dil
-# CHECK-NEXT: 3 7 1.00 * * andb %sil, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * andb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 andw $511, %ax
# CHECK-NEXT: 1 1 0.25 andw $511, %di
-# CHECK-NEXT: 3 7 1.00 * * andw $511, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 andw $7, %di
-# CHECK-NEXT: 3 7 1.00 * * andw $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andw %si, %di
-# CHECK-NEXT: 3 7 1.00 * * andw %si, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * andw (%rax), %di
# CHECK-NEXT: 1 1 0.25 andl $665536, %eax
# CHECK-NEXT: 1 1 0.25 andl $665536, %edi
-# CHECK-NEXT: 3 7 1.00 * * andl $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 andl $7, %edi
-# CHECK-NEXT: 3 7 1.00 * * andl $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andl %esi, %edi
-# CHECK-NEXT: 3 7 1.00 * * andl %esi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * andl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 andq $665536, %rax
# CHECK-NEXT: 1 1 0.25 andq $665536, %rdi
-# CHECK-NEXT: 3 7 1.00 * * andq $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 andq $7, %rdi
-# CHECK-NEXT: 3 7 1.00 * * andq $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andq %rsi, %rdi
-# CHECK-NEXT: 3 7 1.00 * * andq %rsi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock andq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * andq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock andq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * andq (%rax), %rdi
# CHECK-NEXT: 1 3 1.00 bsfw %si, %di
# CHECK-NEXT: 1 3 1.00 bsrw %si, %di
@@ -1192,67 +1192,67 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 btrw %si, %di
# CHECK-NEXT: 1 1 0.50 btsw %si, %di
# CHECK-NEXT: 2 6 0.50 * btw %si, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * btcw %si, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * btrw %si, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * btsw %si, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * lock btcw %si, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * lock btrw %si, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * lock btsw %si, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * btcw %si, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * btrw %si, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * btsw %si, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * lock btcw %si, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * lock btrw %si, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * lock btsw %si, (%rax)
# CHECK-NEXT: 1 1 0.50 btw $7, %di
# CHECK-NEXT: 1 1 0.50 btcw $7, %di
# CHECK-NEXT: 1 1 0.50 btrw $7, %di
# CHECK-NEXT: 1 1 0.50 btsw $7, %di
# CHECK-NEXT: 2 6 0.50 * btw $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * btcw $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * btrw $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * btsw $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * lock btcw $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * lock btrw $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * lock btsw $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * btcw $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * btrw $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * btsw $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * lock btcw $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * lock btrw $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * lock btsw $7, (%rax)
# CHECK-NEXT: 1 1 0.50 btl %esi, %edi
# CHECK-NEXT: 1 1 0.50 btcl %esi, %edi
# CHECK-NEXT: 1 1 0.50 btrl %esi, %edi
# CHECK-NEXT: 1 1 0.50 btsl %esi, %edi
# CHECK-NEXT: 2 6 0.50 * btl %esi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * btcl %esi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * btrl %esi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * btsl %esi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * lock btcl %esi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * lock btrl %esi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * lock btsl %esi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * btcl %esi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * btrl %esi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * btsl %esi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * lock btcl %esi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * lock btrl %esi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * lock btsl %esi, (%rax)
# CHECK-NEXT: 1 1 0.50 btl $7, %edi
# CHECK-NEXT: 1 1 0.50 btcl $7, %edi
# CHECK-NEXT: 1 1 0.50 btrl $7, %edi
# CHECK-NEXT: 1 1 0.50 btsl $7, %edi
# CHECK-NEXT: 2 6 0.50 * btl $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * btcl $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * btrl $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * btsl $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * lock btcl $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * lock btrl $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * lock btsl $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * btcl $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * btrl $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * btsl $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * lock btcl $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * lock btrl $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * lock btsl $7, (%rax)
# CHECK-NEXT: 1 1 0.50 btq %rsi, %rdi
# CHECK-NEXT: 1 1 0.50 btcq %rsi, %rdi
# CHECK-NEXT: 1 1 0.50 btrq %rsi, %rdi
# CHECK-NEXT: 1 1 0.50 btsq %rsi, %rdi
# CHECK-NEXT: 2 6 0.50 * btq %rsi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * btcq %rsi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * btrq %rsi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * btsq %rsi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * lock btcq %rsi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * lock btrq %rsi, (%rax)
-# CHECK-NEXT: 3 6 1.00 * * lock btsq %rsi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * btcq %rsi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * btrq %rsi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * btsq %rsi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * lock btcq %rsi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * lock btrq %rsi, (%rax)
+# CHECK-NEXT: 3 6 0.50 * * lock btsq %rsi, (%rax)
# CHECK-NEXT: 1 1 0.50 btq $7, %rdi
# CHECK-NEXT: 1 1 0.50 btcq $7, %rdi
# CHECK-NEXT: 1 1 0.50 btrq $7, %rdi
# CHECK-NEXT: 1 1 0.50 btsq $7, %rdi
# CHECK-NEXT: 2 6 0.50 * btq $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * btcq $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * btrq $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * btsq $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * lock btcq $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * lock btrq $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * lock btsq $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * btcq $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * btrq $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * btsq $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * lock btcq $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * lock btrq $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * lock btsq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 cbtw
# CHECK-NEXT: 1 1 0.25 cwtl
# CHECK-NEXT: 1 1 0.25 cltq
@@ -1310,17 +1310,17 @@ xorq (%rax), %rdi
# CHECK-NEXT: 6 8 1.00 * * lock cmpxchgq %rcx, (%rbx)
# CHECK-NEXT: 8 18 2.00 U cpuid
# CHECK-NEXT: 1 1 0.25 decb %dil
-# CHECK-NEXT: 3 7 1.00 * * decb (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock decb (%rax)
+# CHECK-NEXT: 3 7 0.50 * * decb (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock decb (%rax)
# CHECK-NEXT: 1 1 0.25 decw %di
-# CHECK-NEXT: 3 7 1.00 * * decw (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock decw (%rax)
+# CHECK-NEXT: 3 7 0.50 * * decw (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock decw (%rax)
# CHECK-NEXT: 1 1 0.25 decl %edi
-# CHECK-NEXT: 3 7 1.00 * * decl (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock decl (%rax)
+# CHECK-NEXT: 3 7 0.50 * * decl (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock decl (%rax)
# CHECK-NEXT: 1 1 0.25 decq %rdi
-# CHECK-NEXT: 3 7 1.00 * * decq (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock decq (%rax)
+# CHECK-NEXT: 3 7 0.50 * * decq (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock decq (%rax)
# CHECK-NEXT: 1 25 10.00 U divb %dil
# CHECK-NEXT: 2 29 10.00 * U divb (%rax)
# CHECK-NEXT: 32 76 8.00 U divw %si
@@ -1371,17 +1371,17 @@ xorq (%rax), %rdi
# CHECK-NEXT: 23 35 5.00 U inl $7, %eax
# CHECK-NEXT: 23 35 5.00 U inl %dx, %eax
# CHECK-NEXT: 1 1 0.25 incb %dil
-# CHECK-NEXT: 3 7 1.00 * * incb (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock incb (%rax)
+# CHECK-NEXT: 3 7 0.50 * * incb (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock incb (%rax)
# CHECK-NEXT: 1 1 0.25 incw %di
-# CHECK-NEXT: 3 7 1.00 * * incw (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock incw (%rax)
+# CHECK-NEXT: 3 7 0.50 * * incw (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock incw (%rax)
# CHECK-NEXT: 1 1 0.25 incl %edi
-# CHECK-NEXT: 3 7 1.00 * * incl (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock incl (%rax)
+# CHECK-NEXT: 3 7 0.50 * * incl (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock incl (%rax)
# CHECK-NEXT: 1 1 0.25 incq %rdi
-# CHECK-NEXT: 3 7 1.00 * * incq (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock incq (%rax)
+# CHECK-NEXT: 3 7 0.50 * * incq (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock incq (%rax)
# CHECK-NEXT: 8 20 1.25 U insb %dx, %es:(%rdi)
# CHECK-NEXT: 8 20 1.25 U insw %dx, %es:(%rdi)
# CHECK-NEXT: 8 20 1.25 U insl %dx, %es:(%rdi)
@@ -1432,17 +1432,17 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 4 1.00 mulq %rcx
# CHECK-NEXT: 3 9 1.00 * mulq (%rax)
# CHECK-NEXT: 1 1 0.25 negb %dil
-# CHECK-NEXT: 3 7 1.00 * * negb (%r8)
-# CHECK-NEXT: 3 7 1.00 * * lock negb (%r8)
+# CHECK-NEXT: 3 7 0.50 * * negb (%r8)
+# CHECK-NEXT: 3 7 0.50 * * lock negb (%r8)
# CHECK-NEXT: 1 1 0.25 negw %si
-# CHECK-NEXT: 3 7 1.00 * * negw (%r9)
-# CHECK-NEXT: 3 7 1.00 * * lock negw (%r9)
+# CHECK-NEXT: 3 7 0.50 * * negw (%r9)
+# CHECK-NEXT: 3 7 0.50 * * lock negw (%r9)
# CHECK-NEXT: 1 1 0.25 negl %edx
-# CHECK-NEXT: 3 7 1.00 * * negl (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock negl (%rax)
+# CHECK-NEXT: 3 7 0.50 * * negl (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock negl (%rax)
# CHECK-NEXT: 1 1 0.25 negq %rcx
-# CHECK-NEXT: 3 7 1.00 * * negq (%r10)
-# CHECK-NEXT: 3 7 1.00 * * lock negq (%r10)
+# CHECK-NEXT: 3 7 0.50 * * negq (%r10)
+# CHECK-NEXT: 3 7 0.50 * * lock negq (%r10)
# CHECK-NEXT: 1 1 0.17 nop
# CHECK-NEXT: 1 1 0.17 nopw %di
# CHECK-NEXT: 1 1 0.17 nopw (%rcx)
@@ -1451,57 +1451,57 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.17 nopq %rdx
# CHECK-NEXT: 1 1 0.17 nopq (%r9)
# CHECK-NEXT: 1 1 0.25 notb %dil
-# CHECK-NEXT: 3 7 1.00 * * notb (%r8)
-# CHECK-NEXT: 3 7 1.00 * * lock notb (%r8)
+# CHECK-NEXT: 3 7 0.50 * * notb (%r8)
+# CHECK-NEXT: 3 7 0.50 * * lock notb (%r8)
# CHECK-NEXT: 1 1 0.25 notw %si
-# CHECK-NEXT: 3 7 1.00 * * notw (%r9)
-# CHECK-NEXT: 3 7 1.00 * * lock notw (%r9)
+# CHECK-NEXT: 3 7 0.50 * * notw (%r9)
+# CHECK-NEXT: 3 7 0.50 * * lock notw (%r9)
# CHECK-NEXT: 1 1 0.25 notl %edx
-# CHECK-NEXT: 3 7 1.00 * * notl (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock notl (%rax)
+# CHECK-NEXT: 3 7 0.50 * * notl (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock notl (%rax)
# CHECK-NEXT: 1 1 0.25 notq %rcx
-# CHECK-NEXT: 3 7 1.00 * * notq (%r10)
-# CHECK-NEXT: 3 7 1.00 * * lock notq (%r10)
+# CHECK-NEXT: 3 7 0.50 * * notq (%r10)
+# CHECK-NEXT: 3 7 0.50 * * lock notq (%r10)
# CHECK-NEXT: 1 1 0.25 orb $7, %al
# CHECK-NEXT: 1 1 0.25 orb $7, %dil
-# CHECK-NEXT: 3 7 1.00 * * orb $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orb %sil, %dil
-# CHECK-NEXT: 3 7 1.00 * * orb %sil, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * orb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 orw $511, %ax
# CHECK-NEXT: 1 1 0.25 orw $511, %di
-# CHECK-NEXT: 3 7 1.00 * * orw $511, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 orw $7, %di
-# CHECK-NEXT: 3 7 1.00 * * orw $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orw %si, %di
-# CHECK-NEXT: 3 7 1.00 * * orw %si, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * orw (%rax), %di
# CHECK-NEXT: 1 1 0.25 orl $665536, %eax
# CHECK-NEXT: 1 1 0.25 orl $665536, %edi
-# CHECK-NEXT: 3 7 1.00 * * orl $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 orl $7, %edi
-# CHECK-NEXT: 3 7 1.00 * * orl $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orl %esi, %edi
-# CHECK-NEXT: 3 7 1.00 * * orl %esi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * orl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 orq $665536, %rax
# CHECK-NEXT: 1 1 0.25 orq $665536, %rdi
-# CHECK-NEXT: 3 7 1.00 * * orq $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 orq $7, %rdi
-# CHECK-NEXT: 3 7 1.00 * * orq $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orq %rsi, %rdi
-# CHECK-NEXT: 3 7 1.00 * * orq %rsi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock orq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * orq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock orq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * orq (%rax), %rdi
# CHECK-NEXT: 23 35 5.00 U outb %al, $7
# CHECK-NEXT: 23 35 5.00 U outb %al, %dx
@@ -1617,15 +1617,15 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 sarb %dil
# CHECK-NEXT: 1 1 0.50 shlb %dil
# CHECK-NEXT: 1 1 0.50 shrb %dil
-# CHECK-NEXT: 4 6 1.00 * * sarb (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shlb (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shrb (%rax)
+# CHECK-NEXT: 4 6 0.50 * * sarb (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shlb (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shrb (%rax)
# CHECK-NEXT: 1 1 0.50 sarb $7, %dil
# CHECK-NEXT: 1 1 0.50 shlb $7, %dil
# CHECK-NEXT: 1 1 0.50 shrb $7, %dil
-# CHECK-NEXT: 4 6 1.00 * * sarb $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shlb $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shrb $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * sarb $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shlb $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shrb $7, (%rax)
# CHECK-NEXT: 3 3 1.50 sarb %cl, %dil
# CHECK-NEXT: 3 3 1.50 shlb %cl, %dil
# CHECK-NEXT: 3 3 1.50 shrb %cl, %dil
@@ -1635,15 +1635,15 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 sarw %di
# CHECK-NEXT: 1 1 0.50 shlw %di
# CHECK-NEXT: 1 1 0.50 shrw %di
-# CHECK-NEXT: 4 6 1.00 * * sarw (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shlw (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shrw (%rax)
+# CHECK-NEXT: 4 6 0.50 * * sarw (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shlw (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shrw (%rax)
# CHECK-NEXT: 1 1 0.50 sarw $7, %di
# CHECK-NEXT: 1 1 0.50 shlw $7, %di
# CHECK-NEXT: 1 1 0.50 shrw $7, %di
-# CHECK-NEXT: 4 6 1.00 * * sarw $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shlw $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shrw $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * sarw $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shlw $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shrw $7, (%rax)
# CHECK-NEXT: 3 3 1.50 sarw %cl, %di
# CHECK-NEXT: 3 3 1.50 shlw %cl, %di
# CHECK-NEXT: 3 3 1.50 shrw %cl, %di
@@ -1653,15 +1653,15 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 sarl %edi
# CHECK-NEXT: 1 1 0.50 shll %edi
# CHECK-NEXT: 1 1 0.50 shrl %edi
-# CHECK-NEXT: 4 6 1.00 * * sarl (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shll (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shrl (%rax)
+# CHECK-NEXT: 4 6 0.50 * * sarl (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shll (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shrl (%rax)
# CHECK-NEXT: 1 1 0.50 sarl $7, %edi
# CHECK-NEXT: 1 1 0.50 shll $7, %edi
# CHECK-NEXT: 1 1 0.50 shrl $7, %edi
-# CHECK-NEXT: 4 6 1.00 * * sarl $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shll $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shrl $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * sarl $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shll $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shrl $7, (%rax)
# CHECK-NEXT: 3 3 1.50 sarl %cl, %edi
# CHECK-NEXT: 3 3 1.50 shll %cl, %edi
# CHECK-NEXT: 3 3 1.50 shrl %cl, %edi
@@ -1671,15 +1671,15 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 sarq %rdi
# CHECK-NEXT: 1 1 0.50 shlq %rdi
# CHECK-NEXT: 1 1 0.50 shrq %rdi
-# CHECK-NEXT: 4 6 1.00 * * sarq (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shlq (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shrq (%rax)
+# CHECK-NEXT: 4 6 0.50 * * sarq (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shlq (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shrq (%rax)
# CHECK-NEXT: 1 1 0.50 sarq $7, %rdi
# CHECK-NEXT: 1 1 0.50 shlq $7, %rdi
# CHECK-NEXT: 1 1 0.50 shrq $7, %rdi
-# CHECK-NEXT: 4 6 1.00 * * sarq $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shlq $7, (%rax)
-# CHECK-NEXT: 4 6 1.00 * * shrq $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * sarq $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shlq $7, (%rax)
+# CHECK-NEXT: 4 6 0.50 * * shrq $7, (%rax)
# CHECK-NEXT: 3 3 1.50 sarq %cl, %rdi
# CHECK-NEXT: 3 3 1.50 shlq %cl, %rdi
# CHECK-NEXT: 3 3 1.50 shrq %cl, %rdi
@@ -1748,37 +1748,37 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 7 0.50 U scasl %es:(%rdi), %eax
# CHECK-NEXT: 3 7 0.50 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 1 1 0.50 seto %al
-# CHECK-NEXT: 3 2 1.00 * seto (%rax)
+# CHECK-NEXT: 3 2 0.50 * seto (%rax)
# CHECK-NEXT: 1 1 0.50 setno %al
-# CHECK-NEXT: 3 2 1.00 * setno (%rax)
+# CHECK-NEXT: 3 2 0.50 * setno (%rax)
# CHECK-NEXT: 1 1 0.50 setb %al
-# CHECK-NEXT: 3 2 1.00 * setb (%rax)
+# CHECK-NEXT: 3 2 0.50 * setb (%rax)
# CHECK-NEXT: 1 1 0.50 setae %al
-# CHECK-NEXT: 3 2 1.00 * setae (%rax)
+# CHECK-NEXT: 3 2 0.50 * setae (%rax)
# CHECK-NEXT: 1 1 0.50 sete %al
-# CHECK-NEXT: 3 2 1.00 * sete (%rax)
+# CHECK-NEXT: 3 2 0.50 * sete (%rax)
# CHECK-NEXT: 1 1 0.50 setne %al
-# CHECK-NEXT: 3 2 1.00 * setne (%rax)
+# CHECK-NEXT: 3 2 0.50 * setne (%rax)
# CHECK-NEXT: 2 2 1.00 seta %al
# CHECK-NEXT: 4 3 1.00 * seta (%rax)
# CHECK-NEXT: 2 2 1.00 setbe %al
# CHECK-NEXT: 4 3 1.00 * setbe (%rax)
# CHECK-NEXT: 1 1 0.50 sets %al
-# CHECK-NEXT: 3 2 1.00 * sets (%rax)
+# CHECK-NEXT: 3 2 0.50 * sets (%rax)
# CHECK-NEXT: 1 1 0.50 setns %al
-# CHECK-NEXT: 3 2 1.00 * setns (%rax)
+# CHECK-NEXT: 3 2 0.50 * setns (%rax)
# CHECK-NEXT: 1 1 0.50 setp %al
-# CHECK-NEXT: 3 2 1.00 * setp (%rax)
+# CHECK-NEXT: 3 2 0.50 * setp (%rax)
# CHECK-NEXT: 1 1 0.50 setnp %al
-# CHECK-NEXT: 3 2 1.00 * setnp (%rax)
+# CHECK-NEXT: 3 2 0.50 * setnp (%rax)
# CHECK-NEXT: 1 1 0.50 setl %al
-# CHECK-NEXT: 3 2 1.00 * setl (%rax)
+# CHECK-NEXT: 3 2 0.50 * setl (%rax)
# CHECK-NEXT: 1 1 0.50 setge %al
-# CHECK-NEXT: 3 2 1.00 * setge (%rax)
+# CHECK-NEXT: 3 2 0.50 * setge (%rax)
# CHECK-NEXT: 1 1 0.50 setg %al
-# CHECK-NEXT: 3 2 1.00 * setg (%rax)
+# CHECK-NEXT: 3 2 0.50 * setg (%rax)
# CHECK-NEXT: 1 1 0.50 setle %al
-# CHECK-NEXT: 3 2 1.00 * setle (%rax)
+# CHECK-NEXT: 3 2 0.50 * setle (%rax)
# CHECK-NEXT: 4 6 1.00 shldw %cl, %si, %di
# CHECK-NEXT: 4 6 1.00 shrdw %cl, %si, %di
# CHECK-NEXT: 6 11 1.00 * * shldw %cl, %si, (%rax)
@@ -1805,50 +1805,50 @@ xorq (%rax), %rdi
# CHECK-NEXT: 4 9 1.00 * * shrdq $7, %rsi, (%rax)
# CHECK-NEXT: 1 1 0.25 U stc
# CHECK-NEXT: 6 6 1.50 U std
-# CHECK-NEXT: 3 2 1.00 U stosb %al, %es:(%rdi)
-# CHECK-NEXT: 3 2 1.00 U stosw %ax, %es:(%rdi)
-# CHECK-NEXT: 3 2 1.00 U stosl %eax, %es:(%rdi)
-# CHECK-NEXT: 3 2 1.00 U stosq %rax, %es:(%rdi)
+# CHECK-NEXT: 3 2 0.50 U stosb %al, %es:(%rdi)
+# CHECK-NEXT: 3 2 0.50 U stosw %ax, %es:(%rdi)
+# CHECK-NEXT: 3 2 0.50 U stosl %eax, %es:(%rdi)
+# CHECK-NEXT: 3 2 0.50 U stosq %rax, %es:(%rdi)
# CHECK-NEXT: 1 1 0.25 subb $7, %al
# CHECK-NEXT: 1 1 0.25 subb $7, %dil
-# CHECK-NEXT: 3 7 1.00 * * subb $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subb %sil, %dil
-# CHECK-NEXT: 3 7 1.00 * * subb %sil, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * subb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 subw $511, %ax
# CHECK-NEXT: 1 1 0.25 subw $511, %di
-# CHECK-NEXT: 3 7 1.00 * * subw $511, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 subw $7, %di
-# CHECK-NEXT: 3 7 1.00 * * subw $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subw %si, %di
-# CHECK-NEXT: 3 7 1.00 * * subw %si, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * subw (%rax), %di
# CHECK-NEXT: 1 1 0.25 subl $665536, %eax
# CHECK-NEXT: 1 1 0.25 subl $665536, %edi
-# CHECK-NEXT: 3 7 1.00 * * subl $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 subl $7, %edi
-# CHECK-NEXT: 3 7 1.00 * * subl $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subl %esi, %edi
-# CHECK-NEXT: 3 7 1.00 * * subl %esi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 subq $665536, %rax
# CHECK-NEXT: 1 1 0.25 subq $665536, %rdi
-# CHECK-NEXT: 3 7 1.00 * * subq $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 subq $7, %rdi
-# CHECK-NEXT: 3 7 1.00 * * subq $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subq %rsi, %rdi
-# CHECK-NEXT: 3 7 1.00 * * subq %rsi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock subq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * subq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock subq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 testb $7, %al
# CHECK-NEXT: 1 1 0.25 testb $7, %dil
@@ -1879,17 +1879,17 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 * U ud2
# CHECK-NEXT: 1 100 0.25 U wrmsr
# CHECK-NEXT: 3 2 0.75 xaddb %bl, %cl
-# CHECK-NEXT: 5 7 1.00 * * xaddb %bl, (%rcx)
-# CHECK-NEXT: 5 7 1.00 * * lock xaddb %bl, (%rcx)
+# CHECK-NEXT: 5 7 0.50 * * xaddb %bl, (%rcx)
+# CHECK-NEXT: 5 7 0.50 * * lock xaddb %bl, (%rcx)
# CHECK-NEXT: 3 2 0.75 xaddw %bx, %cx
-# CHECK-NEXT: 5 7 1.00 * * xaddw %ax, (%rbx)
-# CHECK-NEXT: 5 7 1.00 * * lock xaddw %ax, (%rbx)
+# CHECK-NEXT: 5 7 0.50 * * xaddw %ax, (%rbx)
+# CHECK-NEXT: 5 7 0.50 * * lock xaddw %ax, (%rbx)
# CHECK-NEXT: 3 2 0.75 xaddl %ebx, %ecx
-# CHECK-NEXT: 5 7 1.00 * * xaddl %eax, (%rbx)
-# CHECK-NEXT: 5 7 1.00 * * lock xaddl %eax, (%rbx)
+# CHECK-NEXT: 5 7 0.50 * * xaddl %eax, (%rbx)
+# CHECK-NEXT: 5 7 0.50 * * lock xaddl %eax, (%rbx)
# CHECK-NEXT: 3 2 0.75 xaddq %rbx, %rcx
-# CHECK-NEXT: 5 7 1.00 * * xaddq %rax, (%rbx)
-# CHECK-NEXT: 5 7 1.00 * * lock xaddq %rax, (%rbx)
+# CHECK-NEXT: 5 7 0.50 * * xaddq %rax, (%rbx)
+# CHECK-NEXT: 5 7 0.50 * * lock xaddq %rax, (%rbx)
# CHECK-NEXT: 3 2 0.75 xchgb %bl, %cl
# CHECK-NEXT: 8 10 1.25 * * xchgb %bl, (%rbx)
# CHECK-NEXT: 8 10 1.25 * * lock xchgb %bl, (%rbx)
@@ -1908,44 +1908,44 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 5 0.50 * xlatb
# CHECK-NEXT: 1 1 0.25 xorb $7, %al
# CHECK-NEXT: 1 1 0.25 xorb $7, %dil
-# CHECK-NEXT: 3 7 1.00 * * xorb $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorb $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorb %sil, %dil
-# CHECK-NEXT: 3 7 1.00 * * xorb %sil, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorb %sil, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * xorb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 xorw $511, %ax
# CHECK-NEXT: 1 1 0.25 xorw $511, %di
-# CHECK-NEXT: 3 7 1.00 * * xorw $511, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorw $511, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 xorw $7, %di
-# CHECK-NEXT: 3 7 1.00 * * xorw $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorw $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorw %si, %di
-# CHECK-NEXT: 3 7 1.00 * * xorw %si, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorw %si, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * xorw (%rax), %di
# CHECK-NEXT: 1 1 0.25 xorl $665536, %eax
# CHECK-NEXT: 1 1 0.25 xorl $665536, %edi
-# CHECK-NEXT: 3 7 1.00 * * xorl $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorl $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 xorl $7, %edi
-# CHECK-NEXT: 3 7 1.00 * * xorl $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorl $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorl %esi, %edi
-# CHECK-NEXT: 3 7 1.00 * * xorl %esi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorl %esi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * xorl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 xorq $665536, %rax
# CHECK-NEXT: 1 1 0.25 xorq $665536, %rdi
-# CHECK-NEXT: 3 7 1.00 * * xorq $665536, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorq $665536, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 xorq $7, %rdi
-# CHECK-NEXT: 3 7 1.00 * * xorq $7, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorq $7, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorq %rsi, %rdi
-# CHECK-NEXT: 3 7 1.00 * * xorq %rsi, (%rax)
-# CHECK-NEXT: 3 7 1.00 * * lock xorq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * xorq %rsi, (%rax)
+# CHECK-NEXT: 3 7 0.50 * * lock xorq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * xorq (%rax), %rdi
# CHECK: Resources:
@@ -1964,148 +1964,148 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: 60.00 - 679.50 381.50 378.50 378.50 345.00 333.00 741.00 129.00 - -
+# CHECK-NEXT: 60.00 - 679.50 381.50 249.50 249.50 172.50 333.00 741.00 193.50 193.50 172.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - adcb $0, %al
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcb $0, %dil
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcb $0, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcb $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcb $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcb $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - adcb $7, %al
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcb $7, %dil
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcb $7, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcb $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcb $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcb $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcb %sil, %dil
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcb %sil, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcb %sil, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcb %sil, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcb %sil, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - adcb (%rax), %dil
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcw $0, %ax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcw $0, %di
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcw $0, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcw $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcw $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcw $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - adcw $511, %ax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcw $511, %di
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcw $511, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcw $511, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcw $511, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcw $511, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcw $7, %di
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcw $7, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcw $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcw $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcw $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcw %si, %di
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcw %si, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcw %si, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcw %si, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcw %si, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - adcw (%rax), %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcl $0, %eax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcl $0, %edi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcl $0, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcl $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcl $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcl $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - adcl $665536, %eax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcl $665536, %edi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcl $665536, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcl $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcl $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcl $665536, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcl $7, %edi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcl $7, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcl $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcl $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcl $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcl %esi, %edi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcl %esi, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcl %esi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcl %esi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcl %esi, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - adcl (%rax), %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcq $0, %rax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcq $0, %rdi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcq $0, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcq $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcq $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcq $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - adcq $665536, %rax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcq $665536, %rdi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcq $665536, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcq $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcq $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcq $665536, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcq $7, %rdi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcq $7, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcq $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcq $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcq $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - adcq %rsi, %rdi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - adcq %rsi, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock adcq %rsi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 adcq %rsi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock adcq %rsi, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - adcq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addb $7, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addb $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addb %sil, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addb %sil, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - addb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addw $511, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addw $511, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addw $7, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addw $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addw %si, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - addw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addl $665536, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addl $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addl $7, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addl $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addl %esi, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - addl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addq $665536, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addq $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addq $7, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addq $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - addq %rsi, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - addq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock addq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 addq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock addq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - addq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andb $7, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andb $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andb %sil, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andb %sil, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - andb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andw $511, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andw $511, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andw $7, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andw $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andw %si, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - andw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andl $665536, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andl $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andl $7, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andl $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andl %esi, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - andl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andq $665536, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andq $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andq $7, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andq $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - andq %rsi, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - andq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock andq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 andq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock andq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - andq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - - - bsfw %si, %di
# CHECK-NEXT: - - - 1.00 - - - - - - - - bsrw %si, %di
@@ -2126,67 +2126,67 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btrw %si, %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btsw %si, %di
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - btw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - btcw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - btrw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - btsw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock btcw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock btrw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock btsw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 btcw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 btrw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 btsw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock btcw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock btrw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock btsw %si, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btw $7, %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btcw $7, %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btrw $7, %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btsw $7, %di
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - btw $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - btcw $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - btrw $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - btsw $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - lock btcw $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - lock btrw $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - lock btsw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 btcw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 btrw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 btsw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 lock btcw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 lock btrw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 lock btsw $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btl %esi, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btcl %esi, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btrl %esi, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btsl %esi, %edi
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - btl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - btcl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - btrl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - btsl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock btcl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock btrl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock btsl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 btcl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 btrl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 btsl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock btcl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock btrl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock btsl %esi, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btl $7, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btcl $7, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btrl $7, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btsl $7, %edi
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - btl $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - btcl $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - btrl $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - btsl $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - lock btcl $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - lock btrl $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - lock btsl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 btcl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 btrl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 btsl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 lock btcl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 lock btrl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 lock btsl $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btq %rsi, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btcq %rsi, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btrq %rsi, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btsq %rsi, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - btq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - btcq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - btrq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - btsq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock btcq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock btrq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock btsq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 btcq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 btrq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 btsq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock btcq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock btrq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock btsq %rsi, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btq $7, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btcq $7, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btrq $7, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - btsq $7, %rdi
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - btq $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - btcq $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - btrq $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - btsq $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - lock btcq $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - lock btrq $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - lock btsq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 btcq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 btrq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 btsq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 lock btcq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 lock btrq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 lock btsq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - cbtw
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - cwtl
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - cltq
@@ -2231,30 +2231,30 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - cmpsq %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 1.75 0.75 - - - 0.75 1.75 - - - cmpxchgb %cl, %bl
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - cmpxchgb %cl, (%rbx)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock cmpxchgb %cl, (%rbx)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 cmpxchgb %cl, (%rbx)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock cmpxchgb %cl, (%rbx)
# CHECK-NEXT: - - 1.75 0.75 - - - 0.75 1.75 - - - cmpxchgw %cx, %bx
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - cmpxchgw %cx, (%rbx)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock cmpxchgw %cx, (%rbx)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 cmpxchgw %cx, (%rbx)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock cmpxchgw %cx, (%rbx)
# CHECK-NEXT: - - 1.75 0.75 - - - 0.75 1.75 - - - cmpxchgl %ecx, %ebx
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - cmpxchgl %ecx, (%rbx)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock cmpxchgl %ecx, (%rbx)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 cmpxchgl %ecx, (%rbx)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock cmpxchgl %ecx, (%rbx)
# CHECK-NEXT: - - 1.75 0.75 - - - 0.75 1.75 - - - cmpxchgq %rcx, %rbx
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - cmpxchgq %rcx, (%rbx)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock cmpxchgq %rcx, (%rbx)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 cmpxchgq %rcx, (%rbx)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock cmpxchgq %rcx, (%rbx)
# CHECK-NEXT: - - 1.75 1.25 - - - 2.25 2.75 - - - cpuid
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - decb %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - decb (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock decb (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 decb (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock decb (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - decw %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - decw (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock decw (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 decw (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock decw (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - decl %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - decl (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock decl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 decl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock decl (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - decq %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - decq (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock decq (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 decq (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock decq (%rax)
# CHECK-NEXT: 10.00 - 1.00 - - - - - - - - - divb %dil
# CHECK-NEXT: 10.00 - 1.00 - 0.50 0.50 - - - - - - divb (%rax)
# CHECK-NEXT: - - 10.25 4.75 - - - 11.25 5.75 - - - divw %si
@@ -2305,20 +2305,20 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - - - inl $7, %eax
# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - - - inl %dx, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - incb %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - incb (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock incb (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 incb (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock incb (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - incw %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - incw (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock incw (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 incw (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock incw (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - incl %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - incl (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock incl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 incl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock incl (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - incq %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - incq (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock incq (%rax)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 1.00 1.50 2.00 0.33 - - insb %dx, %es:(%rdi)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 1.00 1.50 2.00 0.33 - - insw %dx, %es:(%rdi)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 1.00 1.50 2.00 0.33 - - insl %dx, %es:(%rdi)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 incq (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock incq (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 0.50 1.50 2.00 0.50 0.50 0.50 insb %dx, %es:(%rdi)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 0.50 1.50 2.00 0.50 0.50 0.50 insw %dx, %es:(%rdi)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 0.50 1.50 2.00 0.50 0.50 0.50 insl %dx, %es:(%rdi)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - int $7
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - invlpg (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - invlpga
@@ -2366,17 +2366,17 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - 1.00 - - - - mulq %rcx
# CHECK-NEXT: - - - 1.00 0.50 0.50 - 1.00 - - - - mulq (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - negb %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - negb (%r8)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock negb (%r8)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 negb (%r8)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock negb (%r8)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - negw %si
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - negw (%r9)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock negw (%r9)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 negw (%r9)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock negw (%r9)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - negl %edx
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - negl (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock negl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 negl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock negl (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - negq %rcx
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - negq (%r10)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock negq (%r10)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 negq (%r10)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock negq (%r10)
# CHECK-NEXT: - - - - - - - - - - - - nop
# CHECK-NEXT: - - - - - - - - - - - - nopw %di
# CHECK-NEXT: - - - - - - - - - - - - nopw (%rcx)
@@ -2385,404 +2385,404 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - - - - - - - - nopq %rdx
# CHECK-NEXT: - - - - - - - - - - - - nopq (%r9)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - notb %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - notb (%r8)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock notb (%r8)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 notb (%r8)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock notb (%r8)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - notw %si
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - notw (%r9)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock notw (%r9)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 notw (%r9)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock notw (%r9)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - notl %edx
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - notl (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock notl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 notl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock notl (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - notq %rcx
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - notq (%r10)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock notq (%r10)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 notq (%r10)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock notq (%r10)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orb $7, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orb $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orb %sil, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orb %sil, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - orb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orw $511, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orw $511, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orw $7, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orw $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orw %si, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - orw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orl $665536, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orl $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orl $7, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orl $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orl %esi, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - orl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orq $665536, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orq $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orq $7, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orq $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - orq %rsi, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - orq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock orq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 orq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock orq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - orq (%rax), %rdi
-# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 - - outb %al, $7
-# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 - - outb %al, %dx
-# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 - - outw %ax, $7
-# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 - - outw %ax, %dx
-# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 - - outl %eax, $7
-# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 - - outl %eax, %dx
+# CHECK-NEXT: - - 4.50 2.50 1.00 1.00 - 3.50 9.50 0.50 0.50 - outb %al, $7
+# CHECK-NEXT: - - 4.50 2.50 1.00 1.00 - 3.50 9.50 0.50 0.50 - outb %al, %dx
+# CHECK-NEXT: - - 4.50 2.50 1.00 1.00 - 3.50 9.50 0.50 0.50 - outw %ax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.00 1.00 - 3.50 9.50 0.50 0.50 - outw %ax, %dx
+# CHECK-NEXT: - - 4.50 2.50 1.00 1.00 - 3.50 9.50 0.50 0.50 - outl %eax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.00 1.00 - 3.50 9.50 0.50 0.50 - outl %eax, %dx
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - outsb (%rsi), %dx
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - outsw (%rsi), %dx
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - outsl (%rsi), %dx
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 1.75 - - - pause
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - - - rclb %dil
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - - - rcrb %dil
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rclb (%rax)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcrb (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rclb (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcrb (%rax)
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rclb $7, %dil
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rcrb $7, %dil
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rclb $7, (%rax)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcrb $7, (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rclb $7, (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcrb $7, (%rax)
# CHECK-NEXT: - - 3.00 2.00 - - - 1.00 3.00 - - - rclb %cl, %dil
# CHECK-NEXT: - - 2.75 3.25 - - - 1.25 2.75 - - - rcrb %cl, %dil
-# CHECK-NEXT: - - 2.75 1.75 0.83 0.83 - 0.75 2.75 0.33 - - rclb %cl, (%rax)
-# CHECK-NEXT: - - 2.50 3.00 0.83 0.83 - 1.00 2.50 0.33 - - rcrb %cl, (%rax)
+# CHECK-NEXT: - - 2.75 1.75 0.50 0.50 - 0.75 2.75 0.50 0.50 - rclb %cl, (%rax)
+# CHECK-NEXT: - - 2.50 3.00 0.50 0.50 - 1.00 2.50 0.50 0.50 - rcrb %cl, (%rax)
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - - - rclw %di
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - - - rcrw %di
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rclw (%rax)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcrw (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rclw (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcrw (%rax)
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rclw $7, %di
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rcrw $7, %di
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rclw $7, (%rax)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcrw $7, (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rclw $7, (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcrw $7, (%rax)
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rclw %cl, %di
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rcrw %cl, %di
-# CHECK-NEXT: - - 2.75 1.75 0.83 0.83 - 0.75 2.75 0.33 - - rclw %cl, (%rax)
-# CHECK-NEXT: - - 2.50 3.00 0.83 0.83 - 1.00 2.50 0.33 - - rcrw %cl, (%rax)
+# CHECK-NEXT: - - 2.75 1.75 0.50 0.50 - 0.75 2.75 0.50 0.50 - rclw %cl, (%rax)
+# CHECK-NEXT: - - 2.50 3.00 0.50 0.50 - 1.00 2.50 0.50 0.50 - rcrw %cl, (%rax)
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - - - rcll %edi
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - - - rcrl %edi
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcll (%rax)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcrl (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcll (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcrl (%rax)
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rcll $7, %edi
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rcrl $7, %edi
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcll $7, (%rax)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcrl $7, (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcll $7, (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcrl $7, (%rax)
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rcll %cl, %edi
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rcrl %cl, %edi
-# CHECK-NEXT: - - 2.75 1.75 0.83 0.83 - 0.75 2.75 0.33 - - rcll %cl, (%rax)
-# CHECK-NEXT: - - 2.50 3.00 0.83 0.83 - 1.00 2.50 0.33 - - rcrl %cl, (%rax)
+# CHECK-NEXT: - - 2.75 1.75 0.50 0.50 - 0.75 2.75 0.50 0.50 - rcll %cl, (%rax)
+# CHECK-NEXT: - - 2.50 3.00 0.50 0.50 - 1.00 2.50 0.50 0.50 - rcrl %cl, (%rax)
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - - - rclq %rdi
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - - - rcrq %rdi
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rclq (%rax)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcrq (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rclq (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcrq (%rax)
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rclq $7, %rdi
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rcrq $7, %rdi
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rclq $7, (%rax)
-# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 - - rcrq $7, (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rclq $7, (%rax)
+# CHECK-NEXT: - - 1.00 0.50 0.50 0.50 - 0.50 1.00 0.50 0.50 - rcrq $7, (%rax)
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rclq %cl, %rdi
# CHECK-NEXT: - - 2.00 2.50 - - - 0.50 2.00 - - - rcrq %cl, %rdi
-# CHECK-NEXT: - - 2.75 1.75 0.83 0.83 - 0.75 2.75 0.33 - - rclq %cl, (%rax)
-# CHECK-NEXT: - - 2.50 3.00 0.83 0.83 - 1.00 2.50 0.33 - - rcrq %cl, (%rax)
+# CHECK-NEXT: - - 2.75 1.75 0.50 0.50 - 0.75 2.75 0.50 0.50 - rclq %cl, (%rax)
+# CHECK-NEXT: - - 2.50 3.00 0.50 0.50 - 1.00 2.50 0.50 0.50 - rcrq %cl, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - rdmsr
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - rdpmc
# CHECK-NEXT: - - 1.75 1.25 - - - 2.25 2.75 - - - rdtsc
# CHECK-NEXT: - - 5.00 5.00 - - - 7.00 5.00 - - - rdtscp
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - rolb %dil
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - rorb %dil
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rolb (%rax)
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rorb (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rolb (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rorb (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - rolb $7, %dil
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - rorb $7, %dil
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rolb $7, (%rax)
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rorb $7, (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rolb $7, (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rorb $7, (%rax)
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - rolb %cl, %dil
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - rorb %cl, %dil
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - rolb %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - rorb %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 rolb %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 rorb %cl, (%rax)
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - rolw %di
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - rorw %di
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rolw (%rax)
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rorw (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rolw (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rorw (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - rolw $7, %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - rorw $7, %di
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rolw $7, (%rax)
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rorw $7, (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rolw $7, (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rorw $7, (%rax)
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - rolw %cl, %di
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - rorw %cl, %di
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - rolw %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - rorw %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 rolw %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 rorw %cl, (%rax)
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - roll %edi
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - rorl %edi
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - roll (%rax)
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rorl (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 roll (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rorl (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - roll $7, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - rorl $7, %edi
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - roll $7, (%rax)
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rorl $7, (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 roll $7, (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rorl $7, (%rax)
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - roll %cl, %edi
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - rorl %cl, %edi
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - roll %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - rorl %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 roll %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 rorl %cl, (%rax)
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - rolq %rdi
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - rorq %rdi
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rolq (%rax)
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rorq (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rolq (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rorq (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - rolq $7, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - rorq $7, %rdi
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rolq $7, (%rax)
-# CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 - - rorq $7, (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rolq $7, (%rax)
+# CHECK-NEXT: - - 1.00 - 0.50 0.50 0.50 - 1.00 0.50 0.50 0.50 rorq $7, (%rax)
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - rolq %cl, %rdi
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - rorq %cl, %rdi
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - rolq %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - rorq %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 rolq %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 rorq %cl, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sahf
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sarb %dil
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shlb %dil
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shrb %dil
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - sarb (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shlb (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shrb (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 sarb (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shlb (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shrb (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sarb $7, %dil
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shlb $7, %dil
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shrb $7, %dil
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - sarb $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shlb $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shrb $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 sarb $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shlb $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shrb $7, (%rax)
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - sarb %cl, %dil
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - shlb %cl, %dil
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - shrb %cl, %dil
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - sarb %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - shlb %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - shrb %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 sarb %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 shlb %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 shrb %cl, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sarw %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shlw %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shrw %di
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - sarw (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shlw (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shrw (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 sarw (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shlw (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shrw (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sarw $7, %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shlw $7, %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shrw $7, %di
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - sarw $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shlw $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shrw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 sarw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shlw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shrw $7, (%rax)
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - sarw %cl, %di
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - shlw %cl, %di
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - shrw %cl, %di
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - sarw %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - shlw %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - shrw %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 sarw %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 shlw %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 shrw %cl, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sarl %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shll %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shrl %edi
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - sarl (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shll (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shrl (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 sarl (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shll (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shrl (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sarl $7, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shll $7, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shrl $7, %edi
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - sarl $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shll $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shrl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 sarl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shll $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shrl $7, (%rax)
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - sarl %cl, %edi
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - shll %cl, %edi
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - shrl %cl, %edi
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - sarl %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - shll %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - shrl %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 sarl %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 shll %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 shrl %cl, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sarq %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shlq %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shrq %rdi
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - sarq (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shlq (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shrq (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 sarq (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shlq (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shrq (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sarq $7, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shlq $7, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - shrq $7, %rdi
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - sarq $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shlq $7, (%rax)
-# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 - - shrq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 sarq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shlq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.50 0.50 0.50 - 0.50 0.50 0.50 0.50 shrq $7, (%rax)
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - sarq %cl, %rdi
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - shlq %cl, %rdi
# CHECK-NEXT: - - 1.50 - - - - - 1.50 - - - shrq %cl, %rdi
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - sarq %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - shlq %cl, (%rax)
-# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 - - shrq %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 sarq %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 shlq %cl, (%rax)
+# CHECK-NEXT: - - 1.50 - 0.50 0.50 0.50 - 1.50 0.50 0.50 0.50 shrq %cl, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - sbbb $0, %al
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbb $0, %dil
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbb $0, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbb $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbb $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbb $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - sbbb $7, %al
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbb $7, %dil
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbb $7, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbb $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbb $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbb $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbb %sil, %dil
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbb %sil, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbb %sil, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbb %sil, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbb %sil, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - sbbb (%rax), %dil
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbw $0, %ax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbw $0, %di
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbw $0, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbw $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbw $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbw $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - sbbw $511, %ax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbw $511, %di
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbw $511, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbw $511, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbw $511, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbw $511, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbw $7, %di
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbw $7, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbw $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbw $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbw $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbw %si, %di
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbw %si, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbw %si, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbw %si, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbw %si, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - sbbw (%rax), %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbl $0, %eax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbl $0, %edi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbl $0, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbl $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbl $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbl $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - sbbl $665536, %eax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbl $665536, %edi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbl $665536, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbl $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbl $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbl $665536, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbl $7, %edi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbl $7, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbl $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbl $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbl $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbl %esi, %edi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbl %esi, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbl %esi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbl %esi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbl %esi, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - sbbl (%rax), %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbq $0, %rax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbq $0, %rdi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbq $0, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbq $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbq $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbq $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - - - sbbq $665536, %rax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbq $665536, %rdi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbq $665536, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbq $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbq $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbq $665536, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbq $7, %rdi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbq $7, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbq $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbq $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbq $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sbbq %rsi, %rdi
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - sbbq %rsi, (%rax)
-# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 - - lock sbbq %rsi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 sbbq %rsi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.50 0.50 0.50 0.25 1.25 0.50 0.50 0.50 lock sbbq %rsi, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - - - sbbq (%rax), %rdi
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - - - scasb %es:(%rdi), %al
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - - - scasw %es:(%rdi), %ax
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - - - scasl %es:(%rdi), %eax
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - - - scasq %es:(%rdi), %rax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - seto %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - seto (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 seto (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setno %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setno (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setno (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setb %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setb (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setb (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setae %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setae (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setae (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sete %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - sete (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 sete (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setne %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setne (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setne (%rax)
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - seta %al
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 1.00 - 1.00 0.33 - - seta (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - 1.00 0.50 0.50 0.50 seta (%rax)
# CHECK-NEXT: - - 1.00 - - - - - 1.00 - - - setbe %al
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 1.00 - 1.00 0.33 - - setbe (%rax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - 1.00 0.50 0.50 0.50 setbe (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - sets %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - sets (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 sets (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setns %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setns (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setns (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setp %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setp (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setp (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setnp %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setnp (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setnp (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setl %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setl (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setl (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setge %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setge (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setge (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setg %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setg (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setg (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - - - setle %al
-# CHECK-NEXT: - - 0.50 - 0.33 0.33 1.00 - 0.50 0.33 - - setle (%rax)
+# CHECK-NEXT: - - 0.50 - - - 0.50 - 0.50 0.50 0.50 0.50 setle (%rax)
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - - - shldw %cl, %si, %di
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - - - shrdw %cl, %si, %di
-# CHECK-NEXT: - - 1.25 1.25 0.83 0.83 - 0.25 1.25 0.33 - - shldw %cl, %si, (%rax)
-# CHECK-NEXT: - - 1.25 1.25 0.83 0.83 - 0.25 1.25 0.33 - - shrdw %cl, %si, (%rax)
+# CHECK-NEXT: - - 1.25 1.25 0.50 0.50 - 0.25 1.25 0.50 0.50 - shldw %cl, %si, (%rax)
+# CHECK-NEXT: - - 1.25 1.25 0.50 0.50 - 0.25 1.25 0.50 0.50 - shrdw %cl, %si, (%rax)
# CHECK-NEXT: - - - 1.00 - - - - - - - - shldw $7, %si, %di
# CHECK-NEXT: - - - 1.00 - - - - - - - - shrdw $7, %si, %di
-# CHECK-NEXT: - - 0.25 1.25 0.83 0.83 - 0.25 0.25 0.33 - - shldw $7, %si, (%rax)
-# CHECK-NEXT: - - 0.25 1.25 0.83 0.83 - 0.25 0.25 0.33 - - shrdw $7, %si, (%rax)
+# CHECK-NEXT: - - 0.25 1.25 0.50 0.50 - 0.25 0.25 0.50 0.50 - shldw $7, %si, (%rax)
+# CHECK-NEXT: - - 0.25 1.25 0.50 0.50 - 0.25 0.25 0.50 0.50 - shrdw $7, %si, (%rax)
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - - - shldl %cl, %esi, %edi
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - - - shrdl %cl, %esi, %edi
-# CHECK-NEXT: - - 1.25 1.25 0.83 0.83 - 0.25 1.25 0.33 - - shldl %cl, %esi, (%rax)
-# CHECK-NEXT: - - 1.25 1.25 0.83 0.83 - 0.25 1.25 0.33 - - shrdl %cl, %esi, (%rax)
+# CHECK-NEXT: - - 1.25 1.25 0.50 0.50 - 0.25 1.25 0.50 0.50 - shldl %cl, %esi, (%rax)
+# CHECK-NEXT: - - 1.25 1.25 0.50 0.50 - 0.25 1.25 0.50 0.50 - shrdl %cl, %esi, (%rax)
# CHECK-NEXT: - - - 1.00 - - - - - - - - shldl $7, %esi, %edi
# CHECK-NEXT: - - - 1.00 - - - - - - - - shrdl $7, %esi, %edi
-# CHECK-NEXT: - - 0.25 1.25 0.83 0.83 - 0.25 0.25 0.33 - - shldl $7, %esi, (%rax)
-# CHECK-NEXT: - - 0.25 1.25 0.83 0.83 - 0.25 0.25 0.33 - - shrdl $7, %esi, (%rax)
+# CHECK-NEXT: - - 0.25 1.25 0.50 0.50 - 0.25 0.25 0.50 0.50 - shldl $7, %esi, (%rax)
+# CHECK-NEXT: - - 0.25 1.25 0.50 0.50 - 0.25 0.25 0.50 0.50 - shrdl $7, %esi, (%rax)
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - - - shldq %cl, %rsi, %rdi
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - - - shrdq %cl, %rsi, %rdi
-# CHECK-NEXT: - - 1.25 1.25 0.83 0.83 - 0.25 1.25 0.33 - - shldq %cl, %rsi, (%rax)
-# CHECK-NEXT: - - 1.25 1.25 0.83 0.83 - 0.25 1.25 0.33 - - shrdq %cl, %rsi, (%rax)
+# CHECK-NEXT: - - 1.25 1.25 0.50 0.50 - 0.25 1.25 0.50 0.50 - shldq %cl, %rsi, (%rax)
+# CHECK-NEXT: - - 1.25 1.25 0.50 0.50 - 0.25 1.25 0.50 0.50 - shrdq %cl, %rsi, (%rax)
# CHECK-NEXT: - - - 1.00 - - - - - - - - shldq $7, %rsi, %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - - - shrdq $7, %rsi, %rdi
-# CHECK-NEXT: - - 0.25 1.25 0.83 0.83 - 0.25 0.25 0.33 - - shldq $7, %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 1.25 0.83 0.83 - 0.25 0.25 0.33 - - shrdq $7, %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 1.25 0.50 0.50 - 0.25 0.25 0.50 0.50 - shldq $7, %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 1.25 0.50 0.50 - 0.25 0.25 0.50 0.50 - shrdq $7, %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - stc
# CHECK-NEXT: - - 1.25 1.25 - - - 1.25 2.25 - - - std
-# CHECK-NEXT: - - 0.25 0.25 0.33 0.33 1.00 0.25 0.25 0.33 - - stosb %al, %es:(%rdi)
-# CHECK-NEXT: - - 0.25 0.25 0.33 0.33 1.00 0.25 0.25 0.33 - - stosw %ax, %es:(%rdi)
-# CHECK-NEXT: - - 0.25 0.25 0.33 0.33 1.00 0.25 0.25 0.33 - - stosl %eax, %es:(%rdi)
-# CHECK-NEXT: - - 0.25 0.25 0.33 0.33 1.00 0.25 0.25 0.33 - - stosq %rax, %es:(%rdi)
+# CHECK-NEXT: - - 0.25 0.25 - - 0.50 0.25 0.25 0.50 0.50 0.50 stosb %al, %es:(%rdi)
+# CHECK-NEXT: - - 0.25 0.25 - - 0.50 0.25 0.25 0.50 0.50 0.50 stosw %ax, %es:(%rdi)
+# CHECK-NEXT: - - 0.25 0.25 - - 0.50 0.25 0.25 0.50 0.50 0.50 stosl %eax, %es:(%rdi)
+# CHECK-NEXT: - - 0.25 0.25 - - 0.50 0.25 0.25 0.50 0.50 0.50 stosq %rax, %es:(%rdi)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subb $7, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subb $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subb %sil, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subb %sil, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - subb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subw $511, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subw $511, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subw $7, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subw $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subw %si, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - subw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subl $665536, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subl $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subl $7, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subl $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subl %esi, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - subl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subq $665536, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subq $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subq $7, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subq $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - subq %rsi, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - subq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock subq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 subq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock subq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - subq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - testb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - testb $7, %dil
@@ -2813,71 +2813,71 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - ud2
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - wrmsr
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xaddb %bl, %cl
-# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 - - xaddb %bl, (%rcx)
-# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 - - lock xaddb %bl, (%rcx)
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 xaddb %bl, (%rcx)
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 lock xaddb %bl, (%rcx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xaddw %bx, %cx
-# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 - - xaddw %ax, (%rbx)
-# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 - - lock xaddw %ax, (%rbx)
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 xaddw %ax, (%rbx)
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 lock xaddw %ax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xaddl %ebx, %ecx
-# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 - - xaddl %eax, (%rbx)
-# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 - - lock xaddl %eax, (%rbx)
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 xaddl %eax, (%rbx)
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 lock xaddl %eax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xaddq %rbx, %rcx
-# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 - - xaddq %rax, (%rbx)
-# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 - - lock xaddq %rax, (%rbx)
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 xaddq %rax, (%rbx)
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 0.50 lock xaddq %rax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xchgb %bl, %cl
-# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 - - xchgb %bl, (%rbx)
-# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 - - lock xchgb %bl, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.50 0.50 0.50 0.75 2.25 0.50 0.50 0.50 xchgb %bl, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.50 0.50 0.50 0.75 2.25 0.50 0.50 0.50 lock xchgb %bl, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xchgw %bx, %ax
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xchgw %bx, %cx
-# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 - - xchgw %ax, (%rbx)
-# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 - - lock xchgw %ax, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.50 0.50 0.50 0.75 2.25 0.50 0.50 0.50 xchgw %ax, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.50 0.50 0.50 0.75 2.25 0.50 0.50 0.50 lock xchgw %ax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xchgl %ebx, %eax
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xchgl %ebx, %ecx
-# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 - - xchgl %eax, (%rbx)
-# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 - - lock xchgl %eax, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.50 0.50 0.50 0.75 2.25 0.50 0.50 0.50 xchgl %eax, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.50 0.50 0.50 0.75 2.25 0.50 0.50 0.50 lock xchgl %eax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xchgq %rbx, %rax
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - - - xchgq %rbx, %rcx
-# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 - - xchgq %rax, (%rbx)
-# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 - - lock xchgq %rax, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.50 0.50 0.50 0.75 2.25 0.50 0.50 0.50 xchgq %rax, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.50 0.50 0.50 0.75 2.25 0.50 0.50 0.50 lock xchgq %rax, (%rbx)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - xlatb
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorb $7, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorb $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorb %sil, %dil
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorb %sil, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - xorb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorw $511, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorw $511, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorw $7, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorw $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorw %si, %di
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorw %si, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - xorw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorl $665536, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorl $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorl $7, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorl $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorl %esi, %edi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorl %esi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - xorl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorq $665536, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorq $665536, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorq $7, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorq $7, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - xorq %rsi, %rdi
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - xorq %rsi, (%rax)
-# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 - - lock xorq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 xorq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 0.50 0.25 0.25 0.50 0.50 0.50 lock xorq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - - - xorq (%rax), %rdi
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x87.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x87.s
index c982e107ee5131..1ee9fd47982031 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x87.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-x87.s
@@ -217,7 +217,7 @@ fyl2xp1
# CHECK-NEXT: 3 13 2.00 * U fiadds (%ecx)
# CHECK-NEXT: 3 13 2.00 * U fiaddl (%ecx)
# CHECK-NEXT: 1 100 0.25 * U fbld (%ecx)
-# CHECK-NEXT: 2 1 1.00 * U fbstp (%eax)
+# CHECK-NEXT: 2 1 0.50 * U fbstp (%eax)
# CHECK-NEXT: 1 1 1.00 U fchs
# CHECK-NEXT: 4 4 1.00 U fnclex
# CHECK-NEXT: 1 3 1.00 U fcmovb %st(1), %st
@@ -309,12 +309,12 @@ fyl2xp1
# CHECK-NEXT: 1 100 0.25 U fsincos
# CHECK-NEXT: 1 21 7.00 U fsqrt
# CHECK-NEXT: 1 1 0.25 U fst %st(0)
-# CHECK-NEXT: 1 1 1.00 * U fsts (%edx)
-# CHECK-NEXT: 1 1 1.00 * U fstl (%ecx)
+# CHECK-NEXT: 1 1 0.50 * U fsts (%edx)
+# CHECK-NEXT: 1 1 0.50 * U fstl (%ecx)
# CHECK-NEXT: 1 1 0.25 U fstp %st(0)
-# CHECK-NEXT: 2 1 1.00 * U fstpl (%edx)
-# CHECK-NEXT: 2 1 1.00 * U fstpl (%ecx)
-# CHECK-NEXT: 2 1 1.00 * U fstpt (%eax)
+# CHECK-NEXT: 2 1 0.50 * U fstpl (%edx)
+# CHECK-NEXT: 2 1 0.50 * U fstpl (%ecx)
+# CHECK-NEXT: 2 1 0.50 * U fstpt (%eax)
# CHECK-NEXT: 3 2 1.00 * U fnstcw (%eax)
# CHECK-NEXT: 100 106 19.50 * U fnstenv (%eax)
# CHECK-NEXT: 3 3 1.00 * U fnstsw (%eax)
@@ -371,7 +371,7 @@ fyl2xp1
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - 7.00 127.50 52.00 49.00 49.00 27.00 149.50 69.00 9.00 - -
+# CHECK-NEXT: - 7.00 127.50 52.00 40.00 40.00 13.50 149.50 69.00 13.50 13.50 13.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
@@ -386,7 +386,7 @@ fyl2xp1
# CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - - - fiadds (%ecx)
# CHECK-NEXT: - - - - 0.50 0.50 - 2.00 - - - - fiaddl (%ecx)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - fbld (%ecx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - fbstp (%eax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 fbstp (%eax)
# CHECK-NEXT: - - 1.00 - - - - - - - - - fchs
# CHECK-NEXT: - - 1.00 1.00 - - - 1.00 1.00 - - - fnclex
# CHECK-NEXT: - - - 1.00 - - - - - - - - fcmovb %st(1), %st
@@ -436,14 +436,14 @@ fyl2xp1
# CHECK-NEXT: - - - - 0.50 0.50 - 1.00 - - - - fildll (%eax)
# CHECK-NEXT: - - 0.50 - - - - 0.50 - - - - fincstp
# CHECK-NEXT: - - 3.00 1.50 - - - 9.00 1.50 - - - fninit
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - fists (%edx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - fistl (%ecx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - fistps (%edx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - fistpl (%ecx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - fistpll (%eax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - fisttps (%edx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - fisttpl (%ecx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 1.00 - 0.33 - - fisttpll (%eax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 fists (%edx)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 fistl (%ecx)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 fistps (%edx)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 fistpl (%ecx)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 fistpll (%eax)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 fisttps (%edx)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 fisttpl (%ecx)
+# CHECK-NEXT: - - - - - - 0.50 1.00 - 0.50 0.50 0.50 fisttpll (%eax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - fld %st(0)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - flds (%edx)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - - - fldl (%ecx)
@@ -478,15 +478,15 @@ fyl2xp1
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - fsincos
# CHECK-NEXT: - 7.00 1.00 - - - - - - - - - fsqrt
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - fst %st(0)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - fsts (%edx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - fstl (%ecx)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 fsts (%edx)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 fstl (%ecx)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - fstp %st(0)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - fstpl (%edx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - fstpl (%ecx)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - - 0.33 - - fstpt (%eax)
-# CHECK-NEXT: - - - - 0.33 0.33 1.00 - 1.00 0.33 - - fnstcw (%eax)
-# CHECK-NEXT: - - 27.00 8.50 3.67 3.67 11.00 23.50 19.00 3.67 - - fnstenv (%eax)
-# CHECK-NEXT: - - 1.00 - 0.33 0.33 1.00 - - 0.33 - - fnstsw (%eax)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 fstpl (%edx)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 fstpl (%ecx)
+# CHECK-NEXT: - - - - - - 0.50 - - 0.50 0.50 0.50 fstpt (%eax)
+# CHECK-NEXT: - - - - - - 0.50 - 1.00 0.50 0.50 0.50 fnstcw (%eax)
+# CHECK-NEXT: - - 27.00 8.50 - - 5.50 23.50 19.00 5.50 5.50 5.50 fnstenv (%eax)
+# CHECK-NEXT: - - 1.00 - - - 0.50 - - 0.50 0.50 0.50 fnstsw (%eax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - frstor (%eax)
# CHECK-NEXT: - - 0.50 0.50 - - - 0.50 0.50 - - - wait
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - - - fnsave (%eax)
diff --git a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-xsave.s b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-xsave.s
index db11b45f4c8b0e..0c008a8f26d2af 100644
--- a/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-xsave.s
+++ b/llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-xsave.s
@@ -42,12 +42,12 @@ xsetbv
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: - - 19.00 20.50 1.83 1.83 1.00 18.50 46.00 0.33 - -
+# CHECK-NEXT: - - 19.00 20.50 1.50 1.50 0.50 18.50 46.00 0.50 0.50 0.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
# CHECK-NEXT: - - 0.50 0.50 - - - 0.50 0.50 - - - xgetbv
# CHECK-NEXT: - - 5.25 6.25 0.50 0.50 - 5.25 13.25 - - - xrstor (%rax)
# CHECK-NEXT: - - 5.25 6.25 0.50 0.50 - 5.25 13.25 - - - xrstors (%rax)
-# CHECK-NEXT: - - 6.50 6.50 0.83 0.83 1.00 6.50 17.50 0.33 - - xsave (%rax)
+# CHECK-NEXT: - - 6.50 6.50 0.50 0.50 0.50 6.50 17.50 0.50 0.50 0.50 xsave (%rax)
# CHECK-NEXT: - - 1.50 1.00 - - - 1.00 1.50 - - - xsetbv
More information about the llvm-commits
mailing list