1// RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s 2 3// CHECK: aesdec128kl 268435456(%rbp,%r14,8), %xmm6 4// CHECK: encoding: [0xf3,0x42,0x0f,0x38,0xdd,0xb4,0xf5,0x00,0x00,0x00,0x10] 5 aesdec128kl 268435456(%rbp,%r14,8), %xmm6 6 7// CHECK: aesdec128kl 291(%r8,%rax,4), %xmm6 8// CHECK: encoding: [0xf3,0x41,0x0f,0x38,0xdd,0xb4,0x80,0x23,0x01,0x00,0x00] 9 aesdec128kl 291(%r8,%rax,4), %xmm6 10 11// CHECK: aesdec128kl (%rip), %xmm6 12// CHECK: encoding: [0xf3,0x0f,0x38,0xdd,0x35,0x00,0x00,0x00,0x00] 13 aesdec128kl (%rip), %xmm6 14 15// CHECK: aesdec128kl -1536(,%rbp,2), %xmm6 16// CHECK: encoding: [0xf3,0x0f,0x38,0xdd,0x34,0x6d,0x00,0xfa,0xff,0xff] 17 aesdec128kl -1536(,%rbp,2), %xmm6 18 19// CHECK: aesdec128kl 6096(%rcx), %xmm6 20// CHECK: encoding: [0xf3,0x0f,0x38,0xdd,0xb1,0xd0,0x17,0x00,0x00] 21 aesdec128kl 6096(%rcx), %xmm6 22 23// CHECK: aesdec128kl -6144(%rdx), %xmm6 24// CHECK: encoding: [0xf3,0x0f,0x38,0xdd,0xb2,0x00,0xe8,0xff,0xff] 25 aesdec128kl -6144(%rdx), %xmm6 26 27// CHECK: aesdec256kl 268435456(%rbp,%r14,8), %xmm6 28// CHECK: encoding: [0xf3,0x42,0x0f,0x38,0xdf,0xb4,0xf5,0x00,0x00,0x00,0x10] 29 aesdec256kl 268435456(%rbp,%r14,8), %xmm6 30 31// CHECK: aesdec256kl 291(%r8,%rax,4), %xmm6 32// CHECK: encoding: [0xf3,0x41,0x0f,0x38,0xdf,0xb4,0x80,0x23,0x01,0x00,0x00] 33 aesdec256kl 291(%r8,%rax,4), %xmm6 34 35// CHECK: aesdec256kl (%rip), %xmm6 36// CHECK: encoding: [0xf3,0x0f,0x38,0xdf,0x35,0x00,0x00,0x00,0x00] 37 aesdec256kl (%rip), %xmm6 38 39// CHECK: aesdec256kl -2048(,%rbp,2), %xmm6 40// CHECK: encoding: [0xf3,0x0f,0x38,0xdf,0x34,0x6d,0x00,0xf8,0xff,0xff] 41 aesdec256kl -2048(,%rbp,2), %xmm6 42 43// CHECK: aesdec256kl 8128(%rcx), %xmm6 44// CHECK: encoding: [0xf3,0x0f,0x38,0xdf,0xb1,0xc0,0x1f,0x00,0x00] 45 aesdec256kl 8128(%rcx), %xmm6 46 47// CHECK: aesdec256kl -8192(%rdx), %xmm6 48// CHECK: encoding: [0xf3,0x0f,0x38,0xdf,0xb2,0x00,0xe0,0xff,0xff] 49 aesdec256kl -8192(%rdx), %xmm6 50 51// CHECK: aesenc128kl 268435456(%rbp,%r14,8), %xmm6 52// CHECK: encoding: [0xf3,0x42,0x0f,0x38,0xdc,0xb4,0xf5,0x00,0x00,0x00,0x10] 53 aesenc128kl 268435456(%rbp,%r14,8), %xmm6 54 55// CHECK: aesenc128kl 291(%r8,%rax,4), %xmm6 56// CHECK: encoding: [0xf3,0x41,0x0f,0x38,0xdc,0xb4,0x80,0x23,0x01,0x00,0x00] 57 aesenc128kl 291(%r8,%rax,4), %xmm6 58 59// CHECK: aesenc128kl (%rip), %xmm6 60// CHECK: encoding: [0xf3,0x0f,0x38,0xdc,0x35,0x00,0x00,0x00,0x00] 61 aesenc128kl (%rip), %xmm6 62 63// CHECK: aesenc128kl -1536(,%rbp,2), %xmm6 64// CHECK: encoding: [0xf3,0x0f,0x38,0xdc,0x34,0x6d,0x00,0xfa,0xff,0xff] 65 aesenc128kl -1536(,%rbp,2), %xmm6 66 67// CHECK: aesenc128kl 6096(%rcx), %xmm6 68// CHECK: encoding: [0xf3,0x0f,0x38,0xdc,0xb1,0xd0,0x17,0x00,0x00] 69 aesenc128kl 6096(%rcx), %xmm6 70 71// CHECK: aesenc128kl -6144(%rdx), %xmm6 72// CHECK: encoding: [0xf3,0x0f,0x38,0xdc,0xb2,0x00,0xe8,0xff,0xff] 73 aesenc128kl -6144(%rdx), %xmm6 74 75// CHECK: aesenc256kl 268435456(%rbp,%r14,8), %xmm6 76// CHECK: encoding: [0xf3,0x42,0x0f,0x38,0xde,0xb4,0xf5,0x00,0x00,0x00,0x10] 77 aesenc256kl 268435456(%rbp,%r14,8), %xmm6 78 79// CHECK: aesenc256kl 291(%r8,%rax,4), %xmm6 80// CHECK: encoding: [0xf3,0x41,0x0f,0x38,0xde,0xb4,0x80,0x23,0x01,0x00,0x00] 81 aesenc256kl 291(%r8,%rax,4), %xmm6 82 83// CHECK: aesenc256kl (%rip), %xmm6 84// CHECK: encoding: [0xf3,0x0f,0x38,0xde,0x35,0x00,0x00,0x00,0x00] 85 aesenc256kl (%rip), %xmm6 86 87// CHECK: aesenc256kl -2048(,%rbp,2), %xmm6 88// CHECK: encoding: [0xf3,0x0f,0x38,0xde,0x34,0x6d,0x00,0xf8,0xff,0xff] 89 aesenc256kl -2048(,%rbp,2), %xmm6 90 91// CHECK: aesenc256kl 8128(%rcx), %xmm6 92// CHECK: encoding: [0xf3,0x0f,0x38,0xde,0xb1,0xc0,0x1f,0x00,0x00] 93 aesenc256kl 8128(%rcx), %xmm6 94 95// CHECK: aesenc256kl -8192(%rdx), %xmm6 96// CHECK: encoding: [0xf3,0x0f,0x38,0xde,0xb2,0x00,0xe0,0xff,0xff] 97 aesenc256kl -8192(%rdx), %xmm6 98 99// CHECK: encodekey128 %ecx, %ecx 100// CHECK: encoding: [0xf3,0x0f,0x38,0xfa,0xc9] 101 encodekey128 %ecx, %ecx 102 103// CHECK: encodekey256 %ecx, %ecx 104// CHECK: encoding: [0xf3,0x0f,0x38,0xfb,0xc9] 105 encodekey256 %ecx, %ecx 106 107// CHECK: loadiwkey %xmm7, %xmm6 108// CHECK: encoding: [0xf3,0x0f,0x38,0xdc,0xf7] 109 loadiwkey %xmm7, %xmm6 110 111// CHECK: aesdecwide128kl 268435456(%rbp,%r14,8) 112// CHECK: encoding: [0xf3,0x42,0x0f,0x38,0xd8,0x8c,0xf5,0x00,0x00,0x00,0x10] 113 aesdecwide128kl 268435456(%rbp,%r14,8) 114 115// CHECK: aesdecwide128kl 291(%r8,%rax,4) 116// CHECK: encoding: [0xf3,0x41,0x0f,0x38,0xd8,0x8c,0x80,0x23,0x01,0x00,0x00] 117 aesdecwide128kl 291(%r8,%rax,4) 118 119// CHECK: aesdecwide128kl (%rip) 120// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x0d,0x00,0x00,0x00,0x00] 121 aesdecwide128kl (%rip) 122 123// CHECK: aesdecwide128kl -1536(,%rbp,2) 124// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x0c,0x6d,0x00,0xfa,0xff,0xff] 125 aesdecwide128kl -1536(,%rbp,2) 126 127// CHECK: aesdecwide128kl 6096(%rcx) 128// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x89,0xd0,0x17,0x00,0x00] 129 aesdecwide128kl 6096(%rcx) 130 131// CHECK: aesdecwide128kl -6144(%rdx) 132// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x8a,0x00,0xe8,0xff,0xff] 133 aesdecwide128kl -6144(%rdx) 134 135// CHECK: aesdecwide256kl 268435456(%rbp,%r14,8) 136// CHECK: encoding: [0xf3,0x42,0x0f,0x38,0xd8,0x9c,0xf5,0x00,0x00,0x00,0x10] 137 aesdecwide256kl 268435456(%rbp,%r14,8) 138 139// CHECK: aesdecwide256kl 291(%r8,%rax,4) 140// CHECK: encoding: [0xf3,0x41,0x0f,0x38,0xd8,0x9c,0x80,0x23,0x01,0x00,0x00] 141 aesdecwide256kl 291(%r8,%rax,4) 142 143// CHECK: aesdecwide256kl (%rip) 144// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x1d,0x00,0x00,0x00,0x00] 145 aesdecwide256kl (%rip) 146 147// CHECK: aesdecwide256kl -2048(,%rbp,2) 148// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x1c,0x6d,0x00,0xf8,0xff,0xff] 149 aesdecwide256kl -2048(,%rbp,2) 150 151// CHECK: aesdecwide256kl 8128(%rcx) 152// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x99,0xc0,0x1f,0x00,0x00] 153 aesdecwide256kl 8128(%rcx) 154 155// CHECK: aesdecwide256kl -8192(%rdx) 156// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x9a,0x00,0xe0,0xff,0xff] 157 aesdecwide256kl -8192(%rdx) 158 159// CHECK: aesencwide128kl 268435456(%rbp,%r14,8) 160// CHECK: encoding: [0xf3,0x42,0x0f,0x38,0xd8,0x84,0xf5,0x00,0x00,0x00,0x10] 161 aesencwide128kl 268435456(%rbp,%r14,8) 162 163// CHECK: aesencwide128kl 291(%r8,%rax,4) 164// CHECK: encoding: [0xf3,0x41,0x0f,0x38,0xd8,0x84,0x80,0x23,0x01,0x00,0x00] 165 aesencwide128kl 291(%r8,%rax,4) 166 167// CHECK: aesencwide128kl (%rip) 168// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x05,0x00,0x00,0x00,0x00] 169 aesencwide128kl (%rip) 170 171// CHECK: aesencwide128kl -1536(,%rbp,2) 172// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x04,0x6d,0x00,0xfa,0xff,0xff] 173 aesencwide128kl -1536(,%rbp,2) 174 175// CHECK: aesencwide128kl 6096(%rcx) 176// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x81,0xd0,0x17,0x00,0x00] 177 aesencwide128kl 6096(%rcx) 178 179// CHECK: aesencwide128kl -6144(%rdx) 180// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x82,0x00,0xe8,0xff,0xff] 181 aesencwide128kl -6144(%rdx) 182 183// CHECK: aesencwide256kl 268435456(%rbp,%r14,8) 184// CHECK: encoding: [0xf3,0x42,0x0f,0x38,0xd8,0x94,0xf5,0x00,0x00,0x00,0x10] 185 aesencwide256kl 268435456(%rbp,%r14,8) 186 187// CHECK: aesencwide256kl 291(%r8,%rax,4) 188// CHECK: encoding: [0xf3,0x41,0x0f,0x38,0xd8,0x94,0x80,0x23,0x01,0x00,0x00] 189 aesencwide256kl 291(%r8,%rax,4) 190 191// CHECK: aesencwide256kl (%rip) 192// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x15,0x00,0x00,0x00,0x00] 193 aesencwide256kl (%rip) 194 195// CHECK: aesencwide256kl -2048(,%rbp,2) 196// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x14,0x6d,0x00,0xf8,0xff,0xff] 197 aesencwide256kl -2048(,%rbp,2) 198 199// CHECK: aesencwide256kl 8128(%rcx) 200// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x91,0xc0,0x1f,0x00,0x00] 201 aesencwide256kl 8128(%rcx) 202 203// CHECK: aesencwide256kl -8192(%rdx) 204// CHECK: encoding: [0xf3,0x0f,0x38,0xd8,0x92,0x00,0xe0,0xff,0xff] 205 aesencwide256kl -8192(%rdx) 206