insns.dat -- convert AVX instructions part2
authorCyrill Gorcunov <gorcunov@gmail.com>
Fri, 7 Aug 2009 05:24:59 +0000 (09:24 +0400)
committerCyrill Gorcunov <gorcunov@gmail.com>
Fri, 7 Aug 2009 14:41:52 +0000 (18:41 +0400)
Convert Intel AVX instructions to explisit size
format. Part 2.

Also CLMUL converted as well.

Btw, VPINSR was a bit broken since SB constraint
is not applied on all forms but requires 16,32,64
memory sizes too. Fixed.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
insns.dat

index a4151a8..0a2f3c0 100644 (file)
--- a/insns.dat
+++ b/insns.dat
@@ -2535,83 +2535,83 @@ VDIVSS          xmmreg,xmmreg*,xmmrm32          [rvm:   vex.nds.128.f3.0f 5e /r]                AVX,SANDYBRIDGE
 VDPPD          xmmreg,xmmreg*,xmmrm128,imm8    [rvmi:  vex.nds.128.66.0f3a 41 /r ib]           AVX,SANDYBRIDGE
 VDPPS          xmmreg,xmmreg*,xmmrm128,imm8    [rvmi:  vex.nds.128.66.0f3a 40 /r ib]           AVX,SANDYBRIDGE
 VDPPS          ymmreg,ymmreg*,ymmrm256,imm8    [rvmi:  vex.nds.256.66.0f3a 40 /r ib]           AVX,SANDYBRIDGE
-VEXTRACTF128   xmmrm,xmmreg,imm                [mri:   vex.256.66.0f3a 19 /r ib]               AVX,SANDYBRIDGE,SO
-VEXTRACTPS     rm32,xmmreg,imm                 [mri:   vex.128.66.0f3a 17 /r ib]               AVX,SANDYBRIDGE,SD
-VHADDPD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 7c /r]                AVX,SANDYBRIDGE,SO
-VHADDPD                ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 7c /r]                AVX,SANDYBRIDGE,SY
-VHADDPS                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f2.0f 7c /r]                AVX,SANDYBRIDGE,SO
-VHADDPS                ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.f2.0f 7c /r]                AVX,SANDYBRIDGE,SY
-VHSUBPD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 7d /r]                AVX,SANDYBRIDGE,SO
-VHSUBPD                ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 7d /r]                AVX,SANDYBRIDGE,SY
-VHSUBPS                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f2.0f 7d /r]                AVX,SANDYBRIDGE,SO
-VHSUBPS                ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.f2.0f 7d /r]                AVX,SANDYBRIDGE,SY
-VINSERTF128    ymmreg,ymmreg,xmmrm,imm         [rvmi:  vex.nds.256.66.0f3a 18 /r ib]           AVX,SANDYBRIDGE,SO
-VINSERTPS      xmmreg,xmmreg*,xmmrm,imm        [rvmi:  vex.nds.128.66.0f3a 21 /r ib]           AVX,SANDYBRIDGE,SD
-VLDDQU         xmmreg,mem                      [rm:    vex.128.f2.0f f0 /r]                    AVX,SANDYBRIDGE,SO
-VLDQQU         ymmreg,mem                      [rm:    vex.256.f2.0f f0 /r]                    AVX,SANDYBRIDGE,SY
-VLDDQU         ymmreg,mem                      [rm:    vex.256.f2.0f f0 /r]                    AVX,SANDYBRIDGE,SY
-VLDMXCSR       mem32                           [m:     vex.128.0f ae /2]                       AVX,SANDYBRIDGE,SD
+VEXTRACTF128   xmmrm128,xmmreg,imm8            [mri:   vex.256.66.0f3a 19 /r ib]               AVX,SANDYBRIDGE
+VEXTRACTPS     rm32,xmmreg,imm8                [mri:   vex.128.66.0f3a 17 /r ib]               AVX,SANDYBRIDGE
+VHADDPD                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 7c /r]                AVX,SANDYBRIDGE
+VHADDPD                ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 7c /r]                AVX,SANDYBRIDGE
+VHADDPS                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.f2.0f 7c /r]                AVX,SANDYBRIDGE
+VHADDPS                ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.f2.0f 7c /r]                AVX,SANDYBRIDGE
+VHSUBPD                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 7d /r]                AVX,SANDYBRIDGE
+VHSUBPD                ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 7d /r]                AVX,SANDYBRIDGE
+VHSUBPS                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.f2.0f 7d /r]                AVX,SANDYBRIDGE
+VHSUBPS                ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.f2.0f 7d /r]                AVX,SANDYBRIDGE
+VINSERTF128    ymmreg,ymmreg,xmmrm128,imm8     [rvmi:  vex.nds.256.66.0f3a 18 /r ib]           AVX,SANDYBRIDGE
+VINSERTPS      xmmreg,xmmreg*,xmmrm32,imm8     [rvmi:  vex.nds.128.66.0f3a 21 /r ib]           AVX,SANDYBRIDGE
+VLDDQU         xmmreg,mem128                   [rm:    vex.128.f2.0f f0 /r]                    AVX,SANDYBRIDGE
+VLDQQU         ymmreg,mem256                   [rm:    vex.256.f2.0f f0 /r]                    AVX,SANDYBRIDGE
+VLDDQU         ymmreg,mem256                   [rm:    vex.256.f2.0f f0 /r]                    AVX,SANDYBRIDGE
+VLDMXCSR       mem32                           [m:     vex.128.0f ae /2]                       AVX,SANDYBRIDGE
 VMASKMOVDQU    xmmreg,xmmreg                   [rm:    vex.128.66.0f f7 /r]                    AVX,SANDYBRIDGE
-VMASKMOVPS     xmmreg,xmmreg,mem               [rvm:   vex.nds.128.66.0f38 2c /r]              AVX,SANDYBRIDGE,SO
-VMASKMOVPS     ymmreg,ymmreg,mem               [rvm:   vex.nds.256.66.0f38 2c /r]              AVX,SANDYBRIDGE,SY
-VMASKMOVPS     mem,xmmreg,xmmreg               [mvr:   vex.nds.128.66.0f38 2e /r]              AVX,SANDYBRIDGE,SO
-VMASKMOVPS     mem,xmmreg,xmmreg               [mvr:   vex.nds.256.66.0f38 2e /r]              AVX,SANDYBRIDGE,SY
-VMASKMOVPD     xmmreg,xmmreg,mem               [rvm:   vex.nds.128.66.0f38 2d /r]              AVX,SANDYBRIDGE,SO
-VMASKMOVPD     ymmreg,ymmreg,mem               [rvm:   vex.nds.256.66.0f38 2d /r]              AVX,SANDYBRIDGE,SY
-VMASKMOVPD     mem,xmmreg,xmmreg               [mvr:   vex.nds.128.66.0f38 2f /r]              AVX,SANDYBRIDGE,SO
-VMASKMOVPD     mem,ymmreg,ymmreg               [mvr:   vex.nds.256.66.0f38 2f /r]              AVX,SANDYBRIDGE,SY
-VMAXPD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 5f /r]                AVX,SANDYBRIDGE,SO
-VMAXPD         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 5f /r]                AVX,SANDYBRIDGE,SY
-VMAXPS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.0f 5f /r]                   AVX,SANDYBRIDGE,SO
-VMAXPS         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.0f 5f /r]                   AVX,SANDYBRIDGE,SY
-VMAXSD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f2.0f 5f /r]                AVX,SANDYBRIDGE,SQ
-VMAXSS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f3.0f 5f /r]                AVX,SANDYBRIDGE,SD
-VMINPD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 5d /r]                AVX,SANDYBRIDGE,SO
-VMINPD         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 5d /r]                AVX,SANDYBRIDGE,SY
-VMINPS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.0f 5d /r]                   AVX,SANDYBRIDGE,SO
-VMINPS         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.0f 5d /r]                   AVX,SANDYBRIDGE,SY
-VMINSD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f2.0f 5d /r]                AVX,SANDYBRIDGE,SQ
-VMINSS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f3.0f 5d /r]                AVX,SANDYBRIDGE,SD
-VMOVAPD                xmmreg,xmmrm                    [rm:    vex.128.66.0f 28 /r]                    AVX,SANDYBRIDGE,SO
-VMOVAPD                xmmrm,xmmreg                    [mr:    vex.128.66.0f 29 /r]                    AVX,SANDYBRIDGE,SO
-VMOVAPD                ymmreg,ymmrm                    [rm:    vex.256.66.0f 28 /r]                    AVX,SANDYBRIDGE,SY
-VMOVAPD                ymmrm,ymmreg                    [mr:    vex.256.66.0f 29 /r]                    AVX,SANDYBRIDGE,SY
-VMOVAPS                xmmreg,xmmrm                    [rm:    vex.128.0f 28 /r]                       AVX,SANDYBRIDGE,SO
-VMOVAPS                xmmrm,xmmreg                    [mr:    vex.128.0f 29 /r]                       AVX,SANDYBRIDGE,SO
-VMOVAPS                ymmreg,ymmrm                    [rm:    vex.256.0f 28 /r]                       AVX,SANDYBRIDGE,SY
-VMOVAPS                ymmrm,ymmreg                    [mr:    vex.256.0f 29 /r]                       AVX,SANDYBRIDGE,SY
-VMOVQ          xmmreg,xmmrm                    [rm:    vex.128.f3.0f 7e /r]                    AVX,SANDYBRIDGE,SQ
-VMOVQ          xmmrm,xmmreg                    [mr:    vex.128.66.0f d6 /r]                    AVX,SANDYBRIDGE,SQ
-VMOVD          xmmreg,rm32                     [rm:    vex.128.66.0f.w0 6e /r]                 AVX,SANDYBRIDGE,SD
-VMOVQ          xmmreg,rm64                     [rm:    vex.128.66.0f.w1 6e /r]                 AVX,SANDYBRIDGE,SQ,LONG
-VMOVD          rm32,xmmreg                     [mr:    vex.128.66.0f.w0 7e /r]                 AVX,SANDYBRIDGE,SD
-VMOVQ          rm64,xmmreg                     [mr:    vex.128.66.0f.w1 7e /r]                 AVX,SANDYBRIDGE,SQ,LONG
-VMOVDDUP       xmmreg,xmmrm                    [rm:    vex.128.f2.0f 12 /r]                    AVX,SANDYBRIDGE,SQ
-VMOVDDUP       ymmreg,ymmrm                    [rm:    vex.256.f2.0f 12 /r]                    AVX,SANDYBRIDGE,SY
-VMOVDQA                xmmreg,xmmrm                    [rm:    vex.128.66.0f 6f /r]                    AVX,SANDYBRIDGE,SO
-VMOVDQA                xmmrm,xmmreg                    [mr:    vex.128.66.0f 7f /r]                    AVX,SANDYBRIDGE,SO
+VMASKMOVPS     xmmreg,xmmreg,mem128            [rvm:   vex.nds.128.66.0f38 2c /r]              AVX,SANDYBRIDGE
+VMASKMOVPS     ymmreg,ymmreg,mem256            [rvm:   vex.nds.256.66.0f38 2c /r]              AVX,SANDYBRIDGE
+VMASKMOVPS     mem128,xmmreg,xmmreg            [mvr:   vex.nds.128.66.0f38 2e /r]              AVX,SANDYBRIDGE
+VMASKMOVPS     mem256,xmmreg,xmmreg            [mvr:   vex.nds.256.66.0f38 2e /r]              AVX,SANDYBRIDGE
+VMASKMOVPD     xmmreg,xmmreg,mem128            [rvm:   vex.nds.128.66.0f38 2d /r]              AVX,SANDYBRIDGE
+VMASKMOVPD     ymmreg,ymmreg,mem256            [rvm:   vex.nds.256.66.0f38 2d /r]              AVX,SANDYBRIDGE
+VMASKMOVPD     mem128,xmmreg,xmmreg            [mvr:   vex.nds.128.66.0f38 2f /r]              AVX,SANDYBRIDGE
+VMASKMOVPD     mem256,ymmreg,ymmreg            [mvr:   vex.nds.256.66.0f38 2f /r]              AVX,SANDYBRIDGE
+VMAXPD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 5f /r]                AVX,SANDYBRIDGE
+VMAXPD         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 5f /r]                AVX,SANDYBRIDGE
+VMAXPS         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.0f 5f /r]                   AVX,SANDYBRIDGE
+VMAXPS         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.0f 5f /r]                   AVX,SANDYBRIDGE
+VMAXSD         xmmreg,xmmreg*,xmmrm64          [rvm:   vex.nds.128.f2.0f 5f /r]                AVX,SANDYBRIDGE
+VMAXSS         xmmreg,xmmreg*,xmmrm32          [rvm:   vex.nds.128.f3.0f 5f /r]                AVX,SANDYBRIDGE
+VMINPD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 5d /r]                AVX,SANDYBRIDGE
+VMINPD         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 5d /r]                AVX,SANDYBRIDGE
+VMINPS         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.0f 5d /r]                   AVX,SANDYBRIDGE
+VMINPS         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.0f 5d /r]                   AVX,SANDYBRIDGE
+VMINSD         xmmreg,xmmreg*,xmmrm64          [rvm:   vex.nds.128.f2.0f 5d /r]                AVX,SANDYBRIDGE
+VMINSS         xmmreg,xmmreg*,xmmrm32          [rvm:   vex.nds.128.f3.0f 5d /r]                AVX,SANDYBRIDGE
+VMOVAPD                xmmreg,xmmrm128                 [rm:    vex.128.66.0f 28 /r]                    AVX,SANDYBRIDGE
+VMOVAPD                xmmrm128,xmmreg                 [mr:    vex.128.66.0f 29 /r]                    AVX,SANDYBRIDGE
+VMOVAPD                ymmreg,ymmrm256                 [rm:    vex.256.66.0f 28 /r]                    AVX,SANDYBRIDGE
+VMOVAPD                ymmrm256,ymmreg                 [mr:    vex.256.66.0f 29 /r]                    AVX,SANDYBRIDGE
+VMOVAPS                xmmreg,xmmrm128                 [rm:    vex.128.0f 28 /r]                       AVX,SANDYBRIDGE
+VMOVAPS                xmmrm128,xmmreg                 [mr:    vex.128.0f 29 /r]                       AVX,SANDYBRIDGE
+VMOVAPS                ymmreg,ymmrm256                 [rm:    vex.256.0f 28 /r]                       AVX,SANDYBRIDGE
+VMOVAPS                ymmrm256,ymmreg                 [mr:    vex.256.0f 29 /r]                       AVX,SANDYBRIDGE
+VMOVQ          xmmreg,xmmrm64                  [rm:    vex.128.f3.0f 7e /r]                    AVX,SANDYBRIDGE
+VMOVQ          xmmrm64,xmmreg                  [mr:    vex.128.66.0f d6 /r]                    AVX,SANDYBRIDGE
+VMOVD          xmmreg,rm32                     [rm:    vex.128.66.0f.w0 6e /r]                 AVX,SANDYBRIDGE
+VMOVQ          xmmreg,rm64                     [rm:    vex.128.66.0f.w1 6e /r]                 AVX,SANDYBRIDGE,LONG
+VMOVD          rm32,xmmreg                     [mr:    vex.128.66.0f.w0 7e /r]                 AVX,SANDYBRIDGE
+VMOVQ          rm64,xmmreg                     [mr:    vex.128.66.0f.w1 7e /r]                 AVX,SANDYBRIDGE,LONG
+VMOVDDUP       xmmreg,xmmrm64                  [rm:    vex.128.f2.0f 12 /r]                    AVX,SANDYBRIDGE
+VMOVDDUP       ymmreg,ymmrm256                 [rm:    vex.256.f2.0f 12 /r]                    AVX,SANDYBRIDGE
+VMOVDQA                xmmreg,xmmrm128                 [rm:    vex.128.66.0f 6f /r]                    AVX,SANDYBRIDGE
+VMOVDQA                xmmrm128,xmmreg                 [mr:    vex.128.66.0f 7f /r]                    AVX,SANDYBRIDGE
 ; These are officially documented as VMOVDQA, but VMOVQQA seems more logical to me...
