[llvm] r330512 - [llvm-mca][X86] Add AVX2 resource tests

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 21 09:12:43 PDT 2018


Author: rksimon
Date: Sat Apr 21 09:12:42 2018
New Revision: 330512

URL: http://llvm.org/viewvc/llvm-project?rev=330512&view=rev
Log:
[llvm-mca][X86] Add AVX2 resource tests

Added:
    llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-avx2.s
    llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-avx2.s
    llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-avx2.s
    llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-avx2.s
    llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-avx2.s

Added: llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-avx2.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-avx2.s?rev=330512&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-avx2.s (added)
+++ llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-avx2.s Sat Apr 21 09:12:42 2018
@@ -0,0 +1,1077 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -instruction-tables < %s | FileCheck %s
+
+vbroadcasti128  (%rax), %ymm0
+
+vbroadcastsd    %xmm0, %ymm0
+vbroadcastss    %xmm0, %ymm0
+
+vextracti128    $1, %ymm0, %xmm2
+vextracti128    $1, %ymm0, (%rax)
+
+vgatherdpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdpd      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vgatherdps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdps      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqpd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqps      %xmm0, (%rax,%ymm1,2), %xmm2
+
+vinserti128     $1, %xmm0, %ymm1, %ymm2
+vinserti128     $1, (%rax), %ymm1, %ymm2
+
+vmovntdqa       (%rax), %ymm0
+
+vmpsadbw        $1, %ymm0, %ymm1, %ymm2
+vmpsadbw        $1, (%rax), %ymm1, %ymm2
+
+vpabsb          %ymm0, %ymm2
+vpabsb          (%rax), %ymm2
+
+vpabsd          %ymm0, %ymm2
+vpabsd          (%rax), %ymm2
+
+vpabsw          %ymm0, %ymm2
+vpabsw          (%rax), %ymm2
+
+vpackssdw       %ymm0, %ymm1, %ymm2
+vpackssdw       (%rax), %ymm1, %ymm2
+
+vpacksswb       %ymm0, %ymm1, %ymm2
+vpacksswb       (%rax), %ymm1, %ymm2
+
+vpackusdw       %ymm0, %ymm1, %ymm2
+vpackusdw       (%rax), %ymm1, %ymm2
+
+vpackuswb       %ymm0, %ymm1, %ymm2
+vpackuswb       (%rax), %ymm1, %ymm2
+
+vpaddb          %ymm0, %ymm1, %ymm2
+vpaddb          (%rax), %ymm1, %ymm2
+
+vpaddd          %ymm0, %ymm1, %ymm2
+vpaddd          (%rax), %ymm1, %ymm2
+
+vpaddq          %ymm0, %ymm1, %ymm2
+vpaddq          (%rax), %ymm1, %ymm2
+
+vpaddsb         %ymm0, %ymm1, %ymm2
+vpaddsb         (%rax), %ymm1, %ymm2
+
+vpaddsw         %ymm0, %ymm1, %ymm2
+vpaddsw         (%rax), %ymm1, %ymm2
+
+vpaddusb        %ymm0, %ymm1, %ymm2
+vpaddusb        (%rax), %ymm1, %ymm2
+
+vpaddusw        %ymm0, %ymm1, %ymm2
+vpaddusw        (%rax), %ymm1, %ymm2
+
+vpaddw          %ymm0, %ymm1, %ymm2
+vpaddw          (%rax), %ymm1, %ymm2
+
+vpalignr        $1, %ymm0, %ymm1, %ymm2
+vpalignr        $1, (%rax), %ymm1, %ymm2
+
+vpand           %ymm0, %ymm1, %ymm2
+vpand           (%rax), %ymm1, %ymm2
+
+vpandn          %ymm0, %ymm1, %ymm2
+vpandn          (%rax), %ymm1, %ymm2
+
+vpavgb          %ymm0, %ymm1, %ymm2
+vpavgb          (%rax), %ymm1, %ymm2
+
+vpavgw          %ymm0, %ymm1, %ymm2
+vpavgw          (%rax), %ymm1, %ymm2
+
+vpblendd        $11, %xmm0, %xmm1, %xmm2
+vpblendd        $11, (%rax), %xmm1, %xmm2
+
+vpblendd        $11, %ymm0, %ymm1, %ymm2
+vpblendd        $11, (%rax), %ymm1, %ymm2
+
+vpblendvb       %ymm3, %ymm0, %ymm1, %ymm2
+vpblendvb       %ymm3, (%rax), %ymm1, %ymm2
+
+vpblendw        $11, %ymm0, %ymm1, %ymm2
+vpblendw        $11, (%rax), %ymm1, %ymm2
+
+vpbroadcastb    %xmm0, %xmm0
+vpbroadcastb    (%rax), %xmm0
+
+vpbroadcastb    %xmm0, %ymm0
+vpbroadcastb    (%rax), %ymm0
+
+vpbroadcastd    %xmm0, %xmm0
+vpbroadcastd    (%rax), %xmm0
+
+vpbroadcastd    %xmm0, %ymm0
+vpbroadcastd    (%rax), %ymm0
+
+vpbroadcastq    %xmm0, %xmm0
+vpbroadcastq    (%rax), %xmm0
+
+vpbroadcastq    %xmm0, %ymm0
+vpbroadcastq    (%rax), %ymm0
+
+vpbroadcastw    %xmm0, %xmm0
+vpbroadcastw    (%rax), %xmm0
+
+vpbroadcastw    %xmm0, %ymm0
+vpbroadcastw    (%rax), %ymm0
+
+vpcmpeqb        %ymm0, %ymm1, %ymm2
+vpcmpeqb        (%rax), %ymm1, %ymm2
+
+vpcmpeqd        %ymm0, %ymm1, %ymm2
+vpcmpeqd        (%rax), %ymm1, %ymm2
+
+vpcmpeqq        %ymm0, %ymm1, %ymm2
+vpcmpeqq        (%rax), %ymm1, %ymm2
+
+vpcmpeqw        %ymm0, %ymm1, %ymm2
+vpcmpeqw        (%rax), %ymm1, %ymm2
+
+vpcmpgtb        %ymm0, %ymm1, %ymm2
+vpcmpgtb        (%rax), %ymm1, %ymm2
+
+vpcmpgtd        %ymm0, %ymm1, %ymm2
+vpcmpgtd        (%rax), %ymm1, %ymm2
+
+vpcmpgtq        %ymm0, %ymm1, %ymm2
+vpcmpgtq        (%rax), %ymm1, %ymm2
+
+vpcmpgtw        %ymm0, %ymm1, %ymm2
+vpcmpgtw        (%rax), %ymm1, %ymm2
+
+vpermd          %ymm0, %ymm1, %ymm2
+vpermd          (%rax), %ymm1, %ymm2
+
+vpermpd         $1, %ymm0, %ymm2
+vpermpd         $1, (%rax), %ymm2
+
+vpermps         %ymm0, %ymm1, %ymm2
+vpermps         (%rax), %ymm1, %ymm2
+
+vpermq          $1, %ymm0, %ymm2
+vpermq          $1, (%rax), %ymm2
+
+vpgatherdd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherdq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdq      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vpgatherqd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherqq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vphaddd         %ymm0, %ymm1, %ymm2
+vphaddd         (%rax), %ymm1, %ymm2
+
+vphaddsw        %ymm0, %ymm1, %ymm2
+vphaddsw        (%rax), %ymm1, %ymm2
+
+vphaddw         %ymm0, %ymm1, %ymm2
+vphaddw         (%rax), %ymm1, %ymm2
+
+vphsubd         %ymm0, %ymm1, %ymm2
+vphsubd         (%rax), %ymm1, %ymm2
+
+vphsubsw        %ymm0, %ymm1, %ymm2
+vphsubsw        (%rax), %ymm1, %ymm2
+
+vphsubw         %ymm0, %ymm1, %ymm2
+vphsubw         (%rax), %ymm1, %ymm2
+
+vpmaddubsw      %ymm0, %ymm1, %ymm2
+vpmaddubsw      (%rax), %ymm1, %ymm2
+
+vpmaddwd        %ymm0, %ymm1, %ymm2
+vpmaddwd        (%rax), %ymm1, %ymm2
+
+vpmaskmovd      (%rax), %xmm0, %xmm2
+vpmaskmovd      (%rax), %ymm0, %ymm2
+
+vpmaskmovd      %xmm0, %xmm1, (%rax)
+vpmaskmovd      %ymm0, %ymm1, (%rax)
+
+vpmaskmovq      (%rax), %xmm0, %xmm2
+vpmaskmovq      (%rax), %ymm0, %ymm2
+
+vpmaskmovq      %xmm0, %xmm1, (%rax)
+vpmaskmovq      %ymm0, %ymm1, (%rax)
+
+vpmaxsb         %ymm0, %ymm1, %ymm2
+vpmaxsb         (%rax), %ymm1, %ymm2
+
+vpmaxsd         %ymm0, %ymm1, %ymm2
+vpmaxsd         (%rax), %ymm1, %ymm2
+
+vpmaxsw         %ymm0, %ymm1, %ymm2
+vpmaxsw         (%rax), %ymm1, %ymm2
+
+vpmaxub         %ymm0, %ymm1, %ymm2
+vpmaxub         (%rax), %ymm1, %ymm2
+
+vpmaxud         %ymm0, %ymm1, %ymm2
+vpmaxud         (%rax), %ymm1, %ymm2
+
+vpmaxuw         %ymm0, %ymm1, %ymm2
+vpmaxuw         (%rax), %ymm1, %ymm2
+
+vpminsb         %ymm0, %ymm1, %ymm2
+vpminsb         (%rax), %ymm1, %ymm2
+
+vpminsd         %ymm0, %ymm1, %ymm2
+vpminsd         (%rax), %ymm1, %ymm2
+
+vpminsw         %ymm0, %ymm1, %ymm2
+vpminsw         (%rax), %ymm1, %ymm2
+
+vpminub         %ymm0, %ymm1, %ymm2
+vpminub         (%rax), %ymm1, %ymm2
+
+vpminud         %ymm0, %ymm1, %ymm2
+vpminud         (%rax), %ymm1, %ymm2
+
+vpminuw         %ymm0, %ymm1, %ymm2
+vpminuw         (%rax), %ymm1, %ymm2
+
+vpmovmskb       %ymm0, %rcx
+
+vpmovsxbd       %xmm0, %ymm2
+vpmovsxbd       (%rax), %ymm2
+
+vpmovsxbq       %xmm0, %ymm2
+vpmovsxbq       (%rax), %ymm2
+
+vpmovsxbw       %xmm0, %ymm2
+vpmovsxbw       (%rax), %ymm2
+
+vpmovsxdq       %xmm0, %ymm2
+vpmovsxdq       (%rax), %ymm2
+
+vpmovsxwd       %xmm0, %ymm2
+vpmovsxwd       (%rax), %ymm2
+
+vpmovsxwq       %xmm0, %ymm2
+vpmovsxwq       (%rax), %ymm2
+
+vpmovzxbd       %xmm0, %ymm2
+vpmovzxbd       (%rax), %ymm2
+
+vpmovzxbq       %xmm0, %ymm2
+vpmovzxbq       (%rax), %ymm2
+
+vpmovzxbw       %xmm0, %ymm2
+vpmovzxbw       (%rax), %ymm2
+
+vpmovzxdq       %xmm0, %ymm2
+vpmovzxdq       (%rax), %ymm2
+
+vpmovzxwd       %xmm0, %ymm2
+vpmovzxwd       (%rax), %ymm2
+
+vpmovzxwq       %xmm0, %ymm2
+vpmovzxwq       (%rax), %ymm2
+
+vpmuldq         %ymm0, %ymm1, %ymm2
+vpmuldq         (%rax), %ymm1, %ymm2
+
+vpmulhrsw       %ymm0, %ymm1, %ymm2
+vpmulhrsw       (%rax), %ymm1, %ymm2
+
+vpmulhuw        %ymm0, %ymm1, %ymm2
+vpmulhuw        (%rax), %ymm1, %ymm2
+
+vpmulhw         %ymm0, %ymm1, %ymm2
+vpmulhw         (%rax), %ymm1, %ymm2
+
+vpmulld         %ymm0, %ymm1, %ymm2
+vpmulld         (%rax), %ymm1, %ymm2
+
+vpmullw         %ymm0, %ymm1, %ymm2
+vpmullw         (%rax), %ymm1, %ymm2
+
+vpmuludq        %ymm0, %ymm1, %ymm2
+vpmuludq        (%rax), %ymm1, %ymm2
+
+vpor            %ymm0, %ymm1, %ymm2
+vpor            (%rax), %ymm1, %ymm2
+
+vpsadbw         %ymm0, %ymm1, %ymm2
+vpsadbw         (%rax), %ymm1, %ymm2
+
+vpshufb         %ymm0, %ymm1, %ymm2
+vpshufb         (%rax), %ymm1, %ymm2
+
+vpshufd         $1, %ymm0, %ymm2
+vpshufd         $1, (%rax), %ymm2
+
+vpshufhw        $1, %ymm0, %ymm2
+vpshufhw        $1, (%rax), %ymm2
+
+vpshuflw        $1, %ymm0, %ymm2
+vpshuflw        $1, (%rax), %ymm2
+
+vpsignb         %ymm0, %ymm1, %ymm2
+vpsignb         (%rax), %ymm1, %ymm2
+
+vpsignd         %ymm0, %ymm1, %ymm2
+vpsignd         (%rax), %ymm1, %ymm2
+
+vpsignw         %ymm0, %ymm1, %ymm2
+vpsignw         (%rax), %ymm1, %ymm2
+
+vpslld          $1, %ymm0, %ymm2
+vpslld          %xmm0, %ymm1, %ymm2
+vpslld          (%rax), %ymm1, %ymm2
+
+vpslldq         $1, %ymm1, %ymm2
+
+vpsllq          $1, %ymm0, %ymm2
+vpsllq          %xmm0, %ymm1, %ymm2
+vpsllq          (%rax), %ymm1, %ymm2
+
+vpsllvd         %xmm0, %xmm1, %xmm2
+vpsllvd         (%rax), %xmm1, %xmm2
+
+vpsllvd         %ymm0, %ymm1, %ymm2
+vpsllvd         (%rax), %ymm1, %ymm2
+
+vpsllvq         %xmm0, %xmm1, %xmm2
+vpsllvq         (%rax), %xmm1, %xmm2
+
+vpsllvq         %ymm0, %ymm1, %ymm2
+vpsllvq         (%rax), %ymm1, %ymm2
+
+vpsllw          $1, %ymm0, %ymm2
+vpsllw          %xmm0, %ymm1, %ymm2
+vpsllw          (%rax), %ymm1, %ymm2
+
+vpsrad          $1, %ymm0, %ymm2
+vpsrad          %xmm0, %ymm1, %ymm2
+vpsrad          (%rax), %ymm1, %ymm2
+
+vpsravd         %xmm0, %xmm1, %xmm2
+vpsravd         (%rax), %xmm1, %xmm2
+
+vpsravd         %ymm0, %ymm1, %ymm2
+vpsravd         (%rax), %ymm1, %ymm2
+
+vpsraw          $1, %ymm0, %ymm2
+vpsraw          %xmm0, %ymm1, %ymm2
+vpsraw          (%rax), %ymm1, %ymm2
+
+vpsrld          $1, %ymm0, %ymm2
+vpsrld          %xmm0, %ymm1, %ymm2
+vpsrld          (%rax), %ymm1, %ymm2
+
+vpsrldq         $1, %ymm1, %ymm2
+
+vpsrlq          $1, %ymm0, %ymm2
+vpsrlq          %xmm0, %ymm1, %ymm2
+vpsrlq          (%rax), %ymm1, %ymm2
+
+vpsrlvd         %xmm0, %xmm1, %xmm2
+vpsrlvd         (%rax), %xmm1, %xmm2
+
+vpsrlvd         %ymm0, %ymm1, %ymm2
+vpsrlvd         (%rax), %ymm1, %ymm2
+
+vpsrlvq         %xmm0, %xmm1, %xmm2
+vpsrlvq         (%rax), %xmm1, %xmm2
+
+vpsrlvq         %ymm0, %ymm1, %ymm2
+vpsrlvq         (%rax), %ymm1, %ymm2
+
+vpsrlw          $1, %ymm0, %ymm2
+vpsrlw          %xmm0, %ymm1, %ymm2
+vpsrlw          (%rax), %ymm1, %ymm2
+
+vpsubb          %ymm0, %ymm1, %ymm2
+vpsubb          (%rax), %ymm1, %ymm2
+
+vpsubd          %ymm0, %ymm1, %ymm2
+vpsubd          (%rax), %ymm1, %ymm2
+
+vpsubq          %ymm0, %ymm1, %ymm2
+vpsubq          (%rax), %ymm1, %ymm2
+
+vpsubsb         %ymm0, %ymm1, %ymm2
+vpsubsb         (%rax), %ymm1, %ymm2
+
+vpsubsw         %ymm0, %ymm1, %ymm2
+vpsubsw         (%rax), %ymm1, %ymm2
+
+vpsubusb        %ymm0, %ymm1, %ymm2
+vpsubusb        (%rax), %ymm1, %ymm2
+
+vpsubusw        %ymm0, %ymm1, %ymm2
+vpsubusw        (%rax), %ymm1, %ymm2
+
+vpsubw          %ymm0, %ymm1, %ymm2
+vpsubw          (%rax), %ymm1, %ymm2
+
+vpunpckhbw      %ymm0, %ymm1, %ymm2
+vpunpckhbw      (%rax), %ymm1, %ymm2
+
+vpunpckhdq      %ymm0, %ymm1, %ymm2
+vpunpckhdq      (%rax), %ymm1, %ymm2
+
+vpunpckhqdq     %ymm0, %ymm1, %ymm2
+vpunpckhqdq     (%rax), %ymm1, %ymm2
+
+vpunpckhwd      %ymm0, %ymm1, %ymm2
+vpunpckhwd      (%rax), %ymm1, %ymm2
+
+vpunpcklbw      %ymm0, %ymm1, %ymm2
+vpunpcklbw      (%rax), %ymm1, %ymm2
+
+vpunpckldq      %ymm0, %ymm1, %ymm2
+vpunpckldq      (%rax), %ymm1, %ymm2
+
+vpunpcklqdq     %ymm0, %ymm1, %ymm2
+vpunpcklqdq     (%rax), %ymm1, %ymm2
+
+vpunpcklwd      %ymm0, %ymm1, %ymm2
+vpunpcklwd      (%rax), %ymm1, %ymm2
+
+vpxor           %ymm0, %ymm1, %ymm2
+vpxor           (%rax), %ymm1, %ymm2
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]	Instructions:
+# CHECK-NEXT:  1      6     0.50    *               	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT:  2      1     1.00           *        	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  7      25    3.00    *               	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  9      26    5.00    *               	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  7      25    3.00    *               	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  14     26    4.00    *               	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  7      22    3.00    *               	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  9      23    3.00    *               	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  9      27    5.00    *               	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  9      24    5.00    *               	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  1      3     1.00                    	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      6     0.50    *               	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      6     0.50    *               	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  3      7     2.00                    	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      13    2.00    *               	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      6     0.50    *               	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.33                    	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      2     2.00                    	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      8     2.00    *               	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT:  3      9     1.00    *               	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT:  3      9     1.00    *               	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  1      1     1.00                    	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT:  1      5     0.50    *               	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT:  1      6     0.50    *               	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  1      1     1.00                    	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT:  1      5     0.50    *               	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT:  1      6     0.50    *               	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT:  3      9     1.00    *               	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT:  3      9     1.00    *               	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      5     0.50    *               	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      5     0.50    *               	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  1      5     0.50    *               	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      5     0.50    *               	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  1      5     0.50    *               	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      5     0.50    *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  1      5     0.50    *               	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      5     0.50    *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      9     2.00    *               	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      9     2.00    *               	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      9     2.00    *               	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      9     2.00    *               	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      9     2.00    *               	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      9     2.00    *               	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      7     2.00    *               	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  3      8     2.00    *               	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  4      5     1.00    *      *        	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  4      5     1.00    *      *        	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  3      7     2.00    *               	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  3      8     2.00    *               	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  4      5     1.00    *      *        	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  4      5     1.00    *      *        	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      10    2.00                    	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      16    2.00    *               	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    1.00    *               	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  4      8     2.00    *               	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  3      3     2.00                    	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      9     2.00    *               	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      6     1.00    *               	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     1.00                    	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  4      8     2.00    *               	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  3      3     2.00                    	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      9     2.00    *               	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  4      8     2.00    *               	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  3      3     2.00                    	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      9     2.00    *               	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      6     1.00    *               	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     1.00    *               	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpxor	(%rax), %ymm1, %ymm2
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0] - BWDivider
+# CHECK-NEXT: [1] - BWFPDivider
+# CHECK-NEXT: [2] - BWPort0
+# CHECK-NEXT: [3] - BWPort1
+# CHECK-NEXT: [4] - BWPort2
+# CHECK-NEXT: [5] - BWPort3
+# CHECK-NEXT: [6] - BWPort4
+# CHECK-NEXT: [7] - BWPort5
+# CHECK-NEXT: [8] - BWPort6
+# CHECK-NEXT: [9] - BWPort7
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
+# CHECK-NEXT:  -      -     94.67  58.67  85.17  85.17  13.00  235.67 2.00   1.67
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    	Instructions:
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   1.00    -      -     0.33   	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   1.00   1.00   1.00   3.25   0.25    -     	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     0.25   0.25   1.00   1.00   1.00   5.25   0.25    -     	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -     0.25   0.25   1.00   1.00   1.00   3.25   0.25    -     	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     0.25   0.25   4.00   4.00   1.00   4.25   0.25    -     	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     0.25   0.25   1.00   1.00   1.00   3.25   0.25    -     	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     0.25   0.25   2.00   2.00   1.00   3.25   0.25    -     	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     0.25   0.25   1.00   1.00   1.00   5.25   0.25    -     	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     0.25   0.25   1.00   1.00   1.00   5.25   0.25    -     	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     2.00    -      -     	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -     2.00    -      -     	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -     	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     1.33    -      -     	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     1.33    -      -     	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     1.33    -      -     	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     1.33    -      -     	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00   0.50   0.33   0.33   1.00   0.50    -     0.33   	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -     1.00   0.50   0.33   0.33   1.00   0.50    -     0.33   	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00   0.50   0.33   0.33   1.00   0.50    -     0.33   	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -     1.00   0.50   0.33   0.33   1.00   0.50    -     0.33   	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -      -      -      -     	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -      -      -      -     	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpxor	(%rax), %ymm1, %ymm2
+

