xref: /aosp_15_r20/external/llvm/test/MC/Lanai/memory.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker! RUN: llvm-mc -arch=lanai -show-encoding -show-inst < %s | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker! Checking the machine instructions generated from ASM instructions for ALU
4*9880d681SAndroid Build Coastguard Worker! operations.
5*9880d681SAndroid Build Coastguard Worker
6*9880d681SAndroid Build Coastguard Worker! RM class
7*9880d681SAndroid Build Coastguard Worker    ld [%r7], %r6
8*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x83,0x1c,0x00,0x00]
9*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
10*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
11*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
12*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
13*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker    ld [%r6], %r6
16*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x83,0x18,0x00,0x00]
17*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
18*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
19*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
20*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
21*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
22*9880d681SAndroid Build Coastguard Worker
23*9880d681SAndroid Build Coastguard Worker     st %r6, [%r7]
24*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x93,0x1c,0x00,0x00]
25*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} SW_RI{{$}}
26*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
27*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
28*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
29*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
30*9880d681SAndroid Build Coastguard Worker
31*9880d681SAndroid Build Coastguard Worker    ld 0x123[%r7*], %r6
32*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x83,0x1d,0x01,0x23]
33*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
34*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
35*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
36*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:291>
37*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:128>
38*9880d681SAndroid Build Coastguard Worker
39*9880d681SAndroid Build Coastguard Worker    ld [%r7--], %r6
40*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x83,0x1d,0xff,0xfc]
41*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
42*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
43*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
44*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:-4>
45*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:128>
46*9880d681SAndroid Build Coastguard Worker
47*9880d681SAndroid Build Coastguard Worker    ld 0x123[%r7], %r6
48*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x83,0x1e,0x01,0x23]
49*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
50*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
51*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
52*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:291>
53*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
54*9880d681SAndroid Build Coastguard Worker
55*9880d681SAndroid Build Coastguard Worker    ld 0x123[*%r7], %r6
56*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x83,0x1f,0x01,0x23]
57*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
58*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
59*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
60*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:291>
61*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:64>
62*9880d681SAndroid Build Coastguard Worker
63*9880d681SAndroid Build Coastguard Worker    ld [--%r7], %r6
64*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x83,0x1f,0xff,0xfc]
65*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
66*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
67*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
68*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:-4>
69*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:64>
70*9880d681SAndroid Build Coastguard Worker
71*9880d681SAndroid Build Coastguard Worker    st %r6, [%r7++]
72*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x93,0x1d,0x00,0x04]
73*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} SW_RI{{$}}
74*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
75*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
76*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:4>
77*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:128>
78*9880d681SAndroid Build Coastguard Worker
79*9880d681SAndroid Build Coastguard Worker    st.h %r6, [%r7++]
80*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xf3,0x1f,0x24,0x02]
81*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} STH_RI{{$}}
82*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
83*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
84*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:2>
85*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:128>>
86*9880d681SAndroid Build Coastguard Worker
87*9880d681SAndroid Build Coastguard Worker    ld.b [--%r7], %r6
88*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xf3,0x1f,0x4f,0xff]
89*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDBs_RI{{$}}
90*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
91*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
92*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:-1>
93*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:64>>
94*9880d681SAndroid Build Coastguard Worker
95*9880d681SAndroid Build Coastguard Worker! Largest RM value before SLS encoding is used
96*9880d681SAndroid Build Coastguard Worker    ld [0x7fff], %r7
97*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x83,0x82,0x7f,0xff]
98*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
99*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
100*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:7>
101*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:32767>
102*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
103*9880d681SAndroid Build Coastguard Worker
104*9880d681SAndroid Build Coastguard Worker    ld [0x8000], %r7
105*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xf3,0x80,0x80,0x00]
106*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDADDR{{$}}
107*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
108*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:32768>
109*9880d681SAndroid Build Coastguard Worker
110*9880d681SAndroid Build Coastguard Worker! Negative RM value
111*9880d681SAndroid Build Coastguard Worker    ld [0xfffffe8c], %pc
112*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x81,0x02,0xfe,0x8c]
113*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
114*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:2>
115*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:7>
116*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:-372>
117*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
118*9880d681SAndroid Build Coastguard Worker
119*9880d681SAndroid Build Coastguard Worker    ld [-372], %pc
120*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x81,0x02,0xfe,0x8c]
121*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RI{{$}}
122*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:2>
123*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:7>
124*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:-372>
125*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
126*9880d681SAndroid Build Coastguard Worker
127*9880d681SAndroid Build Coastguard Worker! RRM class
128*9880d681SAndroid Build Coastguard Worker    ld %r9[%r12*], %r20
129*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xaa,0x31,0x48,0x02]
130*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RR{{$}}
131*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:27>
132*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:19>
133*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:16>
134*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:128>
135*9880d681SAndroid Build Coastguard Worker
136*9880d681SAndroid Build Coastguard Worker    ld %r9[%r12], %r20
137*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xaa,0x32,0x48,0x02]
138*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RR{{$}}
139*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:27>
140*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:19>
141*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:16>
142*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
143*9880d681SAndroid Build Coastguard Worker
144*9880d681SAndroid Build Coastguard Worker    ld [%r12 sub %r9], %r20
145*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xaa,0x32,0x4a,0x02]
146*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RR{{$}}
147*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:27>
148*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:19>
149*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:16>
150*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:2>
151*9880d681SAndroid Build Coastguard Worker
152*9880d681SAndroid Build Coastguard Worker    ld %r9[*%r12], %r20
153*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xaa,0x33,0x48,0x02]
154*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDW_RR{{$}}
155*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:27>
156*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:19>
157*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:16>
158*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:64>
159*9880d681SAndroid Build Coastguard Worker
160*9880d681SAndroid Build Coastguard Worker    st %r20, %r9[*%r12]
161*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xba,0x33,0x48,0x02]
162*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} SW_RR{{$}}
163*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:27>
164*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:19>
165*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:16>
166*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:64>
167*9880d681SAndroid Build Coastguard Worker
168*9880d681SAndroid Build Coastguard Worker    ld.b [%r12 sub %r9], %r20
169*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xaa,0x32,0x4a,0x04]
170*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDBs_RR{{$}}
171*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:27>
172*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:19>
173*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:16>
174*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:2>
175*9880d681SAndroid Build Coastguard Worker
176*9880d681SAndroid Build Coastguard Worker    uld.h [%r12 sub %r9], %r20
177*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xaa,0x32,0x4a,0x01]
178*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDHz_RR{{$}}
179*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:27>
180*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:19>
181*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:16>
182*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:2>
183*9880d681SAndroid Build Coastguard Worker
184*9880d681SAndroid Build Coastguard Worker
185*9880d681SAndroid Build Coastguard Worker! SPLS class
186*9880d681SAndroid Build Coastguard Worker    st.b %r3, [%r6]
187*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xf1,0x9b,0x60,0x00]
188*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} STB_RI{{$}}
189*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:10>
190*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
191*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
192*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
193*9880d681SAndroid Build Coastguard Worker
194*9880d681SAndroid Build Coastguard Worker    st.b %r3, 1[%r6*]
195*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xf1,0x9b,0x64,0x01]
196*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} STB_RI{{$}}
197*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:10>
198*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
199*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:1>
200*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:128>
201*9880d681SAndroid Build Coastguard Worker
202*9880d681SAndroid Build Coastguard Worker    st.b %r3, 1[%r6]
203*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xf1,0x9b,0x68,0x01]
204*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} STB_RI{{$}}
205*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:10>
206*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
207*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:1>
208*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:0>
209*9880d681SAndroid Build Coastguard Worker
210*9880d681SAndroid Build Coastguard Worker    st.b %r3, 1[*%r6]
211*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xf1,0x9b,0x6c,0x01]
212*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} STB_RI{{$}}
213*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:10>
214*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:13>
215*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:1>
216*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:64>
217*9880d681SAndroid Build Coastguard Worker
218*9880d681SAndroid Build Coastguard Worker! SLS class
219*9880d681SAndroid Build Coastguard Worker    st %r30, [0x1234]
220*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xff,0x01,0x12,0x34]
221*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} STADDR{{$}}
222*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:37>
223*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:4660>
224*9880d681SAndroid Build Coastguard Worker
225*9880d681SAndroid Build Coastguard Worker    ld [0xfe8c], %pc
226*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0xf1,0x00,0xfe,0x8c]
227*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} LDADDR{{$}}
228*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:2>
229*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Imm:65164>
230*9880d681SAndroid Build Coastguard Worker
231*9880d681SAndroid Build Coastguard Worker! SLI class
232*9880d681SAndroid Build Coastguard Worker    mov hi(x), %r4
233*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x02,0x01,A,A]
234*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: fixup A - offset: 0, value: hi(x), kind: FIXUP_LANAI_HI16{{$}}
235*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} ADD_I_HI
236*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:11>
237*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:7>
238*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Expr:(hi(x))>
239*9880d681SAndroid Build Coastguard Worker
240*9880d681SAndroid Build Coastguard Worker    mov hi(l+4), %r7
241*9880d681SAndroid Build Coastguard Worker! CHECK: encoding: [0x03,0x81,A,A]
242*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: fixup A - offset: 0, value: (hi(l))+4, kind: FIXUP_LANAI_HI16{{$}}
243*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCInst #{{[0-9]+}} ADD_I_HI
244*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:14>
245*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Reg:7>
246*9880d681SAndroid Build Coastguard Worker! CHECK-NEXT: <MCOperand Expr:((hi(l))+4)>
247*9880d681SAndroid Build Coastguard Worker
248