-VMOVQQA                ymmreg,ymmrm                    [rm:    vex.256.66.0f 6f /r]                    AVX,SANDYBRIDGE,SY
-VMOVQQA                ymmrm,ymmreg                    [mr:    vex.256.66.0f 7f /r]                    AVX,SANDYBRIDGE,SY
-VMOVDQA                ymmreg,ymmrm                    [rm:    vex.256.66.0f 6f /r]                    AVX,SANDYBRIDGE,SY
-VMOVDQA                ymmrm,ymmreg                    [mr:    vex.256.66.0f 7f /r]                    AVX,SANDYBRIDGE,SY
-VMOVDQU                xmmreg,xmmrm                    [rm:    vex.128.f3.0f 6f /r]                    AVX,SANDYBRIDGE,SO
-VMOVDQU                xmmrm,xmmreg                    [mr:    vex.128.f3.0f 7f /r]                    AVX,SANDYBRIDGE,SO
+VMOVQQA                ymmreg,ymmrm256                 [rm:    vex.256.66.0f 6f /r]                    AVX,SANDYBRIDGE
+VMOVQQA                ymmrm256,ymmreg                 [mr:    vex.256.66.0f 7f /r]                    AVX,SANDYBRIDGE
+VMOVDQA                ymmreg,ymmrm                    [rm:    vex.256.66.0f 6f /r]                    AVX,SANDYBRIDGE
+VMOVDQA                ymmrm256,ymmreg                 [mr:    vex.256.66.0f 7f /r]                    AVX,SANDYBRIDGE
+VMOVDQU                xmmreg,xmmrm128                 [rm:    vex.128.f3.0f 6f /r]                    AVX,SANDYBRIDGE
+VMOVDQU                xmmrm128,xmmreg                 [mr:    vex.128.f3.0f 7f /r]                    AVX,SANDYBRIDGE
 ; These are officially documented as VMOVDQU, but VMOVQQU seems more logical to me...
-VMOVQQU                ymmreg,ymmrm                    [rm:    vex.256.f3.0f 6f /r]                    AVX,SANDYBRIDGE,SY
-VMOVQQU                ymmrm,ymmreg                    [mr:    vex.256.f3.0f 7f /r]                    AVX,SANDYBRIDGE,SY
-VMOVDQU                ymmreg,ymmrm                    [rm:    vex.256.f3.0f 6f /r]                    AVX,SANDYBRIDGE,SY
-VMOVDQU                ymmrm,ymmreg                    [mr:    vex.256.f3.0f 7f /r]                    AVX,SANDYBRIDGE,SY
+VMOVQQU                ymmreg,ymmrm256                 [rm:    vex.256.f3.0f 6f /r]                    AVX,SANDYBRIDGE
+VMOVQQU                ymmrm256,ymmreg                 [mr:    vex.256.f3.0f 7f /r]                    AVX,SANDYBRIDGE
+VMOVDQU                ymmreg,ymmrm256                 [rm:    vex.256.f3.0f 6f /r]                    AVX,SANDYBRIDGE
+VMOVDQU                ymmrm256,ymmreg                 [mr:    vex.256.f3.0f 7f /r]                    AVX,SANDYBRIDGE
 VMOVHLPS       xmmreg,xmmreg*,xmmreg           [rvm:   vex.nds.128.0f 12 /r]                   AVX,SANDYBRIDGE
-VMOVHPD                xmmreg,xmmreg*,mem              [rvm:   vex.nds.128.66.0f 16 /r]                AVX,SANDYBRIDGE,SQ
-VMOVHPD                mem,xmmreg                      [mr:    vex.128.66.0f 17 /r]                    AVX,SANDYBRIDGE,SQ
-VMOVHPS                xmmreg,xmmreg*,mem              [rvm:   vex.nds.128.0f 16 /r]                   AVX,SANDYBRIDGE,SQ
-VMOVHPS                mem,xmmreg                      [mr:    vex.128.0f 17 /r]                       AVX,SANDYBRIDGE,SQ
+VMOVHPD                xmmreg,xmmreg*,mem64            [rvm:   vex.nds.128.66.0f 16 /r]                AVX,SANDYBRIDGE
+VMOVHPD                mem64,xmmreg                    [mr:    vex.128.66.0f 17 /r]                    AVX,SANDYBRIDGE
+VMOVHPS                xmmreg,xmmreg*,mem64            [rvm:   vex.nds.128.0f 16 /r]                   AVX,SANDYBRIDGE
+VMOVHPS                mem64,xmmreg                    [mr:    vex.128.0f 17 /r]                       AVX,SANDYBRIDGE
 VMOVLHPS       xmmreg,xmmreg*,xmmreg           [rvm:   vex.nds.128.0f 16 /r]                   AVX,SANDYBRIDGE
-VMOVLPD                xmmreg,xmmreg*,mem              [rvm:   vex.nds.128.66.0f 12 /r]                AVX,SANDYBRIDGE,SQ
-VMOVLPD                mem,xmmreg                      [mr:    vex.128.66.0f 13 /r]                    AVX,SANDYBRIDGE,SQ
-VMOVLPS                xmmreg,xmmreg*,mem              [rvm:   vex.nds.128.0f 12 /r]                   AVX,SANDYBRIDGE,SQ
-VMOVLPS                mem,xmmreg                      [mr:    vex.128.0f 13 /r]                       AVX,SANDYBRIDGE,SQ
+VMOVLPD                xmmreg,xmmreg*,mem64            [rvm:   vex.nds.128.66.0f 12 /r]                AVX,SANDYBRIDGE
+VMOVLPD                mem64,xmmreg                    [mr:    vex.128.66.0f 13 /r]                    AVX,SANDYBRIDGE
+VMOVLPS                xmmreg,xmmreg*,mem64            [rvm:   vex.nds.128.0f 12 /r]                   AVX,SANDYBRIDGE
+VMOVLPS                mem64,xmmreg                    [mr:    vex.128.0f 13 /r]                       AVX,SANDYBRIDGE
 VMOVMSKPD      reg64,xmmreg                    [rm:    vex.128.66.0f 50 /r]                    AVX,SANDYBRIDGE,LONG
 VMOVMSKPD      reg32,xmmreg                    [rm:    vex.128.66.0f 50 /r]                    AVX,SANDYBRIDGE
 VMOVMSKPD      reg64,ymmreg                    [rm:    vex.256.66.0f 50 /r]                    AVX,SANDYBRIDGE,LONG
@@ -2620,294 +2620,294 @@ VMOVMSKPS     reg64,xmmreg                    [rm:    vex.128.0f 50 /r]                       AVX,SANDYBRIDGE,LONG
 VMOVMSKPS      reg32,xmmreg                    [rm:    vex.128.0f 50 /r]                       AVX,SANDYBRIDGE
 VMOVMSKPS      reg64,ymmreg                    [rm:    vex.256.0f 50 /r]                       AVX,SANDYBRIDGE,LONG
 VMOVMSKPS      reg32,ymmreg                    [rm:    vex.256.0f 50 /r]                       AVX,SANDYBRIDGE
-VMOVNTDQ       mem,xmmreg                      [mr:    vex.128.66.0f e7 /r]                    AVX,SANDYBRIDGE,SO
+VMOVNTDQ       mem128,xmmreg                   [mr:    vex.128.66.0f e7 /r]                    AVX,SANDYBRIDGE
 ; Officially VMOVNTDQ, but VMOVNTQQ seems more logical to me...
-VMOVNTQQ       mem,ymmreg                      [mr:    vex.256.66.0f e7 /r]                    AVX,SANDYBRIDGE,SY
-VMOVNTDQ       mem,ymmreg                      [mr:    vex.256.66.0f e7 /r]                    AVX,SANDYBRIDGE,SY
-VMOVNTDQA      xmmreg,mem                      [rm:    vex.128.66.0f38 2a /r]                  AVX,SANDYBRIDGE,SO
-VMOVNTPD       mem,xmmreg                      [mr:    vex.128.66.0f 2b /r]                    AVX,SANDYBRIDGE,SO
-VMOVNTPD       mem,ymmreg                      [mr:    vex.256.66.0f 2b /r]                    AVX,SANDYBRIDGE,SY
-VMOVNTPS       mem,xmmreg                      [mr:    vex.128.0f 2b /r]                       AVX,SANDYBRIDGE,SO
-VMOVNTPS       mem,ymmreg                      [mr:    vex.256.0f 2b /r]                       AVX,SANDYBRIDGE,SO
+VMOVNTQQ       mem256,ymmreg                   [mr:    vex.256.66.0f e7 /r]                    AVX,SANDYBRIDGE
+VMOVNTDQ       mem256,ymmreg                   [mr:    vex.256.66.0f e7 /r]                    AVX,SANDYBRIDGE
+VMOVNTDQA      xmmreg,mem128                   [rm:    vex.128.66.0f38 2a /r]                  AVX,SANDYBRIDGE
+VMOVNTPD       mem128,xmmreg                   [mr:    vex.128.66.0f 2b /r]                    AVX,SANDYBRIDGE
+VMOVNTPD       mem256,ymmreg                   [mr:    vex.256.66.0f 2b /r]                    AVX,SANDYBRIDGE
+VMOVNTPS       mem128,xmmreg                   [mr:    vex.128.0f 2b /r]                       AVX,SANDYBRIDGE
+VMOVNTPS       mem128,ymmreg                   [mr:    vex.256.0f 2b /r]                       AVX,SANDYBRIDGE
 VMOVSD         xmmreg,xmmreg*,xmmreg           [rvm:   vex.nds.128.f2.0f 10 /r]                AVX,SANDYBRIDGE