Added: llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-avx2.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-avx2.s?rev=330512&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-avx2.s (added)
+++ llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-avx2.s Sat Apr 21 09:12:42 2018
@@ -0,0 +1,1077 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -instruction-tables < %s | FileCheck %s
+
+vbroadcasti128  (%rax), %ymm0
+
+vbroadcastsd    %xmm0, %ymm0
+vbroadcastss    %xmm0, %ymm0
+
+vextracti128    $1, %ymm0, %xmm2
+vextracti128    $1, %ymm0, (%rax)
+
+vgatherdpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdpd      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vgatherdps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdps      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqpd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqps      %xmm0, (%rax,%ymm1,2), %xmm2
+
+vinserti128     $1, %xmm0, %ymm1, %ymm2
+vinserti128     $1, (%rax), %ymm1, %ymm2
+
+vmovntdqa       (%rax), %ymm0
+
+vmpsadbw        $1, %ymm0, %ymm1, %ymm2
+vmpsadbw        $1, (%rax), %ymm1, %ymm2
+
+vpabsb          %ymm0, %ymm2
+vpabsb          (%rax), %ymm2
+
+vpabsd          %ymm0, %ymm2
+vpabsd          (%rax), %ymm2
+
+vpabsw          %ymm0, %ymm2
+vpabsw          (%rax), %ymm2
+
+vpackssdw       %ymm0, %ymm1, %ymm2
+vpackssdw       (%rax), %ymm1, %ymm2
+
+vpacksswb       %ymm0, %ymm1, %ymm2
+vpacksswb       (%rax), %ymm1, %ymm2
+
+vpackusdw       %ymm0, %ymm1, %ymm2
+vpackusdw       (%rax), %ymm1, %ymm2
+
+vpackuswb       %ymm0, %ymm1, %ymm2
+vpackuswb       (%rax), %ymm1, %ymm2
+
+vpaddb          %ymm0, %ymm1, %ymm2
+vpaddb          (%rax), %ymm1, %ymm2
+
+vpaddd          %ymm0, %ymm1, %ymm2
+vpaddd          (%rax), %ymm1, %ymm2
+
+vpaddq          %ymm0, %ymm1, %ymm2
+vpaddq          (%rax), %ymm1, %ymm2
+
+vpaddsb         %ymm0, %ymm1, %ymm2
+vpaddsb         (%rax), %ymm1, %ymm2
+
+vpaddsw         %ymm0, %ymm1, %ymm2
+vpaddsw         (%rax), %ymm1, %ymm2
+
+vpaddusb        %ymm0, %ymm1, %ymm2
+vpaddusb        (%rax), %ymm1, %ymm2
+
+vpaddusw        %ymm0, %ymm1, %ymm2
+vpaddusw        (%rax), %ymm1, %ymm2
+
+vpaddw          %ymm0, %ymm1, %ymm2
+vpaddw          (%rax), %ymm1, %ymm2
+
+vpalignr        $1, %ymm0, %ymm1, %ymm2
+vpalignr        $1, (%rax), %ymm1, %ymm2
+
+vpand           %ymm0, %ymm1, %ymm2
+vpand           (%rax), %ymm1, %ymm2
+
+vpandn          %ymm0, %ymm1, %ymm2
+vpandn          (%rax), %ymm1, %ymm2
+
+vpavgb          %ymm0, %ymm1, %ymm2
+vpavgb          (%rax), %ymm1, %ymm2
+
+vpavgw          %ymm0, %ymm1, %ymm2
+vpavgw          (%rax), %ymm1, %ymm2
+
+vpblendd        $11, %xmm0, %xmm1, %xmm2
+vpblendd        $11, (%rax), %xmm1, %xmm2
+
+vpblendd        $11, %ymm0, %ymm1, %ymm2
+vpblendd        $11, (%rax), %ymm1, %ymm2
+
+vpblendvb       %ymm3, %ymm0, %ymm1, %ymm2
+vpblendvb       %ymm3, (%rax), %ymm1, %ymm2
+
+vpblendw        $11, %ymm0, %ymm1, %ymm2
+vpblendw        $11, (%rax), %ymm1, %ymm2
+
+vpbroadcastb    %xmm0, %xmm0
+vpbroadcastb    (%rax), %xmm0
+
+vpbroadcastb    %xmm0, %ymm0
+vpbroadcastb    (%rax), %ymm0
+
+vpbroadcastd    %xmm0, %xmm0
+vpbroadcastd    (%rax), %xmm0
+
+vpbroadcastd    %xmm0, %ymm0
+vpbroadcastd    (%rax), %ymm0
+
+vpbroadcastq    %xmm0, %xmm0
+vpbroadcastq    (%rax), %xmm0
+
+vpbroadcastq    %xmm0, %ymm0
+vpbroadcastq    (%rax), %ymm0
+
+vpbroadcastw    %xmm0, %xmm0
+vpbroadcastw    (%rax), %xmm0
+
+vpbroadcastw    %xmm0, %ymm0
+vpbroadcastw    (%rax), %ymm0
+
+vpcmpeqb        %ymm0, %ymm1, %ymm2
+vpcmpeqb        (%rax), %ymm1, %ymm2
+
+vpcmpeqd        %ymm0, %ymm1, %ymm2
+vpcmpeqd        (%rax), %ymm1, %ymm2
+
+vpcmpeqq        %ymm0, %ymm1, %ymm2
+vpcmpeqq        (%rax), %ymm1, %ymm2
+
+vpcmpeqw        %ymm0, %ymm1, %ymm2
+vpcmpeqw        (%rax), %ymm1, %ymm2
+
+vpcmpgtb        %ymm0, %ymm1, %ymm2
+vpcmpgtb        (%rax), %ymm1, %ymm2
+
+vpcmpgtd        %ymm0, %ymm1, %ymm2
+vpcmpgtd        (%rax), %ymm1, %ymm2
+
+vpcmpgtq        %ymm0, %ymm1, %ymm2
+vpcmpgtq        (%rax), %ymm1, %ymm2
+
+vpcmpgtw        %ymm0, %ymm1, %ymm2
+vpcmpgtw        (%rax), %ymm1, %ymm2
+
+vpermd          %ymm0, %ymm1, %ymm2
+vpermd          (%rax), %ymm1, %ymm2
+
+vpermpd         $1, %ymm0, %ymm2
+vpermpd         $1, (%rax), %ymm2
+
+vpermps         %ymm0, %ymm1, %ymm2
+vpermps         (%rax), %ymm1, %ymm2
+
+vpermq          $1, %ymm0, %ymm2
+vpermq          $1, (%rax), %ymm2
+
+vpgatherdd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherdq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdq      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vpgatherqd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherqq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vphaddd         %ymm0, %ymm1, %ymm2
+vphaddd         (%rax), %ymm1, %ymm2
+
+vphaddsw        %ymm0, %ymm1, %ymm2
+vphaddsw        (%rax), %ymm1, %ymm2
+
+vphaddw         %ymm0, %ymm1, %ymm2
+vphaddw         (%rax), %ymm1, %ymm2
+
+vphsubd         %ymm0, %ymm1, %ymm2
+vphsubd         (%rax), %ymm1, %ymm2
+
+vphsubsw        %ymm0, %ymm1, %ymm2
+vphsubsw        (%rax), %ymm1, %ymm2
+
+vphsubw         %ymm0, %ymm1, %ymm2
+vphsubw         (%rax), %ymm1, %ymm2
+
+vpmaddubsw      %ymm0, %ymm1, %ymm2
+vpmaddubsw      (%rax), %ymm1, %ymm2
+
+vpmaddwd        %ymm0, %ymm1, %ymm2
+vpmaddwd        (%rax), %ymm1, %ymm2
+
+vpmaskmovd      (%rax), %xmm0, %xmm2
+vpmaskmovd      (%rax), %ymm0, %ymm2
+
+vpmaskmovd      %xmm0, %xmm1, (%rax)
+vpmaskmovd      %ymm0, %ymm1, (%rax)
+
+vpmaskmovq      (%rax), %xmm0, %xmm2
+vpmaskmovq      (%rax), %ymm0, %ymm2
+
+vpmaskmovq      %xmm0, %xmm1, (%rax)
+vpmaskmovq      %ymm0, %ymm1, (%rax)
+
+vpmaxsb         %ymm0, %ymm1, %ymm2
+vpmaxsb         (%rax), %ymm1, %ymm2
+
+vpmaxsd         %ymm0, %ymm1, %ymm2
+vpmaxsd         (%rax), %ymm1, %ymm2
+
+vpmaxsw         %ymm0, %ymm1, %ymm2
+vpmaxsw         (%rax), %ymm1, %ymm2
+
+vpmaxub         %ymm0, %ymm1, %ymm2
+vpmaxub         (%rax), %ymm1, %ymm2
+
+vpmaxud         %ymm0, %ymm1, %ymm2
+vpmaxud         (%rax), %ymm1, %ymm2
+
+vpmaxuw         %ymm0, %ymm1, %ymm2
+vpmaxuw         (%rax), %ymm1, %ymm2
+
+vpminsb         %ymm0, %ymm1, %ymm2
+vpminsb         (%rax), %ymm1, %ymm2
+
+vpminsd         %ymm0, %ymm1, %ymm2
+vpminsd         (%rax), %ymm1, %ymm2
+
+vpminsw         %ymm0, %ymm1, %ymm2
+vpminsw         (%rax), %ymm1, %ymm2
+
+vpminub         %ymm0, %ymm1, %ymm2
+vpminub         (%rax), %ymm1, %ymm2
+
+vpminud         %ymm0, %ymm1, %ymm2
+vpminud         (%rax), %ymm1, %ymm2
+
+vpminuw         %ymm0, %ymm1, %ymm2
+vpminuw         (%rax), %ymm1, %ymm2
+
+vpmovmskb       %ymm0, %rcx
+
+vpmovsxbd       %xmm0, %ymm2
+vpmovsxbd       (%rax), %ymm2
+
+vpmovsxbq       %xmm0, %ymm2
+vpmovsxbq       (%rax), %ymm2
+
+vpmovsxbw       %xmm0, %ymm2
+vpmovsxbw       (%rax), %ymm2
+
+vpmovsxdq       %xmm0, %ymm2
+vpmovsxdq       (%rax), %ymm2
+
+vpmovsxwd       %xmm0, %ymm2
+vpmovsxwd       (%rax), %ymm2
+
+vpmovsxwq       %xmm0, %ymm2
+vpmovsxwq       (%rax), %ymm2
+
+vpmovzxbd       %xmm0, %ymm2
+vpmovzxbd       (%rax), %ymm2
+
+vpmovzxbq       %xmm0, %ymm2
+vpmovzxbq       (%rax), %ymm2
+
+vpmovzxbw       %xmm0, %ymm2
+vpmovzxbw       (%rax), %ymm2
+
+vpmovzxdq       %xmm0, %ymm2
+vpmovzxdq       (%rax), %ymm2
+
+vpmovzxwd       %xmm0, %ymm2
+vpmovzxwd       (%rax), %ymm2
+
+vpmovzxwq       %xmm0, %ymm2
+vpmovzxwq       (%rax), %ymm2
+
+vpmuldq         %ymm0, %ymm1, %ymm2
+vpmuldq         (%rax), %ymm1, %ymm2
+
+vpmulhrsw       %ymm0, %ymm1, %ymm2
+vpmulhrsw       (%rax), %ymm1, %ymm2
+
+vpmulhuw        %ymm0, %ymm1, %ymm2
+vpmulhuw        (%rax), %ymm1, %ymm2
+
+vpmulhw         %ymm0, %ymm1, %ymm2
+vpmulhw         (%rax), %ymm1, %ymm2
+
+vpmulld         %ymm0, %ymm1, %ymm2
+vpmulld         (%rax), %ymm1, %ymm2
+
+vpmullw         %ymm0, %ymm1, %ymm2
+vpmullw         (%rax), %ymm1, %ymm2
+
+vpmuludq        %ymm0, %ymm1, %ymm2
+vpmuludq        (%rax), %ymm1, %ymm2
+
+vpor            %ymm0, %ymm1, %ymm2
+vpor            (%rax), %ymm1, %ymm2
+
+vpsadbw         %ymm0, %ymm1, %ymm2
+vpsadbw         (%rax), %ymm1, %ymm2
+
+vpshufb         %ymm0, %ymm1, %ymm2
+vpshufb         (%rax), %ymm1, %ymm2
+
+vpshufd         $1, %ymm0, %ymm2
+vpshufd         $1, (%rax), %ymm2
+
+vpshufhw        $1, %ymm0, %ymm2
+vpshufhw        $1, (%rax), %ymm2
+
+vpshuflw        $1, %ymm0, %ymm2
+vpshuflw        $1, (%rax), %ymm2
+
+vpsignb         %ymm0, %ymm1, %ymm2
+vpsignb         (%rax), %ymm1, %ymm2
+
+vpsignd         %ymm0, %ymm1, %ymm2
+vpsignd         (%rax), %ymm1, %ymm2
+
+vpsignw         %ymm0, %ymm1, %ymm2
+vpsignw         (%rax), %ymm1, %ymm2
+
+vpslld          $1, %ymm0, %ymm2
+vpslld          %xmm0, %ymm1, %ymm2
+vpslld          (%rax), %ymm1, %ymm2
+
+vpslldq         $1, %ymm1, %ymm2
+
+vpsllq          $1, %ymm0, %ymm2
+vpsllq          %xmm0, %ymm1, %ymm2
+vpsllq          (%rax), %ymm1, %ymm2
+
+vpsllvd         %xmm0, %xmm1, %xmm2
+vpsllvd         (%rax), %xmm1, %xmm2
+
+vpsllvd         %ymm0, %ymm1, %ymm2
+vpsllvd         (%rax), %ymm1, %ymm2
+
+vpsllvq         %xmm0, %xmm1, %xmm2
+vpsllvq         (%rax), %xmm1, %xmm2
+
+vpsllvq         %ymm0, %ymm1, %ymm2
+vpsllvq         (%rax), %ymm1, %ymm2
+
+vpsllw          $1, %ymm0, %ymm2
+vpsllw          %xmm0, %ymm1, %ymm2
+vpsllw          (%rax), %ymm1, %ymm2
+
+vpsrad          $1, %ymm0, %ymm2
+vpsrad          %xmm0, %ymm1, %ymm2
+vpsrad          (%rax), %ymm1, %ymm2
+
+vpsravd         %xmm0, %xmm1, %xmm2
+vpsravd         (%rax), %xmm1, %xmm2
+
+vpsravd         %ymm0, %ymm1, %ymm2
+vpsravd         (%rax), %ymm1, %ymm2
+
+vpsraw          $1, %ymm0, %ymm2
+vpsraw          %xmm0, %ymm1, %ymm2
+vpsraw          (%rax), %ymm1, %ymm2
+
+vpsrld          $1, %ymm0, %ymm2
+vpsrld          %xmm0, %ymm1, %ymm2
+vpsrld          (%rax), %ymm1, %ymm2
+
+vpsrldq         $1, %ymm1, %ymm2
+
+vpsrlq          $1, %ymm0, %ymm2
+vpsrlq          %xmm0, %ymm1, %ymm2
+vpsrlq          (%rax), %ymm1, %ymm2
+
+vpsrlvd         %xmm0, %xmm1, %xmm2
+vpsrlvd         (%rax), %xmm1, %xmm2
+
+vpsrlvd         %ymm0, %ymm1, %ymm2
+vpsrlvd         (%rax), %ymm1, %ymm2
+
+vpsrlvq         %xmm0, %xmm1, %xmm2
+vpsrlvq         (%rax), %xmm1, %xmm2
+
+vpsrlvq         %ymm0, %ymm1, %ymm2
+vpsrlvq         (%rax), %ymm1, %ymm2
+
+vpsrlw          $1, %ymm0, %ymm2
+vpsrlw          %xmm0, %ymm1, %ymm2
+vpsrlw          (%rax), %ymm1, %ymm2
+
+vpsubb          %ymm0, %ymm1, %ymm2
+vpsubb          (%rax), %ymm1, %ymm2
+
+vpsubd          %ymm0, %ymm1, %ymm2
+vpsubd          (%rax), %ymm1, %ymm2
+
+vpsubq          %ymm0, %ymm1, %ymm2
+vpsubq          (%rax), %ymm1, %ymm2
+
+vpsubsb         %ymm0, %ymm1, %ymm2
+vpsubsb         (%rax), %ymm1, %ymm2
+
+vpsubsw         %ymm0, %ymm1, %ymm2
+vpsubsw         (%rax), %ymm1, %ymm2
+
+vpsubusb        %ymm0, %ymm1, %ymm2
+vpsubusb        (%rax), %ymm1, %ymm2
+
+vpsubusw        %ymm0, %ymm1, %ymm2
+vpsubusw        (%rax), %ymm1, %ymm2
+
+vpsubw          %ymm0, %ymm1, %ymm2
+vpsubw          (%rax), %ymm1, %ymm2
+
+vpunpckhbw      %ymm0, %ymm1, %ymm2
+vpunpckhbw      (%rax), %ymm1, %ymm2
+
+vpunpckhdq      %ymm0, %ymm1, %ymm2
+vpunpckhdq      (%rax), %ymm1, %ymm2
+
+vpunpckhqdq     %ymm0, %ymm1, %ymm2
+vpunpckhqdq     (%rax), %ymm1, %ymm2
+
+vpunpckhwd      %ymm0, %ymm1, %ymm2
+vpunpckhwd      (%rax), %ymm1, %ymm2
+
+vpunpcklbw      %ymm0, %ymm1, %ymm2
+vpunpcklbw      (%rax), %ymm1, %ymm2
+
+vpunpckldq      %ymm0, %ymm1, %ymm2
+vpunpckldq      (%rax), %ymm1, %ymm2
+
+vpunpcklqdq     %ymm0, %ymm1, %ymm2
+vpunpcklqdq     (%rax), %ymm1, %ymm2
+
+vpunpcklwd      %ymm0, %ymm1, %ymm2
+vpunpcklwd      (%rax), %ymm1, %ymm2
+
+vpxor           %ymm0, %ymm1, %ymm2
+vpxor           (%rax), %ymm1, %ymm2
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]	Instructions:
+# CHECK-NEXT:  1      7     0.50    *               	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT:  2      1     1.00           *        	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  12     26    2.67    *               	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  20     27    4.00    *               	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  15     25    3.67    *               	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  34     27    6.50    *               	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  14     23    3.33    *               	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  22     24    5.00    *               	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  15     25    3.67    *               	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  15     28    3.67    *               	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  1      3     1.00                    	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      7     0.50    *               	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  3      7     2.00                    	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      14    2.00    *               	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.33                    	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      2     2.00                    	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      9     2.00    *               	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT:  3      9     1.00    *               	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT:  3      9     1.00    *               	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  1      1     1.00                    	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT:  1      6     0.50    *               	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT:  1      7     0.50    *               	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  1      1     1.00                    	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT:  1      6     0.50    *               	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT:  1      7     0.50    *               	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT:  3      9     1.00    *               	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT:  3      9     1.00    *               	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  12     26    2.67    *               	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  34     27    6.50    *               	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  12     26    2.67    *               	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  20     27    4.00    *               	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  22     25    5.00    *               	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  22     24    5.00    *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  14     23    3.33    *               	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  22     24    5.00    *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      8     2.00    *               	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  3      9     2.00    *               	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  4      5     1.00    *      *        	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  4      5     1.00    *      *        	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  3      8     2.00    *               	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  3      9     2.00    *               	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  4      5     1.00    *      *        	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  4      5     1.00    *      *        	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      10    2.00                    	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      17    2.00    *               	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     1.00                    	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    1.00    *               	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  4      9     2.00    *               	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  3      3     2.00                    	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     1.00                    	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  4      9     2.00    *               	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  3      3     2.00                    	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  4      9     2.00    *               	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  3      3     2.00                    	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     1.00    *               	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpxor	(%rax), %ymm1, %ymm2
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0] - HWDivider
+# CHECK-NEXT: [1] - HWFPDivider
+# CHECK-NEXT: [2] - HWPort0
+# CHECK-NEXT: [3] - HWPort1
+# CHECK-NEXT: [4] - HWPort2
+# CHECK-NEXT: [5] - HWPort3
+# CHECK-NEXT: [6] - HWPort4
+# CHECK-NEXT: [7] - HWPort5
+# CHECK-NEXT: [8] - HWPort6
+# CHECK-NEXT: [9] - HWPort7
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
+# CHECK-NEXT:  -      -     202.67 89.67  97.17  97.17  5.00   280.67 28.00  1.67
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    	Instructions:
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   1.00    -      -     0.33   	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  -      -     4.00   1.50   1.00   1.00    -     3.50   1.00    -     	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     6.67   2.17   2.00   2.00    -     5.17   2.00    -     	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -     5.33   1.83   1.00   1.00    -     4.83   1.00    -     	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     12.00  3.50   4.00   4.00    -     6.50   4.00    -     	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     5.00   1.50   1.00   1.00    -     4.50   1.00    -     	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     8.67   2.17   2.00   2.00    -     5.17   2.00    -     	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     5.33   1.83   1.00   1.00    -     4.83   1.00    -     	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     5.33   1.83   1.00   1.00    -     4.83   1.00    -     	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     2.00    -      -     	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -     2.00    -      -     	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -     	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     1.33    -      -     	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     1.33    -      -     	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     1.33    -      -     	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     1.33    -      -     	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -     4.00   1.50   1.00   1.00    -     3.50   1.00    -     	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     12.00  3.50   4.00   4.00    -     6.50   4.00    -     	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     4.00   1.50   1.00   1.00    -     3.50   1.00    -     	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     6.67   2.17   2.00   2.00    -     5.17   2.00    -     	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -     8.67   2.17   2.00   2.00    -     5.17   2.00    -     	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     8.67   2.17   2.00   2.00    -     5.17   2.00    -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     5.00   1.50   1.00   1.00    -     4.50   1.00    -     	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     8.67   2.17   2.00   2.00    -     5.17   2.00    -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     2.50    -      -     	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     2.50    -      -     	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00   0.50   0.33   0.33   1.00   0.50    -     0.33   	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -     1.00   0.50   0.33   0.33   1.00   0.50    -     0.33   	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00   0.50   0.33   0.33   1.00   0.50    -     0.33   	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -     1.00   0.50   0.33   0.33   1.00   0.50    -     0.33   	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -      -      -      -     	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -      -      -      -     	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     2.00    -      -      -      -     1.00    -      -     	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     2.00    -     0.50   0.50    -     1.00    -      -     	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50    -      -      -     0.50    -      -     	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -     0.50   0.50   0.50    -     0.50    -      -     	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpxor	(%rax), %ymm1, %ymm2
+

