387 lines · plain
1# RUN: llvm-mc -triple x86_64 -disassemble %s | FileCheck %s --check-prefix=ATT2# RUN: llvm-mc -triple x86_64 -disassemble -output-asm-variant=1 %s | FileCheck %s --check-prefix=INTEL3 4# ATT: {evex} shlb $123, %bl5# INTEL: {evex} shl bl, 12360x62,0xf4,0x7c,0x08,0xc0,0xe3,0x7b7 8# ATT: {nf} shlb $123, %bl9# INTEL: {nf} shl bl, 123100x62,0xf4,0x7c,0x0c,0xc0,0xe3,0x7b11 12# ATT: shlb $123, %bl, %bl13# INTEL: shl bl, bl, 123140x62,0xf4,0x64,0x18,0xc0,0xe3,0x7b15 16# ATT: {nf} shlb $123, %bl, %bl17# INTEL: {nf} shl bl, bl, 123180x62,0xf4,0x64,0x1c,0xc0,0xe3,0x7b19 20# ATT: {evex} shlw $123, %dx21# INTEL: {evex} shl dx, 123220x62,0xf4,0x7d,0x08,0xc1,0xe2,0x7b23 24# ATT: {nf} shlw $123, %dx25# INTEL: {nf} shl dx, 123260x62,0xf4,0x7d,0x0c,0xc1,0xe2,0x7b27 28# ATT: shlw $123, %dx, %dx29# INTEL: shl dx, dx, 123300x62,0xf4,0x6d,0x18,0xc1,0xe2,0x7b31 32# ATT: {nf} shlw $123, %dx, %dx33# INTEL: {nf} shl dx, dx, 123340x62,0xf4,0x6d,0x1c,0xc1,0xe2,0x7b35 36# ATT: {evex} shll $123, %ecx37# INTEL: {evex} shl ecx, 123380x62,0xf4,0x7c,0x08,0xc1,0xe1,0x7b39 40# ATT: {nf} shll $123, %ecx41# INTEL: {nf} shl ecx, 123420x62,0xf4,0x7c,0x0c,0xc1,0xe1,0x7b43 44# ATT: shll $123, %ecx, %ecx45# INTEL: shl ecx, ecx, 123460x62,0xf4,0x74,0x18,0xc1,0xe1,0x7b47 48# ATT: {nf} shll $123, %ecx, %ecx49# INTEL: {nf} shl ecx, ecx, 123500x62,0xf4,0x74,0x1c,0xc1,0xe1,0x7b51 52# ATT: {evex} shlq $123, %r953# INTEL: {evex} shl r9, 123540x62,0xd4,0xfc,0x08,0xc1,0xe1,0x7b55 56# ATT: {nf} shlq $123, %r957# INTEL: {nf} shl r9, 123580x62,0xd4,0xfc,0x0c,0xc1,0xe1,0x7b59 60# ATT: shlq $123, %r9, %r961# INTEL: shl r9, r9, 123620x62,0xd4,0xb4,0x18,0xc1,0xe1,0x7b63 64# ATT: {nf} shlq $123, %r9, %r965# INTEL: {nf} shl r9, r9, 123660x62,0xd4,0xb4,0x1c,0xc1,0xe1,0x7b67 68# ATT: {evex} shlb $123, 291(%r8,%rax,4)69# INTEL: {evex} shl byte ptr [r8 + 4*rax + 291], 123700x62,0xd4,0x7c,0x08,0xc0,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b71 72# ATT: {nf} shlb $123, 291(%r8,%rax,4)73# INTEL: {nf} shl byte ptr [r8 + 4*rax + 291], 123740x62,0xd4,0x7c,0x0c,0xc0,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b75 76# ATT: shlb $123, 291(%r8,%rax,4), %bl77# INTEL: shl bl, byte ptr [r8 + 4*rax + 291], 123780x62,0xd4,0x64,0x18,0xc0,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b79 80# ATT: {nf} shlb $123, 291(%r8,%rax,4), %bl81# INTEL: {nf} shl bl, byte ptr [r8 + 4*rax + 291], 123820x62,0xd4,0x64,0x1c,0xc0,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b83 84# ATT: {evex} shlw $123, 291(%r8,%rax,4)85# INTEL: {evex} shl word ptr [r8 + 4*rax + 291], 123860x62,0xd4,0x7d,0x08,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b87 88# ATT: {nf} shlw $123, 291(%r8,%rax,4)89# INTEL: {nf} shl word ptr [r8 + 4*rax + 291], 123900x62,0xd4,0x7d,0x0c,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b91 92# ATT: shlw $123, 291(%r8,%rax,4), %dx93# INTEL: shl dx, word ptr [r8 + 4*rax + 291], 123940x62,0xd4,0x6d,0x18,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b95 96# ATT: {nf} shlw $123, 291(%r8,%rax,4), %dx97# INTEL: {nf} shl dx, word ptr [r8 + 4*rax + 291], 123980x62,0xd4,0x6d,0x1c,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b99 100# ATT: {evex} shll $123, 291(%r8,%rax,4)101# INTEL: {evex} shl dword ptr [r8 + 4*rax + 291], 1231020x62,0xd4,0x7c,0x08,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b103 104# ATT: {nf} shll $123, 291(%r8,%rax,4)105# INTEL: {nf} shl dword ptr [r8 + 4*rax + 291], 1231060x62,0xd4,0x7c,0x0c,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b107 108# ATT: shll $123, 291(%r8,%rax,4), %ecx109# INTEL: shl ecx, dword ptr [r8 + 4*rax + 291], 1231100x62,0xd4,0x74,0x18,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b111 112# ATT: {nf} shll $123, 291(%r8,%rax,4), %ecx113# INTEL: {nf} shl ecx, dword ptr [r8 + 4*rax + 291], 1231140x62,0xd4,0x74,0x1c,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b115 116# ATT: {evex} shlq $123, 291(%r8,%rax,4)117# INTEL: {evex} shl qword ptr [r8 + 4*rax + 291], 1231180x62,0xd4,0xfc,0x08,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b119 120# ATT: {nf} shlq $123, 291(%r8,%rax,4)121# INTEL: {nf} shl qword ptr [r8 + 4*rax + 291], 1231220x62,0xd4,0xfc,0x0c,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b123 124# ATT: shlq $123, 291(%r8,%rax,4), %r9125# INTEL: shl r9, qword ptr [r8 + 4*rax + 291], 1231260x62,0xd4,0xb4,0x18,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b127 128# ATT: {nf} shlq $123, 291(%r8,%rax,4), %r9129# INTEL: {nf} shl r9, qword ptr [r8 + 4*rax + 291], 1231300x62,0xd4,0xb4,0x1c,0xc1,0xa4,0x80,0x23,0x01,0x00,0x00,0x7b131 132# ATT: {evex} shlb %bl133# INTEL: {evex} shl bl1340x62,0xf4,0x7c,0x08,0xd0,0xe3135 136# ATT: {nf} shlb %bl137# INTEL: {nf} shl bl1380x62,0xf4,0x7c,0x0c,0xd0,0xe3139 140# ATT: shlb %bl, %bl141# INTEL: shl bl, bl1420x62,0xf4,0x64,0x18,0xd0,0xe3143 144# ATT: {nf} shlb %bl, %bl145# INTEL: {nf} shl bl, bl1460x62,0xf4,0x64,0x1c,0xd0,0xe3147 148# ATT: {evex} shlb %cl, %bl149# INTEL: {evex} shl bl, cl1500x62,0xf4,0x7c,0x08,0xd2,0xe3151 152# ATT: {nf} shlb %cl, %bl153# INTEL: {nf} shl bl, cl1540x62,0xf4,0x7c,0x0c,0xd2,0xe3155 156# ATT: shlb %cl, %bl, %bl157# INTEL: shl bl, bl, cl1580x62,0xf4,0x64,0x18,0xd2,0xe3159 160# ATT: {nf} shlb %cl, %bl, %bl161# INTEL: {nf} shl bl, bl, cl1620x62,0xf4,0x64,0x1c,0xd2,0xe3163 164# ATT: {evex} shlw %cl, %dx165# INTEL: {evex} shl dx, cl1660x62,0xf4,0x7d,0x08,0xd3,0xe2167 168# ATT: {nf} shlw %cl, %dx169# INTEL: {nf} shl dx, cl1700x62,0xf4,0x7d,0x0c,0xd3,0xe2171 172# ATT: shlw %cl, %dx, %dx173# INTEL: shl dx, dx, cl1740x62,0xf4,0x6d,0x18,0xd3,0xe2175 176# ATT: {nf} shlw %cl, %dx, %dx177# INTEL: {nf} shl dx, dx, cl1780x62,0xf4,0x6d,0x1c,0xd3,0xe2179 180# ATT: {evex} shll %cl, %ecx181# INTEL: {evex} shl ecx, cl1820x62,0xf4,0x7c,0x08,0xd3,0xe1183 184# ATT: {nf} shll %cl, %ecx185# INTEL: {nf} shl ecx, cl1860x62,0xf4,0x7c,0x0c,0xd3,0xe1187 188# ATT: shll %cl, %ecx, %ecx189# INTEL: shl ecx, ecx, cl1900x62,0xf4,0x74,0x18,0xd3,0xe1191 192# ATT: {nf} shll %cl, %ecx, %ecx193# INTEL: {nf} shl ecx, ecx, cl1940x62,0xf4,0x74,0x1c,0xd3,0xe1195 196# ATT: {evex} shlq %cl, %r9197# INTEL: {evex} shl r9, cl1980x62,0xd4,0xfc,0x08,0xd3,0xe1199 200# ATT: {nf} shlq %cl, %r9201# INTEL: {nf} shl r9, cl2020x62,0xd4,0xfc,0x0c,0xd3,0xe1203 204# ATT: shlq %cl, %r9, %r9205# INTEL: shl r9, r9, cl2060x62,0xd4,0xb4,0x18,0xd3,0xe1207 208# ATT: {nf} shlq %cl, %r9, %r9209# INTEL: {nf} shl r9, r9, cl2100x62,0xd4,0xb4,0x1c,0xd3,0xe1211 212# ATT: {evex} shlb %cl, 291(%r8,%rax,4)213# INTEL: {evex} shl byte ptr [r8 + 4*rax + 291], cl2140x62,0xd4,0x7c,0x08,0xd2,0xa4,0x80,0x23,0x01,0x00,0x00215 216# ATT: {nf} shlb %cl, 291(%r8,%rax,4)217# INTEL: {nf} shl byte ptr [r8 + 4*rax + 291], cl2180x62,0xd4,0x7c,0x0c,0xd2,0xa4,0x80,0x23,0x01,0x00,0x00219 220# ATT: shlb %cl, 291(%r8,%rax,4), %bl221# INTEL: shl bl, byte ptr [r8 + 4*rax + 291], cl2220x62,0xd4,0x64,0x18,0xd2,0xa4,0x80,0x23,0x01,0x00,0x00223 224# ATT: {nf} shlb %cl, 291(%r8,%rax,4), %bl225# INTEL: {nf} shl bl, byte ptr [r8 + 4*rax + 291], cl2260x62,0xd4,0x64,0x1c,0xd2,0xa4,0x80,0x23,0x01,0x00,0x00227 228# ATT: {evex} shlw %cl, 291(%r8,%rax,4)229# INTEL: {evex} shl word ptr [r8 + 4*rax + 291], cl2300x62,0xd4,0x7d,0x08,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00231 232# ATT: {nf} shlw %cl, 291(%r8,%rax,4)233# INTEL: {nf} shl word ptr [r8 + 4*rax + 291], cl2340x62,0xd4,0x7d,0x0c,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00235 236# ATT: shlw %cl, 291(%r8,%rax,4), %dx237# INTEL: shl dx, word ptr [r8 + 4*rax + 291], cl2380x62,0xd4,0x6d,0x18,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00239 240# ATT: {nf} shlw %cl, 291(%r8,%rax,4), %dx241# INTEL: {nf} shl dx, word ptr [r8 + 4*rax + 291], cl2420x62,0xd4,0x6d,0x1c,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00243 244# ATT: {evex} shll %cl, 291(%r8,%rax,4)245# INTEL: {evex} shl dword ptr [r8 + 4*rax + 291], cl2460x62,0xd4,0x7c,0x08,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00247 248# ATT: {nf} shll %cl, 291(%r8,%rax,4)249# INTEL: {nf} shl dword ptr [r8 + 4*rax + 291], cl2500x62,0xd4,0x7c,0x0c,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00251 252# ATT: shll %cl, 291(%r8,%rax,4), %ecx253# INTEL: shl ecx, dword ptr [r8 + 4*rax + 291], cl2540x62,0xd4,0x74,0x18,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00255 256# ATT: {nf} shll %cl, 291(%r8,%rax,4), %ecx257# INTEL: {nf} shl ecx, dword ptr [r8 + 4*rax + 291], cl2580x62,0xd4,0x74,0x1c,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00259 260# ATT: {evex} shlq %cl, 291(%r8,%rax,4)261# INTEL: {evex} shl qword ptr [r8 + 4*rax + 291], cl2620x62,0xd4,0xfc,0x08,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00263 264# ATT: {nf} shlq %cl, 291(%r8,%rax,4)265# INTEL: {nf} shl qword ptr [r8 + 4*rax + 291], cl2660x62,0xd4,0xfc,0x0c,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00267 268# ATT: shlq %cl, 291(%r8,%rax,4), %r9269# INTEL: shl r9, qword ptr [r8 + 4*rax + 291], cl2700x62,0xd4,0xb4,0x18,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00271 272# ATT: {nf} shlq %cl, 291(%r8,%rax,4), %r9273# INTEL: {nf} shl r9, qword ptr [r8 + 4*rax + 291], cl2740x62,0xd4,0xb4,0x1c,0xd3,0xa4,0x80,0x23,0x01,0x00,0x00275 276# ATT: {evex} shlw %dx277# INTEL: {evex} shl dx2780x62,0xf4,0x7d,0x08,0xd1,0xe2279 280# ATT: {nf} shlw %dx281# INTEL: {nf} shl dx2820x62,0xf4,0x7d,0x0c,0xd1,0xe2283 284# ATT: shlw %dx, %dx285# INTEL: shl dx, dx2860x62,0xf4,0x6d,0x18,0xd1,0xe2287 288# ATT: {nf} shlw %dx, %dx289# INTEL: {nf} shl dx, dx2900x62,0xf4,0x6d,0x1c,0xd1,0xe2291 292# ATT: {evex} shll %ecx293# INTEL: {evex} shl ecx2940x62,0xf4,0x7c,0x08,0xd1,0xe1295 296# ATT: {nf} shll %ecx297# INTEL: {nf} shl ecx2980x62,0xf4,0x7c,0x0c,0xd1,0xe1299 300# ATT: shll %ecx, %ecx301# INTEL: shl ecx, ecx3020x62,0xf4,0x74,0x18,0xd1,0xe1303 304# ATT: {nf} shll %ecx, %ecx305# INTEL: {nf} shl ecx, ecx3060x62,0xf4,0x74,0x1c,0xd1,0xe1307 308# ATT: {evex} shlq %r9309# INTEL: {evex} shl r93100x62,0xd4,0xfc,0x08,0xd1,0xe1311 312# ATT: {nf} shlq %r9313# INTEL: {nf} shl r93140x62,0xd4,0xfc,0x0c,0xd1,0xe1315 316# ATT: shlq %r9, %r9317# INTEL: shl r9, r93180x62,0xd4,0xb4,0x18,0xd1,0xe1319 320# ATT: {nf} shlq %r9, %r9321# INTEL: {nf} shl r9, r93220x62,0xd4,0xb4,0x1c,0xd1,0xe1323 324# ATT: {evex} shlb 291(%r8,%rax,4)325# INTEL: {evex} shl byte ptr [r8 + 4*rax + 291]3260x62,0xd4,0x7c,0x08,0xd0,0xa4,0x80,0x23,0x01,0x00,0x00327 328# ATT: {nf} shlb 291(%r8,%rax,4)329# INTEL: {nf} shl byte ptr [r8 + 4*rax + 291]3300x62,0xd4,0x7c,0x0c,0xd0,0xa4,0x80,0x23,0x01,0x00,0x00331 332# ATT: shlb 291(%r8,%rax,4), %bl333# INTEL: shl bl, byte ptr [r8 + 4*rax + 291]3340x62,0xd4,0x64,0x18,0xd0,0xa4,0x80,0x23,0x01,0x00,0x00335 336# ATT: {nf} shlb 291(%r8,%rax,4), %bl337# INTEL: {nf} shl bl, byte ptr [r8 + 4*rax + 291]3380x62,0xd4,0x64,0x1c,0xd0,0xa4,0x80,0x23,0x01,0x00,0x00339 340# ATT: {evex} shlw 291(%r8,%rax,4)341# INTEL: {evex} shl word ptr [r8 + 4*rax + 291]3420x62,0xd4,0x7d,0x08,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00343 344# ATT: {nf} shlw 291(%r8,%rax,4)345# INTEL: {nf} shl word ptr [r8 + 4*rax + 291]3460x62,0xd4,0x7d,0x0c,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00347 348# ATT: shlw 291(%r8,%rax,4), %dx349# INTEL: shl dx, word ptr [r8 + 4*rax + 291]3500x62,0xd4,0x6d,0x18,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00351 352# ATT: {nf} shlw 291(%r8,%rax,4), %dx353# INTEL: {nf} shl dx, word ptr [r8 + 4*rax + 291]3540x62,0xd4,0x6d,0x1c,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00355 356# ATT: {evex} shll 291(%r8,%rax,4)357# INTEL: {evex} shl dword ptr [r8 + 4*rax + 291]3580x62,0xd4,0x7c,0x08,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00359 360# ATT: {nf} shll 291(%r8,%rax,4)361# INTEL: {nf} shl dword ptr [r8 + 4*rax + 291]3620x62,0xd4,0x7c,0x0c,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00363 364# ATT: shll 291(%r8,%rax,4), %ecx365# INTEL: shl ecx, dword ptr [r8 + 4*rax + 291]3660x62,0xd4,0x74,0x18,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00367 368# ATT: {nf} shll 291(%r8,%rax,4), %ecx369# INTEL: {nf} shl ecx, dword ptr [r8 + 4*rax + 291]3700x62,0xd4,0x74,0x1c,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00371 372# ATT: {evex} shlq 291(%r8,%rax,4)373# INTEL: {evex} shl qword ptr [r8 + 4*rax + 291]3740x62,0xd4,0xfc,0x08,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00375 376# ATT: {nf} shlq 291(%r8,%rax,4)377# INTEL: {nf} shl qword ptr [r8 + 4*rax + 291]3780x62,0xd4,0xfc,0x0c,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00379 380# ATT: shlq 291(%r8,%rax,4), %r9381# INTEL: shl r9, qword ptr [r8 + 4*rax + 291]3820x62,0xd4,0xb4,0x18,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00383 384# ATT: {nf} shlq 291(%r8,%rax,4), %r9385# INTEL: {nf} shl r9, qword ptr [r8 + 4*rax + 291]3860x62,0xd4,0xb4,0x1c,0xd1,0xa4,0x80,0x23,0x01,0x00,0x00387