-VMOVSD         xmmreg,mem                      [rm:    vex.128.f2.0f 10 /r]                    AVX,SANDYBRIDGE,SQ
+VMOVSD         xmmreg,mem64                    [rm:    vex.128.f2.0f 10 /r]                    AVX,SANDYBRIDGE
 VMOVSD         xmmreg,xmmreg*,xmmreg           [mvr:   vex.nds.128.f2.0f 11 /r]                AVX,SANDYBRIDGE
-VMOVSD         mem,xmmreg                      [mr:    vex.128.f2.0f 11 /r]                    AVX,SANDYBRIDGE,SQ
-VMOVSHDUP      xmmreg,xmmrm                    [rm:    vex.128.f3.0f 16 /r]                    AVX,SANDYBRIDGE,SO
-VMOVSHDUP      ymmreg,ymmrm                    [rm:    vex.256.f3.0f 16 /r]                    AVX,SANDYBRIDGE,SY
-VMOVSLDUP      xmmreg,xmmrm                    [rm:    vex.128.f3.0f 12 /r]                    AVX,SANDYBRIDGE,SO
-VMOVSLDUP      ymmreg,ymmrm                    [rm:    vex.256.f3.0f 12 /r]                    AVX,SANDYBRIDGE,SY
+VMOVSD         mem64,xmmreg                    [mr:    vex.128.f2.0f 11 /r]                    AVX,SANDYBRIDGE
+VMOVSHDUP      xmmreg,xmmrm128                 [rm:    vex.128.f3.0f 16 /r]                    AVX,SANDYBRIDGE
+VMOVSHDUP      ymmreg,ymmrm256                 [rm:    vex.256.f3.0f 16 /r]                    AVX,SANDYBRIDGE
+VMOVSLDUP      xmmreg,xmmrm128                 [rm:    vex.128.f3.0f 12 /r]                    AVX,SANDYBRIDGE
+VMOVSLDUP      ymmreg,ymmrm256                 [rm:    vex.256.f3.0f 12 /r]                    AVX,SANDYBRIDGE
 VMOVSS         xmmreg,xmmreg*,xmmreg           [rvm:   vex.nds.128.f3.0f 10 /r]                AVX,SANDYBRIDGE
-VMOVSS         xmmreg,mem                      [rm:    vex.128.f3.0f 10 /r]                    AVX,SANDYBRIDGE,SQ
+VMOVSS         xmmreg,mem64                    [rm:    vex.128.f3.0f 10 /r]                    AVX,SANDYBRIDGE
 VMOVSS         xmmreg,xmmreg*,xmmreg           [mvr:   vex.nds.128.f3.0f 11 /r]                AVX,SANDYBRIDGE