Added: llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-avx2.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-avx2.s?rev=330512&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-avx2.s (added)
+++ llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-avx2.s Sat Apr 21 09:12:42 2018
@@ -0,0 +1,1077 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -instruction-tables < %s | FileCheck %s
+
+vbroadcasti128  (%rax), %ymm0
+
+vbroadcastsd    %xmm0, %ymm0
+vbroadcastss    %xmm0, %ymm0
+
+vextracti128    $1, %ymm0, %xmm2
+vextracti128    $1, %ymm0, (%rax)
+
+vgatherdpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdpd      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vgatherdps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdps      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqpd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqps      %xmm0, (%rax,%ymm1,2), %xmm2
+
+vinserti128     $1, %xmm0, %ymm1, %ymm2
+vinserti128     $1, (%rax), %ymm1, %ymm2
+
+vmovntdqa       (%rax), %ymm0
+
+vmpsadbw        $1, %ymm0, %ymm1, %ymm2
+vmpsadbw        $1, (%rax), %ymm1, %ymm2
+
+vpabsb          %ymm0, %ymm2
+vpabsb          (%rax), %ymm2
+
+vpabsd          %ymm0, %ymm2
+vpabsd          (%rax), %ymm2
+
+vpabsw          %ymm0, %ymm2
+vpabsw          (%rax), %ymm2
+
+vpackssdw       %ymm0, %ymm1, %ymm2
+vpackssdw       (%rax), %ymm1, %ymm2
+
+vpacksswb       %ymm0, %ymm1, %ymm2
+vpacksswb       (%rax), %ymm1, %ymm2
+
+vpackusdw       %ymm0, %ymm1, %ymm2
+vpackusdw       (%rax), %ymm1, %ymm2
+
+vpackuswb       %ymm0, %ymm1, %ymm2
+vpackuswb       (%rax), %ymm1, %ymm2
+
+vpaddb          %ymm0, %ymm1, %ymm2
+vpaddb          (%rax), %ymm1, %ymm2
+
+vpaddd          %ymm0, %ymm1, %ymm2
+vpaddd          (%rax), %ymm1, %ymm2
+
+vpaddq          %ymm0, %ymm1, %ymm2
+vpaddq          (%rax), %ymm1, %ymm2
+
+vpaddsb         %ymm0, %ymm1, %ymm2
+vpaddsb         (%rax), %ymm1, %ymm2
+
+vpaddsw         %ymm0, %ymm1, %ymm2
+vpaddsw         (%rax), %ymm1, %ymm2
+
+vpaddusb        %ymm0, %ymm1, %ymm2
+vpaddusb        (%rax), %ymm1, %ymm2
+
+vpaddusw        %ymm0, %ymm1, %ymm2
+vpaddusw        (%rax), %ymm1, %ymm2
+
+vpaddw          %ymm0, %ymm1, %ymm2
+vpaddw          (%rax), %ymm1, %ymm2
+
+vpalignr        $1, %ymm0, %ymm1, %ymm2
+vpalignr        $1, (%rax), %ymm1, %ymm2
+
+vpand           %ymm0, %ymm1, %ymm2
+vpand           (%rax), %ymm1, %ymm2
+
+vpandn          %ymm0, %ymm1, %ymm2
+vpandn          (%rax), %ymm1, %ymm2
+
+vpavgb          %ymm0, %ymm1, %ymm2
+vpavgb          (%rax), %ymm1, %ymm2
+
+vpavgw          %ymm0, %ymm1, %ymm2
+vpavgw          (%rax), %ymm1, %ymm2
+
+vpblendd        $11, %xmm0, %xmm1, %xmm2
+vpblendd        $11, (%rax), %xmm1, %xmm2
+
+vpblendd        $11, %ymm0, %ymm1, %ymm2
+vpblendd        $11, (%rax), %ymm1, %ymm2
+
+vpblendvb       %ymm3, %ymm0, %ymm1, %ymm2
+vpblendvb       %ymm3, (%rax), %ymm1, %ymm2
+
+vpblendw        $11, %ymm0, %ymm1, %ymm2
+vpblendw        $11, (%rax), %ymm1, %ymm2
+
+vpbroadcastb    %xmm0, %xmm0
+vpbroadcastb    (%rax), %xmm0
+
+vpbroadcastb    %xmm0, %ymm0
+vpbroadcastb    (%rax), %ymm0
+
+vpbroadcastd    %xmm0, %xmm0
+vpbroadcastd    (%rax), %xmm0
+
+vpbroadcastd    %xmm0, %ymm0
+vpbroadcastd    (%rax), %ymm0
+
+vpbroadcastq    %xmm0, %xmm0
+vpbroadcastq    (%rax), %xmm0
+
+vpbroadcastq    %xmm0, %ymm0
+vpbroadcastq    (%rax), %ymm0
+
+vpbroadcastw    %xmm0, %xmm0
+vpbroadcastw    (%rax), %xmm0
+
+vpbroadcastw    %xmm0, %ymm0
+vpbroadcastw    (%rax), %ymm0
+
+vpcmpeqb        %ymm0, %ymm1, %ymm2
+vpcmpeqb        (%rax), %ymm1, %ymm2
+
+vpcmpeqd        %ymm0, %ymm1, %ymm2
+vpcmpeqd        (%rax), %ymm1, %ymm2
+
+vpcmpeqq        %ymm0, %ymm1, %ymm2
+vpcmpeqq        (%rax), %ymm1, %ymm2
+
+vpcmpeqw        %ymm0, %ymm1, %ymm2
+vpcmpeqw        (%rax), %ymm1, %ymm2
+
+vpcmpgtb        %ymm0, %ymm1, %ymm2
+vpcmpgtb        (%rax), %ymm1, %ymm2
+
+vpcmpgtd        %ymm0, %ymm1, %ymm2
+vpcmpgtd        (%rax), %ymm1, %ymm2
+
+vpcmpgtq        %ymm0, %ymm1, %ymm2
+vpcmpgtq        (%rax), %ymm1, %ymm2
+
+vpcmpgtw        %ymm0, %ymm1, %ymm2
+vpcmpgtw        (%rax), %ymm1, %ymm2
+
+vpermd          %ymm0, %ymm1, %ymm2
+vpermd          (%rax), %ymm1, %ymm2
+
+vpermpd         $1, %ymm0, %ymm2
+vpermpd         $1, (%rax), %ymm2
+
+vpermps         %ymm0, %ymm1, %ymm2
+vpermps         (%rax), %ymm1, %ymm2
+
+vpermq          $1, %ymm0, %ymm2
+vpermq          $1, (%rax), %ymm2
+
+vpgatherdd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherdq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdq      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vpgatherqd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherqq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vphaddd         %ymm0, %ymm1, %ymm2
+vphaddd         (%rax), %ymm1, %ymm2
+
+vphaddsw        %ymm0, %ymm1, %ymm2
+vphaddsw        (%rax), %ymm1, %ymm2
+
+vphaddw         %ymm0, %ymm1, %ymm2
+vphaddw         (%rax), %ymm1, %ymm2
+
+vphsubd         %ymm0, %ymm1, %ymm2
+vphsubd         (%rax), %ymm1, %ymm2
+
+vphsubsw        %ymm0, %ymm1, %ymm2
+vphsubsw        (%rax), %ymm1, %ymm2
+
+vphsubw         %ymm0, %ymm1, %ymm2
+vphsubw         (%rax), %ymm1, %ymm2
+
+vpmaddubsw      %ymm0, %ymm1, %ymm2
+vpmaddubsw      (%rax), %ymm1, %ymm2
+
+vpmaddwd        %ymm0, %ymm1, %ymm2
+vpmaddwd        (%rax), %ymm1, %ymm2
+
+vpmaskmovd      (%rax), %xmm0, %xmm2
+vpmaskmovd      (%rax), %ymm0, %ymm2
+
+vpmaskmovd      %xmm0, %xmm1, (%rax)
+vpmaskmovd      %ymm0, %ymm1, (%rax)
+
+vpmaskmovq      (%rax), %xmm0, %xmm2
+vpmaskmovq      (%rax), %ymm0, %ymm2
+
+vpmaskmovq      %xmm0, %xmm1, (%rax)
+vpmaskmovq      %ymm0, %ymm1, (%rax)
+
+vpmaxsb         %ymm0, %ymm1, %ymm2
+vpmaxsb         (%rax), %ymm1, %ymm2
+
+vpmaxsd         %ymm0, %ymm1, %ymm2
+vpmaxsd         (%rax), %ymm1, %ymm2
+
+vpmaxsw         %ymm0, %ymm1, %ymm2
+vpmaxsw         (%rax), %ymm1, %ymm2
+
+vpmaxub         %ymm0, %ymm1, %ymm2
+vpmaxub         (%rax), %ymm1, %ymm2
+
+vpmaxud         %ymm0, %ymm1, %ymm2
+vpmaxud         (%rax), %ymm1, %ymm2
+
+vpmaxuw         %ymm0, %ymm1, %ymm2
+vpmaxuw         (%rax), %ymm1, %ymm2
+
+vpminsb         %ymm0, %ymm1, %ymm2
+vpminsb         (%rax), %ymm1, %ymm2
+
+vpminsd         %ymm0, %ymm1, %ymm2
+vpminsd         (%rax), %ymm1, %ymm2
+
+vpminsw         %ymm0, %ymm1, %ymm2
+vpminsw         (%rax), %ymm1, %ymm2
+
+vpminub         %ymm0, %ymm1, %ymm2
+vpminub         (%rax), %ymm1, %ymm2
+
+vpminud         %ymm0, %ymm1, %ymm2
+vpminud         (%rax), %ymm1, %ymm2
+
+vpminuw         %ymm0, %ymm1, %ymm2
+vpminuw         (%rax), %ymm1, %ymm2
+
+vpmovmskb       %ymm0, %rcx
+
+vpmovsxbd       %xmm0, %ymm2
+vpmovsxbd       (%rax), %ymm2
+
+vpmovsxbq       %xmm0, %ymm2
+vpmovsxbq       (%rax), %ymm2
+
+vpmovsxbw       %xmm0, %ymm2
+vpmovsxbw       (%rax), %ymm2
+
+vpmovsxdq       %xmm0, %ymm2
+vpmovsxdq       (%rax), %ymm2
+
+vpmovsxwd       %xmm0, %ymm2
+vpmovsxwd       (%rax), %ymm2
+
+vpmovsxwq       %xmm0, %ymm2
+vpmovsxwq       (%rax), %ymm2
+
+vpmovzxbd       %xmm0, %ymm2
+vpmovzxbd       (%rax), %ymm2
+
+vpmovzxbq       %xmm0, %ymm2
+vpmovzxbq       (%rax), %ymm2
+
+vpmovzxbw       %xmm0, %ymm2
+vpmovzxbw       (%rax), %ymm2
+
+vpmovzxdq       %xmm0, %ymm2
+vpmovzxdq       (%rax), %ymm2
+
+vpmovzxwd       %xmm0, %ymm2
+vpmovzxwd       (%rax), %ymm2
+
+vpmovzxwq       %xmm0, %ymm2
+vpmovzxwq       (%rax), %ymm2
+
+vpmuldq         %ymm0, %ymm1, %ymm2
+vpmuldq         (%rax), %ymm1, %ymm2
+
+vpmulhrsw       %ymm0, %ymm1, %ymm2
+vpmulhrsw       (%rax), %ymm1, %ymm2
+
+vpmulhuw        %ymm0, %ymm1, %ymm2
+vpmulhuw        (%rax), %ymm1, %ymm2
+
+vpmulhw         %ymm0, %ymm1, %ymm2
+vpmulhw         (%rax), %ymm1, %ymm2
+
+vpmulld         %ymm0, %ymm1, %ymm2
+vpmulld         (%rax), %ymm1, %ymm2
+
+vpmullw         %ymm0, %ymm1, %ymm2
+vpmullw         (%rax), %ymm1, %ymm2
+
+vpmuludq        %ymm0, %ymm1, %ymm2
+vpmuludq        (%rax), %ymm1, %ymm2
+
+vpor            %ymm0, %ymm1, %ymm2
+vpor            (%rax), %ymm1, %ymm2
+
+vpsadbw         %ymm0, %ymm1, %ymm2
+vpsadbw         (%rax), %ymm1, %ymm2
+
+vpshufb         %ymm0, %ymm1, %ymm2
+vpshufb         (%rax), %ymm1, %ymm2
+
+vpshufd         $1, %ymm0, %ymm2
+vpshufd         $1, (%rax), %ymm2
+
+vpshufhw        $1, %ymm0, %ymm2
+vpshufhw        $1, (%rax), %ymm2
+
+vpshuflw        $1, %ymm0, %ymm2
+vpshuflw        $1, (%rax), %ymm2
+
+vpsignb         %ymm0, %ymm1, %ymm2
+vpsignb         (%rax), %ymm1, %ymm2
+
+vpsignd         %ymm0, %ymm1, %ymm2
+vpsignd         (%rax), %ymm1, %ymm2
+
+vpsignw         %ymm0, %ymm1, %ymm2
+vpsignw         (%rax), %ymm1, %ymm2
+
+vpslld          $1, %ymm0, %ymm2
+vpslld          %xmm0, %ymm1, %ymm2
+vpslld          (%rax), %ymm1, %ymm2
+
+vpslldq         $1, %ymm1, %ymm2
+
+vpsllq          $1, %ymm0, %ymm2
+vpsllq          %xmm0, %ymm1, %ymm2
+vpsllq          (%rax), %ymm1, %ymm2
+
+vpsllvd         %xmm0, %xmm1, %xmm2
+vpsllvd         (%rax), %xmm1, %xmm2
+
+vpsllvd         %ymm0, %ymm1, %ymm2
+vpsllvd         (%rax), %ymm1, %ymm2
+
+vpsllvq         %xmm0, %xmm1, %xmm2
+vpsllvq         (%rax), %xmm1, %xmm2
+
+vpsllvq         %ymm0, %ymm1, %ymm2
+vpsllvq         (%rax), %ymm1, %ymm2
+
+vpsllw          $1, %ymm0, %ymm2
+vpsllw          %xmm0, %ymm1, %ymm2
+vpsllw          (%rax), %ymm1, %ymm2
+
+vpsrad          $1, %ymm0, %ymm2
+vpsrad          %xmm0, %ymm1, %ymm2
+vpsrad          (%rax), %ymm1, %ymm2
+
+vpsravd         %xmm0, %xmm1, %xmm2
+vpsravd         (%rax), %xmm1, %xmm2
+
+vpsravd         %ymm0, %ymm1, %ymm2
+vpsravd         (%rax), %ymm1, %ymm2
+
+vpsraw          $1, %ymm0, %ymm2
+vpsraw          %xmm0, %ymm1, %ymm2
+vpsraw          (%rax), %ymm1, %ymm2
+
+vpsrld          $1, %ymm0, %ymm2
+vpsrld          %xmm0, %ymm1, %ymm2
+vpsrld          (%rax), %ymm1, %ymm2
+
+vpsrldq         $1, %ymm1, %ymm2
+
+vpsrlq          $1, %ymm0, %ymm2
+vpsrlq          %xmm0, %ymm1, %ymm2
+vpsrlq          (%rax), %ymm1, %ymm2
+
+vpsrlvd         %xmm0, %xmm1, %xmm2
+vpsrlvd         (%rax), %xmm1, %xmm2
+
+vpsrlvd         %ymm0, %ymm1, %ymm2
+vpsrlvd         (%rax), %ymm1, %ymm2
+
+vpsrlvq         %xmm0, %xmm1, %xmm2
+vpsrlvq         (%rax), %xmm1, %xmm2
+
+vpsrlvq         %ymm0, %ymm1, %ymm2
+vpsrlvq         (%rax), %ymm1, %ymm2
+
+vpsrlw          $1, %ymm0, %ymm2
+vpsrlw          %xmm0, %ymm1, %ymm2
+vpsrlw          (%rax), %ymm1, %ymm2
+
+vpsubb          %ymm0, %ymm1, %ymm2
+vpsubb          (%rax), %ymm1, %ymm2
+
+vpsubd          %ymm0, %ymm1, %ymm2
+vpsubd          (%rax), %ymm1, %ymm2
+
+vpsubq          %ymm0, %ymm1, %ymm2
+vpsubq          (%rax), %ymm1, %ymm2
+
+vpsubsb         %ymm0, %ymm1, %ymm2
+vpsubsb         (%rax), %ymm1, %ymm2
+
+vpsubsw         %ymm0, %ymm1, %ymm2
+vpsubsw         (%rax), %ymm1, %ymm2
+
+vpsubusb        %ymm0, %ymm1, %ymm2
+vpsubusb        (%rax), %ymm1, %ymm2
+
+vpsubusw        %ymm0, %ymm1, %ymm2
+vpsubusw        (%rax), %ymm1, %ymm2
+
+vpsubw          %ymm0, %ymm1, %ymm2
+vpsubw          (%rax), %ymm1, %ymm2
+
+vpunpckhbw      %ymm0, %ymm1, %ymm2
+vpunpckhbw      (%rax), %ymm1, %ymm2
+
+vpunpckhdq      %ymm0, %ymm1, %ymm2
+vpunpckhdq      (%rax), %ymm1, %ymm2
+
+vpunpckhqdq     %ymm0, %ymm1, %ymm2
+vpunpckhqdq     (%rax), %ymm1, %ymm2
+
+vpunpckhwd      %ymm0, %ymm1, %ymm2
+vpunpckhwd      (%rax), %ymm1, %ymm2
+
+vpunpcklbw      %ymm0, %ymm1, %ymm2
+vpunpcklbw      (%rax), %ymm1, %ymm2
+
+vpunpckldq      %ymm0, %ymm1, %ymm2
+vpunpckldq      (%rax), %ymm1, %ymm2
+
+vpunpcklqdq     %ymm0, %ymm1, %ymm2
+vpunpcklqdq     (%rax), %ymm1, %ymm2
+
+vpunpcklwd      %ymm0, %ymm1, %ymm2
+vpunpcklwd      (%rax), %ymm1, %ymm2
+
+vpxor           %ymm0, %ymm1, %ymm2
+vpxor           (%rax), %ymm1, %ymm2
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]	Instructions:
+# CHECK-NEXT:  1      7     0.50    *               	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT:  2      1     1.00           *        	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  5      22    1.00    *               	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  1      3     1.00                    	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      7     0.50    *               	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  2      4     2.00                    	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      11    2.00    *               	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.33                    	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      2     0.67                    	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      8     0.67    *               	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT:  2      7     1.00    *               	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT:  2      8     1.00    *               	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  1      1     1.00                    	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT:  1      6     0.50    *               	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT:  1      7     0.50    *               	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  1      1     1.00                    	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT:  1      6     0.50    *               	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT:  1      7     0.50    *               	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT:  2      7     1.00    *               	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT:  2      8     1.00    *               	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.50                    	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.50                    	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  2      2     1.00    *      *        	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  2      2     1.00    *      *        	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  2      7     0.50    *               	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  2      2     1.00    *      *        	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  2      2     1.00    *      *        	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      4     0.50                    	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.50                    	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.50                    	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.50                    	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00                    	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      17    1.00    *               	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.50                    	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.50                    	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpxor	(%rax), %ymm1, %ymm2
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0] - SKLDivider
+# CHECK-NEXT: [1] - SKLFPDivider
+# CHECK-NEXT: [2] - SKLPort0
+# CHECK-NEXT: [3] - SKLPort1
+# CHECK-NEXT: [4] - SKLPort2
+# CHECK-NEXT: [5] - SKLPort3
+# CHECK-NEXT: [6] - SKLPort4
+# CHECK-NEXT: [7] - SKLPort5
+# CHECK-NEXT: [8] - SKLPort6
+# CHECK-NEXT: [9] - SKLPort7
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
+# CHECK-NEXT:  -      -     110.33 89.33  85.17  85.17  1.00   162.33  -     1.67
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    	Instructions:
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   1.00    -      -     0.33   	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -     	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.67   0.67    -      -      -     0.67    -      -     	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.67   0.67   0.50   0.50    -     0.67    -      -     	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     2.33    -      -     	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     2.33    -      -     	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     2.00    -      -     	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -     2.00    -      -     	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     2.33    -      -     	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     2.33    -      -     	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     2.33    -      -     	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     2.33    -      -     	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     2.00    -      -     	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -     2.00    -      -     	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     2.33    -      -     	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     2.33    -      -     	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33    -      -      -     0.33   	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33    -      -      -     0.33   	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33    -      -      -     0.33   	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33    -      -      -     0.33   	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00   1.00    -      -      -      -      -      -     	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00   1.00   0.50   0.50    -      -      -      -     	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpxor	(%rax), %ymm1, %ymm2
+

