[X86] Fix bdver2 128-bit ALU/logic/shift throughputs
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 10 Sep 2022 15:21:50 +0000 (16:21 +0100)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 10 Sep 2022 15:23:29 +0000 (16:23 +0100)
Noticed while trying to get vector shifts costs fixed using the script from D103695 - all of these are full-rate but the throughput costs were weirdly high for bdver2

Matches AMD 15h SoG, Agner and instlatx64

19 files changed:
llvm/lib/Target/X86/X86ScheduleBdVer2.td
llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-2.s
llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpeq.s
llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpgt.s
llvm/test/tools/llvm-mca/X86/BdVer2/dependent-pmuld-paddd.s
llvm/test/tools/llvm-mca/X86/BdVer2/one-idioms.s
llvm/test/tools/llvm-mca/X86/BdVer2/pipes-fpu.s
llvm/test/tools/llvm-mca/X86/BdVer2/resources-3dnow.s
llvm/test/tools/llvm-mca/X86/BdVer2/resources-avx1.s
llvm/test/tools/llvm-mca/X86/BdVer2/resources-mmx.s
llvm/test/tools/llvm-mca/X86/BdVer2/resources-sse1.s
llvm/test/tools/llvm-mca/X86/BdVer2/resources-sse2.s
llvm/test/tools/llvm-mca/X86/BdVer2/resources-sse41.s
llvm/test/tools/llvm-mca/X86/BdVer2/resources-sse42.s
llvm/test/tools/llvm-mca/X86/BdVer2/resources-ssse3.s
llvm/test/tools/llvm-mca/X86/BdVer2/resources-xop.s
llvm/test/tools/llvm-mca/X86/BdVer2/vec-logic-read-after-ld-2.s
llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms-avx-256.s
llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms.s

index ef2b426..51c904c 100644 (file)
@@ -932,8 +932,8 @@ def PdWriteVFRCZYm : SchedWriteRes<[PdFPU1, PdFPSTO]> {
 }
 def : InstRW<[PdWriteVFRCZYm], (instrs VFRCZPSYrm, VFRCZPDYrm)>;
 
-defm : PdWriteResXMMPair<WriteFLogic,       [PdFPU01, PdFPFMA],  2, [1, 2]>;
-defm : PdWriteResYMMPair<WriteFLogicY,      [PdFPU01, PdFPFMA],  2, [2, 2]>;
+defm : PdWriteResXMMPair<WriteFLogic,       [PdFPU23, PdFPMAL],  2>;
+defm : PdWriteResYMMPair<WriteFLogicY,      [PdFPU23, PdFPMAL],  2, [2, 2]>;
 defm : X86WriteResPairUnsupported<WriteFLogicZ>;
 
 defm : PdWriteResXMMPair<WriteFTest,        [PdFPU0, PdFPFMA, PdEX0],  1, [], 2>;
@@ -1122,18 +1122,18 @@ def : InstRW<[PdWriteMOVQ2DQrr], (instrs MMX_MOVQ2DQrr)>;
 defm : PdWriteRes<WriteVecMoveToGpr,        [PdFPU0, PdFPFMA, PdEX0], 11>;
 defm : PdWriteRes<WriteVecMoveFromGpr,      [PdFPU01, PdFPFMA], 11, [1, 2], 2>;
 
-defm : PdWriteResXMMPair<WriteVecALU,        [PdFPU01, PdFPMAL], 2>;
-defm : PdWriteResXMMPair<WriteVecALUX,       [PdFPU01, PdFPMAL], 2, [1, 2]>;
+defm : PdWriteResXMMPair<WriteVecALU,        [PdFPU23, PdFPMAL], 2>;
+defm : PdWriteResXMMPair<WriteVecALUX,       [PdFPU23, PdFPMAL], 2>;
 defm : X86WriteResPairUnsupported<WriteVecALUY>;
 defm : X86WriteResPairUnsupported<WriteVecALUZ>;
 
-defm : PdWriteResXMMPair<WriteVecShift,      [PdFPU01, PdFPMAL], 3, [1, 2]>;
-defm : PdWriteResXMMPair<WriteVecShiftX,     [PdFPU01, PdFPMAL], 3, [1, 2]>;
+defm : PdWriteResXMMPair<WriteVecShift,      [PdFPU1, PdFPXBR], 3>;
+defm : PdWriteResXMMPair<WriteVecShiftX,     [PdFPU1, PdFPXBR], 3>;
 defm : X86WriteResPairUnsupported<WriteVecShiftY>;
 defm : X86WriteResPairUnsupported<WriteVecShiftZ>;
 
-defm : PdWriteResXMMPair<WriteVecShiftImm,   [PdFPU01, PdFPMAL], 2, [1, 2]>;
-defm : PdWriteResXMMPair<WriteVecShiftImmX,  [PdFPU01, PdFPMAL], 2, [1, 2]>;
+defm : PdWriteResXMMPair<WriteVecShiftImm,   [PdFPU1, PdFPXBR], 2>;
+defm : PdWriteResXMMPair<WriteVecShiftImmX,  [PdFPU1, PdFPXBR], 2>;
 defm : X86WriteResPairUnsupported<WriteVecShiftImmY>;
 defm : X86WriteResPairUnsupported<WriteVecShiftImmZ>;
 
@@ -1200,8 +1200,8 @@ defm : PdWriteResXMMPair<WriteVarBlend,      [PdFPU01, PdFPMAL], 2, [1, 2]>;
 defm : X86WriteResPairUnsupported<WriteVarBlendY>;
 defm : X86WriteResPairUnsupported<WriteVarBlendZ>;
 
-defm : PdWriteResXMMPair<WriteVecLogic,      [PdFPU01, PdFPMAL], 2>;
-defm : PdWriteResXMMPair<WriteVecLogicX,     [PdFPU01, PdFPMAL], 2, [1, 2]>;
+defm : PdWriteResXMMPair<WriteVecLogic,      [PdFPU23, PdFPMAL], 2>;
+defm : PdWriteResXMMPair<WriteVecLogicX,     [PdFPU23, PdFPMAL], 2>;
 defm : X86WriteResPairUnsupported<WriteVecLogicY>;
 defm : X86WriteResPairUnsupported<WriteVecLogicZ>;
 
@@ -1213,7 +1213,7 @@ defm : PdWriteResXMMPair<WriteShuffle256,    [PdFPU01, PdFPMAL]>;
 defm : PdWriteResXMMPair<WriteVPMOV256,      [PdFPU01, PdFPMAL]>;
 defm : PdWriteResXMMPair<WriteVarShuffle256, [PdFPU01, PdFPMAL]>;
 
-defm : PdWriteResXMMPair<WriteVarVecShift,   [PdFPU01, PdFPMAL], 3, [1, 2]>;
+defm : PdWriteResXMMPair<WriteVarVecShift,   [PdFPU1, PdFPXBR], 3>;
 defm : X86WriteResPairUnsupported<WriteVarVecShiftY>;
 defm : X86WriteResPairUnsupported<WriteVarVecShiftZ>;
 
index 7587291..35754bb 100644 (file)
@@ -39,7 +39,7 @@ vandps %xmm4, %xmm1, %xmm0
 # CHECK:      Dispatch Width:    4
 # CHECK-NEXT: uOps Per Cycle:    1.06
 # CHECK-NEXT: IPC:               0.56
-# CHECK-NEXT: Block RThroughput: 25.5
+# CHECK-NEXT: Block RThroughput: 24.5
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -67,7 +67,7 @@ vandps %xmm4, %xmm1, %xmm0
 # CHECK-NEXT:  2      5     1.00                        vaddps %ymm3, %ymm1, %ymm4
 # CHECK-NEXT:  2      5     1.00                        vaddps %ymm3, %ymm1, %ymm4
 # CHECK-NEXT:  2      5     1.00                        vaddps %ymm3, %ymm1, %ymm4
-# CHECK-NEXT:  1      2     1.00                        vandps %xmm4, %xmm1, %xmm0
+# CHECK-NEXT:  1      2     0.50                        vandps %xmm4, %xmm1, %xmm0
 
 # CHECK:      Timeline view:
 # CHECK-NEXT:                     0123456789          0123456789          0123456789
index fa82b29..a1a921e 100644 (file)
@@ -14,13 +14,13 @@ vpcmpeqq %xmm3, %xmm3, %xmm0
 
 # CHECK:      Iterations:        1500
 # CHECK-NEXT: Instructions:      6000
-# CHECK-NEXT: Total Cycles:      6003
+# CHECK-NEXT: Total Cycles:      3005
 # CHECK-NEXT: Total uOps:        6000
 
 # CHECK:      Dispatch Width:    4
-# CHECK-NEXT: uOps Per Cycle:    1.00
-# CHECK-NEXT: IPC:               1.00
-# CHECK-NEXT: Block RThroughput: 4.0
+# CHECK-NEXT: uOps Per Cycle:    2.00
+# CHECK-NEXT: IPC:               2.00
+# CHECK-NEXT: Block RThroughput: 2.0
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -31,10 +31,10 @@ vpcmpeqq %xmm3, %xmm3, %xmm0
 # CHECK-NEXT: [6]: HasSideEffects (U)
 
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqb       %xmm0, %xmm0, %xmm1
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqw       %xmm1, %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqd       %xmm2, %xmm2, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqq       %xmm3, %xmm3, %xmm0
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqb       %xmm0, %xmm0, %xmm1
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqw       %xmm1, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqd       %xmm2, %xmm2, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqq       %xmm3, %xmm3, %xmm0
 
 # CHECK:      Resources:
 # CHECK-NEXT: [0.0] - PdAGLU01
@@ -63,31 +63,31 @@ vpcmpeqq %xmm3, %xmm3, %xmm0
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     4.00   4.00    -      -     2.00   2.00    -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00   2.00    -      -      -      -     2.00   2.00    -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     vpcmpeqb        %xmm0, %xmm0, %xmm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     vpcmpeqw        %xmm1, %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -      -     vpcmpeqd        %xmm2, %xmm2, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -      -     vpcmpeqq        %xmm3, %xmm3, %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     vpcmpeqb        %xmm0, %xmm0, %xmm1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     vpcmpeqw        %xmm1, %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     vpcmpeqd        %xmm2, %xmm2, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     vpcmpeqq        %xmm3, %xmm3, %xmm0
 
 # CHECK:      Timeline view:
-# CHECK-NEXT:                     01234
+# CHECK-NEXT:                     0
 # CHECK-NEXT: Index     0123456789
 
-# CHECK:      [0,0]     DeeER.    .   .   vpcmpeqb     %xmm0, %xmm0, %xmm1
-# CHECK-NEXT: [0,1]     D==eeER   .   .   vpcmpeqw     %xmm1, %xmm1, %xmm2
-# CHECK-NEXT: [0,2]     DeeE--R   .   .   vpcmpeqd     %xmm2, %xmm2, %xmm3
-# CHECK-NEXT: [0,3]     D==eeER   .   .   vpcmpeqq     %xmm3, %xmm3, %xmm0
-# CHECK-NEXT: [1,0]     .D===eeER .   .   vpcmpeqb     %xmm0, %xmm0, %xmm1
-# CHECK-NEXT: [1,1]     .D=====eeER   .   vpcmpeqw     %xmm1, %xmm1, %xmm2
-# CHECK-NEXT: [1,2]     .D===eeE--R   .   vpcmpeqd     %xmm2, %xmm2, %xmm3
-# CHECK-NEXT: [1,3]     .D=====eeER   .   vpcmpeqq     %xmm3, %xmm3, %xmm0
-# CHECK-NEXT: [2,0]     . D======eeER .   vpcmpeqb     %xmm0, %xmm0, %xmm1
-# CHECK-NEXT: [2,1]     . D========eeER   vpcmpeqw     %xmm1, %xmm1, %xmm2
-# CHECK-NEXT: [2,2]     . D======eeE--R   vpcmpeqd     %xmm2, %xmm2, %xmm3
-# CHECK-NEXT: [2,3]     . D========eeER   vpcmpeqq     %xmm3, %xmm3, %xmm0
+# CHECK:      [0,0]     DeeER.    .   vpcmpeqb %xmm0, %xmm0, %xmm1
+# CHECK-NEXT: [0,1]     D=eeER    .   vpcmpeqw %xmm1, %xmm1, %xmm2
+# CHECK-NEXT: [0,2]     DeeE-R    .   vpcmpeqd %xmm2, %xmm2, %xmm3
+# CHECK-NEXT: [0,3]     D==eeER   .   vpcmpeqq %xmm3, %xmm3, %xmm0
+# CHECK-NEXT: [1,0]     .DeeE-R   .   vpcmpeqb %xmm0, %xmm0, %xmm1
+# CHECK-NEXT: [1,1]     .D==eeER  .   vpcmpeqw %xmm1, %xmm1, %xmm2
+# CHECK-NEXT: [1,2]     .D=eeE-R  .   vpcmpeqd %xmm2, %xmm2, %xmm3
+# CHECK-NEXT: [1,3]     .D===eeER .   vpcmpeqq %xmm3, %xmm3, %xmm0
+# CHECK-NEXT: [2,0]     . D=eeE-R .   vpcmpeqb %xmm0, %xmm0, %xmm1
+# CHECK-NEXT: [2,1]     . D===eeER.   vpcmpeqw %xmm1, %xmm1, %xmm2
+# CHECK-NEXT: [2,2]     . D==eeE-R.   vpcmpeqd %xmm2, %xmm2, %xmm3
+# CHECK-NEXT: [2,3]     . D====eeER   vpcmpeqq %xmm3, %xmm3, %xmm0
 
 # CHECK:      Average Wait times (based on the timeline view):
 # CHECK-NEXT: [0]: Executions
@@ -96,8 +96,8 @@ vpcmpeqq %xmm3, %xmm3, %xmm0
 # CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
 
 # CHECK:            [0]    [1]    [2]    [3]
-# CHECK-NEXT: 0.     3     4.0    4.0    0.0       vpcmpeqb    %xmm0, %xmm0, %xmm1
-# CHECK-NEXT: 1.     3     6.0    6.0    0.0       vpcmpeqw    %xmm1, %xmm1, %xmm2
-# CHECK-NEXT: 2.     3     4.0    4.0    2.0       vpcmpeqd    %xmm2, %xmm2, %xmm3
-# CHECK-NEXT: 3.     3     6.0    0.0    0.0       vpcmpeqq    %xmm3, %xmm3, %xmm0
-# CHECK-NEXT:        3     5.0    3.5    0.5       <total>
+# CHECK-NEXT: 0.     3     1.3    1.3    0.7       vpcmpeqb    %xmm0, %xmm0, %xmm1
+# CHECK-NEXT: 1.     3     3.0    3.0    0.0       vpcmpeqw    %xmm1, %xmm1, %xmm2
+# CHECK-NEXT: 2.     3     2.0    2.0    1.0       vpcmpeqd    %xmm2, %xmm2, %xmm3
+# CHECK-NEXT: 3.     3     4.0    0.0    0.0       vpcmpeqq    %xmm3, %xmm3, %xmm0
+# CHECK-NEXT:        3     2.6    1.6    0.4       <total>
index 47c4de4..09d67e7 100644 (file)
@@ -35,7 +35,7 @@ vpcmpgtq %xmm3, %xmm3, %xmm0
 # CHECK-NEXT:  1      0     0.25                        vpcmpgtb       %xmm0, %xmm0, %xmm1
 # CHECK-NEXT:  1      0     0.25                        vpcmpgtw       %xmm1, %xmm1, %xmm2
 # CHECK-NEXT:  1      0     0.25                        vpcmpgtd       %xmm2, %xmm2, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcmpgtq       %xmm3, %xmm3, %xmm0
+# CHECK-NEXT:  1      2     0.50                        vpcmpgtq       %xmm3, %xmm3, %xmm0
 
 # CHECK:      Resources:
 # CHECK-NEXT: [0.0] - PdAGLU01
@@ -64,14 +64,14 @@ vpcmpgtq %xmm3, %xmm3, %xmm0
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpcmpgtb        %xmm0, %xmm0, %xmm1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpcmpgtw        %xmm1, %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpcmpgtd        %xmm2, %xmm2, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpgtq        %xmm3, %xmm3, %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpgtq        %xmm3, %xmm3, %xmm0
 
 # CHECK:      Timeline view:
 # CHECK-NEXT: Index     0123456
