[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