Added: llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-avx2.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-avx2.s?rev=330512&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-avx2.s (added)
+++ llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-avx2.s Sat Apr 21 09:12:42 2018
@@ -0,0 +1,1077 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake-avx512 -instruction-tables < %s | FileCheck %s
+
+vbroadcasti128  (%rax), %ymm0
+
+vbroadcastsd    %xmm0, %ymm0
+vbroadcastss    %xmm0, %ymm0
+
+vextracti128    $1, %ymm0, %xmm2
+vextracti128    $1, %ymm0, (%rax)
+
+vgatherdpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdpd      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vgatherdps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdps      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqpd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqps      %xmm0, (%rax,%ymm1,2), %xmm2
+
+vinserti128     $1, %xmm0, %ymm1, %ymm2
+vinserti128     $1, (%rax), %ymm1, %ymm2
+
+vmovntdqa       (%rax), %ymm0
+
+vmpsadbw        $1, %ymm0, %ymm1, %ymm2
+vmpsadbw        $1, (%rax), %ymm1, %ymm2
+
+vpabsb          %ymm0, %ymm2
+vpabsb          (%rax), %ymm2
+
+vpabsd          %ymm0, %ymm2
+vpabsd          (%rax), %ymm2
+
+vpabsw          %ymm0, %ymm2
+vpabsw          (%rax), %ymm2
+
+vpackssdw       %ymm0, %ymm1, %ymm2
+vpackssdw       (%rax), %ymm1, %ymm2
+
+vpacksswb       %ymm0, %ymm1, %ymm2
+vpacksswb       (%rax), %ymm1, %ymm2
+
+vpackusdw       %ymm0, %ymm1, %ymm2
+vpackusdw       (%rax), %ymm1, %ymm2
+
+vpackuswb       %ymm0, %ymm1, %ymm2
+vpackuswb       (%rax), %ymm1, %ymm2
+
+vpaddb          %ymm0, %ymm1, %ymm2
+vpaddb          (%rax), %ymm1, %ymm2
+
+vpaddd          %ymm0, %ymm1, %ymm2
+vpaddd          (%rax), %ymm1, %ymm2
+
+vpaddq          %ymm0, %ymm1, %ymm2
+vpaddq          (%rax), %ymm1, %ymm2
+
+vpaddsb         %ymm0, %ymm1, %ymm2
+vpaddsb         (%rax), %ymm1, %ymm2
+
+vpaddsw         %ymm0, %ymm1, %ymm2
+vpaddsw         (%rax), %ymm1, %ymm2
+
+vpaddusb        %ymm0, %ymm1, %ymm2
+vpaddusb        (%rax), %ymm1, %ymm2
+
+vpaddusw        %ymm0, %ymm1, %ymm2
+vpaddusw        (%rax), %ymm1, %ymm2
+
+vpaddw          %ymm0, %ymm1, %ymm2
+vpaddw          (%rax), %ymm1, %ymm2
+
+vpalignr        $1, %ymm0, %ymm1, %ymm2
+vpalignr        $1, (%rax), %ymm1, %ymm2
+
+vpand           %ymm0, %ymm1, %ymm2
+vpand           (%rax), %ymm1, %ymm2
+
+vpandn          %ymm0, %ymm1, %ymm2
+vpandn          (%rax), %ymm1, %ymm2
+
+vpavgb          %ymm0, %ymm1, %ymm2
+vpavgb          (%rax), %ymm1, %ymm2
+
+vpavgw          %ymm0, %ymm1, %ymm2
+vpavgw          (%rax), %ymm1, %ymm2
+
+vpblendd        $11, %xmm0, %xmm1, %xmm2
+vpblendd        $11, (%rax), %xmm1, %xmm2
+
+vpblendd        $11, %ymm0, %ymm1, %ymm2
+vpblendd        $11, (%rax), %ymm1, %ymm2
+
+vpblendvb       %ymm3, %ymm0, %ymm1, %ymm2
+vpblendvb       %ymm3, (%rax), %ymm1, %ymm2
+
+vpblendw        $11, %ymm0, %ymm1, %ymm2
+vpblendw        $11, (%rax), %ymm1, %ymm2
+
+vpbroadcastb    %xmm0, %xmm0
+vpbroadcastb    (%rax), %xmm0
+
+vpbroadcastb    %xmm0, %ymm0
+vpbroadcastb    (%rax), %ymm0
+
+vpbroadcastd    %xmm0, %xmm0
+vpbroadcastd    (%rax), %xmm0
+
+vpbroadcastd    %xmm0, %ymm0
+vpbroadcastd    (%rax), %ymm0
+
+vpbroadcastq    %xmm0, %xmm0
+vpbroadcastq    (%rax), %xmm0
+
+vpbroadcastq    %xmm0, %ymm0
+vpbroadcastq    (%rax), %ymm0
+
+vpbroadcastw    %xmm0, %xmm0
+vpbroadcastw    (%rax), %xmm0
+
+vpbroadcastw    %xmm0, %ymm0
+vpbroadcastw    (%rax), %ymm0
+
+vpcmpeqb        %ymm0, %ymm1, %ymm2
+vpcmpeqb        (%rax), %ymm1, %ymm2
+
+vpcmpeqd        %ymm0, %ymm1, %ymm2
+vpcmpeqd        (%rax), %ymm1, %ymm2
+
+vpcmpeqq        %ymm0, %ymm1, %ymm2
+vpcmpeqq        (%rax), %ymm1, %ymm2
+
+vpcmpeqw        %ymm0, %ymm1, %ymm2
+vpcmpeqw        (%rax), %ymm1, %ymm2
+
+vpcmpgtb        %ymm0, %ymm1, %ymm2
+vpcmpgtb        (%rax), %ymm1, %ymm2
+
+vpcmpgtd        %ymm0, %ymm1, %ymm2
+vpcmpgtd        (%rax), %ymm1, %ymm2
+
+vpcmpgtq        %ymm0, %ymm1, %ymm2
+vpcmpgtq        (%rax), %ymm1, %ymm2
+
+vpcmpgtw        %ymm0, %ymm1, %ymm2
+vpcmpgtw        (%rax), %ymm1, %ymm2
+
+vpermd          %ymm0, %ymm1, %ymm2
+vpermd          (%rax), %ymm1, %ymm2
+
+vpermpd         $1, %ymm0, %ymm2
+vpermpd         $1, (%rax), %ymm2
+
+vpermps         %ymm0, %ymm1, %ymm2
+vpermps         (%rax), %ymm1, %ymm2
+
+vpermq          $1, %ymm0, %ymm2
+vpermq          $1, (%rax), %ymm2
+
+vpgatherdd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherdq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdq      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vpgatherqd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherqq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vphaddd         %ymm0, %ymm1, %ymm2
+vphaddd         (%rax), %ymm1, %ymm2
+
+vphaddsw        %ymm0, %ymm1, %ymm2
+vphaddsw        (%rax), %ymm1, %ymm2
+
+vphaddw         %ymm0, %ymm1, %ymm2
+vphaddw         (%rax), %ymm1, %ymm2
+
+vphsubd         %ymm0, %ymm1, %ymm2
+vphsubd         (%rax), %ymm1, %ymm2
+
+vphsubsw        %ymm0, %ymm1, %ymm2
+vphsubsw        (%rax), %ymm1, %ymm2
+
+vphsubw         %ymm0, %ymm1, %ymm2
+vphsubw         (%rax), %ymm1, %ymm2
+
+vpmaddubsw      %ymm0, %ymm1, %ymm2
+vpmaddubsw      (%rax), %ymm1, %ymm2
+
+vpmaddwd        %ymm0, %ymm1, %ymm2
+vpmaddwd        (%rax), %ymm1, %ymm2
+
+vpmaskmovd      (%rax), %xmm0, %xmm2
+vpmaskmovd      (%rax), %ymm0, %ymm2
+
+vpmaskmovd      %xmm0, %xmm1, (%rax)
+vpmaskmovd      %ymm0, %ymm1, (%rax)
+
+vpmaskmovq      (%rax), %xmm0, %xmm2
+vpmaskmovq      (%rax), %ymm0, %ymm2
+
+vpmaskmovq      %xmm0, %xmm1, (%rax)
+vpmaskmovq      %ymm0, %ymm1, (%rax)
+
+vpmaxsb         %ymm0, %ymm1, %ymm2
+vpmaxsb         (%rax), %ymm1, %ymm2
+
+vpmaxsd         %ymm0, %ymm1, %ymm2
+vpmaxsd         (%rax), %ymm1, %ymm2
+
+vpmaxsw         %ymm0, %ymm1, %ymm2
+vpmaxsw         (%rax), %ymm1, %ymm2
+
+vpmaxub         %ymm0, %ymm1, %ymm2
+vpmaxub         (%rax), %ymm1, %ymm2
+
+vpmaxud         %ymm0, %ymm1, %ymm2
+vpmaxud         (%rax), %ymm1, %ymm2
+
+vpmaxuw         %ymm0, %ymm1, %ymm2
+vpmaxuw         (%rax), %ymm1, %ymm2
+
+vpminsb         %ymm0, %ymm1, %ymm2
+vpminsb         (%rax), %ymm1, %ymm2
+
+vpminsd         %ymm0, %ymm1, %ymm2
+vpminsd         (%rax), %ymm1, %ymm2
+
+vpminsw         %ymm0, %ymm1, %ymm2
+vpminsw         (%rax), %ymm1, %ymm2
+
+vpminub         %ymm0, %ymm1, %ymm2
+vpminub         (%rax), %ymm1, %ymm2
+
+vpminud         %ymm0, %ymm1, %ymm2
+vpminud         (%rax), %ymm1, %ymm2
+
+vpminuw         %ymm0, %ymm1, %ymm2
+vpminuw         (%rax), %ymm1, %ymm2
+
+vpmovmskb       %ymm0, %rcx
+
+vpmovsxbd       %xmm0, %ymm2
+vpmovsxbd       (%rax), %ymm2
+
+vpmovsxbq       %xmm0, %ymm2
+vpmovsxbq       (%rax), %ymm2
+
+vpmovsxbw       %xmm0, %ymm2
+vpmovsxbw       (%rax), %ymm2
+
+vpmovsxdq       %xmm0, %ymm2
+vpmovsxdq       (%rax), %ymm2
+
+vpmovsxwd       %xmm0, %ymm2
+vpmovsxwd       (%rax), %ymm2
+
+vpmovsxwq       %xmm0, %ymm2
+vpmovsxwq       (%rax), %ymm2
+
+vpmovzxbd       %xmm0, %ymm2
+vpmovzxbd       (%rax), %ymm2
+
+vpmovzxbq       %xmm0, %ymm2
+vpmovzxbq       (%rax), %ymm2
+
+vpmovzxbw       %xmm0, %ymm2
+vpmovzxbw       (%rax), %ymm2
+
+vpmovzxdq       %xmm0, %ymm2
+vpmovzxdq       (%rax), %ymm2
+
+vpmovzxwd       %xmm0, %ymm2
+vpmovzxwd       (%rax), %ymm2
+
+vpmovzxwq       %xmm0, %ymm2
+vpmovzxwq       (%rax), %ymm2
+
+vpmuldq         %ymm0, %ymm1, %ymm2
+vpmuldq         (%rax), %ymm1, %ymm2
+
+vpmulhrsw       %ymm0, %ymm1, %ymm2
+vpmulhrsw       (%rax), %ymm1, %ymm2
+
+vpmulhuw        %ymm0, %ymm1, %ymm2
+vpmulhuw        (%rax), %ymm1, %ymm2
+
+vpmulhw         %ymm0, %ymm1, %ymm2
+vpmulhw         (%rax), %ymm1, %ymm2
+
+vpmulld         %ymm0, %ymm1, %ymm2
+vpmulld         (%rax), %ymm1, %ymm2
+
+vpmullw         %ymm0, %ymm1, %ymm2
+vpmullw         (%rax), %ymm1, %ymm2
+
+vpmuludq        %ymm0, %ymm1, %ymm2
+vpmuludq        (%rax), %ymm1, %ymm2
+
+vpor            %ymm0, %ymm1, %ymm2
+vpor            (%rax), %ymm1, %ymm2
+
+vpsadbw         %ymm0, %ymm1, %ymm2
+vpsadbw         (%rax), %ymm1, %ymm2
+
+vpshufb         %ymm0, %ymm1, %ymm2
+vpshufb         (%rax), %ymm1, %ymm2
+
+vpshufd         $1, %ymm0, %ymm2
+vpshufd         $1, (%rax), %ymm2
+
+vpshufhw        $1, %ymm0, %ymm2
+vpshufhw        $1, (%rax), %ymm2
+
+vpshuflw        $1, %ymm0, %ymm2
+vpshuflw        $1, (%rax), %ymm2
+
+vpsignb         %ymm0, %ymm1, %ymm2
+vpsignb         (%rax), %ymm1, %ymm2
+
+vpsignd         %ymm0, %ymm1, %ymm2
+vpsignd         (%rax), %ymm1, %ymm2
+
+vpsignw         %ymm0, %ymm1, %ymm2
+vpsignw         (%rax), %ymm1, %ymm2
+
+vpslld          $1, %ymm0, %ymm2
+vpslld          %xmm0, %ymm1, %ymm2
+vpslld          (%rax), %ymm1, %ymm2
+
+vpslldq         $1, %ymm1, %ymm2
+
+vpsllq          $1, %ymm0, %ymm2
+vpsllq          %xmm0, %ymm1, %ymm2
+vpsllq          (%rax), %ymm1, %ymm2
+
+vpsllvd         %xmm0, %xmm1, %xmm2
+vpsllvd         (%rax), %xmm1, %xmm2
+
+vpsllvd         %ymm0, %ymm1, %ymm2
+vpsllvd         (%rax), %ymm1, %ymm2
+
+vpsllvq         %xmm0, %xmm1, %xmm2
+vpsllvq         (%rax), %xmm1, %xmm2
+
+vpsllvq         %ymm0, %ymm1, %ymm2
+vpsllvq         (%rax), %ymm1, %ymm2
+
+vpsllw          $1, %ymm0, %ymm2
+vpsllw          %xmm0, %ymm1, %ymm2
+vpsllw          (%rax), %ymm1, %ymm2
+
+vpsrad          $1, %ymm0, %ymm2
+vpsrad          %xmm0, %ymm1, %ymm2
+vpsrad          (%rax), %ymm1, %ymm2
+
+vpsravd         %xmm0, %xmm1, %xmm2
+vpsravd         (%rax), %xmm1, %xmm2
+
+vpsravd         %ymm0, %ymm1, %ymm2
+vpsravd         (%rax), %ymm1, %ymm2
+
+vpsraw          $1, %ymm0, %ymm2
+vpsraw          %xmm0, %ymm1, %ymm2
+vpsraw          (%rax), %ymm1, %ymm2
+
+vpsrld          $1, %ymm0, %ymm2
+vpsrld          %xmm0, %ymm1, %ymm2
+vpsrld          (%rax), %ymm1, %ymm2
+
+vpsrldq         $1, %ymm1, %ymm2
+
+vpsrlq          $1, %ymm0, %ymm2
+vpsrlq          %xmm0, %ymm1, %ymm2
+vpsrlq          (%rax), %ymm1, %ymm2
+
+vpsrlvd         %xmm0, %xmm1, %xmm2
+vpsrlvd         (%rax), %xmm1, %xmm2
+
+vpsrlvd         %ymm0, %ymm1, %ymm2
+vpsrlvd         (%rax), %ymm1, %ymm2
+
+vpsrlvq         %xmm0, %xmm1, %xmm2
+vpsrlvq         (%rax), %xmm1, %xmm2
+
+vpsrlvq         %ymm0, %ymm1, %ymm2
+vpsrlvq         (%rax), %ymm1, %ymm2
+
+vpsrlw          $1, %ymm0, %ymm2
+vpsrlw          %xmm0, %ymm1, %ymm2
+vpsrlw          (%rax), %ymm1, %ymm2
+
+vpsubb          %ymm0, %ymm1, %ymm2
+vpsubb          (%rax), %ymm1, %ymm2
+
+vpsubd          %ymm0, %ymm1, %ymm2
+vpsubd          (%rax), %ymm1, %ymm2
+
+vpsubq          %ymm0, %ymm1, %ymm2
+vpsubq          (%rax), %ymm1, %ymm2
+
+vpsubsb         %ymm0, %ymm1, %ymm2
+vpsubsb         (%rax), %ymm1, %ymm2
+
+vpsubsw         %ymm0, %ymm1, %ymm2
+vpsubsw         (%rax), %ymm1, %ymm2
+
+vpsubusb        %ymm0, %ymm1, %ymm2
+vpsubusb        (%rax), %ymm1, %ymm2
+
+vpsubusw        %ymm0, %ymm1, %ymm2
+vpsubusw        (%rax), %ymm1, %ymm2
+
+vpsubw          %ymm0, %ymm1, %ymm2
+vpsubw          (%rax), %ymm1, %ymm2
+
+vpunpckhbw      %ymm0, %ymm1, %ymm2
+vpunpckhbw      (%rax), %ymm1, %ymm2
+
+vpunpckhdq      %ymm0, %ymm1, %ymm2
+vpunpckhdq      (%rax), %ymm1, %ymm2
+
+vpunpckhqdq     %ymm0, %ymm1, %ymm2
+vpunpckhqdq     (%rax), %ymm1, %ymm2
+
+vpunpckhwd      %ymm0, %ymm1, %ymm2
+vpunpckhwd      (%rax), %ymm1, %ymm2
+
+vpunpcklbw      %ymm0, %ymm1, %ymm2
+vpunpcklbw      (%rax), %ymm1, %ymm2
+
+vpunpckldq      %ymm0, %ymm1, %ymm2
+vpunpckldq      (%rax), %ymm1, %ymm2
+
+vpunpcklqdq     %ymm0, %ymm1, %ymm2
+vpunpcklqdq     (%rax), %ymm1, %ymm2
+
+vpunpcklwd      %ymm0, %ymm1, %ymm2
+vpunpcklwd      (%rax), %ymm1, %ymm2
+
+vpxor           %ymm0, %ymm1, %ymm2
+vpxor           (%rax), %ymm1, %ymm2
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]	Instructions:
+# CHECK-NEXT:  1      7     0.50    *               	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT:  2      1     1.00           *        	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  5      22    1.00    *               	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  1      3     1.00                    	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      7     0.50    *               	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  2      4     2.00                    	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      11    2.00    *               	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.33                    	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      2     0.67                    	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      8     0.67    *               	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT:  2      7     1.00    *               	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT:  2      8     1.00    *               	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  1      1     1.00                    	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT:  1      6     0.50    *               	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT:  1      7     0.50    *               	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  1      1     1.00                    	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT:  1      6     0.50    *               	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT:  1      7     0.50    *               	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT:  2      7     1.00    *               	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  1      3     1.00                    	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT:  2      8     1.00    *               	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  5      22    1.00    *               	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  5      25    1.00    *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  3      3     2.00                    	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  4      10    2.00    *               	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.33                    	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.33                    	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      7     0.50    *               	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  2      2     1.00    *      *        	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  2      2     1.00    *      *        	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  2      7     0.50    *               	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  2      2     1.00    *      *        	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  2      2     1.00    *      *        	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT:  2      9     1.00    *               	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      4     0.33                    	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.33                    	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.33                    	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.33                    	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      10    0.67                    	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  3      17    0.67    *               	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.33                    	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     0.33                    	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      11    0.50    *               	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      10    1.00    *               	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      7     0.50    *               	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  2      4     1.00                    	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.33                    	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     0.50    *               	vpxor	(%rax), %ymm1, %ymm2
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0] - SKXDivider
+# CHECK-NEXT: [1] - SKXFPDivider
+# CHECK-NEXT: [2] - SKXPort0
+# CHECK-NEXT: [3] - SKXPort1
+# CHECK-NEXT: [4] - SKXPort2
+# CHECK-NEXT: [5] - SKXPort3
+# CHECK-NEXT: [6] - SKXPort4
+# CHECK-NEXT: [7] - SKXPort5
+# CHECK-NEXT: [8] - SKXPort6
+# CHECK-NEXT: [9] - SKXPort7
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
+# CHECK-NEXT:  -      -     107.00 86.00  85.17  85.17  1.00   169.00  -     1.67
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    	Instructions:
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT:  -      -      -      -     0.33   0.33   1.00    -      -     0.33   	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -     	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     2.00    -      -     	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.67   0.67    -      -      -     0.67    -      -     	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.67   0.67   0.50   0.50    -     0.67    -      -     	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -      -      -      -     	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -     1.33   0.33   1.00   1.00    -     1.33    -      -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     2.33    -      -     	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     2.33    -      -     	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     2.00    -      -     	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -     2.00    -      -     	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     2.33    -      -     	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     2.33    -      -     	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     2.33    -      -     	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     2.33    -      -     	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     2.00    -      -     	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -     2.00    -      -     	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     2.33    -      -     	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     2.33    -      -     	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33    -      -      -     0.33   	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33    -      -      -     0.33   	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33    -      -      -     0.33   	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33    -      -      -     0.33   	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.67   0.67    -      -      -     0.67    -      -     	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.67   0.67   0.50   0.50    -     0.67    -      -     	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -     1.00    -      -     	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -     	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -     	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     	vpxor	(%rax), %ymm1, %ymm2
+