-VMOVSS         mem,xmmreg                      [mr:    vex.128.f3.0f 11 /r]                    AVX,SANDYBRIDGE,SQ
-VMOVUPD                xmmreg,xmmrm                    [rm:    vex.128.66.0f 10 /r]                    AVX,SANDYBRIDGE,SO
-VMOVUPD                xmmrm,xmmreg                    [mr:    vex.128.66.0f 11 /r]                    AVX,SANDYBRIDGE,SO
-VMOVUPD                ymmreg,ymmrm                    [rm:    vex.256.66.0f 10 /r]                    AVX,SANDYBRIDGE,SY
-VMOVUPD                ymmrm,ymmreg                    [mr:    vex.256.66.0f 11 /r]                    AVX,SANDYBRIDGE,SY
-VMOVUPS                xmmreg,xmmrm                    [rm:    vex.128.0f 10 /r]                       AVX,SANDYBRIDGE,SO
-VMOVUPS                xmmrm,xmmreg                    [mr:    vex.128.0f 11 /r]                       AVX,SANDYBRIDGE,SO
-VMOVUPS                ymmreg,ymmrm                    [rm:    vex.256.0f 10 /r]                       AVX,SANDYBRIDGE,SY
-VMOVUPS                ymmrm,ymmreg                    [mr:    vex.256.0f 11 /r]                       AVX,SANDYBRIDGE,SY
-VMPSADBW       xmmreg,xmmreg*,xmmrm,imm        [rvmi:  vex.nds.128.66.0f3a 42 /r ib]           AVX,SANDYBRIDGE,SO
-VMULPD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 59 /r]                AVX,SANDYBRIDGE,SO
-VMULPD         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 59 /r]                AVX,SANDYBRIDGE,SY
-VMULPS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.0f 59 /r]                   AVX,SANDYBRIDGE,SO
-VMULPS         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.0f 59 /r]                   AVX,SANDYBRIDGE,SY
-VMULSD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f2.0f 59 /r]                AVX,SANDYBRIDGE,SQ
-VMULSS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f3.0f 59 /r]                AVX,SANDYBRIDGE,SD
-VORPD          xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 56 /r]                AVX,SANDYBRIDGE,SO
-VORPD          ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 56 /r]                AVX,SANDYBRIDGE,SY
-VORPS          xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.0f 56 /r]                   AVX,SANDYBRIDGE,SO
-VORPS          ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.0f 56 /r]                   AVX,SANDYBRIDGE,SY
-VPABSB         xmmreg,xmmrm                    [rm:    vex.128.66.0f38 1c /r]                  AVX,SANDYBRIDGE,SO
-VPABSW         xmmreg,xmmrm                    [rm:    vex.128.66.0f38 1d /r]                  AVX,SANDYBRIDGE,SO
-VPABSD         xmmreg,xmmrm                    [rm:    vex.128.66.0f38 1e /r]                  AVX,SANDYBRIDGE,SO
-VPACKSSWB      xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 63 /r]                AVX,SANDYBRIDGE,SO
-VPACKSSDW      xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 6b /r]                AVX,SANDYBRIDGE,SO
-VPACKUSWB      xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 67 /r]                AVX,SANDYBRIDGE,SO
-VPACKUSDW      xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 2b /r]              AVX,SANDYBRIDGE,SO
-VPADDB         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f fc /r]                AVX,SANDYBRIDGE,SO
-VPADDW         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f fd /r]                AVX,SANDYBRIDGE,SO
-VPADDD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f fe /r]                AVX,SANDYBRIDGE,SO
-VPADDQ         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f d4 /r]                AVX,SANDYBRIDGE,SO
-VPADDSB                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f ec /r]                AVX,SANDYBRIDGE,SO
-VPADDSW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f ed /r]                AVX,SANDYBRIDGE,SO
-VPADDUSB       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f dc /r]                AVX,SANDYBRIDGE,SO
-VPADDUSW       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f dd /r]                AVX,SANDYBRIDGE,SO
-VPALIGNR       xmmreg,xmmreg*,xmmrm,imm        [rvmi:  vex.nds.128.66.0f3a 0f /r ib]           AVX,SANDYBRIDGE,SO
-VPAND          xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f db /r]                AVX,SANDYBRIDGE,SO
-VPANDN         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f df /r]                AVX,SANDYBRIDGE,SO
-VPAVGB         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f e0 /r]                AVX,SANDYBRIDGE,SO
-VPAVGW         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f e3 /r]                AVX,SANDYBRIDGE,SO
-VPBLENDVB      xmmreg,xmmreg*,xmmrm,xmmreg     [rvms:  vex.nds.128.66.0f3a 4c /r /is4]         AVX,SANDYBRIDGE,SO
-VPBLENDW       xmmreg,xmmreg*,xmmrm,imm        [rvmi:  vex.nds.128.66.0f3a 0e /r ib]           AVX,SANDYBRIDGE,SO
-VPCMPESTRI     xmmreg,xmmrm,imm                [rmi:   vex.128.66.0f3a 61 /r ib]               AVX,SANDYBRIDGE,SO
-VPCMPESTRM     xmmreg,xmmrm,imm                [rmi:   vex.128.66.0f3a 60 /r ib]               AVX,SANDYBRIDGE,SO
-VPCMPISTRI     xmmreg,xmmrm,imm                [rmi:   vex.128.66.0f3a 63 /r ib]               AVX,SANDYBRIDGE,SO
-VPCMPISTRM     xmmreg,xmmrm,imm                [rmi:   vex.128.66.0f3a 62 /r ib]               AVX,SANDYBRIDGE,SO
-VPCMPEQB       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 74 /r]                AVX,SANDYBRIDGE,SO
-VPCMPEQW       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 75 /r]                AVX,SANDYBRIDGE,SO
-VPCMPEQD       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 76 /r]                AVX,SANDYBRIDGE,SO
-VPCMPEQQ       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 29 /r]                AVX,SANDYBRIDGE,SO
-VPCMPGTB       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 64 /r]                AVX,SANDYBRIDGE,SO
-VPCMPGTW       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 65 /r]                AVX,SANDYBRIDGE,SO
-VPCMPGTD       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 66 /r]                AVX,SANDYBRIDGE,SO
-VPCMPGTQ       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 37 /r]                AVX,SANDYBRIDGE,SO
-VPERMILPD      xmmreg,xmmreg,xmmrm             [rvm:   vex.nds.128.66.0f38 0d /r]              AVX,SANDYBRIDGE,SO
-VPERMILPD      ymmreg,ymmreg,ymmrm             [rvm:   vex.nds.256.66.0f38 0d /r]              AVX,SANDYBRIDGE,SY
-VPERMILPD      xmmreg,xmmrm,imm                [rmi:   vex.128.66.0f3a 05 /r ib]               AVX,SANDYBRIDGE,SO
-VPERMILPD      ymmreg,ymmrm,imm                [rmi:   vex.256.66.0f3a 05 /r ib]               AVX,SANDYBRIDGE,SY
-VPERMILTD2PD   xmmreg,xmmreg,xmmrm,xmmreg      [rvms:  vex.nds.128.66.0f3a.w0 49 /r /is4=0]    AVX,SANDYBRIDGE,SO
-VPERMILTD2PD   xmmreg,xmmreg,xmmreg,xmmrm      [rvsm:  vex.nds.128.66.0f3a.w1 49 /r /is4=0]    AVX,SANDYBRIDGE,SO
-VPERMILTD2PD   ymmreg,ymmreg,ymmrm,ymmreg      [rvms:  vex.nds.256.66.0f3a.w0 49 /r /is4=0]    AVX,SANDYBRIDGE,SY
-VPERMILTD2PD   ymmreg,ymmreg,ymmreg,ymmrm      [rvsm:  vex.nds.256.66.0f3a.w1 49 /r /is4=0]    AVX,SANDYBRIDGE,SY
-VPERMILMO2PD   xmmreg,xmmreg,xmmrm,xmmreg      [rvms:  vex.nds.128.66.0f3a.w0 49 /r /is4=2]    AVX,SANDYBRIDGE,SO
-VPERMILMO2PD   xmmreg,xmmreg,xmmreg,xmmrm      [rvsm:  vex.nds.128.66.0f3a.w1 49 /r /is4=2]    AVX,SANDYBRIDGE,SO
-VPERMILMO2PD   ymmreg,ymmreg,ymmrm,ymmreg      [rvms:  vex.nds.256.66.0f3a.w0 49 /r /is4=2]    AVX,SANDYBRIDGE,SY
-VPERMILMO2PD   ymmreg,ymmreg,ymmreg,ymmrm      [rvsm:  vex.nds.256.66.0f3a.w1 49 /r /is4=2]    AVX,SANDYBRIDGE,SY
-VPERMILMZ2PD   xmmreg,xmmreg,xmmrm,xmmreg      [rvms:  vex.nds.128.66.0f3a.w0 49 /r /is4=3]    AVX,SANDYBRIDGE,SO
-VPERMILMZ2PD   xmmreg,xmmreg,xmmreg,xmmrm      [rvsm:  vex.nds.128.66.0f3a.w1 49 /r /is4=3]    AVX,SANDYBRIDGE,SO
-VPERMILMZ2PD   ymmreg,ymmreg,ymmrm,ymmreg      [rvms:  vex.nds.256.66.0f3a.w0 49 /r /is4=3]    AVX,SANDYBRIDGE,SY
-VPERMILMZ2PD   ymmreg,ymmreg,ymmreg,ymmrm      [rvsm:  vex.nds.256.66.0f3a.w1 49 /r /is4=3]    AVX,SANDYBRIDGE,SY
-VPERMIL2PD     xmmreg,xmmreg,xmmrm,xmmreg,imm  [rvmsi: vex.nds.128.66.0f3a.w0 49 /r /is4]      AVX,SANDYBRIDGE,SO
-VPERMIL2PD     xmmreg,xmmreg,xmmreg,xmmrm,imm  [rvsmi: vex.nds.128.66.0f3a.w1 49 /r /is4]      AVX,SANDYBRIDGE,SO
-VPERMIL2PD     ymmreg,ymmreg,ymmrm,ymmreg,imm  [rvmsi: vex.nds.256.66.0f3a.w0 49 /r /is4]      AVX,SANDYBRIDGE,SY
-VPERMIL2PD     ymmreg,ymmreg,ymmreg,ymmrm,imm  [rvsmi: vex.nds.256.66.0f3a.w1 49 /r /is4]      AVX,SANDYBRIDGE,SY
-VPERMILPS      xmmreg,xmmreg,xmmrm             [rvm:   vex.nds.128.66.0f38 0c /r]              AVX,SANDYBRIDGE,SO
-VPERMILPS      ymmreg,ymmreg,ymmrm             [rvm:   vex.nds.256.66.0f38 0c /r]              AVX,SANDYBRIDGE,SY
-VPERMILPS      xmmreg,xmmrm,imm                [rmi:   vex.128.66.0f3a 04 /r ib]               AVX,SANDYBRIDGE,SO
-VPERMILPS      ymmreg,ymmrm,imm                [rmi:   vex.256.66.0f3a 04 /r ib]               AVX,SANDYBRIDGE,SY
-VPERMILTD2PS   xmmreg,xmmreg,xmmrm,xmmreg      [rvms:  vex.nds.128.66.0f3a.w0 48 /r /is4=0]    AVX,SANDYBRIDGE,SO
-VPERMILTD2PS   xmmreg,xmmreg,xmmreg,xmmrm      [rvsm:  vex.nds.128.66.0f3a.w1 48 /r /is4=0]    AVX,SANDYBRIDGE,SO
-VPERMILTD2PS   ymmreg,ymmreg,ymmrm,ymmreg      [rvms:  vex.nds.256.66.0f3a.w0 48 /r /is4=0]    AVX,SANDYBRIDGE,SY
-VPERMILTD2PS   ymmreg,ymmreg,ymmreg,ymmrm      [rvsm:  vex.nds.256.66.0f3a.w1 48 /r /is4=0]    AVX,SANDYBRIDGE,SY
-VPERMILMO2PS   xmmreg,xmmreg,xmmrm,xmmreg      [rvms:  vex.nds.128.66.0f3a.w0 48 /r /is4=2]    AVX,SANDYBRIDGE,SO
-VPERMILMO2PS   xmmreg,xmmreg,xmmreg,xmmrm      [rvsm:  vex.nds.128.66.0f3a.w1 48 /r /is4=2]    AVX,SANDYBRIDGE,SO
-VPERMILMO2PS   ymmreg,ymmreg,ymmrm,ymmreg      [rvms:  vex.nds.256.66.0f3a.w0 48 /r /is4=2]    AVX,SANDYBRIDGE,SY
-VPERMILMO2PS   ymmreg,ymmreg,ymmreg,ymmrm      [rvsm:  vex.nds.256.66.0f3a.w1 48 /r /is4=2]    AVX,SANDYBRIDGE,SY
-VPERMILMZ2PS   xmmreg,xmmreg,xmmrm,xmmreg      [rvms:  vex.nds.128.66.0f3a.w0 48 /r /is4=3]    AVX,SANDYBRIDGE,SO
-VPERMILMZ2PS   xmmreg,xmmreg,xmmreg,xmmrm      [rvsm:  vex.nds.128.66.0f3a.w1 48 /r /is4=3]    AVX,SANDYBRIDGE,SO
-VPERMILMZ2PS   ymmreg,ymmreg,ymmrm,ymmreg      [rvms:  vex.nds.256.66.0f3a.w0 48 /r /is4=3]    AVX,SANDYBRIDGE,SY
-VPERMILMZ2PS   ymmreg,ymmreg,ymmreg,ymmrm      [rvsm:  vex.nds.256.66.0f3a.w1 48 /r /is4=3]    AVX,SANDYBRIDGE,SY
-VPERMIL2PS     xmmreg,xmmreg,xmmrm,xmmreg,imm  [rvmsi: vex.nds.128.66.0f3a.w0 48 /r /is4]      AVX,SANDYBRIDGE,SO
-VPERMIL2PS     xmmreg,xmmreg,xmmreg,xmmrm,imm  [rvsmi: vex.nds.128.66.0f3a.w1 48 /r /is4]      AVX,SANDYBRIDGE,SO
-VPERMIL2PS     ymmreg,ymmreg,ymmrm,ymmreg,imm  [rvmsi: vex.nds.256.66.0f3a.w0 48 /r /is4]      AVX,SANDYBRIDGE,SY
-VPERMIL2PS     ymmreg,ymmreg,ymmreg,ymmrm,imm  [rvsmi: vex.nds.256.66.0f3a.w1 48 /r /is4]      AVX,SANDYBRIDGE,SY
-VPERM2F128     ymmreg,ymmreg,ymmrm,imm         [rvmi:  vex.nds.256.66.0f3a 06 /r ib]           AVX,SANDYBRIDGE,SY
-VPEXTRB                reg64,xmmreg,imm                [mri:   vex.128.66.0f3a.w0 14 /r ib]            AVX,SANDYBRIDGE,LONG
-VPEXTRB                reg32,xmmreg,imm                [mri:   vex.128.66.0f3a.w0 14 /r ib]            AVX,SANDYBRIDGE
-VPEXTRB                mem,xmmreg,imm                  [mri:   vex.128.66.0f3a.w0 14 /r ib]            AVX,SANDYBRIDGE,SB
-VPEXTRW                reg64,xmmreg,imm                [mri:   vex.128.66.0f.w0 c5 /r ib]              AVX,SANDYBRIDGE,LONG
-VPEXTRW                reg32,xmmreg,imm                [mri:   vex.128.66.0f.w0 c5 /r ib]              AVX,SANDYBRIDGE
-VPEXTRW                mem,xmmreg,imm                  [mri:   vex.128.66.0f.w0 c5 /r ib]              AVX,SANDYBRIDGE,SW
-VPEXTRW                reg64,xmmreg,imm                [mri:   vex.128.66.0f3a.w0 15 /r ib]            AVX,SANDYBRIDGE,LONG
-VPEXTRW                reg32,xmmreg,imm                [mri:   vex.128.66.0f3a.w0 15 /r ib]            AVX,SANDYBRIDGE
-VPEXTRW                mem,xmmreg,imm                  [mri:   vex.128.66.0f3a.w0 15 /r ib]            AVX,SANDYBRIDGE,SW
-VPEXTRD                reg64,xmmreg,imm                [mri:   vex.128.66.0f3a.w0 16 /r ib]            AVX,SANDYBRIDGE,LONG
-VPEXTRD                rm32,xmmreg,imm                 [mri:   vex.128.66.0f3a.w0 16 /r ib]            AVX,SANDYBRIDGE,SD
-VPEXTRQ                rm64,xmmreg,imm                 [mri:   vex.128.66.0f3a.w1 16 /r ib]            AVX,SANDYBRIDGE,SQ,LONG
-VPHADDW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 01 /r]              AVX,SANDYBRIDGE,SO
-VPHADDD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 02 /r]              AVX,SANDYBRIDGE,SO
-VPHADDSW       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 03 /r]              AVX,SANDYBRIDGE,SO
-VPHMINPOSUW    xmmreg,xmmrm                    [rm:    vex.128.66.0f38 41 /r]                  AVX,SANDYBRIDGE,SO
-VPHSUBW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 05 /r]              AVX,SANDYBRIDGE,SO
-VPHSUBD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 06 /r]              AVX,SANDYBRIDGE,SO
-VPHSUBSW       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 07 /r]              AVX,SANDYBRIDGE,SO
-VPINSRB                xmmreg,xmmreg*,mem,imm          [rvmi:  vex.nds.128.66.0f3a 20 /r ib]           AVX,SANDYBRIDGE,SB,AR3
-VPINSRB                xmmreg,xmmreg*,rm8,imm          [rvmi:  vex.nds.128.66.0f3a 20 /r ib]           AVX,SANDYBRIDGE,SB,AR3
-VPINSRB                xmmreg,xmmreg*,reg32,imm        [rvmi:  vex.nds.128.66.0f3a 20 /r ib]           AVX,SANDYBRIDGE,SB,AR3
-VPINSRW                xmmreg,xmmreg*,mem,imm          [rvmi:  vex.nds.128.66.0f c4 /r ib]             AVX,SANDYBRIDGE,SB,AR3
-VPINSRW                xmmreg,xmmreg*,rm16,imm         [rvmi:  vex.nds.128.66.0f c4 /r ib]             AVX,SANDYBRIDGE,SB,AR3
-VPINSRW                xmmreg,xmmreg*,reg32,imm        [rvmi:  vex.nds.128.66.0f c4 /r ib]             AVX,SANDYBRIDGE,SB,AR3
-VPINSRD                xmmreg,xmmreg*,mem,imm          [rvmi:  vex.nds.128.66.0f3a.w0 22 /r ib]        AVX,SANDYBRIDGE,SB,AR3
-VPINSRD                xmmreg,xmmreg*,rm32,imm         [rvmi:  vex.nds.128.66.0f3a.w0 22 /r ib]        AVX,SANDYBRIDGE,SB,AR3
-VPINSRQ                xmmreg,xmmreg*,mem,imm          [rvmi:  vex.nds.128.66.0f3a.w1 22 /r ib]        AVX,SANDYBRIDGE,SB,AR3,LONG
-VPINSRQ                xmmreg,xmmreg*,rm64,imm         [rvmi:  vex.nds.128.66.0f3a.w1 22 /r ib]        AVX,SANDYBRIDGE,SB,AR3,LONG
-VPMADDWD       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f f5 /r]                AVX,SANDYBRIDGE,SO
-VPMADDUBSW     xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 04 /r]              AVX,SANDYBRIDGE,SO
-VPMAXSB                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 3c /r]              AVX,SANDYBRIDGE,SO
-VPMAXSW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f ee /r]                AVX,SANDYBRIDGE,SO
-VPMAXSD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 3d /r]              AVX,SANDYBRIDGE,SO
-VPMAXUB                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f de /r]                AVX,SANDYBRIDGE,SO
-VPMAXUW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 3e /r]              AVX,SANDYBRIDGE,SO
-VPMAXUD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 3f /r]              AVX,SANDYBRIDGE,SO
-VPMINSB                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 38 /r]              AVX,SANDYBRIDGE,SO
-VPMINSW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f ea /r]                AVX,SANDYBRIDGE,SO
-VPMINSD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 39 /r]              AVX,SANDYBRIDGE,SO
-VPMINUB                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f da /r]                AVX,SANDYBRIDGE,SO
-VPMINUW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 3a /r]              AVX,SANDYBRIDGE,SO
-VPMINUD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 3b /r]              AVX,SANDYBRIDGE,SO
+VMOVSS         mem64,xmmreg                    [mr:    vex.128.f3.0f 11 /r]                    AVX,SANDYBRIDGE
+VMOVUPD                xmmreg,xmmrm128                 [rm:    vex.128.66.0f 10 /r]                    AVX,SANDYBRIDGE
+VMOVUPD                xmmrm128,xmmreg                 [mr:    vex.128.66.0f 11 /r]                    AVX,SANDYBRIDGE
+VMOVUPD                ymmreg,ymmrm256                 [rm:    vex.256.66.0f 10 /r]                    AVX,SANDYBRIDGE
+VMOVUPD                ymmrm256,ymmreg                 [mr:    vex.256.66.0f 11 /r]                    AVX,SANDYBRIDGE
+VMOVUPS                xmmreg,xmmrm128                 [rm:    vex.128.0f 10 /r]                       AVX,SANDYBRIDGE
+VMOVUPS                xmmrm128,xmmreg                 [mr:    vex.128.0f 11 /r]                       AVX,SANDYBRIDGE
+VMOVUPS                ymmreg,ymmrm256                 [rm:    vex.256.0f 10 /r]                       AVX,SANDYBRIDGE
+VMOVUPS                ymmrm256,ymmreg                 [mr:    vex.256.0f 11 /r]                       AVX,SANDYBRIDGE
+VMPSADBW       xmmreg,xmmreg*,xmmrm128,imm8    [rvmi:  vex.nds.128.66.0f3a 42 /r ib]           AVX,SANDYBRIDGE
+VMULPD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 59 /r]                AVX,SANDYBRIDGE
+VMULPD         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 59 /r]                AVX,SANDYBRIDGE
+VMULPS         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.0f 59 /r]                   AVX,SANDYBRIDGE
+VMULPS         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.0f 59 /r]                   AVX,SANDYBRIDGE
+VMULSD         xmmreg,xmmreg*,xmmrm64          [rvm:   vex.nds.128.f2.0f 59 /r]                AVX,SANDYBRIDGE
+VMULSS         xmmreg,xmmreg*,xmmrm32          [rvm:   vex.nds.128.f3.0f 59 /r]                AVX,SANDYBRIDGE
+VORPD          xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 56 /r]                AVX,SANDYBRIDGE
+VORPD          ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 56 /r]                AVX,SANDYBRIDGE
+VORPS          xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.0f 56 /r]                   AVX,SANDYBRIDGE
+VORPS          ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.0f 56 /r]                   AVX,SANDYBRIDGE
+VPABSB         xmmreg,xmmrm128                 [rm:    vex.128.66.0f38 1c /r]                  AVX,SANDYBRIDGE
+VPABSW         xmmreg,xmmrm128                 [rm:    vex.128.66.0f38 1d /r]                  AVX,SANDYBRIDGE
+VPABSD         xmmreg,xmmrm128                 [rm:    vex.128.66.0f38 1e /r]                  AVX,SANDYBRIDGE
+VPACKSSWB      xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 63 /r]                AVX,SANDYBRIDGE
+VPACKSSDW      xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 6b /r]                AVX,SANDYBRIDGE
+VPACKUSWB      xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 67 /r]                AVX,SANDYBRIDGE
+VPACKUSDW      xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 2b /r]              AVX,SANDYBRIDGE
+VPADDB         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f fc /r]                AVX,SANDYBRIDGE
+VPADDW         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f fd /r]                AVX,SANDYBRIDGE
+VPADDD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f fe /r]                AVX,SANDYBRIDGE
+VPADDQ         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f d4 /r]                AVX,SANDYBRIDGE
+VPADDSB                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f ec /r]                AVX,SANDYBRIDGE
+VPADDSW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f ed /r]                AVX,SANDYBRIDGE
+VPADDUSB       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f dc /r]                AVX,SANDYBRIDGE
+VPADDUSW       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f dd /r]                AVX,SANDYBRIDGE
+VPALIGNR       xmmreg,xmmreg*,xmmrm128,imm8    [rvmi:  vex.nds.128.66.0f3a 0f /r ib]           AVX,SANDYBRIDGE
+VPAND          xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f db /r]                AVX,SANDYBRIDGE
+VPANDN         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f df /r]                AVX,SANDYBRIDGE
+VPAVGB         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f e0 /r]                AVX,SANDYBRIDGE
+VPAVGW         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f e3 /r]                AVX,SANDYBRIDGE
+VPBLENDVB      xmmreg,xmmreg*,xmmrm128,xmmreg  [rvms:  vex.nds.128.66.0f3a 4c /r /is4]         AVX,SANDYBRIDGE
+VPBLENDW       xmmreg,xmmreg*,xmmrm128,imm8    [rvmi:  vex.nds.128.66.0f3a 0e /r ib]           AVX,SANDYBRIDGE
+VPCMPESTRI     xmmreg,xmmrm128,imm8            [rmi:   vex.128.66.0f3a 61 /r ib]               AVX,SANDYBRIDGE
+VPCMPESTRM     xmmreg,xmmrm128,imm8            [rmi:   vex.128.66.0f3a 60 /r ib]               AVX,SANDYBRIDGE
+VPCMPISTRI     xmmreg,xmmrm128,imm8            [rmi:   vex.128.66.0f3a 63 /r ib]               AVX,SANDYBRIDGE
+VPCMPISTRM     xmmreg,xmmrm128,imm8            [rmi:   vex.128.66.0f3a 62 /r ib]               AVX,SANDYBRIDGE
+VPCMPEQB       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 74 /r]                AVX,SANDYBRIDGE
+VPCMPEQW       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 75 /r]                AVX,SANDYBRIDGE
+VPCMPEQD       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 76 /r]                AVX,SANDYBRIDGE
+VPCMPEQQ       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 29 /r]                AVX,SANDYBRIDGE
+VPCMPGTB       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 64 /r]                AVX,SANDYBRIDGE
+VPCMPGTW       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 65 /r]                AVX,SANDYBRIDGE
+VPCMPGTD       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 66 /r]                AVX,SANDYBRIDGE
+VPCMPGTQ       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 37 /r]                AVX,SANDYBRIDGE
+VPERMILPD      xmmreg,xmmreg,xmmrm128          [rvm:   vex.nds.128.66.0f38 0d /r]              AVX,SANDYBRIDGE
+VPERMILPD      ymmreg,ymmreg,ymmrm256          [rvm:   vex.nds.256.66.0f38 0d /r]              AVX,SANDYBRIDGE
+VPERMILPD      xmmreg,xmmrm128,imm8            [rmi:   vex.128.66.0f3a 05 /r ib]               AVX,SANDYBRIDGE
+VPERMILPD      ymmreg,ymmrm256,imm8            [rmi:   vex.256.66.0f3a 05 /r ib]               AVX,SANDYBRIDGE
+VPERMILTD2PD   xmmreg,xmmreg,xmmrm128,xmmreg   [rvms:  vex.nds.128.66.0f3a.w0 49 /r /is4=0]    AVX,SANDYBRIDGE
+VPERMILTD2PD   xmmreg,xmmreg,xmmreg,xmmrm128   [rvsm:  vex.nds.128.66.0f3a.w1 49 /r /is4=0]    AVX,SANDYBRIDGE
+VPERMILTD2PD   ymmreg,ymmreg,ymmrm256,ymmreg   [rvms:  vex.nds.256.66.0f3a.w0 49 /r /is4=0]    AVX,SANDYBRIDGE
+VPERMILTD2PD   ymmreg,ymmreg,ymmreg,ymmrm256   [rvsm:  vex.nds.256.66.0f3a.w1 49 /r /is4=0]    AVX,SANDYBRIDGE
+VPERMILMO2PD   xmmreg,xmmreg,xmmrm128,xmmreg   [rvms:  vex.nds.128.66.0f3a.w0 49 /r /is4=2]    AVX,SANDYBRIDGE
+VPERMILMO2PD   xmmreg,xmmreg,xmmreg,xmmrm128   [rvsm:  vex.nds.128.66.0f3a.w1 49 /r /is4=2]    AVX,SANDYBRIDGE
+VPERMILMO2PD   ymmreg,ymmreg,ymmrm256,ymmreg   [rvms:  vex.nds.256.66.0f3a.w0 49 /r /is4=2]    AVX,SANDYBRIDGE
+VPERMILMO2PD   ymmreg,ymmreg,ymmreg,ymmrm256   [rvsm:  vex.nds.256.66.0f3a.w1 49 /r /is4=2]    AVX,SANDYBRIDGE
+VPERMILMZ2PD   xmmreg,xmmreg,xmmrm128,xmmreg   [rvms:  vex.nds.128.66.0f3a.w0 49 /r /is4=3]    AVX,SANDYBRIDGE
+VPERMILMZ2PD   xmmreg,xmmreg,xmmreg,xmmrm128   [rvsm:  vex.nds.128.66.0f3a.w1 49 /r /is4=3]    AVX,SANDYBRIDGE
+VPERMILMZ2PD   ymmreg,ymmreg,ymmrm256,ymmreg   [rvms:  vex.nds.256.66.0f3a.w0 49 /r /is4=3]    AVX,SANDYBRIDGE
+VPERMILMZ2PD   ymmreg,ymmreg,ymmreg,ymmrm256   [rvsm:  vex.nds.256.66.0f3a.w1 49 /r /is4=3]    AVX,SANDYBRIDGE
+VPERMIL2PD     xmmreg,xmmreg,xmmrm128,xmmreg,imm8      [rvmsi: vex.nds.128.66.0f3a.w0 49 /r /is4]      AVX,SANDYBRIDGE
+VPERMIL2PD     xmmreg,xmmreg,xmmreg,xmmrm128,imm8      [rvsmi: vex.nds.128.66.0f3a.w1 49 /r /is4]      AVX,SANDYBRIDGE
+VPERMIL2PD     ymmreg,ymmreg,ymmrm256,ymmreg,imm8      [rvmsi: vex.nds.256.66.0f3a.w0 49 /r /is4]      AVX,SANDYBRIDGE
+VPERMIL2PD     ymmreg,ymmreg,ymmreg,ymmrm256,imm8      [rvsmi: vex.nds.256.66.0f3a.w1 49 /r /is4]      AVX,SANDYBRIDGE
+VPERMILPS      xmmreg,xmmreg,xmmrm128          [rvm:   vex.nds.128.66.0f38 0c /r]              AVX,SANDYBRIDGE
+VPERMILPS      ymmreg,ymmreg,ymmrm256          [rvm:   vex.nds.256.66.0f38 0c /r]              AVX,SANDYBRIDGE
+VPERMILPS      xmmreg,xmmrm128,imm8            [rmi:   vex.128.66.0f3a 04 /r ib]               AVX,SANDYBRIDGE
+VPERMILPS      ymmreg,ymmrm256,imm8            [rmi:   vex.256.66.0f3a 04 /r ib]               AVX,SANDYBRIDGE
+VPERMILTD2PS   xmmreg,xmmreg,xmmrm128,xmmreg   [rvms:  vex.nds.128.66.0f3a.w0 48 /r /is4=0]    AVX,SANDYBRIDGE
+VPERMILTD2PS   xmmreg,xmmreg,xmmreg,xmmrm128   [rvsm:  vex.nds.128.66.0f3a.w1 48 /r /is4=0]    AVX,SANDYBRIDGE
+VPERMILTD2PS   ymmreg,ymmreg,ymmrm256,ymmreg   [rvms:  vex.nds.256.66.0f3a.w0 48 /r /is4=0]    AVX,SANDYBRIDGE
+VPERMILTD2PS   ymmreg,ymmreg,ymmreg,ymmrm256   [rvsm:  vex.nds.256.66.0f3a.w1 48 /r /is4=0]    AVX,SANDYBRIDGE
+VPERMILMO2PS   xmmreg,xmmreg,xmmrm128,xmmreg   [rvms:  vex.nds.128.66.0f3a.w0 48 /r /is4=2]    AVX,SANDYBRIDGE
+VPERMILMO2PS   xmmreg,xmmreg,xmmreg,xmmrm128   [rvsm:  vex.nds.128.66.0f3a.w1 48 /r /is4=2]    AVX,SANDYBRIDGE
+VPERMILMO2PS   ymmreg,ymmreg,ymmrm256,ymmreg   [rvms:  vex.nds.256.66.0f3a.w0 48 /r /is4=2]    AVX,SANDYBRIDGE
+VPERMILMO2PS   ymmreg,ymmreg,ymmreg,ymmrm256   [rvsm:  vex.nds.256.66.0f3a.w1 48 /r /is4=2]    AVX,SANDYBRIDGE
+VPERMILMZ2PS   xmmreg,xmmreg,xmmrm128,xmmreg   [rvms:  vex.nds.128.66.0f3a.w0 48 /r /is4=3]    AVX,SANDYBRIDGE
+VPERMILMZ2PS   xmmreg,xmmreg,xmmreg,xmmrm128   [rvsm:  vex.nds.128.66.0f3a.w1 48 /r /is4=3]    AVX,SANDYBRIDGE
+VPERMILMZ2PS   ymmreg,ymmreg,ymmrm256,ymmreg   [rvms:  vex.nds.256.66.0f3a.w0 48 /r /is4=3]    AVX,SANDYBRIDGE
+VPERMILMZ2PS   ymmreg,ymmreg,ymmreg,ymmrm256   [rvsm:  vex.nds.256.66.0f3a.w1 48 /r /is4=3]    AVX,SANDYBRIDGE
+VPERMIL2PS     xmmreg,xmmreg,xmmrm128,xmmreg,imm8      [rvmsi: vex.nds.128.66.0f3a.w0 48 /r /is4]      AVX,SANDYBRIDGE
+VPERMIL2PS     xmmreg,xmmreg,xmmreg,xmmrm128,imm8      [rvsmi: vex.nds.128.66.0f3a.w1 48 /r /is4]      AVX,SANDYBRIDGE
+VPERMIL2PS     ymmreg,ymmreg,ymmrm256,ymmreg,imm8      [rvmsi: vex.nds.256.66.0f3a.w0 48 /r /is4]      AVX,SANDYBRIDGE
+VPERMIL2PS     ymmreg,ymmreg,ymmreg,ymmrm256,imm8      [rvsmi: vex.nds.256.66.0f3a.w1 48 /r /is4]      AVX,SANDYBRIDGE
+VPERM2F128     ymmreg,ymmreg,ymmrm256,imm8             [rvmi:  vex.nds.256.66.0f3a 06 /r ib]           AVX,SANDYBRIDGE
+VPEXTRB                reg64,xmmreg,imm8               [mri:   vex.128.66.0f3a.w0 14 /r ib]            AVX,SANDYBRIDGE,LONG
+VPEXTRB                reg32,xmmreg,imm8               [mri:   vex.128.66.0f3a.w0 14 /r ib]            AVX,SANDYBRIDGE
+VPEXTRB                mem8,xmmreg,imm8                [mri:   vex.128.66.0f3a.w0 14 /r ib]            AVX,SANDYBRIDGE
+VPEXTRW                reg64,xmmreg,imm8               [mri:   vex.128.66.0f.w0 c5 /r ib]              AVX,SANDYBRIDGE,LONG
+VPEXTRW                reg32,xmmreg,imm8               [mri:   vex.128.66.0f.w0 c5 /r ib]              AVX,SANDYBRIDGE
+VPEXTRW                mem16,xmmreg,imm8               [mri:   vex.128.66.0f.w0 c5 /r ib]              AVX,SANDYBRIDGE
+VPEXTRW                reg64,xmmreg,imm8               [mri:   vex.128.66.0f3a.w0 15 /r ib]            AVX,SANDYBRIDGE,LONG
+VPEXTRW                reg32,xmmreg,imm8               [mri:   vex.128.66.0f3a.w0 15 /r ib]            AVX,SANDYBRIDGE
+VPEXTRW                mem16,xmmreg,imm8               [mri:   vex.128.66.0f3a.w0 15 /r ib]            AVX,SANDYBRIDGE
+VPEXTRD                reg64,xmmreg,imm8               [mri:   vex.128.66.0f3a.w0 16 /r ib]            AVX,SANDYBRIDGE,LONG
+VPEXTRD                rm32,xmmreg,imm8                [mri:   vex.128.66.0f3a.w0 16 /r ib]            AVX,SANDYBRIDGE
+VPEXTRQ                rm64,xmmreg,imm8                [mri:   vex.128.66.0f3a.w1 16 /r ib]            AVX,SANDYBRIDGE,LONG
+VPHADDW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 01 /r]              AVX,SANDYBRIDGE
+VPHADDD                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 02 /r]              AVX,SANDYBRIDGE
+VPHADDSW       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 03 /r]              AVX,SANDYBRIDGE
+VPHMINPOSUW    xmmreg,xmmrm128                 [rm:    vex.128.66.0f38 41 /r]                  AVX,SANDYBRIDGE
+VPHSUBW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 05 /r]              AVX,SANDYBRIDGE
+VPHSUBD                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 06 /r]              AVX,SANDYBRIDGE
+VPHSUBSW       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 07 /r]              AVX,SANDYBRIDGE
+VPINSRB                xmmreg,xmmreg*,mem8,imm8        [rvmi:  vex.nds.128.66.0f3a 20 /r ib]           AVX,SANDYBRIDGE,AR3
+VPINSRB                xmmreg,xmmreg*,rm8,imm8         [rvmi:  vex.nds.128.66.0f3a 20 /r ib]           AVX,SANDYBRIDGE,AR3
+VPINSRB                xmmreg,xmmreg*,reg32,imm8       [rvmi:  vex.nds.128.66.0f3a 20 /r ib]           AVX,SANDYBRIDGE,AR3
+VPINSRW                xmmreg,xmmreg*,mem16,imm8       [rvmi:  vex.nds.128.66.0f c4 /r ib]             AVX,SANDYBRIDGE,AR3
+VPINSRW                xmmreg,xmmreg*,rm16,imm8        [rvmi:  vex.nds.128.66.0f c4 /r ib]             AVX,SANDYBRIDGE,AR3
+VPINSRW                xmmreg,xmmreg*,reg32,imm8       [rvmi:  vex.nds.128.66.0f c4 /r ib]             AVX,SANDYBRIDGE,AR3
+VPINSRD                xmmreg,xmmreg*,mem32,imm8       [rvmi:  vex.nds.128.66.0f3a.w0 22 /r ib]        AVX,SANDYBRIDGE,AR3
+VPINSRD                xmmreg,xmmreg*,rm32,imm8        [rvmi:  vex.nds.128.66.0f3a.w0 22 /r ib]        AVX,SANDYBRIDGE,AR3
+VPINSRQ                xmmreg,xmmreg*,mem64,imm8       [rvmi:  vex.nds.128.66.0f3a.w1 22 /r ib]        AVX,SANDYBRIDGE,AR3,LONG
+VPINSRQ                xmmreg,xmmreg*,rm64,imm8        [rvmi:  vex.nds.128.66.0f3a.w1 22 /r ib]        AVX,SANDYBRIDGE,AR3,LONG
+VPMADDWD       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f f5 /r]                AVX,SANDYBRIDGE
+VPMADDUBSW     xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 04 /r]              AVX,SANDYBRIDGE
+VPMAXSB                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 3c /r]              AVX,SANDYBRIDGE
+VPMAXSW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f ee /r]                AVX,SANDYBRIDGE
+VPMAXSD                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 3d /r]              AVX,SANDYBRIDGE
+VPMAXUB                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f de /r]                AVX,SANDYBRIDGE
+VPMAXUW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 3e /r]              AVX,SANDYBRIDGE
+VPMAXUD                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 3f /r]              AVX,SANDYBRIDGE
+VPMINSB                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 38 /r]              AVX,SANDYBRIDGE
+VPMINSW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f ea /r]                AVX,SANDYBRIDGE
+VPMINSD                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 39 /r]              AVX,SANDYBRIDGE
+VPMINUB                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f da /r]                AVX,SANDYBRIDGE
+VPMINUW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 3a /r]              AVX,SANDYBRIDGE
+VPMINUD                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 3b /r]              AVX,SANDYBRIDGE
 VPMOVMSKB      reg64,xmmreg                    [rm:    vex.128.66.0f d7 /r]                    AVX,SANDYBRIDGE,LONG
 VPMOVMSKB      reg32,xmmreg                    [rm:    vex.128.66.0f d7 /r]                    AVX,SANDYBRIDGE
