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