195 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} rcrb $123, %bl5# INTEL: {evex} rcr bl, 12360x62,0xf4,0x7c,0x08,0xc0,0xdb,0x7b7 8# ATT: rcrb $123, %bl, %bl9# INTEL: rcr bl, bl, 123100x62,0xf4,0x64,0x18,0xc0,0xdb,0x7b11 12# ATT: {evex} rcrw $123, %dx13# INTEL: {evex} rcr dx, 123140x62,0xf4,0x7d,0x08,0xc1,0xda,0x7b15 16# ATT: rcrw $123, %dx, %dx17# INTEL: rcr dx, dx, 123180x62,0xf4,0x6d,0x18,0xc1,0xda,0x7b19 20# ATT: {evex} rcrl $123, %ecx21# INTEL: {evex} rcr ecx, 123220x62,0xf4,0x7c,0x08,0xc1,0xd9,0x7b23 24# ATT: rcrl $123, %ecx, %ecx25# INTEL: rcr ecx, ecx, 123260x62,0xf4,0x74,0x18,0xc1,0xd9,0x7b27 28# ATT: {evex} rcrq $123, %r929# INTEL: {evex} rcr r9, 123300x62,0xd4,0xfc,0x08,0xc1,0xd9,0x7b31 32# ATT: rcrq $123, %r9, %r933# INTEL: rcr r9, r9, 123340x62,0xd4,0xb4,0x18,0xc1,0xd9,0x7b35 36# ATT: {evex} rcrb $123, 291(%r8,%rax,4)37# INTEL: {evex} rcr byte ptr [r8 + 4*rax + 291], 123380x62,0xd4,0x7c,0x08,0xc0,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b39 40# ATT: rcrb $123, 291(%r8,%rax,4), %bl41# INTEL: rcr bl, byte ptr [r8 + 4*rax + 291], 123420x62,0xd4,0x64,0x18,0xc0,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b43 44# ATT: {evex} rcrw $123, 291(%r8,%rax,4)45# INTEL: {evex} rcr word ptr [r8 + 4*rax + 291], 123460x62,0xd4,0x7d,0x08,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b47 48# ATT: rcrw $123, 291(%r8,%rax,4), %dx49# INTEL: rcr dx, word ptr [r8 + 4*rax + 291], 123500x62,0xd4,0x6d,0x18,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b51 52# ATT: {evex} rcrl $123, 291(%r8,%rax,4)53# INTEL: {evex} rcr dword ptr [r8 + 4*rax + 291], 123540x62,0xd4,0x7c,0x08,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b55 56# ATT: rcrl $123, 291(%r8,%rax,4), %ecx57# INTEL: rcr ecx, dword ptr [r8 + 4*rax + 291], 123580x62,0xd4,0x74,0x18,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b59 60# ATT: {evex} rcrq $123, 291(%r8,%rax,4)61# INTEL: {evex} rcr qword ptr [r8 + 4*rax + 291], 123620x62,0xd4,0xfc,0x08,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b63 64# ATT: rcrq $123, 291(%r8,%rax,4), %r965# INTEL: rcr r9, qword ptr [r8 + 4*rax + 291], 123660x62,0xd4,0xb4,0x18,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b67 68# ATT: {evex} rcrb %bl69# INTEL: {evex} rcr bl700x62,0xf4,0x7c,0x08,0xd0,0xdb71 72# ATT: rcrb %bl, %bl73# INTEL: rcr bl, bl740x62,0xf4,0x64,0x18,0xd0,0xdb75 76# ATT: {evex} rcrb %cl, %bl77# INTEL: {evex} rcr bl, cl780x62,0xf4,0x7c,0x08,0xd2,0xdb79 80# ATT: rcrb %cl, %bl, %bl81# INTEL: rcr bl, bl, cl820x62,0xf4,0x64,0x18,0xd2,0xdb83 84# ATT: {evex} rcrw %cl, %dx85# INTEL: {evex} rcr dx, cl860x62,0xf4,0x7d,0x08,0xd3,0xda87 88# ATT: rcrw %cl, %dx, %dx89# INTEL: rcr dx, dx, cl900x62,0xf4,0x6d,0x18,0xd3,0xda91 92# ATT: {evex} rcrl %cl, %ecx93# INTEL: {evex} rcr ecx, cl940x62,0xf4,0x7c,0x08,0xd3,0xd995 96# ATT: rcrl %cl, %ecx, %ecx97# INTEL: rcr ecx, ecx, cl980x62,0xf4,0x74,0x18,0xd3,0xd999 100# ATT: {evex} rcrq %cl, %r9101# INTEL: {evex} rcr r9, cl1020x62,0xd4,0xfc,0x08,0xd3,0xd9103 104# ATT: rcrq %cl, %r9, %r9105# INTEL: rcr r9, r9, cl1060x62,0xd4,0xb4,0x18,0xd3,0xd9107 108# ATT: {evex} rcrb %cl, 291(%r8,%rax,4)109# INTEL: {evex} rcr byte ptr [r8 + 4*rax + 291], cl1100x62,0xd4,0x7c,0x08,0xd2,0x9c,0x80,0x23,0x01,0x00,0x00111 112# ATT: rcrb %cl, 291(%r8,%rax,4), %bl113# INTEL: rcr bl, byte ptr [r8 + 4*rax + 291], cl1140x62,0xd4,0x64,0x18,0xd2,0x9c,0x80,0x23,0x01,0x00,0x00115 116# ATT: {evex} rcrw %cl, 291(%r8,%rax,4)117# INTEL: {evex} rcr word ptr [r8 + 4*rax + 291], cl1180x62,0xd4,0x7d,0x08,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00119 120# ATT: rcrw %cl, 291(%r8,%rax,4), %dx121# INTEL: rcr dx, word ptr [r8 + 4*rax + 291], cl1220x62,0xd4,0x6d,0x18,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00123 124# ATT: {evex} rcrl %cl, 291(%r8,%rax,4)125# INTEL: {evex} rcr dword ptr [r8 + 4*rax + 291], cl1260x62,0xd4,0x7c,0x08,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00127 128# ATT: rcrl %cl, 291(%r8,%rax,4), %ecx129# INTEL: rcr ecx, dword ptr [r8 + 4*rax + 291], cl1300x62,0xd4,0x74,0x18,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00131 132# ATT: {evex} rcrq %cl, 291(%r8,%rax,4)133# INTEL: {evex} rcr qword ptr [r8 + 4*rax + 291], cl1340x62,0xd4,0xfc,0x08,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00135 136# ATT: rcrq %cl, 291(%r8,%rax,4), %r9137# INTEL: rcr r9, qword ptr [r8 + 4*rax + 291], cl1380x62,0xd4,0xb4,0x18,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00139 140# ATT: {evex} rcrw %dx141# INTEL: {evex} rcr dx1420x62,0xf4,0x7d,0x08,0xd1,0xda143 144# ATT: rcrw %dx, %dx145# INTEL: rcr dx, dx1460x62,0xf4,0x6d,0x18,0xd1,0xda147 148# ATT: {evex} rcrl %ecx149# INTEL: {evex} rcr ecx1500x62,0xf4,0x7c,0x08,0xd1,0xd9151 152# ATT: rcrl %ecx, %ecx153# INTEL: rcr ecx, ecx1540x62,0xf4,0x74,0x18,0xd1,0xd9155 156# ATT: {evex} rcrq %r9157# INTEL: {evex} rcr r91580x62,0xd4,0xfc,0x08,0xd1,0xd9159 160# ATT: rcrq %r9, %r9161# INTEL: rcr r9, r91620x62,0xd4,0xb4,0x18,0xd1,0xd9163 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,0x00167 168# ATT: rcrb 291(%r8,%rax,4), %bl169# INTEL: rcr bl, byte ptr [r8 + 4*rax + 291]1700x62,0xd4,0x64,0x18,0xd0,0x9c,0x80,0x23,0x01,0x00,0x00171 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,0x00175 176# ATT: rcrw 291(%r8,%rax,4), %dx177# INTEL: rcr dx, word ptr [r8 + 4*rax + 291]1780x62,0xd4,0x6d,0x18,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00179 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,0x00183 184# ATT: rcrl 291(%r8,%rax,4), %ecx185# INTEL: rcr ecx, dword ptr [r8 + 4*rax + 291]1860x62,0xd4,0x74,0x18,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00187 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,0x00191 192# ATT: rcrq 291(%r8,%rax,4), %r9193# INTEL: rcr r9, qword ptr [r8 + 4*rax + 291]1940x62,0xd4,0xb4,0x18,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00195