1# RUN: not llvm-mc -triple mips-unknown-unknown %s 2>%t1
2# RUN: FileCheck %s < %t1
3
4    .set mips0
5    .module fp=64
6# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
7
8    .llvm_internal_mips_reallow_module_directive
9    .module fp=32
10# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
11
12    .set mips1
13    .module fp=64
14# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
15
16    .llvm_internal_mips_reallow_module_directive
17    .module fp=32
18# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
19
20    .set mips2
21    .module fp=64
22# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
23
24    .llvm_internal_mips_reallow_module_directive
25    .module fp=32
26# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
27
28    .set mips3
29    .module fp=64
30# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
31
32    .llvm_internal_mips_reallow_module_directive
33    .module fp=32
34# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
35
36    .set mips4
37    .module fp=64
38# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
39
40    .llvm_internal_mips_reallow_module_directive
41    .module fp=32
42# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
43
44    .set mips5
45    .module fp=64
46# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
47
48    .llvm_internal_mips_reallow_module_directive
49    .module fp=32
50# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
51
52    .set mips32
53    .module fp=64
54# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
55
56    .llvm_internal_mips_reallow_module_directive
57    .module fp=32
58# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
59
60    .set mips32r2
61    .module fp=64
62# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
63
64    .llvm_internal_mips_reallow_module_directive
65    .module fp=32
66# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
67
68    .set mips32r6
69    .module fp=64
70# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
71
72    .llvm_internal_mips_reallow_module_directive
73    .module fp=32
74# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
75
76    .set mips64
77    .module fp=64
78# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
79
80    .llvm_internal_mips_reallow_module_directive
81    .module fp=32
82# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
83
84    .set mips64r2
85    .module fp=64
86# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
87
88    .llvm_internal_mips_reallow_module_directive
89    .module fp=32
90# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
91
92    .set mips64r6
93    .module fp=64
94# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
95
96    .llvm_internal_mips_reallow_module_directive
97    .module fp=32
98# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
99
100    .set arch=mips32
101    .module fp=64
102# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
103
104    .llvm_internal_mips_reallow_module_directive
105    .module fp=32
106# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
107
108    .set mips16
109    .module fp=64
110# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
111
112    .llvm_internal_mips_reallow_module_directive
113    .module fp=32
114# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
115
116    .set nomips16
117    .module fp=64
118# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
119
120    .llvm_internal_mips_reallow_module_directive
121    .module fp=32
122# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
123
124    .set micromips
125    .module fp=64
126# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
127
128    .llvm_internal_mips_reallow_module_directive
129    .module fp=32
130# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
131
132    .set nomicromips
133    .module fp=64
134# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
135
136    .llvm_internal_mips_reallow_module_directive
137    .module fp=32
138# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
139
140    .set msa
141    .module fp=64
142# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
143
144    .llvm_internal_mips_reallow_module_directive
145    .module fp=32
146# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
147
148    .set nomsa
149    .module fp=64
150# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
151
152    .llvm_internal_mips_reallow_module_directive
153    .module fp=32
154# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
155
156    .set dsp
157    .module fp=64
158# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
159
160    .set dspr2
161    .module fp=64
162# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
163
164    .llvm_internal_mips_reallow_module_directive
165    .module fp=32
166# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
167
168    .set nodsp
169    .module fp=64
170# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
171
172    .llvm_internal_mips_reallow_module_directive
173    .module fp=32
174# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
175
176    .set push
177    .module fp=64
178# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
179
180    .llvm_internal_mips_reallow_module_directive
181    .module fp=32
182# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
183
184    .set pop
185    .module fp=64
186# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
187
188    .llvm_internal_mips_reallow_module_directive
189    .module fp=32
190# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
191
192    .set reorder
193    .module fp=64
194# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
195
196    .llvm_internal_mips_reallow_module_directive
197    .module fp=32
198# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
199
200    .set noreorder
201    .module fp=64
202# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
203
204    .llvm_internal_mips_reallow_module_directive
205    .module fp=32
206# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
207
208    .set macro
209    .module fp=64
210# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
211
212    .llvm_internal_mips_reallow_module_directive
213    .module fp=32
214# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
215
216    .set nomacro
217    .module fp=64
218# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
219
220    .llvm_internal_mips_reallow_module_directive
221    .module fp=32
222# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
223
224    .set at
225    .module fp=64
226# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
227
228    .llvm_internal_mips_reallow_module_directive
229    .module fp=32
230# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
231
232    .set at=$3
233    .module fp=64
234# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
235
236    .llvm_internal_mips_reallow_module_directive
237    .module fp=32
238# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
239
240    .set noat
241    .module fp=64
242# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
243
244    .llvm_internal_mips_reallow_module_directive
245    .module fp=32
246# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
247
248    .set fp=32
249    .module fp=64
250# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
251
252    .llvm_internal_mips_reallow_module_directive
253    .module fp=32
254# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
255
256    .cpload $25
257    .module fp=64
258# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
259
260    .llvm_internal_mips_reallow_module_directive
261    .module fp=32
262# CHECK-NOT: :[[@LINE-1]]:13: error: .module directive must appear before any code
263
264    .cpsetup $25, 8, __cerror
265    .module fp=64
266# CHECK: :[[@LINE-1]]:13: error: .module directive must appear before any code
267