1 // RUN: %clang_cc1 -triple hexagon-unknown-elf -target-feature +hvx -target-feature +hvx-length128b -emit-llvm -o - %s | FileCheck %s
2 
test_r0()3 void test_r0() {
4   // CHECK: define {{.*}}void @test_r0
5   // CHECK: call void asm sideeffect "nop", "~{r0}"()
6   asm("nop" ::: "r0");
7 }
test_r1()8 void test_r1() {
9   // CHECK: define {{.*}}void @test_r1
10   // CHECK: call void asm sideeffect "nop", "~{r1}"()
11   asm("nop" ::: "r1");
12 }
test_r2()13 void test_r2() {
14   // CHECK: define {{.*}}void @test_r2
15   // CHECK: call void asm sideeffect "nop", "~{r2}"()
16   asm("nop" ::: "r2");
17 }
test_r3()18 void test_r3() {
19   // CHECK: define {{.*}}void @test_r3
20   // CHECK: call void asm sideeffect "nop", "~{r3}"()
21   asm("nop" ::: "r3");
22 }
test_r4()23 void test_r4() {
24   // CHECK: define {{.*}}void @test_r4
25   // CHECK: call void asm sideeffect "nop", "~{r4}"()
26   asm("nop" ::: "r4");
27 }
test_r5()28 void test_r5() {
29   // CHECK: define {{.*}}void @test_r5
30   // CHECK: call void asm sideeffect "nop", "~{r5}"()
31   asm("nop" ::: "r5");
32 }
test_r6()33 void test_r6() {
34   // CHECK: define {{.*}}void @test_r6
35   // CHECK: call void asm sideeffect "nop", "~{r6}"()
36   asm("nop" ::: "r6");
37 }
test_r7()38 void test_r7() {
39   // CHECK: define {{.*}}void @test_r7
40   // CHECK: call void asm sideeffect "nop", "~{r7}"()
41   asm("nop" ::: "r7");
42 }
test_r8()43 void test_r8() {
44   // CHECK: define {{.*}}void @test_r8
45   // CHECK: call void asm sideeffect "nop", "~{r8}"()
46   asm("nop" ::: "r8");
47 }
test_r9()48 void test_r9() {
49   // CHECK: define {{.*}}void @test_r9
50   // CHECK: call void asm sideeffect "nop", "~{r9}"()
51   asm("nop" ::: "r9");
52 }
test_r10()53 void test_r10() {
54   // CHECK: define {{.*}}void @test_r10
55   // CHECK: call void asm sideeffect "nop", "~{r10}"()
56   asm("nop" ::: "r10");
57 }
test_r11()58 void test_r11() {
59   // CHECK: define {{.*}}void @test_r11
60   // CHECK: call void asm sideeffect "nop", "~{r11}"()
61   asm("nop" ::: "r11");
62 }
test_r12()63 void test_r12() {
64   // CHECK: define {{.*}}void @test_r12
65   // CHECK: call void asm sideeffect "nop", "~{r12}"()
66   asm("nop" ::: "r12");
67 }
test_r13()68 void test_r13() {
69   // CHECK: define {{.*}}void @test_r13
70   // CHECK: call void asm sideeffect "nop", "~{r13}"()
71   asm("nop" ::: "r13");
72 }
test_r14()73 void test_r14() {
74   // CHECK: define {{.*}}void @test_r14
75   // CHECK: call void asm sideeffect "nop", "~{r14}"()
76   asm("nop" ::: "r14");
77 }
test_r15()78 void test_r15() {
79   // CHECK: define {{.*}}void @test_r15
80   // CHECK: call void asm sideeffect "nop", "~{r15}"()
81   asm("nop" ::: "r15");
82 }
test_r16()83 void test_r16() {
84   // CHECK: define {{.*}}void @test_r16
85   // CHECK: call void asm sideeffect "nop", "~{r16}"()
86   asm("nop" ::: "r16");
87 }
test_r17()88 void test_r17() {
89   // CHECK: define {{.*}}void @test_r17
90   // CHECK: call void asm sideeffect "nop", "~{r17}"()
91   asm("nop" ::: "r17");
92 }
test_r18()93 void test_r18() {
94   // CHECK: define {{.*}}void @test_r18
95   // CHECK: call void asm sideeffect "nop", "~{r18}"()
96   asm("nop" ::: "r18");
97 }
test_r19()98 void test_r19() {
99   // CHECK: define {{.*}}void @test_r19
100   // CHECK: call void asm sideeffect "nop", "~{r19}"()
101   asm("nop" ::: "r19");
102 }
test_r20()103 void test_r20() {
104   // CHECK: define {{.*}}void @test_r20
105   // CHECK: call void asm sideeffect "nop", "~{r20}"()
106   asm("nop" ::: "r20");
107 }
test_r21()108 void test_r21() {
109   // CHECK: define {{.*}}void @test_r21
110   // CHECK: call void asm sideeffect "nop", "~{r21}"()
111   asm("nop" ::: "r21");
112 }
test_r22()113 void test_r22() {
114   // CHECK: define {{.*}}void @test_r22
115   // CHECK: call void asm sideeffect "nop", "~{r22}"()
116   asm("nop" ::: "r22");
117 }
test_r23()118 void test_r23() {
119   // CHECK: define {{.*}}void @test_r23
120   // CHECK: call void asm sideeffect "nop", "~{r23}"()
121   asm("nop" ::: "r23");
122 }
test_r24()123 void test_r24() {
124   // CHECK: define {{.*}}void @test_r24
125   // CHECK: call void asm sideeffect "nop", "~{r24}"()
126   asm("nop" ::: "r24");
127 }
test_r25()128 void test_r25() {
129   // CHECK: define {{.*}}void @test_r25
130   // CHECK: call void asm sideeffect "nop", "~{r25}"()
131   asm("nop" ::: "r25");
132 }
test_r26()133 void test_r26() {
134   // CHECK: define {{.*}}void @test_r26
135   // CHECK: call void asm sideeffect "nop", "~{r26}"()
136   asm("nop" ::: "r26");
137 }
test_r27()138 void test_r27() {
139   // CHECK: define {{.*}}void @test_r27
140   // CHECK: call void asm sideeffect "nop", "~{r27}"()
141   asm("nop" ::: "r27");
142 }
test_r28()143 void test_r28() {
144   // CHECK: define {{.*}}void @test_r28
145   // CHECK: call void asm sideeffect "nop", "~{r28}"()
146   asm("nop" ::: "r28");
147 }
test_r29()148 void test_r29() {
149   // CHECK: define {{.*}}void @test_r29
150   // CHECK: call void asm sideeffect "nop", "~{r29}"()
151   asm("nop" ::: "r29");
152 }
test_r30()153 void test_r30() {
154   // CHECK: define {{.*}}void @test_r30
155   // CHECK: call void asm sideeffect "nop", "~{r30}"()
156   asm("nop" ::: "r30");
157 }
test_r31()158 void test_r31() {
159   // CHECK: define {{.*}}void @test_r31
160   // CHECK: call void asm sideeffect "nop", "~{r31}"()
161   asm("nop" ::: "r31");
162 }
test_r1_0()163 void test_r1_0() {
164   // CHECK: define {{.*}}void @test_r1_0
165   // CHECK: call void asm sideeffect "nop", "~{r1:0}"()
166   asm("nop" ::: "r1:0");
167 }
test_r3_2()168 void test_r3_2() {
169   // CHECK: define {{.*}}void @test_r3_2
170   // CHECK: call void asm sideeffect "nop", "~{r3:2}"()
171   asm("nop" ::: "r3:2");
172 }
test_r5_4()173 void test_r5_4() {
174   // CHECK: define {{.*}}void @test_r5_4
175   // CHECK: call void asm sideeffect "nop", "~{r5:4}"()
176   asm("nop" ::: "r5:4");
177 }
test_r7_6()178 void test_r7_6() {
179   // CHECK: define {{.*}}void @test_r7_6
180   // CHECK: call void asm sideeffect "nop", "~{r7:6}"()
181   asm("nop" ::: "r7:6");
182 }
test_r9_8()183 void test_r9_8() {
184   // CHECK: define {{.*}}void @test_r9_8
185   // CHECK: call void asm sideeffect "nop", "~{r9:8}"()
186   asm("nop" ::: "r9:8");
187 }
test_r11_10()188 void test_r11_10() {
189   // CHECK: define {{.*}}void @test_r11_10
190   // CHECK: call void asm sideeffect "nop", "~{r11:10}"()
191   asm("nop" ::: "r11:10");
192 }
test_r13_12()193 void test_r13_12() {
194   // CHECK: define {{.*}}void @test_r13_12
195   // CHECK: call void asm sideeffect "nop", "~{r13:12}"()
196   asm("nop" ::: "r13:12");
197 }
test_r15_14()198 void test_r15_14() {
199   // CHECK: define {{.*}}void @test_r15_14
200   // CHECK: call void asm sideeffect "nop", "~{r15:14}"()
201   asm("nop" ::: "r15:14");
202 }
test_r17_16()203 void test_r17_16() {
204   // CHECK: define {{.*}}void @test_r17_16
205   // CHECK: call void asm sideeffect "nop", "~{r17:16}"()
206   asm("nop" ::: "r17:16");
207 }
test_r19_18()208 void test_r19_18() {
209   // CHECK: define {{.*}}void @test_r19_18
210   // CHECK: call void asm sideeffect "nop", "~{r19:18}"()
211   asm("nop" ::: "r19:18");
212 }
test_r21_20()213 void test_r21_20() {
214   // CHECK: define {{.*}}void @test_r21_20
215   // CHECK: call void asm sideeffect "nop", "~{r21:20}"()
216   asm("nop" ::: "r21:20");
217 }
test_r23_22()218 void test_r23_22() {
219   // CHECK: define {{.*}}void @test_r23_22
220   // CHECK: call void asm sideeffect "nop", "~{r23:22}"()
221   asm("nop" ::: "r23:22");
222 }
test_r25_24()223 void test_r25_24() {
224   // CHECK: define {{.*}}void @test_r25_24
225   // CHECK: call void asm sideeffect "nop", "~{r25:24}"()
226   asm("nop" ::: "r25:24");
227 }
test_r27_26()228 void test_r27_26() {
229   // CHECK: define {{.*}}void @test_r27_26
230   // CHECK: call void asm sideeffect "nop", "~{r27:26}"()
231   asm("nop" ::: "r27:26");
232 }
test_r29_28()233 void test_r29_28() {
234   // CHECK: define {{.*}}void @test_r29_28
235   // CHECK: call void asm sideeffect "nop", "~{r29:28}"()
236   asm("nop" ::: "r29:28");
237 }
test_r31_30()238 void test_r31_30() {
239   // CHECK: define {{.*}}void @test_r31_30
240   // CHECK: call void asm sideeffect "nop", "~{r31:30}"()
241   asm("nop" ::: "r31:30");
242 }
test_p0()243 void test_p0() {
244   // CHECK: define {{.*}}void @test_p0
245   // CHECK: call void asm sideeffect "nop", "~{p0}"()
246   asm("nop" ::: "p0");
247 }
test_p1()248 void test_p1() {
249   // CHECK: define {{.*}}void @test_p1
250   // CHECK: call void asm sideeffect "nop", "~{p1}"()
251   asm("nop" ::: "p1");
252 }
test_p2()253 void test_p2() {
254   // CHECK: define {{.*}}void @test_p2
255   // CHECK: call void asm sideeffect "nop", "~{p2}"()
256   asm("nop" ::: "p2");
257 }
test_p3()258 void test_p3() {
259   // CHECK: define {{.*}}void @test_p3
260   // CHECK: call void asm sideeffect "nop", "~{p3}"()
261   asm("nop" ::: "p3");
262 }
test_c0()263 void test_c0() {
264   // CHECK: define {{.*}}void @test_c0
265   // CHECK: call void asm sideeffect "nop", "~{c0}"()
266   asm("nop" ::: "c0");
267 }
test_c1()268 void test_c1() {
269   // CHECK: define {{.*}}void @test_c1
270   // CHECK: call void asm sideeffect "nop", "~{c1}"()
271   asm("nop" ::: "c1");
272 }
test_c2()273 void test_c2() {
274   // CHECK: define {{.*}}void @test_c2
275   // CHECK: call void asm sideeffect "nop", "~{c2}"()
276   asm("nop" ::: "c2");
277 }
test_c3()278 void test_c3() {
279   // CHECK: define {{.*}}void @test_c3
280   // CHECK: call void asm sideeffect "nop", "~{c3}"()
281   asm("nop" ::: "c3");
282 }
test_c4()283 void test_c4() {
284   // CHECK: define {{.*}}void @test_c4
285   // CHECK: call void asm sideeffect "nop", "~{c4}"()
286   asm("nop" ::: "c4");
287 }
test_c5()288 void test_c5() {
289   // CHECK: define {{.*}}void @test_c5
290   // CHECK: call void asm sideeffect "nop", "~{c5}"()
291   asm("nop" ::: "c5");
292 }
test_c6()293 void test_c6() {
294   // CHECK: define {{.*}}void @test_c6
295   // CHECK: call void asm sideeffect "nop", "~{c6}"()
296   asm("nop" ::: "c6");
297 }
test_c7()298 void test_c7() {
299   // CHECK: define {{.*}}void @test_c7
300   // CHECK: call void asm sideeffect "nop", "~{c7}"()
301   asm("nop" ::: "c7");
302 }
test_c8()303 void test_c8() {
304   // CHECK: define {{.*}}void @test_c8
305   // CHECK: call void asm sideeffect "nop", "~{c8}"()
306   asm("nop" ::: "c8");
307 }
test_c9()308 void test_c9() {
309   // CHECK: define {{.*}}void @test_c9
310   // CHECK: call void asm sideeffect "nop", "~{c9}"()
311   asm("nop" ::: "c9");
312 }
test_c10()313 void test_c10() {
314   // CHECK: define {{.*}}void @test_c10
315   // CHECK: call void asm sideeffect "nop", "~{c10}"()
316   asm("nop" ::: "c10");
317 }
test_c11()318 void test_c11() {
319   // CHECK: define {{.*}}void @test_c11
320   // CHECK: call void asm sideeffect "nop", "~{c11}"()
321   asm("nop" ::: "c11");
322 }
test_c12()323 void test_c12() {
324   // CHECK: define {{.*}}void @test_c12
325   // CHECK: call void asm sideeffect "nop", "~{c12}"()
326   asm("nop" ::: "c12");
327 }
test_c13()328 void test_c13() {
329   // CHECK: define {{.*}}void @test_c13
330   // CHECK: call void asm sideeffect "nop", "~{c13}"()
331   asm("nop" ::: "c13");
332 }
test_c14()333 void test_c14() {
334   // CHECK: define {{.*}}void @test_c14
335   // CHECK: call void asm sideeffect "nop", "~{c14}"()
336   asm("nop" ::: "c14");
337 }
test_c15()338 void test_c15() {
339   // CHECK: define {{.*}}void @test_c15
340   // CHECK: call void asm sideeffect "nop", "~{c15}"()
341   asm("nop" ::: "c15");
342 }
test_c16()343 void test_c16() {
344   // CHECK: define {{.*}}void @test_c16
345   // CHECK: call void asm sideeffect "nop", "~{c16}"()
346   asm("nop" ::: "c16");
347 }
test_c17()348 void test_c17() {
349   // CHECK: define {{.*}}void @test_c17
350   // CHECK: call void asm sideeffect "nop", "~{c17}"()
351   asm("nop" ::: "c17");
352 }
test_c18()353 void test_c18() {
354   // CHECK: define {{.*}}void @test_c18
355   // CHECK: call void asm sideeffect "nop", "~{c18}"()
356   asm("nop" ::: "c18");
357 }
test_c19()358 void test_c19() {
359   // CHECK: define {{.*}}void @test_c19
360   // CHECK: call void asm sideeffect "nop", "~{c19}"()
361   asm("nop" ::: "c19");
362 }
test_c20()363 void test_c20() {
364   // CHECK: define {{.*}}void @test_c20
365   // CHECK: call void asm sideeffect "nop", "~{c20}"()
366   asm("nop" ::: "c20");
367 }
test_c21()368 void test_c21() {
369   // CHECK: define {{.*}}void @test_c21
370   // CHECK: call void asm sideeffect "nop", "~{c21}"()
371   asm("nop" ::: "c21");
372 }
test_c22()373 void test_c22() {
374   // CHECK: define {{.*}}void @test_c22
375   // CHECK: call void asm sideeffect "nop", "~{c22}"()
376   asm("nop" ::: "c22");
377 }
test_c23()378 void test_c23() {
379   // CHECK: define {{.*}}void @test_c23
380   // CHECK: call void asm sideeffect "nop", "~{c23}"()
381   asm("nop" ::: "c23");
382 }
test_c24()383 void test_c24() {
384   // CHECK: define {{.*}}void @test_c24
385   // CHECK: call void asm sideeffect "nop", "~{c24}"()
386   asm("nop" ::: "c24");
387 }
test_c25()388 void test_c25() {
389   // CHECK: define {{.*}}void @test_c25
390   // CHECK: call void asm sideeffect "nop", "~{c25}"()
391   asm("nop" ::: "c25");
392 }
test_c26()393 void test_c26() {
394   // CHECK: define {{.*}}void @test_c26
395   // CHECK: call void asm sideeffect "nop", "~{c26}"()
396   asm("nop" ::: "c26");
397 }
test_c27()398 void test_c27() {
399   // CHECK: define {{.*}}void @test_c27
400   // CHECK: call void asm sideeffect "nop", "~{c27}"()
401   asm("nop" ::: "c27");
402 }
test_c28()403 void test_c28() {
404   // CHECK: define {{.*}}void @test_c28
405   // CHECK: call void asm sideeffect "nop", "~{c28}"()
406   asm("nop" ::: "c28");
407 }
test_c29()408 void test_c29() {
409   // CHECK: define {{.*}}void @test_c29
410   // CHECK: call void asm sideeffect "nop", "~{c29}"()
411   asm("nop" ::: "c29");
412 }
test_c30()413 void test_c30() {
414   // CHECK: define {{.*}}void @test_c30
415   // CHECK: call void asm sideeffect "nop", "~{c30}"()
416   asm("nop" ::: "c30");
417 }
test_c31()418 void test_c31() {
419   // CHECK: define {{.*}}void @test_c31
420   // CHECK: call void asm sideeffect "nop", "~{c31}"()
421   asm("nop" ::: "c31");
422 }
test_c1_0()423 void test_c1_0() {
424   // CHECK: define {{.*}}void @test_c1_0
425   // CHECK: call void asm sideeffect "nop", "~{c1:0}"()
426   asm("nop" ::: "c1:0");
427 }
test_c3_2()428 void test_c3_2() {
429   // CHECK: define {{.*}}void @test_c3_2
430   // CHECK: call void asm sideeffect "nop", "~{c3:2}"()
431   asm("nop" ::: "c3:2");
432 }
test_c5_4()433 void test_c5_4() {
434   // CHECK: define {{.*}}void @test_c5_4
435   // CHECK: call void asm sideeffect "nop", "~{c5:4}"()
436   asm("nop" ::: "c5:4");
437 }
test_c7_6()438 void test_c7_6() {
439   // CHECK: define {{.*}}void @test_c7_6
440   // CHECK: call void asm sideeffect "nop", "~{c7:6}"()
441   asm("nop" ::: "c7:6");
442 }
test_c9_8()443 void test_c9_8() {
444   // CHECK: define {{.*}}void @test_c9_8
445   // CHECK: call void asm sideeffect "nop", "~{c9:8}"()
446   asm("nop" ::: "c9:8");
447 }
test_c11_10()448 void test_c11_10() {
449   // CHECK: define {{.*}}void @test_c11_10
450   // CHECK: call void asm sideeffect "nop", "~{c11:10}"()
451   asm("nop" ::: "c11:10");
452 }
test_c13_12()453 void test_c13_12() {
454   // CHECK: define {{.*}}void @test_c13_12
455   // CHECK: call void asm sideeffect "nop", "~{c13:12}"()
456   asm("nop" ::: "c13:12");
457 }
test_c15_14()458 void test_c15_14() {
459   // CHECK: define {{.*}}void @test_c15_14
460   // CHECK: call void asm sideeffect "nop", "~{c15:14}"()
461   asm("nop" ::: "c15:14");
462 }
test_c17_16()463 void test_c17_16() {
464   // CHECK: define {{.*}}void @test_c17_16
465   // CHECK: call void asm sideeffect "nop", "~{c17:16}"()
466   asm("nop" ::: "c17:16");
467 }
test_c19_18()468 void test_c19_18() {
469   // CHECK: define {{.*}}void @test_c19_18
470   // CHECK: call void asm sideeffect "nop", "~{c19:18}"()
471   asm("nop" ::: "c19:18");
472 }
test_c21_20()473 void test_c21_20() {
474   // CHECK: define {{.*}}void @test_c21_20
475   // CHECK: call void asm sideeffect "nop", "~{c21:20}"()
476   asm("nop" ::: "c21:20");
477 }
test_c23_22()478 void test_c23_22() {
479   // CHECK: define {{.*}}void @test_c23_22
480   // CHECK: call void asm sideeffect "nop", "~{c23:22}"()
481   asm("nop" ::: "c23:22");
482 }
test_c25_24()483 void test_c25_24() {
484   // CHECK: define {{.*}}void @test_c25_24
485   // CHECK: call void asm sideeffect "nop", "~{c25:24}"()
486   asm("nop" ::: "c25:24");
487 }
test_c27_26()488 void test_c27_26() {
489   // CHECK: define {{.*}}void @test_c27_26
490   // CHECK: call void asm sideeffect "nop", "~{c27:26}"()
491   asm("nop" ::: "c27:26");
492 }
test_c29_28()493 void test_c29_28() {
494   // CHECK: define {{.*}}void @test_c29_28
495   // CHECK: call void asm sideeffect "nop", "~{c29:28}"()
496   asm("nop" ::: "c29:28");
497 }
test_c31_30()498 void test_c31_30() {
499   // CHECK: define {{.*}}void @test_c31_30
500   // CHECK: call void asm sideeffect "nop", "~{c31:30}"()
501   asm("nop" ::: "c31:30");
502 }
test_sa0()503 void test_sa0() {
504   // CHECK: define {{.*}}void @test_sa0
505   // CHECK: call void asm sideeffect "nop", "~{sa0}"()
506   asm("nop" ::: "sa0");
507 }
test_lc0()508 void test_lc0() {
509   // CHECK: define {{.*}}void @test_lc0
510   // CHECK: call void asm sideeffect "nop", "~{lc0}"()
511   asm("nop" ::: "lc0");
512 }
test_sa1()513 void test_sa1() {
514   // CHECK: define {{.*}}void @test_sa1
515   // CHECK: call void asm sideeffect "nop", "~{sa1}"()
516   asm("nop" ::: "sa1");
517 }
test_lc1()518 void test_lc1() {
519   // CHECK: define {{.*}}void @test_lc1
520   // CHECK: call void asm sideeffect "nop", "~{lc1}"()
521   asm("nop" ::: "lc1");
522 }
test_p3_0()523 void test_p3_0() {
524   // CHECK: define {{.*}}void @test_p3_0
525   // CHECK: call void asm sideeffect "nop", "~{p3:0}"()
526   asm("nop" ::: "p3:0");
527 }
test_m0()528 void test_m0() {
529   // CHECK: define {{.*}}void @test_m0
530   // CHECK: call void asm sideeffect "nop", "~{m0}"()
531   asm("nop" ::: "m0");
532 }
test_m1()533 void test_m1() {
534   // CHECK: define {{.*}}void @test_m1
535   // CHECK: call void asm sideeffect "nop", "~{m1}"()
536   asm("nop" ::: "m1");
537 }
test_usr()538 void test_usr() {
539   // CHECK: define {{.*}}void @test_usr
540   // CHECK: call void asm sideeffect "nop", "~{usr}"()
541   asm("nop" ::: "usr");
542 }
test_pc()543 void test_pc() {
544   // CHECK: define {{.*}}void @test_pc
545   // CHECK: call void asm sideeffect "nop", "~{pc}"()
546   asm("nop" ::: "pc");
547 }
test_ugp()548 void test_ugp() {
549   // CHECK: define {{.*}}void @test_ugp
550   // CHECK: call void asm sideeffect "nop", "~{ugp}"()
551   asm("nop" ::: "ugp");
552 }
test_gp()553 void test_gp() {
554   // CHECK: define {{.*}}void @test_gp
555   // CHECK: call void asm sideeffect "nop", "~{gp}"()
556   asm("nop" ::: "gp");
557 }
test_cs0()558 void test_cs0() {
559   // CHECK: define {{.*}}void @test_cs0
560   // CHECK: call void asm sideeffect "nop", "~{cs0}"()
561   asm("nop" ::: "cs0");
562 }
test_cs1()563 void test_cs1() {
564   // CHECK: define {{.*}}void @test_cs1
565   // CHECK: call void asm sideeffect "nop", "~{cs1}"()
566   asm("nop" ::: "cs1");
567 }
test_upcyclelo()568 void test_upcyclelo() {
569   // CHECK: define {{.*}}void @test_upcyclelo
570   // CHECK: call void asm sideeffect "nop", "~{upcyclelo}"()
571   asm("nop" ::: "upcyclelo");
572 }
test_upcyclehi()573 void test_upcyclehi() {
574   // CHECK: define {{.*}}void @test_upcyclehi
575   // CHECK: call void asm sideeffect "nop", "~{upcyclehi}"()
576   asm("nop" ::: "upcyclehi");
577 }
test_framelimit()578 void test_framelimit() {
579   // CHECK: define {{.*}}void @test_framelimit
580   // CHECK: call void asm sideeffect "nop", "~{framelimit}"()
581   asm("nop" ::: "framelimit");
582 }
test_framekey()583 void test_framekey() {
584   // CHECK: define {{.*}}void @test_framekey
585   // CHECK: call void asm sideeffect "nop", "~{framekey}"()
586   asm("nop" ::: "framekey");
587 }
test_pktcountlo()588 void test_pktcountlo() {
589   // CHECK: define {{.*}}void @test_pktcountlo
590   // CHECK: call void asm sideeffect "nop", "~{pktcountlo}"()
591   asm("nop" ::: "pktcountlo");
592 }
test_pktcounthi()593 void test_pktcounthi() {
594   // CHECK: define {{.*}}void @test_pktcounthi
595   // CHECK: call void asm sideeffect "nop", "~{pktcounthi}"()
596   asm("nop" ::: "pktcounthi");
597 }
test_utimerlo()598 void test_utimerlo() {
599   // CHECK: define {{.*}}void @test_utimerlo
600   // CHECK: call void asm sideeffect "nop", "~{utimerlo}"()
601   asm("nop" ::: "utimerlo");
602 }
test_utimerhi()603 void test_utimerhi() {
604   // CHECK: define {{.*}}void @test_utimerhi
605   // CHECK: call void asm sideeffect "nop", "~{utimerhi}"()
606   asm("nop" ::: "utimerhi");
607 }
test_upcycle()608 void test_upcycle() {
609   // CHECK: define {{.*}}void @test_upcycle
610   // CHECK: call void asm sideeffect "nop", "~{upcycle}"()
611   asm("nop" ::: "upcycle");
612 }
test_pktcount()613 void test_pktcount() {
614   // CHECK: define {{.*}}void @test_pktcount
615   // CHECK: call void asm sideeffect "nop", "~{pktcount}"()
616   asm("nop" ::: "pktcount");
617 }
test_utimer()618 void test_utimer() {
619   // CHECK: define {{.*}}void @test_utimer
620   // CHECK: call void asm sideeffect "nop", "~{utimer}"()
621   asm("nop" ::: "utimer");
622 }
test_v0()623 void test_v0() {
624   // CHECK: define {{.*}}void @test_v0
625   // CHECK: call void asm sideeffect "nop", "~{v0}"()
626   asm("nop" ::: "v0");
627 }
test_v1()628 void test_v1() {
629   // CHECK: define {{.*}}void @test_v1
630   // CHECK: call void asm sideeffect "nop", "~{v1}"()
631   asm("nop" ::: "v1");
632 }
test_v2()633 void test_v2() {
634   // CHECK: define {{.*}}void @test_v2
635   // CHECK: call void asm sideeffect "nop", "~{v2}"()
636   asm("nop" ::: "v2");
637 }
test_v3()638 void test_v3() {
639   // CHECK: define {{.*}}void @test_v3
640   // CHECK: call void asm sideeffect "nop", "~{v3}"()
641   asm("nop" ::: "v3");
642 }
test_v4()643 void test_v4() {
644   // CHECK: define {{.*}}void @test_v4
645   // CHECK: call void asm sideeffect "nop", "~{v4}"()
646   asm("nop" ::: "v4");
647 }
test_v5()648 void test_v5() {
649   // CHECK: define {{.*}}void @test_v5
650   // CHECK: call void asm sideeffect "nop", "~{v5}"()
651   asm("nop" ::: "v5");
652 }
test_v6()653 void test_v6() {
654   // CHECK: define {{.*}}void @test_v6
655   // CHECK: call void asm sideeffect "nop", "~{v6}"()
656   asm("nop" ::: "v6");
657 }
test_v7()658 void test_v7() {
659   // CHECK: define {{.*}}void @test_v7
660   // CHECK: call void asm sideeffect "nop", "~{v7}"()
661   asm("nop" ::: "v7");
662 }
test_v8()663 void test_v8() {
664   // CHECK: define {{.*}}void @test_v8
665   // CHECK: call void asm sideeffect "nop", "~{v8}"()
666   asm("nop" ::: "v8");
667 }
test_v9()668 void test_v9() {
669   // CHECK: define {{.*}}void @test_v9
670   // CHECK: call void asm sideeffect "nop", "~{v9}"()
671   asm("nop" ::: "v9");
672 }
test_v10()673 void test_v10() {
674   // CHECK: define {{.*}}void @test_v10
675   // CHECK: call void asm sideeffect "nop", "~{v10}"()
676   asm("nop" ::: "v10");
677 }
test_v11()678 void test_v11() {
679   // CHECK: define {{.*}}void @test_v11
680   // CHECK: call void asm sideeffect "nop", "~{v11}"()
681   asm("nop" ::: "v11");
682 }
test_v12()683 void test_v12() {
684   // CHECK: define {{.*}}void @test_v12
685   // CHECK: call void asm sideeffect "nop", "~{v12}"()
686   asm("nop" ::: "v12");
687 }
test_v13()688 void test_v13() {
689   // CHECK: define {{.*}}void @test_v13
690   // CHECK: call void asm sideeffect "nop", "~{v13}"()
691   asm("nop" ::: "v13");
692 }
test_v14()693 void test_v14() {
694   // CHECK: define {{.*}}void @test_v14
695   // CHECK: call void asm sideeffect "nop", "~{v14}"()
696   asm("nop" ::: "v14");
697 }
test_v15()698 void test_v15() {
699   // CHECK: define {{.*}}void @test_v15
700   // CHECK: call void asm sideeffect "nop", "~{v15}"()
701   asm("nop" ::: "v15");
702 }
test_v16()703 void test_v16() {
704   // CHECK: define {{.*}}void @test_v16
705   // CHECK: call void asm sideeffect "nop", "~{v16}"()
706   asm("nop" ::: "v16");
707 }
test_v17()708 void test_v17() {
709   // CHECK: define {{.*}}void @test_v17
710   // CHECK: call void asm sideeffect "nop", "~{v17}"()
711   asm("nop" ::: "v17");
712 }
test_v18()713 void test_v18() {
714   // CHECK: define {{.*}}void @test_v18
715   // CHECK: call void asm sideeffect "nop", "~{v18}"()
716   asm("nop" ::: "v18");
717 }
test_v19()718 void test_v19() {
719   // CHECK: define {{.*}}void @test_v19
720   // CHECK: call void asm sideeffect "nop", "~{v19}"()
721   asm("nop" ::: "v19");
722 }
test_v20()723 void test_v20() {
724   // CHECK: define {{.*}}void @test_v20
725   // CHECK: call void asm sideeffect "nop", "~{v20}"()
726   asm("nop" ::: "v20");
727 }
test_v21()728 void test_v21() {
729   // CHECK: define {{.*}}void @test_v21
730   // CHECK: call void asm sideeffect "nop", "~{v21}"()
731   asm("nop" ::: "v21");
732 }
test_v22()733 void test_v22() {
734   // CHECK: define {{.*}}void @test_v22
735   // CHECK: call void asm sideeffect "nop", "~{v22}"()
736   asm("nop" ::: "v22");
737 }
test_v23()738 void test_v23() {
739   // CHECK: define {{.*}}void @test_v23
740   // CHECK: call void asm sideeffect "nop", "~{v23}"()
741   asm("nop" ::: "v23");
742 }
test_v24()743 void test_v24() {
744   // CHECK: define {{.*}}void @test_v24
745   // CHECK: call void asm sideeffect "nop", "~{v24}"()
746   asm("nop" ::: "v24");
747 }
test_v25()748 void test_v25() {
749   // CHECK: define {{.*}}void @test_v25
750   // CHECK: call void asm sideeffect "nop", "~{v25}"()
751   asm("nop" ::: "v25");
752 }
test_v26()753 void test_v26() {
754   // CHECK: define {{.*}}void @test_v26
755   // CHECK: call void asm sideeffect "nop", "~{v26}"()
756   asm("nop" ::: "v26");
757 }
test_v27()758 void test_v27() {
759   // CHECK: define {{.*}}void @test_v27
760   // CHECK: call void asm sideeffect "nop", "~{v27}"()
761   asm("nop" ::: "v27");
762 }
test_v28()763 void test_v28() {
764   // CHECK: define {{.*}}void @test_v28
765   // CHECK: call void asm sideeffect "nop", "~{v28}"()
766   asm("nop" ::: "v28");
767 }
test_v29()768 void test_v29() {
769   // CHECK: define {{.*}}void @test_v29
770   // CHECK: call void asm sideeffect "nop", "~{v29}"()
771   asm("nop" ::: "v29");
772 }
test_v30()773 void test_v30() {
774   // CHECK: define {{.*}}void @test_v30
775   // CHECK: call void asm sideeffect "nop", "~{v30}"()
776   asm("nop" ::: "v30");
777 }
test_v31()778 void test_v31() {
779   // CHECK: define {{.*}}void @test_v31
780   // CHECK: call void asm sideeffect "nop", "~{v31}"()
781   asm("nop" ::: "v31");
782 }
test_v1_0()783 void test_v1_0() {
784   // CHECK: define {{.*}}void @test_v1_0
785   // CHECK: call void asm sideeffect "nop", "~{v1:0}"()
786   asm("nop" ::: "v1:0");
787 }
test_v3_2()788 void test_v3_2() {
789   // CHECK: define {{.*}}void @test_v3_2
790   // CHECK: call void asm sideeffect "nop", "~{v3:2}"()
791   asm("nop" ::: "v3:2");
792 }
test_v5_4()793 void test_v5_4() {
794   // CHECK: define {{.*}}void @test_v5_4
795   // CHECK: call void asm sideeffect "nop", "~{v5:4}"()
796   asm("nop" ::: "v5:4");
797 }
test_v7_6()798 void test_v7_6() {
799   // CHECK: define {{.*}}void @test_v7_6
800   // CHECK: call void asm sideeffect "nop", "~{v7:6}"()
801   asm("nop" ::: "v7:6");
802 }
test_v9_8()803 void test_v9_8() {
804   // CHECK: define {{.*}}void @test_v9_8
805   // CHECK: call void asm sideeffect "nop", "~{v9:8}"()
806   asm("nop" ::: "v9:8");
807 }
test_v11_10()808 void test_v11_10() {
809   // CHECK: define {{.*}}void @test_v11_10
810   // CHECK: call void asm sideeffect "nop", "~{v11:10}"()
811   asm("nop" ::: "v11:10");
812 }
test_v13_12()813 void test_v13_12() {
814   // CHECK: define {{.*}}void @test_v13_12
815   // CHECK: call void asm sideeffect "nop", "~{v13:12}"()
816   asm("nop" ::: "v13:12");
817 }
test_v15_14()818 void test_v15_14() {
819   // CHECK: define {{.*}}void @test_v15_14
820   // CHECK: call void asm sideeffect "nop", "~{v15:14}"()
821   asm("nop" ::: "v15:14");
822 }
test_v17_16()823 void test_v17_16() {
824   // CHECK: define {{.*}}void @test_v17_16
825   // CHECK: call void asm sideeffect "nop", "~{v17:16}"()
826   asm("nop" ::: "v17:16");
827 }
test_v19_18()828 void test_v19_18() {
829   // CHECK: define {{.*}}void @test_v19_18
830   // CHECK: call void asm sideeffect "nop", "~{v19:18}"()
831   asm("nop" ::: "v19:18");
832 }
test_v21_20()833 void test_v21_20() {
834   // CHECK: define {{.*}}void @test_v21_20
835   // CHECK: call void asm sideeffect "nop", "~{v21:20}"()
836   asm("nop" ::: "v21:20");
837 }
test_v23_22()838 void test_v23_22() {
839   // CHECK: define {{.*}}void @test_v23_22
840   // CHECK: call void asm sideeffect "nop", "~{v23:22}"()
841   asm("nop" ::: "v23:22");
842 }
test_v25_24()843 void test_v25_24() {
844   // CHECK: define {{.*}}void @test_v25_24
845   // CHECK: call void asm sideeffect "nop", "~{v25:24}"()
846   asm("nop" ::: "v25:24");
847 }
test_v27_26()848 void test_v27_26() {
849   // CHECK: define {{.*}}void @test_v27_26
850   // CHECK: call void asm sideeffect "nop", "~{v27:26}"()
851   asm("nop" ::: "v27:26");
852 }
test_v29_28()853 void test_v29_28() {
854   // CHECK: define {{.*}}void @test_v29_28
855   // CHECK: call void asm sideeffect "nop", "~{v29:28}"()
856   asm("nop" ::: "v29:28");
857 }
test_v31_30()858 void test_v31_30() {
859   // CHECK: define {{.*}}void @test_v31_30
860   // CHECK: call void asm sideeffect "nop", "~{v31:30}"()
861   asm("nop" ::: "v31:30");
862 }
test_v3_0()863 void test_v3_0() {
864   // CHECK: define {{.*}}void @test_v3_0
865   // CHECK: call void asm sideeffect "nop", "~{v3:0}"()
866   asm("nop" ::: "v3:0");
867 }
test_v7_4()868 void test_v7_4() {
869   // CHECK: define {{.*}}void @test_v7_4
870   // CHECK: call void asm sideeffect "nop", "~{v7:4}"()
871   asm("nop" ::: "v7:4");
872 }
test_v11_8()873 void test_v11_8() {
874   // CHECK: define {{.*}}void @test_v11_8
875   // CHECK: call void asm sideeffect "nop", "~{v11:8}"()
876   asm("nop" ::: "v11:8");
877 }
test_v15_12()878 void test_v15_12() {
879   // CHECK: define {{.*}}void @test_v15_12
880   // CHECK: call void asm sideeffect "nop", "~{v15:12}"()
881   asm("nop" ::: "v15:12");
882 }
test_v19_16()883 void test_v19_16() {
884   // CHECK: define {{.*}}void @test_v19_16
885   // CHECK: call void asm sideeffect "nop", "~{v19:16}"()
886   asm("nop" ::: "v19:16");
887 }
test_v23_20()888 void test_v23_20() {
889   // CHECK: define {{.*}}void @test_v23_20
890   // CHECK: call void asm sideeffect "nop", "~{v23:20}"()
891   asm("nop" ::: "v23:20");
892 }
test_v27_24()893 void test_v27_24() {
894   // CHECK: define {{.*}}void @test_v27_24
895   // CHECK: call void asm sideeffect "nop", "~{v27:24}"()
896   asm("nop" ::: "v27:24");
897 }
test_v31_28()898 void test_v31_28() {
899   // CHECK: define {{.*}}void @test_v31_28
900   // CHECK: call void asm sideeffect "nop", "~{v31:28}"()
901   asm("nop" ::: "v31:28");
902 }
test_q0()903 void test_q0() {
904   // CHECK: define {{.*}}void @test_q0
905   // CHECK: call void asm sideeffect "nop", "~{q0}"()
906   asm("nop" ::: "q0");
907 }
test_q1()908 void test_q1() {
909   // CHECK: define {{.*}}void @test_q1
910   // CHECK: call void asm sideeffect "nop", "~{q1}"()
911   asm("nop" ::: "q1");
912 }
test_q2()913 void test_q2() {
914   // CHECK: define {{.*}}void @test_q2
915   // CHECK: call void asm sideeffect "nop", "~{q2}"()
916   asm("nop" ::: "q2");
917 }
test_q3()918 void test_q3() {
919   // CHECK: define {{.*}}void @test_q3
920   // CHECK: call void asm sideeffect "nop", "~{q3}"()
921   asm("nop" ::: "q3");
922 }
923