-VPMOVSXBW      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 20 /r]                  AVX,SANDYBRIDGE,SQ
-VPMOVSXBD      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 21 /r]                  AVX,SANDYBRIDGE,SD
-VPMOVSXBQ      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 22 /r]                  AVX,SANDYBRIDGE,SW
-VPMOVSXWD      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 23 /r]                  AVX,SANDYBRIDGE,SQ
-VPMOVSXWQ      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 24 /r]                  AVX,SANDYBRIDGE,SD
-VPMOVSXDQ      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 25 /r]                  AVX,SANDYBRIDGE,SQ
-VPMOVZXBW      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 30 /r]                  AVX,SANDYBRIDGE,SQ
-VPMOVZXBD      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 31 /r]                  AVX,SANDYBRIDGE,SD
-VPMOVZXBQ      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 32 /r]                  AVX,SANDYBRIDGE,SW
-VPMOVZXWD      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 33 /r]                  AVX,SANDYBRIDGE,SQ
-VPMOVZXWQ      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 34 /r]                  AVX,SANDYBRIDGE,SD
-VPMOVZXDQ      xmmreg,xmmrm                    [rm:    vex.128.66.0f38 35 /r]                  AVX,SANDYBRIDGE,SQ
-VPMULHUW       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f e4 /r]                AVX,SANDYBRIDGE,SO
-VPMULHRSW      xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 0b /r]              AVX,SANDYBRIDGE,SO
-VPMULHW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f e5 /r]                AVX,SANDYBRIDGE,SO
-VPMULLW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f d5 /r]                AVX,SANDYBRIDGE,SO
-VPMULLD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 40 /r]              AVX,SANDYBRIDGE,SO
-VPMULUDQ       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f f4 /r]                AVX,SANDYBRIDGE,SO
-VPMULDQ                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 28 /r]              AVX,SANDYBRIDGE,SO
-VPOR           xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f eb /r]                AVX,SANDYBRIDGE,SO
-VPSADBW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f f6 /r]                AVX,SANDYBRIDGE,SO
-VPSHUFB                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 00 /r]              AVX,SANDYBRIDGE,SO
-VPSHUFD                xmmreg,xmmrm,imm                [rmi:   vex.128.66.0f 70 /r ib]                 AVX,SANDYBRIDGE,SO
-VPSHUFHW       xmmreg,xmmrm,imm                [rmi:   vex.128.f3.0f 70 /r ib]                 AVX,SANDYBRIDGE,SO
-VPSHUFLW       xmmreg,xmmrm,imm                [rmi:   vex.128.f2.0f 70 /r ib]                 AVX,SANDYBRIDGE,SO
-VPSIGNB                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 08 /r]              AVX,SANDYBRIDGE,SO
-VPSIGNW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 09 /r]              AVX,SANDYBRIDGE,SO
-VPSIGND                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f38 0a /r]              AVX,SANDYBRIDGE,SO
-VPSLLDQ                xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 73 /7 ib]             AVX,SANDYBRIDGE
-VPSRLDQ                xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 73 /3 ib]             AVX,SANDYBRIDGE
-VPSLLW         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f f1 /r]                AVX,SANDYBRIDGE,SO
-VPSLLW         xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 71 /6 ib]             AVX,SANDYBRIDGE
-VPSLLD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f f2 /r]                AVX,SANDYBRIDGE,SO
-VPSLLD         xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 72 /6 ib]             AVX,SANDYBRIDGE
-VPSLLQ         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f f3 /r]                AVX,SANDYBRIDGE,SO
-VPSLLQ         xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 73 /6 ib]             AVX,SANDYBRIDGE
-VPSRAW         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f e1 /r]                AVX,SANDYBRIDGE,SO
-VPSRAW         xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 71 /4 ib]             AVX,SANDYBRIDGE
-VPSRAD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f e2 /r]                AVX,SANDYBRIDGE,SO
-VPSRAD         xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 72 /4 ib]             AVX,SANDYBRIDGE
-VPSRLW         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f d1 /r]                AVX,SANDYBRIDGE,SO
-VPSRLW         xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 71 /2 ib]             AVX,SANDYBRIDGE
-VPSRLD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f d2 /r]                AVX,SANDYBRIDGE,SO
-VPSRLD         xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 72 /2 ib]             AVX,SANDYBRIDGE
-VPSRLQ         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f d3 /r]                AVX,SANDYBRIDGE,SO
-VPSRLQ         xmmreg,xmmreg*,imm              [vmi:   vex.ndd.128.66.0f 73 /2 ib]             AVX,SANDYBRIDGE
-VPTEST         xmmreg,xmmrm                    [rm:    vex.128.66.0f38 17 /r]                  AVX,SANDYBRIDGE,SO
-VPTEST         ymmreg,ymmrm                    [rm:    vex.256.66.0f38 17 /r]                  AVX,SANDYBRIDGE,SY
-VPSUBB         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f f8 /r]                AVX,SANDYBRIDGE,SO
-VPSUBW         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f f9 /r]                AVX,SANDYBRIDGE,SO
-VPSUBD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f fa /r]                AVX,SANDYBRIDGE,SO
-VPSUBQ         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f fb /r]                AVX,SANDYBRIDGE,SO
-VPSUBSB                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f e8 /r]                AVX,SANDYBRIDGE,SO
-VPSUBSW                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f e9 /r]                AVX,SANDYBRIDGE,SO
-VPSUBUSB       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f d8 /r]                AVX,SANDYBRIDGE,SO
-VPSUBUSW       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f d9 /r]                AVX,SANDYBRIDGE,SO
-VPUNPCKHBW     xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 68 /r]                AVX,SANDYBRIDGE,SO
-VPUNPCKHWD     xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 69 /r]                AVX,SANDYBRIDGE,SO
-VPUNPCKHDQ     xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 6a /r]                AVX,SANDYBRIDGE,SO
-VPUNPCKHQDQ    xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 6d /r]                AVX,SANDYBRIDGE,SO
-VPUNPCKLBW     xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 60 /r]                AVX,SANDYBRIDGE,SO
-VPUNPCKLWD     xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 61 /r]                AVX,SANDYBRIDGE,SO
-VPUNPCKLDQ     xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 62 /r]                AVX,SANDYBRIDGE,SO
-VPUNPCKLQDQ    xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 6c /r]                AVX,SANDYBRIDGE,SO
-VPXOR          xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f ef /r]                AVX,SANDYBRIDGE,SO
-VRCPPS         xmmreg,xmmrm                    [rm:    vex.128.0f 53 /r]                       AVX,SANDYBRIDGE,SO
-VRCPPS         ymmreg,ymmrm                    [rm:    vex.256.0f 53 /r]                       AVX,SANDYBRIDGE,SY
-VRCPSS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f3.0f 53 /r]                AVX,SANDYBRIDGE,SD
-VRSQRTPS       xmmreg,xmmrm                    [rm:    vex.128.0f 52 /r]                       AVX,SANDYBRIDGE,SO
-VRSQRTPS       ymmreg,ymmrm                    [rm:    vex.256.0f 52 /r]                       AVX,SANDYBRIDGE,SY
-VRSQRTSS       xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f3.0f 52 /r]                AVX,SANDYBRIDGE,SD
-VROUNDPD       xmmreg,xmmrm,imm                [rmi:   vex.128.66.0f3a 09 /r ib]               AVX,SANDYBRIDGE,SO
-VROUNDPD       ymmreg,ymmrm,imm                [rmi:   vex.256.66.0f3a 09 /r ib]               AVX,SANDYBRIDGE,SY
-VROUNDPS       xmmreg,xmmrm,imm                [rmi:   vex.128.66.0f3a 08 /r ib]               AVX,SANDYBRIDGE,SO
-VROUNDPS       ymmreg,ymmrm,imm                [rmi:   vex.256.66.0f3a 08 /r ib]               AVX,SANDYBRIDGE,SY
-VROUNDSD       xmmreg,xmmreg*,xmmrm,imm        [rvmi:  vex.nds.128.66.0f3a 0b /r ib]           AVX,SANDYBRIDGE,SQ
-VROUNDSS       xmmreg,xmmreg*,xmmrm,imm        [rvmi:  vex.nds.128.66.0f3a 0a /r ib]           AVX,SANDYBRIDGE,SD
-VSHUFPD                xmmreg,xmmreg*,xmmrm,imm        [rvmi:  vex.nds.128.66.0f c6 /r ib]             AVX,SANDYBRIDGE,SO
-VSHUFPD                ymmreg,ymmreg*,ymmrm,imm        [rvmi:  vex.nds.256.66.0f c6 /r ib]             AVX,SANDYBRIDGE,SY
-VSHUFPS                xmmreg,xmmreg*,xmmrm,imm        [rvmi:  vex.nds.128.0f c6 /r ib]                AVX,SANDYBRIDGE,SO
-VSHUFPS                ymmreg,ymmreg*,ymmrm,imm        [rvmi:  vex.nds.256.0f c6 /r ib]                AVX,SANDYBRIDGE,SY
-VSQRTPD                xmmreg,xmmrm                    [rm:    vex.128.66.0f 51 /r]                    AVX,SANDYBRIDGE,SO
-VSQRTPD                ymmreg,ymmrm                    [rm:    vex.256.66.0f 51 /r]                    AVX,SANDYBRIDGE,SY
-VSQRTPS                xmmreg,xmmrm                    [rm:    vex.128.0f 51 /r]                       AVX,SANDYBRIDGE,SO
-VSQRTPS                ymmreg,ymmrm                    [rm:    vex.256.0f 51 /r]                       AVX,SANDYBRIDGE,SY
-VSQRTSD                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f2.0f 51 /r]                AVX,SANDYBRIDGE,SQ
-VSQRTSS                xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f3.0f 51 /r]                AVX,SANDYBRIDGE,SD
-VSTMXCSR       mem                             [m:     vex.128.0f ae /3]                       AVX,SANDYBRIDGE,SD
-VSUBPD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 5c /r]                AVX,SANDYBRIDGE,SO
-VSUBPD         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 5c /r]                AVX,SANDYBRIDGE,SY
-VSUBPS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.0f 5c /r]                   AVX,SANDYBRIDGE,SO
-VSUBPS         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.0f 5c /r]                   AVX,SANDYBRIDGE,SY
-VSUBSD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f2.0f 5c /r]                AVX,SANDYBRIDGE,SQ
-VSUBSS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.f3.0f 5c /r]                AVX,SANDYBRIDGE,SD
-VTESTPS                xmmreg,xmmrm                    [rm:    vex.128.66.0f38 0e /r]                  AVX,SANDYBRIDGE,SO
-VTESTPS                ymmreg,ymmrm                    [rm:    vex.256.66.0f38 0e /r]                  AVX,SANDYBRIDGE,SY
-VTESTPD                xmmreg,xmmrm                    [rm:    vex.128.66.0f38 0f /r]                  AVX,SANDYBRIDGE,SO
-VTESTPD                ymmreg,ymmrm                    [rm:    vex.256.66.0f38 0f /r]                  AVX,SANDYBRIDGE,SY
-VUCOMISD       xmmreg,xmmrm                    [rm:    vex.128.66.0f 2e /r]                    AVX,SANDYBRIDGE,SQ
-VUCOMISS       xmmreg,xmmrm                    [rm:    vex.128.0f 2e /r]                       AVX,SANDYBRIDGE,SD
-VUNPCKHPD      xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 15 /r]                AVX,SANDYBRIDGE,SO
-VUNPCKHPD      ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 15 /r]                AVX,SANDYBRIDGE,SY
-VUNPCKHPS      xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.0f 15 /r]                   AVX,SANDYBRIDGE,SO
-VUNPCKHPS      ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.0f 15 /r]                   AVX,SANDYBRIDGE,SY
-VUNPCKLPD      xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 14 /r]                AVX,SANDYBRIDGE,SO
-VUNPCKLPD      ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 14 /r]                AVX,SANDYBRIDGE,SY
-VUNPCKLPS      xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.0f 14 /r]                   AVX,SANDYBRIDGE,SO
-VUNPCKLPS      ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.0f 14 /r]                   AVX,SANDYBRIDGE,SY
-VXORPD         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f 57 /r]                AVX,SANDYBRIDGE,SO
-VXORPD         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.66.0f 57 /r]                AVX,SANDYBRIDGE,SY
-VXORPS         xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.0f 57 /r]                   AVX,SANDYBRIDGE,SO
-VXORPS         ymmreg,ymmreg*,ymmrm            [rvm:   vex.nds.256.0f 57 /r]                   AVX,SANDYBRIDGE,SY
+VPMOVSXBW      xmmreg,xmmrm64                  [rm:    vex.128.66.0f38 20 /r]                  AVX,SANDYBRIDGE
+VPMOVSXBD      xmmreg,xmmrm32                  [rm:    vex.128.66.0f38 21 /r]                  AVX,SANDYBRIDGE
+VPMOVSXBQ      xmmreg,xmmrm16                  [rm:    vex.128.66.0f38 22 /r]                  AVX,SANDYBRIDGE
+VPMOVSXWD      xmmreg,xmmrm64                  [rm:    vex.128.66.0f38 23 /r]                  AVX,SANDYBRIDGE
+VPMOVSXWQ      xmmreg,xmmrm32                  [rm:    vex.128.66.0f38 24 /r]                  AVX,SANDYBRIDGE
+VPMOVSXDQ      xmmreg,xmmrm64                  [rm:    vex.128.66.0f38 25 /r]                  AVX,SANDYBRIDGE
+VPMOVZXBW      xmmreg,xmmrm64                  [rm:    vex.128.66.0f38 30 /r]                  AVX,SANDYBRIDGE
+VPMOVZXBD      xmmreg,xmmrm32                  [rm:    vex.128.66.0f38 31 /r]                  AVX,SANDYBRIDGE
+VPMOVZXBQ      xmmreg,xmmrm16                  [rm:    vex.128.66.0f38 32 /r]                  AVX,SANDYBRIDGE
+VPMOVZXWD      xmmreg,xmmrm64                  [rm:    vex.128.66.0f38 33 /r]                  AVX,SANDYBRIDGE
+VPMOVZXWQ      xmmreg,xmmrm32                  [rm:    vex.128.66.0f38 34 /r]                  AVX,SANDYBRIDGE
+VPMOVZXDQ      xmmreg,xmmrm64                  [rm:    vex.128.66.0f38 35 /r]                  AVX,SANDYBRIDGE
+VPMULHUW       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f e4 /r]                AVX,SANDYBRIDGE
+VPMULHRSW      xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 0b /r]              AVX,SANDYBRIDGE
+VPMULHW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f e5 /r]                AVX,SANDYBRIDGE
+VPMULLW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f d5 /r]                AVX,SANDYBRIDGE
+VPMULLD                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 40 /r]              AVX,SANDYBRIDGE
+VPMULUDQ       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f f4 /r]                AVX,SANDYBRIDGE
+VPMULDQ                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 28 /r]              AVX,SANDYBRIDGE
+VPOR           xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f eb /r]                AVX,SANDYBRIDGE
+VPSADBW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f f6 /r]                AVX,SANDYBRIDGE
+VPSHUFB                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 00 /r]              AVX,SANDYBRIDGE
+VPSHUFD                xmmreg,xmmrm128,imm8            [rmi:   vex.128.66.0f 70 /r ib]                 AVX,SANDYBRIDGE
+VPSHUFHW       xmmreg,xmmrm128,imm8            [rmi:   vex.128.f3.0f 70 /r ib]                 AVX,SANDYBRIDGE
+VPSHUFLW       xmmreg,xmmrm128,imm8            [rmi:   vex.128.f2.0f 70 /r ib]                 AVX,SANDYBRIDGE
+VPSIGNB                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 08 /r]              AVX,SANDYBRIDGE
+VPSIGNW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 09 /r]              AVX,SANDYBRIDGE
+VPSIGND                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f38 0a /r]              AVX,SANDYBRIDGE
+VPSLLDQ                xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 73 /7 ib]             AVX,SANDYBRIDGE
+VPSRLDQ                xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 73 /3 ib]             AVX,SANDYBRIDGE
+VPSLLW         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f f1 /r]                AVX,SANDYBRIDGE
+VPSLLW         xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 71 /6 ib]             AVX,SANDYBRIDGE
+VPSLLD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f f2 /r]                AVX,SANDYBRIDGE
+VPSLLD         xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 72 /6 ib]             AVX,SANDYBRIDGE
+VPSLLQ         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f f3 /r]                AVX,SANDYBRIDGE
+VPSLLQ         xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 73 /6 ib]             AVX,SANDYBRIDGE
+VPSRAW         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f e1 /r]                AVX,SANDYBRIDGE
+VPSRAW         xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 71 /4 ib]             AVX,SANDYBRIDGE
+VPSRAD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f e2 /r]                AVX,SANDYBRIDGE
+VPSRAD         xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 72 /4 ib]             AVX,SANDYBRIDGE
+VPSRLW         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f d1 /r]                AVX,SANDYBRIDGE
+VPSRLW         xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 71 /2 ib]             AVX,SANDYBRIDGE
+VPSRLD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f d2 /r]                AVX,SANDYBRIDGE
+VPSRLD         xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 72 /2 ib]             AVX,SANDYBRIDGE
+VPSRLQ         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f d3 /r]                AVX,SANDYBRIDGE
+VPSRLQ         xmmreg,xmmreg*,imm8             [vmi:   vex.ndd.128.66.0f 73 /2 ib]             AVX,SANDYBRIDGE
+VPTEST         xmmreg,xmmrm128                 [rm:    vex.128.66.0f38 17 /r]                  AVX,SANDYBRIDGE
+VPTEST         ymmreg,ymmrm256                 [rm:    vex.256.66.0f38 17 /r]                  AVX,SANDYBRIDGE
+VPSUBB         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f f8 /r]                AVX,SANDYBRIDGE
+VPSUBW         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f f9 /r]                AVX,SANDYBRIDGE
+VPSUBD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f fa /r]                AVX,SANDYBRIDGE
+VPSUBQ         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f fb /r]                AVX,SANDYBRIDGE
+VPSUBSB                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f e8 /r]                AVX,SANDYBRIDGE
+VPSUBSW                xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f e9 /r]                AVX,SANDYBRIDGE
+VPSUBUSB       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f d8 /r]                AVX,SANDYBRIDGE
+VPSUBUSW       xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f d9 /r]                AVX,SANDYBRIDGE
+VPUNPCKHBW     xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 68 /r]                AVX,SANDYBRIDGE
+VPUNPCKHWD     xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 69 /r]                AVX,SANDYBRIDGE
+VPUNPCKHDQ     xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 6a /r]                AVX,SANDYBRIDGE
+VPUNPCKHQDQ    xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 6d /r]                AVX,SANDYBRIDGE
+VPUNPCKLBW     xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 60 /r]                AVX,SANDYBRIDGE
+VPUNPCKLWD     xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 61 /r]                AVX,SANDYBRIDGE
+VPUNPCKLDQ     xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 62 /r]                AVX,SANDYBRIDGE
+VPUNPCKLQDQ    xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 6c /r]                AVX,SANDYBRIDGE
+VPXOR          xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f ef /r]                AVX,SANDYBRIDGE
+VRCPPS         xmmreg,xmmrm128                 [rm:    vex.128.0f 53 /r]                       AVX,SANDYBRIDGE
+VRCPPS         ymmreg,ymmrm256                 [rm:    vex.256.0f 53 /r]                       AVX,SANDYBRIDGE
+VRCPSS         xmmreg,xmmreg*,xmmrm32          [rvm:   vex.nds.128.f3.0f 53 /r]                AVX,SANDYBRIDGE
+VRSQRTPS       xmmreg,xmmrm128                 [rm:    vex.128.0f 52 /r]                       AVX,SANDYBRIDGE
+VRSQRTPS       ymmreg,ymmrm256                 [rm:    vex.256.0f 52 /r]                       AVX,SANDYBRIDGE
+VRSQRTSS       xmmreg,xmmreg*,xmmrm32          [rvm:   vex.nds.128.f3.0f 52 /r]                AVX,SANDYBRIDGE
+VROUNDPD       xmmreg,xmmrm128,imm8            [rmi:   vex.128.66.0f3a 09 /r ib]               AVX,SANDYBRIDGE
+VROUNDPD       ymmreg,ymmrm256,imm8            [rmi:   vex.256.66.0f3a 09 /r ib]               AVX,SANDYBRIDGE
+VROUNDPS       xmmreg,xmmrm128,imm8            [rmi:   vex.128.66.0f3a 08 /r ib]               AVX,SANDYBRIDGE
+VROUNDPS       ymmreg,ymmrm256,imm8            [rmi:   vex.256.66.0f3a 08 /r ib]               AVX,SANDYBRIDGE
+VROUNDSD       xmmreg,xmmreg*,xmmrm64,imm8     [rvmi:  vex.nds.128.66.0f3a 0b /r ib]           AVX,SANDYBRIDGE
+VROUNDSS       xmmreg,xmmreg*,xmmrm32,imm8     [rvmi:  vex.nds.128.66.0f3a 0a /r ib]           AVX,SANDYBRIDGE
+VSHUFPD                xmmreg,xmmreg*,xmmrm128,imm8    [rvmi:  vex.nds.128.66.0f c6 /r ib]             AVX,SANDYBRIDGE
+VSHUFPD                ymmreg,ymmreg*,ymmrm256,imm8    [rvmi:  vex.nds.256.66.0f c6 /r ib]             AVX,SANDYBRIDGE
+VSHUFPS                xmmreg,xmmreg*,xmmrm128,imm8    [rvmi:  vex.nds.128.0f c6 /r ib]                AVX,SANDYBRIDGE
+VSHUFPS                ymmreg,ymmreg*,ymmrm256,imm8    [rvmi:  vex.nds.256.0f c6 /r ib]                AVX,SANDYBRIDGE
+VSQRTPD                xmmreg,xmmrm128                 [rm:    vex.128.66.0f 51 /r]                    AVX,SANDYBRIDGE
+VSQRTPD                ymmreg,ymmrm256                 [rm:    vex.256.66.0f 51 /r]                    AVX,SANDYBRIDGE
+VSQRTPS                xmmreg,xmmrm128                 [rm:    vex.128.0f 51 /r]                       AVX,SANDYBRIDGE
+VSQRTPS                ymmreg,ymmrm256                 [rm:    vex.256.0f 51 /r]                       AVX,SANDYBRIDGE
+VSQRTSD                xmmreg,xmmreg*,xmmrm64          [rvm:   vex.nds.128.f2.0f 51 /r]                AVX,SANDYBRIDGE
+VSQRTSS                xmmreg,xmmreg*,xmmrm32          [rvm:   vex.nds.128.f3.0f 51 /r]                AVX,SANDYBRIDGE
+VSTMXCSR       mem32                           [m:     vex.128.0f ae /3]                       AVX,SANDYBRIDGE
+VSUBPD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 5c /r]                AVX,SANDYBRIDGE
+VSUBPD         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 5c /r]                AVX,SANDYBRIDGE
+VSUBPS         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.0f 5c /r]                   AVX,SANDYBRIDGE
+VSUBPS         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.0f 5c /r]                   AVX,SANDYBRIDGE
+VSUBSD         xmmreg,xmmreg*,xmmrm64          [rvm:   vex.nds.128.f2.0f 5c /r]                AVX,SANDYBRIDGE
+VSUBSS         xmmreg,xmmreg*,xmmrm32          [rvm:   vex.nds.128.f3.0f 5c /r]                AVX,SANDYBRIDGE
+VTESTPS                xmmreg,xmmrm128                 [rm:    vex.128.66.0f38 0e /r]                  AVX,SANDYBRIDGE
+VTESTPS                ymmreg,ymmrm256                 [rm:    vex.256.66.0f38 0e /r]                  AVX,SANDYBRIDGE
+VTESTPD                xmmreg,xmmrm128                 [rm:    vex.128.66.0f38 0f /r]                  AVX,SANDYBRIDGE
+VTESTPD                ymmreg,ymmrm256                 [rm:    vex.256.66.0f38 0f /r]                  AVX,SANDYBRIDGE
+VUCOMISD       xmmreg,xmmrm64                  [rm:    vex.128.66.0f 2e /r]                    AVX,SANDYBRIDGE
+VUCOMISS       xmmreg,xmmrm32                  [rm:    vex.128.0f 2e /r]                       AVX,SANDYBRIDGE
+VUNPCKHPD      xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 15 /r]                AVX,SANDYBRIDGE
+VUNPCKHPD      ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 15 /r]                AVX,SANDYBRIDGE
+VUNPCKHPS      xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.0f 15 /r]                   AVX,SANDYBRIDGE
+VUNPCKHPS      ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.0f 15 /r]                   AVX,SANDYBRIDGE
+VUNPCKLPD      xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 14 /r]                AVX,SANDYBRIDGE
+VUNPCKLPD      ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 14 /r]                AVX,SANDYBRIDGE
+VUNPCKLPS      xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.0f 14 /r]                   AVX,SANDYBRIDGE
+VUNPCKLPS      ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.0f 14 /r]                   AVX,SANDYBRIDGE
+VXORPD         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f 57 /r]                AVX,SANDYBRIDGE
+VXORPD         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.66.0f 57 /r]                AVX,SANDYBRIDGE
+VXORPS         xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.0f 57 /r]                   AVX,SANDYBRIDGE
+VXORPS         ymmreg,ymmreg*,ymmrm256         [rvm:   vex.nds.256.0f 57 /r]                   AVX,SANDYBRIDGE
 VZEROALL       void                            [       vex.256.0f 77]                          AVX,SANDYBRIDGE
 VZEROUPPER     void                            [       vex.128.0f 77]                          AVX,SANDYBRIDGE
 
 ;# Intel Carry-Less Multiplication instructions (CLMUL)
