xref: /aosp_15_r20/external/llvm/test/MC/Mips/set-nomacro.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker# RUN: llvm-mc %s -arch=mips -mcpu=mips32 2>&1 | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: warning: macro instruction expanded into multiple instructions
4*9880d681SAndroid Build Coastguard Worker  .set macro
5*9880d681SAndroid Build Coastguard Worker  li  $8, -16
6*9880d681SAndroid Build Coastguard Worker  li  $8, 16
7*9880d681SAndroid Build Coastguard Worker  li  $8, 161616
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Worker  la  $8, 16
10*9880d681SAndroid Build Coastguard Worker  la  $8, 161616
11*9880d681SAndroid Build Coastguard Worker  la  $8, 16($9)
12*9880d681SAndroid Build Coastguard Worker  la  $8, 161616($9)
13*9880d681SAndroid Build Coastguard Worker  la  $8, symbol
14*9880d681SAndroid Build Coastguard Worker
15*9880d681SAndroid Build Coastguard Worker  jal $25
16*9880d681SAndroid Build Coastguard Worker  jal $4, $25
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Worker  bne $2, 0, 1332
19*9880d681SAndroid Build Coastguard Worker  bne $2, 1, 1332
20*9880d681SAndroid Build Coastguard Worker  beq $2, 0, 1332
21*9880d681SAndroid Build Coastguard Worker  beq $2, 1, 1332
22*9880d681SAndroid Build Coastguard Worker
23*9880d681SAndroid Build Coastguard Worker  blt $7, $8, local_label
24*9880d681SAndroid Build Coastguard Worker  blt $7, $0, local_label
25*9880d681SAndroid Build Coastguard Worker  blt $0, $8, local_label
26*9880d681SAndroid Build Coastguard Worker  blt $0, $0, local_label
27*9880d681SAndroid Build Coastguard Worker
28*9880d681SAndroid Build Coastguard Worker  bltu $7, $8, local_label
29*9880d681SAndroid Build Coastguard Worker  bltu $7, $0, local_label
30*9880d681SAndroid Build Coastguard Worker  bltu $0, $8, local_label
31*9880d681SAndroid Build Coastguard Worker  bltu $0, $0, local_label
32*9880d681SAndroid Build Coastguard Worker
33*9880d681SAndroid Build Coastguard Worker  ble $7, $8, local_label
34*9880d681SAndroid Build Coastguard Worker  ble $7, $0, local_label
35*9880d681SAndroid Build Coastguard Worker  ble $0, $8, local_label
36*9880d681SAndroid Build Coastguard Worker  ble $0, $0, local_label
37*9880d681SAndroid Build Coastguard Worker
38*9880d681SAndroid Build Coastguard Worker  bleu $7, $8, local_label
39*9880d681SAndroid Build Coastguard Worker  bleu $7, $0, local_label
40*9880d681SAndroid Build Coastguard Worker  bleu $0, $8, local_label
41*9880d681SAndroid Build Coastguard Worker  bleu $0, $0, local_label
42*9880d681SAndroid Build Coastguard Worker
43*9880d681SAndroid Build Coastguard Worker  bge $7, $8, local_label
44*9880d681SAndroid Build Coastguard Worker  bge $7, $0, local_label
45*9880d681SAndroid Build Coastguard Worker  bge $0, $8, local_label
46*9880d681SAndroid Build Coastguard Worker  bge $0, $0, local_label
47*9880d681SAndroid Build Coastguard Worker
48*9880d681SAndroid Build Coastguard Worker  bgeu $7, $8, local_label
49*9880d681SAndroid Build Coastguard Worker  bgeu $7, $0, local_label
50*9880d681SAndroid Build Coastguard Worker  bgeu $0, $8, local_label
51*9880d681SAndroid Build Coastguard Worker  bgeu $0, $0, local_label
52*9880d681SAndroid Build Coastguard Worker
53*9880d681SAndroid Build Coastguard Worker  bgt $7, $8, local_label
54*9880d681SAndroid Build Coastguard Worker  bgt $7, $0, local_label
55*9880d681SAndroid Build Coastguard Worker  bgt $0, $8, local_label
56*9880d681SAndroid Build Coastguard Worker  bgt $0, $0, local_label
57*9880d681SAndroid Build Coastguard Worker
58*9880d681SAndroid Build Coastguard Worker  bgtu $7, $8, local_label
59*9880d681SAndroid Build Coastguard Worker  bgtu $7, $0, local_label
60*9880d681SAndroid Build Coastguard Worker  bgtu $0, $8, local_label
61*9880d681SAndroid Build Coastguard Worker  bgtu $0, $0, local_label
62*9880d681SAndroid Build Coastguard Worker
63*9880d681SAndroid Build Coastguard Worker  ulh $5, 0
64*9880d681SAndroid Build Coastguard Worker  ulhu $5, 0
65*9880d681SAndroid Build Coastguard Worker
66*9880d681SAndroid Build Coastguard Worker  ulw $8, 2
67*9880d681SAndroid Build Coastguard Worker  ulw $8, 0x8000
68*9880d681SAndroid Build Coastguard Worker  ulw $8, 2($9)
69*9880d681SAndroid Build Coastguard Worker  ulw $8, 0x8000($9)
70*9880d681SAndroid Build Coastguard Worker
71*9880d681SAndroid Build Coastguard Worker  jal foo
72*9880d681SAndroid Build Coastguard Worker  .option pic2
73*9880d681SAndroid Build Coastguard Worker  jal foo
74*9880d681SAndroid Build Coastguard Worker  .option pic0
75*9880d681SAndroid Build Coastguard Worker
76*9880d681SAndroid Build Coastguard Worker  add $4, $5, $6
77*9880d681SAndroid Build Coastguard Worker
78*9880d681SAndroid Build Coastguard Worker  .set noreorder
79*9880d681SAndroid Build Coastguard Worker  .set nomacro
80*9880d681SAndroid Build Coastguard Worker  li  $8, -16
81*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
82*9880d681SAndroid Build Coastguard Worker  li  $8, 16
83*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
84*9880d681SAndroid Build Coastguard Worker  li  $8, 161616
85*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
86*9880d681SAndroid Build Coastguard Worker
87*9880d681SAndroid Build Coastguard Worker  la  $8, 16
88*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
89*9880d681SAndroid Build Coastguard Worker  la  $8, 161616
90*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
91*9880d681SAndroid Build Coastguard Worker  la  $8, 16($9)
92*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
93*9880d681SAndroid Build Coastguard Worker  la  $8, 161616($9)
94*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
95*9880d681SAndroid Build Coastguard Worker  la  $8, symbol
96*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
97*9880d681SAndroid Build Coastguard Worker
98*9880d681SAndroid Build Coastguard Worker  jal $25
99*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
100*9880d681SAndroid Build Coastguard Worker  jal $4, $25
101*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
102*9880d681SAndroid Build Coastguard Worker
103*9880d681SAndroid Build Coastguard Worker  bne $2, 0, 1332
104*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
105*9880d681SAndroid Build Coastguard Worker  bne $2, 1, 1332
106*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
107*9880d681SAndroid Build Coastguard Worker  beq $2, 0, 1332
108*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
109*9880d681SAndroid Build Coastguard Worker  beq $2, 1, 1332
110*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
111*9880d681SAndroid Build Coastguard Worker
112*9880d681SAndroid Build Coastguard Worker  blt $7, $8, local_label
113*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
114*9880d681SAndroid Build Coastguard Worker  blt $7, $0, local_label
115*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
116*9880d681SAndroid Build Coastguard Worker  blt $0, $8, local_label
117*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
118*9880d681SAndroid Build Coastguard Worker  blt $0, $0, local_label
119*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
120*9880d681SAndroid Build Coastguard Worker
121*9880d681SAndroid Build Coastguard Worker  bltu $7, $8, local_label
122*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
123*9880d681SAndroid Build Coastguard Worker  bltu $7, $0, local_label
124*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
125*9880d681SAndroid Build Coastguard Worker  bltu $0, $8, local_label
126*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
127*9880d681SAndroid Build Coastguard Worker  bltu $0, $0, local_label
128*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
129*9880d681SAndroid Build Coastguard Worker
130*9880d681SAndroid Build Coastguard Worker  ble $7, $8, local_label
131*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
132*9880d681SAndroid Build Coastguard Worker  ble $7, $0, local_label
133*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
134*9880d681SAndroid Build Coastguard Worker  ble $0, $8, local_label
135*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
136*9880d681SAndroid Build Coastguard Worker  ble $0, $0, local_label
137*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
138*9880d681SAndroid Build Coastguard Worker
139*9880d681SAndroid Build Coastguard Worker  bleu $7, $8, local_label
140*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
141*9880d681SAndroid Build Coastguard Worker  bleu $7, $0, local_label
142*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
143*9880d681SAndroid Build Coastguard Worker  bleu $0, $8, local_label
144*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
145*9880d681SAndroid Build Coastguard Worker  bleu $0, $0, local_label
146*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
147*9880d681SAndroid Build Coastguard Worker
148*9880d681SAndroid Build Coastguard Worker  bge $7, $8, local_label
149*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
150*9880d681SAndroid Build Coastguard Worker  bge $7, $0, local_label
151*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
152*9880d681SAndroid Build Coastguard Worker  bge $0, $8, local_label
153*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
154*9880d681SAndroid Build Coastguard Worker  bge $0, $0, local_label
155*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
156*9880d681SAndroid Build Coastguard Worker
157*9880d681SAndroid Build Coastguard Worker  bgeu $7, $8, local_label
158*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
159*9880d681SAndroid Build Coastguard Worker  bgeu $7, $0, local_label
160*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
161*9880d681SAndroid Build Coastguard Worker  bgeu $0, $8, local_label
162*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
163*9880d681SAndroid Build Coastguard Worker  bgeu $0, $0, local_label
164*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
165*9880d681SAndroid Build Coastguard Worker
166*9880d681SAndroid Build Coastguard Worker  bgt $7, $8, local_label
167*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
168*9880d681SAndroid Build Coastguard Worker  bgt $7, $0, local_label
169*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
170*9880d681SAndroid Build Coastguard Worker  bgt $0, $8, local_label
171*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
172*9880d681SAndroid Build Coastguard Worker  bgt $0, $0, local_label
173*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
174*9880d681SAndroid Build Coastguard Worker
175*9880d681SAndroid Build Coastguard Worker  bgtu $7, $8, local_label
176*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
177*9880d681SAndroid Build Coastguard Worker  bgtu $7, $0, local_label
178*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
179*9880d681SAndroid Build Coastguard Worker  bgtu $0, $8, local_label
180*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
181*9880d681SAndroid Build Coastguard Worker  bgtu $0, $0, local_label
182*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
183*9880d681SAndroid Build Coastguard Worker
184*9880d681SAndroid Build Coastguard Worker  ulh $5, 0
185*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
186*9880d681SAndroid Build Coastguard Worker  ulhu $5, 0
187*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
188*9880d681SAndroid Build Coastguard Worker
189*9880d681SAndroid Build Coastguard Worker  ulw $8, 2
190*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
191*9880d681SAndroid Build Coastguard Worker  ulw $8, 0x8000
192*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
193*9880d681SAndroid Build Coastguard Worker  ulw $8, 2($9)
194*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
195*9880d681SAndroid Build Coastguard Worker  ulw $8, 0x8000($9)
196*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
197*9880d681SAndroid Build Coastguard Worker
198*9880d681SAndroid Build Coastguard Worker  jal foo
199*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
200*9880d681SAndroid Build Coastguard Worker  .option pic2
201*9880d681SAndroid Build Coastguard Worker  jal foo
202*9880d681SAndroid Build Coastguard Worker# CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
203*9880d681SAndroid Build Coastguard Worker  .option pic0
204*9880d681SAndroid Build Coastguard Worker
205*9880d681SAndroid Build Coastguard Worker  add $4, $5, $6
206*9880d681SAndroid Build Coastguard Worker# CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
207