index efa99fd..ade61a0 100644 (file)
@@ -13,7 +13,7 @@ vpaddd %xmm0, %xmm0, %xmm3
 # CHECK:      Dispatch Width:    4
 # CHECK-NEXT: uOps Per Cycle:    0.50
 # CHECK-NEXT: IPC:               0.50
-# CHECK-NEXT: Block RThroughput: 2.0
+# CHECK-NEXT: Block RThroughput: 1.0
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -25,8 +25,8 @@ vpaddd %xmm0, %xmm0, %xmm3
 
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
 # CHECK-NEXT:  1      4     1.00                        vpmuldq        %xmm0, %xmm0, %xmm1
-# CHECK-NEXT:  1      2     1.00                        vpaddd %xmm1, %xmm1, %xmm0
-# CHECK-NEXT:  1      2     1.00                        vpaddd %xmm0, %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpaddd %xmm1, %xmm1, %xmm0
+# CHECK-NEXT:  1      2     0.50                        vpaddd %xmm0, %xmm0, %xmm3
 
 # CHECK:      Resources:
 # CHECK-NEXT: [0.0] - PdAGLU01
@@ -55,13 +55,13 @@ vpaddd %xmm0, %xmm0, %xmm3
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00   2.00   1.00    -     1.50   1.50    -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00   1.00    -     1.00    -     1.00   1.00    -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     vpmuldq %xmm0, %xmm0, %xmm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpaddd  %xmm1, %xmm1, %xmm0
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -      -     1.00    -      -      -      -      -      -      -     vpaddd  %xmm0, %xmm0, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     vpaddd  %xmm1, %xmm1, %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     vpaddd  %xmm0, %xmm0, %xmm3
 
 # CHECK:      Timeline view:
 # CHECK-NEXT:                     0123456789          0123456789          0123456789
index d3a81e4..8589949 100644 (file)
@@ -29,13 +29,13 @@ vpcmpeqw  %xmm3, %xmm3, %xmm5
 
 # CHECK:      Iterations:        100
 # CHECK-NEXT: Instructions:      1500
-# CHECK-NEXT: Total Cycles:      1353
+# CHECK-NEXT: Total Cycles:      754
 # CHECK-NEXT: Total uOps:        1500
 
 # CHECK:      Dispatch Width:    4
-# CHECK-NEXT: uOps Per Cycle:    1.11
-# CHECK-NEXT: IPC:               1.11
-# CHECK-NEXT: Block RThroughput: 13.5
+# CHECK-NEXT: uOps Per Cycle:    1.99
+# CHECK-NEXT: IPC:               1.99
+# CHECK-NEXT: Block RThroughput: 7.5
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -49,27 +49,27 @@ vpcmpeqw  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      2     0.50                        pcmpeqb        %mm2, %mm2
 # CHECK-NEXT:  1      2     0.50                        pcmpeqd        %mm2, %mm2
 # CHECK-NEXT:  1      2     0.50                        pcmpeqw        %mm2, %mm2
-# CHECK-NEXT:  1      2     1.00                        pcmpeqb        %xmm2, %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpeqd        %xmm2, %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpeqq        %xmm2, %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpeqw        %xmm2, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqb       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqd       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqq       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqw       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqb       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqd       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqq       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqw       %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  1      2     0.50                        pcmpeqb        %xmm2, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpeqd        %xmm2, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpeqq        %xmm2, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpeqw        %xmm2, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqb       %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqd       %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqq       %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqw       %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqb       %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqd       %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqq       %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqw       %xmm3, %xmm3, %xmm5
 
 # CHECK:      Register File statistics:
 # CHECK-NEXT: Total number of mappings created:    1500
-# CHECK-NEXT: Max number of mappings used:         69
+# CHECK-NEXT: Max number of mappings used:         72
 
 # CHECK:      *  Register File #1 -- PdFpuPRF:
 # CHECK-NEXT:    Number of physical registers:     160
 # CHECK-NEXT:    Total number of mappings created: 1500
-# CHECK-NEXT:    Max number of mappings used:      69
+# CHECK-NEXT:    Max number of mappings used:      72
 
 # CHECK:      *  Register File #2 -- PdIntegerPRF:
 # CHECK-NEXT:    Number of physical registers:     96
@@ -103,45 +103,45 @@ vpcmpeqw  %xmm3, %xmm3, %xmm5
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     13.50  13.50   -      -     7.50   7.50    -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     7.50   7.50    -      -      -      -     7.50   7.50    -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqb %mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqd %mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqw %mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqb %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqd %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqq %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqw %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqb        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqd        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqq        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqw        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqb        %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqd        %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqq        %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqw        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqb %mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqd %mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqw %mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqb %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqd %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     pcmpeqq %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqw %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqb        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     vpcmpeqd        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqq        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqw        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqb        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqd        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqq        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqw        %xmm3, %xmm3, %xmm5
 
 # CHECK:      Timeline view:
-# CHECK-NEXT:                     0123456
+# CHECK-NEXT:                     01
 # CHECK-NEXT: Index     0123456789
 
-# CHECK:      [0,0]     DeeER.    .    ..   pcmpeqb    %mm2, %mm2
-# CHECK-NEXT: [0,1]     DeeER.    .    ..   pcmpeqd    %mm2, %mm2
-# CHECK-NEXT: [0,2]     D=eeER    .    ..   pcmpeqw    %mm2, %mm2
-# CHECK-NEXT: [0,3]     D==eeER   .    ..   pcmpeqb    %xmm2, %xmm2
-# CHECK-NEXT: [0,4]     .DeeE-R   .    ..   pcmpeqd    %xmm2, %xmm2
-# CHECK-NEXT: [0,5]     .D==eeER  .    ..   pcmpeqq    %xmm2, %xmm2
-# CHECK-NEXT: [0,6]     .D===eeER .    ..   pcmpeqw    %xmm2, %xmm2
-# CHECK-NEXT: [0,7]     .D=====eeER    ..   vpcmpeqb   %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,8]     . D===eeE-R    ..   vpcmpeqd   %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,9]     . D======eeER  ..   vpcmpeqq   %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,10]    . D=====eeE-R  ..   vpcmpeqw   %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,11]    . D=======eeER ..   vpcmpeqb   %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,12]    .  D=======eeER..   vpcmpeqd   %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,13]    .  D========eeER.   vpcmpeqq   %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,14]    .  D=========eeER   vpcmpeqw   %xmm3, %xmm3, %xmm5
+# CHECK:      [0,0]     DeeER.    ..   pcmpeqb %mm2, %mm2
+# CHECK-NEXT: [0,1]     DeeER.    ..   pcmpeqd %mm2, %mm2
+# CHECK-NEXT: [0,2]     D=eeER    ..   pcmpeqw %mm2, %mm2
+# CHECK-NEXT: [0,3]     D==eeER   ..   pcmpeqb %xmm2, %xmm2
+# CHECK-NEXT: [0,4]     .DeeE-R   ..   pcmpeqd %xmm2, %xmm2
+# CHECK-NEXT: [0,5]     .D==eeER  ..   pcmpeqq %xmm2, %xmm2
+# CHECK-NEXT: [0,6]     .D=eeE-R  ..   pcmpeqw %xmm2, %xmm2
+# CHECK-NEXT: [0,7]     .D===eeER ..   vpcmpeqb        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,8]     . D=eeE-R ..   vpcmpeqd        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,9]     . D===eeER..   vpcmpeqq        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,10]    . D==eeE-R..   vpcmpeqw        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,11]    . D===eeER..   vpcmpeqb        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,12]    .  D===eeER.   vpcmpeqd        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,13]    .  D===eeER.   vpcmpeqq        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,14]    .  D====eeER   vpcmpeqw        %xmm3, %xmm3, %xmm5
 
 # CHECK:      Average Wait times (based on the timeline view):
 # CHECK-NEXT: [0]: Executions
@@ -156,13 +156,13 @@ vpcmpeqw  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT: 3.     1     3.0    3.0    0.0       pcmpeqb     %xmm2, %xmm2
 # CHECK-NEXT: 4.     1     1.0    1.0    1.0       pcmpeqd     %xmm2, %xmm2
 # CHECK-NEXT: 5.     1     3.0    0.0    0.0       pcmpeqq     %xmm2, %xmm2
-# CHECK-NEXT: 6.     1     4.0    4.0    0.0       pcmpeqw     %xmm2, %xmm2
-# CHECK-NEXT: 7.     1     6.0    6.0    0.0       vpcmpeqb    %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 8.     1     4.0    4.0    1.0       vpcmpeqd    %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 9.     1     7.0    1.0    0.0       vpcmpeqq    %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 10.    1     6.0    6.0    1.0       vpcmpeqw    %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 11.    1     8.0    8.0    0.0       vpcmpeqb    %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 12.    1     8.0    8.0    0.0       vpcmpeqd    %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 13.    1     9.0    2.0    0.0       vpcmpeqq    %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 14.    1     10.0   10.0   0.0       vpcmpeqw    %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:        1     4.9    3.8    0.2       <total>
+# CHECK-NEXT: 6.     1     2.0    2.0    1.0       pcmpeqw     %xmm2, %xmm2
+# CHECK-NEXT: 7.     1     4.0    4.0    0.0       vpcmpeqb    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 8.     1     2.0    2.0    1.0       vpcmpeqd    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 9.     1     4.0    0.0    0.0       vpcmpeqq    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 10.    1     3.0    3.0    1.0       vpcmpeqw    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 11.    1     4.0    4.0    0.0       vpcmpeqb    %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 12.    1     4.0    4.0    0.0       vpcmpeqd    %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 13.    1     4.0    0.0    0.0       vpcmpeqq    %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 14.    1     5.0    5.0    0.0       vpcmpeqw    %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:        1     2.9    2.1    0.3       <total>
index b1a82c6..857df60 100644 (file)
@@ -37,7 +37,7 @@ vsqrtps     %ymm0, %ymm2
 
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
 # CHECK-NEXT:  1      5     2.00                        vpmulld        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpand  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpand  %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      4     1.00                        vcvttps2dq     %xmm0, %xmm2
 # CHECK-NEXT:  6      12    7.00                        vpclmulqdq     $0, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      5     1.00                        vaddps %xmm0, %xmm1, %xmm2
@@ -72,12 +72,12 @@ vsqrtps     %ymm0, %ymm2
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   15.06  14.94  1.12   1.88   9.00   1.00   6.44   4.56    -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00   15.06  14.94  1.00   1.00   9.00   1.00   6.00   4.00   0.50   0.50    -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.88   0.12   2.00    -     2.00   1.00    -      -      -      -      -      -      -     vpmulld %xmm0, %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.24   1.76    -      -     0.44   0.56    -      -      -      -      -      -      -     vpand   %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.12   0.88    -      -      -      -     0.50   0.50    -      -      -      -      -     vpand   %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -     vcvttps2dq      %xmm0, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     7.00    -     1.00    -      -      -      -      -      -      -      -     vpclmulqdq      $0, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.52   0.48    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vaddps  %xmm0, %xmm1, %xmm2
@@ -90,7 +90,7 @@ vsqrtps     %ymm0, %ymm2
 # CHECK-NEXT: Index     0123456789          0123456789
 
 # CHECK:      [0,0]     DeeeeeER  .    .    .    .    . .   vpmulld    %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: [0,1]     D=eeE--R  .    .    .    .    . .   vpand      %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: [0,1]     DeeE---R  .    .    .    .    . .   vpand      %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: [0,2]     D==eeeeER .    .    .    .    . .   vcvttps2dq %xmm0, %xmm2
 # CHECK-NEXT: [0,3]     .D==eeeeeeeeeeeeER  .    .    . .   vpclmulqdq $0, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: [0,4]     . D===================eeeeeER . .   vaddps     %xmm0, %xmm1, %xmm2
@@ -99,7 +99,7 @@ vsqrtps     %ymm0, %ymm2
 # CHECK-NEXT: [0,7]     .  DeeeeeeeeeE---------------R. .   vsqrtps    %ymm0, %ymm2
 # CHECK-NEXT: [1,0]     .   D======eeeeeE------------R. .   vpmulld    %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: [1,1]     .   DeeE---------------------R. .   vpand      %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: [1,2]     .   D=eeeeE-------------------R .   vcvttps2dq %xmm0, %xmm2
+# CHECK-NEXT: [1,2]     .   DeeeeE--------------------R .   vcvttps2dq %xmm0, %xmm2
 # CHECK-NEXT: [1,3]     .    D=======eeeeeeeeeeeeE----R .   vpclmulqdq $0, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: [1,4]     .    .D==================eeeeeER.   vaddps     %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: [1,5]     .    .D=====eeeeeeeeeE---------R.   vsqrtps    %xmm0, %xmm2
@@ -114,11 +114,11 @@ vsqrtps     %ymm0, %ymm2
 
 # CHECK:            [0]    [1]    [2]    [3]
 # CHECK-NEXT: 0.     2     4.0    4.0    6.0       vpmulld     %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.     2     1.5    1.5    11.5      vpand       %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 2.     2     2.5    2.5    9.5       vcvttps2dq  %xmm0, %xmm2
+# CHECK-NEXT: 1.     2     1.0    1.0    12.0      vpand       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 2.     2     2.0    2.0    10.0      vcvttps2dq  %xmm0, %xmm2
 # CHECK-NEXT: 3.     2     5.5    5.5    2.0       vpclmulqdq  $0, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 4.     2     19.5   19.5   0.0       vaddps      %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 5.     2     3.5    3.5    12.0      vsqrtps     %xmm0, %xmm2
 # CHECK-NEXT: 6.     2     19.5   19.5   0.0       vaddps      %ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 7.     2     7.5    7.5    8.0       vsqrtps     %ymm0, %ymm2
