1# RUN: llvm-mc --disassemble %s -triple=i686-apple-darwin9 | FileCheck %s 2# CHECK: loadiwkey %xmm2, %xmm3 30xf3 0x0f 0x38 0xdc 0xda 4 5# CHECK: loadiwkey %xmm2, %xmm6 60xf3 0x0f 0x38 0xdc 0xf2 7 8# CHECK: encodekey128 %eax, %ebx 90xf3 0x0f 0x38 0xfa 0xd8 10 11# CHECK: encodekey128 %eax, %edx 120xf3 0x0f 0x38 0xfa 0xd0 13 14# CHECK: encodekey256 %eax, %ebx 150xf3 0x0f 0x38 0xfb 0xd8 16 17# CHECK: encodekey256 %eax, %edx 180xf3 0x0f 0x38 0xfb 0xd0 19 20# CHECK: aesenc128kl 126(%edx), %xmm2 210xf3 0x0f 0x38 0xdc 0x52 0x7e 22 23# CHECK: aesdec128kl 126(%edx), %xmm2 240xf3 0x0f 0x38 0xdd 0x52 0x7e 25 26# CHECK: aesenc256kl 126(%edx), %xmm2 270xf3 0x0f 0x38 0xde 0x52 0x7e 28 29# CHECK: aesdec256kl 126(%edx), %xmm2 300xf3 0x0f 0x38 0xdf 0x52 0x7e 31 32# CHECK: aesencwide128kl (%ebx) 330xf3 0x0f 0x38 0xd8 0x03 34 35# CHECK: aesencwide128kl 126(%edx) 360xf3 0x0f 0x38 0xd8 0x42 0x7e 37 38# CHECK: aesdecwide128kl (%ebx) 390xf3 0x0f 0x38 0xd8 0x0b 40 41# CHECK: aesdecwide128kl 126(%edx) 420xf3 0x0f 0x38 0xd8 0x4a 0x7e 43 44# CHECK: aesencwide256kl (%ebx) 450xf3 0x0f 0x38 0xd8 0x13 46 47# CHECK: aesencwide256kl 126(%edx) 480xf3 0x0f 0x38 0xd8 0x52 0x7e 49 50# CHECK: aesdecwide256kl (%ebx) 510xf3 0x0f 0x38 0xd8 0x1b 52 53# CHECK: aesdecwide256kl 126(%edx) 540xf3 0x0f 0x38 0xd8 0x5a 0x7e 55 56# CHECK: aesdec128kl 268435456(%esp,%esi,8), %xmm2 570xf3,0x0f,0x38,0xdd,0x94,0xf4,0x00,0x00,0x00,0x10 58 59# CHECK: aesdec128kl 291(%edi,%eax,4), %xmm2 600xf3,0x0f,0x38,0xdd,0x94,0x87,0x23,0x01,0x00,0x00 61 62# CHECK: aesdec128kl (%eax), %xmm2 630xf3,0x0f,0x38,0xdd,0x10 64 65# CHECK: aesdec128kl -1536(,%ebp,2), %xmm2 660xf3,0x0f,0x38,0xdd,0x14,0x6d,0x00,0xfa,0xff,0xff 67 68# CHECK: aesdec128kl 6096(%ecx), %xmm2 690xf3,0x0f,0x38,0xdd,0x91,0xd0,0x17,0x00,0x00 70 71# CHECK: aesdec128kl -6144(%edx), %xmm2 720xf3,0x0f,0x38,0xdd,0x92,0x00,0xe8,0xff,0xff 73 74# CHECK: aesdec256kl 268435456(%esp,%esi,8), %xmm2 750xf3,0x0f,0x38,0xdf,0x94,0xf4,0x00,0x00,0x00,0x10 76 77# CHECK: aesdec256kl 291(%edi,%eax,4), %xmm2 780xf3,0x0f,0x38,0xdf,0x94,0x87,0x23,0x01,0x00,0x00 79 80# CHECK: aesdec256kl (%eax), %xmm2 810xf3,0x0f,0x38,0xdf,0x10 82 83# CHECK: aesdec256kl -2048(,%ebp,2), %xmm2 840xf3,0x0f,0x38,0xdf,0x14,0x6d,0x00,0xf8,0xff,0xff 85 86# CHECK: aesdec256kl 8128(%ecx), %xmm2 870xf3,0x0f,0x38,0xdf,0x91,0xc0,0x1f,0x00,0x00 88 89# CHECK: aesdec256kl -8192(%edx), %xmm2 900xf3,0x0f,0x38,0xdf,0x92,0x00,0xe0,0xff,0xff 91 92# CHECK: aesenc128kl 268435456(%esp,%esi,8), %xmm2 930xf3,0x0f,0x38,0xdc,0x94,0xf4,0x00,0x00,0x00,0x10 94 95# CHECK: aesenc128kl 291(%edi,%eax,4), %xmm2 960xf3,0x0f,0x38,0xdc,0x94,0x87,0x23,0x01,0x00,0x00 97 98# CHECK: aesenc128kl (%eax), %xmm2 990xf3,0x0f,0x38,0xdc,0x10 100 101# CHECK: aesenc128kl -1536(,%ebp,2), %xmm2 1020xf3,0x0f,0x38,0xdc,0x14,0x6d,0x00,0xfa,0xff,0xff 103 104# CHECK: aesenc128kl 6096(%ecx), %xmm2 1050xf3,0x0f,0x38,0xdc,0x91,0xd0,0x17,0x00,0x00 106 107# CHECK: aesenc128kl -6144(%edx), %xmm2 1080xf3,0x0f,0x38,0xdc,0x92,0x00,0xe8,0xff,0xff 109 110# CHECK: aesenc256kl 268435456(%esp,%esi,8), %xmm2 1110xf3,0x0f,0x38,0xde,0x94,0xf4,0x00,0x00,0x00,0x10 112 113# CHECK: aesenc256kl 291(%edi,%eax,4), %xmm2 1140xf3,0x0f,0x38,0xde,0x94,0x87,0x23,0x01,0x00,0x00 115 116# CHECK: aesenc256kl (%eax), %xmm2 1170xf3,0x0f,0x38,0xde,0x10 118 119# CHECK: aesenc256kl -2048(,%ebp,2), %xmm2 1200xf3,0x0f,0x38,0xde,0x14,0x6d,0x00,0xf8,0xff,0xff 121 122# CHECK: aesenc256kl 8128(%ecx), %xmm2 1230xf3,0x0f,0x38,0xde,0x91,0xc0,0x1f,0x00,0x00 124 125# CHECK: aesenc256kl -8192(%edx), %xmm2 1260xf3,0x0f,0x38,0xde,0x92,0x00,0xe0,0xff,0xff 127 128# CHECK: loadiwkey %xmm3, %xmm2 1290xf3,0x0f,0x38,0xdc,0xd3 130 131# CHECK: aesdec128kl 268435456(%esp,%esi,8), %xmm2 1320xf3,0x0f,0x38,0xdd,0x94,0xf4,0x00,0x00,0x00,0x10 133 134# CHECK: aesdec128kl 291(%edi,%eax,4), %xmm2 1350xf3,0x0f,0x38,0xdd,0x94,0x87,0x23,0x01,0x00,0x00 136 137# CHECK: aesdec128kl (%eax), %xmm2 1380xf3,0x0f,0x38,0xdd,0x10 139 140# CHECK: aesdec128kl -1536(,%ebp,2), %xmm2 1410xf3,0x0f,0x38,0xdd,0x14,0x6d,0x00,0xfa,0xff,0xff 142 143# CHECK: aesdec128kl 6096(%ecx), %xmm2 1440xf3,0x0f,0x38,0xdd,0x91,0xd0,0x17,0x00,0x00 145 146# CHECK: aesdec128kl -6144(%edx), %xmm2 1470xf3,0x0f,0x38,0xdd,0x92,0x00,0xe8,0xff,0xff 148 149# CHECK: aesdec256kl 268435456(%esp,%esi,8), %xmm2 1500xf3,0x0f,0x38,0xdf,0x94,0xf4,0x00,0x00,0x00,0x10 151 152# CHECK: aesdec256kl 291(%edi,%eax,4), %xmm2 1530xf3,0x0f,0x38,0xdf,0x94,0x87,0x23,0x01,0x00,0x00 154 155# CHECK: aesdec256kl (%eax), %xmm2 1560xf3,0x0f,0x38,0xdf,0x10 157 158# CHECK: aesdec256kl -2048(,%ebp,2), %xmm2 1590xf3,0x0f,0x38,0xdf,0x14,0x6d,0x00,0xf8,0xff,0xff 160 161# CHECK: aesdec256kl 8128(%ecx), %xmm2 1620xf3,0x0f,0x38,0xdf,0x91,0xc0,0x1f,0x00,0x00 163 164# CHECK: aesdec256kl -8192(%edx), %xmm2 1650xf3,0x0f,0x38,0xdf,0x92,0x00,0xe0,0xff,0xff 166 167# CHECK: aesenc128kl 268435456(%esp,%esi,8), %xmm2 1680xf3,0x0f,0x38,0xdc,0x94,0xf4,0x00,0x00,0x00,0x10 169 170# CHECK: aesenc128kl 291(%edi,%eax,4), %xmm2 1710xf3,0x0f,0x38,0xdc,0x94,0x87,0x23,0x01,0x00,0x00 172 173# CHECK: aesenc128kl (%eax), %xmm2 1740xf3,0x0f,0x38,0xdc,0x10 175 176# CHECK: aesenc128kl -1536(,%ebp,2), %xmm2 1770xf3,0x0f,0x38,0xdc,0x14,0x6d,0x00,0xfa,0xff,0xff 178 179# CHECK: aesenc128kl 6096(%ecx), %xmm2 1800xf3,0x0f,0x38,0xdc,0x91,0xd0,0x17,0x00,0x00 181 182# CHECK: aesenc128kl -6144(%edx), %xmm2 1830xf3,0x0f,0x38,0xdc,0x92,0x00,0xe8,0xff,0xff 184 185# CHECK: aesenc256kl 268435456(%esp,%esi,8), %xmm2 1860xf3,0x0f,0x38,0xde,0x94,0xf4,0x00,0x00,0x00,0x10 187 188# CHECK: aesenc256kl 291(%edi,%eax,4), %xmm2 1890xf3,0x0f,0x38,0xde,0x94,0x87,0x23,0x01,0x00,0x00 190 191# CHECK: aesenc256kl (%eax), %xmm2 1920xf3,0x0f,0x38,0xde,0x10 193 194# CHECK: aesenc256kl -2048(,%ebp,2), %xmm2 1950xf3,0x0f,0x38,0xde,0x14,0x6d,0x00,0xf8,0xff,0xff 196 197# CHECK: aesenc256kl 8128(%ecx), %xmm2 1980xf3,0x0f,0x38,0xde,0x91,0xc0,0x1f,0x00,0x00 199 200# CHECK: aesenc256kl -8192(%edx), %xmm2 2010xf3,0x0f,0x38,0xde,0x92,0x00,0xe0,0xff,0xff 202 203# CHECK: loadiwkey %xmm3, %xmm2 2040xf3,0x0f,0x38,0xdc,0xd3 205 206# CHECK: aesdecwide128kl 268435456(%esp,%esi,8) 2070xf3,0x0f,0x38,0xd8,0x8c,0xf4,0x00,0x00,0x00,0x10 208 209# CHECK: aesdecwide128kl 291(%edi,%eax,4) 2100xf3,0x0f,0x38,0xd8,0x8c,0x87,0x23,0x01,0x00,0x00 211 212# CHECK: aesdecwide128kl (%eax) 2130xf3,0x0f,0x38,0xd8,0x08 214 215# CHECK: aesdecwide128kl -1536(,%ebp,2) 2160xf3,0x0f,0x38,0xd8,0x0c,0x6d,0x00,0xfa,0xff,0xff 217 218# CHECK: aesdecwide128kl 6096(%ecx) 2190xf3,0x0f,0x38,0xd8,0x89,0xd0,0x17,0x00,0x00 220 221# CHECK: aesdecwide128kl -6144(%edx) 2220xf3,0x0f,0x38,0xd8,0x8a,0x00,0xe8,0xff,0xff 223 224# CHECK: aesdecwide256kl 268435456(%esp,%esi,8) 2250xf3,0x0f,0x38,0xd8,0x9c,0xf4,0x00,0x00,0x00,0x10 226 227# CHECK: aesdecwide256kl 291(%edi,%eax,4) 2280xf3,0x0f,0x38,0xd8,0x9c,0x87,0x23,0x01,0x00,0x00 229 230# CHECK: aesdecwide256kl (%eax) 2310xf3,0x0f,0x38,0xd8,0x18 232 233# CHECK: aesdecwide256kl -2048(,%ebp,2) 2340xf3,0x0f,0x38,0xd8,0x1c,0x6d,0x00,0xf8,0xff,0xff 235 236# CHECK: aesdecwide256kl 8128(%ecx) 2370xf3,0x0f,0x38,0xd8,0x99,0xc0,0x1f,0x00,0x00 238 239# CHECK: aesdecwide256kl -8192(%edx) 2400xf3,0x0f,0x38,0xd8,0x9a,0x00,0xe0,0xff,0xff 241 242# CHECK: aesencwide128kl 268435456(%esp,%esi,8) 2430xf3,0x0f,0x38,0xd8,0x84,0xf4,0x00,0x00,0x00,0x10 244 245# CHECK: aesencwide128kl 291(%edi,%eax,4) 2460xf3,0x0f,0x38,0xd8,0x84,0x87,0x23,0x01,0x00,0x00 247 248# CHECK: aesencwide128kl (%eax) 2490xf3,0x0f,0x38,0xd8,0x00 250 251# CHECK: aesencwide128kl -1536(,%ebp,2) 2520xf3,0x0f,0x38,0xd8,0x04,0x6d,0x00,0xfa,0xff,0xff 253 254# CHECK: aesencwide128kl 6096(%ecx) 2550xf3,0x0f,0x38,0xd8,0x81,0xd0,0x17,0x00,0x00 256 257# CHECK: aesencwide128kl -6144(%edx) 2580xf3,0x0f,0x38,0xd8,0x82,0x00,0xe8,0xff,0xff 259 260# CHECK: aesencwide256kl 268435456(%esp,%esi,8) 2610xf3,0x0f,0x38,0xd8,0x94,0xf4,0x00,0x00,0x00,0x10 262 263# CHECK: aesencwide256kl 291(%edi,%eax,4) 2640xf3,0x0f,0x38,0xd8,0x94,0x87,0x23,0x01,0x00,0x00 265 266# CHECK: aesencwide256kl (%eax) 2670xf3,0x0f,0x38,0xd8,0x10 268 269# CHECK: aesencwide256kl -2048(,%ebp,2) 2700xf3,0x0f,0x38,0xd8,0x14,0x6d,0x00,0xf8,0xff,0xff 271 272# CHECK: aesencwide256kl 8128(%ecx) 2730xf3,0x0f,0x38,0xd8,0x91,0xc0,0x1f,0x00,0x00 274 275# CHECK: aesencwide256kl -8192(%edx) 2760xf3,0x0f,0x38,0xd8,0x92,0x00,0xe0,0xff,0xff 277