1# RUN: llvm-mc -triple x86_64 -disassemble %s | FileCheck %s --check-prefix=ATT 2# RUN: llvm-mc -triple x86_64 -disassemble -output-asm-variant=1 %s | FileCheck %s --check-prefix=INTEL 3 4# ATT: {evex} shldw $123, %dx, %dx 5# INTEL: {evex} shld dx, dx, 123 60x62,0xf4,0x7d,0x08,0x24,0xd2,0x7b 7 8# ATT: {nf} shldw $123, %dx, %dx 9# INTEL: {nf} shld dx, dx, 123 100x62,0xf4,0x7d,0x0c,0x24,0xd2,0x7b 11 12# ATT: shldw $123, %dx, %dx, %dx 13# INTEL: shld dx, dx, dx, 123 140x62,0xf4,0x6d,0x18,0x24,0xd2,0x7b 15 16# ATT: {nf} shldw $123, %dx, %dx, %dx 17# INTEL: {nf} shld dx, dx, dx, 123 180x62,0xf4,0x6d,0x1c,0x24,0xd2,0x7b 19 20# ATT: {evex} shldw $123, %dx, 291(%r8,%rax,4) 21# INTEL: {evex} shld word ptr [r8 + 4*rax + 291], dx, 123 220x62,0xd4,0x7d,0x08,0x24,0x94,0x80,0x23,0x01,0x00,0x00,0x7b 23 24# ATT: {nf} shldw $123, %dx, 291(%r8,%rax,4) 25# INTEL: {nf} shld word ptr [r8 + 4*rax + 291], dx, 123 260x62,0xd4,0x7d,0x0c,0x24,0x94,0x80,0x23,0x01,0x00,0x00,0x7b 27 28# ATT: shldw $123, %dx, 291(%r8,%rax,4), %dx 29# INTEL: shld dx, word ptr [r8 + 4*rax + 291], dx, 123 300x62,0xd4,0x6d,0x18,0x24,0x94,0x80,0x23,0x01,0x00,0x00,0x7b 31 32# ATT: {nf} shldw $123, %dx, 291(%r8,%rax,4), %dx 33# INTEL: {nf} shld dx, word ptr [r8 + 4*rax + 291], dx, 123 340x62,0xd4,0x6d,0x1c,0x24,0x94,0x80,0x23,0x01,0x00,0x00,0x7b 35 36# ATT: {evex} shldl $123, %ecx, %ecx 37# INTEL: {evex} shld ecx, ecx, 123 380x62,0xf4,0x7c,0x08,0x24,0xc9,0x7b 39 40# ATT: {nf} shldl $123, %ecx, %ecx 41# INTEL: {nf} shld ecx, ecx, 123 420x62,0xf4,0x7c,0x0c,0x24,0xc9,0x7b 43 44# ATT: shldl $123, %ecx, %ecx, %ecx 45# INTEL: shld ecx, ecx, ecx, 123 460x62,0xf4,0x74,0x18,0x24,0xc9,0x7b 47 48# ATT: {nf} shldl $123, %ecx, %ecx, %ecx 49# INTEL: {nf} shld ecx, ecx, ecx, 123 500x62,0xf4,0x74,0x1c,0x24,0xc9,0x7b 51 52# ATT: {evex} shldl $123, %ecx, 291(%r8,%rax,4) 53# INTEL: {evex} shld dword ptr [r8 + 4*rax + 291], ecx, 123 540x62,0xd4,0x7c,0x08,0x24,0x8c,0x80,0x23,0x01,0x00,0x00,0x7b 55 56# ATT: {nf} shldl $123, %ecx, 291(%r8,%rax,4) 57# INTEL: {nf} shld dword ptr [r8 + 4*rax + 291], ecx, 123 580x62,0xd4,0x7c,0x0c,0x24,0x8c,0x80,0x23,0x01,0x00,0x00,0x7b 59 60# ATT: shldl $123, %ecx, 291(%r8,%rax,4), %ecx 61# INTEL: shld ecx, dword ptr [r8 + 4*rax + 291], ecx, 123 620x62,0xd4,0x74,0x18,0x24,0x8c,0x80,0x23,0x01,0x00,0x00,0x7b 63 64# ATT: {nf} shldl $123, %ecx, 291(%r8,%rax,4), %ecx 65# INTEL: {nf} shld ecx, dword ptr [r8 + 4*rax + 291], ecx, 123 660x62,0xd4,0x74,0x1c,0x24,0x8c,0x80,0x23,0x01,0x00,0x00,0x7b 67 68# ATT: {evex} shldq $123, %r9, %r9 69# INTEL: {evex} shld r9, r9, 123 700x62,0x54,0xfc,0x08,0x24,0xc9,0x7b 71 72# ATT: {nf} shldq $123, %r9, %r9 73# INTEL: {nf} shld r9, r9, 123 740x62,0x54,0xfc,0x0c,0x24,0xc9,0x7b 75 76# ATT: shldq $123, %r9, %r9, %r9 77# INTEL: shld r9, r9, r9, 123 780x62,0x54,0xb4,0x18,0x24,0xc9,0x7b 79 80# ATT: {nf} shldq $123, %r9, %r9, %r9 81# INTEL: {nf} shld r9, r9, r9, 123 820x62,0x54,0xb4,0x1c,0x24,0xc9,0x7b 83 84# ATT: {evex} shldq $123, %r9, 291(%r8,%rax,4) 85# INTEL: {evex} shld qword ptr [r8 + 4*rax + 291], r9, 123 860x62,0x54,0xfc,0x08,0x24,0x8c,0x80,0x23,0x01,0x00,0x00,0x7b 87 88# ATT: {nf} shldq $123, %r9, 291(%r8,%rax,4) 89# INTEL: {nf} shld qword ptr [r8 + 4*rax + 291], r9, 123 900x62,0x54,0xfc,0x0c,0x24,0x8c,0x80,0x23,0x01,0x00,0x00,0x7b 91 92# ATT: shldq $123, %r9, 291(%r8,%rax,4), %r9 93# INTEL: shld r9, qword ptr [r8 + 4*rax + 291], r9, 123 940x62,0x54,0xb4,0x18,0x24,0x8c,0x80,0x23,0x01,0x00,0x00,0x7b 95 96# ATT: {nf} shldq $123, %r9, 291(%r8,%rax,4), %r9 97# INTEL: {nf} shld r9, qword ptr [r8 + 4*rax + 291], r9, 123 980x62,0x54,0xb4,0x1c,0x24,0x8c,0x80,0x23,0x01,0x00,0x00,0x7b 99 100# ATT: {evex} shldw %cl, %dx, %dx 101# INTEL: {evex} shld dx, dx, cl 1020x62,0xf4,0x7d,0x08,0xa5,0xd2 103 104# ATT: {nf} shldw %cl, %dx, %dx 105# INTEL: {nf} shld dx, dx, cl 1060x62,0xf4,0x7d,0x0c,0xa5,0xd2 107 108# ATT: shldw %cl, %dx, %dx, %dx 109# INTEL: shld dx, dx, dx, cl 1100x62,0xf4,0x6d,0x18,0xa5,0xd2 111 112# ATT: {nf} shldw %cl, %dx, %dx, %dx 113# INTEL: {nf} shld dx, dx, dx, cl 1140x62,0xf4,0x6d,0x1c,0xa5,0xd2 115 116# ATT: {evex} shldw %cl, %dx, 291(%r8,%rax,4) 117# INTEL: {evex} shld word ptr [r8 + 4*rax + 291], dx, cl 1180x62,0xd4,0x7d,0x08,0xa5,0x94,0x80,0x23,0x01,0x00,0x00 119 120# ATT: {nf} shldw %cl, %dx, 291(%r8,%rax,4) 121# INTEL: {nf} shld word ptr [r8 + 4*rax + 291], dx, cl 1220x62,0xd4,0x7d,0x0c,0xa5,0x94,0x80,0x23,0x01,0x00,0x00 123 124# ATT: shldw %cl, %dx, 291(%r8,%rax,4), %dx 125# INTEL: shld dx, word ptr [r8 + 4*rax + 291], dx, cl 1260x62,0xd4,0x6d,0x18,0xa5,0x94,0x80,0x23,0x01,0x00,0x00 127 128# ATT: {nf} shldw %cl, %dx, 291(%r8,%rax,4), %dx 129# INTEL: {nf} shld dx, word ptr [r8 + 4*rax + 291], dx, cl 1300x62,0xd4,0x6d,0x1c,0xa5,0x94,0x80,0x23,0x01,0x00,0x00 131 132# ATT: {evex} shldl %cl, %ecx, %ecx 133# INTEL: {evex} shld ecx, ecx, cl 1340x62,0xf4,0x7c,0x08,0xa5,0xc9 135 136# ATT: {nf} shldl %cl, %ecx, %ecx 137# INTEL: {nf} shld ecx, ecx, cl 1380x62,0xf4,0x7c,0x0c,0xa5,0xc9 139 140# ATT: shldl %cl, %ecx, %ecx, %ecx 141# INTEL: shld ecx, ecx, ecx, cl 1420x62,0xf4,0x74,0x18,0xa5,0xc9 143 144# ATT: {nf} shldl %cl, %ecx, %ecx, %ecx 145# INTEL: {nf} shld ecx, ecx, ecx, cl 1460x62,0xf4,0x74,0x1c,0xa5,0xc9 147 148# ATT: {evex} shldl %cl, %ecx, 291(%r8,%rax,4) 149# INTEL: {evex} shld dword ptr [r8 + 4*rax + 291], ecx, cl 1500x62,0xd4,0x7c,0x08,0xa5,0x8c,0x80,0x23,0x01,0x00,0x00 151 152# ATT: {nf} shldl %cl, %ecx, 291(%r8,%rax,4) 153# INTEL: {nf} shld dword ptr [r8 + 4*rax + 291], ecx, cl 1540x62,0xd4,0x7c,0x0c,0xa5,0x8c,0x80,0x23,0x01,0x00,0x00 155 156# ATT: shldl %cl, %ecx, 291(%r8,%rax,4), %ecx 157# INTEL: shld ecx, dword ptr [r8 + 4*rax + 291], ecx, cl 1580x62,0xd4,0x74,0x18,0xa5,0x8c,0x80,0x23,0x01,0x00,0x00 159 160# ATT: {nf} shldl %cl, %ecx, 291(%r8,%rax,4), %ecx 161# INTEL: {nf} shld ecx, dword ptr [r8 + 4*rax + 291], ecx, cl 1620x62,0xd4,0x74,0x1c,0xa5,0x8c,0x80,0x23,0x01,0x00,0x00 163 164# ATT: {evex} shldq %cl, %r9, %r9 165# INTEL: {evex} shld r9, r9, cl 1660x62,0x54,0xfc,0x08,0xa5,0xc9 167 168# ATT: {nf} shldq %cl, %r9, %r9 169# INTEL: {nf} shld r9, r9, cl 1700x62,0x54,0xfc,0x0c,0xa5,0xc9 171 172# ATT: shldq %cl, %r9, %r9, %r9 173# INTEL: shld r9, r9, r9, cl 1740x62,0x54,0xb4,0x18,0xa5,0xc9 175 176# ATT: {nf} shldq %cl, %r9, %r9, %r9 177# INTEL: {nf} shld r9, r9, r9, cl 1780x62,0x54,0xb4,0x1c,0xa5,0xc9 179 180# ATT: {evex} shldq %cl, %r9, 291(%r8,%rax,4) 181# INTEL: {evex} shld qword ptr [r8 + 4*rax + 291], r9, cl 1820x62,0x54,0xfc,0x08,0xa5,0x8c,0x80,0x23,0x01,0x00,0x00 183 184# ATT: {nf} shldq %cl, %r9, 291(%r8,%rax,4) 185# INTEL: {nf} shld qword ptr [r8 + 4*rax + 291], r9, cl 1860x62,0x54,0xfc,0x0c,0xa5,0x8c,0x80,0x23,0x01,0x00,0x00 187 188# ATT: shldq %cl, %r9, 291(%r8,%rax,4), %r9 189# INTEL: shld r9, qword ptr [r8 + 4*rax + 291], r9, cl 1900x62,0x54,0xb4,0x18,0xa5,0x8c,0x80,0x23,0x01,0x00,0x00 191 192# ATT: {nf} shldq %cl, %r9, 291(%r8,%rax,4), %r9 193# INTEL: {nf} shld r9, qword ptr [r8 + 4*rax + 291], r9, cl 1940x62,0x54,0xb4,0x1c,0xa5,0x8c,0x80,0x23,0x01,0x00,0x00 195