Home | History | Annotate | Download | only in X86
      1 // RUN: llvm-mc -triple x86_64-unknown-unknown -mcpu=skx  --show-encoding %s | FileCheck %s
      2 
      3 // CHECK: vblendmpd %xmm19, %xmm20, %xmm27
      4 // CHECK:  encoding: [0x62,0x22,0xdd,0x00,0x65,0xdb]
      5           vblendmpd %xmm19, %xmm20, %xmm27
      6 
      7 // CHECK: vblendmpd %xmm19, %xmm20, %xmm27 {%k7}
      8 // CHECK:  encoding: [0x62,0x22,0xdd,0x07,0x65,0xdb]
      9           vblendmpd %xmm19, %xmm20, %xmm27 {%k7}
     10 
     11 // CHECK: vblendmpd %xmm19, %xmm20, %xmm27 {%k7} {z}
     12 // CHECK:  encoding: [0x62,0x22,0xdd,0x87,0x65,0xdb]
     13           vblendmpd %xmm19, %xmm20, %xmm27 {%k7} {z}
     14 
     15 // CHECK: vblendmpd (%rcx), %xmm20, %xmm27
     16 // CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x19]
     17           vblendmpd (%rcx), %xmm20, %xmm27
     18 
     19 // CHECK: vblendmpd 291(%rax,%r14,8), %xmm20, %xmm27
     20 // CHECK:  encoding: [0x62,0x22,0xdd,0x00,0x65,0x9c,0xf0,0x23,0x01,0x00,0x00]
     21           vblendmpd 291(%rax,%r14,8), %xmm20, %xmm27
     22 
     23 // CHECK: vblendmpd (%rcx){1to2}, %xmm20, %xmm27
     24 // CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x19]
     25           vblendmpd (%rcx){1to2}, %xmm20, %xmm27
     26 
     27 // CHECK: vblendmpd 2032(%rdx), %xmm20, %xmm27
     28 // CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x5a,0x7f]
     29           vblendmpd 2032(%rdx), %xmm20, %xmm27
     30 
     31 // CHECK: vblendmpd 2048(%rdx), %xmm20, %xmm27
     32 // CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x9a,0x00,0x08,0x00,0x00]
     33           vblendmpd 2048(%rdx), %xmm20, %xmm27
     34 
     35 // CHECK: vblendmpd -2048(%rdx), %xmm20, %xmm27
     36 // CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x5a,0x80]
     37           vblendmpd -2048(%rdx), %xmm20, %xmm27
     38 
     39 // CHECK: vblendmpd -2064(%rdx), %xmm20, %xmm27
     40 // CHECK:  encoding: [0x62,0x62,0xdd,0x00,0x65,0x9a,0xf0,0xf7,0xff,0xff]
     41           vblendmpd -2064(%rdx), %xmm20, %xmm27
     42 
     43 // CHECK: vblendmpd 1016(%rdx){1to2}, %xmm20, %xmm27
     44 // CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x5a,0x7f]
     45           vblendmpd 1016(%rdx){1to2}, %xmm20, %xmm27
     46 
     47 // CHECK: vblendmpd 1024(%rdx){1to2}, %xmm20, %xmm27
     48 // CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x9a,0x00,0x04,0x00,0x00]
     49           vblendmpd 1024(%rdx){1to2}, %xmm20, %xmm27
     50 
     51 // CHECK: vblendmpd -1024(%rdx){1to2}, %xmm20, %xmm27
     52 // CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x5a,0x80]
     53           vblendmpd -1024(%rdx){1to2}, %xmm20, %xmm27
     54 
     55 // CHECK: vblendmpd -1032(%rdx){1to2}, %xmm20, %xmm27
     56 // CHECK:  encoding: [0x62,0x62,0xdd,0x10,0x65,0x9a,0xf8,0xfb,0xff,0xff]
     57           vblendmpd -1032(%rdx){1to2}, %xmm20, %xmm27
     58 
     59 // CHECK: vblendmpd %ymm23, %ymm21, %ymm28
     60 // CHECK:  encoding: [0x62,0x22,0xd5,0x20,0x65,0xe7]
     61           vblendmpd %ymm23, %ymm21, %ymm28
     62 
     63 // CHECK: vblendmpd %ymm23, %ymm21, %ymm28 {%k3}
     64 // CHECK:  encoding: [0x62,0x22,0xd5,0x23,0x65,0xe7]
     65           vblendmpd %ymm23, %ymm21, %ymm28 {%k3}
     66 
     67 // CHECK: vblendmpd %ymm23, %ymm21, %ymm28 {%k3} {z}
     68 // CHECK:  encoding: [0x62,0x22,0xd5,0xa3,0x65,0xe7]
     69           vblendmpd %ymm23, %ymm21, %ymm28 {%k3} {z}
     70 
     71 // CHECK: vblendmpd (%rcx), %ymm21, %ymm28
     72 // CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0x21]
     73           vblendmpd (%rcx), %ymm21, %ymm28
     74 
     75 // CHECK: vblendmpd 291(%rax,%r14,8), %ymm21, %ymm28
     76 // CHECK:  encoding: [0x62,0x22,0xd5,0x20,0x65,0xa4,0xf0,0x23,0x01,0x00,0x00]
     77           vblendmpd 291(%rax,%r14,8), %ymm21, %ymm28
     78 
     79 // CHECK: vblendmpd (%rcx){1to4}, %ymm21, %ymm28
     80 // CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0x21]
     81           vblendmpd (%rcx){1to4}, %ymm21, %ymm28
     82 
     83 // CHECK: vblendmpd 4064(%rdx), %ymm21, %ymm28
     84 // CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0x62,0x7f]
     85           vblendmpd 4064(%rdx), %ymm21, %ymm28
     86 
     87 // CHECK: vblendmpd 4096(%rdx), %ymm21, %ymm28
     88 // CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0xa2,0x00,0x10,0x00,0x00]
     89           vblendmpd 4096(%rdx), %ymm21, %ymm28
     90 
     91 // CHECK: vblendmpd -4096(%rdx), %ymm21, %ymm28
     92 // CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0x62,0x80]
     93           vblendmpd -4096(%rdx), %ymm21, %ymm28
     94 
     95 // CHECK: vblendmpd -4128(%rdx), %ymm21, %ymm28
     96 // CHECK:  encoding: [0x62,0x62,0xd5,0x20,0x65,0xa2,0xe0,0xef,0xff,0xff]
     97           vblendmpd -4128(%rdx), %ymm21, %ymm28
     98 
     99 // CHECK: vblendmpd 1016(%rdx){1to4}, %ymm21, %ymm28
    100 // CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0x62,0x7f]
    101           vblendmpd 1016(%rdx){1to4}, %ymm21, %ymm28
    102 
    103 // CHECK: vblendmpd 1024(%rdx){1to4}, %ymm21, %ymm28
    104 // CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0xa2,0x00,0x04,0x00,0x00]
    105           vblendmpd 1024(%rdx){1to4}, %ymm21, %ymm28
    106 
    107 // CHECK: vblendmpd -1024(%rdx){1to4}, %ymm21, %ymm28
    108 // CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0x62,0x80]
    109           vblendmpd -1024(%rdx){1to4}, %ymm21, %ymm28
    110 
    111 // CHECK: vblendmpd -1032(%rdx){1to4}, %ymm21, %ymm28
    112 // CHECK:  encoding: [0x62,0x62,0xd5,0x30,0x65,0xa2,0xf8,0xfb,0xff,0xff]
    113           vblendmpd -1032(%rdx){1to4}, %ymm21, %ymm28
    114 
    115 // CHECK: vblendmps %xmm20, %xmm20, %xmm24
    116 // CHECK:  encoding: [0x62,0x22,0x5d,0x00,0x65,0xc4]
    117           vblendmps %xmm20, %xmm20, %xmm24
    118 
    119 // CHECK: vblendmps %xmm20, %xmm20, %xmm24 {%k1}
    120 // CHECK:  encoding: [0x62,0x22,0x5d,0x01,0x65,0xc4]
    121           vblendmps %xmm20, %xmm20, %xmm24 {%k1}
    122 
    123 // CHECK: vblendmps %xmm20, %xmm20, %xmm24 {%k1} {z}
    124 // CHECK:  encoding: [0x62,0x22,0x5d,0x81,0x65,0xc4]
    125           vblendmps %xmm20, %xmm20, %xmm24 {%k1} {z}
    126 
    127 // CHECK: vblendmps (%rcx), %xmm20, %xmm24
    128 // CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x01]
    129           vblendmps (%rcx), %xmm20, %xmm24
    130 
    131 // CHECK: vblendmps 291(%rax,%r14,8), %xmm20, %xmm24
    132 // CHECK:  encoding: [0x62,0x22,0x5d,0x00,0x65,0x84,0xf0,0x23,0x01,0x00,0x00]
    133           vblendmps 291(%rax,%r14,8), %xmm20, %xmm24
    134 
    135 // CHECK: vblendmps (%rcx){1to4}, %xmm20, %xmm24
    136 // CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x01]
    137           vblendmps (%rcx){1to4}, %xmm20, %xmm24
    138 
    139 // CHECK: vblendmps 2032(%rdx), %xmm20, %xmm24
    140 // CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x42,0x7f]
    141           vblendmps 2032(%rdx), %xmm20, %xmm24
    142 
    143 // CHECK: vblendmps 2048(%rdx), %xmm20, %xmm24
    144 // CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x82,0x00,0x08,0x00,0x00]
    145           vblendmps 2048(%rdx), %xmm20, %xmm24
    146 
    147 // CHECK: vblendmps -2048(%rdx), %xmm20, %xmm24
    148 // CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x42,0x80]
    149           vblendmps -2048(%rdx), %xmm20, %xmm24
    150 
    151 // CHECK: vblendmps -2064(%rdx), %xmm20, %xmm24
    152 // CHECK:  encoding: [0x62,0x62,0x5d,0x00,0x65,0x82,0xf0,0xf7,0xff,0xff]
    153           vblendmps -2064(%rdx), %xmm20, %xmm24
    154 
    155 // CHECK: vblendmps 508(%rdx){1to4}, %xmm20, %xmm24
    156 // CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x42,0x7f]
    157           vblendmps 508(%rdx){1to4}, %xmm20, %xmm24
    158 
    159 // CHECK: vblendmps 512(%rdx){1to4}, %xmm20, %xmm24
    160 // CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x82,0x00,0x02,0x00,0x00]
    161           vblendmps 512(%rdx){1to4}, %xmm20, %xmm24
    162 
    163 // CHECK: vblendmps -512(%rdx){1to4}, %xmm20, %xmm24
    164 // CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x42,0x80]
    165           vblendmps -512(%rdx){1to4}, %xmm20, %xmm24
    166 
    167 // CHECK: vblendmps -516(%rdx){1to4}, %xmm20, %xmm24
    168 // CHECK:  encoding: [0x62,0x62,0x5d,0x10,0x65,0x82,0xfc,0xfd,0xff,0xff]
    169           vblendmps -516(%rdx){1to4}, %xmm20, %xmm24
    170 
    171 // CHECK: vblendmps %ymm24, %ymm23, %ymm17
    172 // CHECK:  encoding: [0x62,0x82,0x45,0x20,0x65,0xc8]
    173           vblendmps %ymm24, %ymm23, %ymm17
    174 
    175 // CHECK: vblendmps %ymm24, %ymm23, %ymm17 {%k6}
    176 // CHECK:  encoding: [0x62,0x82,0x45,0x26,0x65,0xc8]
    177           vblendmps %ymm24, %ymm23, %ymm17 {%k6}
    178 
    179 // CHECK: vblendmps %ymm24, %ymm23, %ymm17 {%k6} {z}
    180 // CHECK:  encoding: [0x62,0x82,0x45,0xa6,0x65,0xc8]
    181           vblendmps %ymm24, %ymm23, %ymm17 {%k6} {z}
    182 
    183 // CHECK: vblendmps (%rcx), %ymm23, %ymm17
    184 // CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x09]
    185           vblendmps (%rcx), %ymm23, %ymm17
    186 
    187 // CHECK: vblendmps 291(%rax,%r14,8), %ymm23, %ymm17
    188 // CHECK:  encoding: [0x62,0xa2,0x45,0x20,0x65,0x8c,0xf0,0x23,0x01,0x00,0x00]
    189           vblendmps 291(%rax,%r14,8), %ymm23, %ymm17
    190 
    191 // CHECK: vblendmps (%rcx){1to8}, %ymm23, %ymm17
    192 // CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x09]
    193           vblendmps (%rcx){1to8}, %ymm23, %ymm17
    194 
    195 // CHECK: vblendmps 4064(%rdx), %ymm23, %ymm17
    196 // CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x4a,0x7f]
    197           vblendmps 4064(%rdx), %ymm23, %ymm17
    198 
    199 // CHECK: vblendmps 4096(%rdx), %ymm23, %ymm17
    200 // CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x8a,0x00,0x10,0x00,0x00]
    201           vblendmps 4096(%rdx), %ymm23, %ymm17
    202 
    203 // CHECK: vblendmps -4096(%rdx), %ymm23, %ymm17
    204 // CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x4a,0x80]
    205           vblendmps -4096(%rdx), %ymm23, %ymm17
    206 
    207 // CHECK: vblendmps -4128(%rdx), %ymm23, %ymm17
    208 // CHECK:  encoding: [0x62,0xe2,0x45,0x20,0x65,0x8a,0xe0,0xef,0xff,0xff]
    209           vblendmps -4128(%rdx), %ymm23, %ymm17
    210 
    211 // CHECK: vblendmps 508(%rdx){1to8}, %ymm23, %ymm17
    212 // CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x4a,0x7f]
    213           vblendmps 508(%rdx){1to8}, %ymm23, %ymm17
    214 
    215 // CHECK: vblendmps 512(%rdx){1to8}, %ymm23, %ymm17
    216 // CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x8a,0x00,0x02,0x00,0x00]
    217           vblendmps 512(%rdx){1to8}, %ymm23, %ymm17
    218 
    219 // CHECK: vblendmps -512(%rdx){1to8}, %ymm23, %ymm17
    220 // CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x4a,0x80]
    221           vblendmps -512(%rdx){1to8}, %ymm23, %ymm17
    222 
    223 // CHECK: vblendmps -516(%rdx){1to8}, %ymm23, %ymm17
    224 // CHECK:  encoding: [0x62,0xe2,0x45,0x30,0x65,0x8a,0xfc,0xfd,0xff,0xff]
    225           vblendmps -516(%rdx){1to8}, %ymm23, %ymm17
    226 
    227 // CHECK: vpblendmd %xmm26, %xmm25, %xmm17
    228 // CHECK:  encoding: [0x62,0x82,0x35,0x00,0x64,0xca]
    229           vpblendmd %xmm26, %xmm25, %xmm17
    230 
    231 // CHECK: vpblendmd %xmm26, %xmm25, %xmm17 {%k5}
    232 // CHECK:  encoding: [0x62,0x82,0x35,0x05,0x64,0xca]
    233           vpblendmd %xmm26, %xmm25, %xmm17 {%k5}
    234 
    235 // CHECK: vpblendmd %xmm26, %xmm25, %xmm17 {%k5} {z}
    236 // CHECK:  encoding: [0x62,0x82,0x35,0x85,0x64,0xca]
    237           vpblendmd %xmm26, %xmm25, %xmm17 {%k5} {z}
    238 
    239 // CHECK: vpblendmd (%rcx), %xmm25, %xmm17
    240 // CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x09]
    241           vpblendmd (%rcx), %xmm25, %xmm17
    242 
    243 // CHECK: vpblendmd 291(%rax,%r14,8), %xmm25, %xmm17
    244 // CHECK:  encoding: [0x62,0xa2,0x35,0x00,0x64,0x8c,0xf0,0x23,0x01,0x00,0x00]
    245           vpblendmd 291(%rax,%r14,8), %xmm25, %xmm17
    246 
    247 // CHECK: vpblendmd (%rcx){1to4}, %xmm25, %xmm17
    248 // CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x09]
    249           vpblendmd (%rcx){1to4}, %xmm25, %xmm17
    250 
    251 // CHECK: vpblendmd 2032(%rdx), %xmm25, %xmm17
    252 // CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x4a,0x7f]
    253           vpblendmd 2032(%rdx), %xmm25, %xmm17
    254 
    255 // CHECK: vpblendmd 2048(%rdx), %xmm25, %xmm17
    256 // CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x8a,0x00,0x08,0x00,0x00]
    257           vpblendmd 2048(%rdx), %xmm25, %xmm17
    258 
    259 // CHECK: vpblendmd -2048(%rdx), %xmm25, %xmm17
    260 // CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x4a,0x80]
    261           vpblendmd -2048(%rdx), %xmm25, %xmm17
    262 
    263 // CHECK: vpblendmd -2064(%rdx), %xmm25, %xmm17
    264 // CHECK:  encoding: [0x62,0xe2,0x35,0x00,0x64,0x8a,0xf0,0xf7,0xff,0xff]
    265           vpblendmd -2064(%rdx), %xmm25, %xmm17
    266 
    267 // CHECK: vpblendmd 508(%rdx){1to4}, %xmm25, %xmm17
    268 // CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x4a,0x7f]
    269           vpblendmd 508(%rdx){1to4}, %xmm25, %xmm17
    270 
    271 // CHECK: vpblendmd 512(%rdx){1to4}, %xmm25, %xmm17
    272 // CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x8a,0x00,0x02,0x00,0x00]
    273           vpblendmd 512(%rdx){1to4}, %xmm25, %xmm17
    274 
    275 // CHECK: vpblendmd -512(%rdx){1to4}, %xmm25, %xmm17
    276 // CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x4a,0x80]
    277           vpblendmd -512(%rdx){1to4}, %xmm25, %xmm17
    278 
    279 // CHECK: vpblendmd -516(%rdx){1to4}, %xmm25, %xmm17
    280 // CHECK:  encoding: [0x62,0xe2,0x35,0x10,0x64,0x8a,0xfc,0xfd,0xff,0xff]
    281           vpblendmd -516(%rdx){1to4}, %xmm25, %xmm17
    282 
    283 // CHECK: vpblendmd %ymm23, %ymm29, %ymm26
    284 // CHECK:  encoding: [0x62,0x22,0x15,0x20,0x64,0xd7]
    285           vpblendmd %ymm23, %ymm29, %ymm26
    286 
    287 // CHECK: vpblendmd %ymm23, %ymm29, %ymm26 {%k7}
    288 // CHECK:  encoding: [0x62,0x22,0x15,0x27,0x64,0xd7]
    289           vpblendmd %ymm23, %ymm29, %ymm26 {%k7}
    290 
    291 // CHECK: vpblendmd %ymm23, %ymm29, %ymm26 {%k7} {z}
    292 // CHECK:  encoding: [0x62,0x22,0x15,0xa7,0x64,0xd7]
    293           vpblendmd %ymm23, %ymm29, %ymm26 {%k7} {z}
    294 
    295 // CHECK: vpblendmd (%rcx), %ymm29, %ymm26
    296 // CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x11]
    297           vpblendmd (%rcx), %ymm29, %ymm26
    298 
    299 // CHECK: vpblendmd 291(%rax,%r14,8), %ymm29, %ymm26
    300 // CHECK:  encoding: [0x62,0x22,0x15,0x20,0x64,0x94,0xf0,0x23,0x01,0x00,0x00]
    301           vpblendmd 291(%rax,%r14,8), %ymm29, %ymm26
    302 
    303 // CHECK: vpblendmd (%rcx){1to8}, %ymm29, %ymm26
    304 // CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x11]
    305           vpblendmd (%rcx){1to8}, %ymm29, %ymm26
    306 
    307 // CHECK: vpblendmd 4064(%rdx), %ymm29, %ymm26
    308 // CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x52,0x7f]
    309           vpblendmd 4064(%rdx), %ymm29, %ymm26
    310 
    311 // CHECK: vpblendmd 4096(%rdx), %ymm29, %ymm26
    312 // CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x92,0x00,0x10,0x00,0x00]
    313           vpblendmd 4096(%rdx), %ymm29, %ymm26
    314 
    315 // CHECK: vpblendmd -4096(%rdx), %ymm29, %ymm26
    316 // CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x52,0x80]
    317           vpblendmd -4096(%rdx), %ymm29, %ymm26
    318 
    319 // CHECK: vpblendmd -4128(%rdx), %ymm29, %ymm26
    320 // CHECK:  encoding: [0x62,0x62,0x15,0x20,0x64,0x92,0xe0,0xef,0xff,0xff]
    321           vpblendmd -4128(%rdx), %ymm29, %ymm26
    322 
    323 // CHECK: vpblendmd 508(%rdx){1to8}, %ymm29, %ymm26
    324 // CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x52,0x7f]
    325           vpblendmd 508(%rdx){1to8}, %ymm29, %ymm26
    326 
    327 // CHECK: vpblendmd 512(%rdx){1to8}, %ymm29, %ymm26
    328 // CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x92,0x00,0x02,0x00,0x00]
    329           vpblendmd 512(%rdx){1to8}, %ymm29, %ymm26
    330 
    331 // CHECK: vpblendmd -512(%rdx){1to8}, %ymm29, %ymm26
    332 // CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x52,0x80]
    333           vpblendmd -512(%rdx){1to8}, %ymm29, %ymm26
    334 
    335 // CHECK: vpblendmd -516(%rdx){1to8}, %ymm29, %ymm26
    336 // CHECK:  encoding: [0x62,0x62,0x15,0x30,0x64,0x92,0xfc,0xfd,0xff,0xff]
    337           vpblendmd -516(%rdx){1to8}, %ymm29, %ymm26
    338 
    339 // CHECK: vpblendmq %xmm17, %xmm27, %xmm29
    340 // CHECK:  encoding: [0x62,0x22,0xa5,0x00,0x64,0xe9]
    341           vpblendmq %xmm17, %xmm27, %xmm29
    342 
    343 // CHECK: vpblendmq %xmm17, %xmm27, %xmm29 {%k6}
    344 // CHECK:  encoding: [0x62,0x22,0xa5,0x06,0x64,0xe9]
    345           vpblendmq %xmm17, %xmm27, %xmm29 {%k6}
    346 
    347 // CHECK: vpblendmq %xmm17, %xmm27, %xmm29 {%k6} {z}
    348 // CHECK:  encoding: [0x62,0x22,0xa5,0x86,0x64,0xe9]
    349           vpblendmq %xmm17, %xmm27, %xmm29 {%k6} {z}
    350 
    351 // CHECK: vpblendmq (%rcx), %xmm27, %xmm29
    352 // CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0x29]
    353           vpblendmq (%rcx), %xmm27, %xmm29
    354 
    355 // CHECK: vpblendmq 291(%rax,%r14,8), %xmm27, %xmm29
    356 // CHECK:  encoding: [0x62,0x22,0xa5,0x00,0x64,0xac,0xf0,0x23,0x01,0x00,0x00]
    357           vpblendmq 291(%rax,%r14,8), %xmm27, %xmm29
    358 
    359 // CHECK: vpblendmq (%rcx){1to2}, %xmm27, %xmm29
    360 // CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0x29]
    361           vpblendmq (%rcx){1to2}, %xmm27, %xmm29
    362 
    363 // CHECK: vpblendmq 2032(%rdx), %xmm27, %xmm29
    364 // CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0x6a,0x7f]
    365           vpblendmq 2032(%rdx), %xmm27, %xmm29
    366 
    367 // CHECK: vpblendmq 2048(%rdx), %xmm27, %xmm29
    368 // CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0xaa,0x00,0x08,0x00,0x00]
    369           vpblendmq 2048(%rdx), %xmm27, %xmm29
    370 
    371 // CHECK: vpblendmq -2048(%rdx), %xmm27, %xmm29
    372 // CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0x6a,0x80]
    373           vpblendmq -2048(%rdx), %xmm27, %xmm29
    374 
    375 // CHECK: vpblendmq -2064(%rdx), %xmm27, %xmm29
    376 // CHECK:  encoding: [0x62,0x62,0xa5,0x00,0x64,0xaa,0xf0,0xf7,0xff,0xff]
    377           vpblendmq -2064(%rdx), %xmm27, %xmm29
    378 
    379 // CHECK: vpblendmq 1016(%rdx){1to2}, %xmm27, %xmm29
    380 // CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0x6a,0x7f]
    381           vpblendmq 1016(%rdx){1to2}, %xmm27, %xmm29
    382 
    383 // CHECK: vpblendmq 1024(%rdx){1to2}, %xmm27, %xmm29
    384 // CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0xaa,0x00,0x04,0x00,0x00]
    385           vpblendmq 1024(%rdx){1to2}, %xmm27, %xmm29
    386 
    387 // CHECK: vpblendmq -1024(%rdx){1to2}, %xmm27, %xmm29
    388 // CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0x6a,0x80]
    389           vpblendmq -1024(%rdx){1to2}, %xmm27, %xmm29
    390 
    391 // CHECK: vpblendmq -1032(%rdx){1to2}, %xmm27, %xmm29
    392 // CHECK:  encoding: [0x62,0x62,0xa5,0x10,0x64,0xaa,0xf8,0xfb,0xff,0xff]
    393           vpblendmq -1032(%rdx){1to2}, %xmm27, %xmm29
    394 
    395 // CHECK: vpblendmq %ymm21, %ymm23, %ymm21
    396 // CHECK:  encoding: [0x62,0xa2,0xc5,0x20,0x64,0xed]
    397           vpblendmq %ymm21, %ymm23, %ymm21
    398 
    399 // CHECK: vpblendmq %ymm21, %ymm23, %ymm21 {%k3}
    400 // CHECK:  encoding: [0x62,0xa2,0xc5,0x23,0x64,0xed]
    401           vpblendmq %ymm21, %ymm23, %ymm21 {%k3}
    402 
    403 // CHECK: vpblendmq %ymm21, %ymm23, %ymm21 {%k3} {z}
    404 // CHECK:  encoding: [0x62,0xa2,0xc5,0xa3,0x64,0xed]
    405           vpblendmq %ymm21, %ymm23, %ymm21 {%k3} {z}
    406 
    407 // CHECK: vpblendmq (%rcx), %ymm23, %ymm21
    408 // CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0x29]
    409           vpblendmq (%rcx), %ymm23, %ymm21
    410 
    411 // CHECK: vpblendmq 291(%rax,%r14,8), %ymm23, %ymm21
    412 // CHECK:  encoding: [0x62,0xa2,0xc5,0x20,0x64,0xac,0xf0,0x23,0x01,0x00,0x00]
    413           vpblendmq 291(%rax,%r14,8), %ymm23, %ymm21
    414 
    415 // CHECK: vpblendmq (%rcx){1to4}, %ymm23, %ymm21
    416 // CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0x29]
    417           vpblendmq (%rcx){1to4}, %ymm23, %ymm21
    418 
    419 // CHECK: vpblendmq 4064(%rdx), %ymm23, %ymm21
    420 // CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0x6a,0x7f]
    421           vpblendmq 4064(%rdx), %ymm23, %ymm21
    422 
    423 // CHECK: vpblendmq 4096(%rdx), %ymm23, %ymm21
    424 // CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0xaa,0x00,0x10,0x00,0x00]
    425           vpblendmq 4096(%rdx), %ymm23, %ymm21
    426 
    427 // CHECK: vpblendmq -4096(%rdx), %ymm23, %ymm21
    428 // CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0x6a,0x80]
    429           vpblendmq -4096(%rdx), %ymm23, %ymm21
    430 
    431 // CHECK: vpblendmq -4128(%rdx), %ymm23, %ymm21
    432 // CHECK:  encoding: [0x62,0xe2,0xc5,0x20,0x64,0xaa,0xe0,0xef,0xff,0xff]
    433           vpblendmq -4128(%rdx), %ymm23, %ymm21
    434 
    435 // CHECK: vpblendmq 1016(%rdx){1to4}, %ymm23, %ymm21
    436 // CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0x6a,0x7f]
    437           vpblendmq 1016(%rdx){1to4}, %ymm23, %ymm21
    438 
    439 // CHECK: vpblendmq 1024(%rdx){1to4}, %ymm23, %ymm21
    440 // CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0xaa,0x00,0x04,0x00,0x00]
    441           vpblendmq 1024(%rdx){1to4}, %ymm23, %ymm21
    442 
    443 // CHECK: vpblendmq -1024(%rdx){1to4}, %ymm23, %ymm21
    444 // CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0x6a,0x80]
    445           vpblendmq -1024(%rdx){1to4}, %ymm23, %ymm21
    446 
    447 // CHECK: vpblendmq -1032(%rdx){1to4}, %ymm23, %ymm21
    448 // CHECK:  encoding: [0x62,0xe2,0xc5,0x30,0x64,0xaa,0xf8,0xfb,0xff,0xff]
    449           vpblendmq -1032(%rdx){1to4}, %ymm23, %ymm21
    450