-PCLMULLQLQDQ   xmmreg,xmmrm                    [rm:    66 0f 3a 44 /r 00]                      SSE,WESTMERE,SO
-PCLMULHQLQDQ   xmmreg,xmmrm                    [rm:    66 0f 3a 44 /r 01]                      SSE,WESTMERE,SO
-PCLMULLQHQDQ   xmmreg,xmmrm                    [rm:    66 0f 3a 44 /r 10]                      SSE,WESTMERE,SO
-PCLMULHQHQDQ   xmmreg,xmmrm                    [rm:    66 0f 3a 44 /r 11]                      SSE,WESTMERE,SO
-PCLMULQDQ      xmmreg,xmmrm,imm                [rmi:   66 0f 3a 44 /r ib]                      SSE,WESTMERE,SO
+PCLMULLQLQDQ   xmmreg,xmmrm128                 [rm:    66 0f 3a 44 /r 00]                      SSE,WESTMERE
+PCLMULHQLQDQ   xmmreg,xmmrm128                 [rm:    66 0f 3a 44 /r 01]                      SSE,WESTMERE
+PCLMULLQHQDQ   xmmreg,xmmrm128                 [rm:    66 0f 3a 44 /r 10]                      SSE,WESTMERE
+PCLMULHQHQDQ   xmmreg,xmmrm128                 [rm:    66 0f 3a 44 /r 11]                      SSE,WESTMERE
+PCLMULQDQ      xmmreg,xmmrm128,imm8            [rmi:   66 0f 3a 44 /r ib]                      SSE,WESTMERE
 
 ;# Intel AVX Carry-Less Multiplication instructions (CLMUL)