-# CHECK-NEXT:        2     7.9    7.9    6.1       <total>
+# CHECK-NEXT:        2     7.8    7.8    6.3       <total>
index ff83724..699df52 100644 (file)
@@ -166,13 +166,13 @@ pswapd      (%rax), %mm2
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 38.00  38.00   -      -      -      -      -     8.00   17.50  17.50  3.00   3.00   2.00   8.00   46.50  2.50    -      -      -     38.00  38.00   -      -
+# CHECK-NEXT: 38.00  38.00   -      -      -      -      -     8.00   17.50  17.50  3.00   3.00   2.00   8.00   45.50  1.50   1.00   1.00    -     38.00  38.00   -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     femms
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pavgusb %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pavgusb (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pavgusb %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pavgusb (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -     pf2id   %mm0, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -     1.00    -      -      -      -      -     1.00   1.00    -      -      -      -     1.50   1.50    -      -     pf2id   (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00   1.00    -      -      -      -      -      -      -      -     pf2iw   %mm0, %mm2
index c3ba739..3ff5ea2 100644 (file)
@@ -1062,19 +1062,19 @@ vzeroupper
 # CHECK-NEXT:  1      10    1.50    *                   vaesimc        (%rax), %xmm2
 # CHECK-NEXT:  1      5     1.00                        vaeskeygenassist       $22, %xmm0, %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   vaeskeygenassist       $22, (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        vandnpd        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vandnpd        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vandnpd        (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      2     1.00                        vandnpd        %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      7     1.50    *                   vandnpd        (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      2     1.00                        vandnps        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vandnps        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vandnps        (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      2     1.00                        vandnps        %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      7     1.50    *                   vandnps        (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      2     1.00                        vandpd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vandpd %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vandpd (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      2     1.00                        vandpd %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      7     1.50    *                   vandpd (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      2     1.00                        vandps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vandps %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vandps (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      2     1.00                        vandps %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      7     1.50    *                   vandps (%rax), %ymm1, %ymm2
@@ -1306,7 +1306,7 @@ vzeroupper
 # CHECK-NEXT:  4      3     2.00           *            vmovntpd       %ymm0, (%rax)
 # CHECK-NEXT:  1      3     1.00           *            vmovntps       %xmm0, (%rax)
 # CHECK-NEXT:  4      3     2.00           *            vmovntps       %ymm0, (%rax)
-# CHECK-NEXT:  1      2     1.00                        vmovq  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vmovq  %xmm0, %xmm2
 # CHECK-NEXT:  2      11    1.00                        vmovq  %rax, %xmm2
 # CHECK-NEXT:  1      5     1.50    *                   vmovq  (%rax), %xmm2
 # CHECK-NEXT:  1      11    1.00                        vmovq  %xmm0, %rcx
@@ -1351,19 +1351,19 @@ vzeroupper
 # CHECK-NEXT:  1      10    1.50    *                   vmulsd (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      5     1.00                        vmulss %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   vmulss (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vorpd  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vorpd  %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vorpd  (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      2     1.00                        vorpd  %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      7     1.50    *                   vorpd  (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      2     1.00                        vorps  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vorps  %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vorps  (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      2     1.00                        vorps  %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      7     1.50    *                   vorps  (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      2     1.00                        vpabsb %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpabsb %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpabsb (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpabsd %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpabsd %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpabsd (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpabsw %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpabsw %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpabsw (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        vpackssdw      %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpackssdw      (%rax), %xmm1, %xmm2
@@ -1373,31 +1373,31 @@ vzeroupper
 # CHECK-NEXT:  1      7     1.50    *                   vpackusdw      (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      2     1.00                        vpackuswb      %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpackuswb      (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpaddb %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpaddb %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpaddb (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpaddd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpaddd %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpaddd (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpaddq %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpaddq %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpaddq (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpaddsb        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpaddsb        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpaddsb        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpaddsw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpaddsw        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpaddsw        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpaddusb       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpaddusb       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpaddusb       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpaddusw       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpaddusw       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpaddusw       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpaddw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpaddw %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpaddw (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      2     1.00                        vpalignr       $1, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpalignr       $1, (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpand  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpand  %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpand  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpandn %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpandn %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpandn (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpavgb %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpavgb %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpavgb (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpavgw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpavgw %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpavgw (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      2     1.00                        vpblendvb      %xmm3, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpblendvb      %xmm3, (%rax), %xmm1, %xmm2
@@ -1405,25 +1405,25 @@ vzeroupper
 # CHECK-NEXT:  1      7     1.50    *                   vpblendw       $11, (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  6      12    7.00                        vpclmulqdq     $11, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  6      17    7.00    *                   vpclmulqdq     $11, (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqb       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqb       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpcmpeqb       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqd       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqd       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpcmpeqd       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqq       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqq       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpcmpeqq       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpeqw       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpeqw       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpcmpeqw       (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  27     14    10.00                       vpcmpestri     $1, %xmm0, %xmm2
 # CHECK-NEXT:  28     19    11.50   *                   vpcmpestri     $1, (%rax), %xmm2
 # CHECK-NEXT:  27     10    10.00                       vpcmpestrm     $1, %xmm0, %xmm2
 # CHECK-NEXT:  28     15    11.50   *                   vpcmpestrm     $1, (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpgtb       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpgtb       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpcmpgtb       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpgtd       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpgtd       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpcmpgtd       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpgtq       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpgtq       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpcmpgtq       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpcmpgtw       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpcmpgtw       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpcmpgtw       (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  7      11    3.00                        vpcmpistri     $1, %xmm0, %xmm2
 # CHECK-NEXT:  8      16    3.00    *                   vpcmpistri     $1, (%rax), %xmm2
@@ -1481,29 +1481,29 @@ vzeroupper
 # CHECK-NEXT:  1      9     1.50    *                   vpmaddubsw     (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      4     1.00                        vpmaddwd       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      9     1.50    *                   vpmaddwd       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpmaxsb        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpmaxsb        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpmaxsb        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpmaxsd        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpmaxsd        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpmaxsd        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpmaxsw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpmaxsw        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpmaxsw        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpmaxub        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpmaxub        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpmaxub        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpmaxud        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpmaxud        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpmaxud        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpmaxuw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpmaxuw        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpmaxuw        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpminsb        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpminsb        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpminsb        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpminsd        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpminsd        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpminsd        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpminsw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpminsw        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpminsw        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpminub        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpminub        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpminub        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpminud        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpminud        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpminud        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpminuw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpminuw        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpminuw        (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      12    1.00                        vpmovmskb      %xmm0, %ecx
 # CHECK-NEXT:  1      2     1.00                        vpmovsxbd      %xmm0, %xmm2
@@ -1544,7 +1544,7 @@ vzeroupper
 # CHECK-NEXT:  1      9     1.50    *                   vpmullw        (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      4     1.00                        vpmuludq       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      9     1.50    *                   vpmuludq       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpor   %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpor   %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpor   (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      4     1.00                        vpsadbw        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  2      9     1.50    *                   vpsadbw        (%rax), %xmm1, %xmm2
@@ -1556,11 +1556,11 @@ vzeroupper
 # CHECK-NEXT:  1      7     1.50    *                   vpshufhw       $1, (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        vpshuflw       $1, %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpshuflw       $1, (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsignb        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsignb        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsignb        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsignd        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsignd        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsignd        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsignw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsignw        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsignw        (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      2     1.00                        vpslld $1, %xmm0, %xmm2
 # CHECK-NEXT:  1      3     1.00                        vpslld %xmm0, %xmm1, %xmm2
@@ -1588,21 +1588,21 @@ vzeroupper
 # CHECK-NEXT:  1      2     1.00                        vpsrlw $1, %xmm0, %xmm2
 # CHECK-NEXT:  1      3     1.00                        vpsrlw %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      8     1.50    *                   vpsrlw (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubb %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubb %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsubb (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubd %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsubd (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubq %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubq %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsubq (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubsb        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubsb        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsubsb        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubsw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubsw        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsubsw        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubusb       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubusb       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsubusb       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubusw       %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubusw       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsubusw       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubw %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpsubw (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      1     1.00                        vptest %xmm0, %xmm1
 # CHECK-NEXT:  2      6     1.50    *                   vptest (%rax), %xmm1
@@ -1624,7 +1624,7 @@ vzeroupper
 # CHECK-NEXT:  1      7     1.50    *                   vpunpcklqdq    (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      2     1.00                        vpunpcklwd     %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpunpcklwd     (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpxor  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpxor  %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vpxor  (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  1      5     1.00                        vrcpps %xmm0, %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   vrcpps (%rax), %xmm2
@@ -1711,11 +1711,11 @@ vzeroupper
 # CHECK-NEXT:  1      7     1.50    *                   vunpcklps      (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      2     2.00                        vunpcklps      %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      7     2.00    *                   vunpcklps      (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      2     1.00                        vxorpd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vxorpd %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vxorpd (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      2     1.00                        vxorpd %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      7     1.50    *                   vxorpd (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  1      2     1.00                        vxorps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vxorps %xmm0, %xmm1, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   vxorps (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  2      2     1.00                        vxorps %ymm0, %ymm1, %ymm2
 # CHECK-NEXT:  2      7     1.50    *                   vxorps (%rax), %ymm1, %ymm2
@@ -1749,7 +1749,7 @@ vzeroupper
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 545.50 545.50  -      -      -     56.00   -     80.00  1126.50 1126.50 267.00 267.00 54.00 110.00 436.50 342.50 76.50 76.50   -     495.50 495.50  -     100.00
+# CHECK-NEXT: 545.50 545.50  -      -      -     56.00   -     80.00  1094.50 1094.50 218.50 218.50 54.00 110.00 352.00 282.00 149.00 149.00 24.00 495.50 495.50  -     100.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
@@ -1785,22 +1785,22 @@ vzeroupper
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     vaesimc (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     vaeskeygenassist        $22, %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     vaeskeygenassist        $22, (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vandnpd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vandnpd (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vandnpd %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vandnpd (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vandnps %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vandnps (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vandnps %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vandnps (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vandpd  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vandpd  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vandpd  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vandpd  (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vandps  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vandps  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vandps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vandps  (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vandnpd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vandnpd (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vandnpd %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -     1.50   1.50    -      -     vandnpd (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vandnps %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vandnps (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vandnps %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -     1.50   1.50    -      -     vandnps (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vandpd  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vandpd  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vandpd  %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -     1.50   1.50    -      -     vandpd  (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vandps  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vandps  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vandps  %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -     1.50   1.50    -      -     vandps  (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vblendpd        $11, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vblendpd        $11, (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vblendpd        $11, %ymm0, %ymm1, %ymm2
@@ -2029,7 +2029,7 @@ vzeroupper
 # CHECK-NEXT: 1.00   1.00    -      -      -      -      -      -      -      -      -      -      -     2.00    -     2.00    -      -      -      -      -      -     2.00   vmovntpd        %ymm0, (%rax)
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -     1.00   vmovntps        %xmm0, (%rax)
 # CHECK-NEXT: 1.00   1.00    -      -      -      -      -      -      -      -      -      -      -     2.00    -     2.00    -      -      -      -      -      -     2.00   vmovntps        %ymm0, (%rax)
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vmovq   %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vmovq   %xmm0, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vmovq   %rax, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vmovq   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vmovq   %xmm0, %rcx
@@ -2074,20 +2074,20 @@ vzeroupper
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     vmulsd  (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -      -     vmulss  %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     vmulss  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vorpd   %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vorpd   (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vorpd   %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vorpd   (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vorps   %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vorps   (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vorps   %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vorps   (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpabsb  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpabsb  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpabsd  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpabsd  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpabsw  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpabsw  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vorpd   %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vorpd   (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vorpd   %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -     1.50   1.50    -      -     vorpd   (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vorps   %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vorps   (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vorps   %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -     1.50   1.50    -      -     vorps   (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpabsb  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpabsb  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpabsd  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpabsd  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpabsw  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpabsw  (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpackssdw       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpackssdw       (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpacksswb       %xmm0, %xmm1, %xmm2
@@ -2096,58 +2096,58 @@ vzeroupper
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpackusdw       (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpackuswb       %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpackuswb       (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpaddb  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpaddb  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpaddd  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpaddd  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpaddq  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpaddq  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpaddsb %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpaddsb (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpaddsw %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpaddsw (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpaddusb        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpaddusb        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpaddusw        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpaddusw        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpaddw  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpaddw  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpaddb  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpaddb  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpaddd  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpaddd  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpaddq  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpaddq  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpaddsb %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpaddsb (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpaddsw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpaddsw (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpaddusb        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpaddusb        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpaddusw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpaddusw        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpaddw  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpaddw  (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpalignr        $1, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpalignr        $1, (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpand   %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpand   (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpandn  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpandn  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpavgb  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpavgb  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpavgw  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpavgw  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpand   %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpand   (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpandn  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpandn  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpavgb  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpavgb  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpavgw  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpavgw  (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpblendvb       %xmm3, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpblendvb       %xmm3, (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     vpblendw        $11, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpblendw        $11, (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     7.00    -     1.00    -      -      -      -      -      -      -      -     vpclmulqdq      $11, %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     7.00    -     1.00    -      -      -      -     1.50   1.50    -      -     vpclmulqdq      $11, (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqb        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmpeqb        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqd        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmpeqd        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqq        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmpeqq        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpeqw        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmpeqw        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqb        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcmpeqb        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqd        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcmpeqd        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqq        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcmpeqq        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpeqw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcmpeqw        (%rax), %xmm1, %xmm2
 # CHECK-NEXT: 10.00  10.00   -      -      -     1.00    -      -     0.50   0.50   5.00   5.00    -      -      -     1.00    -      -      -     5.00   5.00    -     10.00  vpcmpestri      $1, %xmm0, %xmm2
 # CHECK-NEXT: 11.50  11.50   -      -      -     1.00    -      -     0.50   0.50   5.00   5.00    -      -      -     1.00    -      -      -     6.50   6.50    -     10.00  vpcmpestri      $1, (%rax), %xmm2
 # CHECK-NEXT: 10.00  10.00   -      -      -     1.00    -      -     0.50   0.50   5.00   5.00    -      -      -     1.00    -      -      -     5.00   5.00    -     10.00  vpcmpestrm      $1, %xmm0, %xmm2
 # CHECK-NEXT: 11.50  11.50   -      -      -     1.00    -      -     0.50   0.50   5.00   5.00    -      -      -     1.00    -      -      -     6.50   6.50    -     10.00  vpcmpestrm      $1, (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpgtb        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmpgtb        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpgtd        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmpgtd        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpgtq        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmpgtq        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmpgtw        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmpgtw        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpgtb        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcmpgtb        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpgtd        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcmpgtd        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpgtq        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcmpgtq        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcmpgtw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcmpgtw        (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     3.00   3.00    -      -      -      -      -     1.00    -      -      -      -      -      -      -     vpcmpistri      $1, %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -     1.00    -      -     3.00   3.00    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     vpcmpistri      $1, (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     4.00   4.00    -      -      -      -      -     1.00    -      -      -      -      -      -      -     vpcmpistrm      $1, %xmm0, %xmm2
@@ -2204,30 +2204,30 @@ vzeroupper
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     vpmaddubsw      (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     vpmaddwd        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     vpmaddwd        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpmaxsb %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpmaxsb (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpmaxsd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpmaxsd (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpmaxsw %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpmaxsw (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpmaxub %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpmaxub (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpmaxud %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpmaxud (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpmaxuw %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpmaxuw (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpminsb %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpminsb (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpminsd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpminsd (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpminsw %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpminsw (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpminub %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpminub (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpminud %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpminud (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpminuw %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpminuw (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpmaxsb %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpmaxsb (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpmaxsd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpmaxsd (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpmaxsw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpmaxsw (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpmaxub %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpmaxub (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpmaxud %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpmaxud (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpmaxuw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpmaxuw (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpminsb %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpminsb (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpminsd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpminsd (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpminsw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpminsw (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpminub %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpminub (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpminud %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpminud (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpminuw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpminuw (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vpmovmskb       %xmm0, %ecx
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpmovsxbd       %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpmovsxbd       (%rax), %xmm2
@@ -2267,8 +2267,8 @@ vzeroupper
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     vpmullw (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     vpmuludq        %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     vpmuludq        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpor    %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpor    (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpor    %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpor    (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsadbw %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsadbw (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshufb %xmm0, %xmm1, %xmm2
@@ -2279,54 +2279,54 @@ vzeroupper
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshufhw        $1, (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshuflw        $1, %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshuflw        $1, (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsignb %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsignb (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsignd %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsignd (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsignw %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsignw (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpslld  $1, %xmm0, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpslld  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpslld  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsignb %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsignb (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsignd %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsignd (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsignw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsignw (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpslld  $1, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpslld  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpslld  (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpslldq $1, %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsllq  $1, %xmm0, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsllq  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsllq  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsllw  $1, %xmm0, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsllw  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsllw  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsrad  $1, %xmm0, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsrad  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsrad  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsraw  $1, %xmm0, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsraw  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsraw  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsrld  $1, %xmm0, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsrld  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsrld  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsllq  $1, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsllq  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpsllq  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsllw  $1, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsllw  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpsllw  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsrad  $1, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsrad  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpsrad  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsraw  $1, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsraw  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpsraw  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsrld  $1, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsrld  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpsrld  (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsrldq $1, %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsrlq  $1, %xmm0, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsrlq  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsrlq  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsrlw  $1, %xmm0, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsrlw  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsrlw  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsubb  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsubb  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsubd  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsubd  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsubq  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsubq  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsubsb %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsubsb (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsubsw %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsubsw (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsubusb        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsubusb        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsubusw        %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsubusw        (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpsubw  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpsubw  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsrlq  $1, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsrlq  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpsrlq  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsrlw  $1, %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpsrlw  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpsrlw  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsubb  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsubb  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsubd  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsubd  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsubq  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsubq  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsubsb %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsubsb (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsubsw %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsubsw (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsubusb        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsubusb        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsubusw        %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsubusw        (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpsubw  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpsubw  (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vptest  %xmm0, %xmm1
 # CHECK-NEXT: 1.50   1.50    -      -      -     1.00    -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -     1.50   1.50    -      -     vptest  (%rax), %xmm1
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     2.00   2.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vptest  %ymm0, %ymm1
@@ -2347,8 +2347,8 @@ vzeroupper
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpunpcklqdq     (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpunpcklwd      %xmm0, %xmm1, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpunpcklwd      (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpxor   %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpxor   (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpxor   %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpxor   (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -      -     vrcpps  %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     vrcpps  (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     2.00    -      -      -      -      -      -      -     vrcpps  %ymm0, %ymm2
@@ -2434,13 +2434,13 @@ vzeroupper
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vunpcklps       (%rax), %xmm1, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00   2.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vunpcklps       %ymm0, %ymm1, %ymm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     2.00   2.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vunpcklps       (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vxorpd  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vxorpd  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vxorpd  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vxorpd  (%rax), %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vxorps  %xmm0, %xmm1, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vxorps  (%rax), %xmm1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vxorps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vxorps  (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vxorpd  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vxorpd  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vxorpd  %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -     1.50   1.50    -      -     vxorpd  (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vxorps  %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vxorps  (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vxorps  %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -     1.50   1.50    -      -     vxorps  (%rax), %ymm1, %ymm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vzeroall
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vzeroupper
index 399f946..ea06c4b 100644 (file)
@@ -297,7 +297,7 @@ pxor        (%rax), %mm2
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 70.00  70.00   -      -      -     2.00    -      -     3.50   3.50   69.00  69.00  6.00   2.00   55.50  47.50  3.00   3.00    -     69.00  69.00   -     2.00
+# CHECK-NEXT: 70.00  70.00   -      -      -     2.00    -      -     3.50   3.50   45.00  45.00  6.00   2.00   19.50  35.50  27.00  27.00  24.00  69.00  69.00   -     2.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
@@ -316,82 +316,82 @@ pxor        (%rax), %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     packssdw        (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     packuswb        %mm0, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     packuswb        (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     paddb   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddb   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     paddd   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddd   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     paddsb  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddsb  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     paddsw  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddsw  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     paddusb %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddusb (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     paddusw %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddusw (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     paddw   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddw   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pand    %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pand    (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pandn   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pandn   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqb %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpeqb (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqd %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpeqd (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqw %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpeqw (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpgtb %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpgtb (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpgtd %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpgtd (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpgtw %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpgtw (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddb   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddb   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddd   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddd   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddsb  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddsb  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddsw  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddsw  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddusb %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddusb (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddusw %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddusw (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddw   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddw   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pand    %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pand    (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pandn   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pandn   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqb %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpeqb (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqd %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpeqd (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqw %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpeqw (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpgtb %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpgtb (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpgtd %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpgtd (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpgtw %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpgtw (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     pmaddwd %mm0, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     pmaddwd (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     pmulhw  %mm0, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     pmulhw  (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     pmullw  %mm0, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     pmullw  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     por     %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     por     (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pslld   $1, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pslld   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pslld   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psllq   $1, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psllq   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psllq   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psllw   $1, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psllw   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psllw   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrad   $1, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrad   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psrad   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psraw   $1, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psraw   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psraw   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrld   $1, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrld   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psrld   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrlq   $1, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrlq   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psrlq   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrlw   $1, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrlw   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psrlw   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psubb   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubb   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psubd   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubd   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psubsb  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubsb  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psubsw  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubsw  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psubusb %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubusb (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psubusw %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubusw (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psubw   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubw   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     por     %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     por     (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     pslld   $1, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     pslld   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     pslld   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psllq   $1, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psllq   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psllq   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psllw   $1, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psllw   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psllw   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrad   $1, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrad   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psrad   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psraw   $1, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psraw   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psraw   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrld   $1, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrld   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psrld   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrlq   $1, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrlq   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psrlq   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrlw   $1, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrlw   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psrlw   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubb   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubb   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubd   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubd   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubsb  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubsb  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubsw  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubsw  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubusb %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubusb (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubusw %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubusw (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubw   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubw   (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     punpckhbw       %mm0, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     punpckhbw       (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     punpckhdq       %mm0, %mm2
@@ -404,5 +404,5 @@ pxor        (%rax), %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     punpckldq       (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     punpcklwd       %mm0, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     punpcklwd       (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pxor    %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pxor    (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pxor    %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pxor    (%rax), %mm2
index 652cb5e..327d94f 100644 (file)
@@ -198,9 +198,9 @@ xorps       (%rax), %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   addps  (%rax), %xmm2
 # CHECK-NEXT:  1      5     1.00                        addss  %xmm0, %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   addss  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        andnps %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        andnps %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   andnps (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        andps  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        andps  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   andps  (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        cmpeqps        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   cmpeqps        (%rax), %xmm2
@@ -262,7 +262,7 @@ xorps       (%rax), %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   mulps  (%rax), %xmm2
 # CHECK-NEXT:  1      5     1.00                        mulss  %xmm0, %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   mulss  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        orps   %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        orps   %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   orps   (%rax), %xmm2
 # CHECK-NEXT:  1      2     0.50                        pavgb  %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   pavgb  (%rax), %mm2
@@ -316,7 +316,7 @@ xorps       (%rax), %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   unpckhps       (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        unpcklps       %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   unpcklps       (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        xorps  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        xorps  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   xorps  (%rax), %xmm2
 
 # CHECK:      Resources:
@@ -346,7 +346,7 @@ xorps       (%rax), %xmm2
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 97.00  97.00   -      -      -     15.00   -     18.00  87.00  87.00  14.50  14.50  2.00   25.00  68.50  43.50  7.50   7.50    -     84.00  84.00   -     26.00
+# CHECK-NEXT: 97.00  97.00   -      -      -     15.00   -     18.00  79.00  79.00  18.50  18.50  2.00   25.00  58.50  33.50  17.50  17.50   -     84.00  84.00   -     26.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
@@ -354,10 +354,10 @@ xorps       (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -     1.50   1.50    -      -     addps   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     addss   %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -     1.50   1.50    -      -     addss   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     andnps  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     andnps  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     andps   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     andps   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     andnps  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     andnps  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     andps   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     andps   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     cmpeqps %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -     1.50   1.50    -      -     cmpeqps (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     cmpeqss %xmm0, %xmm2
@@ -418,23 +418,23 @@ xorps       (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     mulps   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -      -     mulss   %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     mulss   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     orps    %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     orps    (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pavgb   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pavgb   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pavgw   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pavgw   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     orps    %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     orps    (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pavgb   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pavgb   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pavgw   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pavgw   (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     1.50   1.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     pextrw  $1, %mm0, %ecx
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pinsrw  $1, %eax, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     2.00   2.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pinsrw  $1, (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pmaxsw  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pmaxsw  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pmaxub  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pmaxub  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pminsw  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pminsw  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pminub  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pminub  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pmaxsw  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pmaxsw  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pmaxub  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pmaxub  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pminsw  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pminsw  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pminub  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pminub  (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     pmovmskb        %mm0, %ecx
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     pmulhuw %mm0, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     pmulhuw (%rax), %mm2
@@ -472,5 +472,5 @@ xorps       (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     unpckhps        (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     unpcklps        %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     unpcklps        (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     xorps   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     xorps   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     xorps   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     xorps   (%rax), %xmm2
index 391e39c..e32afe7 100644 (file)
@@ -411,9 +411,9 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   addpd  (%rax), %xmm2
 # CHECK-NEXT:  1      5     1.00                        addsd  %xmm0, %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   addsd  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        andnpd %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        andnpd %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   andnpd (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        andpd  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        andpd  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   andpd  (%rax), %xmm2
 # CHECK-NEXT:  1      5     1.00    *      *      U     clflush        (%rax)
 # CHECK-NEXT:  1      2     1.00                        cmpeqpd        %xmm0, %xmm2
@@ -498,7 +498,7 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT:  1      1     1.00           *            movntiq        %rax, (%rax)
 # CHECK-NEXT:  1      2     1.00           *            movntdq        %xmm0, (%rax)
 # CHECK-NEXT:  1      3     1.00           *            movntpd        %xmm0, (%rax)
-# CHECK-NEXT:  1      2     1.00                        movq   %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        movq   %xmm0, %xmm2
 # CHECK-NEXT:  2      11    1.00                        movq   %rax, %xmm2
 # CHECK-NEXT:  1      5     1.50    *                   movq   (%rax), %xmm2
 # CHECK-NEXT:  1      11    1.00                        movq   %xmm0, %rcx
@@ -514,7 +514,7 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   mulpd  (%rax), %xmm2
 # CHECK-NEXT:  1      5     1.00                        mulsd  %xmm0, %xmm2
 # CHECK-NEXT:  1      10    1.50    *                   mulsd  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        orpd   %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        orpd   %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   orpd   (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        packssdw       %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   packssdw       (%rax), %xmm2
@@ -522,56 +522,56 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   packsswb       (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        packuswb       %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   packuswb       (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        paddb  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        paddb  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   paddb  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        paddd  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        paddd  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   paddd  (%rax), %xmm2
 # CHECK-NEXT:  1      2     0.50                        paddq  %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   paddq  (%rax), %mm2
-# CHECK-NEXT:  1      2     1.00                        paddq  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        paddq  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   paddq  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        paddsb %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        paddsb %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   paddsb (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        paddsw %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        paddsw %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   paddsw (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        paddusb        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        paddusb        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   paddusb        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        paddusw        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        paddusw        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   paddusw        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        paddw  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        paddw  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   paddw  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pand   %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pand   %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pand   (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pandn  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pandn  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pandn  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pavgb  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pavgb  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pavgb  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pavgw  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pavgw  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pavgw  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpeqb        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpeqb        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pcmpeqb        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpeqd        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpeqd        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pcmpeqd        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpeqw        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpeqw        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pcmpeqw        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpgtb        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpgtb        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pcmpgtb        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpgtd        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpgtd        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pcmpgtd        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpgtw        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpgtw        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pcmpgtw        (%rax), %xmm2
 # CHECK-NEXT:  2      12    1.50                        pextrw $1, %xmm0, %ecx
 # CHECK-NEXT:  2      12    1.50                        pinsrw $1, %eax, %xmm0
 # CHECK-NEXT:  2      6     2.00    *                   pinsrw $1, (%rax), %xmm0
 # CHECK-NEXT:  1      4     1.00                        pmaddwd        %xmm0, %xmm2
 # CHECK-NEXT:  1      9     1.50    *                   pmaddwd        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pmaxsw %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pmaxsw %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pmaxsw (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pmaxub %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pmaxub %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pmaxub (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pminsw %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pminsw %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pminsw (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pminub %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pminub %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pminub (%rax), %xmm2
 # CHECK-NEXT:  2      12    1.00                        pmovmskb       %xmm0, %ecx
 # CHECK-NEXT:  1      4     1.00                        pmulhuw        %xmm0, %xmm2
@@ -584,7 +584,7 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT:  1      9     1.50    *                   pmuludq        (%rax), %mm2
 # CHECK-NEXT:  1      4     1.00                        pmuludq        %xmm0, %xmm2
 # CHECK-NEXT:  1      9     1.50    *                   pmuludq        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        por    %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        por    %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   por    (%rax), %xmm2
 # CHECK-NEXT:  2      4     1.00                        psadbw %xmm0, %xmm2
 # CHECK-NEXT:  2      9     1.50    *                   psadbw (%rax), %xmm2
@@ -620,23 +620,23 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        psrlw  $1, %xmm2
 # CHECK-NEXT:  1      3     1.00                        psrlw  %xmm0, %xmm2
 # CHECK-NEXT:  1      8     1.50    *                   psrlw  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        psubb  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubb  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psubb  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        psubd  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubd  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psubd  (%rax), %xmm2
 # CHECK-NEXT:  1      2     0.50                        psubq  %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   psubq  (%rax), %mm2
-# CHECK-NEXT:  1      2     1.00                        psubq  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubq  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psubq  (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        psubsb %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubsb %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psubsb (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        psubsw %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubsw %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psubsw (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        psubusb        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubusb        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psubusb        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        psubusw        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubusw        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psubusw        (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        psubw  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubw  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psubw  (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        punpckhbw      %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   punpckhbw      (%rax), %xmm2
@@ -654,7 +654,7 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   punpcklqdq     (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        punpcklwd      %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   punpcklwd      (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pxor   %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pxor   %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pxor   (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        shufpd $1, %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   shufpd $1, (%rax), %xmm2
@@ -672,7 +672,7 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   unpckhpd       (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        unpcklpd       %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   unpcklpd       (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        xorpd  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        xorpd  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   xorpd  (%rax), %xmm2
 
 # CHECK:      Resources:
@@ -702,7 +702,7 @@ xorpd       (%rax), %xmm2
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 184.50 184.50  -      -      -     17.00   -     42.00  83.00  83.00  135.50 135.50 12.00  50.00  158.50 93.50  15.00  15.00   -     176.50 176.50  -     16.00
+# CHECK-NEXT: 184.50 184.50  -      -      -     17.00   -     42.00  75.00  75.00  83.00  83.00  12.00  50.00  108.00 67.00  53.50  53.50  24.00  176.50 176.50  -     16.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
@@ -710,10 +710,10 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -     1.50   1.50    -      -     addpd   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     addsd   %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -     1.50   1.50    -      -     addsd   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     andnpd  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     andnpd  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     andpd   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     andpd   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     andnpd  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     andnpd  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     andpd   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     andpd   (%rax), %xmm2
 # CHECK-NEXT: 1.00   1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     clflush (%rax)
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     cmpeqpd %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -     1.50   1.50    -      -     cmpeqpd (%rax), %xmm2
@@ -797,7 +797,7 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00   movntiq %rax, (%rax)
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -     1.00   movntdq %xmm0, (%rax)
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -     1.00   movntpd %xmm0, (%rax)
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     movq    %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     movq    %xmm0, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     movq    %rax, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     movq    (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     movq    %xmm0, %rcx
@@ -813,65 +813,65 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     mulpd   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -      -     mulsd   %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     0.50   0.50    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     mulsd   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     orpd    %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     orpd    (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     orpd    %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     orpd    (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     packssdw        %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     packssdw        (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     packsswb        %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     packsswb        (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     packuswb        %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     packuswb        (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     paddb   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddb   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     paddd   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddd   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     paddq   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddq   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     paddq   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddq   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     paddsb  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddsb  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     paddsw  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddsw  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     paddusb %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddusb (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     paddusw %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddusw (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     paddw   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     paddw   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pand    %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pand    (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pandn   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pandn   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pavgb   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pavgb   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pavgw   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pavgw   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqb %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpeqb (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqd %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpeqd (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqw %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpeqw (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpgtb %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpgtb (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpgtd %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpgtd (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpgtw %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpgtw (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddb   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddb   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddd   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddd   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddq   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddq   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddq   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddq   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddsb  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddsb  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddsw  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddsw  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddusb %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddusb (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddusw %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddusw (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     paddw   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     paddw   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pand    %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pand    (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pandn   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pandn   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pavgb   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pavgb   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pavgw   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pavgw   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqb %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpeqb (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqd %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpeqd (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqw %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpeqw (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpgtb %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpgtb (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpgtd %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpgtd (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpgtw %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpgtw (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     1.50   1.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     pextrw  $1, %xmm0, %ecx
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pinsrw  $1, %eax, %xmm0
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     2.00   2.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pinsrw  $1, (%rax), %xmm0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     pmaddwd %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     pmaddwd (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pmaxsw  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pmaxsw  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pmaxub  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pmaxub  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pminsw  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pminsw  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pminub  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pminub  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pmaxsw  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pmaxsw  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pmaxub  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pmaxub  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pminsw  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pminsw  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pminub  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pminub  (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     0.50   0.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     pmovmskb        %xmm0, %ecx
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     pmulhuw %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     pmulhuw (%rax), %xmm2
@@ -883,8 +883,8 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     pmuludq (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -      -      -      -      -     pmuludq %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -     1.00    -     1.00    -      -      -      -     1.50   1.50    -      -     pmuludq (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     por     %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     por     (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     por     %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     por     (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psadbw  %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psadbw  (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pshufd  $1, %xmm0, %xmm2
@@ -893,50 +893,50 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pshufhw $1, (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pshuflw $1, %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pshuflw $1, (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pslld   $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pslld   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pslld   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     pslld   $1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     pslld   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     pslld   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pslldq  $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psllq   $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psllq   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psllq   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psllw   $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psllw   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psllw   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrad   $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrad   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psrad   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psraw   $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psraw   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psraw   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrld   $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrld   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psrld   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psllq   $1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psllq   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psllq   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psllw   $1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psllw   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psllw   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrad   $1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrad   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psrad   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psraw   $1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psraw   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psraw   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrld   $1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrld   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psrld   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrldq  $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrlq   $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrlq   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psrlq   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrlw   $1, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psrlw   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psrlw   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psubb   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubb   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psubd   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubd   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psubq   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubq   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psubq   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubq   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psubsb  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubsb  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psubsw  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubsw  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psubusb %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubusb (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psubusw %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubusw (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psubw   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psubw   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrlq   $1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrlq   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psrlq   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrlw   $1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     psrlw   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     psrlw   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubb   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubb   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubd   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubd   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubq   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubq   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubq   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubq   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubsb  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubsb  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubsw  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubsw  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubusb %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubusb (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubusw %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubusw (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psubw   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psubw   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     punpckhbw       %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     punpckhbw       (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     punpckhdq       %xmm0, %xmm2
@@ -953,8 +953,8 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     punpcklqdq      (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     punpcklwd       %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     punpcklwd       (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pxor    %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pxor    (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pxor    %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pxor    (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     shufpd  $1, %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     shufpd  $1, (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     4.50   4.50    -      -      -      -      -     1.00    -      -      -      -      -      -      -     sqrtpd  %xmm0, %xmm2
@@ -971,5 +971,5 @@ xorpd       (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     unpckhpd        (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     unpcklpd        %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     unpcklpd        (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     xorpd   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     xorpd   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     xorpd   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     xorpd   (%rax), %xmm2
index 3be7229..45d09c8 100644 (file)
@@ -180,7 +180,7 @@ roundss     $1, (%rax), %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pblendvb       %xmm0, (%rax), %xmm2
 # CHECK-NEXT:  1      2     0.50                        pblendw        $11, %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pblendw        $11, (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpeqq        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpeqq        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pcmpeqq        (%rax), %xmm2
 # CHECK-NEXT:  2      12    1.50                        pextrb $1, %xmm0, %ecx
 # CHECK-NEXT:  2      13    2.00           *            pextrb $1, %xmm0, (%rax)
@@ -197,21 +197,21 @@ roundss     $1, (%rax), %xmm2
 # CHECK-NEXT:  2      6     2.00    *                   pinsrd $1, (%rax), %xmm1
 # CHECK-NEXT:  2      12    1.50                        pinsrq $1, %rax, %xmm1
 # CHECK-NEXT:  2      6     2.00    *                   pinsrq $1, (%rax), %xmm1
-# CHECK-NEXT:  1      2     1.00                        pmaxsb %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pmaxsb %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pmaxsb (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pmaxsd %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pmaxsd %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pmaxsd (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pmaxud %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pmaxud %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pmaxud (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pmaxuw %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pmaxuw %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pmaxuw (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pminsb %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pminsb %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pminsb (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pminsd %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pminsd %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pminsd (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pminud %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pminud %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pminud (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pminuw %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pminuw %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pminuw (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        pmovsxbd       %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pmovsxbd       (%rax), %xmm2
@@ -279,7 +279,7 @@ roundss     $1, (%rax), %xmm2
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 68.50  68.50   -      -      -     6.00    -      -     45.00  45.00  61.50  61.50  14.00  13.00  49.50  55.50   -      -      -     66.00  66.00   -     5.00
+# CHECK-NEXT: 68.50  68.50   -      -      -     6.00    -      -     45.00  45.00  52.50  52.50  14.00  13.00  40.50  46.50  9.00   9.00    -     66.00  66.00   -     5.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
@@ -308,8 +308,8 @@ roundss     $1, (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pblendvb        %xmm0, (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pblendw $11, %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pblendw $11, (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpeqq %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpeqq (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpeqq %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpeqq (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     1.50   1.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     pextrb  $1, %xmm0, %ecx
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -     1.00    -     2.00    -      -      -      -      -      -     1.00   pextrb  $1, %xmm0, (%rax)
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     1.50   1.50    -      -      -      -     1.00    -      -      -      -      -      -      -      -     pextrd  $1, %xmm0, %ecx
@@ -325,22 +325,22 @@ roundss     $1, (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     2.00   2.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pinsrd  $1, (%rax), %xmm1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pinsrq  $1, %rax, %xmm1
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     2.00   2.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pinsrq  $1, (%rax), %xmm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pmaxsb  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pmaxsb  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pmaxsd  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pmaxsd  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pmaxud  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pmaxud  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pmaxuw  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pmaxuw  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pminsb  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pminsb  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pminsd  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pminsd  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pminud  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pminud  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pminuw  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pminuw  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pmaxsb  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pmaxsb  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pmaxsd  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pmaxsd  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pmaxud  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pmaxud  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pmaxuw  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pmaxuw  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pminsb  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pminsb  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pminsd  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pminsd  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pminud  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pminud  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pminuw  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pminuw  (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pmovsxbd        %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pmovsxbd        (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pmovsxbq        %xmm0, %xmm2
index 5053c9a..6ab43e8 100644 (file)
@@ -58,7 +58,7 @@ pcmpgtq     (%rax), %xmm2
 # CHECK-NEXT:  8      16    3.00    *                   pcmpistri      $1, (%rax), %xmm2
 # CHECK-NEXT:  7      7     4.00                        pcmpistrm      $1, %xmm0, %xmm2
 # CHECK-NEXT:  9      12    4.00    *                   pcmpistrm      $1, (%rax), %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpgtq        %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpgtq        %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pcmpgtq        (%rax), %xmm2
 
 # CHECK:      Resources:
@@ -88,7 +88,7 @@ pcmpgtq     (%rax), %xmm2
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 55.00  55.00   -      -      -     41.50  33.50   -     16.00  16.00  22.00  22.00   -      -     1.00   9.00    -      -      -     35.00  35.00   -     40.00
+# CHECK-NEXT: 55.00  55.00   -      -      -     41.50  33.50   -     16.00  16.00  21.00  21.00   -      -      -     8.00   1.00   1.00    -     35.00  35.00   -     40.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
@@ -110,5 +110,5 @@ pcmpgtq     (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -     1.00    -      -     3.00   3.00    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     pcmpistri       $1, (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     4.00   4.00    -      -      -      -      -     1.00    -      -      -      -      -      -      -     pcmpistrm       $1, %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -     1.00    -      -     4.00   4.00    -      -      -      -      -     1.00    -      -      -     1.50   1.50    -      -     pcmpistrm       $1, (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pcmpgtq %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pcmpgtq (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pcmpgtq %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pcmpgtq (%rax), %xmm2
index 5dcebb9..8429587 100644 (file)
@@ -108,15 +108,15 @@ psignw      (%rax), %xmm2
 # CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
 # CHECK-NEXT:  1      2     0.50                        pabsb  %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   pabsb  (%rax), %mm2
-# CHECK-NEXT:  1      2     1.00                        pabsb  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pabsb  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pabsb  (%rax), %xmm2
 # CHECK-NEXT:  1      2     0.50                        pabsd  %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   pabsd  (%rax), %mm2
-# CHECK-NEXT:  1      2     1.00                        pabsd  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pabsd  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pabsd  (%rax), %xmm2
 # CHECK-NEXT:  1      2     0.50                        pabsw  %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   pabsw  (%rax), %mm2
-# CHECK-NEXT:  1      2     1.00                        pabsw  %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pabsw  %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   pabsw  (%rax), %xmm2
 # CHECK-NEXT:  1      2     1.00                        palignr        $1, %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   palignr        $1, (%rax), %mm2
@@ -160,15 +160,15 @@ psignw      (%rax), %xmm2
 # CHECK-NEXT:  1      8     1.50    *                   pshufb (%rax), %xmm2
 # CHECK-NEXT:  1      2     0.50                        psignb %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   psignb (%rax), %mm2
-# CHECK-NEXT:  1      2     1.00                        psignb %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psignb %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psignb (%rax), %xmm2
 # CHECK-NEXT:  1      2     0.50                        psignd %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   psignd (%rax), %mm2
-# CHECK-NEXT:  1      2     1.00                        psignd %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psignd %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psignd (%rax), %xmm2
 # CHECK-NEXT:  1      2     0.50                        psignw %mm0, %mm2
 # CHECK-NEXT:  1      7     1.50    *                   psignw (%rax), %mm2
-# CHECK-NEXT:  1      2     1.00                        psignw %xmm0, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psignw %xmm0, %xmm2
 # CHECK-NEXT:  1      7     1.50    *                   psignw (%rax), %xmm2
 
 # CHECK:      Resources:
@@ -198,22 +198,22 @@ psignw      (%rax), %xmm2
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 48.00  48.00   -      -      -      -      -      -      -      -     75.00  75.00  8.00    -     36.00  28.00   -      -      -     48.00  48.00   -      -
+# CHECK-NEXT: 48.00  48.00   -      -      -      -      -      -      -      -     69.00  69.00  8.00    -     24.00  16.00  12.00  12.00   -     48.00  48.00   -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pabsb   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pabsb   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pabsb   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pabsb   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pabsd   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pabsd   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pabsd   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pabsd   (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pabsw   %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pabsw   (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     pabsw   %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pabsw   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pabsb   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pabsb   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pabsb   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pabsb   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pabsd   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pabsd   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pabsd   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pabsd   (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pabsw   %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pabsw   (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     pabsw   %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     pabsw   (%rax), %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     palignr $1, %mm0, %mm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     palignr $1, (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     palignr $1, %xmm0, %xmm2
@@ -254,15 +254,15 @@ psignw      (%rax), %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pshufb  (%rax), %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -      -      -      -      -     pshufb  %xmm0, %xmm2
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     pshufb  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psignb  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psignb  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psignb  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psignb  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psignd  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psignd  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psignd  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psignd  (%rax), %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -      -      -      -      -     psignw  %mm0, %mm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psignw  (%rax), %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     psignw  %xmm0, %xmm2
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     psignw  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psignb  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psignb  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psignb  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psignb  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psignd  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psignd  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psignd  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psignd  (%rax), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psignw  %mm0, %mm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psignw  (%rax), %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     psignw  %xmm0, %xmm2
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     psignw  (%rax), %xmm2
index b465084..8830da5 100644 (file)
@@ -239,21 +239,21 @@ vpshlw %xmm0, (%rax), %xmm3
 # CHECK-NEXT:  2      2     2.00                        vpcmov %ymm0, %ymm1, %ymm2, %ymm3
 # CHECK-NEXT:  2      7     2.00    *                   vpcmov (%rax), %ymm0, %ymm1, %ymm3
 # CHECK-NEXT:  2      7     2.00    *                   vpcmov %ymm0, (%rax), %ymm1, %ymm3
-# CHECK-NEXT:  1      2     1.00                        vpcomltb       %xmm0, %xmm1, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcomltb       %xmm0, %xmm1, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vpcomltb       (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcomltd       %xmm0, %xmm1, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcomltd       %xmm0, %xmm1, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vpcomltd       (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcomltq       %xmm0, %xmm1, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcomltq       %xmm0, %xmm1, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vpcomltq       (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcomltub      %xmm0, %xmm1, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcomltub      %xmm0, %xmm1, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vpcomltub      (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcomltud      %xmm0, %xmm1, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcomltud      %xmm0, %xmm1, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vpcomltud      (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcomltuq      %xmm0, %xmm1, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcomltuq      %xmm0, %xmm1, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vpcomltuq      (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcomltuw      %xmm0, %xmm1, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcomltuw      %xmm0, %xmm1, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vpcomltuw      (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcomltw       %xmm0, %xmm1, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcomltw       %xmm0, %xmm1, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vpcomltw       (%rax), %xmm0, %xmm3
 # CHECK-NEXT:  1      3     1.00                        vpermil2pd     $0, %xmm0, %xmm1, %xmm2, %xmm3
 # CHECK-NEXT:  1      8     1.50    *                   vpermil2pd     $0, (%rax), %xmm0, %xmm1, %xmm3
@@ -267,35 +267,35 @@ vpshlw %xmm0, (%rax), %xmm3
 # CHECK-NEXT:  2      3     2.00                        vpermil2ps     $0, %ymm0, %ymm1, %ymm2, %ymm3
 # CHECK-NEXT:  2      8     2.00    *                   vpermil2ps     $0, (%rax), %ymm0, %ymm1, %ymm3
 # CHECK-NEXT:  2      8     2.00    *                   vpermil2ps     $0, %ymm0, (%rax), %ymm1, %ymm3
-# CHECK-NEXT:  1      2     1.00                        vphaddbd       %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphaddbd       %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphaddbd       (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphaddbq       %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphaddbq       %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphaddbq       (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphaddbw       %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphaddbw       %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphaddbw       (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphadddq       %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphadddq       %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphadddq       (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphaddubd      %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphaddubd      %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphaddubd      (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphaddubq      %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphaddubq      %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphaddubq      (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphaddubw      %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphaddubw      %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphaddubw      (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphaddudq      %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphaddudq      %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphaddudq      (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphadduwd      %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphadduwd      %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphadduwd      (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphadduwq      %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphadduwq      %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphadduwq      (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphaddwd       %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphaddwd       %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphaddwd       (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphaddwq       %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphaddwq       %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphaddwq       (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphsubbw       %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphsubbw       %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphsubbw       (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphsubdq       %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphsubdq       %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphsubdq       (%rax), %xmm3
-# CHECK-NEXT:  1      2     1.00                        vphsubwd       %xmm0, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vphsubwd       %xmm0, %xmm3
 # CHECK-NEXT:  1      7     1.50    *                   vphsubwd       (%rax), %xmm3
 # CHECK-NEXT:  1      5     2.00                        vpmacsdd       %xmm0, %xmm1, %xmm2, %xmm3
 # CHECK-NEXT:  1      10    2.00    *                   vpmacsdd       %xmm0, (%rax), %xmm1, %xmm3
@@ -396,7 +396,7 @@ vpshlw %xmm0, (%rax), %xmm3
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 115.50 115.50  -      -      -      -      -      -     18.00  18.00  109.50 109.50 32.00  12.00  94.50  108.50  -      -      -     115.50 115.50  -      -
+# CHECK-NEXT: 115.50 115.50  -      -      -      -      -      -     18.00  18.00  42.50  42.50  32.00  12.00  49.50  107.50 23.00  23.00  44.00  115.50 115.50  -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
@@ -418,22 +418,22 @@ vpshlw %xmm0, (%rax), %xmm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00   2.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcmov  %ymm0, %ymm1, %ymm2, %ymm3
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     2.00   2.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmov  (%rax), %ymm0, %ymm1, %ymm3
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     2.00   2.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcmov  %ymm0, (%rax), %ymm1, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcomltb        %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcomltb        (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcomltd        %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcomltd        (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcomltq        %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcomltq        (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcomltub       %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcomltub       (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcomltud       %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcomltud       (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcomltuq       %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcomltuq       (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcomltuw       %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcomltuw       (%rax), %xmm0, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpcomltw        %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpcomltw        (%rax), %xmm0, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcomltb        %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcomltb        (%rax), %xmm0, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcomltd        %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcomltd        (%rax), %xmm0, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcomltq        %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcomltq        (%rax), %xmm0, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcomltub       %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcomltub       (%rax), %xmm0, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcomltud       %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcomltud       (%rax), %xmm0, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcomltuq       %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcomltuq       (%rax), %xmm0, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcomltuw       %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcomltuw       (%rax), %xmm0, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vpcomltw        %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vpcomltw        (%rax), %xmm0, %xmm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -      -      -      -      -     vpermil2pd      $0, %xmm0, %xmm1, %xmm2, %xmm3
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpermil2pd      $0, (%rax), %xmm0, %xmm1, %xmm3
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpermil2pd      $0, %xmm0, (%rax), %xmm1, %xmm3
@@ -446,36 +446,36 @@ vpshlw %xmm0, (%rax), %xmm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00   2.00    -      -      -      -     1.00   1.00    -      -      -      -      -      -      -     vpermil2ps      $0, %ymm0, %ymm1, %ymm2, %ymm3
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     2.00   2.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vpermil2ps      $0, (%rax), %ymm0, %ymm1, %ymm3
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -     2.00   2.00    -      -      -      -     1.00   1.00    -      -      -     1.50   1.50    -      -     vpermil2ps      $0, %ymm0, (%rax), %ymm1, %ymm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphaddbd        %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphaddbd        (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphaddbq        %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphaddbq        (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphaddbw        %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphaddbw        (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphadddq        %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphadddq        (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphaddubd       %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphaddubd       (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphaddubq       %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphaddubq       (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphaddubw       %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphaddubw       (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphaddudq       %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphaddudq       (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphadduwd       %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphadduwd       (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphadduwq       %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphadduwq       (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphaddwd        %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphaddwd        (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphaddwq        %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphaddwq        (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphsubbw        %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphsubbw        (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphsubdq        %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphsubdq        (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vphsubwd        %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vphsubwd        (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphaddbd        %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphaddbd        (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphaddbq        %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphaddbq        (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphaddbw        %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphaddbw        (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphadddq        %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphadddq        (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphaddubd       %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphaddubd       (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphaddubq       %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphaddubq       (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphaddubw       %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphaddubw       (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphaddudq       %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphaddudq       (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphadduwd       %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphadduwd       (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphadduwq       %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphadduwq       (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphaddwd        %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphaddwd        (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphaddwq        %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphaddwq        (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphsubbw        %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphsubbw        (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphsubdq        %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphsubdq        (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -      -      -      -      -     vphsubwd        %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50    -      -      -      -     0.50   0.50    -     1.50   1.50    -      -     vphsubwd        (%rax), %xmm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50   2.00    -     2.50   0.50    -      -      -      -      -      -      -     vpmacsdd        %xmm0, %xmm1, %xmm2, %xmm3
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     0.50   0.50   2.00    -     2.50   0.50    -      -      -     1.50   1.50    -      -     vpmacsdd        %xmm0, (%rax), %xmm1, %xmm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     0.50   0.50   1.00    -     1.00    -      -      -      -      -      -      -      -     vpmacsdqh       %xmm0, %xmm1, %xmm2, %xmm3
@@ -503,47 +503,47 @@ vpshlw %xmm0, (%rax), %xmm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -      -      -      -      -     vpperm  %xmm0, %xmm1, %xmm2, %xmm3
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpperm  (%rax), %xmm0, %xmm1, %xmm3
 # CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.50   1.50    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpperm  %xmm0, (%rax), %xmm1, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vprotb  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotb  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotb  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vprotb  $0, %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotb  $0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vprotd  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotd  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotd  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vprotd  $0, %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotd  $0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vprotq  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotq  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotq  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vprotq  $0, %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotq  $0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vprotw  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotw  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotw  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vprotw  $0, %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vprotw  $0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshab  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshab  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshab  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshad  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshad  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshad  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshaq  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshaq  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshaq  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshaw  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshaw  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshaw  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshlb  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshlb  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshlb  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshld  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshld  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshld  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshlq  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshlq  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshlq  %xmm0, (%rax), %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -      -      -      -      -     vpshlw  %xmm0, %xmm1, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshlw  (%rax), %xmm0, %xmm3
-# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -     1.00   1.00    -      -     0.50   0.50    -      -      -     1.50   1.50    -      -     vpshlw  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vprotb  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotb  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotb  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vprotb  $0, %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotb  $0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vprotd  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotd  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotd  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vprotd  $0, %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotd  $0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vprotq  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotq  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotq  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vprotq  $0, %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotq  $0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vprotw  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotw  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotw  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vprotw  $0, %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vprotw  $0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpshab  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshab  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshab  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpshad  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshad  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshad  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpshaq  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshaq  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshaq  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpshaw  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshaw  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshaw  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpshlb  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshlb  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshlb  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpshld  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshld  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshld  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpshlq  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshlq  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshlq  %xmm0, (%rax), %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00    -      -      -      -     vpshlw  %xmm0, %xmm1, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshlw  (%rax), %xmm0, %xmm3
+# CHECK-NEXT: 1.50   1.50    -      -      -      -      -      -      -      -      -      -      -      -      -     1.00    -      -     1.00   1.50   1.50    -      -     vpshlw  %xmm0, (%rax), %xmm3
index ff74bc3..ccedadf 100644 (file)
@@ -12,7 +12,7 @@ vandps (%rdi), %ymm1, %ymm2
 # CHECK:      Dispatch Width:    4
 # CHECK-NEXT: uOps Per Cycle:    0.40
 # CHECK-NEXT: IPC:               0.20
-# CHECK-NEXT: Block RThroughput: 2.0
+# CHECK-NEXT: Block RThroughput: 1.5
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
index 5338c3c..560ea24 100644 (file)
@@ -40,13 +40,13 @@ vaddps  %ymm1, %ymm1, %ymm0
 
 # CHECK:      Iterations:        100
 # CHECK-NEXT: Instructions:      300
-# CHECK-NEXT: Total Cycles:      354
+# CHECK-NEXT: Total Cycles:      255
 # CHECK-NEXT: Total uOps:        600
 
 # CHECK:      Dispatch Width:    4
-# CHECK-NEXT: uOps Per Cycle:    1.69
-# CHECK-NEXT: IPC:               0.85
-# CHECK-NEXT: Block RThroughput: 3.5
+# CHECK-NEXT: uOps Per Cycle:    2.35
+# CHECK-NEXT: IPC:               1.18
+# CHECK-NEXT: Block RThroughput: 2.5
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -88,27 +88,27 @@ vaddps  %ymm1, %ymm1, %ymm0
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     3.51   3.49    -      -      -      -     2.00   3.00    -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.48   2.52   1.00   1.00    -      -     1.02   1.98   1.00   1.00    -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.98   1.02    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vaddps  %ymm0, %ymm0, %ymm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.98   1.02    -      -      -      -      -      -      -     vxorps  %ymm1, %ymm1, %ymm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.53   1.47    -      -      -      -     0.02   1.98    -      -      -      -      -      -      -     vblendps        $2, %ymm1, %ymm2, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vxorps  %ymm1, %ymm1, %ymm1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.02   1.98    -      -      -      -      -      -      -     vblendps        $2, %ymm1, %ymm2, %ymm3
 
 # CHECK:      Timeline view:
-# CHECK-NEXT:                     0123
+# CHECK-NEXT:                     0
 # CHECK-NEXT: Index     0123456789
 
-# CHECK:      [0,0]     DeeeeeER  .  .   vaddps        %ymm0, %ymm0, %ymm1
-# CHECK-NEXT: [0,1]     DeeE---R  .  .   vxorps        %ymm1, %ymm1, %ymm1
-# CHECK-NEXT: [0,2]     .D=eeE-R  .  .   vblendps      $2, %ymm1, %ymm2, %ymm3
-# CHECK-NEXT: [1,0]     .D=eeeeeER.  .   vaddps        %ymm0, %ymm0, %ymm1
-# CHECK-NEXT: [1,1]     . D==eeE-R.  .   vxorps        %ymm1, %ymm1, %ymm1
-# CHECK-NEXT: [1,2]     . D====eeER  .   vblendps      $2, %ymm1, %ymm2, %ymm3
-# CHECK-NEXT: [2,0]     .  D==eeeeeER.   vaddps        %ymm0, %ymm0, %ymm1
-# CHECK-NEXT: [2,1]     .  D====eeE-R.   vxorps        %ymm1, %ymm1, %ymm1
-# CHECK-NEXT: [2,2]     .   D=====eeER   vblendps      $2, %ymm1, %ymm2, %ymm3
+# CHECK:      [0,0]     DeeeeeER  .   vaddps   %ymm0, %ymm0, %ymm1
+# CHECK-NEXT: [0,1]     DeeE---R  .   vxorps   %ymm1, %ymm1, %ymm1
+# CHECK-NEXT: [0,2]     .D=eeE-R  .   vblendps $2, %ymm1, %ymm2, %ymm3
+# CHECK-NEXT: [1,0]     .DeeeeeER .   vaddps   %ymm0, %ymm0, %ymm1
+# CHECK-NEXT: [1,1]     . DeeE--R .   vxorps   %ymm1, %ymm1, %ymm1
+# CHECK-NEXT: [1,2]     . D===eeER.   vblendps $2, %ymm1, %ymm2, %ymm3
+# CHECK-NEXT: [2,0]     .  DeeeeeER   vaddps   %ymm0, %ymm0, %ymm1
+# CHECK-NEXT: [2,1]     .  DeeE---R   vxorps   %ymm1, %ymm1, %ymm1
+# CHECK-NEXT: [2,2]     .   D=eeE-R   vblendps $2, %ymm1, %ymm2, %ymm3
 
 # CHECK:      Average Wait times (based on the timeline view):
 # CHECK-NEXT: [0]: Executions
@@ -117,22 +117,22 @@ vaddps  %ymm1, %ymm1, %ymm0
 # CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
 
 # CHECK:            [0]    [1]    [2]    [3]
-# CHECK-NEXT: 0.     3     2.0    2.0    0.0       vaddps      %ymm0, %ymm0, %ymm1
-# CHECK-NEXT: 1.     3     3.0    3.0    1.7       vxorps      %ymm1, %ymm1, %ymm1
-# CHECK-NEXT: 2.     3     4.3    0.0    0.3       vblendps    $2, %ymm1, %ymm2, %ymm3
-# CHECK-NEXT:        3     3.1    1.7    0.7       <total>
+# CHECK-NEXT: 0.     3     1.0    1.0    0.0       vaddps      %ymm0, %ymm0, %ymm1
+# CHECK-NEXT: 1.     3     1.0    1.0    2.7       vxorps      %ymm1, %ymm1, %ymm1
+# CHECK-NEXT: 2.     3     2.7    0.3    0.7       vblendps    $2, %ymm1, %ymm2, %ymm3
+# CHECK-NEXT:        3     1.6    0.8    1.1       <total>
 
 # CHECK:      [1] Code Region - ZERO-IDIOM-2
 
 # CHECK:      Iterations:        100
 # CHECK-NEXT: Instructions:      300
-# CHECK-NEXT: Total Cycles:      354
+# CHECK-NEXT: Total Cycles:      255
 # CHECK-NEXT: Total uOps:        600
 
 # CHECK:      Dispatch Width:    4
-# CHECK-NEXT: uOps Per Cycle:    1.69
-# CHECK-NEXT: IPC:               0.85
-# CHECK-NEXT: Block RThroughput: 3.5
+# CHECK-NEXT: uOps Per Cycle:    2.35
+# CHECK-NEXT: IPC:               1.18
+# CHECK-NEXT: Block RThroughput: 2.5
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -174,27 +174,27 @@ vaddps  %ymm1, %ymm1, %ymm0
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     3.51   3.49    -      -      -      -     2.00   3.00    -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.48   2.52   1.00   1.00    -      -     1.02   1.98   1.00   1.00    -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
 # CHECK-NEXT:  -      -      -      -      -      -      -      -     0.98   1.02    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vaddpd  %ymm0, %ymm0, %ymm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     0.98   1.02    -      -      -      -      -      -      -     vxorpd  %ymm1, %ymm1, %ymm1
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.53   1.47    -      -      -      -     0.02   1.98    -      -      -      -      -      -      -     vblendpd        $2, %ymm1, %ymm2, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vxorpd  %ymm1, %ymm1, %ymm1
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.50   1.50    -      -      -      -     0.02   1.98    -      -      -      -      -      -      -     vblendpd        $2, %ymm1, %ymm2, %ymm3
 
 # CHECK:      Timeline view:
-# CHECK-NEXT:                     0123
+# CHECK-NEXT:                     0
 # CHECK-NEXT: Index     0123456789
 
-# CHECK:      [0,0]     DeeeeeER  .  .   vaddpd        %ymm0, %ymm0, %ymm1
-# CHECK-NEXT: [0,1]     DeeE---R  .  .   vxorpd        %ymm1, %ymm1, %ymm1
-# CHECK-NEXT: [0,2]     .D=eeE-R  .  .   vblendpd      $2, %ymm1, %ymm2, %ymm3
-# CHECK-NEXT: [1,0]     .D=eeeeeER.  .   vaddpd        %ymm0, %ymm0, %ymm1
-# CHECK-NEXT: [1,1]     . D==eeE-R.  .   vxorpd        %ymm1, %ymm1, %ymm1
-# CHECK-NEXT: [1,2]     . D====eeER  .   vblendpd      $2, %ymm1, %ymm2, %ymm3
-# CHECK-NEXT: [2,0]     .  D==eeeeeER.   vaddpd        %ymm0, %ymm0, %ymm1
-# CHECK-NEXT: [2,1]     .  D====eeE-R.   vxorpd        %ymm1, %ymm1, %ymm1
-# CHECK-NEXT: [2,2]     .   D=====eeER   vblendpd      $2, %ymm1, %ymm2, %ymm3
+# CHECK:      [0,0]     DeeeeeER  .   vaddpd   %ymm0, %ymm0, %ymm1
+# CHECK-NEXT: [0,1]     DeeE---R  .   vxorpd   %ymm1, %ymm1, %ymm1
+# CHECK-NEXT: [0,2]     .D=eeE-R  .   vblendpd $2, %ymm1, %ymm2, %ymm3
+# CHECK-NEXT: [1,0]     .DeeeeeER .   vaddpd   %ymm0, %ymm0, %ymm1
+# CHECK-NEXT: [1,1]     . DeeE--R .   vxorpd   %ymm1, %ymm1, %ymm1
+# CHECK-NEXT: [1,2]     . D===eeER.   vblendpd $2, %ymm1, %ymm2, %ymm3
+# CHECK-NEXT: [2,0]     .  DeeeeeER   vaddpd   %ymm0, %ymm0, %ymm1
+# CHECK-NEXT: [2,1]     .  DeeE---R   vxorpd   %ymm1, %ymm1, %ymm1
+# CHECK-NEXT: [2,2]     .   D=eeE-R   vblendpd $2, %ymm1, %ymm2, %ymm3
 
 # CHECK:      Average Wait times (based on the timeline view):
 # CHECK-NEXT: [0]: Executions
@@ -203,22 +203,22 @@ vaddps  %ymm1, %ymm1, %ymm0
 # CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
 
 # CHECK:            [0]    [1]    [2]    [3]
-# CHECK-NEXT: 0.     3     2.0    2.0    0.0       vaddpd      %ymm0, %ymm0, %ymm1
-# CHECK-NEXT: 1.     3     3.0    3.0    1.7       vxorpd      %ymm1, %ymm1, %ymm1
-# CHECK-NEXT: 2.     3     4.3    0.0    0.3       vblendpd    $2, %ymm1, %ymm2, %ymm3
-# CHECK-NEXT:        3     3.1    1.7    0.7       <total>
+# CHECK-NEXT: 0.     3     1.0    1.0    0.0       vaddpd      %ymm0, %ymm0, %ymm1
+# CHECK-NEXT: 1.     3     1.0    1.0    2.7       vxorpd      %ymm1, %ymm1, %ymm1
+# CHECK-NEXT: 2.     3     2.7    0.3    0.7       vblendpd    $2, %ymm1, %ymm2, %ymm3
+# CHECK-NEXT:        3     1.6    0.8    1.1       <total>
 
 # CHECK:      [2] Code Region - ZERO-IDIOM-3
 
 # CHECK:      Iterations:        100
 # CHECK-NEXT: Instructions:      200
-# CHECK-NEXT: Total Cycles:      206
+# CHECK-NEXT: Total Cycles:      107
 # CHECK-NEXT: Total uOps:        400
 
 # CHECK:      Dispatch Width:    4
-# CHECK-NEXT: uOps Per Cycle:    1.94
-# CHECK-NEXT: IPC:               0.97
-# CHECK-NEXT: Block RThroughput: 2.0
+# CHECK-NEXT: uOps Per Cycle:    3.74
+# CHECK-NEXT: IPC:               1.87
+# CHECK-NEXT: Block RThroughput: 1.0
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -259,23 +259,22 @@ vaddps  %ymm1, %ymm1, %ymm0
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00   2.00    -      -      -      -     1.00   2.00    -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00   1.00   1.00    -      -     1.00    -     1.00   1.00    -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vaddps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -      -      -      -     2.00    -      -      -      -      -      -      -     vandnps %ymm2, %ymm2, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vaddps  %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vandnps %ymm2, %ymm2, %ymm3
 
 # CHECK:      Timeline view:
-# CHECK-NEXT:                     01
 # CHECK-NEXT: Index     0123456789
 
-# CHECK:      [0,0]     DeeeeeER  ..   vaddps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: [0,1]     DeeE---R  ..   vandnps %ymm2, %ymm2, %ymm3
-# CHECK-NEXT: [1,0]     .D=eeeeeER..   vaddps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: [1,1]     .D=eeE---R..   vandnps %ymm2, %ymm2, %ymm3
-# CHECK-NEXT: [2,0]     . D==eeeeeER   vaddps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: [2,1]     . D==eeE---R   vandnps %ymm2, %ymm2, %ymm3
+# CHECK:      [0,0]     DeeeeeER .   vaddps    %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: [0,1]     DeeE---R .   vandnps   %ymm2, %ymm2, %ymm3
+# CHECK-NEXT: [1,0]     .DeeeeeER.   vaddps    %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: [1,1]     .DeeE---R.   vandnps   %ymm2, %ymm2, %ymm3
+# CHECK-NEXT: [2,0]     . DeeeeeER   vaddps    %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: [2,1]     . DeeE---R   vandnps   %ymm2, %ymm2, %ymm3
 
 # CHECK:      Average Wait times (based on the timeline view):
 # CHECK-NEXT: [0]: Executions
@@ -284,21 +283,21 @@ vaddps  %ymm1, %ymm1, %ymm0
 # CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
 
 # CHECK:            [0]    [1]    [2]    [3]
-# CHECK-NEXT: 0.     3     2.0    2.0    0.0       vaddps      %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.     3     2.0    2.0    3.0       vandnps     %ymm2, %ymm2, %ymm3
-# CHECK-NEXT:        3     2.0    2.0    1.5       <total>
+# CHECK-NEXT: 0.     3     1.0    1.0    0.0       vaddps      %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.     3     1.0    1.0    3.0       vandnps     %ymm2, %ymm2, %ymm3
+# CHECK-NEXT:        3     1.0    1.0    1.5       <total>
 
 # CHECK:      [3] Code Region - ZERO-IDIOM-4
 
 # CHECK:      Iterations:        100
 # CHECK-NEXT: Instructions:      200
-# CHECK-NEXT: Total Cycles:      206
+# CHECK-NEXT: Total Cycles:      107
 # CHECK-NEXT: Total uOps:        400
 
 # CHECK:      Dispatch Width:    4
-# CHECK-NEXT: uOps Per Cycle:    1.94
-# CHECK-NEXT: IPC:               0.97
-# CHECK-NEXT: Block RThroughput: 2.0
+# CHECK-NEXT: uOps Per Cycle:    3.74
+# CHECK-NEXT: IPC:               1.87
+# CHECK-NEXT: Block RThroughput: 1.0
 
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
@@ -339,23 +338,22 @@ vaddps  %ymm1, %ymm1, %ymm0
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00   2.00    -      -      -      -     1.00   2.00    -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00   1.00   1.00    -      -     1.00    -     1.00   1.00    -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vaddps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -     2.00    -      -      -      -      -      -     2.00    -      -      -      -      -      -      -     vandnps %ymm2, %ymm2, %ymm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00    -      -      -      -      -      -      -      -     vaddps  %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00   1.00    -      -      -      -     1.00   1.00    -      -      -      -      -     vandnps %ymm2, %ymm2, %ymm3
 
 # CHECK:      Timeline view:
-# CHECK-NEXT:                     01
 # CHECK-NEXT: Index     0123456789
 
-# CHECK:      [0,0]     DeeeeeER  ..   vaddps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: [0,1]     DeeE---R  ..   vandnps %ymm2, %ymm2, %ymm3
-# CHECK-NEXT: [1,0]     .D=eeeeeER..   vaddps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: [1,1]     .D=eeE---R..   vandnps %ymm2, %ymm2, %ymm3
-# CHECK-NEXT: [2,0]     . D==eeeeeER   vaddps  %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: [2,1]     . D==eeE---R   vandnps %ymm2, %ymm2, %ymm3
+# CHECK:      [0,0]     DeeeeeER .   vaddps    %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: [0,1]     DeeE---R .   vandnps   %ymm2, %ymm2, %ymm3
+# CHECK-NEXT: [1,0]     .DeeeeeER.   vaddps    %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: [1,1]     .DeeE---R.   vandnps   %ymm2, %ymm2, %ymm3
+# CHECK-NEXT: [2,0]     . DeeeeeER   vaddps    %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: [2,1]     . DeeE---R   vandnps   %ymm2, %ymm2, %ymm3
 
 # CHECK:      Average Wait times (based on the timeline view):
 # CHECK-NEXT: [0]: Executions
@@ -364,9 +362,9 @@ vaddps  %ymm1, %ymm1, %ymm0
 # CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
 
 # CHECK:            [0]    [1]    [2]    [3]
-# CHECK-NEXT: 0.     3     2.0    2.0    0.0       vaddps      %ymm0, %ymm1, %ymm2
-# CHECK-NEXT: 1.     3     2.0    2.0    3.0       vandnps     %ymm2, %ymm2, %ymm3
-# CHECK-NEXT:        3     2.0    2.0    1.5       <total>
+# CHECK-NEXT: 0.     3     1.0    1.0    0.0       vaddps      %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 1.     3     1.0    1.0    3.0       vandnps     %ymm2, %ymm2, %ymm3
+# CHECK-NEXT:        3     1.0    1.0    1.5       <total>
 
 # CHECK:      [4] Code Region - ZERO-IDIOM-5
 
index c0509d8..54c1055 100644 (file)
@@ -90,12 +90,12 @@ vpxor  %xmm3, %xmm3, %xmm5
 
 # CHECK:      Iterations:        1
 # CHECK-NEXT: Instructions:      71
-# CHECK-NEXT: Total Cycles:      31
+# CHECK-NEXT: Total Cycles:      26
 # CHECK-NEXT: Total uOps:        71
 
 # CHECK:      Dispatch Width:    4
-# CHECK-NEXT: uOps Per Cycle:    2.29
-# CHECK-NEXT: IPC:               2.29
+# CHECK-NEXT: uOps Per Cycle:    2.73
+# CHECK-NEXT: IPC:               2.73
 # CHECK-NEXT: Block RThroughput: 17.8
 
 # CHECK:      Instruction Info:
@@ -116,15 +116,15 @@ vpxor  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      0     0.25                        pcmpgtw        %mm2, %mm2
 # CHECK-NEXT:  1      0     0.25                        pcmpgtb        %xmm2, %xmm2
 # CHECK-NEXT:  1      0     0.25                        pcmpgtd        %xmm2, %xmm2
-# CHECK-NEXT:  1      2     1.00                        pcmpgtq        %xmm2, %xmm2
+# CHECK-NEXT:  1      2     0.50                        pcmpgtq        %xmm2, %xmm2
 # CHECK-NEXT:  1      0     0.25                        pcmpgtw        %xmm2, %xmm2
 # CHECK-NEXT:  1      0     0.25                        vpcmpgtb       %xmm3, %xmm3, %xmm3
 # CHECK-NEXT:  1      0     0.25                        vpcmpgtd       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpcmpgtq       %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpcmpgtq       %xmm3, %xmm3, %xmm3
 # CHECK-NEXT:  1      0     0.25                        vpcmpgtw       %xmm3, %xmm3, %xmm3
 # CHECK-NEXT:  1      0     0.25                        vpcmpgtb       %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      0     0.25                        vpcmpgtd       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      2     1.00                        vpcmpgtq       %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  1      2     0.50                        vpcmpgtq       %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      0     0.25                        vpcmpgtw       %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      0     0.25                        psubb  %mm2, %mm2
 # CHECK-NEXT:  1      0     0.25                        psubd  %mm2, %mm2
@@ -144,20 +144,20 @@ vpxor  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      0     0.25                        vpsubw %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      2     0.50                        psubsb %mm2, %mm2
 # CHECK-NEXT:  1      2     0.50                        psubsw %mm2, %mm2
-# CHECK-NEXT:  1      2     1.00                        psubsb %xmm2, %xmm2
-# CHECK-NEXT:  1      2     1.00                        psubsw %xmm2, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubsb        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpsubsw        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpsubsb        %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      2     1.00                        vpsubsw        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  1      2     0.50                        psubsb %xmm2, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubsw %xmm2, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubsb        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpsubsw        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpsubsb        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  1      2     0.50                        vpsubsw        %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      2     0.50                        psubusb        %mm2, %mm2
 # CHECK-NEXT:  1      2     0.50                        psubusw        %mm2, %mm2
-# CHECK-NEXT:  1      2     1.00                        psubusb        %xmm2, %xmm2
-# CHECK-NEXT:  1      2     1.00                        psubusw        %xmm2, %xmm2
-# CHECK-NEXT:  1      2     1.00                        vpsubusb       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpsubusw       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  1      2     1.00                        vpsubsb        %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  1      2     1.00                        vpsubsw        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  1      2     0.50                        psubusb        %xmm2, %xmm2
+# CHECK-NEXT:  1      2     0.50                        psubusw        %xmm2, %xmm2
+# CHECK-NEXT:  1      2     0.50                        vpsubusb       %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpsubusw       %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  1      2     0.50                        vpsubsb        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  1      2     0.50                        vpsubsw        %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  1      0     0.25                        andnps %xmm0, %xmm0
 # CHECK-NEXT:  1      0     0.25                        andnpd %xmm1, %xmm1
 # CHECK-NEXT:  1      0     0.25                        vandnps        %xmm2, %xmm2, %xmm2
@@ -220,7 +220,7 @@ vpxor  %xmm3, %xmm3, %xmm5
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     16.00  18.00   -      -     9.00   10.00   -      -      -      -      -      -      -
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     9.00   10.00   -      -      -      -     9.00   10.00   -      -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
@@ -233,15 +233,15 @@ vpxor  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     pcmpgtw %mm2, %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     pcmpgtb %xmm2, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     pcmpgtd %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     pcmpgtq %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     pcmpgtq %xmm2, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     pcmpgtw %xmm2, %xmm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpcmpgtb        %xmm3, %xmm3, %xmm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpcmpgtd        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -      -     vpcmpgtq        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     vpcmpgtq        %xmm3, %xmm3, %xmm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpcmpgtw        %xmm3, %xmm3, %xmm3
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpcmpgtb        %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpcmpgtd        %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     vpcmpgtq        %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     vpcmpgtq        %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpcmpgtw        %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     psubb   %mm2, %mm2
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     psubd   %mm2, %mm2
@@ -259,22 +259,22 @@ vpxor  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpsubd  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpsubq  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpsubw  %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     1.00    -      -      -      -      -      -      -      -     psubsb  %mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     1.00    -      -      -      -      -      -      -     psubsw  %mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -      -     psubsb  %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     psubsw  %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -      -     vpsubsb %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     vpsubsw %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -      -     vpsubsb %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     vpsubsw %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     1.00    -      -      -      -      -      -      -      -     psubusb %mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -     1.00    -      -      -      -      -      -      -     psubusw %mm2, %mm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -      -     psubusb %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     psubusw %xmm2, %xmm2
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -      -     vpsubusb        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     vpsubusw        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -      -     vpsubsb %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     2.00    -      -      -     1.00    -      -      -      -      -      -      -     vpsubsw %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     psubsb  %mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     psubsw  %mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     psubsb  %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     psubsw  %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     vpsubsb %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     vpsubsw %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     vpsubsb %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     vpsubsw %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     psubusb %mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     psubusw %mm2, %mm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     psubusb %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     psubusw %xmm2, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     vpsubusb        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     vpsubusw        %xmm3, %xmm3, %xmm3
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -      -     vpsubsb %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -     1.00    -      -      -      -      -     1.00    -      -      -      -      -     vpsubsw %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     andnps  %xmm0, %xmm0
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     andnpd  %xmm1, %xmm1
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vandnps %xmm2, %xmm2, %xmm2
@@ -297,80 +297,80 @@ vpxor  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     vpxor   %xmm3, %xmm3, %xmm5
 
 # CHECK:      Timeline view:
-# CHECK-NEXT:                     0123456789          0
-# CHECK-NEXT: Index     0123456789          0123456789
+# CHECK-NEXT:                     0123456789
+# CHECK-NEXT: Index     0123456789          012345
 
-# CHECK:      [0,0]     DR   .    .    .    .    .    .   subl %eax, %eax
-# CHECK-NEXT: [0,1]     DR   .    .    .    .    .    .   subq %rax, %rax
-# CHECK-NEXT: [0,2]     DR   .    .    .    .    .    .   xorl %eax, %eax
-# CHECK-NEXT: [0,3]     DR   .    .    .    .    .    .   xorq %rax, %rax
-# CHECK-NEXT: [0,4]     .DR  .    .    .    .    .    .   pcmpgtb      %mm2, %mm2
-# CHECK-NEXT: [0,5]     .DR  .    .    .    .    .    .   pcmpgtd      %mm2, %mm2
-# CHECK-NEXT: [0,6]     .DR  .    .    .    .    .    .   pcmpgtw      %mm2, %mm2
-# CHECK-NEXT: [0,7]     .DR  .    .    .    .    .    .   pcmpgtb      %xmm2, %xmm2
-# CHECK-NEXT: [0,8]     . DR .    .    .    .    .    .   pcmpgtd      %xmm2, %xmm2
-# CHECK-NEXT: [0,9]     . DeeER   .    .    .    .    .   pcmpgtq      %xmm2, %xmm2
-# CHECK-NEXT: [0,10]    . D---R   .    .    .    .    .   pcmpgtw      %xmm2, %xmm2
-# CHECK-NEXT: [0,11]    . D---R   .    .    .    .    .   vpcmpgtb     %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,12]    .  D--R   .    .    .    .    .   vpcmpgtd     %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,13]    .  DeeER  .    .    .    .    .   vpcmpgtq     %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,14]    .  D---R  .    .    .    .    .   vpcmpgtw     %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,15]    .  D---R  .    .    .    .    .   vpcmpgtb     %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,16]    .   D--R  .    .    .    .    .   vpcmpgtd     %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,17]    .   DeeER .    .    .    .    .   vpcmpgtq     %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,18]    .   D---R .    .    .    .    .   vpcmpgtw     %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,19]    .   D---R .    .    .    .    .   psubb        %mm2, %mm2
-# CHECK-NEXT: [0,20]    .    D--R .    .    .    .    .   psubd        %mm2, %mm2
-# CHECK-NEXT: [0,21]    .    D---R.    .    .    .    .   psubq        %mm2, %mm2
-# CHECK-NEXT: [0,22]    .    D---R.    .    .    .    .   psubw        %mm2, %mm2
-# CHECK-NEXT: [0,23]    .    D---R.    .    .    .    .   psubb        %xmm2, %xmm2
-# CHECK-NEXT: [0,24]    .    .D--R.    .    .    .    .   psubd        %xmm2, %xmm2
-# CHECK-NEXT: [0,25]    .    .D---R    .    .    .    .   psubq        %xmm2, %xmm2
-# CHECK-NEXT: [0,26]    .    .D---R    .    .    .    .   psubw        %xmm2, %xmm2
-# CHECK-NEXT: [0,27]    .    .D---R    .    .    .    .   vpsubb       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,28]    .    . D--R    .    .    .    .   vpsubd       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,29]    .    . D---R   .    .    .    .   vpsubq       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,30]    .    . D---R   .    .    .    .   vpsubw       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,31]    .    . D---R   .    .    .    .   vpsubb       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,32]    .    .  D--R   .    .    .    .   vpsubd       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,33]    .    .  D---R  .    .    .    .   vpsubq       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,34]    .    .  D---R  .    .    .    .   vpsubw       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,35]    .    .  DeeER  .    .    .    .   psubsb       %mm2, %mm2
-# CHECK-NEXT: [0,36]    .    .   DeeER .    .    .    .   psubsw       %mm2, %mm2
-# CHECK-NEXT: [0,37]    .    .   DeeER .    .    .    .   psubsb       %xmm2, %xmm2
-# CHECK-NEXT: [0,38]    .    .   D=eeER.    .    .    .   psubsw       %xmm2, %xmm2
-# CHECK-NEXT: [0,39]    .    .   D==eeER    .    .    .   vpsubsb      %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,40]    .    .    D==eeER   .    .    .   vpsubsw      %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,41]    .    .    D===eeER  .    .    .   vpsubsb      %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,42]    .    .    D====eeER .    .    .   vpsubsw      %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,43]    .    .    D=====eeER.    .    .   psubusb      %mm2, %mm2
-# CHECK-NEXT: [0,44]    .    .    .D=====eeER    .    .   psubusw      %mm2, %mm2
-# CHECK-NEXT: [0,45]    .    .    .D=====eeER    .    .   psubusb      %xmm2, %xmm2
-# CHECK-NEXT: [0,46]    .    .    .D======eeER   .    .   psubusw      %xmm2, %xmm2
-# CHECK-NEXT: [0,47]    .    .    .D=======eeER  .    .   vpsubusb     %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,48]    .    .    . D=======eeER .    .   vpsubusw     %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,49]    .    .    . D========eeER.    .   vpsubsb      %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,50]    .    .    . D=========eeER    .   vpsubsw      %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,51]    .    .    . D------------R    .   andnps       %xmm0, %xmm0
-# CHECK-NEXT: [0,52]    .    .    .  D-----------R    .   andnpd       %xmm1, %xmm1
-# CHECK-NEXT: [0,53]    .    .    .  D-----------R    .   vandnps      %xmm2, %xmm2, %xmm2
-# CHECK-NEXT: [0,54]    .    .    .  D------------R   .   vandnpd      %xmm1, %xmm1, %xmm1
-# CHECK-NEXT: [0,55]    .    .    .  D------------R   .   pandn        %mm2, %mm2
-# CHECK-NEXT: [0,56]    .    .    .   D-----------R   .   pandn        %xmm2, %xmm2
-# CHECK-NEXT: [0,57]    .    .    .   D-----------R   .   vpandn       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,58]    .    .    .   D------------R  .   vandnps      %xmm2, %xmm2, %xmm5
-# CHECK-NEXT: [0,59]    .    .    .   D------------R  .   vandnpd      %xmm1, %xmm1, %xmm5
-# CHECK-NEXT: [0,60]    .    .    .    D-----------R  .   vpandn       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: [0,61]    .    .    .    D-----------R  .   xorps        %xmm0, %xmm0
-# CHECK-NEXT: [0,62]    .    .    .    D------------R .   xorpd        %xmm1, %xmm1
-# CHECK-NEXT: [0,63]    .    .    .    D------------R .   vxorps       %xmm2, %xmm2, %xmm2
-# CHECK-NEXT: [0,64]    .    .    .    .D-----------R .   vxorpd       %xmm1, %xmm1, %xmm1
-# CHECK-NEXT: [0,65]    .    .    .    .D-----------R .   pxor %mm2, %mm2
-# CHECK-NEXT: [0,66]    .    .    .    .D------------R.   pxor %xmm2, %xmm2
-# CHECK-NEXT: [0,67]    .    .    .    .D------------R.   vpxor        %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: [0,68]    .    .    .    . D-----------R.   vxorps       %xmm4, %xmm4, %xmm5
-# CHECK-NEXT: [0,69]    .    .    .    . D-----------R.   vxorpd       %xmm1, %xmm1, %xmm3
-# CHECK-NEXT: [0,70]    .    .    .    . D------------R   vpxor        %xmm3, %xmm3, %xmm5
+# CHECK:      [0,0]     DR   .    .    .    .    .   subl      %eax, %eax
+# CHECK-NEXT: [0,1]     DR   .    .    .    .    .   subq      %rax, %rax
+# CHECK-NEXT: [0,2]     DR   .    .    .    .    .   xorl      %eax, %eax
+# CHECK-NEXT: [0,3]     DR   .    .    .    .    .   xorq      %rax, %rax
+# CHECK-NEXT: [0,4]     .DR  .    .    .    .    .   pcmpgtb   %mm2, %mm2
+# CHECK-NEXT: [0,5]     .DR  .    .    .    .    .   pcmpgtd   %mm2, %mm2
+# CHECK-NEXT: [0,6]     .DR  .    .    .    .    .   pcmpgtw   %mm2, %mm2
+# CHECK-NEXT: [0,7]     .DR  .    .    .    .    .   pcmpgtb   %xmm2, %xmm2
+# CHECK-NEXT: [0,8]     . DR .    .    .    .    .   pcmpgtd   %xmm2, %xmm2
+# CHECK-NEXT: [0,9]     . DeeER   .    .    .    .   pcmpgtq   %xmm2, %xmm2
+# CHECK-NEXT: [0,10]    . D---R   .    .    .    .   pcmpgtw   %xmm2, %xmm2
+# CHECK-NEXT: [0,11]    . D---R   .    .    .    .   vpcmpgtb  %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,12]    .  D--R   .    .    .    .   vpcmpgtd  %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,13]    .  DeeER  .    .    .    .   vpcmpgtq  %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,14]    .  D---R  .    .    .    .   vpcmpgtw  %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,15]    .  D---R  .    .    .    .   vpcmpgtb  %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,16]    .   D--R  .    .    .    .   vpcmpgtd  %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,17]    .   DeeER .    .    .    .   vpcmpgtq  %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,18]    .   D---R .    .    .    .   vpcmpgtw  %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,19]    .   D---R .    .    .    .   psubb     %mm2, %mm2
+# CHECK-NEXT: [0,20]    .    D--R .    .    .    .   psubd     %mm2, %mm2
+# CHECK-NEXT: [0,21]    .    D---R.    .    .    .   psubq     %mm2, %mm2
+# CHECK-NEXT: [0,22]    .    D---R.    .    .    .   psubw     %mm2, %mm2
+# CHECK-NEXT: [0,23]    .    D---R.    .    .    .   psubb     %xmm2, %xmm2
+# CHECK-NEXT: [0,24]    .    .D--R.    .    .    .   psubd     %xmm2, %xmm2
+# CHECK-NEXT: [0,25]    .    .D---R    .    .    .   psubq     %xmm2, %xmm2
+# CHECK-NEXT: [0,26]    .    .D---R    .    .    .   psubw     %xmm2, %xmm2
+# CHECK-NEXT: [0,27]    .    .D---R    .    .    .   vpsubb    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,28]    .    . D--R    .    .    .   vpsubd    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,29]    .    . D---R   .    .    .   vpsubq    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,30]    .    . D---R   .    .    .   vpsubw    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,31]    .    . D---R   .    .    .   vpsubb    %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,32]    .    .  D--R   .    .    .   vpsubd    %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,33]    .    .  D---R  .    .    .   vpsubq    %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,34]    .    .  D---R  .    .    .   vpsubw    %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,35]    .    .  DeeER  .    .    .   psubsb    %mm2, %mm2
+# CHECK-NEXT: [0,36]    .    .   DeeER .    .    .   psubsw    %mm2, %mm2
+# CHECK-NEXT: [0,37]    .    .   DeeER .    .    .   psubsb    %xmm2, %xmm2
+# CHECK-NEXT: [0,38]    .    .   D=eeER.    .    .   psubsw    %xmm2, %xmm2
+# CHECK-NEXT: [0,39]    .    .   D=eeER.    .    .   vpsubsb   %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,40]    .    .    D=eeER    .    .   vpsubsw   %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,41]    .    .    D=eeER    .    .   vpsubsb   %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,42]    .    .    D==eeER   .    .   vpsubsw   %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,43]    .    .    D==eeER   .    .   psubusb   %mm2, %mm2
+# CHECK-NEXT: [0,44]    .    .    .D==eeER  .    .   psubusw   %mm2, %mm2
+# CHECK-NEXT: [0,45]    .    .    .D==eeER  .    .   psubusb   %xmm2, %xmm2
+# CHECK-NEXT: [0,46]    .    .    .D===eeER .    .   psubusw   %xmm2, %xmm2
+# CHECK-NEXT: [0,47]    .    .    .D===eeER .    .   vpsubusb  %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,48]    .    .    . D===eeER.    .   vpsubusw  %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,49]    .    .    . D===eeER.    .   vpsubsb   %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,50]    .    .    . D====eeER    .   vpsubsw   %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,51]    .    .    . D-------R    .   andnps    %xmm0, %xmm0
+# CHECK-NEXT: [0,52]    .    .    .  D------R    .   andnpd    %xmm1, %xmm1
+# CHECK-NEXT: [0,53]    .    .    .  D------R    .   vandnps   %xmm2, %xmm2, %xmm2
+# CHECK-NEXT: [0,54]    .    .    .  D-------R   .   vandnpd   %xmm1, %xmm1, %xmm1
+# CHECK-NEXT: [0,55]    .    .    .  D-------R   .   pandn     %mm2, %mm2
+# CHECK-NEXT: [0,56]    .    .    .   D------R   .   pandn     %xmm2, %xmm2
+# CHECK-NEXT: [0,57]    .    .    .   D------R   .   vpandn    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,58]    .    .    .   D-------R  .   vandnps   %xmm2, %xmm2, %xmm5
+# CHECK-NEXT: [0,59]    .    .    .   D-------R  .   vandnpd   %xmm1, %xmm1, %xmm5
+# CHECK-NEXT: [0,60]    .    .    .    D------R  .   vpandn    %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: [0,61]    .    .    .    D------R  .   xorps     %xmm0, %xmm0
+# CHECK-NEXT: [0,62]    .    .    .    D-------R .   xorpd     %xmm1, %xmm1
+# CHECK-NEXT: [0,63]    .    .    .    D-------R .   vxorps    %xmm2, %xmm2, %xmm2
+# CHECK-NEXT: [0,64]    .    .    .    .D------R .   vxorpd    %xmm1, %xmm1, %xmm1
+# CHECK-NEXT: [0,65]    .    .    .    .D------R .   pxor      %mm2, %mm2
+# CHECK-NEXT: [0,66]    .    .    .    .D-------R.   pxor      %xmm2, %xmm2
+# CHECK-NEXT: [0,67]    .    .    .    .D-------R.   vpxor     %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: [0,68]    .    .    .    . D------R.   vxorps    %xmm4, %xmm4, %xmm5
+# CHECK-NEXT: [0,69]    .    .    .    . D------R.   vxorpd    %xmm1, %xmm1, %xmm3
+# CHECK-NEXT: [0,70]    .    .    .    . D-------R   vpxor     %xmm3, %xmm3, %xmm5
 
 # CHECK:      Average Wait times (based on the timeline view):
 # CHECK-NEXT: [0]: Executions
@@ -418,36 +418,36 @@ vpxor  %xmm3, %xmm3, %xmm5
 # CHECK-NEXT: 36.    1     1.0    1.0    0.0       psubsw      %mm2, %mm2
 # CHECK-NEXT: 37.    1     1.0    1.0    0.0       psubsb      %xmm2, %xmm2
 # CHECK-NEXT: 38.    1     2.0    2.0    0.0       psubsw      %xmm2, %xmm2
-# CHECK-NEXT: 39.    1     3.0    3.0    0.0       vpsubsb     %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 40.    1     3.0    3.0    0.0       vpsubsw     %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 41.    1     4.0    4.0    0.0       vpsubsb     %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 42.    1     5.0    5.0    0.0       vpsubsw     %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 43.    1     6.0    6.0    0.0       psubusb     %mm2, %mm2
-# CHECK-NEXT: 44.    1     6.0    6.0    0.0       psubusw     %mm2, %mm2
-# CHECK-NEXT: 45.    1     6.0    6.0    0.0       psubusb     %xmm2, %xmm2
-# CHECK-NEXT: 46.    1     7.0    7.0    0.0       psubusw     %xmm2, %xmm2
-# CHECK-NEXT: 47.    1     8.0    8.0    0.0       vpsubusb    %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 48.    1     8.0    8.0    0.0       vpsubusw    %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 49.    1     9.0    9.0    0.0       vpsubsb     %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 50.    1     10.0   10.0   0.0       vpsubsw     %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 51.    1     0.0    0.0    12.0      andnps      %xmm0, %xmm0
-# CHECK-NEXT: 52.    1     0.0    0.0    11.0      andnpd      %xmm1, %xmm1
-# CHECK-NEXT: 53.    1     0.0    0.0    11.0      vandnps     %xmm2, %xmm2, %xmm2
-# CHECK-NEXT: 54.    1     0.0    0.0    12.0      vandnpd     %xmm1, %xmm1, %xmm1
-# CHECK-NEXT: 55.    1     0.0    0.0    12.0      pandn       %mm2, %mm2
-# CHECK-NEXT: 56.    1     0.0    0.0    11.0      pandn       %xmm2, %xmm2
-# CHECK-NEXT: 57.    1     0.0    0.0    11.0      vpandn      %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 58.    1     0.0    0.0    12.0      vandnps     %xmm2, %xmm2, %xmm5
-# CHECK-NEXT: 59.    1     0.0    0.0    12.0      vandnpd     %xmm1, %xmm1, %xmm5
-# CHECK-NEXT: 60.    1     0.0    0.0    11.0      vpandn      %xmm3, %xmm3, %xmm5
-# CHECK-NEXT: 61.    1     0.0    0.0    11.0      xorps       %xmm0, %xmm0
-# CHECK-NEXT: 62.    1     0.0    0.0    12.0      xorpd       %xmm1, %xmm1
-# CHECK-NEXT: 63.    1     0.0    0.0    12.0      vxorps      %xmm2, %xmm2, %xmm2
-# CHECK-NEXT: 64.    1     0.0    0.0    11.0      vxorpd      %xmm1, %xmm1, %xmm1
-# CHECK-NEXT: 65.    1     0.0    0.0    11.0      pxor        %mm2, %mm2
-# CHECK-NEXT: 66.    1     0.0    0.0    12.0      pxor        %xmm2, %xmm2
-# CHECK-NEXT: 67.    1     0.0    0.0    12.0      vpxor       %xmm3, %xmm3, %xmm3
-# CHECK-NEXT: 68.    1     0.0    0.0    11.0      vxorps      %xmm4, %xmm4, %xmm5
-# CHECK-NEXT: 69.    1     0.0    0.0    11.0      vxorpd      %xmm1, %xmm1, %xmm3
-# CHECK-NEXT: 70.    1     0.0    0.0    12.0      vpxor       %xmm3, %xmm3, %xmm5
-# CHECK-NEXT:        1     1.2    1.2    4.1       <total>
+# CHECK-NEXT: 39.    1     2.0    2.0    0.0       vpsubsb     %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 40.    1     2.0    2.0    0.0       vpsubsw     %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 41.    1     2.0    2.0    0.0       vpsubsb     %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 42.    1     3.0    3.0    0.0       vpsubsw     %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 43.    1     3.0    3.0    0.0       psubusb     %mm2, %mm2
+# CHECK-NEXT: 44.    1     3.0    3.0    0.0       psubusw     %mm2, %mm2
+# CHECK-NEXT: 45.    1     3.0    3.0    0.0       psubusb     %xmm2, %xmm2
+# CHECK-NEXT: 46.    1     4.0    4.0    0.0       psubusw     %xmm2, %xmm2
+# CHECK-NEXT: 47.    1     4.0    4.0    0.0       vpsubusb    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 48.    1     4.0    4.0    0.0       vpsubusw    %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 49.    1     4.0    4.0    0.0       vpsubsb     %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 50.    1     5.0    5.0    0.0       vpsubsw     %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 51.    1     0.0    0.0    7.0       andnps      %xmm0, %xmm0
+# CHECK-NEXT: 52.    1     0.0    0.0    6.0       andnpd      %xmm1, %xmm1
+# CHECK-NEXT: 53.    1     0.0    0.0    6.0       vandnps     %xmm2, %xmm2, %xmm2
+# CHECK-NEXT: 54.    1     0.0    0.0    7.0       vandnpd     %xmm1, %xmm1, %xmm1
+# CHECK-NEXT: 55.    1     0.0    0.0    7.0       pandn       %mm2, %mm2
+# CHECK-NEXT: 56.    1     0.0    0.0    6.0       pandn       %xmm2, %xmm2
+# CHECK-NEXT: 57.    1     0.0    0.0    6.0       vpandn      %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 58.    1     0.0    0.0    7.0       vandnps     %xmm2, %xmm2, %xmm5
+# CHECK-NEXT: 59.    1     0.0    0.0    7.0       vandnpd     %xmm1, %xmm1, %xmm5
+# CHECK-NEXT: 60.    1     0.0    0.0    6.0       vpandn      %xmm3, %xmm3, %xmm5
+# CHECK-NEXT: 61.    1     0.0    0.0    6.0       xorps       %xmm0, %xmm0
+# CHECK-NEXT: 62.    1     0.0    0.0    7.0       xorpd       %xmm1, %xmm1
+# CHECK-NEXT: 63.    1     0.0    0.0    7.0       vxorps      %xmm2, %xmm2, %xmm2
+# CHECK-NEXT: 64.    1     0.0    0.0    6.0       vxorpd      %xmm1, %xmm1, %xmm1
+# CHECK-NEXT: 65.    1     0.0    0.0    6.0       pxor        %mm2, %mm2
+# CHECK-NEXT: 66.    1     0.0    0.0    7.0       pxor        %xmm2, %xmm2
+# CHECK-NEXT: 67.    1     0.0    0.0    7.0       vpxor       %xmm3, %xmm3, %xmm3
+# CHECK-NEXT: 68.    1     0.0    0.0    6.0       vxorps      %xmm4, %xmm4, %xmm5
+# CHECK-NEXT: 69.    1     0.0    0.0    6.0       vxorpd      %xmm1, %xmm1, %xmm3
+# CHECK-NEXT: 70.    1     0.0    0.0    7.0       vpxor       %xmm3, %xmm3, %xmm5
+# CHECK-NEXT:        1     0.7    0.7    2.7       <total>