Added: llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-avx2.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-avx2.s?rev=330512&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-avx2.s (added)
+++ llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-avx2.s Sat Apr 21 09:12:42 2018
@@ -0,0 +1,1079 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -instruction-tables < %s | FileCheck %s
+
+vbroadcasti128  (%rax), %ymm0
+
+vbroadcastsd    %xmm0, %ymm0
+vbroadcastss    %xmm0, %ymm0
+
+vextracti128    $1, %ymm0, %xmm2
+vextracti128    $1, %ymm0, (%rax)
+
+vgatherdpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdpd      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vgatherdps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherdps      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqpd      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqpd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vgatherqps      %xmm0, (%rax,%xmm1,2), %xmm2
+vgatherqps      %xmm0, (%rax,%ymm1,2), %xmm2
+
+vinserti128     $1, %xmm0, %ymm1, %ymm2
+vinserti128     $1, (%rax), %ymm1, %ymm2
+
+vmovntdqa       (%rax), %ymm0
+
+vmpsadbw        $1, %ymm0, %ymm1, %ymm2
+vmpsadbw        $1, (%rax), %ymm1, %ymm2
+
+vpabsb          %ymm0, %ymm2
+vpabsb          (%rax), %ymm2
+
+vpabsd          %ymm0, %ymm2
+vpabsd          (%rax), %ymm2
+
+vpabsw          %ymm0, %ymm2
+vpabsw          (%rax), %ymm2
+
+vpackssdw       %ymm0, %ymm1, %ymm2
+vpackssdw       (%rax), %ymm1, %ymm2
+
+vpacksswb       %ymm0, %ymm1, %ymm2
+vpacksswb       (%rax), %ymm1, %ymm2
+
+vpackusdw       %ymm0, %ymm1, %ymm2
+vpackusdw       (%rax), %ymm1, %ymm2
+
+vpackuswb       %ymm0, %ymm1, %ymm2
+vpackuswb       (%rax), %ymm1, %ymm2
+
+vpaddb          %ymm0, %ymm1, %ymm2
+vpaddb          (%rax), %ymm1, %ymm2
+
+vpaddd          %ymm0, %ymm1, %ymm2
+vpaddd          (%rax), %ymm1, %ymm2
+
+vpaddq          %ymm0, %ymm1, %ymm2
+vpaddq          (%rax), %ymm1, %ymm2
+
+vpaddsb         %ymm0, %ymm1, %ymm2
+vpaddsb         (%rax), %ymm1, %ymm2
+
+vpaddsw         %ymm0, %ymm1, %ymm2
+vpaddsw         (%rax), %ymm1, %ymm2
+
+vpaddusb        %ymm0, %ymm1, %ymm2
+vpaddusb        (%rax), %ymm1, %ymm2
+
+vpaddusw        %ymm0, %ymm1, %ymm2
+vpaddusw        (%rax), %ymm1, %ymm2
+
+vpaddw          %ymm0, %ymm1, %ymm2
+vpaddw          (%rax), %ymm1, %ymm2
+
+vpalignr        $1, %ymm0, %ymm1, %ymm2
+vpalignr        $1, (%rax), %ymm1, %ymm2
+
+vpand           %ymm0, %ymm1, %ymm2
+vpand           (%rax), %ymm1, %ymm2
+
+vpandn          %ymm0, %ymm1, %ymm2
+vpandn          (%rax), %ymm1, %ymm2
+
+vpavgb          %ymm0, %ymm1, %ymm2
+vpavgb          (%rax), %ymm1, %ymm2
+
+vpavgw          %ymm0, %ymm1, %ymm2
+vpavgw          (%rax), %ymm1, %ymm2
+
+vpblendd        $11, %xmm0, %xmm1, %xmm2
+vpblendd        $11, (%rax), %xmm1, %xmm2
+
+vpblendd        $11, %ymm0, %ymm1, %ymm2
+vpblendd        $11, (%rax), %ymm1, %ymm2
+
+vpblendvb       %ymm3, %ymm0, %ymm1, %ymm2
+vpblendvb       %ymm3, (%rax), %ymm1, %ymm2
+
+vpblendw        $11, %ymm0, %ymm1, %ymm2
+vpblendw        $11, (%rax), %ymm1, %ymm2
+
+vpbroadcastb    %xmm0, %xmm0
+vpbroadcastb    (%rax), %xmm0
+
+vpbroadcastb    %xmm0, %ymm0
+vpbroadcastb    (%rax), %ymm0
+
+vpbroadcastd    %xmm0, %xmm0
+vpbroadcastd    (%rax), %xmm0
+
+vpbroadcastd    %xmm0, %ymm0
+vpbroadcastd    (%rax), %ymm0
+
+vpbroadcastq    %xmm0, %xmm0
+vpbroadcastq    (%rax), %xmm0
+
+vpbroadcastq    %xmm0, %ymm0
+vpbroadcastq    (%rax), %ymm0
+
+vpbroadcastw    %xmm0, %xmm0
+vpbroadcastw    (%rax), %xmm0
+
+vpbroadcastw    %xmm0, %ymm0
+vpbroadcastw    (%rax), %ymm0
+
+vpcmpeqb        %ymm0, %ymm1, %ymm2
+vpcmpeqb        (%rax), %ymm1, %ymm2
+
+vpcmpeqd        %ymm0, %ymm1, %ymm2
+vpcmpeqd        (%rax), %ymm1, %ymm2
+
+vpcmpeqq        %ymm0, %ymm1, %ymm2
+vpcmpeqq        (%rax), %ymm1, %ymm2
+
+vpcmpeqw        %ymm0, %ymm1, %ymm2
+vpcmpeqw        (%rax), %ymm1, %ymm2
+
+vpcmpgtb        %ymm0, %ymm1, %ymm2
+vpcmpgtb        (%rax), %ymm1, %ymm2
+
+vpcmpgtd        %ymm0, %ymm1, %ymm2
+vpcmpgtd        (%rax), %ymm1, %ymm2
+
+vpcmpgtq        %ymm0, %ymm1, %ymm2
+vpcmpgtq        (%rax), %ymm1, %ymm2
+
+vpcmpgtw        %ymm0, %ymm1, %ymm2
+vpcmpgtw        (%rax), %ymm1, %ymm2
+
+vpermd          %ymm0, %ymm1, %ymm2
+vpermd          (%rax), %ymm1, %ymm2
+
+vpermpd         $1, %ymm0, %ymm2
+vpermpd         $1, (%rax), %ymm2
+
+vpermps         %ymm0, %ymm1, %ymm2
+vpermps         (%rax), %ymm1, %ymm2
+
+vpermq          $1, %ymm0, %ymm2
+vpermq          $1, (%rax), %ymm2
+
+vpgatherdd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdd      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherdq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherdq      %ymm0, (%rax,%xmm1,2), %ymm2
+
+vpgatherqd      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vpgatherqq      %xmm0, (%rax,%xmm1,2), %xmm2
+vpgatherqq      %ymm0, (%rax,%ymm1,2), %ymm2
+
+vphaddd         %ymm0, %ymm1, %ymm2
+vphaddd         (%rax), %ymm1, %ymm2
+
+vphaddsw        %ymm0, %ymm1, %ymm2
+vphaddsw        (%rax), %ymm1, %ymm2
+
+vphaddw         %ymm0, %ymm1, %ymm2
+vphaddw         (%rax), %ymm1, %ymm2
+
+vphsubd         %ymm0, %ymm1, %ymm2
+vphsubd         (%rax), %ymm1, %ymm2
+
+vphsubsw        %ymm0, %ymm1, %ymm2
+vphsubsw        (%rax), %ymm1, %ymm2
+
+vphsubw         %ymm0, %ymm1, %ymm2
+vphsubw         (%rax), %ymm1, %ymm2
+
+vpmaddubsw      %ymm0, %ymm1, %ymm2
+vpmaddubsw      (%rax), %ymm1, %ymm2
+
+vpmaddwd        %ymm0, %ymm1, %ymm2
+vpmaddwd        (%rax), %ymm1, %ymm2
+
+vpmaskmovd      (%rax), %xmm0, %xmm2
+vpmaskmovd      (%rax), %ymm0, %ymm2
+
+vpmaskmovd      %xmm0, %xmm1, (%rax)
+vpmaskmovd      %ymm0, %ymm1, (%rax)
+
+vpmaskmovq      (%rax), %xmm0, %xmm2
+vpmaskmovq      (%rax), %ymm0, %ymm2
+
+vpmaskmovq      %xmm0, %xmm1, (%rax)
+vpmaskmovq      %ymm0, %ymm1, (%rax)
+
+vpmaxsb         %ymm0, %ymm1, %ymm2
+vpmaxsb         (%rax), %ymm1, %ymm2
+
+vpmaxsd         %ymm0, %ymm1, %ymm2
+vpmaxsd         (%rax), %ymm1, %ymm2
+
+vpmaxsw         %ymm0, %ymm1, %ymm2
+vpmaxsw         (%rax), %ymm1, %ymm2
+
+vpmaxub         %ymm0, %ymm1, %ymm2
+vpmaxub         (%rax), %ymm1, %ymm2
+
+vpmaxud         %ymm0, %ymm1, %ymm2
+vpmaxud         (%rax), %ymm1, %ymm2
+
+vpmaxuw         %ymm0, %ymm1, %ymm2
+vpmaxuw         (%rax), %ymm1, %ymm2
+
+vpminsb         %ymm0, %ymm1, %ymm2
+vpminsb         (%rax), %ymm1, %ymm2
+
+vpminsd         %ymm0, %ymm1, %ymm2
+vpminsd         (%rax), %ymm1, %ymm2
+
+vpminsw         %ymm0, %ymm1, %ymm2
+vpminsw         (%rax), %ymm1, %ymm2
+
+vpminub         %ymm0, %ymm1, %ymm2
+vpminub         (%rax), %ymm1, %ymm2
+
+vpminud         %ymm0, %ymm1, %ymm2
+vpminud         (%rax), %ymm1, %ymm2
+
+vpminuw         %ymm0, %ymm1, %ymm2
+vpminuw         (%rax), %ymm1, %ymm2
+
+vpmovmskb       %ymm0, %rcx
+
+vpmovsxbd       %xmm0, %ymm2
+vpmovsxbd       (%rax), %ymm2
+
+vpmovsxbq       %xmm0, %ymm2
+vpmovsxbq       (%rax), %ymm2
+
+vpmovsxbw       %xmm0, %ymm2
+vpmovsxbw       (%rax), %ymm2
+
+vpmovsxdq       %xmm0, %ymm2
+vpmovsxdq       (%rax), %ymm2
+
+vpmovsxwd       %xmm0, %ymm2
+vpmovsxwd       (%rax), %ymm2
+
+vpmovsxwq       %xmm0, %ymm2
+vpmovsxwq       (%rax), %ymm2
+
+vpmovzxbd       %xmm0, %ymm2
+vpmovzxbd       (%rax), %ymm2
+
+vpmovzxbq       %xmm0, %ymm2
+vpmovzxbq       (%rax), %ymm2
+
+vpmovzxbw       %xmm0, %ymm2
+vpmovzxbw       (%rax), %ymm2
+
+vpmovzxdq       %xmm0, %ymm2
+vpmovzxdq       (%rax), %ymm2
+
+vpmovzxwd       %xmm0, %ymm2
+vpmovzxwd       (%rax), %ymm2
+
+vpmovzxwq       %xmm0, %ymm2
+vpmovzxwq       (%rax), %ymm2
+
+vpmuldq         %ymm0, %ymm1, %ymm2
+vpmuldq         (%rax), %ymm1, %ymm2
+
+vpmulhrsw       %ymm0, %ymm1, %ymm2
+vpmulhrsw       (%rax), %ymm1, %ymm2
+
+vpmulhuw        %ymm0, %ymm1, %ymm2
+vpmulhuw        (%rax), %ymm1, %ymm2
+
+vpmulhw         %ymm0, %ymm1, %ymm2
+vpmulhw         (%rax), %ymm1, %ymm2
+
+vpmulld         %ymm0, %ymm1, %ymm2
+vpmulld         (%rax), %ymm1, %ymm2
+
+vpmullw         %ymm0, %ymm1, %ymm2
+vpmullw         (%rax), %ymm1, %ymm2
+
+vpmuludq        %ymm0, %ymm1, %ymm2
+vpmuludq        (%rax), %ymm1, %ymm2
+
+vpor            %ymm0, %ymm1, %ymm2
+vpor            (%rax), %ymm1, %ymm2
+
+vpsadbw         %ymm0, %ymm1, %ymm2
+vpsadbw         (%rax), %ymm1, %ymm2
+
+vpshufb         %ymm0, %ymm1, %ymm2
+vpshufb         (%rax), %ymm1, %ymm2
+
+vpshufd         $1, %ymm0, %ymm2
+vpshufd         $1, (%rax), %ymm2
+
+vpshufhw        $1, %ymm0, %ymm2
+vpshufhw        $1, (%rax), %ymm2
+
+vpshuflw        $1, %ymm0, %ymm2
+vpshuflw        $1, (%rax), %ymm2
+
+vpsignb         %ymm0, %ymm1, %ymm2
+vpsignb         (%rax), %ymm1, %ymm2
+
+vpsignd         %ymm0, %ymm1, %ymm2
+vpsignd         (%rax), %ymm1, %ymm2
+
+vpsignw         %ymm0, %ymm1, %ymm2
+vpsignw         (%rax), %ymm1, %ymm2
+
+vpslld          $1, %ymm0, %ymm2
+vpslld          %xmm0, %ymm1, %ymm2
+vpslld          (%rax), %ymm1, %ymm2
+
+vpslldq         $1, %ymm1, %ymm2
+
+vpsllq          $1, %ymm0, %ymm2
+vpsllq          %xmm0, %ymm1, %ymm2
+vpsllq          (%rax), %ymm1, %ymm2
+
+vpsllvd         %xmm0, %xmm1, %xmm2
+vpsllvd         (%rax), %xmm1, %xmm2
+
+vpsllvd         %ymm0, %ymm1, %ymm2
+vpsllvd         (%rax), %ymm1, %ymm2
+
+vpsllvq         %xmm0, %xmm1, %xmm2
+vpsllvq         (%rax), %xmm1, %xmm2
+
+vpsllvq         %ymm0, %ymm1, %ymm2
+vpsllvq         (%rax), %ymm1, %ymm2
+
+vpsllw          $1, %ymm0, %ymm2
+vpsllw          %xmm0, %ymm1, %ymm2
+vpsllw          (%rax), %ymm1, %ymm2
+
+vpsrad          $1, %ymm0, %ymm2
+vpsrad          %xmm0, %ymm1, %ymm2
+vpsrad          (%rax), %ymm1, %ymm2
+
+vpsravd         %xmm0, %xmm1, %xmm2
+vpsravd         (%rax), %xmm1, %xmm2
+
+vpsravd         %ymm0, %ymm1, %ymm2
+vpsravd         (%rax), %ymm1, %ymm2
+
+vpsraw          $1, %ymm0, %ymm2
+vpsraw          %xmm0, %ymm1, %ymm2
+vpsraw          (%rax), %ymm1, %ymm2
+
+vpsrld          $1, %ymm0, %ymm2
+vpsrld          %xmm0, %ymm1, %ymm2
+vpsrld          (%rax), %ymm1, %ymm2
+
+vpsrldq         $1, %ymm1, %ymm2
+
+vpsrlq          $1, %ymm0, %ymm2
+vpsrlq          %xmm0, %ymm1, %ymm2
+vpsrlq          (%rax), %ymm1, %ymm2
+
+vpsrlvd         %xmm0, %xmm1, %xmm2
+vpsrlvd         (%rax), %xmm1, %xmm2
+
+vpsrlvd         %ymm0, %ymm1, %ymm2
+vpsrlvd         (%rax), %ymm1, %ymm2
+
+vpsrlvq         %xmm0, %xmm1, %xmm2
+vpsrlvq         (%rax), %xmm1, %xmm2
+
+vpsrlvq         %ymm0, %ymm1, %ymm2
+vpsrlvq         (%rax), %ymm1, %ymm2
+
+vpsrlw          $1, %ymm0, %ymm2
+vpsrlw          %xmm0, %ymm1, %ymm2
+vpsrlw          (%rax), %ymm1, %ymm2
+
+vpsubb          %ymm0, %ymm1, %ymm2
+vpsubb          (%rax), %ymm1, %ymm2
+
+vpsubd          %ymm0, %ymm1, %ymm2
+vpsubd          (%rax), %ymm1, %ymm2
+
+vpsubq          %ymm0, %ymm1, %ymm2
+vpsubq          (%rax), %ymm1, %ymm2
+
+vpsubsb         %ymm0, %ymm1, %ymm2
+vpsubsb         (%rax), %ymm1, %ymm2
+
+vpsubsw         %ymm0, %ymm1, %ymm2
+vpsubsw         (%rax), %ymm1, %ymm2
+
+vpsubusb        %ymm0, %ymm1, %ymm2
+vpsubusb        (%rax), %ymm1, %ymm2
+
+vpsubusw        %ymm0, %ymm1, %ymm2
+vpsubusw        (%rax), %ymm1, %ymm2
+
+vpsubw          %ymm0, %ymm1, %ymm2
+vpsubw          (%rax), %ymm1, %ymm2
+
+vpunpckhbw      %ymm0, %ymm1, %ymm2
+vpunpckhbw      (%rax), %ymm1, %ymm2
+
+vpunpckhdq      %ymm0, %ymm1, %ymm2
+vpunpckhdq      (%rax), %ymm1, %ymm2
+
+vpunpckhqdq     %ymm0, %ymm1, %ymm2
+vpunpckhqdq     (%rax), %ymm1, %ymm2
+
+vpunpckhwd      %ymm0, %ymm1, %ymm2
+vpunpckhwd      (%rax), %ymm1, %ymm2
+
+vpunpcklbw      %ymm0, %ymm1, %ymm2
+vpunpcklbw      (%rax), %ymm1, %ymm2
+
+vpunpckldq      %ymm0, %ymm1, %ymm2
+vpunpckldq      (%rax), %ymm1, %ymm2
+
+vpunpcklqdq     %ymm0, %ymm1, %ymm2
+vpunpcklqdq     (%rax), %ymm1, %ymm2
+
+vpunpcklwd      %ymm0, %ymm1, %ymm2
+vpunpcklwd      (%rax), %ymm1, %ymm2
+
+vpxor           %ymm0, %ymm1, %ymm2
+vpxor           (%rax), %ymm1, %ymm2
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]	Instructions:
+# CHECK-NEXT:  1      8     0.50    *               	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  1      100   0.25                    	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  1      100   0.25                    	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  1      2     0.25                    	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT:  1      1     0.50           *        	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  1      100    -      *               	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      100    -      *               	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  1      100    -      *               	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      100    -      *               	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  1      100    -      *               	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      100    -      *               	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  1      100    -      *               	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      100    -      *               	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  1      2     0.25                    	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     0.50    *               	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  1      100    -                      	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -      *               	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  2      8     1.00    *               	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  2      1     0.50                    	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      9     1.50    *               	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     1.00                    	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     1.00    *               	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      2     0.33                    	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      9     0.50    *               	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT:  2      8     1.00    *               	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  1      2     0.25                    	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT:  2      8     2.00    *               	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  1      1     0.25                    	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT:  1      8     0.50    *               	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  1      2     0.25                    	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT:  1      8     0.50    *               	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  1      1     0.25                    	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT:  1      8     0.50    *               	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  1      2     0.25                    	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT:  1      8     0.50    *               	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  1      1     0.25                    	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT:  2      8     1.00    *               	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  1      2     0.25                    	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT:  2      8     2.00    *               	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  1      1     0.25                    	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      8     1.00    *               	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      2     0.25                    	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     0.50    *               	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      100   0.25                    	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      107   0.50    *               	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      100   0.25                    	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      107   0.50    *               	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      2     0.25                    	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      9     0.50    *               	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      100    -      *               	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      100    -      *               	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  1      100    -      *               	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      100    -      *               	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  1      100    -      *               	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      100    -      *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  1      100    -      *               	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  1      100    -      *               	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  1      100    -                      	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -      *               	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -                      	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -      *               	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -                      	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -      *               	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -                      	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -      *               	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -                      	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -      *               	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -                      	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -      *               	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     1.00                    	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      11    1.00    *               	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     1.00                    	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      11    1.00    *               	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      100    -      *               	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  1      100    -      *               	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  1      100    -      *      *        	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  1      100    -      *      *        	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  2      8     1.00    *               	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  2      9     1.50    *               	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  1      100    -      *      *        	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  1      100    -      *      *        	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  1      1     0.25                    	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  2      2     2.00                    	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  1      1     0.25                    	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  2      1     0.50                    	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  2      1     0.50                    	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  2      1     0.50                    	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  2      1     0.50                    	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  2      1     0.50                    	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  2      1     0.50                    	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  1      4     1.00                    	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      11    1.00    *               	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     1.00                    	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      11    1.00    *               	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     1.00                    	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      11    1.00    *               	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     1.00                    	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      11    1.00    *               	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      5     2.00                    	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  2      12    2.00    *               	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     1.00                    	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      11    1.00    *               	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      4     1.00                    	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      11    1.00    *               	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      3     1.00                    	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      10    1.00    *               	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     1.00    *               	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     1.00    *               	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     1.00    *               	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     1.00    *               	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     1.00    *               	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     1.00    *               	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     1.00    *               	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  1      1     0.50                    	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  1      2     1.00                    	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      9     1.00    *               	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  1      1     0.25                    	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  1      8     0.50    *               	vpxor	(%rax), %ymm1, %ymm2
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0] - ZnAGU0
+# CHECK-NEXT: [1] - ZnAGU1
+# CHECK-NEXT: [2] - ZnALU0
+# CHECK-NEXT: [3] - ZnALU1
+# CHECK-NEXT: [4] - ZnALU2
+# CHECK-NEXT: [5] - ZnALU3
+# CHECK-NEXT: [6] - ZnDivider
+# CHECK-NEXT: [7] - ZnFPU0
+# CHECK-NEXT: [8] - ZnFPU1
+# CHECK-NEXT: [9] - ZnFPU2
+# CHECK-NEXT: [10] - ZnFPU3
+# CHECK-NEXT: [11] - ZnMultiplier
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]
+# CHECK-NEXT: 63.50  63.50   -      -      -      -      -     77.17  70.67  80.00  47.17   -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   	Instructions:
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vbroadcasti128	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vbroadcastsd	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vbroadcastss	%xmm0, %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vextracti128	$1, %ymm0, %xmm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -     	vextracti128	$1, %ymm0, (%rax)
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vgatherdpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vgatherdpd	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vgatherdps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vgatherdps	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vgatherqpd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vgatherqpd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vgatherqps	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vgatherqps	%xmm0, (%rax,%ymm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vinserti128	$1, %xmm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vinserti128	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -     	vmovntdqa	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vmpsadbw	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vmpsadbw	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpabsb	%ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpabsb	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpabsd	%ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpabsd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpabsw	%ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpabsw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpackssdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpackssdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpacksswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpacksswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpackusdw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpackusdw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpackuswb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpackuswb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpalignr	$1, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpalignr	$1, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpand	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpand	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpandn	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpandn	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpavgb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpavgb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpavgw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpavgw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     	vpblendd	$11, %xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00   1.00    -      -      -     	vpblendd	$11, (%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50   0.50    -      -      -     	vpblendd	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.50   1.50    -      -      -     	vpblendd	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpblendvb	%ymm3, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpblendvb	%ymm3, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.33   0.33    -     0.33    -     	vpblendw	$11, %ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.33   0.33    -     0.33    -     	vpblendw	$11, (%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastb	%xmm0, %xmm0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     1.00   1.00    -      -     	vpbroadcastb	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastb	%xmm0, %ymm0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     2.00    -      -      -     	vpbroadcastb	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastd	%xmm0, %xmm0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastd	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastd	%xmm0, %ymm0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastd	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastq	%xmm0, %xmm0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastq	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastq	%xmm0, %ymm0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastq	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastw	%xmm0, %xmm0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     1.00   1.00    -      -     	vpbroadcastw	(%rax), %xmm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpbroadcastw	%xmm0, %ymm0
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     2.00    -      -      -     	vpbroadcastw	(%rax), %ymm0
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpeqb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpeqb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpeqd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpeqd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpeqq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpeqq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpeqw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpeqw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpgtb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpgtb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpgtd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpgtd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.50    -      -     0.50    -     	vpcmpgtq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -     1.00    -     	vpcmpgtq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpgtw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpcmpgtw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpermd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpermd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpermpd	$1, %ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpermpd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpermps	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpermps	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpermq	$1, %ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpermq	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpgatherdd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpgatherdd	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpgatherdq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpgatherdq	%ymm0, (%rax,%xmm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpgatherqd	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpgatherqq	%xmm0, (%rax,%xmm1,2), %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpgatherqq	%ymm0, (%rax,%ymm1,2), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphaddd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphaddd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphaddsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphaddsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphaddw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphaddw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vphsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpmaddubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpmaddubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpmaddwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpmaddwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpmaskmovd	(%rax), %xmm0, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpmaskmovd	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpmaskmovd	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpmaskmovd	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00   1.00    -      -      -     	vpmaskmovq	(%rax), %xmm0, %xmm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.50   1.50    -      -      -     	vpmaskmovq	(%rax), %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpmaskmovq	%xmm0, %xmm1, (%rax)
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     	vpmaskmovq	%ymm0, %ymm1, (%rax)
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmaxuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminsd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminsd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminub	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminub	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminud	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminud	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpminuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     2.00    -      -     	vpmovmskb	%ymm0, %ecx
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovsxbd	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovsxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpmovsxbq	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovsxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpmovsxbw	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovsxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpmovsxdq	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovsxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovsxwd	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovsxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovsxwq	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovsxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovzxbd	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovzxbd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpmovzxbq	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovzxbq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpmovzxbw	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovzxbw	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpmovzxdq	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovzxdq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovzxwd	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovzxwd	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovzxwq	%xmm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpmovzxwq	(%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpmuldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpmuldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpmulhrsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpmulhrsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpmulhuw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpmulhuw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpmulhw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpmulhw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     2.00    -      -      -      -     	vpmulld	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     2.00    -      -      -      -     	vpmulld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpmullw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpmullw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpmuludq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpmuludq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpor	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -      -     	vpsadbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -     	vpsadbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpshufb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpshufb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpshufd	$1, %ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpshufd	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpshufhw	$1, %ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpshufhw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpshuflw	$1, %ymm0, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpshuflw	$1, (%rax), %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsignb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsignb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsignd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsignd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsignw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsignw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpslld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpslld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -     	vpslld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpslldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsllq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpsllq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -     	vpsllq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsllvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsllvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsllvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsllvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsllvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsllvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsllvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsllvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsllw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpsllw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -     	vpsllw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsrad	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpsrad	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -     	vpsrad	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsravd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsravd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsravd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsravd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsraw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpsraw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -     	vpsraw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsrld	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpsrld	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -     	vpsrld	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpsrldq	$1, %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsrlq	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpsrlq	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -     	vpsrlq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsrlvd	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsrlvd	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsrlvd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsrlvd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsrlvq	%xmm0, %xmm1, %xmm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsrlvq	(%rax), %xmm1, %xmm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -     0.50   0.50    -      -     	vpsrlvq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -     0.50   0.50    -      -     	vpsrlvq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsrlw	$1, %ymm0, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -     1.00    -      -     	vpsrlw	%xmm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -     	vpsrlw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubsb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubsb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubsw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubsw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubusb	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubusb	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubusw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubusw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpsubw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckhbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckhbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckhdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckhdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckhqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckhqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckhwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckhwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpcklbw	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpcklbw	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckldq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpckldq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpcklqdq	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpcklqdq	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpcklwd	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpunpcklwd	(%rax), %ymm1, %ymm2
+# CHECK-NEXT:  -      -      -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpxor	%ymm0, %ymm1, %ymm2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     0.25   0.25   0.25   0.25    -     	vpxor	(%rax), %ymm1, %ymm2
+




More information about the llvm-commits mailing list