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