-VPCLMULLQLQDQ  xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f3a 44 /r 00]           AVX,SANDYBRIDGE,SO
-VPCLMULHQLQDQ  xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f3a 44 /r 01]           AVX,SANDYBRIDGE,SO
-VPCLMULLQHQDQ  xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f3a 44 /r 10]           AVX,SANDYBRIDGE,SO
-VPCLMULHQHQDQ  xmmreg,xmmreg*,xmmrm            [rvm:   vex.nds.128.66.0f3a 44 /r 11]           AVX,SANDYBRIDGE,SO
-VPCLMULQDQ     xmmreg,xmmreg*,xmmrm,imm        [rvmi:  vex.nds.128.66.0f3a 44 /r ib]           AVX,SANDYBRIDGE,SO
+VPCLMULLQLQDQ  xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f3a 44 /r 00]           AVX,SANDYBRIDGE
+VPCLMULHQLQDQ  xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f3a 44 /r 01]           AVX,SANDYBRIDGE
+VPCLMULLQHQDQ  xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f3a 44 /r 10]           AVX,SANDYBRIDGE
+VPCLMULHQHQDQ  xmmreg,xmmreg*,xmmrm128         [rvm:   vex.nds.128.66.0f3a 44 /r 11]           AVX,SANDYBRIDGE
+VPCLMULQDQ     xmmreg,xmmreg*,xmmrm128,imm8    [rvmi:  vex.nds.128.66.0f3a 44 /r ib]           AVX,SANDYBRIDGE
 
 ;# Intel Fused Multiply-Add instructions (FMA)
 VFMADD132PS    xmmreg,xmmreg,xmmrm             [rvm:   vex.dds.128.66.0f38.w0 98 /r]           FMA,FUTURE,SO