Home | History | Annotate | Download | only in X86
      1 // RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
      2 
      3 // CHECK: vaddss  %xmm8, %xmm9, %xmm10
      4 // CHECK:  encoding: [0xc4,0x41,0x32,0x58,0xd0]
      5 vaddss  %xmm8, %xmm9, %xmm10
      6 
      7 // CHECK: vmulss  %xmm8, %xmm9, %xmm10
      8 // CHECK:  encoding: [0xc4,0x41,0x32,0x59,0xd0]
      9 vmulss  %xmm8, %xmm9, %xmm10
     10 
     11 // CHECK: vsubss  %xmm8, %xmm9, %xmm10
     12 // CHECK:  encoding: [0xc4,0x41,0x32,0x5c,0xd0]
     13 vsubss  %xmm8, %xmm9, %xmm10
     14 
     15 // CHECK: vdivss  %xmm8, %xmm9, %xmm10
     16 // CHECK:  encoding: [0xc4,0x41,0x32,0x5e,0xd0]
     17 vdivss  %xmm8, %xmm9, %xmm10
     18 
     19 // CHECK: vaddsd  %xmm8, %xmm9, %xmm10
     20 // CHECK:  encoding: [0xc4,0x41,0x33,0x58,0xd0]
     21 vaddsd  %xmm8, %xmm9, %xmm10
     22 
     23 // CHECK: vmulsd  %xmm8, %xmm9, %xmm10
     24 // CHECK:  encoding: [0xc4,0x41,0x33,0x59,0xd0]
     25 vmulsd  %xmm8, %xmm9, %xmm10
     26 
     27 // CHECK: vsubsd  %xmm8, %xmm9, %xmm10
     28 // CHECK:  encoding: [0xc4,0x41,0x33,0x5c,0xd0]
     29 vsubsd  %xmm8, %xmm9, %xmm10
     30 
     31 // CHECK: vdivsd  %xmm8, %xmm9, %xmm10
     32 // CHECK:  encoding: [0xc4,0x41,0x33,0x5e,0xd0]
     33 vdivsd  %xmm8, %xmm9, %xmm10
     34 
     35 // CHECK:   vaddss  -4(%rcx,%rbx,8), %xmm10, %xmm11
     36 // CHECK:   encoding: [0xc5,0x2a,0x58,0x5c,0xd9,0xfc]
     37 vaddss  -4(%rcx,%rbx,8), %xmm10, %xmm11
     38 
     39 // CHECK:   vsubss  -4(%rcx,%rbx,8), %xmm10, %xmm11
     40 // CHECK:   encoding: [0xc5,0x2a,0x5c,0x5c,0xd9,0xfc]
     41 vsubss  -4(%rcx,%rbx,8), %xmm10, %xmm11
     42 
     43 // CHECK:   vmulss  -4(%rcx,%rbx,8), %xmm10, %xmm11
     44 // CHECK:   encoding: [0xc5,0x2a,0x59,0x5c,0xd9,0xfc]
     45 vmulss  -4(%rcx,%rbx,8), %xmm10, %xmm11
     46 
     47 // CHECK:   vdivss  -4(%rcx,%rbx,8), %xmm10, %xmm11
     48 // CHECK:   encoding: [0xc5,0x2a,0x5e,0x5c,0xd9,0xfc]
     49 vdivss  -4(%rcx,%rbx,8), %xmm10, %xmm11
     50 
     51 // CHECK:   vaddsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
     52 // CHECK:   encoding: [0xc5,0x2b,0x58,0x5c,0xd9,0xfc]
     53 vaddsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
     54 
     55 // CHECK:   vsubsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
     56 // CHECK:   encoding: [0xc5,0x2b,0x5c,0x5c,0xd9,0xfc]
     57 vsubsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
     58 
     59 // CHECK:   vmulsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
     60 // CHECK:   encoding: [0xc5,0x2b,0x59,0x5c,0xd9,0xfc]
     61 vmulsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
     62 
     63 // CHECK:   vdivsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
     64 // CHECK:   encoding: [0xc5,0x2b,0x5e,0x5c,0xd9,0xfc]
     65 vdivsd  -4(%rcx,%rbx,8), %xmm10, %xmm11
     66 
     67 // CHECK: vaddps  %xmm10, %xmm11, %xmm15
     68 // CHECK: encoding: [0xc4,0x41,0x20,0x58,0xfa]
     69 vaddps  %xmm10, %xmm11, %xmm15
     70 
     71 // CHECK: vsubps  %xmm10, %xmm11, %xmm15
     72 // CHECK: encoding: [0xc4,0x41,0x20,0x5c,0xfa]
     73 vsubps  %xmm10, %xmm11, %xmm15
     74 
     75 // CHECK: vmulps  %xmm10, %xmm11, %xmm15
     76 // CHECK: encoding: [0xc4,0x41,0x20,0x59,0xfa]
     77 vmulps  %xmm10, %xmm11, %xmm15
     78 
     79 // CHECK: vdivps  %xmm10, %xmm11, %xmm15
     80 // CHECK: encoding: [0xc4,0x41,0x20,0x5e,0xfa]
     81 vdivps  %xmm10, %xmm11, %xmm15
     82 
     83 // CHECK: vaddpd  %xmm10, %xmm11, %xmm15
     84 // CHECK: encoding: [0xc4,0x41,0x21,0x58,0xfa]
     85 vaddpd  %xmm10, %xmm11, %xmm15
     86 
     87 // CHECK: vsubpd  %xmm10, %xmm11, %xmm15
     88 // CHECK: encoding: [0xc4,0x41,0x21,0x5c,0xfa]
     89 vsubpd  %xmm10, %xmm11, %xmm15
     90 
     91 // CHECK: vmulpd  %xmm10, %xmm11, %xmm15
     92 // CHECK: encoding: [0xc4,0x41,0x21,0x59,0xfa]
     93 vmulpd  %xmm10, %xmm11, %xmm15
     94 
     95 // CHECK: vdivpd  %xmm10, %xmm11, %xmm15
     96 // CHECK: encoding: [0xc4,0x41,0x21,0x5e,0xfa]
     97 vdivpd  %xmm10, %xmm11, %xmm15
     98 
     99 // CHECK: vaddps  -4(%rcx,%rbx,8), %xmm10, %xmm11
    100 // CHECK: encoding: [0xc5,0x28,0x58,0x5c,0xd9,0xfc]
    101 vaddps  -4(%rcx,%rbx,8), %xmm10, %xmm11
    102 
    103 // CHECK: vsubps  -4(%rcx,%rbx,8), %xmm10, %xmm11
    104 // CHECK: encoding: [0xc5,0x28,0x5c,0x5c,0xd9,0xfc]
    105 vsubps  -4(%rcx,%rbx,8), %xmm10, %xmm11
    106 
    107 // CHECK: vmulps  -4(%rcx,%rbx,8), %xmm10, %xmm11
    108 // CHECK: encoding: [0xc5,0x28,0x59,0x5c,0xd9,0xfc]
    109 vmulps  -4(%rcx,%rbx,8), %xmm10, %xmm11
    110 
    111 // CHECK: vdivps  -4(%rcx,%rbx,8), %xmm10, %xmm11
    112 // CHECK: encoding: [0xc5,0x28,0x5e,0x5c,0xd9,0xfc]
    113 vdivps  -4(%rcx,%rbx,8), %xmm10, %xmm11
    114 
    115 // CHECK: vaddpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
    116 // CHECK: encoding: [0xc5,0x29,0x58,0x5c,0xd9,0xfc]
    117 vaddpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
    118 
    119 // CHECK: vsubpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
    120 // CHECK: encoding: [0xc5,0x29,0x5c,0x5c,0xd9,0xfc]
    121 vsubpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
    122 
    123 // CHECK: vmulpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
    124 // CHECK: encoding: [0xc5,0x29,0x59,0x5c,0xd9,0xfc]
    125 vmulpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
    126 
    127 // CHECK: vdivpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
    128 // CHECK: encoding: [0xc5,0x29,0x5e,0x5c,0xd9,0xfc]
    129 vdivpd  -4(%rcx,%rbx,8), %xmm10, %xmm11
    130 
    131 // CHECK: vmaxss  %xmm10, %xmm14, %xmm12
    132 // CHECK: encoding: [0xc4,0x41,0x0a,0x5f,0xe2]
    133           vmaxss  %xmm10, %xmm14, %xmm12
    134 
    135 // CHECK: vmaxsd  %xmm10, %xmm14, %xmm12
    136 // CHECK: encoding: [0xc4,0x41,0x0b,0x5f,0xe2]
    137           vmaxsd  %xmm10, %xmm14, %xmm12
    138 
    139 // CHECK: vminss  %xmm10, %xmm14, %xmm12
    140 // CHECK: encoding: [0xc4,0x41,0x0a,0x5d,0xe2]
    141           vminss  %xmm10, %xmm14, %xmm12
    142 
    143 // CHECK: vminsd  %xmm10, %xmm14, %xmm12
    144 // CHECK: encoding: [0xc4,0x41,0x0b,0x5d,0xe2]
    145           vminsd  %xmm10, %xmm14, %xmm12
    146 
    147 // CHECK: vmaxss  -4(%rbx,%rcx,8), %xmm12, %xmm10
    148 // CHECK: encoding: [0xc5,0x1a,0x5f,0x54,0xcb,0xfc]
    149           vmaxss  -4(%rbx,%rcx,8), %xmm12, %xmm10
    150 
    151 // CHECK: vmaxsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    152 // CHECK: encoding: [0xc5,0x1b,0x5f,0x54,0xcb,0xfc]
    153           vmaxsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    154 
    155 // CHECK: vminss  -4(%rbx,%rcx,8), %xmm12, %xmm10
    156 // CHECK: encoding: [0xc5,0x1a,0x5d,0x54,0xcb,0xfc]
    157           vminss  -4(%rbx,%rcx,8), %xmm12, %xmm10
    158 
    159 // CHECK: vminsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    160 // CHECK: encoding: [0xc5,0x1b,0x5d,0x54,0xcb,0xfc]
    161           vminsd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    162 
    163 // CHECK: vmaxps  %xmm10, %xmm14, %xmm12
    164 // CHECK: encoding: [0xc4,0x41,0x08,0x5f,0xe2]
    165           vmaxps  %xmm10, %xmm14, %xmm12
    166 
    167 // CHECK: vmaxpd  %xmm10, %xmm14, %xmm12
    168 // CHECK: encoding: [0xc4,0x41,0x09,0x5f,0xe2]
    169           vmaxpd  %xmm10, %xmm14, %xmm12
    170 
    171 // CHECK: vminps  %xmm10, %xmm14, %xmm12
    172 // CHECK: encoding: [0xc4,0x41,0x08,0x5d,0xe2]
    173           vminps  %xmm10, %xmm14, %xmm12
    174 
    175 // CHECK: vminpd  %xmm10, %xmm14, %xmm12
    176 // CHECK: encoding: [0xc4,0x41,0x09,0x5d,0xe2]
    177           vminpd  %xmm10, %xmm14, %xmm12
    178 
    179 // CHECK: vmaxps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    180 // CHECK: encoding: [0xc5,0x18,0x5f,0x54,0xcb,0xfc]
    181           vmaxps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    182 
    183 // CHECK: vmaxpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    184 // CHECK: encoding: [0xc5,0x19,0x5f,0x54,0xcb,0xfc]
    185           vmaxpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    186 
    187 // CHECK: vminps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    188 // CHECK: encoding: [0xc5,0x18,0x5d,0x54,0xcb,0xfc]
    189           vminps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    190 
    191 // CHECK: vminpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    192 // CHECK: encoding: [0xc5,0x19,0x5d,0x54,0xcb,0xfc]
    193           vminpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    194 
    195 // CHECK: vandps  %xmm10, %xmm14, %xmm12
    196 // CHECK: encoding: [0xc4,0x41,0x08,0x54,0xe2]
    197           vandps  %xmm10, %xmm14, %xmm12
    198 
    199 // CHECK: vandpd  %xmm10, %xmm14, %xmm12
    200 // CHECK: encoding: [0xc4,0x41,0x09,0x54,0xe2]
    201           vandpd  %xmm10, %xmm14, %xmm12
    202 
    203 // CHECK: vandps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    204 // CHECK: encoding: [0xc5,0x18,0x54,0x54,0xcb,0xfc]
    205           vandps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    206 
    207 // CHECK: vandpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    208 // CHECK: encoding: [0xc5,0x19,0x54,0x54,0xcb,0xfc]
    209           vandpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    210 
    211 // CHECK: vorps  %xmm10, %xmm14, %xmm12
    212 // CHECK: encoding: [0xc4,0x41,0x08,0x56,0xe2]
    213           vorps  %xmm10, %xmm14, %xmm12
    214 
    215 // CHECK: vorpd  %xmm10, %xmm14, %xmm12
    216 // CHECK: encoding: [0xc4,0x41,0x09,0x56,0xe2]
    217           vorpd  %xmm10, %xmm14, %xmm12
    218 
    219 // CHECK: vorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    220 // CHECK: encoding: [0xc5,0x18,0x56,0x54,0xcb,0xfc]
    221           vorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    222 
    223 // CHECK: vorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    224 // CHECK: encoding: [0xc5,0x19,0x56,0x54,0xcb,0xfc]
    225           vorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    226 
    227 // CHECK: vxorps  %xmm10, %xmm14, %xmm12
    228 // CHECK: encoding: [0xc4,0x41,0x08,0x57,0xe2]
    229           vxorps  %xmm10, %xmm14, %xmm12
    230 
    231 // CHECK: vxorpd  %xmm10, %xmm14, %xmm12
    232 // CHECK: encoding: [0xc4,0x41,0x09,0x57,0xe2]
    233           vxorpd  %xmm10, %xmm14, %xmm12
    234 
    235 // CHECK: vxorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    236 // CHECK: encoding: [0xc5,0x18,0x57,0x54,0xcb,0xfc]
    237           vxorps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    238 
    239 // CHECK: vxorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    240 // CHECK: encoding: [0xc5,0x19,0x57,0x54,0xcb,0xfc]
    241           vxorpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    242 
    243 // CHECK: vandnps  %xmm10, %xmm14, %xmm12
    244 // CHECK: encoding: [0xc4,0x41,0x08,0x55,0xe2]
    245           vandnps  %xmm10, %xmm14, %xmm12
    246 
    247 // CHECK: vandnpd  %xmm10, %xmm14, %xmm12
    248 // CHECK: encoding: [0xc4,0x41,0x09,0x55,0xe2]
    249           vandnpd  %xmm10, %xmm14, %xmm12
    250 
    251 // CHECK: vandnps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    252 // CHECK: encoding: [0xc5,0x18,0x55,0x54,0xcb,0xfc]
    253           vandnps  -4(%rbx,%rcx,8), %xmm12, %xmm10
    254 
    255 // CHECK: vandnpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    256 // CHECK: encoding: [0xc5,0x19,0x55,0x54,0xcb,0xfc]
    257           vandnpd  -4(%rbx,%rcx,8), %xmm12, %xmm10
    258 
    259 // CHECK: vmovss  -4(%rbx,%rcx,8), %xmm10
    260 // CHECK: encoding: [0xc5,0x7a,0x10,0x54,0xcb,0xfc]
    261           vmovss  -4(%rbx,%rcx,8), %xmm10
    262 
    263 // CHECK: vmovss  %xmm14, %xmm10, %xmm15
    264 // CHECK: encoding: [0xc4,0x41,0x2a,0x10,0xfe]
    265           vmovss  %xmm14, %xmm10, %xmm15
    266 
    267 // CHECK: vmovsd  -4(%rbx,%rcx,8), %xmm10
    268 // CHECK: encoding: [0xc5,0x7b,0x10,0x54,0xcb,0xfc]
    269           vmovsd  -4(%rbx,%rcx,8), %xmm10
    270 
    271 // CHECK: vmovsd  %xmm14, %xmm10, %xmm15
    272 // CHECK: encoding: [0xc4,0x41,0x2b,0x10,0xfe]
    273           vmovsd  %xmm14, %xmm10, %xmm15
    274 
    275 // CHECK: vunpckhps  %xmm15, %xmm12, %xmm13
    276 // CHECK: encoding: [0xc4,0x41,0x18,0x15,0xef]
    277           vunpckhps  %xmm15, %xmm12, %xmm13
    278 
    279 // CHECK: vunpckhpd  %xmm15, %xmm12, %xmm13
    280 // CHECK: encoding: [0xc4,0x41,0x19,0x15,0xef]
    281           vunpckhpd  %xmm15, %xmm12, %xmm13
    282 
    283 // CHECK: vunpcklps  %xmm15, %xmm12, %xmm13
    284 // CHECK: encoding: [0xc4,0x41,0x18,0x14,0xef]
    285           vunpcklps  %xmm15, %xmm12, %xmm13
    286 
    287 // CHECK: vunpcklpd  %xmm15, %xmm12, %xmm13
    288 // CHECK: encoding: [0xc4,0x41,0x19,0x14,0xef]
    289           vunpcklpd  %xmm15, %xmm12, %xmm13
    290 
    291 // CHECK: vunpckhps  -4(%rbx,%rcx,8), %xmm12, %xmm15
    292 // CHECK: encoding: [0xc5,0x18,0x15,0x7c,0xcb,0xfc]
    293           vunpckhps  -4(%rbx,%rcx,8), %xmm12, %xmm15
    294 
    295 // CHECK: vunpckhpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
    296 // CHECK: encoding: [0xc5,0x19,0x15,0x7c,0xcb,0xfc]
    297           vunpckhpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
    298 
    299 // CHECK: vunpcklps  -4(%rbx,%rcx,8), %xmm12, %xmm15
    300 // CHECK: encoding: [0xc5,0x18,0x14,0x7c,0xcb,0xfc]
    301           vunpcklps  -4(%rbx,%rcx,8), %xmm12, %xmm15
    302 
    303 // CHECK: vunpcklpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
    304 // CHECK: encoding: [0xc5,0x19,0x14,0x7c,0xcb,0xfc]
    305           vunpcklpd  -4(%rbx,%rcx,8), %xmm12, %xmm15
    306 
    307 // CHECK: vcmpps  $0, %xmm10, %xmm12, %xmm15
    308 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xfa,0x00]
    309           vcmpps  $0, %xmm10, %xmm12, %xmm15
    310 
    311 // CHECK: vcmpps  $0, (%rax), %xmm12, %xmm15
    312 // CHECK: encoding: [0xc5,0x18,0xc2,0x38,0x00]
    313           vcmpps  $0, (%rax), %xmm12, %xmm15
    314 
    315 // CHECK: vcmpps  $7, %xmm10, %xmm12, %xmm15
    316 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xfa,0x07]
    317           vcmpps  $7, %xmm10, %xmm12, %xmm15
    318 
    319 // CHECK: vcmppd  $0, %xmm10, %xmm12, %xmm15
    320 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xfa,0x00]
    321           vcmppd  $0, %xmm10, %xmm12, %xmm15
    322 
    323 // CHECK: vcmppd  $0, (%rax), %xmm12, %xmm15
    324 // CHECK: encoding: [0xc5,0x19,0xc2,0x38,0x00]
    325           vcmppd  $0, (%rax), %xmm12, %xmm15
    326 
    327 // CHECK: vcmppd  $7, %xmm10, %xmm12, %xmm15
    328 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xfa,0x07]
    329           vcmppd  $7, %xmm10, %xmm12, %xmm15
    330 
    331 // CHECK: vshufps  $8, %xmm11, %xmm12, %xmm13
    332 // CHECK: encoding: [0xc4,0x41,0x18,0xc6,0xeb,0x08]
    333           vshufps  $8, %xmm11, %xmm12, %xmm13
    334 
    335 // CHECK: vshufps  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
    336 // CHECK: encoding: [0xc5,0x18,0xc6,0x6c,0xcb,0xfc,0x08]
    337           vshufps  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
    338 
    339 // CHECK: vshufpd  $8, %xmm11, %xmm12, %xmm13
    340 // CHECK: encoding: [0xc4,0x41,0x19,0xc6,0xeb,0x08]
    341           vshufpd  $8, %xmm11, %xmm12, %xmm13
    342 
    343 // CHECK: vshufpd  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
    344 // CHECK: encoding: [0xc5,0x19,0xc6,0x6c,0xcb,0xfc,0x08]
    345           vshufpd  $8, -4(%rbx,%rcx,8), %xmm12, %xmm13
    346 
    347 // CHECK: vcmpps  $0, %xmm11, %xmm12, %xmm13
    348 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x00]
    349           vcmpeqps   %xmm11, %xmm12, %xmm13
    350 
    351 // CHECK: vcmpps  $2, %xmm11, %xmm12, %xmm13
    352 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x02]
    353           vcmpleps   %xmm11, %xmm12, %xmm13
    354 
    355 // CHECK: vcmpps  $1, %xmm11, %xmm12, %xmm13
    356 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x01]
    357           vcmpltps   %xmm11, %xmm12, %xmm13
    358 
    359 // CHECK: vcmpps  $4, %xmm11, %xmm12, %xmm13
    360 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x04]
    361           vcmpneqps   %xmm11, %xmm12, %xmm13
    362 
    363 // CHECK: vcmpps  $6, %xmm11, %xmm12, %xmm13
    364 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x06]
    365           vcmpnleps   %xmm11, %xmm12, %xmm13
    366 
    367 // CHECK: vcmpps  $5, %xmm11, %xmm12, %xmm13
    368 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x05]
    369           vcmpnltps   %xmm11, %xmm12, %xmm13
    370 
    371 // CHECK: vcmpps  $7, %xmm11, %xmm12, %xmm13
    372 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x07]
    373           vcmpordps   %xmm11, %xmm12, %xmm13
    374 
    375 // CHECK: vcmpps  $3, %xmm11, %xmm12, %xmm13
    376 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x03]
    377           vcmpunordps   %xmm11, %xmm12, %xmm13
    378 
    379 // CHECK: vcmpps  $0, -4(%rbx,%rcx,8), %xmm12, %xmm13
    380 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x00]
    381           vcmpeqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
    382 
    383 // CHECK: vcmpps  $2, -4(%rbx,%rcx,8), %xmm12, %xmm13
    384 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x02]
    385           vcmpleps   -4(%rbx,%rcx,8), %xmm12, %xmm13
    386 
    387 // CHECK: vcmpps  $1, -4(%rbx,%rcx,8), %xmm12, %xmm13
    388 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x01]
    389           vcmpltps   -4(%rbx,%rcx,8), %xmm12, %xmm13
    390 
    391 // CHECK: vcmpps  $4, -4(%rbx,%rcx,8), %xmm12, %xmm13
    392 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x04]
    393           vcmpneqps   -4(%rbx,%rcx,8), %xmm12, %xmm13
    394 
    395 // CHECK: vcmpps  $6, -4(%rbx,%rcx,8), %xmm12, %xmm13
    396 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x06]
    397           vcmpnleps   -4(%rbx,%rcx,8), %xmm12, %xmm13
    398 
    399 // CHECK: vcmpps  $5, -4(%rbx,%rcx,8), %xmm12, %xmm13
    400 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x05]
    401           vcmpnltps   -4(%rbx,%rcx,8), %xmm12, %xmm13
    402 
    403 // CHECK: vcmpps  $7, -4(%rbx,%rcx,8), %xmm6, %xmm2
    404 // CHECK: encoding: [0xc5,0xc8,0xc2,0x54,0xcb,0xfc,0x07]
    405           vcmpordps   -4(%rbx,%rcx,8), %xmm6, %xmm2
    406 
    407 // CHECK: vcmpps  $3, -4(%rbx,%rcx,8), %xmm12, %xmm13
    408 // CHECK: encoding: [0xc5,0x18,0xc2,0x6c,0xcb,0xfc,0x03]
    409           vcmpunordps   -4(%rbx,%rcx,8), %xmm12, %xmm13
    410 
    411 // CHECK: vcmppd  $0, %xmm11, %xmm12, %xmm13
    412 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x00]
    413           vcmpeqpd   %xmm11, %xmm12, %xmm13
    414 
    415 // CHECK: vcmppd  $2, %xmm11, %xmm12, %xmm13
    416 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x02]
    417           vcmplepd   %xmm11, %xmm12, %xmm13
    418 
    419 // CHECK: vcmppd  $1, %xmm11, %xmm12, %xmm13
    420 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x01]
    421           vcmpltpd   %xmm11, %xmm12, %xmm13
    422 
    423 // CHECK: vcmppd  $4, %xmm11, %xmm12, %xmm13
    424 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x04]
    425           vcmpneqpd   %xmm11, %xmm12, %xmm13
    426 
    427 // CHECK: vcmppd  $6, %xmm11, %xmm12, %xmm13
    428 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x06]
    429           vcmpnlepd   %xmm11, %xmm12, %xmm13
    430 
    431 // CHECK: vcmppd  $5, %xmm11, %xmm12, %xmm13
    432 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x05]
    433           vcmpnltpd   %xmm11, %xmm12, %xmm13
    434 
    435 // CHECK: vcmppd  $7, %xmm11, %xmm12, %xmm13
    436 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x07]
    437           vcmpordpd   %xmm11, %xmm12, %xmm13
    438 
    439 // CHECK: vcmppd  $3, %xmm11, %xmm12, %xmm13
    440 // CHECK: encoding: [0xc4,0x41,0x19,0xc2,0xeb,0x03]
    441           vcmpunordpd   %xmm11, %xmm12, %xmm13
    442 
    443 // CHECK: vcmppd  $0, -4(%rbx,%rcx,8), %xmm12, %xmm13
    444 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x00]
    445           vcmpeqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    446 
    447 // CHECK: vcmppd  $2, -4(%rbx,%rcx,8), %xmm12, %xmm13
    448 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x02]
    449           vcmplepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    450 
    451 // CHECK: vcmppd  $1, -4(%rbx,%rcx,8), %xmm12, %xmm13
    452 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x01]
    453           vcmpltpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    454 
    455 // CHECK: vcmppd  $4, -4(%rbx,%rcx,8), %xmm12, %xmm13
    456 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x04]
    457           vcmpneqpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    458 
    459 // CHECK: vcmppd  $6, -4(%rbx,%rcx,8), %xmm12, %xmm13
    460 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x06]
    461           vcmpnlepd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    462 
    463 // CHECK: vcmppd  $5, -4(%rbx,%rcx,8), %xmm12, %xmm13
    464 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x05]
    465           vcmpnltpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    466 
    467 // CHECK: vcmppd  $7, -4(%rbx,%rcx,8), %xmm6, %xmm2
    468 // CHECK: encoding: [0xc5,0xc9,0xc2,0x54,0xcb,0xfc,0x07]
    469           vcmpordpd   -4(%rbx,%rcx,8), %xmm6, %xmm2
    470 
    471 // CHECK: vcmppd  $3, -4(%rbx,%rcx,8), %xmm12, %xmm13
    472 // CHECK: encoding: [0xc5,0x19,0xc2,0x6c,0xcb,0xfc,0x03]
    473           vcmpunordpd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    474 
    475 // CHECK: vcmpss  $0, %xmm11, %xmm12, %xmm13
    476 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x00]
    477           vcmpeqss   %xmm11, %xmm12, %xmm13
    478 
    479 // CHECK: vcmpss  $2, %xmm11, %xmm12, %xmm13
    480 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x02]
    481           vcmpless   %xmm11, %xmm12, %xmm13
    482 
    483 // CHECK: vcmpss  $1, %xmm11, %xmm12, %xmm13
    484 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x01]
    485           vcmpltss   %xmm11, %xmm12, %xmm13
    486 
    487 // CHECK: vcmpss  $4, %xmm11, %xmm12, %xmm13
    488 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x04]
    489           vcmpneqss   %xmm11, %xmm12, %xmm13
    490 
    491 // CHECK: vcmpss  $6, %xmm11, %xmm12, %xmm13
    492 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x06]
    493           vcmpnless   %xmm11, %xmm12, %xmm13
    494 
    495 // CHECK: vcmpss  $5, %xmm11, %xmm12, %xmm13
    496 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x05]
    497           vcmpnltss   %xmm11, %xmm12, %xmm13
    498 
    499 // CHECK: vcmpss  $7, %xmm11, %xmm12, %xmm13
    500 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x07]
    501           vcmpordss   %xmm11, %xmm12, %xmm13
    502 
    503 // CHECK: vcmpss  $3, %xmm11, %xmm12, %xmm13
    504 // CHECK: encoding: [0xc4,0x41,0x1a,0xc2,0xeb,0x03]
    505           vcmpunordss   %xmm11, %xmm12, %xmm13
    506 
    507 // CHECK: vcmpss  $0, -4(%rbx,%rcx,8), %xmm12, %xmm13
    508 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x00]
    509           vcmpeqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
    510 
    511 // CHECK: vcmpss  $2, -4(%rbx,%rcx,8), %xmm12, %xmm13
    512 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x02]
    513           vcmpless   -4(%rbx,%rcx,8), %xmm12, %xmm13
    514 
    515 // CHECK: vcmpss  $1, -4(%rbx,%rcx,8), %xmm12, %xmm13
    516 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x01]
    517           vcmpltss   -4(%rbx,%rcx,8), %xmm12, %xmm13
    518 
    519 // CHECK: vcmpss  $4, -4(%rbx,%rcx,8), %xmm12, %xmm13
    520 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x04]
    521           vcmpneqss   -4(%rbx,%rcx,8), %xmm12, %xmm13
    522 
    523 // CHECK: vcmpss  $6, -4(%rbx,%rcx,8), %xmm12, %xmm13
    524 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x06]
    525           vcmpnless   -4(%rbx,%rcx,8), %xmm12, %xmm13
    526 
    527 // CHECK: vcmpss  $5, -4(%rbx,%rcx,8), %xmm12, %xmm13
    528 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x05]
    529           vcmpnltss   -4(%rbx,%rcx,8), %xmm12, %xmm13
    530 
    531 // CHECK: vcmpss  $7, -4(%rbx,%rcx,8), %xmm6, %xmm2
    532 // CHECK: encoding: [0xc5,0xca,0xc2,0x54,0xcb,0xfc,0x07]
    533           vcmpordss   -4(%rbx,%rcx,8), %xmm6, %xmm2
    534 
    535 // CHECK: vcmpss  $3, -4(%rbx,%rcx,8), %xmm12, %xmm13
    536 // CHECK: encoding: [0xc5,0x1a,0xc2,0x6c,0xcb,0xfc,0x03]
    537           vcmpunordss   -4(%rbx,%rcx,8), %xmm12, %xmm13
    538 
    539 // CHECK: vcmpsd  $0, %xmm11, %xmm12, %xmm13
    540 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x00]
    541           vcmpeqsd   %xmm11, %xmm12, %xmm13
    542 
    543 // CHECK: vcmpsd  $2, %xmm11, %xmm12, %xmm13
    544 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x02]
    545           vcmplesd   %xmm11, %xmm12, %xmm13
    546 
    547 // CHECK: vcmpsd  $1, %xmm11, %xmm12, %xmm13
    548 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x01]
    549           vcmpltsd   %xmm11, %xmm12, %xmm13
    550 
    551 // CHECK: vcmpsd  $4, %xmm11, %xmm12, %xmm13
    552 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x04]
    553           vcmpneqsd   %xmm11, %xmm12, %xmm13
    554 
    555 // CHECK: vcmpsd  $6, %xmm11, %xmm12, %xmm13
    556 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x06]
    557           vcmpnlesd   %xmm11, %xmm12, %xmm13
    558 
    559 // CHECK: vcmpsd  $5, %xmm11, %xmm12, %xmm13
    560 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x05]
    561           vcmpnltsd   %xmm11, %xmm12, %xmm13
    562 
    563 // CHECK: vcmpsd  $7, %xmm11, %xmm12, %xmm13
    564 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x07]
    565           vcmpordsd   %xmm11, %xmm12, %xmm13
    566 
    567 // CHECK: vcmpsd  $3, %xmm11, %xmm12, %xmm13
    568 // CHECK: encoding: [0xc4,0x41,0x1b,0xc2,0xeb,0x03]
    569           vcmpunordsd   %xmm11, %xmm12, %xmm13
    570 
    571 // CHECK: vcmpsd  $0, -4(%rbx,%rcx,8), %xmm12, %xmm13
    572 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x00]
    573           vcmpeqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    574 
    575 // CHECK: vcmpsd  $2, -4(%rbx,%rcx,8), %xmm12, %xmm13
    576 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x02]
    577           vcmplesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    578 
    579 // CHECK: vcmpsd  $1, -4(%rbx,%rcx,8), %xmm12, %xmm13
    580 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x01]
    581           vcmpltsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    582 
    583 // CHECK: vcmpsd  $4, -4(%rbx,%rcx,8), %xmm12, %xmm13
    584 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x04]
    585           vcmpneqsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    586 
    587 // CHECK: vcmpsd  $6, -4(%rbx,%rcx,8), %xmm12, %xmm13
    588 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x06]
    589           vcmpnlesd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    590 
    591 // CHECK: vcmpsd  $5, -4(%rbx,%rcx,8), %xmm12, %xmm13
    592 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x05]
    593           vcmpnltsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    594 
    595 // CHECK: vcmpsd  $7, -4(%rbx,%rcx,8), %xmm6, %xmm2
    596 // CHECK: encoding: [0xc5,0xcb,0xc2,0x54,0xcb,0xfc,0x07]
    597           vcmpordsd   -4(%rbx,%rcx,8), %xmm6, %xmm2
    598 
    599 // CHECK: vcmpsd  $3, -4(%rbx,%rcx,8), %xmm12, %xmm13
    600 // CHECK: encoding: [0xc5,0x1b,0xc2,0x6c,0xcb,0xfc,0x03]
    601           vcmpunordsd   -4(%rbx,%rcx,8), %xmm12, %xmm13
    602 
    603 // CHECK: vucomiss  %xmm11, %xmm12
    604 // CHECK: encoding: [0xc4,0x41,0x78,0x2e,0xe3]
    605           vucomiss  %xmm11, %xmm12
    606 
    607 // CHECK: vucomiss  (%rax), %xmm12
    608 // CHECK: encoding: [0xc5,0x78,0x2e,0x20]
    609           vucomiss  (%rax), %xmm12
    610 
    611 // CHECK: vcomiss  %xmm11, %xmm12
    612 // CHECK: encoding: [0xc4,0x41,0x78,0x2f,0xe3]
    613           vcomiss  %xmm11, %xmm12
    614 
    615 // CHECK: vcomiss  (%rax), %xmm12
    616 // CHECK: encoding: [0xc5,0x78,0x2f,0x20]
    617           vcomiss  (%rax), %xmm12
    618 
    619 // CHECK: vucomisd  %xmm11, %xmm12
    620 // CHECK: encoding: [0xc4,0x41,0x79,0x2e,0xe3]
    621           vucomisd  %xmm11, %xmm12
    622 
    623 // CHECK: vucomisd  (%rax), %xmm12
    624 // CHECK: encoding: [0xc5,0x79,0x2e,0x20]
    625           vucomisd  (%rax), %xmm12
    626 
    627 // CHECK: vcomisd  %xmm11, %xmm12
    628 // CHECK: encoding: [0xc4,0x41,0x79,0x2f,0xe3]
    629           vcomisd  %xmm11, %xmm12
    630 
    631 // CHECK: vcomisd  (%rax), %xmm12
    632 // CHECK: encoding: [0xc5,0x79,0x2f,0x20]
    633           vcomisd  (%rax), %xmm12
    634 
    635 // CHECK: vcvttss2si  (%rcx), %eax
    636 // CHECK: encoding: [0xc5,0xfa,0x2c,0x01]
    637           vcvttss2si  (%rcx), %eax
    638 
    639 // CHECK: vcvtsi2ss  (%rax), %xmm11, %xmm12
    640 // CHECK: encoding: [0xc5,0x22,0x2a,0x20]
    641           vcvtsi2ss  (%rax), %xmm11, %xmm12
    642 
    643 // CHECK: vcvtsi2ss  (%rax), %xmm11, %xmm12
    644 // CHECK: encoding: [0xc5,0x22,0x2a,0x20]
    645           vcvtsi2ss  (%rax), %xmm11, %xmm12
    646 
    647 // CHECK: vcvttsd2si  (%rcx), %eax
    648 // CHECK: encoding: [0xc5,0xfb,0x2c,0x01]
    649           vcvttsd2si  (%rcx), %eax
    650 
    651 // CHECK: vcvtsi2sd  (%rax), %xmm11, %xmm12
    652 // CHECK: encoding: [0xc5,0x23,0x2a,0x20]
    653           vcvtsi2sd  (%rax), %xmm11, %xmm12
    654 
    655 // CHECK: vcvtsi2sd  (%rax), %xmm11, %xmm12
    656 // CHECK: encoding: [0xc5,0x23,0x2a,0x20]
    657           vcvtsi2sd  (%rax), %xmm11, %xmm12
    658 
    659 // CHECK: vmovaps  (%rax), %xmm12
    660 // CHECK: encoding: [0xc5,0x78,0x28,0x20]
    661           vmovaps  (%rax), %xmm12
    662 
    663 // CHECK: vmovaps  %xmm11, %xmm12
    664 // CHECK: encoding: [0xc4,0x41,0x78,0x28,0xe3]
    665           vmovaps  %xmm11, %xmm12
    666 
    667 // CHECK: vmovaps  %xmm11, (%rax)
    668 // CHECK: encoding: [0xc5,0x78,0x29,0x18]
    669           vmovaps  %xmm11, (%rax)
    670 
    671 // CHECK: vmovapd  (%rax), %xmm12
    672 // CHECK: encoding: [0xc5,0x79,0x28,0x20]
    673           vmovapd  (%rax), %xmm12
    674 
    675 // CHECK: vmovapd  %xmm11, %xmm12
    676 // CHECK: encoding: [0xc4,0x41,0x79,0x28,0xe3]
    677           vmovapd  %xmm11, %xmm12
    678 
    679 // CHECK: vmovapd  %xmm11, (%rax)
    680 // CHECK: encoding: [0xc5,0x79,0x29,0x18]
    681           vmovapd  %xmm11, (%rax)
    682 
    683 // CHECK: vmovups  (%rax), %xmm12
    684 // CHECK: encoding: [0xc5,0x78,0x10,0x20]
    685           vmovups  (%rax), %xmm12
    686 
    687 // CHECK: vmovups  %xmm11, %xmm12
    688 // CHECK: encoding: [0xc4,0x41,0x78,0x10,0xe3]
    689           vmovups  %xmm11, %xmm12
    690 
    691 // CHECK: vmovups  %xmm11, (%rax)
    692 // CHECK: encoding: [0xc5,0x78,0x11,0x18]
    693           vmovups  %xmm11, (%rax)
    694 
    695 // CHECK: vmovupd  (%rax), %xmm12
    696 // CHECK: encoding: [0xc5,0x79,0x10,0x20]
    697           vmovupd  (%rax), %xmm12
    698 
    699 // CHECK: vmovupd  %xmm11, %xmm12
    700 // CHECK: encoding: [0xc4,0x41,0x79,0x10,0xe3]
    701           vmovupd  %xmm11, %xmm12
    702 
    703 // CHECK: vmovupd  %xmm11, (%rax)
    704 // CHECK: encoding: [0xc5,0x79,0x11,0x18]
    705           vmovupd  %xmm11, (%rax)
    706 
    707 // CHECK: vmovlps  %xmm11, (%rax)
    708 // CHECK: encoding: [0xc5,0x78,0x13,0x18]
    709           vmovlps  %xmm11, (%rax)
    710 
    711 // CHECK: vmovlps  (%rax), %xmm12, %xmm13
    712 // CHECK: encoding: [0xc5,0x18,0x12,0x28]
    713           vmovlps  (%rax), %xmm12, %xmm13
    714 
    715 // CHECK: vmovlpd  %xmm11, (%rax)
    716 // CHECK: encoding: [0xc5,0x79,0x13,0x18]
    717           vmovlpd  %xmm11, (%rax)
    718 
    719 // CHECK: vmovlpd  (%rax), %xmm12, %xmm13
    720 // CHECK: encoding: [0xc5,0x19,0x12,0x28]
    721           vmovlpd  (%rax), %xmm12, %xmm13
    722 
    723 // CHECK: vmovhps  %xmm11, (%rax)
    724 // CHECK: encoding: [0xc5,0x78,0x17,0x18]
    725           vmovhps  %xmm11, (%rax)
    726 
    727 // CHECK: vmovhps  (%rax), %xmm12, %xmm13
    728 // CHECK: encoding: [0xc5,0x18,0x16,0x28]
    729           vmovhps  (%rax), %xmm12, %xmm13
    730 
    731 // CHECK: vmovhpd  %xmm11, (%rax)
    732 // CHECK: encoding: [0xc5,0x79,0x17,0x18]
    733           vmovhpd  %xmm11, (%rax)
    734 
    735 // CHECK: vmovhpd  (%rax), %xmm12, %xmm13
    736 // CHECK: encoding: [0xc5,0x19,0x16,0x28]
    737           vmovhpd  (%rax), %xmm12, %xmm13
    738 
    739 // CHECK: vmovlhps  %xmm11, %xmm12, %xmm13
    740 // CHECK: encoding: [0xc4,0x41,0x18,0x16,0xeb]
    741           vmovlhps  %xmm11, %xmm12, %xmm13
    742 
    743 // CHECK: vmovhlps  %xmm11, %xmm12, %xmm13
    744 // CHECK: encoding: [0xc4,0x41,0x18,0x12,0xeb]
    745           vmovhlps  %xmm11, %xmm12, %xmm13
    746 
    747 // CHECK: vcvtss2sil  %xmm11, %eax
    748 // CHECK: encoding: [0xc4,0xc1,0x7a,0x2d,0xc3]
    749           vcvtss2si  %xmm11, %eax
    750 
    751 // CHECK: vcvtss2sil  (%rax), %ebx
    752 // CHECK: encoding: [0xc5,0xfa,0x2d,0x18]
    753           vcvtss2si  (%rax), %ebx
    754 
    755 // CHECK: vcvtdq2ps  %xmm10, %xmm12
    756 // CHECK: encoding: [0xc4,0x41,0x78,0x5b,0xe2]
    757           vcvtdq2ps  %xmm10, %xmm12
    758 
    759 // CHECK: vcvtdq2ps  (%rax), %xmm12
    760 // CHECK: encoding: [0xc5,0x78,0x5b,0x20]
    761           vcvtdq2ps  (%rax), %xmm12
    762 
    763 // CHECK: vcvtsd2ss  %xmm12, %xmm13, %xmm10
    764 // CHECK: encoding: [0xc4,0x41,0x13,0x5a,0xd4]
    765           vcvtsd2ss  %xmm12, %xmm13, %xmm10
    766 
    767 // CHECK: vcvtsd2ss  (%rax), %xmm13, %xmm10
    768 // CHECK: encoding: [0xc5,0x13,0x5a,0x10]
    769           vcvtsd2ss  (%rax), %xmm13, %xmm10
    770 
    771 // CHECK: vcvtps2dq  %xmm12, %xmm11
    772 // CHECK: encoding: [0xc4,0x41,0x79,0x5b,0xdc]
    773           vcvtps2dq  %xmm12, %xmm11
    774 
    775 // CHECK: vcvtps2dq  (%rax), %xmm11
    776 // CHECK: encoding: [0xc5,0x79,0x5b,0x18]
    777           vcvtps2dq  (%rax), %xmm11
    778 
    779 // CHECK: vcvtss2sd  %xmm12, %xmm13, %xmm10
    780 // CHECK: encoding: [0xc4,0x41,0x12,0x5a,0xd4]
    781           vcvtss2sd  %xmm12, %xmm13, %xmm10
    782 
    783 // CHECK: vcvtss2sd  (%rax), %xmm13, %xmm10
    784 // CHECK: encoding: [0xc5,0x12,0x5a,0x10]
    785           vcvtss2sd  (%rax), %xmm13, %xmm10
    786 
    787 // CHECK: vcvtdq2ps  %xmm13, %xmm10
    788 // CHECK: encoding: [0xc4,0x41,0x78,0x5b,0xd5]
    789           vcvtdq2ps  %xmm13, %xmm10
    790 
    791 // CHECK: vcvtdq2ps  (%ecx), %xmm13
    792 // CHECK: encoding: [0xc5,0x78,0x5b,0x29]
    793           vcvtdq2ps  (%ecx), %xmm13
    794 
    795 // CHECK: vcvttps2dq  %xmm12, %xmm11
    796 // CHECK: encoding: [0xc4,0x41,0x7a,0x5b,0xdc]
    797           vcvttps2dq  %xmm12, %xmm11
    798 
    799 // CHECK: vcvttps2dq  (%rax), %xmm11
    800 // CHECK: encoding: [0xc5,0x7a,0x5b,0x18]
    801           vcvttps2dq  (%rax), %xmm11
    802 
    803 // CHECK: vcvtps2pd  %xmm12, %xmm11
    804 // CHECK: encoding: [0xc4,0x41,0x78,0x5a,0xdc]
    805           vcvtps2pd  %xmm12, %xmm11
    806 
    807 // CHECK: vcvtps2pd  (%rax), %xmm11
    808 // CHECK: encoding: [0xc5,0x78,0x5a,0x18]
    809           vcvtps2pd  (%rax), %xmm11
    810 
    811 // CHECK: vcvtpd2ps  %xmm12, %xmm11
    812 // CHECK: encoding: [0xc4,0x41,0x79,0x5a,0xdc]
    813           vcvtpd2ps  %xmm12, %xmm11
    814 
    815 // CHECK: vsqrtpd  %xmm11, %xmm12
    816 // CHECK: encoding: [0xc4,0x41,0x79,0x51,0xe3]
    817           vsqrtpd  %xmm11, %xmm12
    818 
    819 // CHECK: vsqrtpd  (%rax), %xmm12
    820 // CHECK: encoding: [0xc5,0x79,0x51,0x20]
    821           vsqrtpd  (%rax), %xmm12
    822 
    823 // CHECK: vsqrtps  %xmm11, %xmm12
    824 // CHECK: encoding: [0xc4,0x41,0x78,0x51,0xe3]
    825           vsqrtps  %xmm11, %xmm12
    826 
    827 // CHECK: vsqrtps  (%rax), %xmm12
    828 // CHECK: encoding: [0xc5,0x78,0x51,0x20]
    829           vsqrtps  (%rax), %xmm12
    830 
    831 // CHECK: vsqrtsd  %xmm11, %xmm12, %xmm10
    832 // CHECK: encoding: [0xc4,0x41,0x1b,0x51,0xd3]
    833           vsqrtsd  %xmm11, %xmm12, %xmm10
    834 
    835 // CHECK: vsqrtsd  (%rax), %xmm12, %xmm10
    836 // CHECK: encoding: [0xc5,0x1b,0x51,0x10]
    837           vsqrtsd  (%rax), %xmm12, %xmm10
    838 
    839 // CHECK: vsqrtss  %xmm11, %xmm12, %xmm10
    840 // CHECK: encoding: [0xc4,0x41,0x1a,0x51,0xd3]
    841           vsqrtss  %xmm11, %xmm12, %xmm10
    842 
    843 // CHECK: vsqrtss  (%rax), %xmm12, %xmm10
    844 // CHECK: encoding: [0xc5,0x1a,0x51,0x10]
    845           vsqrtss  (%rax), %xmm12, %xmm10
    846 
    847 // CHECK: vrsqrtps  %xmm11, %xmm12
    848 // CHECK: encoding: [0xc4,0x41,0x78,0x52,0xe3]
    849           vrsqrtps  %xmm11, %xmm12
    850 
    851 // CHECK: vrsqrtps  (%rax), %xmm12
    852 // CHECK: encoding: [0xc5,0x78,0x52,0x20]
    853           vrsqrtps  (%rax), %xmm12
    854 
    855 // CHECK: vrsqrtss  %xmm11, %xmm12, %xmm10
    856 // CHECK: encoding: [0xc4,0x41,0x1a,0x52,0xd3]
    857           vrsqrtss  %xmm11, %xmm12, %xmm10
    858 
    859 // CHECK: vrsqrtss  (%rax), %xmm12, %xmm10
    860 // CHECK: encoding: [0xc5,0x1a,0x52,0x10]
    861           vrsqrtss  (%rax), %xmm12, %xmm10
    862 
    863 // CHECK: vrcpps  %xmm11, %xmm12
    864 // CHECK: encoding: [0xc4,0x41,0x78,0x53,0xe3]
    865           vrcpps  %xmm11, %xmm12
    866 
    867 // CHECK: vrcpps  (%rax), %xmm12
    868 // CHECK: encoding: [0xc5,0x78,0x53,0x20]
    869           vrcpps  (%rax), %xmm12
    870 
    871 // CHECK: vrcpss  %xmm11, %xmm12, %xmm10
    872 // CHECK: encoding: [0xc4,0x41,0x1a,0x53,0xd3]
    873           vrcpss  %xmm11, %xmm12, %xmm10
    874 
    875 // CHECK: vrcpss  (%rax), %xmm12, %xmm10
    876 // CHECK: encoding: [0xc5,0x1a,0x53,0x10]
    877           vrcpss  (%rax), %xmm12, %xmm10
    878 
    879 // CHECK: vmovntdq  %xmm11, (%rax)
    880 // CHECK: encoding: [0xc5,0x79,0xe7,0x18]
    881           vmovntdq  %xmm11, (%rax)
    882 
    883 // CHECK: vmovntpd  %xmm11, (%rax)
    884 // CHECK: encoding: [0xc5,0x79,0x2b,0x18]
    885           vmovntpd  %xmm11, (%rax)
    886 
    887 // CHECK: vmovntps  %xmm11, (%rax)
    888 // CHECK: encoding: [0xc5,0x78,0x2b,0x18]
    889           vmovntps  %xmm11, (%rax)
    890 
    891 // CHECK: vldmxcsr  -4(%rip)
    892 // CHECK: encoding: [0xc5,0xf8,0xae,0x15,0xfc,0xff,0xff,0xff]
    893           vldmxcsr  -4(%rip)
    894 
    895 // CHECK: vstmxcsr  -4(%rsp)
    896 // CHECK: encoding: [0xc5,0xf8,0xae,0x5c,0x24,0xfc]
    897           vstmxcsr  -4(%rsp)
    898 
    899 // CHECK: vpsubb  %xmm11, %xmm12, %xmm13
    900 // CHECK: encoding: [0xc4,0x41,0x19,0xf8,0xeb]
    901           vpsubb  %xmm11, %xmm12, %xmm13
    902 
    903 // CHECK: vpsubb  (%rax), %xmm12, %xmm13
    904 // CHECK: encoding: [0xc5,0x19,0xf8,0x28]
    905           vpsubb  (%rax), %xmm12, %xmm13
    906 
    907 // CHECK: vpsubw  %xmm11, %xmm12, %xmm13
    908 // CHECK: encoding: [0xc4,0x41,0x19,0xf9,0xeb]
    909           vpsubw  %xmm11, %xmm12, %xmm13
    910 
    911 // CHECK: vpsubw  (%rax), %xmm12, %xmm13
    912 // CHECK: encoding: [0xc5,0x19,0xf9,0x28]
    913           vpsubw  (%rax), %xmm12, %xmm13
    914 
    915 // CHECK: vpsubd  %xmm11, %xmm12, %xmm13
    916 // CHECK: encoding: [0xc4,0x41,0x19,0xfa,0xeb]
    917           vpsubd  %xmm11, %xmm12, %xmm13
    918 
    919 // CHECK: vpsubd  (%rax), %xmm12, %xmm13
    920 // CHECK: encoding: [0xc5,0x19,0xfa,0x28]
    921           vpsubd  (%rax), %xmm12, %xmm13
    922 
    923 // CHECK: vpsubq  %xmm11, %xmm12, %xmm13
    924 // CHECK: encoding: [0xc4,0x41,0x19,0xfb,0xeb]
    925           vpsubq  %xmm11, %xmm12, %xmm13
    926 
    927 // CHECK: vpsubq  (%rax), %xmm12, %xmm13
    928 // CHECK: encoding: [0xc5,0x19,0xfb,0x28]
    929           vpsubq  (%rax), %xmm12, %xmm13
    930 
    931 // CHECK: vpsubsb  %xmm11, %xmm12, %xmm13
    932 // CHECK: encoding: [0xc4,0x41,0x19,0xe8,0xeb]
    933           vpsubsb  %xmm11, %xmm12, %xmm13
    934 
    935 // CHECK: vpsubsb  (%rax), %xmm12, %xmm13
    936 // CHECK: encoding: [0xc5,0x19,0xe8,0x28]
    937           vpsubsb  (%rax), %xmm12, %xmm13
    938 
    939 // CHECK: vpsubsw  %xmm11, %xmm12, %xmm13
    940 // CHECK: encoding: [0xc4,0x41,0x19,0xe9,0xeb]
    941           vpsubsw  %xmm11, %xmm12, %xmm13
    942 
    943 // CHECK: vpsubsw  (%rax), %xmm12, %xmm13
    944 // CHECK: encoding: [0xc5,0x19,0xe9,0x28]
    945           vpsubsw  (%rax), %xmm12, %xmm13
    946 
    947 // CHECK: vpsubusb  %xmm11, %xmm12, %xmm13
    948 // CHECK: encoding: [0xc4,0x41,0x19,0xd8,0xeb]
    949           vpsubusb  %xmm11, %xmm12, %xmm13
    950 
    951 // CHECK: vpsubusb  (%rax), %xmm12, %xmm13
    952 // CHECK: encoding: [0xc5,0x19,0xd8,0x28]
    953           vpsubusb  (%rax), %xmm12, %xmm13
    954 
    955 // CHECK: vpsubusw  %xmm11, %xmm12, %xmm13
    956 // CHECK: encoding: [0xc4,0x41,0x19,0xd9,0xeb]
    957           vpsubusw  %xmm11, %xmm12, %xmm13
    958 
    959 // CHECK: vpsubusw  (%rax), %xmm12, %xmm13
    960 // CHECK: encoding: [0xc5,0x19,0xd9,0x28]
    961           vpsubusw  (%rax), %xmm12, %xmm13
    962 
    963 // CHECK: vpaddb  %xmm11, %xmm12, %xmm13
    964 // CHECK: encoding: [0xc4,0x41,0x19,0xfc,0xeb]
    965           vpaddb  %xmm11, %xmm12, %xmm13
    966 
    967 // CHECK: vpaddb  (%rax), %xmm12, %xmm13
    968 // CHECK: encoding: [0xc5,0x19,0xfc,0x28]
    969           vpaddb  (%rax), %xmm12, %xmm13
    970 
    971 // CHECK: vpaddw  %xmm11, %xmm12, %xmm13
    972 // CHECK: encoding: [0xc4,0x41,0x19,0xfd,0xeb]
    973           vpaddw  %xmm11, %xmm12, %xmm13
    974 
    975 // CHECK: vpaddw  (%rax), %xmm12, %xmm13
    976 // CHECK: encoding: [0xc5,0x19,0xfd,0x28]
    977           vpaddw  (%rax), %xmm12, %xmm13
    978 
    979 // CHECK: vpaddd  %xmm11, %xmm12, %xmm13
    980 // CHECK: encoding: [0xc4,0x41,0x19,0xfe,0xeb]
    981           vpaddd  %xmm11, %xmm12, %xmm13
    982 
    983 // CHECK: vpaddd  (%rax), %xmm12, %xmm13
    984 // CHECK: encoding: [0xc5,0x19,0xfe,0x28]
    985           vpaddd  (%rax), %xmm12, %xmm13
    986 
    987 // CHECK: vpaddq  %xmm11, %xmm12, %xmm13
    988 // CHECK: encoding: [0xc4,0x41,0x19,0xd4,0xeb]
    989           vpaddq  %xmm11, %xmm12, %xmm13
    990 
    991 // CHECK: vpaddq  (%rax), %xmm12, %xmm13
    992 // CHECK: encoding: [0xc5,0x19,0xd4,0x28]
    993           vpaddq  (%rax), %xmm12, %xmm13
    994 
    995 // CHECK: vpaddsb  %xmm11, %xmm12, %xmm13
    996 // CHECK: encoding: [0xc4,0x41,0x19,0xec,0xeb]
    997           vpaddsb  %xmm11, %xmm12, %xmm13
    998 
    999 // CHECK: vpaddsb  (%rax), %xmm12, %xmm13
   1000 // CHECK: encoding: [0xc5,0x19,0xec,0x28]
   1001           vpaddsb  (%rax), %xmm12, %xmm13
   1002 
   1003 // CHECK: vpaddsw  %xmm11, %xmm12, %xmm13
   1004 // CHECK: encoding: [0xc4,0x41,0x19,0xed,0xeb]
   1005           vpaddsw  %xmm11, %xmm12, %xmm13
   1006 
   1007 // CHECK: vpaddsw  (%rax), %xmm12, %xmm13
   1008 // CHECK: encoding: [0xc5,0x19,0xed,0x28]
   1009           vpaddsw  (%rax), %xmm12, %xmm13
   1010 
   1011 // CHECK: vpaddusb  %xmm11, %xmm12, %xmm13
   1012 // CHECK: encoding: [0xc4,0x41,0x19,0xdc,0xeb]
   1013           vpaddusb  %xmm11, %xmm12, %xmm13
   1014 
   1015 // CHECK: vpaddusb  (%rax), %xmm12, %xmm13
   1016 // CHECK: encoding: [0xc5,0x19,0xdc,0x28]
   1017           vpaddusb  (%rax), %xmm12, %xmm13
   1018 
   1019 // CHECK: vpaddusw  %xmm11, %xmm12, %xmm13
   1020 // CHECK: encoding: [0xc4,0x41,0x19,0xdd,0xeb]
   1021           vpaddusw  %xmm11, %xmm12, %xmm13
   1022 
   1023 // CHECK: vpaddusw  (%rax), %xmm12, %xmm13
   1024 // CHECK: encoding: [0xc5,0x19,0xdd,0x28]
   1025           vpaddusw  (%rax), %xmm12, %xmm13
   1026 
   1027 // CHECK: vpmulhuw  %xmm11, %xmm12, %xmm13
   1028 // CHECK: encoding: [0xc4,0x41,0x19,0xe4,0xeb]
   1029           vpmulhuw  %xmm11, %xmm12, %xmm13
   1030 
   1031 // CHECK: vpmulhuw  (%rax), %xmm12, %xmm13
   1032 // CHECK: encoding: [0xc5,0x19,0xe4,0x28]
   1033           vpmulhuw  (%rax), %xmm12, %xmm13
   1034 
   1035 // CHECK: vpmulhw  %xmm11, %xmm12, %xmm13
   1036 // CHECK: encoding: [0xc4,0x41,0x19,0xe5,0xeb]
   1037           vpmulhw  %xmm11, %xmm12, %xmm13
   1038 
   1039 // CHECK: vpmulhw  (%rax), %xmm12, %xmm13
   1040 // CHECK: encoding: [0xc5,0x19,0xe5,0x28]
   1041           vpmulhw  (%rax), %xmm12, %xmm13
   1042 
   1043 // CHECK: vpmullw  %xmm11, %xmm12, %xmm13
   1044 // CHECK: encoding: [0xc4,0x41,0x19,0xd5,0xeb]
   1045           vpmullw  %xmm11, %xmm12, %xmm13
   1046 
   1047 // CHECK: vpmullw  (%rax), %xmm12, %xmm13
   1048 // CHECK: encoding: [0xc5,0x19,0xd5,0x28]
   1049           vpmullw  (%rax), %xmm12, %xmm13
   1050 
   1051 // CHECK: vpmuludq  %xmm11, %xmm12, %xmm13
   1052 // CHECK: encoding: [0xc4,0x41,0x19,0xf4,0xeb]
   1053           vpmuludq  %xmm11, %xmm12, %xmm13
   1054 
   1055 // CHECK: vpmuludq  (%rax), %xmm12, %xmm13
   1056 // CHECK: encoding: [0xc5,0x19,0xf4,0x28]
   1057           vpmuludq  (%rax), %xmm12, %xmm13
   1058 
   1059 // CHECK: vpavgb  %xmm11, %xmm12, %xmm13
   1060 // CHECK: encoding: [0xc4,0x41,0x19,0xe0,0xeb]
   1061           vpavgb  %xmm11, %xmm12, %xmm13
   1062 
   1063 // CHECK: vpavgb  (%rax), %xmm12, %xmm13
   1064 // CHECK: encoding: [0xc5,0x19,0xe0,0x28]
   1065           vpavgb  (%rax), %xmm12, %xmm13
   1066 
   1067 // CHECK: vpavgw  %xmm11, %xmm12, %xmm13
   1068 // CHECK: encoding: [0xc4,0x41,0x19,0xe3,0xeb]
   1069           vpavgw  %xmm11, %xmm12, %xmm13
   1070 
   1071 // CHECK: vpavgw  (%rax), %xmm12, %xmm13
   1072 // CHECK: encoding: [0xc5,0x19,0xe3,0x28]
   1073           vpavgw  (%rax), %xmm12, %xmm13
   1074 
   1075 // CHECK: vpminsw  %xmm11, %xmm12, %xmm13
   1076 // CHECK: encoding: [0xc4,0x41,0x19,0xea,0xeb]
   1077           vpminsw  %xmm11, %xmm12, %xmm13
   1078 
   1079 // CHECK: vpminsw  (%rax), %xmm12, %xmm13
   1080 // CHECK: encoding: [0xc5,0x19,0xea,0x28]
   1081           vpminsw  (%rax), %xmm12, %xmm13
   1082 
   1083 // CHECK: vpminub  %xmm11, %xmm12, %xmm13
   1084 // CHECK: encoding: [0xc4,0x41,0x19,0xda,0xeb]
   1085           vpminub  %xmm11, %xmm12, %xmm13
   1086 
   1087 // CHECK: vpminub  (%rax), %xmm12, %xmm13
   1088 // CHECK: encoding: [0xc5,0x19,0xda,0x28]
   1089           vpminub  (%rax), %xmm12, %xmm13
   1090 
   1091 // CHECK: vpmaxsw  %xmm11, %xmm12, %xmm13
   1092 // CHECK: encoding: [0xc4,0x41,0x19,0xee,0xeb]
   1093           vpmaxsw  %xmm11, %xmm12, %xmm13
   1094 
   1095 // CHECK: vpmaxsw  (%rax), %xmm12, %xmm13
   1096 // CHECK: encoding: [0xc5,0x19,0xee,0x28]
   1097           vpmaxsw  (%rax), %xmm12, %xmm13
   1098 
   1099 // CHECK: vpmaxub  %xmm11, %xmm12, %xmm13
   1100 // CHECK: encoding: [0xc4,0x41,0x19,0xde,0xeb]
   1101           vpmaxub  %xmm11, %xmm12, %xmm13
   1102 
   1103 // CHECK: vpmaxub  (%rax), %xmm12, %xmm13
   1104 // CHECK: encoding: [0xc5,0x19,0xde,0x28]
   1105           vpmaxub  (%rax), %xmm12, %xmm13
   1106 
   1107 // CHECK: vpsadbw  %xmm11, %xmm12, %xmm13
   1108 // CHECK: encoding: [0xc4,0x41,0x19,0xf6,0xeb]
   1109           vpsadbw  %xmm11, %xmm12, %xmm13
   1110 
   1111 // CHECK: vpsadbw  (%rax), %xmm12, %xmm13
   1112 // CHECK: encoding: [0xc5,0x19,0xf6,0x28]
   1113           vpsadbw  (%rax), %xmm12, %xmm13
   1114 
   1115 // CHECK: vpsllw  %xmm11, %xmm12, %xmm13
   1116 // CHECK: encoding: [0xc4,0x41,0x19,0xf1,0xeb]
   1117           vpsllw  %xmm11, %xmm12, %xmm13
   1118 
   1119 // CHECK: vpsllw  (%rax), %xmm12, %xmm13
   1120 // CHECK: encoding: [0xc5,0x19,0xf1,0x28]
   1121           vpsllw  (%rax), %xmm12, %xmm13
   1122 
   1123 // CHECK: vpslld  %xmm11, %xmm12, %xmm13
   1124 // CHECK: encoding: [0xc4,0x41,0x19,0xf2,0xeb]
   1125           vpslld  %xmm11, %xmm12, %xmm13
   1126 
   1127 // CHECK: vpslld  (%rax), %xmm12, %xmm13
   1128 // CHECK: encoding: [0xc5,0x19,0xf2,0x28]
   1129           vpslld  (%rax), %xmm12, %xmm13
   1130 
   1131 // CHECK: vpsllq  %xmm11, %xmm12, %xmm13
   1132 // CHECK: encoding: [0xc4,0x41,0x19,0xf3,0xeb]
   1133           vpsllq  %xmm11, %xmm12, %xmm13
   1134 
   1135 // CHECK: vpsllq  (%rax), %xmm12, %xmm13
   1136 // CHECK: encoding: [0xc5,0x19,0xf3,0x28]
   1137           vpsllq  (%rax), %xmm12, %xmm13
   1138 
   1139 // CHECK: vpsraw  %xmm11, %xmm12, %xmm13
   1140 // CHECK: encoding: [0xc4,0x41,0x19,0xe1,0xeb]
   1141           vpsraw  %xmm11, %xmm12, %xmm13
   1142 
   1143 // CHECK: vpsraw  (%rax), %xmm12, %xmm13
   1144 // CHECK: encoding: [0xc5,0x19,0xe1,0x28]
   1145           vpsraw  (%rax), %xmm12, %xmm13
   1146 
   1147 // CHECK: vpsrad  %xmm11, %xmm12, %xmm13
   1148 // CHECK: encoding: [0xc4,0x41,0x19,0xe2,0xeb]
   1149           vpsrad  %xmm11, %xmm12, %xmm13
   1150 
   1151 // CHECK: vpsrad  (%rax), %xmm12, %xmm13
   1152 // CHECK: encoding: [0xc5,0x19,0xe2,0x28]
   1153           vpsrad  (%rax), %xmm12, %xmm13
   1154 
   1155 // CHECK: vpsrlw  %xmm11, %xmm12, %xmm13
   1156 // CHECK: encoding: [0xc4,0x41,0x19,0xd1,0xeb]
   1157           vpsrlw  %xmm11, %xmm12, %xmm13
   1158 
   1159 // CHECK: vpsrlw  (%rax), %xmm12, %xmm13
   1160 // CHECK: encoding: [0xc5,0x19,0xd1,0x28]
   1161           vpsrlw  (%rax), %xmm12, %xmm13
   1162 
   1163 // CHECK: vpsrld  %xmm11, %xmm12, %xmm13
   1164 // CHECK: encoding: [0xc4,0x41,0x19,0xd2,0xeb]
   1165           vpsrld  %xmm11, %xmm12, %xmm13
   1166 
   1167 // CHECK: vpsrld  (%rax), %xmm12, %xmm13
   1168 // CHECK: encoding: [0xc5,0x19,0xd2,0x28]
   1169           vpsrld  (%rax), %xmm12, %xmm13
   1170 
   1171 // CHECK: vpsrlq  %xmm11, %xmm12, %xmm13
   1172 // CHECK: encoding: [0xc4,0x41,0x19,0xd3,0xeb]
   1173           vpsrlq  %xmm11, %xmm12, %xmm13
   1174 
   1175 // CHECK: vpsrlq  (%rax), %xmm12, %xmm13
   1176 // CHECK: encoding: [0xc5,0x19,0xd3,0x28]
   1177           vpsrlq  (%rax), %xmm12, %xmm13
   1178 
   1179 // CHECK: vpslld  $10, %xmm12, %xmm13
   1180 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xf4,0x0a]
   1181           vpslld  $10, %xmm12, %xmm13
   1182 
   1183 // CHECK: vpslldq  $10, %xmm12, %xmm13
   1184 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xfc,0x0a]
   1185           vpslldq  $10, %xmm12, %xmm13
   1186 
   1187 // CHECK: vpsllq  $10, %xmm12, %xmm13
   1188 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xf4,0x0a]
   1189           vpsllq  $10, %xmm12, %xmm13
   1190 
   1191 // CHECK: vpsllw  $10, %xmm12, %xmm13
   1192 // CHECK: encoding: [0xc4,0xc1,0x11,0x71,0xf4,0x0a]
   1193           vpsllw  $10, %xmm12, %xmm13
   1194 
   1195 // CHECK: vpsrad  $10, %xmm12, %xmm13
   1196 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xe4,0x0a]
   1197           vpsrad  $10, %xmm12, %xmm13
   1198 
   1199 // CHECK: vpsraw  $10, %xmm12, %xmm13
   1200 // CHECK: encoding: [0xc4,0xc1,0x11,0x71,0xe4,0x0a]
   1201           vpsraw  $10, %xmm12, %xmm13
   1202 
   1203 // CHECK: vpsrld  $10, %xmm12, %xmm13
   1204 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xd4,0x0a]
   1205           vpsrld  $10, %xmm12, %xmm13
   1206 
   1207 // CHECK: vpsrldq  $10, %xmm12, %xmm13
   1208 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xdc,0x0a]
   1209           vpsrldq  $10, %xmm12, %xmm13
   1210 
   1211 // CHECK: vpsrlq  $10, %xmm12, %xmm13
   1212 // CHECK: encoding: [0xc4,0xc1,0x11,0x73,0xd4,0x0a]
   1213           vpsrlq  $10, %xmm12, %xmm13
   1214 
   1215 // CHECK: vpsrlw  $10, %xmm12, %xmm13
   1216 // CHECK: encoding: [0xc4,0xc1,0x11,0x71,0xd4,0x0a]
   1217           vpsrlw  $10, %xmm12, %xmm13
   1218 
   1219 // CHECK: vpslld  $10, %xmm12, %xmm13
   1220 // CHECK: encoding: [0xc4,0xc1,0x11,0x72,0xf4,0x0a]
   1221           vpslld  $10, %xmm12, %xmm13
   1222 
   1223 // CHECK: vpand  %xmm11, %xmm12, %xmm13
   1224 // CHECK: encoding: [0xc4,0x41,0x19,0xdb,0xeb]
   1225           vpand  %xmm11, %xmm12, %xmm13
   1226 
   1227 // CHECK: vpand  (%rax), %xmm12, %xmm13
   1228 // CHECK: encoding: [0xc5,0x19,0xdb,0x28]
   1229           vpand  (%rax), %xmm12, %xmm13
   1230 
   1231 // CHECK: vpor  %xmm11, %xmm12, %xmm13
   1232 // CHECK: encoding: [0xc4,0x41,0x19,0xeb,0xeb]
   1233           vpor  %xmm11, %xmm12, %xmm13
   1234 
   1235 // CHECK: vpor  (%rax), %xmm12, %xmm13
   1236 // CHECK: encoding: [0xc5,0x19,0xeb,0x28]
   1237           vpor  (%rax), %xmm12, %xmm13
   1238 
   1239 // CHECK: vpxor  %xmm11, %xmm12, %xmm13
   1240 // CHECK: encoding: [0xc4,0x41,0x19,0xef,0xeb]
   1241           vpxor  %xmm11, %xmm12, %xmm13
   1242 
   1243 // CHECK: vpxor  (%rax), %xmm12, %xmm13
   1244 // CHECK: encoding: [0xc5,0x19,0xef,0x28]
   1245           vpxor  (%rax), %xmm12, %xmm13
   1246 
   1247 // CHECK: vpandn  %xmm11, %xmm12, %xmm13
   1248 // CHECK: encoding: [0xc4,0x41,0x19,0xdf,0xeb]
   1249           vpandn  %xmm11, %xmm12, %xmm13
   1250 
   1251 // CHECK: vpandn  (%rax), %xmm12, %xmm13
   1252 // CHECK: encoding: [0xc5,0x19,0xdf,0x28]
   1253           vpandn  (%rax), %xmm12, %xmm13
   1254 
   1255 // CHECK: vpcmpeqb  %xmm11, %xmm12, %xmm13
   1256 // CHECK: encoding: [0xc4,0x41,0x19,0x74,0xeb]
   1257           vpcmpeqb  %xmm11, %xmm12, %xmm13
   1258 
   1259 // CHECK: vpcmpeqb  (%rax), %xmm12, %xmm13
   1260 // CHECK: encoding: [0xc5,0x19,0x74,0x28]
   1261           vpcmpeqb  (%rax), %xmm12, %xmm13
   1262 
   1263 // CHECK: vpcmpeqw  %xmm11, %xmm12, %xmm13
   1264 // CHECK: encoding: [0xc4,0x41,0x19,0x75,0xeb]
   1265           vpcmpeqw  %xmm11, %xmm12, %xmm13
   1266 
   1267 // CHECK: vpcmpeqw  (%rax), %xmm12, %xmm13
   1268 // CHECK: encoding: [0xc5,0x19,0x75,0x28]
   1269           vpcmpeqw  (%rax), %xmm12, %xmm13
   1270 
   1271 // CHECK: vpcmpeqd  %xmm11, %xmm12, %xmm13
   1272 // CHECK: encoding: [0xc4,0x41,0x19,0x76,0xeb]
   1273           vpcmpeqd  %xmm11, %xmm12, %xmm13
   1274 
   1275 // CHECK: vpcmpeqd  (%rax), %xmm12, %xmm13
   1276 // CHECK: encoding: [0xc5,0x19,0x76,0x28]
   1277           vpcmpeqd  (%rax), %xmm12, %xmm13
   1278 
   1279 // CHECK: vpcmpgtb  %xmm11, %xmm12, %xmm13
   1280 // CHECK: encoding: [0xc4,0x41,0x19,0x64,0xeb]
   1281           vpcmpgtb  %xmm11, %xmm12, %xmm13
   1282 
   1283 // CHECK: vpcmpgtb  (%rax), %xmm12, %xmm13
   1284 // CHECK: encoding: [0xc5,0x19,0x64,0x28]
   1285           vpcmpgtb  (%rax), %xmm12, %xmm13
   1286 
   1287 // CHECK: vpcmpgtw  %xmm11, %xmm12, %xmm13
   1288 // CHECK: encoding: [0xc4,0x41,0x19,0x65,0xeb]
   1289           vpcmpgtw  %xmm11, %xmm12, %xmm13
   1290 
   1291 // CHECK: vpcmpgtw  (%rax), %xmm12, %xmm13
   1292 // CHECK: encoding: [0xc5,0x19,0x65,0x28]
   1293           vpcmpgtw  (%rax), %xmm12, %xmm13
   1294 
   1295 // CHECK: vpcmpgtd  %xmm11, %xmm12, %xmm13
   1296 // CHECK: encoding: [0xc4,0x41,0x19,0x66,0xeb]
   1297           vpcmpgtd  %xmm11, %xmm12, %xmm13
   1298 
   1299 // CHECK: vpcmpgtd  (%rax), %xmm12, %xmm13
   1300 // CHECK: encoding: [0xc5,0x19,0x66,0x28]
   1301           vpcmpgtd  (%rax), %xmm12, %xmm13
   1302 
   1303 // CHECK: vpacksswb  %xmm11, %xmm12, %xmm13
   1304 // CHECK: encoding: [0xc4,0x41,0x19,0x63,0xeb]
   1305           vpacksswb  %xmm11, %xmm12, %xmm13
   1306 
   1307 // CHECK: vpacksswb  (%rax), %xmm12, %xmm13
   1308 // CHECK: encoding: [0xc5,0x19,0x63,0x28]
   1309           vpacksswb  (%rax), %xmm12, %xmm13
   1310 
   1311 // CHECK: vpackssdw  %xmm11, %xmm12, %xmm13
   1312 // CHECK: encoding: [0xc4,0x41,0x19,0x6b,0xeb]
   1313           vpackssdw  %xmm11, %xmm12, %xmm13
   1314 
   1315 // CHECK: vpackssdw  (%rax), %xmm12, %xmm13
   1316 // CHECK: encoding: [0xc5,0x19,0x6b,0x28]
   1317           vpackssdw  (%rax), %xmm12, %xmm13
   1318 
   1319 // CHECK: vpackuswb  %xmm11, %xmm12, %xmm13
   1320 // CHECK: encoding: [0xc4,0x41,0x19,0x67,0xeb]
   1321           vpackuswb  %xmm11, %xmm12, %xmm13
   1322 
   1323 // CHECK: vpackuswb  (%rax), %xmm12, %xmm13
   1324 // CHECK: encoding: [0xc5,0x19,0x67,0x28]
   1325           vpackuswb  (%rax), %xmm12, %xmm13
   1326 
   1327 // CHECK: vpshufd  $4, %xmm12, %xmm13
   1328 // CHECK: encoding: [0xc4,0x41,0x79,0x70,0xec,0x04]
   1329           vpshufd  $4, %xmm12, %xmm13
   1330 
   1331 // CHECK: vpshufd  $4, (%rax), %xmm13
   1332 // CHECK: encoding: [0xc5,0x79,0x70,0x28,0x04]
   1333           vpshufd  $4, (%rax), %xmm13
   1334 
   1335 // CHECK: vpshufhw  $4, %xmm12, %xmm13
   1336 // CHECK: encoding: [0xc4,0x41,0x7a,0x70,0xec,0x04]
   1337           vpshufhw  $4, %xmm12, %xmm13
   1338 
   1339 // CHECK: vpshufhw  $4, (%rax), %xmm13
   1340 // CHECK: encoding: [0xc5,0x7a,0x70,0x28,0x04]
   1341           vpshufhw  $4, (%rax), %xmm13
   1342 
   1343 // CHECK: vpshuflw  $4, %xmm12, %xmm13
   1344 // CHECK: encoding: [0xc4,0x41,0x7b,0x70,0xec,0x04]
   1345           vpshuflw  $4, %xmm12, %xmm13
   1346 
   1347 // CHECK: vpshuflw  $4, (%rax), %xmm13
   1348 // CHECK: encoding: [0xc5,0x7b,0x70,0x28,0x04]
   1349           vpshuflw  $4, (%rax), %xmm13
   1350 
   1351 // CHECK: vpunpcklbw  %xmm11, %xmm12, %xmm13
   1352 // CHECK: encoding: [0xc4,0x41,0x19,0x60,0xeb]
   1353           vpunpcklbw  %xmm11, %xmm12, %xmm13
   1354 
   1355 // CHECK: vpunpcklbw  (%rax), %xmm12, %xmm13
   1356 // CHECK: encoding: [0xc5,0x19,0x60,0x28]
   1357           vpunpcklbw  (%rax), %xmm12, %xmm13
   1358 
   1359 // CHECK: vpunpcklwd  %xmm11, %xmm12, %xmm13
   1360 // CHECK: encoding: [0xc4,0x41,0x19,0x61,0xeb]
   1361           vpunpcklwd  %xmm11, %xmm12, %xmm13
   1362 
   1363 // CHECK: vpunpcklwd  (%rax), %xmm12, %xmm13
   1364 // CHECK: encoding: [0xc5,0x19,0x61,0x28]
   1365           vpunpcklwd  (%rax), %xmm12, %xmm13
   1366 
   1367 // CHECK: vpunpckldq  %xmm11, %xmm12, %xmm13
   1368 // CHECK: encoding: [0xc4,0x41,0x19,0x62,0xeb]
   1369           vpunpckldq  %xmm11, %xmm12, %xmm13
   1370 
   1371 // CHECK: vpunpckldq  (%rax), %xmm12, %xmm13
   1372 // CHECK: encoding: [0xc5,0x19,0x62,0x28]
   1373           vpunpckldq  (%rax), %xmm12, %xmm13
   1374 
   1375 // CHECK: vpunpcklqdq  %xmm11, %xmm12, %xmm13
   1376 // CHECK: encoding: [0xc4,0x41,0x19,0x6c,0xeb]
   1377           vpunpcklqdq  %xmm11, %xmm12, %xmm13
   1378 
   1379 // CHECK: vpunpcklqdq  (%rax), %xmm12, %xmm13
   1380 // CHECK: encoding: [0xc5,0x19,0x6c,0x28]
   1381           vpunpcklqdq  (%rax), %xmm12, %xmm13
   1382 
   1383 // CHECK: vpunpckhbw  %xmm11, %xmm12, %xmm13
   1384 // CHECK: encoding: [0xc4,0x41,0x19,0x68,0xeb]
   1385           vpunpckhbw  %xmm11, %xmm12, %xmm13
   1386 
   1387 // CHECK: vpunpckhbw  (%rax), %xmm12, %xmm13
   1388 // CHECK: encoding: [0xc5,0x19,0x68,0x28]
   1389           vpunpckhbw  (%rax), %xmm12, %xmm13
   1390 
   1391 // CHECK: vpunpckhwd  %xmm11, %xmm12, %xmm13
   1392 // CHECK: encoding: [0xc4,0x41,0x19,0x69,0xeb]
   1393           vpunpckhwd  %xmm11, %xmm12, %xmm13
   1394 
   1395 // CHECK: vpunpckhwd  (%rax), %xmm12, %xmm13
   1396 // CHECK: encoding: [0xc5,0x19,0x69,0x28]
   1397           vpunpckhwd  (%rax), %xmm12, %xmm13
   1398 
   1399 // CHECK: vpunpckhdq  %xmm11, %xmm12, %xmm13
   1400 // CHECK: encoding: [0xc4,0x41,0x19,0x6a,0xeb]
   1401           vpunpckhdq  %xmm11, %xmm12, %xmm13
   1402 
   1403 // CHECK: vpunpckhdq  (%rax), %xmm12, %xmm13
   1404 // CHECK: encoding: [0xc5,0x19,0x6a,0x28]
   1405           vpunpckhdq  (%rax), %xmm12, %xmm13
   1406 
   1407 // CHECK: vpunpckhqdq  %xmm11, %xmm12, %xmm13
   1408 // CHECK: encoding: [0xc4,0x41,0x19,0x6d,0xeb]
   1409           vpunpckhqdq  %xmm11, %xmm12, %xmm13
   1410 
   1411 // CHECK: vpunpckhqdq  (%rax), %xmm12, %xmm13
   1412 // CHECK: encoding: [0xc5,0x19,0x6d,0x28]
   1413           vpunpckhqdq  (%rax), %xmm12, %xmm13
   1414 
   1415 // CHECK: vpinsrw  $7, %eax, %xmm12, %xmm13
   1416 // CHECK: encoding: [0xc5,0x19,0xc4,0xe8,0x07]
   1417           vpinsrw  $7, %eax, %xmm12, %xmm13
   1418 
   1419 // CHECK: vpinsrw  $7, (%rax), %xmm12, %xmm13
   1420 // CHECK: encoding: [0xc5,0x19,0xc4,0x28,0x07]
   1421           vpinsrw  $7, (%rax), %xmm12, %xmm13
   1422 
   1423 // CHECK: vpextrw  $7, %xmm12, %eax
   1424 // CHECK: encoding: [0xc4,0xc1,0x79,0xc5,0xc4,0x07]
   1425           vpextrw  $7, %xmm12, %eax
   1426 
   1427 // CHECK: vpmovmskb  %xmm12, %eax
   1428 // CHECK: encoding: [0xc4,0xc1,0x79,0xd7,0xc4]
   1429           vpmovmskb  %xmm12, %eax
   1430 
   1431 // CHECK: vmaskmovdqu  %xmm14, %xmm15
   1432 // CHECK: encoding: [0xc4,0x41,0x79,0xf7,0xfe]
   1433           vmaskmovdqu  %xmm14, %xmm15
   1434 
   1435 // CHECK: vmovd  %eax, %xmm14
   1436 // CHECK: encoding: [0xc5,0x79,0x6e,0xf0]
   1437           vmovd  %eax, %xmm14
   1438 
   1439 // CHECK: vmovd  (%rax), %xmm14
   1440 // CHECK: encoding: [0xc5,0x79,0x6e,0x30]
   1441           vmovd  (%rax), %xmm14
   1442 
   1443 // CHECK: vmovd  %xmm14, (%rax)
   1444 // CHECK: encoding: [0xc5,0x79,0x7e,0x30]
   1445           vmovd  %xmm14, (%rax)
   1446 
   1447 // CHECK: vmovd  %rax, %xmm14
   1448 // CHECK: encoding: [0xc4,0x61,0xf9,0x6e,0xf0]
   1449           vmovd  %rax, %xmm14
   1450 
   1451 // CHECK: vmovd %xmm0, %rax
   1452 // CHECK: encoding: [0xc4,0xe1,0xf9,0x7e,0xc0]
   1453           vmovd %xmm0, %rax
   1454 
   1455 // CHECK: vmovq  %xmm14, (%rax)
   1456 // CHECK: encoding: [0xc5,0x79,0xd6,0x30]
   1457           vmovq  %xmm14, (%rax)
   1458 
   1459 // CHECK: vmovq  %xmm14, %xmm12
   1460 // CHECK: encoding: [0xc4,0x41,0x7a,0x7e,0xe6]
   1461           vmovq  %xmm14, %xmm12
   1462 
   1463 // CHECK: vmovq  (%rax), %xmm14
   1464 // CHECK: encoding: [0xc5,0x7a,0x7e,0x30]
   1465           vmovq  (%rax), %xmm14
   1466 
   1467 // CHECK: vmovq  %rax, %xmm14
   1468 // CHECK: encoding: [0xc4,0x61,0xf9,0x6e,0xf0]
   1469           vmovq  %rax, %xmm14
   1470 
   1471 // CHECK: vmovq  %xmm14, %rax
   1472 // CHECK: encoding: [0xc4,0x61,0xf9,0x7e,0xf0]
   1473           vmovq  %xmm14, %rax
   1474 
   1475 // CHECK: vcvtpd2dq  %xmm11, %xmm12
   1476 // CHECK: encoding: [0xc4,0x41,0x7b,0xe6,0xe3]
   1477           vcvtpd2dq  %xmm11, %xmm12
   1478 
   1479 // CHECK: vcvtdq2pd  %xmm11, %xmm12
   1480 // CHECK: encoding: [0xc4,0x41,0x7a,0xe6,0xe3]
   1481           vcvtdq2pd  %xmm11, %xmm12
   1482 
   1483 // CHECK: vcvtdq2pd  (%rax), %xmm12
   1484 // CHECK: encoding: [0xc5,0x7a,0xe6,0x20]
   1485           vcvtdq2pd  (%rax), %xmm12
   1486 
   1487 // CHECK: vmovshdup  %xmm11, %xmm12
   1488 // CHECK: encoding: [0xc4,0x41,0x7a,0x16,0xe3]
   1489           vmovshdup  %xmm11, %xmm12
   1490 
   1491 // CHECK: vmovshdup  (%rax), %xmm12
   1492 // CHECK: encoding: [0xc5,0x7a,0x16,0x20]
   1493           vmovshdup  (%rax), %xmm12
   1494 
   1495 // CHECK: vmovsldup  %xmm11, %xmm12
   1496 // CHECK: encoding: [0xc4,0x41,0x7a,0x12,0xe3]
   1497           vmovsldup  %xmm11, %xmm12
   1498 
   1499 // CHECK: vmovsldup  (%rax), %xmm12
   1500 // CHECK: encoding: [0xc5,0x7a,0x12,0x20]
   1501           vmovsldup  (%rax), %xmm12
   1502 
   1503 // CHECK: vmovddup  %xmm11, %xmm12
   1504 // CHECK: encoding: [0xc4,0x41,0x7b,0x12,0xe3]
   1505           vmovddup  %xmm11, %xmm12
   1506 
   1507 // CHECK: vmovddup  (%rax), %xmm12
   1508 // CHECK: encoding: [0xc5,0x7b,0x12,0x20]
   1509           vmovddup  (%rax), %xmm12
   1510 
   1511 // CHECK: vaddsubps  %xmm11, %xmm12, %xmm13
   1512 // CHECK: encoding: [0xc4,0x41,0x1b,0xd0,0xeb]
   1513           vaddsubps  %xmm11, %xmm12, %xmm13
   1514 
   1515 // CHECK: vaddsubps  (%rax), %xmm11, %xmm12
   1516 // CHECK: encoding: [0xc5,0x23,0xd0,0x20]
   1517           vaddsubps  (%rax), %xmm11, %xmm12
   1518 
   1519 // CHECK: vaddsubpd  %xmm11, %xmm12, %xmm13
   1520 // CHECK: encoding: [0xc4,0x41,0x19,0xd0,0xeb]
   1521           vaddsubpd  %xmm11, %xmm12, %xmm13
   1522 
   1523 // CHECK: vaddsubpd  (%rax), %xmm11, %xmm12
   1524 // CHECK: encoding: [0xc5,0x21,0xd0,0x20]
   1525           vaddsubpd  (%rax), %xmm11, %xmm12
   1526 
   1527 // CHECK: vhaddps  %xmm11, %xmm12, %xmm13
   1528 // CHECK: encoding: [0xc4,0x41,0x1b,0x7c,0xeb]
   1529           vhaddps  %xmm11, %xmm12, %xmm13
   1530 
   1531 // CHECK: vhaddps  (%rax), %xmm12, %xmm13
   1532 // CHECK: encoding: [0xc5,0x1b,0x7c,0x28]
   1533           vhaddps  (%rax), %xmm12, %xmm13
   1534 
   1535 // CHECK: vhaddpd  %xmm11, %xmm12, %xmm13
   1536 // CHECK: encoding: [0xc4,0x41,0x19,0x7c,0xeb]
   1537           vhaddpd  %xmm11, %xmm12, %xmm13
   1538 
   1539 // CHECK: vhaddpd  (%rax), %xmm12, %xmm13
   1540 // CHECK: encoding: [0xc5,0x19,0x7c,0x28]
   1541           vhaddpd  (%rax), %xmm12, %xmm13
   1542 
   1543 // CHECK: vhsubps  %xmm11, %xmm12, %xmm13
   1544 // CHECK: encoding: [0xc4,0x41,0x1b,0x7d,0xeb]
   1545           vhsubps  %xmm11, %xmm12, %xmm13
   1546 
   1547 // CHECK: vhsubps  (%rax), %xmm12, %xmm13
   1548 // CHECK: encoding: [0xc5,0x1b,0x7d,0x28]
   1549           vhsubps  (%rax), %xmm12, %xmm13
   1550 
   1551 // CHECK: vhsubpd  %xmm11, %xmm12, %xmm13
   1552 // CHECK: encoding: [0xc4,0x41,0x19,0x7d,0xeb]
   1553           vhsubpd  %xmm11, %xmm12, %xmm13
   1554 
   1555 // CHECK: vhsubpd  (%rax), %xmm12, %xmm13
   1556 // CHECK: encoding: [0xc5,0x19,0x7d,0x28]
   1557           vhsubpd  (%rax), %xmm12, %xmm13
   1558 
   1559 // CHECK: vpabsb  %xmm11, %xmm12
   1560 // CHECK: encoding: [0xc4,0x42,0x79,0x1c,0xe3]
   1561           vpabsb  %xmm11, %xmm12
   1562 
   1563 // CHECK: vpabsb  (%rax), %xmm12
   1564 // CHECK: encoding: [0xc4,0x62,0x79,0x1c,0x20]
   1565           vpabsb  (%rax), %xmm12
   1566 
   1567 // CHECK: vpabsw  %xmm11, %xmm12
   1568 // CHECK: encoding: [0xc4,0x42,0x79,0x1d,0xe3]
   1569           vpabsw  %xmm11, %xmm12
   1570 
   1571 // CHECK: vpabsw  (%rax), %xmm12
   1572 // CHECK: encoding: [0xc4,0x62,0x79,0x1d,0x20]
   1573           vpabsw  (%rax), %xmm12
   1574 
   1575 // CHECK: vpabsd  %xmm11, %xmm12
   1576 // CHECK: encoding: [0xc4,0x42,0x79,0x1e,0xe3]
   1577           vpabsd  %xmm11, %xmm12
   1578 
   1579 // CHECK: vpabsd  (%rax), %xmm12
   1580 // CHECK: encoding: [0xc4,0x62,0x79,0x1e,0x20]
   1581           vpabsd  (%rax), %xmm12
   1582 
   1583 // CHECK: vphaddw  %xmm11, %xmm12, %xmm13
   1584 // CHECK: encoding: [0xc4,0x42,0x19,0x01,0xeb]
   1585           vphaddw  %xmm11, %xmm12, %xmm13
   1586 
   1587 // CHECK: vphaddw  (%rax), %xmm12, %xmm13
   1588 // CHECK: encoding: [0xc4,0x62,0x19,0x01,0x28]
   1589           vphaddw  (%rax), %xmm12, %xmm13
   1590 
   1591 // CHECK: vphaddd  %xmm11, %xmm12, %xmm13
   1592 // CHECK: encoding: [0xc4,0x42,0x19,0x02,0xeb]
   1593           vphaddd  %xmm11, %xmm12, %xmm13
   1594 
   1595 // CHECK: vphaddd  (%rax), %xmm12, %xmm13
   1596 // CHECK: encoding: [0xc4,0x62,0x19,0x02,0x28]
   1597           vphaddd  (%rax), %xmm12, %xmm13
   1598 
   1599 // CHECK: vphaddsw  %xmm11, %xmm12, %xmm13
   1600 // CHECK: encoding: [0xc4,0x42,0x19,0x03,0xeb]
   1601           vphaddsw  %xmm11, %xmm12, %xmm13
   1602 
   1603 // CHECK: vphaddsw  (%rax), %xmm12, %xmm13
   1604 // CHECK: encoding: [0xc4,0x62,0x19,0x03,0x28]
   1605           vphaddsw  (%rax), %xmm12, %xmm13
   1606 
   1607 // CHECK: vphsubw  %xmm11, %xmm12, %xmm13
   1608 // CHECK: encoding: [0xc4,0x42,0x19,0x05,0xeb]
   1609           vphsubw  %xmm11, %xmm12, %xmm13
   1610 
   1611 // CHECK: vphsubw  (%rax), %xmm12, %xmm13
   1612 // CHECK: encoding: [0xc4,0x62,0x19,0x05,0x28]
   1613           vphsubw  (%rax), %xmm12, %xmm13
   1614 
   1615 // CHECK: vphsubd  %xmm11, %xmm12, %xmm13
   1616 // CHECK: encoding: [0xc4,0x42,0x19,0x06,0xeb]
   1617           vphsubd  %xmm11, %xmm12, %xmm13
   1618 
   1619 // CHECK: vphsubd  (%rax), %xmm12, %xmm13
   1620 // CHECK: encoding: [0xc4,0x62,0x19,0x06,0x28]
   1621           vphsubd  (%rax), %xmm12, %xmm13
   1622 
   1623 // CHECK: vphsubsw  %xmm11, %xmm12, %xmm13
   1624 // CHECK: encoding: [0xc4,0x42,0x19,0x07,0xeb]
   1625           vphsubsw  %xmm11, %xmm12, %xmm13
   1626 
   1627 // CHECK: vphsubsw  (%rax), %xmm12, %xmm13
   1628 // CHECK: encoding: [0xc4,0x62,0x19,0x07,0x28]
   1629           vphsubsw  (%rax), %xmm12, %xmm13
   1630 
   1631 // CHECK: vpmaddubsw  %xmm11, %xmm12, %xmm13
   1632 // CHECK: encoding: [0xc4,0x42,0x19,0x04,0xeb]
   1633           vpmaddubsw  %xmm11, %xmm12, %xmm13
   1634 
   1635 // CHECK: vpmaddubsw  (%rax), %xmm12, %xmm13
   1636 // CHECK: encoding: [0xc4,0x62,0x19,0x04,0x28]
   1637           vpmaddubsw  (%rax), %xmm12, %xmm13
   1638 
   1639 // CHECK: vpshufb  %xmm11, %xmm12, %xmm13
   1640 // CHECK: encoding: [0xc4,0x42,0x19,0x00,0xeb]
   1641           vpshufb  %xmm11, %xmm12, %xmm13
   1642 
   1643 // CHECK: vpshufb  (%rax), %xmm12, %xmm13
   1644 // CHECK: encoding: [0xc4,0x62,0x19,0x00,0x28]
   1645           vpshufb  (%rax), %xmm12, %xmm13
   1646 
   1647 // CHECK: vpsignb  %xmm11, %xmm12, %xmm13
   1648 // CHECK: encoding: [0xc4,0x42,0x19,0x08,0xeb]
   1649           vpsignb  %xmm11, %xmm12, %xmm13
   1650 
   1651 // CHECK: vpsignb  (%rax), %xmm12, %xmm13
   1652 // CHECK: encoding: [0xc4,0x62,0x19,0x08,0x28]
   1653           vpsignb  (%rax), %xmm12, %xmm13
   1654 
   1655 // CHECK: vpsignw  %xmm11, %xmm12, %xmm13
   1656 // CHECK: encoding: [0xc4,0x42,0x19,0x09,0xeb]
   1657           vpsignw  %xmm11, %xmm12, %xmm13
   1658 
   1659 // CHECK: vpsignw  (%rax), %xmm12, %xmm13
   1660 // CHECK: encoding: [0xc4,0x62,0x19,0x09,0x28]
   1661           vpsignw  (%rax), %xmm12, %xmm13
   1662 
   1663 // CHECK: vpsignd  %xmm11, %xmm12, %xmm13
   1664 // CHECK: encoding: [0xc4,0x42,0x19,0x0a,0xeb]
   1665           vpsignd  %xmm11, %xmm12, %xmm13
   1666 
   1667 // CHECK: vpsignd  (%rax), %xmm12, %xmm13
   1668 // CHECK: encoding: [0xc4,0x62,0x19,0x0a,0x28]
   1669           vpsignd  (%rax), %xmm12, %xmm13
   1670 
   1671 // CHECK: vpmulhrsw  %xmm11, %xmm12, %xmm13
   1672 // CHECK: encoding: [0xc4,0x42,0x19,0x0b,0xeb]
   1673           vpmulhrsw  %xmm11, %xmm12, %xmm13
   1674 
   1675 // CHECK: vpmulhrsw  (%rax), %xmm12, %xmm13
   1676 // CHECK: encoding: [0xc4,0x62,0x19,0x0b,0x28]
   1677           vpmulhrsw  (%rax), %xmm12, %xmm13
   1678 
   1679 // CHECK: vpalignr  $7, %xmm11, %xmm12, %xmm13
   1680 // CHECK: encoding: [0xc4,0x43,0x19,0x0f,0xeb,0x07]
   1681           vpalignr  $7, %xmm11, %xmm12, %xmm13
   1682 
   1683 // CHECK: vpalignr  $7, (%rax), %xmm12, %xmm13
   1684 // CHECK: encoding: [0xc4,0x63,0x19,0x0f,0x28,0x07]
   1685           vpalignr  $7, (%rax), %xmm12, %xmm13
   1686 
   1687 // CHECK: vroundsd  $7, %xmm11, %xmm12, %xmm13
   1688 // CHECK: encoding: [0xc4,0x43,0x19,0x0b,0xeb,0x07]
   1689           vroundsd  $7, %xmm11, %xmm12, %xmm13
   1690 
   1691 // CHECK: vroundsd  $7, (%rax), %xmm12, %xmm13
   1692 // CHECK: encoding: [0xc4,0x63,0x19,0x0b,0x28,0x07]
   1693           vroundsd  $7, (%rax), %xmm12, %xmm13
   1694 
   1695 // CHECK: vroundss  $7, %xmm11, %xmm12, %xmm13
   1696 // CHECK: encoding: [0xc4,0x43,0x19,0x0a,0xeb,0x07]
   1697           vroundss  $7, %xmm11, %xmm12, %xmm13
   1698 
   1699 // CHECK: vroundss  $7, (%rax), %xmm12, %xmm13
   1700 // CHECK: encoding: [0xc4,0x63,0x19,0x0a,0x28,0x07]
   1701           vroundss  $7, (%rax), %xmm12, %xmm13
   1702 
   1703 // CHECK: vroundpd  $7, %xmm12, %xmm13
   1704 // CHECK: encoding: [0xc4,0x43,0x79,0x09,0xec,0x07]
   1705           vroundpd  $7, %xmm12, %xmm13
   1706 
   1707 // CHECK: vroundpd  $7, (%rax), %xmm13
   1708 // CHECK: encoding: [0xc4,0x63,0x79,0x09,0x28,0x07]
   1709           vroundpd  $7, (%rax), %xmm13
   1710 
   1711 // CHECK: vroundps  $7, %xmm12, %xmm13
   1712 // CHECK: encoding: [0xc4,0x43,0x79,0x08,0xec,0x07]
   1713           vroundps  $7, %xmm12, %xmm13
   1714 
   1715 // CHECK: vroundps  $7, (%rax), %xmm13
   1716 // CHECK: encoding: [0xc4,0x63,0x79,0x08,0x28,0x07]
   1717           vroundps  $7, (%rax), %xmm13
   1718 
   1719 // CHECK: vphminposuw  %xmm12, %xmm13
   1720 // CHECK: encoding: [0xc4,0x42,0x79,0x41,0xec]
   1721           vphminposuw  %xmm12, %xmm13
   1722 
   1723 // CHECK: vphminposuw  (%rax), %xmm12
   1724 // CHECK: encoding: [0xc4,0x62,0x79,0x41,0x20]
   1725           vphminposuw  (%rax), %xmm12
   1726 
   1727 // CHECK: vpackusdw  %xmm12, %xmm13, %xmm11
   1728 // CHECK: encoding: [0xc4,0x42,0x11,0x2b,0xdc]
   1729           vpackusdw  %xmm12, %xmm13, %xmm11
   1730 
   1731 // CHECK: vpackusdw  (%rax), %xmm12, %xmm13
   1732 // CHECK: encoding: [0xc4,0x62,0x19,0x2b,0x28]
   1733           vpackusdw  (%rax), %xmm12, %xmm13
   1734 
   1735 // CHECK: vpcmpeqq  %xmm12, %xmm13, %xmm11
   1736 // CHECK: encoding: [0xc4,0x42,0x11,0x29,0xdc]
   1737           vpcmpeqq  %xmm12, %xmm13, %xmm11
   1738 
   1739 // CHECK: vpcmpeqq  (%rax), %xmm12, %xmm13
   1740 // CHECK: encoding: [0xc4,0x62,0x19,0x29,0x28]
   1741           vpcmpeqq  (%rax), %xmm12, %xmm13
   1742 
   1743 // CHECK: vpminsb  %xmm12, %xmm13, %xmm11
   1744 // CHECK: encoding: [0xc4,0x42,0x11,0x38,0xdc]
   1745           vpminsb  %xmm12, %xmm13, %xmm11
   1746 
   1747 // CHECK: vpminsb  (%rax), %xmm12, %xmm13
   1748 // CHECK: encoding: [0xc4,0x62,0x19,0x38,0x28]
   1749           vpminsb  (%rax), %xmm12, %xmm13
   1750 
   1751 // CHECK: vpminsd  %xmm12, %xmm13, %xmm11
   1752 // CHECK: encoding: [0xc4,0x42,0x11,0x39,0xdc]
   1753           vpminsd  %xmm12, %xmm13, %xmm11
   1754 
   1755 // CHECK: vpminsd  (%rax), %xmm12, %xmm13
   1756 // CHECK: encoding: [0xc4,0x62,0x19,0x39,0x28]
   1757           vpminsd  (%rax), %xmm12, %xmm13
   1758 
   1759 // CHECK: vpminud  %xmm12, %xmm13, %xmm11
   1760 // CHECK: encoding: [0xc4,0x42,0x11,0x3b,0xdc]
   1761           vpminud  %xmm12, %xmm13, %xmm11
   1762 
   1763 // CHECK: vpminud  (%rax), %xmm12, %xmm13
   1764 // CHECK: encoding: [0xc4,0x62,0x19,0x3b,0x28]
   1765           vpminud  (%rax), %xmm12, %xmm13
   1766 
   1767 // CHECK: vpminuw  %xmm12, %xmm13, %xmm11
   1768 // CHECK: encoding: [0xc4,0x42,0x11,0x3a,0xdc]
   1769           vpminuw  %xmm12, %xmm13, %xmm11
   1770 
   1771 // CHECK: vpminuw  (%rax), %xmm12, %xmm13
   1772 // CHECK: encoding: [0xc4,0x62,0x19,0x3a,0x28]
   1773           vpminuw  (%rax), %xmm12, %xmm13
   1774 
   1775 // CHECK: vpmaxsb  %xmm12, %xmm13, %xmm11
   1776 // CHECK: encoding: [0xc4,0x42,0x11,0x3c,0xdc]
   1777           vpmaxsb  %xmm12, %xmm13, %xmm11
   1778 
   1779 // CHECK: vpmaxsb  (%rax), %xmm12, %xmm13
   1780 // CHECK: encoding: [0xc4,0x62,0x19,0x3c,0x28]
   1781           vpmaxsb  (%rax), %xmm12, %xmm13
   1782 
   1783 // CHECK: vpmaxsd  %xmm12, %xmm13, %xmm11
   1784 // CHECK: encoding: [0xc4,0x42,0x11,0x3d,0xdc]
   1785           vpmaxsd  %xmm12, %xmm13, %xmm11
   1786 
   1787 // CHECK: vpmaxsd  (%rax), %xmm12, %xmm13
   1788 // CHECK: encoding: [0xc4,0x62,0x19,0x3d,0x28]
   1789           vpmaxsd  (%rax), %xmm12, %xmm13
   1790 
   1791 // CHECK: vpmaxud  %xmm12, %xmm13, %xmm11
   1792 // CHECK: encoding: [0xc4,0x42,0x11,0x3f,0xdc]
   1793           vpmaxud  %xmm12, %xmm13, %xmm11
   1794 
   1795 // CHECK: vpmaxud  (%rax), %xmm12, %xmm13
   1796 // CHECK: encoding: [0xc4,0x62,0x19,0x3f,0x28]
   1797           vpmaxud  (%rax), %xmm12, %xmm13
   1798 
   1799 // CHECK: vpmaxuw  %xmm12, %xmm13, %xmm11
   1800 // CHECK: encoding: [0xc4,0x42,0x11,0x3e,0xdc]
   1801           vpmaxuw  %xmm12, %xmm13, %xmm11
   1802 
   1803 // CHECK: vpmaxuw  (%rax), %xmm12, %xmm13
   1804 // CHECK: encoding: [0xc4,0x62,0x19,0x3e,0x28]
   1805           vpmaxuw  (%rax), %xmm12, %xmm13
   1806 
   1807 // CHECK: vpmuldq  %xmm12, %xmm13, %xmm11
   1808 // CHECK: encoding: [0xc4,0x42,0x11,0x28,0xdc]
   1809           vpmuldq  %xmm12, %xmm13, %xmm11
   1810 
   1811 // CHECK: vpmuldq  (%rax), %xmm12, %xmm13
   1812 // CHECK: encoding: [0xc4,0x62,0x19,0x28,0x28]
   1813           vpmuldq  (%rax), %xmm12, %xmm13
   1814 
   1815 // CHECK: vpmulld  %xmm12, %xmm5, %xmm11
   1816 // CHECK: encoding: [0xc4,0x42,0x51,0x40,0xdc]
   1817           vpmulld  %xmm12, %xmm5, %xmm11
   1818 
   1819 // CHECK: vpmulld  (%rax), %xmm5, %xmm13
   1820 // CHECK: encoding: [0xc4,0x62,0x51,0x40,0x28]
   1821           vpmulld  (%rax), %xmm5, %xmm13
   1822 
   1823 // CHECK: vblendps  $3, %xmm12, %xmm5, %xmm11
   1824 // CHECK: encoding: [0xc4,0x43,0x51,0x0c,0xdc,0x03]
   1825           vblendps  $3, %xmm12, %xmm5, %xmm11
   1826 
   1827 // CHECK: vblendps  $3, (%rax), %xmm5, %xmm11
   1828 // CHECK: encoding: [0xc4,0x63,0x51,0x0c,0x18,0x03]
   1829           vblendps  $3, (%rax), %xmm5, %xmm11
   1830 
   1831 // CHECK: vblendpd  $3, %xmm12, %xmm5, %xmm11
   1832 // CHECK: encoding: [0xc4,0x43,0x51,0x0d,0xdc,0x03]
   1833           vblendpd  $3, %xmm12, %xmm5, %xmm11
   1834 
   1835 // CHECK: vblendpd  $3, (%rax), %xmm5, %xmm11
   1836 // CHECK: encoding: [0xc4,0x63,0x51,0x0d,0x18,0x03]
   1837           vblendpd  $3, (%rax), %xmm5, %xmm11
   1838 
   1839 // CHECK: vpblendw  $3, %xmm12, %xmm5, %xmm11
   1840 // CHECK: encoding: [0xc4,0x43,0x51,0x0e,0xdc,0x03]
   1841           vpblendw  $3, %xmm12, %xmm5, %xmm11
   1842 
   1843 // CHECK: vpblendw  $3, (%rax), %xmm5, %xmm11
   1844 // CHECK: encoding: [0xc4,0x63,0x51,0x0e,0x18,0x03]
   1845           vpblendw  $3, (%rax), %xmm5, %xmm11
   1846 
   1847 // CHECK: vmpsadbw  $3, %xmm12, %xmm5, %xmm11
   1848 // CHECK: encoding: [0xc4,0x43,0x51,0x42,0xdc,0x03]
   1849           vmpsadbw  $3, %xmm12, %xmm5, %xmm11
   1850 
   1851 // CHECK: vmpsadbw  $3, (%rax), %xmm5, %xmm11
   1852 // CHECK: encoding: [0xc4,0x63,0x51,0x42,0x18,0x03]
   1853           vmpsadbw  $3, (%rax), %xmm5, %xmm11
   1854 
   1855 // CHECK: vdpps  $3, %xmm12, %xmm5, %xmm11
   1856 // CHECK: encoding: [0xc4,0x43,0x51,0x40,0xdc,0x03]
   1857           vdpps  $3, %xmm12, %xmm5, %xmm11
   1858 
   1859 // CHECK: vdpps  $3, (%rax), %xmm5, %xmm11
   1860 // CHECK: encoding: [0xc4,0x63,0x51,0x40,0x18,0x03]
   1861           vdpps  $3, (%rax), %xmm5, %xmm11
   1862 
   1863 // CHECK: vdppd  $3, %xmm12, %xmm5, %xmm11
   1864 // CHECK: encoding: [0xc4,0x43,0x51,0x41,0xdc,0x03]
   1865           vdppd  $3, %xmm12, %xmm5, %xmm11
   1866 
   1867 // CHECK: vdppd  $3, (%rax), %xmm5, %xmm11
   1868 // CHECK: encoding: [0xc4,0x63,0x51,0x41,0x18,0x03]
   1869           vdppd  $3, (%rax), %xmm5, %xmm11
   1870 
   1871 // CHECK: vblendvpd  %xmm12, %xmm5, %xmm11, %xmm13
   1872 // CHECK: encoding: [0xc4,0x63,0x21,0x4b,0xed,0xc0]
   1873           vblendvpd  %xmm12, %xmm5, %xmm11, %xmm13
   1874 
   1875 // CHECK: vblendvpd  %xmm12, (%rax), %xmm11, %xmm13
   1876 // CHECK: encoding: [0xc4,0x63,0x21,0x4b,0x28,0xc0]
   1877           vblendvpd  %xmm12, (%rax), %xmm11, %xmm13
   1878 
   1879 // CHECK: vblendvps  %xmm12, %xmm5, %xmm11, %xmm13
   1880 // CHECK: encoding: [0xc4,0x63,0x21,0x4a,0xed,0xc0]
   1881           vblendvps  %xmm12, %xmm5, %xmm11, %xmm13
   1882 
   1883 // CHECK: vblendvps  %xmm12, (%rax), %xmm11, %xmm13
   1884 // CHECK: encoding: [0xc4,0x63,0x21,0x4a,0x28,0xc0]
   1885           vblendvps  %xmm12, (%rax), %xmm11, %xmm13
   1886 
   1887 // CHECK: vpblendvb  %xmm12, %xmm5, %xmm11, %xmm13
   1888 // CHECK: encoding: [0xc4,0x63,0x21,0x4c,0xed,0xc0]
   1889           vpblendvb  %xmm12, %xmm5, %xmm11, %xmm13
   1890 
   1891 // CHECK: vpblendvb  %xmm12, (%rax), %xmm11, %xmm13
   1892 // CHECK: encoding: [0xc4,0x63,0x21,0x4c,0x28,0xc0]
   1893           vpblendvb  %xmm12, (%rax), %xmm11, %xmm13
   1894 
   1895 // CHECK: vpmovsxbw  %xmm12, %xmm10
   1896 // CHECK: encoding: [0xc4,0x42,0x79,0x20,0xd4]
   1897           vpmovsxbw  %xmm12, %xmm10
   1898 
   1899 // CHECK: vpmovsxbw  (%rax), %xmm12
   1900 // CHECK: encoding: [0xc4,0x62,0x79,0x20,0x20]
   1901           vpmovsxbw  (%rax), %xmm12
   1902 
   1903 // CHECK: vpmovsxwd  %xmm12, %xmm10
   1904 // CHECK: encoding: [0xc4,0x42,0x79,0x23,0xd4]
   1905           vpmovsxwd  %xmm12, %xmm10
   1906 
   1907 // CHECK: vpmovsxwd  (%rax), %xmm12
   1908 // CHECK: encoding: [0xc4,0x62,0x79,0x23,0x20]
   1909           vpmovsxwd  (%rax), %xmm12
   1910 
   1911 // CHECK: vpmovsxdq  %xmm12, %xmm10
   1912 // CHECK: encoding: [0xc4,0x42,0x79,0x25,0xd4]
   1913           vpmovsxdq  %xmm12, %xmm10
   1914 
   1915 // CHECK: vpmovsxdq  (%rax), %xmm12
   1916 // CHECK: encoding: [0xc4,0x62,0x79,0x25,0x20]
   1917           vpmovsxdq  (%rax), %xmm12
   1918 
   1919 // CHECK: vpmovzxbw  %xmm12, %xmm10
   1920 // CHECK: encoding: [0xc4,0x42,0x79,0x30,0xd4]
   1921           vpmovzxbw  %xmm12, %xmm10
   1922 
   1923 // CHECK: vpmovzxbw  (%rax), %xmm12
   1924 // CHECK: encoding: [0xc4,0x62,0x79,0x30,0x20]
   1925           vpmovzxbw  (%rax), %xmm12
   1926 
   1927 // CHECK: vpmovzxwd  %xmm12, %xmm10
   1928 // CHECK: encoding: [0xc4,0x42,0x79,0x33,0xd4]
   1929           vpmovzxwd  %xmm12, %xmm10
   1930 
   1931 // CHECK: vpmovzxwd  (%rax), %xmm12
   1932 // CHECK: encoding: [0xc4,0x62,0x79,0x33,0x20]
   1933           vpmovzxwd  (%rax), %xmm12
   1934 
   1935 // CHECK: vpmovzxdq  %xmm12, %xmm10
   1936 // CHECK: encoding: [0xc4,0x42,0x79,0x35,0xd4]
   1937           vpmovzxdq  %xmm12, %xmm10
   1938 
   1939 // CHECK: vpmovzxdq  (%rax), %xmm12
   1940 // CHECK: encoding: [0xc4,0x62,0x79,0x35,0x20]
   1941           vpmovzxdq  (%rax), %xmm12
   1942 
   1943 // CHECK: vpmovsxbq  %xmm12, %xmm10
   1944 // CHECK: encoding: [0xc4,0x42,0x79,0x22,0xd4]
   1945           vpmovsxbq  %xmm12, %xmm10
   1946 
   1947 // CHECK: vpmovsxbq  (%rax), %xmm12
   1948 // CHECK: encoding: [0xc4,0x62,0x79,0x22,0x20]
   1949           vpmovsxbq  (%rax), %xmm12
   1950 
   1951 // CHECK: vpmovzxbq  %xmm12, %xmm10
   1952 // CHECK: encoding: [0xc4,0x42,0x79,0x32,0xd4]
   1953           vpmovzxbq  %xmm12, %xmm10
   1954 
   1955 // CHECK: vpmovzxbq  (%rax), %xmm12
   1956 // CHECK: encoding: [0xc4,0x62,0x79,0x32,0x20]
   1957           vpmovzxbq  (%rax), %xmm12
   1958 
   1959 // CHECK: vpmovsxbd  %xmm12, %xmm10
   1960 // CHECK: encoding: [0xc4,0x42,0x79,0x21,0xd4]
   1961           vpmovsxbd  %xmm12, %xmm10
   1962 
   1963 // CHECK: vpmovsxbd  (%rax), %xmm12
   1964 // CHECK: encoding: [0xc4,0x62,0x79,0x21,0x20]
   1965           vpmovsxbd  (%rax), %xmm12
   1966 
   1967 // CHECK: vpmovsxwq  %xmm12, %xmm10
   1968 // CHECK: encoding: [0xc4,0x42,0x79,0x24,0xd4]
   1969           vpmovsxwq  %xmm12, %xmm10
   1970 
   1971 // CHECK: vpmovsxwq  (%rax), %xmm12
   1972 // CHECK: encoding: [0xc4,0x62,0x79,0x24,0x20]
   1973           vpmovsxwq  (%rax), %xmm12
   1974 
   1975 // CHECK: vpmovzxbd  %xmm12, %xmm10
   1976 // CHECK: encoding: [0xc4,0x42,0x79,0x31,0xd4]
   1977           vpmovzxbd  %xmm12, %xmm10
   1978 
   1979 // CHECK: vpmovzxbd  (%rax), %xmm12
   1980 // CHECK: encoding: [0xc4,0x62,0x79,0x31,0x20]
   1981           vpmovzxbd  (%rax), %xmm12
   1982 
   1983 // CHECK: vpmovzxwq  %xmm12, %xmm10
   1984 // CHECK: encoding: [0xc4,0x42,0x79,0x34,0xd4]
   1985           vpmovzxwq  %xmm12, %xmm10
   1986 
   1987 // CHECK: vpmovzxwq  (%rax), %xmm12
   1988 // CHECK: encoding: [0xc4,0x62,0x79,0x34,0x20]
   1989           vpmovzxwq  (%rax), %xmm12
   1990 
   1991 // CHECK: vpextrw  $7, %xmm12, %eax
   1992 // CHECK: encoding: [0xc4,0xc1,0x79,0xc5,0xc4,0x07]
   1993           vpextrw  $7, %xmm12, %eax
   1994 
   1995 // CHECK: vpextrw  $7, %xmm12, (%rax)
   1996 // CHECK: encoding: [0xc4,0x63,0x79,0x15,0x20,0x07]
   1997           vpextrw  $7, %xmm12, (%rax)
   1998 
   1999 // CHECK: vpextrd  $7, %xmm12, %eax
   2000 // CHECK: encoding: [0xc4,0x63,0x79,0x16,0xe0,0x07]
   2001           vpextrd  $7, %xmm12, %eax
   2002 
   2003 // CHECK: vpextrd  $7, %xmm12, (%rax)
   2004 // CHECK: encoding: [0xc4,0x63,0x79,0x16,0x20,0x07]
   2005           vpextrd  $7, %xmm12, (%rax)
   2006 
   2007 // CHECK: vpextrb  $7, %xmm12, %eax
   2008 // CHECK: encoding: [0xc4,0x63,0x79,0x14,0xe0,0x07]
   2009           vpextrb  $7, %xmm12, %eax
   2010 
   2011 // CHECK: vpextrb  $7, %xmm12, (%rax)
   2012 // CHECK: encoding: [0xc4,0x63,0x79,0x14,0x20,0x07]
   2013           vpextrb  $7, %xmm12, (%rax)
   2014 
   2015 // CHECK: vpextrq  $7, %xmm12, %rcx
   2016 // CHECK: encoding: [0xc4,0x63,0xf9,0x16,0xe1,0x07]
   2017           vpextrq  $7, %xmm12, %rcx
   2018 
   2019 // CHECK: vpextrq  $7, %xmm12, (%rcx)
   2020 // CHECK: encoding: [0xc4,0x63,0xf9,0x16,0x21,0x07]
   2021           vpextrq  $7, %xmm12, (%rcx)
   2022 
   2023 // CHECK: vextractps  $7, %xmm12, (%rax)
   2024 // CHECK: encoding: [0xc4,0x63,0x79,0x17,0x20,0x07]
   2025           vextractps  $7, %xmm12, (%rax)
   2026 
   2027 // CHECK: vextractps  $7, %xmm12, %eax
   2028 // CHECK: encoding: [0xc4,0x63,0x79,0x17,0xe0,0x07]
   2029           vextractps  $7, %xmm12, %eax
   2030 
   2031 // CHECK: vpinsrw  $7, %eax, %xmm12, %xmm10
   2032 // CHECK: encoding: [0xc5,0x19,0xc4,0xd0,0x07]
   2033           vpinsrw  $7, %eax, %xmm12, %xmm10
   2034 
   2035 // CHECK: vpinsrw  $7, (%rax), %xmm12, %xmm10
   2036 // CHECK: encoding: [0xc5,0x19,0xc4,0x10,0x07]
   2037           vpinsrw  $7, (%rax), %xmm12, %xmm10
   2038 
   2039 // CHECK: vpinsrb  $7, %eax, %xmm12, %xmm10
   2040 // CHECK: encoding: [0xc4,0x63,0x19,0x20,0xd0,0x07]
   2041           vpinsrb  $7, %eax, %xmm12, %xmm10
   2042 
   2043 // CHECK: vpinsrb  $7, (%rax), %xmm12, %xmm10
   2044 // CHECK: encoding: [0xc4,0x63,0x19,0x20,0x10,0x07]
   2045           vpinsrb  $7, (%rax), %xmm12, %xmm10
   2046 
   2047 // CHECK: vpinsrd  $7, %eax, %xmm12, %xmm10
   2048 // CHECK: encoding: [0xc4,0x63,0x19,0x22,0xd0,0x07]
   2049           vpinsrd  $7, %eax, %xmm12, %xmm10
   2050 
   2051 // CHECK: vpinsrd  $7, (%rax), %xmm12, %xmm10
   2052 // CHECK: encoding: [0xc4,0x63,0x19,0x22,0x10,0x07]
   2053           vpinsrd  $7, (%rax), %xmm12, %xmm10
   2054 
   2055 // CHECK: vpinsrq  $7, %rax, %xmm12, %xmm10
   2056 // CHECK: encoding: [0xc4,0x63,0x99,0x22,0xd0,0x07]
   2057           vpinsrq  $7, %rax, %xmm12, %xmm10
   2058 
   2059 // CHECK: vpinsrq  $7, (%rax), %xmm12, %xmm10
   2060 // CHECK: encoding: [0xc4,0x63,0x99,0x22,0x10,0x07]
   2061           vpinsrq  $7, (%rax), %xmm12, %xmm10
   2062 
   2063 // CHECK: vinsertps  $7, %xmm12, %xmm10, %xmm11
   2064 // CHECK: encoding: [0xc4,0x43,0x29,0x21,0xdc,0x07]
   2065           vinsertps  $7, %xmm12, %xmm10, %xmm11
   2066 
   2067 // CHECK: vinsertps  $7, (%rax), %xmm10, %xmm11
   2068 // CHECK: encoding: [0xc4,0x63,0x29,0x21,0x18,0x07]
   2069           vinsertps  $7, (%rax), %xmm10, %xmm11
   2070 
   2071 // CHECK: vptest  %xmm12, %xmm10
   2072 // CHECK: encoding: [0xc4,0x42,0x79,0x17,0xd4]
   2073           vptest  %xmm12, %xmm10
   2074 
   2075 // CHECK: vptest  (%rax), %xmm12
   2076 // CHECK: encoding: [0xc4,0x62,0x79,0x17,0x20]
   2077           vptest  (%rax), %xmm12
   2078 
   2079 // CHECK: vmovntdqa  (%rax), %xmm12
   2080 // CHECK: encoding: [0xc4,0x62,0x79,0x2a,0x20]
   2081           vmovntdqa  (%rax), %xmm12
   2082 
   2083 // CHECK: vpcmpgtq  %xmm12, %xmm10, %xmm11
   2084 // CHECK: encoding: [0xc4,0x42,0x29,0x37,0xdc]
   2085           vpcmpgtq  %xmm12, %xmm10, %xmm11
   2086 
   2087 // CHECK: vpcmpgtq  (%rax), %xmm10, %xmm13
   2088 // CHECK: encoding: [0xc4,0x62,0x29,0x37,0x28]
   2089           vpcmpgtq  (%rax), %xmm10, %xmm13
   2090 
   2091 // CHECK: vpcmpistrm  $7, %xmm12, %xmm10
   2092 // CHECK: encoding: [0xc4,0x43,0x79,0x62,0xd4,0x07]
   2093           vpcmpistrm  $7, %xmm12, %xmm10
   2094 
   2095 // CHECK: vpcmpistrm  $7, (%rax), %xmm10
   2096 // CHECK: encoding: [0xc4,0x63,0x79,0x62,0x10,0x07]
   2097           vpcmpistrm  $7, (%rax), %xmm10
   2098 
   2099 // CHECK: vpcmpestrm  $7, %xmm12, %xmm10
   2100 // CHECK: encoding: [0xc4,0x43,0x79,0x60,0xd4,0x07]
   2101           vpcmpestrm  $7, %xmm12, %xmm10
   2102 
   2103 // CHECK: vpcmpestrm  $7, (%rax), %xmm10
   2104 // CHECK: encoding: [0xc4,0x63,0x79,0x60,0x10,0x07]
   2105           vpcmpestrm  $7, (%rax), %xmm10
   2106 
   2107 // CHECK: vpcmpistri  $7, %xmm12, %xmm10
   2108 // CHECK: encoding: [0xc4,0x43,0x79,0x63,0xd4,0x07]
   2109           vpcmpistri  $7, %xmm12, %xmm10
   2110 
   2111 // CHECK: vpcmpistri  $7, (%rax), %xmm10
   2112 // CHECK: encoding: [0xc4,0x63,0x79,0x63,0x10,0x07]
   2113           vpcmpistri  $7, (%rax), %xmm10
   2114 
   2115 // CHECK: vpcmpestri  $7, %xmm12, %xmm10
   2116 // CHECK: encoding: [0xc4,0x43,0x79,0x61,0xd4,0x07]
   2117           vpcmpestri  $7, %xmm12, %xmm10
   2118 
   2119 // CHECK: vpcmpestri  $7, (%rax), %xmm10
   2120 // CHECK: encoding: [0xc4,0x63,0x79,0x61,0x10,0x07]
   2121           vpcmpestri  $7, (%rax), %xmm10
   2122 
   2123 // CHECK: vaesimc  %xmm12, %xmm10
   2124 // CHECK: encoding: [0xc4,0x42,0x79,0xdb,0xd4]
   2125           vaesimc  %xmm12, %xmm10
   2126 
   2127 // CHECK: vaesimc  (%rax), %xmm12
   2128 // CHECK: encoding: [0xc4,0x62,0x79,0xdb,0x20]
   2129           vaesimc  (%rax), %xmm12
   2130 
   2131 // CHECK: vaesenc  %xmm12, %xmm10, %xmm11
   2132 // CHECK: encoding: [0xc4,0x42,0x29,0xdc,0xdc]
   2133           vaesenc  %xmm12, %xmm10, %xmm11
   2134 
   2135 // CHECK: vaesenc  (%rax), %xmm10, %xmm13
   2136 // CHECK: encoding: [0xc4,0x62,0x29,0xdc,0x28]
   2137           vaesenc  (%rax), %xmm10, %xmm13
   2138 
   2139 // CHECK: vaesenclast  %xmm12, %xmm10, %xmm11
   2140 // CHECK: encoding: [0xc4,0x42,0x29,0xdd,0xdc]
   2141           vaesenclast  %xmm12, %xmm10, %xmm11
   2142 
   2143 // CHECK: vaesenclast  (%rax), %xmm10, %xmm13
   2144 // CHECK: encoding: [0xc4,0x62,0x29,0xdd,0x28]
   2145           vaesenclast  (%rax), %xmm10, %xmm13
   2146 
   2147 // CHECK: vaesdec  %xmm12, %xmm10, %xmm11
   2148 // CHECK: encoding: [0xc4,0x42,0x29,0xde,0xdc]
   2149           vaesdec  %xmm12, %xmm10, %xmm11
   2150 
   2151 // CHECK: vaesdec  (%rax), %xmm10, %xmm13
   2152 // CHECK: encoding: [0xc4,0x62,0x29,0xde,0x28]
   2153           vaesdec  (%rax), %xmm10, %xmm13
   2154 
   2155 // CHECK: vaesdeclast  %xmm12, %xmm10, %xmm11
   2156 // CHECK: encoding: [0xc4,0x42,0x29,0xdf,0xdc]
   2157           vaesdeclast  %xmm12, %xmm10, %xmm11
   2158 
   2159 // CHECK: vaesdeclast  (%rax), %xmm10, %xmm13
   2160 // CHECK: encoding: [0xc4,0x62,0x29,0xdf,0x28]
   2161           vaesdeclast  (%rax), %xmm10, %xmm13
   2162 
   2163 // CHECK: vaeskeygenassist  $7, %xmm12, %xmm10
   2164 // CHECK: encoding: [0xc4,0x43,0x79,0xdf,0xd4,0x07]
   2165           vaeskeygenassist  $7, %xmm12, %xmm10
   2166 
   2167 // CHECK: vaeskeygenassist  $7, (%rax), %xmm10
   2168 // CHECK: encoding: [0xc4,0x63,0x79,0xdf,0x10,0x07]
   2169           vaeskeygenassist  $7, (%rax), %xmm10
   2170 
   2171 // CHECK: vcmpps  $8, %xmm11, %xmm12, %xmm13
   2172 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x08]
   2173           vcmpeq_uqps %xmm11, %xmm12, %xmm13
   2174 
   2175 // CHECK: vcmpps  $9, %xmm11, %xmm12, %xmm13
   2176 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x09]
   2177           vcmpngeps %xmm11, %xmm12, %xmm13
   2178 
   2179 // CHECK: vcmpps  $10, %xmm11, %xmm12, %xmm13
   2180 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0a]
   2181           vcmpngtps %xmm11, %xmm12, %xmm13
   2182 
   2183 // CHECK: vcmpps  $11, %xmm11, %xmm12, %xmm13
   2184 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0b]
   2185           vcmpfalseps %xmm11, %xmm12, %xmm13
   2186 
   2187 // CHECK: vcmpps  $12, %xmm11, %xmm12, %xmm13
   2188 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0c]
   2189           vcmpneq_oqps %xmm11, %xmm12, %xmm13
   2190 
   2191 // CHECK: vcmpps  $13, %xmm11, %xmm12, %xmm13
   2192 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0d]
   2193           vcmpgeps %xmm11, %xmm12, %xmm13
   2194 
   2195 // CHECK: vcmpps  $14, %xmm11, %xmm12, %xmm13
   2196 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0e]
   2197           vcmpgtps %xmm11, %xmm12, %xmm13
   2198 
   2199 // CHECK: vcmpps  $15, %xmm11, %xmm12, %xmm13
   2200 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x0f]
   2201           vcmptrueps %xmm11, %xmm12, %xmm13
   2202 
   2203 // CHECK: vcmpps  $16, %xmm11, %xmm12, %xmm13
   2204 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x10]
   2205           vcmpeq_osps %xmm11, %xmm12, %xmm13
   2206 
   2207 // CHECK: vcmpps  $17, %xmm11, %xmm12, %xmm13
   2208 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x11]
   2209           vcmplt_oqps %xmm11, %xmm12, %xmm13
   2210 
   2211 // CHECK: vcmpps  $18, %xmm11, %xmm12, %xmm13
   2212 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x12]
   2213           vcmple_oqps %xmm11, %xmm12, %xmm13
   2214 
   2215 // CHECK: vcmpps  $19, %xmm11, %xmm12, %xmm13
   2216 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x13]
   2217           vcmpunord_sps %xmm11, %xmm12, %xmm13
   2218 
   2219 // CHECK: vcmpps  $20, %xmm11, %xmm12, %xmm13
   2220 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x14]
   2221           vcmpneq_usps %xmm11, %xmm12, %xmm13
   2222 
   2223 // CHECK: vcmpps  $21, %xmm11, %xmm12, %xmm13
   2224 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x15]
   2225           vcmpnlt_uqps %xmm11, %xmm12, %xmm13
   2226 
   2227 // CHECK: vcmpps  $22, %xmm11, %xmm12, %xmm13
   2228 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x16]
   2229           vcmpnle_uqps %xmm11, %xmm12, %xmm13
   2230 
   2231 // CHECK: vcmpps  $23, %xmm11, %xmm12, %xmm13
   2232 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x17]
   2233           vcmpord_sps %xmm11, %xmm12, %xmm13
   2234 
   2235 // CHECK: vcmpps  $24, %xmm11, %xmm12, %xmm13
   2236 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x18]
   2237           vcmpeq_usps %xmm11, %xmm12, %xmm13
   2238 
   2239 // CHECK: vcmpps  $25, %xmm11, %xmm12, %xmm13
   2240 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x19]
   2241           vcmpnge_uqps %xmm11, %xmm12, %xmm13
   2242 
   2243 // CHECK: vcmpps  $26, %xmm11, %xmm12, %xmm13
   2244 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1a]
   2245           vcmpngt_uqps %xmm11, %xmm12, %xmm13
   2246 
   2247 // CHECK: vcmpps  $27, %xmm11, %xmm12, %xmm13
   2248 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1b]
   2249           vcmpfalse_osps %xmm11, %xmm12, %xmm13
   2250 
   2251 // CHECK: vcmpps  $28, %xmm11, %xmm12, %xmm13
   2252 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1c]
   2253           vcmpneq_osps %xmm11, %xmm12, %xmm13
   2254 
   2255 // CHECK: vcmpps  $29, %xmm11, %xmm12, %xmm13
   2256 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1d]
   2257           vcmpge_oqps %xmm11, %xmm12, %xmm13
   2258 
   2259 // CHECK: vcmpps  $30, %xmm11, %xmm12, %xmm13
   2260 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1e]
   2261           vcmpgt_oqps %xmm11, %xmm12, %xmm13
   2262 
   2263 // CHECK: vcmpps  $31, %xmm11, %xmm12, %xmm13
   2264 // CHECK: encoding: [0xc4,0x41,0x18,0xc2,0xeb,0x1f]
   2265           vcmptrue_usps %xmm11, %xmm12, %xmm13
   2266 
   2267 // CHECK: vmovaps  (%rax), %ymm12
   2268 // CHECK: encoding: [0xc5,0x7c,0x28,0x20]
   2269           vmovaps  (%rax), %ymm12
   2270 
   2271 // CHECK: vmovaps  %ymm11, %ymm12
   2272 // CHECK: encoding: [0xc4,0x41,0x7c,0x28,0xe3]
   2273           vmovaps  %ymm11, %ymm12
   2274 
   2275 // CHECK: vmovaps  %ymm11, (%rax)
   2276 // CHECK: encoding: [0xc5,0x7c,0x29,0x18]
   2277           vmovaps  %ymm11, (%rax)
   2278 
   2279 // CHECK: vmovapd  (%rax), %ymm12
   2280 // CHECK: encoding: [0xc5,0x7d,0x28,0x20]
   2281           vmovapd  (%rax), %ymm12
   2282 
   2283 // CHECK: vmovapd  %ymm11, %ymm12
   2284 // CHECK: encoding: [0xc4,0x41,0x7d,0x28,0xe3]
   2285           vmovapd  %ymm11, %ymm12
   2286 
   2287 // CHECK: vmovapd  %ymm11, (%rax)
   2288 // CHECK: encoding: [0xc5,0x7d,0x29,0x18]
   2289           vmovapd  %ymm11, (%rax)
   2290 
   2291 // CHECK: vmovups  (%rax), %ymm12
   2292 // CHECK: encoding: [0xc5,0x7c,0x10,0x20]
   2293           vmovups  (%rax), %ymm12
   2294 
   2295 // CHECK: vmovups  %ymm11, %ymm12
   2296 // CHECK: encoding: [0xc4,0x41,0x7c,0x10,0xe3]
   2297           vmovups  %ymm11, %ymm12
   2298 
   2299 // CHECK: vmovups  %ymm11, (%rax)
   2300 // CHECK: encoding: [0xc5,0x7c,0x11,0x18]
   2301           vmovups  %ymm11, (%rax)
   2302 
   2303 // CHECK: vmovupd  (%rax), %ymm12
   2304 // CHECK: encoding: [0xc5,0x7d,0x10,0x20]
   2305           vmovupd  (%rax), %ymm12
   2306 
   2307 // CHECK: vmovupd  %ymm11, %ymm12
   2308 // CHECK: encoding: [0xc4,0x41,0x7d,0x10,0xe3]
   2309           vmovupd  %ymm11, %ymm12
   2310 
   2311 // CHECK: vmovupd  %ymm11, (%rax)
   2312 // CHECK: encoding: [0xc5,0x7d,0x11,0x18]
   2313           vmovupd  %ymm11, (%rax)
   2314 
   2315 // CHECK: vunpckhps  %ymm11, %ymm12, %ymm4
   2316 // CHECK: encoding: [0xc4,0xc1,0x1c,0x15,0xe3]
   2317           vunpckhps  %ymm11, %ymm12, %ymm4
   2318 
   2319 // CHECK: vunpckhpd  %ymm11, %ymm12, %ymm4
   2320 // CHECK: encoding: [0xc4,0xc1,0x1d,0x15,0xe3]
   2321           vunpckhpd  %ymm11, %ymm12, %ymm4
   2322 
   2323 // CHECK: vunpcklps  %ymm11, %ymm12, %ymm4
   2324 // CHECK: encoding: [0xc4,0xc1,0x1c,0x14,0xe3]
   2325           vunpcklps  %ymm11, %ymm12, %ymm4
   2326 
   2327 // CHECK: vunpcklpd  %ymm11, %ymm12, %ymm4
   2328 // CHECK: encoding: [0xc4,0xc1,0x1d,0x14,0xe3]
   2329           vunpcklpd  %ymm11, %ymm12, %ymm4
   2330 
   2331 // CHECK: vunpckhps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2332 // CHECK: encoding: [0xc5,0x1c,0x15,0x54,0xcb,0xfc]
   2333           vunpckhps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2334 
   2335 // CHECK: vunpckhpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2336 // CHECK: encoding: [0xc5,0x1d,0x15,0x54,0xcb,0xfc]
   2337           vunpckhpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2338 
   2339 // CHECK: vunpcklps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2340 // CHECK: encoding: [0xc5,0x1c,0x14,0x54,0xcb,0xfc]
   2341           vunpcklps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2342 
   2343 // CHECK: vunpcklpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2344 // CHECK: encoding: [0xc5,0x1d,0x14,0x54,0xcb,0xfc]
   2345           vunpcklpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2346 
   2347 // CHECK: vmovntdq  %ymm11, (%rax)
   2348 // CHECK: encoding: [0xc5,0x7d,0xe7,0x18]
   2349           vmovntdq  %ymm11, (%rax)
   2350 
   2351 // CHECK: vmovntpd  %ymm11, (%rax)
   2352 // CHECK: encoding: [0xc5,0x7d,0x2b,0x18]
   2353           vmovntpd  %ymm11, (%rax)
   2354 
   2355 // CHECK: vmovntps  %ymm11, (%rax)
   2356 // CHECK: encoding: [0xc5,0x7c,0x2b,0x18]
   2357           vmovntps  %ymm11, (%rax)
   2358 
   2359 // CHECK: vmovmskps  %xmm12, %eax
   2360 // CHECK: encoding: [0xc4,0xc1,0x78,0x50,0xc4]
   2361           vmovmskps  %xmm12, %eax
   2362 
   2363 // CHECK: vmovmskpd  %xmm12, %eax
   2364 // CHECK: encoding: [0xc4,0xc1,0x79,0x50,0xc4]
   2365           vmovmskpd  %xmm12, %eax
   2366 
   2367 // CHECK: vmaxps  %ymm12, %ymm4, %ymm6
   2368 // CHECK: encoding: [0xc4,0xc1,0x5c,0x5f,0xf4]
   2369           vmaxps  %ymm12, %ymm4, %ymm6
   2370 
   2371 // CHECK: vmaxpd  %ymm12, %ymm4, %ymm6
   2372 // CHECK: encoding: [0xc4,0xc1,0x5d,0x5f,0xf4]
   2373           vmaxpd  %ymm12, %ymm4, %ymm6
   2374 
   2375 // CHECK: vminps  %ymm12, %ymm4, %ymm6
   2376 // CHECK: encoding: [0xc4,0xc1,0x5c,0x5d,0xf4]
   2377           vminps  %ymm12, %ymm4, %ymm6
   2378 
   2379 // CHECK: vminpd  %ymm12, %ymm4, %ymm6
   2380 // CHECK: encoding: [0xc4,0xc1,0x5d,0x5d,0xf4]
   2381           vminpd  %ymm12, %ymm4, %ymm6
   2382 
   2383 // CHECK: vsubps  %ymm12, %ymm4, %ymm6
   2384 // CHECK: encoding: [0xc4,0xc1,0x5c,0x5c,0xf4]
   2385           vsubps  %ymm12, %ymm4, %ymm6
   2386 
   2387 // CHECK: vsubpd  %ymm12, %ymm4, %ymm6
   2388 // CHECK: encoding: [0xc4,0xc1,0x5d,0x5c,0xf4]
   2389           vsubpd  %ymm12, %ymm4, %ymm6
   2390 
   2391 // CHECK: vdivps  %ymm12, %ymm4, %ymm6
   2392 // CHECK: encoding: [0xc4,0xc1,0x5c,0x5e,0xf4]
   2393           vdivps  %ymm12, %ymm4, %ymm6
   2394 
   2395 // CHECK: vdivpd  %ymm12, %ymm4, %ymm6
   2396 // CHECK: encoding: [0xc4,0xc1,0x5d,0x5e,0xf4]
   2397           vdivpd  %ymm12, %ymm4, %ymm6
   2398 
   2399 // CHECK: vaddps  %ymm12, %ymm4, %ymm6
   2400 // CHECK: encoding: [0xc4,0xc1,0x5c,0x58,0xf4]
   2401           vaddps  %ymm12, %ymm4, %ymm6
   2402 
   2403 // CHECK: vaddpd  %ymm12, %ymm4, %ymm6
   2404 // CHECK: encoding: [0xc4,0xc1,0x5d,0x58,0xf4]
   2405           vaddpd  %ymm12, %ymm4, %ymm6
   2406 
   2407 // CHECK: vmulps  %ymm12, %ymm4, %ymm6
   2408 // CHECK: encoding: [0xc4,0xc1,0x5c,0x59,0xf4]
   2409           vmulps  %ymm12, %ymm4, %ymm6
   2410 
   2411 // CHECK: vmulpd  %ymm12, %ymm4, %ymm6
   2412 // CHECK: encoding: [0xc4,0xc1,0x5d,0x59,0xf4]
   2413           vmulpd  %ymm12, %ymm4, %ymm6
   2414 
   2415 // CHECK: vmaxps  (%rax), %ymm4, %ymm6
   2416 // CHECK: encoding: [0xc5,0xdc,0x5f,0x30]
   2417           vmaxps  (%rax), %ymm4, %ymm6
   2418 
   2419 // CHECK: vmaxpd  (%rax), %ymm4, %ymm6
   2420 // CHECK: encoding: [0xc5,0xdd,0x5f,0x30]
   2421           vmaxpd  (%rax), %ymm4, %ymm6
   2422 
   2423 // CHECK: vminps  (%rax), %ymm4, %ymm6
   2424 // CHECK: encoding: [0xc5,0xdc,0x5d,0x30]
   2425           vminps  (%rax), %ymm4, %ymm6
   2426 
   2427 // CHECK: vminpd  (%rax), %ymm4, %ymm6
   2428 // CHECK: encoding: [0xc5,0xdd,0x5d,0x30]
   2429           vminpd  (%rax), %ymm4, %ymm6
   2430 
   2431 // CHECK: vsubps  (%rax), %ymm4, %ymm6
   2432 // CHECK: encoding: [0xc5,0xdc,0x5c,0x30]
   2433           vsubps  (%rax), %ymm4, %ymm6
   2434 
   2435 // CHECK: vsubpd  (%rax), %ymm4, %ymm6
   2436 // CHECK: encoding: [0xc5,0xdd,0x5c,0x30]
   2437           vsubpd  (%rax), %ymm4, %ymm6
   2438 
   2439 // CHECK: vdivps  (%rax), %ymm4, %ymm6
   2440 // CHECK: encoding: [0xc5,0xdc,0x5e,0x30]
   2441           vdivps  (%rax), %ymm4, %ymm6
   2442 
   2443 // CHECK: vdivpd  (%rax), %ymm4, %ymm6
   2444 // CHECK: encoding: [0xc5,0xdd,0x5e,0x30]
   2445           vdivpd  (%rax), %ymm4, %ymm6
   2446 
   2447 // CHECK: vaddps  (%rax), %ymm4, %ymm6
   2448 // CHECK: encoding: [0xc5,0xdc,0x58,0x30]
   2449           vaddps  (%rax), %ymm4, %ymm6
   2450 
   2451 // CHECK: vaddpd  (%rax), %ymm4, %ymm6
   2452 // CHECK: encoding: [0xc5,0xdd,0x58,0x30]
   2453           vaddpd  (%rax), %ymm4, %ymm6
   2454 
   2455 // CHECK: vmulps  (%rax), %ymm4, %ymm6
   2456 // CHECK: encoding: [0xc5,0xdc,0x59,0x30]
   2457           vmulps  (%rax), %ymm4, %ymm6
   2458 
   2459 // CHECK: vmulpd  (%rax), %ymm4, %ymm6
   2460 // CHECK: encoding: [0xc5,0xdd,0x59,0x30]
   2461           vmulpd  (%rax), %ymm4, %ymm6
   2462 
   2463 // CHECK: vsqrtpd  %ymm11, %ymm12
   2464 // CHECK: encoding: [0xc4,0x41,0x7d,0x51,0xe3]
   2465           vsqrtpd  %ymm11, %ymm12
   2466 
   2467 // CHECK: vsqrtpd  (%rax), %ymm12
   2468 // CHECK: encoding: [0xc5,0x7d,0x51,0x20]
   2469           vsqrtpd  (%rax), %ymm12
   2470 
   2471 // CHECK: vsqrtps  %ymm11, %ymm12
   2472 // CHECK: encoding: [0xc4,0x41,0x7c,0x51,0xe3]
   2473           vsqrtps  %ymm11, %ymm12
   2474 
   2475 // CHECK: vsqrtps  (%rax), %ymm12
   2476 // CHECK: encoding: [0xc5,0x7c,0x51,0x20]
   2477           vsqrtps  (%rax), %ymm12
   2478 
   2479 // CHECK: vrsqrtps  %ymm11, %ymm12
   2480 // CHECK: encoding: [0xc4,0x41,0x7c,0x52,0xe3]
   2481           vrsqrtps  %ymm11, %ymm12
   2482 
   2483 // CHECK: vrsqrtps  (%rax), %ymm12
   2484 // CHECK: encoding: [0xc5,0x7c,0x52,0x20]
   2485           vrsqrtps  (%rax), %ymm12
   2486 
   2487 // CHECK: vrcpps  %ymm11, %ymm12
   2488 // CHECK: encoding: [0xc4,0x41,0x7c,0x53,0xe3]
   2489           vrcpps  %ymm11, %ymm12
   2490 
   2491 // CHECK: vrcpps  (%rax), %ymm12
   2492 // CHECK: encoding: [0xc5,0x7c,0x53,0x20]
   2493           vrcpps  (%rax), %ymm12
   2494 
   2495 // CHECK: vandps  %ymm12, %ymm14, %ymm11
   2496 // CHECK: encoding: [0xc4,0x41,0x0c,0x54,0xdc]
   2497           vandps  %ymm12, %ymm14, %ymm11
   2498 
   2499 // CHECK: vandpd  %ymm12, %ymm14, %ymm11
   2500 // CHECK: encoding: [0xc4,0x41,0x0d,0x54,0xdc]
   2501           vandpd  %ymm12, %ymm14, %ymm11
   2502 
   2503 // CHECK: vandps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2504 // CHECK: encoding: [0xc5,0x1c,0x54,0x54,0xcb,0xfc]
   2505           vandps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2506 
   2507 // CHECK: vandpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2508 // CHECK: encoding: [0xc5,0x1d,0x54,0x54,0xcb,0xfc]
   2509           vandpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2510 
   2511 // CHECK: vorps  %ymm12, %ymm14, %ymm11
   2512 // CHECK: encoding: [0xc4,0x41,0x0c,0x56,0xdc]
   2513           vorps  %ymm12, %ymm14, %ymm11
   2514 
   2515 // CHECK: vorpd  %ymm12, %ymm14, %ymm11
   2516 // CHECK: encoding: [0xc4,0x41,0x0d,0x56,0xdc]
   2517           vorpd  %ymm12, %ymm14, %ymm11
   2518 
   2519 // CHECK: vorps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2520 // CHECK: encoding: [0xc5,0x1c,0x56,0x54,0xcb,0xfc]
   2521           vorps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2522 
   2523 // CHECK: vorpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2524 // CHECK: encoding: [0xc5,0x1d,0x56,0x54,0xcb,0xfc]
   2525           vorpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2526 
   2527 // CHECK: vxorps  %ymm12, %ymm14, %ymm11
   2528 // CHECK: encoding: [0xc4,0x41,0x0c,0x57,0xdc]
   2529           vxorps  %ymm12, %ymm14, %ymm11
   2530 
   2531 // CHECK: vxorpd  %ymm12, %ymm14, %ymm11
   2532 // CHECK: encoding: [0xc4,0x41,0x0d,0x57,0xdc]
   2533           vxorpd  %ymm12, %ymm14, %ymm11
   2534 
   2535 // CHECK: vxorps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2536 // CHECK: encoding: [0xc5,0x1c,0x57,0x54,0xcb,0xfc]
   2537           vxorps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2538 
   2539 // CHECK: vxorpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2540 // CHECK: encoding: [0xc5,0x1d,0x57,0x54,0xcb,0xfc]
   2541           vxorpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2542 
   2543 // CHECK: vandnps  %ymm12, %ymm14, %ymm11
   2544 // CHECK: encoding: [0xc4,0x41,0x0c,0x55,0xdc]
   2545           vandnps  %ymm12, %ymm14, %ymm11
   2546 
   2547 // CHECK: vandnpd  %ymm12, %ymm14, %ymm11
   2548 // CHECK: encoding: [0xc4,0x41,0x0d,0x55,0xdc]
   2549           vandnpd  %ymm12, %ymm14, %ymm11
   2550 
   2551 // CHECK: vandnps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2552 // CHECK: encoding: [0xc5,0x1c,0x55,0x54,0xcb,0xfc]
   2553           vandnps  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2554 
   2555 // CHECK: vandnpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2556 // CHECK: encoding: [0xc5,0x1d,0x55,0x54,0xcb,0xfc]
   2557           vandnpd  -4(%rbx,%rcx,8), %ymm12, %ymm10
   2558 
   2559 // CHECK: vcvtps2pd  %xmm13, %ymm12
   2560 // CHECK: encoding: [0xc4,0x41,0x7c,0x5a,0xe5]
   2561           vcvtps2pd  %xmm13, %ymm12
   2562 
   2563 // CHECK: vcvtps2pd  (%rax), %ymm12
   2564 // CHECK: encoding: [0xc5,0x7c,0x5a,0x20]
   2565           vcvtps2pd  (%rax), %ymm12
   2566 
   2567 // CHECK: vcvtdq2pd  %xmm13, %ymm12
   2568 // CHECK: encoding: [0xc4,0x41,0x7e,0xe6,0xe5]
   2569           vcvtdq2pd  %xmm13, %ymm12
   2570 
   2571 // CHECK: vcvtdq2pd  (%rax), %ymm12
   2572 // CHECK: encoding: [0xc5,0x7e,0xe6,0x20]
   2573           vcvtdq2pd  (%rax), %ymm12
   2574 
   2575 // CHECK: vcvtdq2ps  %ymm12, %ymm10
   2576 // CHECK: encoding: [0xc4,0x41,0x7c,0x5b,0xd4]
   2577           vcvtdq2ps  %ymm12, %ymm10
   2578 
   2579 // CHECK: vcvtdq2ps  (%rax), %ymm12
   2580 // CHECK: encoding: [0xc5,0x7c,0x5b,0x20]
   2581           vcvtdq2ps  (%rax), %ymm12
   2582 
   2583 // CHECK: vcvtps2dq  %ymm12, %ymm10
   2584 // CHECK: encoding: [0xc4,0x41,0x7d,0x5b,0xd4]
   2585           vcvtps2dq  %ymm12, %ymm10
   2586 
   2587 // CHECK: vcvtps2dq  (%rax), %ymm10
   2588 // CHECK: encoding: [0xc5,0x7d,0x5b,0x10]
   2589           vcvtps2dq  (%rax), %ymm10
   2590 
   2591 // CHECK: vcvttps2dq  %ymm12, %ymm10
   2592 // CHECK: encoding: [0xc4,0x41,0x7e,0x5b,0xd4]
   2593           vcvttps2dq  %ymm12, %ymm10
   2594 
   2595 // CHECK: vcvttps2dq  (%rax), %ymm10
   2596 // CHECK: encoding: [0xc5,0x7e,0x5b,0x10]
   2597           vcvttps2dq  (%rax), %ymm10
   2598 
   2599 // CHECK: vcvttpd2dq  %xmm11, %xmm10
   2600 // CHECK: encoding: [0xc4,0x41,0x79,0xe6,0xd3]
   2601           vcvttpd2dq  %xmm11, %xmm10
   2602 
   2603 // CHECK: vcvttpd2dq  %ymm12, %xmm10
   2604 // CHECK: encoding: [0xc4,0x41,0x7d,0xe6,0xd4]
   2605           vcvttpd2dq  %ymm12, %xmm10
   2606 
   2607 // CHECK: vcvttpd2dqx  %xmm11, %xmm10
   2608 // CHECK: encoding: [0xc4,0x41,0x79,0xe6,0xd3]
   2609           vcvttpd2dqx  %xmm11, %xmm10
   2610 
   2611 // CHECK: vcvttpd2dqx  (%rax), %xmm11
   2612 // CHECK: encoding: [0xc5,0x79,0xe6,0x18]
   2613           vcvttpd2dqx  (%rax), %xmm11
   2614 
   2615 // CHECK: vcvttpd2dqy  %ymm12, %xmm11
   2616 // CHECK: encoding: [0xc4,0x41,0x7d,0xe6,0xdc]
   2617           vcvttpd2dqy  %ymm12, %xmm11
   2618 
   2619 // CHECK: vcvttpd2dqy  (%rax), %xmm11
   2620 // CHECK: encoding: [0xc5,0x7d,0xe6,0x18]
   2621           vcvttpd2dqy  (%rax), %xmm11
   2622 
   2623 // CHECK: vcvtpd2ps  %ymm12, %xmm10
   2624 // CHECK: encoding: [0xc4,0x41,0x7d,0x5a,0xd4]
   2625           vcvtpd2ps  %ymm12, %xmm10
   2626 
   2627 // CHECK: vcvtpd2psx  %xmm11, %xmm10
   2628 // CHECK: encoding: [0xc4,0x41,0x79,0x5a,0xd3]
   2629           vcvtpd2psx  %xmm11, %xmm10
   2630 
   2631 // CHECK: vcvtpd2psx  (%rax), %xmm11
   2632 // CHECK: encoding: [0xc5,0x79,0x5a,0x18]
   2633           vcvtpd2psx  (%rax), %xmm11
   2634 
   2635 // CHECK: vcvtpd2psy  %ymm12, %xmm11
   2636 // CHECK: encoding: [0xc4,0x41,0x7d,0x5a,0xdc]
   2637           vcvtpd2psy  %ymm12, %xmm11
   2638 
   2639 // CHECK: vcvtpd2psy  (%rax), %xmm11
   2640 // CHECK: encoding: [0xc5,0x7d,0x5a,0x18]
   2641           vcvtpd2psy  (%rax), %xmm11
   2642 
   2643 // CHECK: vcvtpd2dq  %ymm12, %xmm10
   2644 // CHECK: encoding: [0xc4,0x41,0x7f,0xe6,0xd4]
   2645           vcvtpd2dq  %ymm12, %xmm10
   2646 
   2647 // CHECK: vcvtpd2dqy  %ymm12, %xmm11
   2648 // CHECK: encoding: [0xc4,0x41,0x7f,0xe6,0xdc]
   2649           vcvtpd2dqy  %ymm12, %xmm11
   2650 
   2651 // CHECK: vcvtpd2dqy  (%rax), %xmm11
   2652 // CHECK: encoding: [0xc5,0x7f,0xe6,0x18]
   2653           vcvtpd2dqy  (%rax), %xmm11
   2654 
   2655 // CHECK: vcvtpd2dqx  %xmm11, %xmm10
   2656 // CHECK: encoding: [0xc4,0x41,0x7b,0xe6,0xd3]
   2657           vcvtpd2dqx  %xmm11, %xmm10
   2658 
   2659 // CHECK: vcvtpd2dqx  (%rax), %xmm11
   2660 // CHECK: encoding: [0xc5,0x7b,0xe6,0x18]
   2661           vcvtpd2dqx  (%rax), %xmm11
   2662 
   2663 // CHECK: vcmpps  $0, %ymm11, %ymm12, %ymm13
   2664 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x00]
   2665           vcmpeqps %ymm11, %ymm12, %ymm13
   2666 
   2667 // CHECK: vcmpps  $2, %ymm11, %ymm12, %ymm13
   2668 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x02]
   2669           vcmpleps %ymm11, %ymm12, %ymm13
   2670 
   2671 // CHECK: vcmpps  $1, %ymm11, %ymm12, %ymm13
   2672 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x01]
   2673           vcmpltps %ymm11, %ymm12, %ymm13
   2674 
   2675 // CHECK: vcmpps  $4, %ymm11, %ymm12, %ymm13
   2676 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x04]
   2677           vcmpneqps %ymm11, %ymm12, %ymm13
   2678 
   2679 // CHECK: vcmpps  $6, %ymm11, %ymm12, %ymm13
   2680 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x06]
   2681           vcmpnleps %ymm11, %ymm12, %ymm13
   2682 
   2683 // CHECK: vcmpps  $5, %ymm11, %ymm12, %ymm13
   2684 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x05]
   2685           vcmpnltps %ymm11, %ymm12, %ymm13
   2686 
   2687 // CHECK: vcmpps  $7, %ymm11, %ymm12, %ymm13
   2688 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x07]
   2689           vcmpordps %ymm11, %ymm12, %ymm13
   2690 
   2691 // CHECK: vcmpps  $3, %ymm11, %ymm12, %ymm13
   2692 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x03]
   2693           vcmpunordps %ymm11, %ymm12, %ymm13
   2694 
   2695 // CHECK: vcmpps  $0, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2696 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x00]
   2697           vcmpeqps -4(%rbx,%rcx,8), %ymm12, %ymm13
   2698 
   2699 // CHECK: vcmpps  $2, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2700 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x02]
   2701           vcmpleps -4(%rbx,%rcx,8), %ymm12, %ymm13
   2702 
   2703 // CHECK: vcmpps  $1, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2704 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x01]
   2705           vcmpltps -4(%rbx,%rcx,8), %ymm12, %ymm13
   2706 
   2707 // CHECK: vcmpps  $4, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2708 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x04]
   2709           vcmpneqps -4(%rbx,%rcx,8), %ymm12, %ymm13
   2710 
   2711 // CHECK: vcmpps  $6, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2712 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x06]
   2713           vcmpnleps -4(%rbx,%rcx,8), %ymm12, %ymm13
   2714 
   2715 // CHECK: vcmpps  $5, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2716 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x05]
   2717           vcmpnltps -4(%rbx,%rcx,8), %ymm12, %ymm13
   2718 
   2719 // CHECK: vcmpps  $7, -4(%rbx,%rcx,8), %ymm6, %ymm12
   2720 // CHECK: encoding: [0xc5,0x4c,0xc2,0x64,0xcb,0xfc,0x07]
   2721           vcmpordps -4(%rbx,%rcx,8), %ymm6, %ymm12
   2722 
   2723 // CHECK: vcmpps  $3, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2724 // CHECK: encoding: [0xc5,0x1c,0xc2,0x6c,0xcb,0xfc,0x03]
   2725           vcmpunordps -4(%rbx,%rcx,8), %ymm12, %ymm13
   2726 
   2727 // CHECK: vcmppd  $0, %ymm11, %ymm12, %ymm13
   2728 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x00]
   2729           vcmpeqpd %ymm11, %ymm12, %ymm13
   2730 
   2731 // CHECK: vcmppd  $2, %ymm11, %ymm12, %ymm13
   2732 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x02]
   2733           vcmplepd %ymm11, %ymm12, %ymm13
   2734 
   2735 // CHECK: vcmppd  $1, %ymm11, %ymm12, %ymm13
   2736 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x01]
   2737           vcmpltpd %ymm11, %ymm12, %ymm13
   2738 
   2739 // CHECK: vcmppd  $4, %ymm11, %ymm12, %ymm13
   2740 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x04]
   2741           vcmpneqpd %ymm11, %ymm12, %ymm13
   2742 
   2743 // CHECK: vcmppd  $6, %ymm11, %ymm12, %ymm13
   2744 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x06]
   2745           vcmpnlepd %ymm11, %ymm12, %ymm13
   2746 
   2747 // CHECK: vcmppd  $5, %ymm11, %ymm12, %ymm13
   2748 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x05]
   2749           vcmpnltpd %ymm11, %ymm12, %ymm13
   2750 
   2751 // CHECK: vcmppd  $7, %ymm11, %ymm12, %ymm13
   2752 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x07]
   2753           vcmpordpd %ymm11, %ymm12, %ymm13
   2754 
   2755 // CHECK: vcmppd  $3, %ymm11, %ymm12, %ymm13
   2756 // CHECK: encoding: [0xc4,0x41,0x1d,0xc2,0xeb,0x03]
   2757           vcmpunordpd %ymm11, %ymm12, %ymm13
   2758 
   2759 // CHECK: vcmppd  $0, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2760 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x00]
   2761           vcmpeqpd -4(%rbx,%rcx,8), %ymm12, %ymm13
   2762 
   2763 // CHECK: vcmppd  $2, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2764 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x02]
   2765           vcmplepd -4(%rbx,%rcx,8), %ymm12, %ymm13
   2766 
   2767 // CHECK: vcmppd  $1, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2768 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x01]
   2769           vcmpltpd -4(%rbx,%rcx,8), %ymm12, %ymm13
   2770 
   2771 // CHECK: vcmppd  $4, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2772 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x04]
   2773           vcmpneqpd -4(%rbx,%rcx,8), %ymm12, %ymm13
   2774 
   2775 // CHECK: vcmppd  $6, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2776 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x06]
   2777           vcmpnlepd -4(%rbx,%rcx,8), %ymm12, %ymm13
   2778 
   2779 // CHECK: vcmppd  $5, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2780 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x05]
   2781           vcmpnltpd -4(%rbx,%rcx,8), %ymm12, %ymm13
   2782 
   2783 // CHECK: vcmppd  $7, -4(%rbx,%rcx,8), %ymm6, %ymm12
   2784 // CHECK: encoding: [0xc5,0x4d,0xc2,0x64,0xcb,0xfc,0x07]
   2785           vcmpordpd -4(%rbx,%rcx,8), %ymm6, %ymm12
   2786 
   2787 // CHECK: vcmppd  $3, -4(%rbx,%rcx,8), %ymm12, %ymm13
   2788 // CHECK: encoding: [0xc5,0x1d,0xc2,0x6c,0xcb,0xfc,0x03]
   2789           vcmpunordpd -4(%rbx,%rcx,8), %ymm12, %ymm13
   2790 
   2791 // CHECK: vcmpps  $8, %ymm11, %ymm12, %ymm13
   2792 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x08]
   2793           vcmpeq_uqps %ymm11, %ymm12, %ymm13
   2794 
   2795 // CHECK: vcmpps  $9, %ymm11, %ymm12, %ymm13
   2796 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x09]
   2797           vcmpngeps %ymm11, %ymm12, %ymm13
   2798 
   2799 // CHECK: vcmpps  $10, %ymm11, %ymm12, %ymm13
   2800 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0a]
   2801           vcmpngtps %ymm11, %ymm12, %ymm13
   2802 
   2803 // CHECK: vcmpps  $11, %ymm11, %ymm12, %ymm13
   2804 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0b]
   2805           vcmpfalseps %ymm11, %ymm12, %ymm13
   2806 
   2807 // CHECK: vcmpps  $12, %ymm11, %ymm12, %ymm13
   2808 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0c]
   2809           vcmpneq_oqps %ymm11, %ymm12, %ymm13
   2810 
   2811 // CHECK: vcmpps  $13, %ymm11, %ymm12, %ymm13
   2812 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0d]
   2813           vcmpgeps %ymm11, %ymm12, %ymm13
   2814 
   2815 // CHECK: vcmpps  $14, %ymm11, %ymm12, %ymm13
   2816 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0e]
   2817           vcmpgtps %ymm11, %ymm12, %ymm13
   2818 
   2819 // CHECK: vcmpps  $15, %ymm11, %ymm12, %ymm13
   2820 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x0f]
   2821           vcmptrueps %ymm11, %ymm12, %ymm13
   2822 
   2823 // CHECK: vcmpps  $16, %ymm11, %ymm12, %ymm13
   2824 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x10]
   2825           vcmpeq_osps %ymm11, %ymm12, %ymm13
   2826 
   2827 // CHECK: vcmpps  $17, %ymm11, %ymm12, %ymm13
   2828 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x11]
   2829           vcmplt_oqps %ymm11, %ymm12, %ymm13
   2830 
   2831 // CHECK: vcmpps  $18, %ymm11, %ymm12, %ymm13
   2832 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x12]
   2833           vcmple_oqps %ymm11, %ymm12, %ymm13
   2834 
   2835 // CHECK: vcmpps  $19, %ymm11, %ymm12, %ymm13
   2836 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x13]
   2837           vcmpunord_sps %ymm11, %ymm12, %ymm13
   2838 
   2839 // CHECK: vcmpps  $20, %ymm11, %ymm12, %ymm13
   2840 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x14]
   2841           vcmpneq_usps %ymm11, %ymm12, %ymm13
   2842 
   2843 // CHECK: vcmpps  $21, %ymm11, %ymm12, %ymm13
   2844 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x15]
   2845           vcmpnlt_uqps %ymm11, %ymm12, %ymm13
   2846 
   2847 // CHECK: vcmpps  $22, %ymm11, %ymm12, %ymm13
   2848 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x16]
   2849           vcmpnle_uqps %ymm11, %ymm12, %ymm13
   2850 
   2851 // CHECK: vcmpps  $23, %ymm11, %ymm12, %ymm13
   2852 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x17]
   2853           vcmpord_sps %ymm11, %ymm12, %ymm13
   2854 
   2855 // CHECK: vcmpps  $24, %ymm11, %ymm12, %ymm13
   2856 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x18]
   2857           vcmpeq_usps %ymm11, %ymm12, %ymm13
   2858 
   2859 // CHECK: vcmpps  $25, %ymm11, %ymm12, %ymm13
   2860 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x19]
   2861           vcmpnge_uqps %ymm11, %ymm12, %ymm13
   2862 
   2863 // CHECK: vcmpps  $26, %ymm11, %ymm12, %ymm13
   2864 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1a]
   2865           vcmpngt_uqps %ymm11, %ymm12, %ymm13
   2866 
   2867 // CHECK: vcmpps  $27, %ymm11, %ymm12, %ymm13
   2868 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1b]
   2869           vcmpfalse_osps %ymm11, %ymm12, %ymm13
   2870 
   2871 // CHECK: vcmpps  $28, %ymm11, %ymm12, %ymm13
   2872 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1c]
   2873           vcmpneq_osps %ymm11, %ymm12, %ymm13
   2874 
   2875 // CHECK: vcmpps  $29, %ymm11, %ymm12, %ymm13
   2876 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1d]
   2877           vcmpge_oqps %ymm11, %ymm12, %ymm13
   2878 
   2879 // CHECK: vcmpps  $30, %ymm11, %ymm12, %ymm13
   2880 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1e]
   2881           vcmpgt_oqps %ymm11, %ymm12, %ymm13
   2882 
   2883 // CHECK: vcmpps  $31, %ymm11, %ymm12, %ymm13
   2884 // CHECK: encoding: [0xc4,0x41,0x1c,0xc2,0xeb,0x1f]
   2885           vcmptrue_usps %ymm11, %ymm12, %ymm13
   2886 
   2887 // CHECK: vaddsubps  %ymm11, %ymm12, %ymm13
   2888 // CHECK: encoding: [0xc4,0x41,0x1f,0xd0,0xeb]
   2889           vaddsubps  %ymm11, %ymm12, %ymm13
   2890 
   2891 // CHECK: vaddsubps  (%rax), %ymm11, %ymm12
   2892 // CHECK: encoding: [0xc5,0x27,0xd0,0x20]
   2893           vaddsubps  (%rax), %ymm11, %ymm12
   2894 
   2895 // CHECK: vaddsubpd  %ymm11, %ymm12, %ymm13
   2896 // CHECK: encoding: [0xc4,0x41,0x1d,0xd0,0xeb]
   2897           vaddsubpd  %ymm11, %ymm12, %ymm13
   2898 
   2899 // CHECK: vaddsubpd  (%rax), %ymm11, %ymm12
   2900 // CHECK: encoding: [0xc5,0x25,0xd0,0x20]
   2901           vaddsubpd  (%rax), %ymm11, %ymm12
   2902 
   2903 // CHECK: vhaddps  %ymm11, %ymm12, %ymm13
   2904 // CHECK: encoding: [0xc4,0x41,0x1f,0x7c,0xeb]
   2905           vhaddps  %ymm11, %ymm12, %ymm13
   2906 
   2907 // CHECK: vhaddps  (%rax), %ymm12, %ymm13
   2908 // CHECK: encoding: [0xc5,0x1f,0x7c,0x28]
   2909           vhaddps  (%rax), %ymm12, %ymm13
   2910 
   2911 // CHECK: vhaddpd  %ymm11, %ymm12, %ymm13
   2912 // CHECK: encoding: [0xc4,0x41,0x1d,0x7c,0xeb]
   2913           vhaddpd  %ymm11, %ymm12, %ymm13
   2914 
   2915 // CHECK: vhaddpd  (%rax), %ymm12, %ymm13
   2916 // CHECK: encoding: [0xc5,0x1d,0x7c,0x28]
   2917           vhaddpd  (%rax), %ymm12, %ymm13
   2918 
   2919 // CHECK: vhsubps  %ymm11, %ymm12, %ymm13
   2920 // CHECK: encoding: [0xc4,0x41,0x1f,0x7d,0xeb]
   2921           vhsubps  %ymm11, %ymm12, %ymm13
   2922 
   2923 // CHECK: vhsubps  (%rax), %ymm12, %ymm13
   2924 // CHECK: encoding: [0xc5,0x1f,0x7d,0x28]
   2925           vhsubps  (%rax), %ymm12, %ymm13
   2926 
   2927 // CHECK: vhsubpd  %ymm11, %ymm12, %ymm13
   2928 // CHECK: encoding: [0xc4,0x41,0x1d,0x7d,0xeb]
   2929           vhsubpd  %ymm11, %ymm12, %ymm13
   2930 
   2931 // CHECK: vhsubpd  (%rax), %ymm12, %ymm13
   2932 // CHECK: encoding: [0xc5,0x1d,0x7d,0x28]
   2933           vhsubpd  (%rax), %ymm12, %ymm13
   2934 
   2935 // CHECK: vblendps  $3, %ymm12, %ymm10, %ymm11
   2936 // CHECK: encoding: [0xc4,0x43,0x2d,0x0c,0xdc,0x03]
   2937           vblendps  $3, %ymm12, %ymm10, %ymm11
   2938 
   2939 // CHECK: vblendps  $3, (%rax), %ymm10, %ymm11
   2940 // CHECK: encoding: [0xc4,0x63,0x2d,0x0c,0x18,0x03]
   2941           vblendps  $3, (%rax), %ymm10, %ymm11
   2942 
   2943 // CHECK: vblendpd  $3, %ymm12, %ymm10, %ymm11
   2944 // CHECK: encoding: [0xc4,0x43,0x2d,0x0d,0xdc,0x03]
   2945           vblendpd  $3, %ymm12, %ymm10, %ymm11
   2946 
   2947 // CHECK: vblendpd  $3, (%rax), %ymm10, %ymm11
   2948 // CHECK: encoding: [0xc4,0x63,0x2d,0x0d,0x18,0x03]
   2949           vblendpd  $3, (%rax), %ymm10, %ymm11
   2950 
   2951 // CHECK: vdpps  $3, %ymm12, %ymm10, %ymm11
   2952 // CHECK: encoding: [0xc4,0x43,0x2d,0x40,0xdc,0x03]
   2953           vdpps  $3, %ymm12, %ymm10, %ymm11
   2954 
   2955 // CHECK: vdpps  $3, (%rax), %ymm10, %ymm11
   2956 // CHECK: encoding: [0xc4,0x63,0x2d,0x40,0x18,0x03]
   2957           vdpps  $3, (%rax), %ymm10, %ymm11
   2958 
   2959 // CHECK: vbroadcastf128  (%rax), %ymm12
   2960 // CHECK: encoding: [0xc4,0x62,0x7d,0x1a,0x20]
   2961           vbroadcastf128  (%rax), %ymm12
   2962 
   2963 // CHECK: vbroadcastsd  (%rax), %ymm12
   2964 // CHECK: encoding: [0xc4,0x62,0x7d,0x19,0x20]
   2965           vbroadcastsd  (%rax), %ymm12
   2966 
   2967 // CHECK: vbroadcastss  (%rax), %xmm12
   2968 // CHECK: encoding: [0xc4,0x62,0x79,0x18,0x20]
   2969           vbroadcastss  (%rax), %xmm12
   2970 
   2971 // CHECK: vbroadcastss  (%rax), %ymm12
   2972 // CHECK: encoding: [0xc4,0x62,0x7d,0x18,0x20]
   2973           vbroadcastss  (%rax), %ymm12
   2974 
   2975 // CHECK: vinsertf128  $7, %xmm12, %ymm12, %ymm10
   2976 // CHECK: encoding: [0xc4,0x43,0x1d,0x18,0xd4,0x07]
   2977           vinsertf128  $7, %xmm12, %ymm12, %ymm10
   2978 
   2979 // CHECK: vinsertf128  $7, (%rax), %ymm12, %ymm10
   2980 // CHECK: encoding: [0xc4,0x63,0x1d,0x18,0x10,0x07]
   2981           vinsertf128  $7, (%rax), %ymm12, %ymm10
   2982 
   2983 // CHECK: vextractf128  $7, %ymm12, %xmm12
   2984 // CHECK: encoding: [0xc4,0x43,0x7d,0x19,0xe4,0x07]
   2985           vextractf128  $7, %ymm12, %xmm12
   2986 
   2987 // CHECK: vextractf128  $7, %ymm12, (%rax)
   2988 // CHECK: encoding: [0xc4,0x63,0x7d,0x19,0x20,0x07]
   2989           vextractf128  $7, %ymm12, (%rax)
   2990 
   2991 // CHECK: vmaskmovpd  %xmm12, %xmm10, (%rax)
   2992 // CHECK: encoding: [0xc4,0x62,0x29,0x2f,0x20]
   2993           vmaskmovpd  %xmm12, %xmm10, (%rax)
   2994 
   2995 // CHECK: vmaskmovpd  %ymm12, %ymm10, (%rax)
   2996 // CHECK: encoding: [0xc4,0x62,0x2d,0x2f,0x20]
   2997           vmaskmovpd  %ymm12, %ymm10, (%rax)
   2998 
   2999 // CHECK: vmaskmovpd  (%rax), %xmm12, %xmm10
   3000 // CHECK: encoding: [0xc4,0x62,0x19,0x2d,0x10]
   3001           vmaskmovpd  (%rax), %xmm12, %xmm10
   3002 
   3003 // CHECK: vmaskmovpd  (%rax), %ymm12, %ymm10
   3004 // CHECK: encoding: [0xc4,0x62,0x1d,0x2d,0x10]
   3005           vmaskmovpd  (%rax), %ymm12, %ymm10
   3006 
   3007 // CHECK: vmaskmovps  %xmm12, %xmm10, (%rax)
   3008 // CHECK: encoding: [0xc4,0x62,0x29,0x2e,0x20]
   3009           vmaskmovps  %xmm12, %xmm10, (%rax)
   3010 
   3011 // CHECK: vmaskmovps  %ymm12, %ymm10, (%rax)
   3012 // CHECK: encoding: [0xc4,0x62,0x2d,0x2e,0x20]
   3013           vmaskmovps  %ymm12, %ymm10, (%rax)
   3014 
   3015 // CHECK: vmaskmovps  (%rax), %xmm12, %xmm10
   3016 // CHECK: encoding: [0xc4,0x62,0x19,0x2c,0x10]
   3017           vmaskmovps  (%rax), %xmm12, %xmm10
   3018 
   3019 // CHECK: vmaskmovps  (%rax), %ymm12, %ymm10
   3020 // CHECK: encoding: [0xc4,0x62,0x1d,0x2c,0x10]
   3021           vmaskmovps  (%rax), %ymm12, %ymm10
   3022 
   3023 // CHECK: vpermilps  $7, %xmm11, %xmm10
   3024 // CHECK: encoding: [0xc4,0x43,0x79,0x04,0xd3,0x07]
   3025           vpermilps  $7, %xmm11, %xmm10
   3026 
   3027 // CHECK: vpermilps  $7, %ymm10, %ymm11
   3028 // CHECK: encoding: [0xc4,0x43,0x7d,0x04,0xda,0x07]
   3029           vpermilps  $7, %ymm10, %ymm11
   3030 
   3031 // CHECK: vpermilps  $7, (%rax), %xmm10
   3032 // CHECK: encoding: [0xc4,0x63,0x79,0x04,0x10,0x07]
   3033           vpermilps  $7, (%rax), %xmm10
   3034 
   3035 // CHECK: vpermilps  $7, (%rax), %ymm10
   3036 // CHECK: encoding: [0xc4,0x63,0x7d,0x04,0x10,0x07]
   3037           vpermilps  $7, (%rax), %ymm10
   3038 
   3039 // CHECK: vpermilps  %xmm11, %xmm10, %xmm11
   3040 // CHECK: encoding: [0xc4,0x42,0x29,0x0c,0xdb]
   3041           vpermilps  %xmm11, %xmm10, %xmm11
   3042 
   3043 // CHECK: vpermilps  %ymm11, %ymm10, %ymm11
   3044 // CHECK: encoding: [0xc4,0x42,0x2d,0x0c,0xdb]
   3045           vpermilps  %ymm11, %ymm10, %ymm11
   3046 
   3047 // CHECK: vpermilps  (%rax), %xmm10, %xmm13
   3048 // CHECK: encoding: [0xc4,0x62,0x29,0x0c,0x28]
   3049           vpermilps  (%rax), %xmm10, %xmm13
   3050 
   3051 // CHECK: vpermilps  (%rax), %ymm10, %ymm11
   3052 // CHECK: encoding: [0xc4,0x62,0x2d,0x0c,0x18]
   3053           vpermilps  (%rax), %ymm10, %ymm11
   3054 
   3055 // CHECK: vpermilpd  $7, %xmm11, %xmm10
   3056 // CHECK: encoding: [0xc4,0x43,0x79,0x05,0xd3,0x07]
   3057           vpermilpd  $7, %xmm11, %xmm10
   3058 
   3059 // CHECK: vpermilpd  $7, %ymm10, %ymm11
   3060 // CHECK: encoding: [0xc4,0x43,0x7d,0x05,0xda,0x07]
   3061           vpermilpd  $7, %ymm10, %ymm11
   3062 
   3063 // CHECK: vpermilpd  $7, (%rax), %xmm10
   3064 // CHECK: encoding: [0xc4,0x63,0x79,0x05,0x10,0x07]
   3065           vpermilpd  $7, (%rax), %xmm10
   3066 
   3067 // CHECK: vpermilpd  $7, (%rax), %ymm10
   3068 // CHECK: encoding: [0xc4,0x63,0x7d,0x05,0x10,0x07]
   3069           vpermilpd  $7, (%rax), %ymm10
   3070 
   3071 // CHECK: vpermilpd  %xmm11, %xmm10, %xmm11
   3072 // CHECK: encoding: [0xc4,0x42,0x29,0x0d,0xdb]
   3073           vpermilpd  %xmm11, %xmm10, %xmm11
   3074 
   3075 // CHECK: vpermilpd  %ymm11, %ymm10, %ymm11
   3076 // CHECK: encoding: [0xc4,0x42,0x2d,0x0d,0xdb]
   3077           vpermilpd  %ymm11, %ymm10, %ymm11
   3078 
   3079 // CHECK: vpermilpd  (%rax), %xmm10, %xmm13
   3080 // CHECK: encoding: [0xc4,0x62,0x29,0x0d,0x28]
   3081           vpermilpd  (%rax), %xmm10, %xmm13
   3082 
   3083 // CHECK: vpermilpd  (%rax), %ymm10, %ymm11
   3084 // CHECK: encoding: [0xc4,0x62,0x2d,0x0d,0x18]
   3085           vpermilpd  (%rax), %ymm10, %ymm11
   3086 
   3087 // CHECK: vperm2f128  $7, %ymm12, %ymm10, %ymm11
   3088 // CHECK: encoding: [0xc4,0x43,0x2d,0x06,0xdc,0x07]
   3089           vperm2f128  $7, %ymm12, %ymm10, %ymm11
   3090 
   3091 // CHECK: vperm2f128  $7, (%rax), %ymm10, %ymm11
   3092 // CHECK: encoding: [0xc4,0x63,0x2d,0x06,0x18,0x07]
   3093           vperm2f128  $7, (%rax), %ymm10, %ymm11
   3094 
   3095 // CHECK: vcvtsd2si  %xmm8, %r8d
   3096 // CHECK: encoding: [0xc4,0x41,0x7b,0x2d,0xc0]
   3097           vcvtsd2si  %xmm8, %r8d
   3098 
   3099 // CHECK: vcvtsd2si  (%rcx), %ecx
   3100 // CHECK: encoding: [0xc5,0xfb,0x2d,0x09]
   3101           vcvtsd2si  (%rcx), %ecx
   3102 
   3103 // CHECK: vcvtss2si  %xmm4, %rcx
   3104 // CHECK: encoding: [0xc4,0xe1,0xfa,0x2d,0xcc]
   3105           vcvtss2si  %xmm4, %rcx
   3106 
   3107 // CHECK: vcvtss2si  (%rcx), %r8
   3108 // CHECK: encoding: [0xc4,0x61,0xfa,0x2d,0x01]
   3109           vcvtss2si  (%rcx), %r8
   3110 
   3111 // CHECK: vcvtsi2sdl  %r8d, %xmm8, %xmm15
   3112 // CHECK: encoding: [0xc4,0x41,0x3b,0x2a,0xf8]
   3113           vcvtsi2sdl  %r8d, %xmm8, %xmm15
   3114 
   3115 // CHECK: vcvtsi2sdl  (%rbp), %xmm8, %xmm15
   3116 // CHECK: encoding: [0xc5,0x3b,0x2a,0x7d,0x00]
   3117           vcvtsi2sdl  (%rbp), %xmm8, %xmm15
   3118 
   3119 // CHECK: vcvtsi2sdq  %rcx, %xmm4, %xmm6
   3120 // CHECK: encoding: [0xc4,0xe1,0xdb,0x2a,0xf1]
   3121           vcvtsi2sdq  %rcx, %xmm4, %xmm6
   3122 
   3123 // CHECK: vcvtsi2sdq  (%rcx), %xmm4, %xmm6
   3124 // CHECK: encoding: [0xc4,0xe1,0xdb,0x2a,0x31]
   3125           vcvtsi2sdq  (%rcx), %xmm4, %xmm6
   3126 
   3127 // CHECK: vcvtsi2ssq  %rcx, %xmm4, %xmm6
   3128 // CHECK: encoding: [0xc4,0xe1,0xda,0x2a,0xf1]
   3129           vcvtsi2ssq  %rcx, %xmm4, %xmm6
   3130 
   3131 // CHECK: vcvtsi2ssq  (%rcx), %xmm4, %xmm6
   3132 // CHECK: encoding: [0xc4,0xe1,0xda,0x2a,0x31]
   3133           vcvtsi2ssq  (%rcx), %xmm4, %xmm6
   3134 
   3135 // CHECK: vcvttsd2si  %xmm4, %rcx
   3136 // CHECK: encoding: [0xc4,0xe1,0xfb,0x2c,0xcc]
   3137           vcvttsd2si  %xmm4, %rcx
   3138 
   3139 // CHECK: vcvttsd2si  (%rcx), %rcx
   3140 // CHECK: encoding: [0xc4,0xe1,0xfb,0x2c,0x09]
   3141           vcvttsd2si  (%rcx), %rcx
   3142 
   3143 // CHECK: vcvttss2si  %xmm4, %rcx
   3144 // CHECK: encoding: [0xc4,0xe1,0xfa,0x2c,0xcc]
   3145           vcvttss2si  %xmm4, %rcx
   3146 
   3147 // CHECK: vcvttss2si  (%rcx), %rcx
   3148 // CHECK: encoding: [0xc4,0xe1,0xfa,0x2c,0x09]
   3149           vcvttss2si  (%rcx), %rcx
   3150 
   3151 // CHECK: vlddqu  (%rax), %ymm12
   3152 // CHECK: encoding: [0xc5,0x7f,0xf0,0x20]
   3153           vlddqu  (%rax), %ymm12
   3154 
   3155 // CHECK: vmovddup  %ymm12, %ymm10
   3156 // CHECK: encoding: [0xc4,0x41,0x7f,0x12,0xd4]
   3157           vmovddup  %ymm12, %ymm10
   3158 
   3159 // CHECK: vmovddup  (%rax), %ymm12
   3160 // CHECK: encoding: [0xc5,0x7f,0x12,0x20]
   3161           vmovddup  (%rax), %ymm12
   3162 
   3163 // CHECK: vmovdqa  %ymm12, %ymm10
   3164 // CHECK: encoding: [0xc4,0x41,0x7d,0x6f,0xd4]
   3165           vmovdqa  %ymm12, %ymm10
   3166 
   3167 // CHECK: vmovdqa  %ymm12, (%rax)
   3168 // CHECK: encoding: [0xc5,0x7d,0x7f,0x20]
   3169           vmovdqa  %ymm12, (%rax)
   3170 
   3171 // CHECK: vmovdqa  (%rax), %ymm12
   3172 // CHECK: encoding: [0xc5,0x7d,0x6f,0x20]
   3173           vmovdqa  (%rax), %ymm12
   3174 
   3175 // CHECK: vmovdqu  %ymm12, %ymm10
   3176 // CHECK: encoding: [0xc4,0x41,0x7e,0x6f,0xd4]
   3177           vmovdqu  %ymm12, %ymm10
   3178 
   3179 // CHECK: vmovdqu  %ymm12, (%rax)
   3180 // CHECK: encoding: [0xc5,0x7e,0x7f,0x20]
   3181           vmovdqu  %ymm12, (%rax)
   3182 
   3183 // CHECK: vmovdqu  (%rax), %ymm12
   3184 // CHECK: encoding: [0xc5,0x7e,0x6f,0x20]
   3185           vmovdqu  (%rax), %ymm12
   3186 
   3187 // CHECK: vmovshdup  %ymm12, %ymm10
   3188 // CHECK: encoding: [0xc4,0x41,0x7e,0x16,0xd4]
   3189           vmovshdup  %ymm12, %ymm10
   3190 
   3191 // CHECK: vmovshdup  (%rax), %ymm12
   3192 // CHECK: encoding: [0xc5,0x7e,0x16,0x20]
   3193           vmovshdup  (%rax), %ymm12
   3194 
   3195 // CHECK: vmovsldup  %ymm12, %ymm10
   3196 // CHECK: encoding: [0xc4,0x41,0x7e,0x12,0xd4]
   3197           vmovsldup  %ymm12, %ymm10
   3198 
   3199 // CHECK: vmovsldup  (%rax), %ymm12
   3200 // CHECK: encoding: [0xc5,0x7e,0x12,0x20]
   3201           vmovsldup  (%rax), %ymm12
   3202 
   3203 // CHECK: vptest  %ymm12, %ymm10
   3204 // CHECK: encoding: [0xc4,0x42,0x7d,0x17,0xd4]
   3205           vptest  %ymm12, %ymm10
   3206 
   3207 // CHECK: vptest  (%rax), %ymm12
   3208 // CHECK: encoding: [0xc4,0x62,0x7d,0x17,0x20]
   3209           vptest  (%rax), %ymm12
   3210 
   3211 // CHECK: vroundpd  $7, %ymm10, %ymm11
   3212 // CHECK: encoding: [0xc4,0x43,0x7d,0x09,0xda,0x07]
   3213           vroundpd  $7, %ymm10, %ymm11
   3214 
   3215 // CHECK: vroundpd  $7, (%rax), %ymm10
   3216 // CHECK: encoding: [0xc4,0x63,0x7d,0x09,0x10,0x07]
   3217           vroundpd  $7, (%rax), %ymm10
   3218 
   3219 // CHECK: vroundps  $7, %ymm10, %ymm11
   3220 // CHECK: encoding: [0xc4,0x43,0x7d,0x08,0xda,0x07]
   3221           vroundps  $7, %ymm10, %ymm11
   3222 
   3223 // CHECK: vroundps  $7, (%rax), %ymm10
   3224 // CHECK: encoding: [0xc4,0x63,0x7d,0x08,0x10,0x07]
   3225           vroundps  $7, (%rax), %ymm10
   3226 
   3227 // CHECK: vshufpd  $7, %ymm12, %ymm10, %ymm11
   3228 // CHECK: encoding: [0xc4,0x41,0x2d,0xc6,0xdc,0x07]
   3229           vshufpd  $7, %ymm12, %ymm10, %ymm11
   3230 
   3231 // CHECK: vshufpd  $7, (%rax), %ymm10, %ymm11
   3232 // CHECK: encoding: [0xc5,0x2d,0xc6,0x18,0x07]
   3233           vshufpd  $7, (%rax), %ymm10, %ymm11
   3234 
   3235 // CHECK: vshufps  $7, %ymm12, %ymm10, %ymm11
   3236 // CHECK: encoding: [0xc4,0x41,0x2c,0xc6,0xdc,0x07]
   3237           vshufps  $7, %ymm12, %ymm10, %ymm11
   3238 
   3239 // CHECK: vshufps  $7, (%rax), %ymm10, %ymm11
   3240 // CHECK: encoding: [0xc5,0x2c,0xc6,0x18,0x07]
   3241           vshufps  $7, (%rax), %ymm10, %ymm11
   3242 
   3243 // CHECK: vtestpd  %xmm12, %xmm10
   3244 // CHECK: encoding: [0xc4,0x42,0x79,0x0f,0xd4]
   3245           vtestpd  %xmm12, %xmm10
   3246 
   3247 // CHECK: vtestpd  %ymm12, %ymm10
   3248 // CHECK: encoding: [0xc4,0x42,0x7d,0x0f,0xd4]
   3249           vtestpd  %ymm12, %ymm10
   3250 
   3251 // CHECK: vtestpd  (%rax), %xmm12
   3252 // CHECK: encoding: [0xc4,0x62,0x79,0x0f,0x20]
   3253           vtestpd  (%rax), %xmm12
   3254 
   3255 // CHECK: vtestpd  (%rax), %ymm12
   3256 // CHECK: encoding: [0xc4,0x62,0x7d,0x0f,0x20]
   3257           vtestpd  (%rax), %ymm12
   3258 
   3259 // CHECK: vtestps  %xmm12, %xmm10
   3260 // CHECK: encoding: [0xc4,0x42,0x79,0x0e,0xd4]
   3261           vtestps  %xmm12, %xmm10
   3262 
   3263 // CHECK: vtestps  %ymm12, %ymm10
   3264 // CHECK: encoding: [0xc4,0x42,0x7d,0x0e,0xd4]
   3265           vtestps  %ymm12, %ymm10
   3266 
   3267 // CHECK: vtestps  (%rax), %xmm12
   3268 // CHECK: encoding: [0xc4,0x62,0x79,0x0e,0x20]
   3269           vtestps  (%rax), %xmm12
   3270 
   3271 // CHECK: vtestps  (%rax), %ymm12
   3272 // CHECK: encoding: [0xc4,0x62,0x7d,0x0e,0x20]
   3273           vtestps  (%rax), %ymm12
   3274 
   3275 // CHECK: vextractps   $10, %xmm8, %r8
   3276 // CHECK: encoding: [0xc4,0x43,0x79,0x17,0xc0,0x0a]
   3277           vextractps   $10, %xmm8, %r8
   3278 
   3279 // CHECK: vextractps   $7, %xmm4, %rcx
   3280 // CHECK: encoding: [0xc4,0xe3,0x79,0x17,0xe1,0x07]
   3281           vextractps   $7, %xmm4, %rcx
   3282 
   3283 // CHECK: vmovd  %xmm4, %rcx
   3284 // CHECK: encoding: [0xc4,0xe1,0xf9,0x7e,0xe1]
   3285           vmovd  %xmm4, %rcx
   3286 
   3287 // CHECK: vmovmskpd  %xmm4, %rcx
   3288 // CHECK: encoding: [0xc5,0xf9,0x50,0xcc]
   3289           vmovmskpd  %xmm4, %rcx
   3290 
   3291 // CHECK: vmovmskpd  %ymm4, %rcx
   3292 // CHECK: encoding: [0xc5,0xfd,0x50,0xcc]
   3293           vmovmskpd  %ymm4, %rcx
   3294 
   3295 // CHECK: vmovmskps  %xmm4, %rcx
   3296 // CHECK: encoding: [0xc5,0xf8,0x50,0xcc]
   3297           vmovmskps  %xmm4, %rcx
   3298 
   3299 // CHECK: vmovmskps  %ymm4, %rcx
   3300 // CHECK: encoding: [0xc5,0xfc,0x50,0xcc]
   3301           vmovmskps  %ymm4, %rcx
   3302 
   3303 // CHECK: vpextrb  $7, %xmm4, %rcx
   3304 // CHECK: encoding: [0xc4,0xe3,0x79,0x14,0xe1,0x07]
   3305           vpextrb  $7, %xmm4, %rcx
   3306 
   3307 // CHECK: vpinsrw  $7, %r8, %xmm15, %xmm8
   3308 // CHECK: encoding: [0xc4,0x41,0x01,0xc4,0xc0,0x07]
   3309           vpinsrw  $7, %r8, %xmm15, %xmm8
   3310 
   3311 // CHECK: vpinsrw  $7, %rcx, %xmm4, %xmm6
   3312 // CHECK: encoding: [0xc5,0xd9,0xc4,0xf1,0x07]
   3313           vpinsrw  $7, %rcx, %xmm4, %xmm6
   3314 
   3315 // CHECK: vpmovmskb  %xmm4, %rcx
   3316 // CHECK: encoding: [0xc5,0xf9,0xd7,0xcc]
   3317           vpmovmskb  %xmm4, %rcx
   3318 
   3319 // CHECK: vblendvpd  %ymm11, 57005(%rax,%riz), %ymm12, %ymm13
   3320 // CHECK: encoding: [0xc4,0x63,0x1d,0x4b,0xac,0x20,0xad,0xde,0x00,0x00,0xb0]
   3321           vblendvpd  %ymm11, 0xdead(%rax,%riz), %ymm12, %ymm13
   3322 
   3323 // CHECK: vmovaps	%xmm3, (%r14,%r11)
   3324 // CHECK: encoding: [0xc4,0x81,0x78,0x29,0x1c,0x1e]
   3325           vmovaps	%xmm3, (%r14,%r11)
   3326 
   3327 // CHECK: vmovaps	(%r14,%r11), %xmm3
   3328 // CHECK: encoding: [0xc4,0x81,0x78,0x28,0x1c,0x1e]
   3329           vmovaps	(%r14,%r11), %xmm3
   3330 
   3331 // CHECK: vmovaps	%xmm3, (%r14,%rbx)
   3332 // CHECK: encoding: [0xc4,0xc1,0x78,0x29,0x1c,0x1e]
   3333           vmovaps	%xmm3, (%r14,%rbx)
   3334 
   3335 // CHECK: vmovaps	(%r14,%rbx), %xmm3
   3336 // CHECK: encoding: [0xc4,0xc1,0x78,0x28,0x1c,0x1e]
   3337           vmovaps	(%r14,%rbx), %xmm3
   3338 
   3339 // CHECK: vmovaps %xmm3, (%rax,%r11)
   3340 // CHECK: encoding: [0xc4,0xa1,0x78,0x29,0x1c,0x18]
   3341           vmovaps %xmm3, (%rax,%r11)
   3342 
   3343 // CHECK: vpshufb _foo(%rip), %xmm0, %xmm0
   3344 // CHECK: encoding: [0xc4,0xe2,0x79,0x00,0x05,A,A,A,A]
   3345 // CHECK: kind: reloc_riprel_4byte
   3346 _foo:
   3347   nop
   3348   vpshufb _foo(%rip), %xmm0, %xmm0
   3349