xref: /llvm-project/llvm/test/MC/X86/apx/rcr-intel.s (revision 5c68c6d70fc204b0efdb2af95dfb328d616129e3)
1# RUN: llvm-mc -triple x86_64 -show-encoding -x86-asm-syntax=intel -output-asm-variant=1 %s | FileCheck %s
2
3# CHECK: {evex}	rcr	bl, 123
4# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xc0,0xdb,0x7b]
5         {evex}	rcr	bl, 123
6# CHECK: rcr	bl, bl, 123
7# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xc0,0xdb,0x7b]
8         rcr	bl, bl, 123
9# CHECK: {evex}	rcr	dx, 123
10# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xc1,0xda,0x7b]
11         {evex}	rcr	dx, 123
12# CHECK: rcr	dx, dx, 123
13# CHECK: encoding: [0x62,0xf4,0x6d,0x18,0xc1,0xda,0x7b]
14         rcr	dx, dx, 123
15# CHECK: {evex}	rcr	ecx, 123
16# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xc1,0xd9,0x7b]
17         {evex}	rcr	ecx, 123
18# CHECK: rcr	ecx, ecx, 123
19# CHECK: encoding: [0x62,0xf4,0x74,0x18,0xc1,0xd9,0x7b]
20         rcr	ecx, ecx, 123
21# CHECK: {evex}	rcr	r9, 123
22# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xc1,0xd9,0x7b]
23         {evex}	rcr	r9, 123
24# CHECK: rcr	r9, r9, 123
25# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xc1,0xd9,0x7b]
26         rcr	r9, r9, 123
27# CHECK: {evex}	rcr	byte ptr [r8 + 4*rax + 291], 123
28# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xc0,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]
29         {evex}	rcr	byte ptr [r8 + 4*rax + 291], 123
30# CHECK: rcr	bl, byte ptr [r8 + 4*rax + 291], 123
31# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xc0,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]
32         rcr	bl, byte ptr [r8 + 4*rax + 291], 123
33# CHECK: {evex}	rcr	word ptr [r8 + 4*rax + 291], 123
34# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]
35         {evex}	rcr	word ptr [r8 + 4*rax + 291], 123
36# CHECK: rcr	dx, word ptr [r8 + 4*rax + 291], 123
37# CHECK: encoding: [0x62,0xd4,0x6d,0x18,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]
38         rcr	dx, word ptr [r8 + 4*rax + 291], 123
39# CHECK: {evex}	rcr	dword ptr [r8 + 4*rax + 291], 123
40# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]
41         {evex}	rcr	dword ptr [r8 + 4*rax + 291], 123
42# CHECK: rcr	ecx, dword ptr [r8 + 4*rax + 291], 123
43# CHECK: encoding: [0x62,0xd4,0x74,0x18,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]
44         rcr	ecx, dword ptr [r8 + 4*rax + 291], 123
45# CHECK: {evex}	rcr	qword ptr [r8 + 4*rax + 291], 123
46# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]
47         {evex}	rcr	qword ptr [r8 + 4*rax + 291], 123
48# CHECK: rcr	r9, qword ptr [r8 + 4*rax + 291], 123
49# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xc1,0x9c,0x80,0x23,0x01,0x00,0x00,0x7b]
50         rcr	r9, qword ptr [r8 + 4*rax + 291], 123
51# CHECK: {evex}	rcr	bl
52# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd0,0xdb]
53         {evex}	rcr	bl
54# CHECK: {evex}	rcr	bl, cl
55# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd2,0xdb]
56         {evex}	rcr	bl, cl
57# CHECK: rcr	bl, bl, cl
58# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xd2,0xdb]
59         rcr	bl, bl, cl
60# CHECK: {evex}	rcr	dx, cl
61# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xd3,0xda]
62         {evex}	rcr	dx, cl
63# CHECK: rcr	dx, dx, cl
64# CHECK: encoding: [0x62,0xf4,0x6d,0x18,0xd3,0xda]
65         rcr	dx, dx, cl
66# CHECK: {evex}	rcr	ecx, cl
67# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd3,0xd9]
68         {evex}	rcr	ecx, cl
69# CHECK: rcr	ecx, ecx, cl
70# CHECK: encoding: [0x62,0xf4,0x74,0x18,0xd3,0xd9]
71         rcr	ecx, ecx, cl
72# CHECK: {evex}	rcr	r9, cl
73# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd3,0xd9]
74         {evex}	rcr	r9, cl
75# CHECK: rcr	r9, r9, cl
76# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd3,0xd9]
77         rcr	r9, r9, cl
78# CHECK: {evex}	rcr	byte ptr [r8 + 4*rax + 291], cl
79# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd2,0x9c,0x80,0x23,0x01,0x00,0x00]
80         {evex}	rcr	byte ptr [r8 + 4*rax + 291], cl
81# CHECK: rcr	bl, byte ptr [r8 + 4*rax + 291], cl
82# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd2,0x9c,0x80,0x23,0x01,0x00,0x00]
83         rcr	bl, byte ptr [r8 + 4*rax + 291], cl
84# CHECK: {evex}	rcr	word ptr [r8 + 4*rax + 291], cl
85# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]
86         {evex}	rcr	word ptr [r8 + 4*rax + 291], cl
87# CHECK: rcr	dx, word ptr [r8 + 4*rax + 291], cl
88# CHECK: encoding: [0x62,0xd4,0x6d,0x18,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]
89         rcr	dx, word ptr [r8 + 4*rax + 291], cl
90# CHECK: {evex}	rcr	dword ptr [r8 + 4*rax + 291], cl
91# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]
92         {evex}	rcr	dword ptr [r8 + 4*rax + 291], cl
93# CHECK: rcr	ecx, dword ptr [r8 + 4*rax + 291], cl
94# CHECK: encoding: [0x62,0xd4,0x74,0x18,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]
95         rcr	ecx, dword ptr [r8 + 4*rax + 291], cl
96# CHECK: {evex}	rcr	qword ptr [r8 + 4*rax + 291], cl
97# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]
98         {evex}	rcr	qword ptr [r8 + 4*rax + 291], cl
99# CHECK: rcr	r9, qword ptr [r8 + 4*rax + 291], cl
100# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd3,0x9c,0x80,0x23,0x01,0x00,0x00]
101         rcr	r9, qword ptr [r8 + 4*rax + 291], cl
102# CHECK: {evex}	rcr	dx
103# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xd1,0xda]
104         {evex}	rcr	dx
105# CHECK: rcr	dx, dx
106# CHECK: encoding: [0x62,0xf4,0x6d,0x18,0xd1,0xda]
107         rcr	dx, dx
108# CHECK: {evex}	rcr	ecx
109# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd1,0xd9]
110         {evex}	rcr	ecx
111# CHECK: rcr	ecx, ecx
112# CHECK: encoding: [0x62,0xf4,0x74,0x18,0xd1,0xd9]
113         rcr	ecx, ecx
114# CHECK: {evex}	rcr	r9
115# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd1,0xd9]
116         {evex}	rcr	r9
117# CHECK: rcr	r9, r9
118# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd1,0xd9]
119         rcr	r9, r9
120# CHECK: {evex}	rcr	byte ptr [r8 + 4*rax + 291]
121# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd0,0x9c,0x80,0x23,0x01,0x00,0x00]
122         {evex}	rcr	byte ptr [r8 + 4*rax + 291]
123# CHECK: rcr	bl, byte ptr [r8 + 4*rax + 291]
124# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd0,0x9c,0x80,0x23,0x01,0x00,0x00]
125         rcr	bl, byte ptr [r8 + 4*rax + 291]
126# CHECK: {evex}	rcr	word ptr [r8 + 4*rax + 291]
127# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]
128         {evex}	rcr	word ptr [r8 + 4*rax + 291]
129# CHECK: rcr	dx, word ptr [r8 + 4*rax + 291]
130# CHECK: encoding: [0x62,0xd4,0x6d,0x18,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]
131         rcr	dx, word ptr [r8 + 4*rax + 291]
132# CHECK: {evex}	rcr	dword ptr [r8 + 4*rax + 291]
133# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]
134         {evex}	rcr	dword ptr [r8 + 4*rax + 291]
135# CHECK: rcr	ecx, dword ptr [r8 + 4*rax + 291]
136# CHECK: encoding: [0x62,0xd4,0x74,0x18,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]
137         rcr	ecx, dword ptr [r8 + 4*rax + 291]
138# CHECK: {evex}	rcr	qword ptr [r8 + 4*rax + 291]
139# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]
140         {evex}	rcr	qword ptr [r8 + 4*rax + 291]
141# CHECK: rcr	r9, qword ptr [r8 + 4*rax + 291]
142# CHECK: encoding: [0x62,0xd4,0xb4,0x18,0xd1,0x9c,0x80,0x23,0x01,0x00,0x00]
143         rcr	r9, qword ptr [r8 + 4*rax + 291]
144