1 /* { dg-do compile } */
2 /* { dg-additional-options "-O -msve-vector-bits=256" } */
3 /* { dg-final { check-function-bodies "**" "" } } */
4 
5 #include <arm_sve.h>
6 
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10 
11 /*
12 ** cntd_pow2:
13 **	mov	x0, #?4
14 **	ret
15 */
cntd_pow2()16 uint64_t cntd_pow2 () { return svcntd_pat (SV_POW2); }
17 
18 /*
19 ** cntd_vl1:
20 **	mov	x0, #?1
21 **	ret
22 */
cntd_vl1()23 uint64_t cntd_vl1 () { return svcntd_pat (SV_VL1); }
24 
25 /*
26 ** cntd_vl2:
27 **	mov	x0, #?2
28 **	ret
29 */
cntd_vl2()30 uint64_t cntd_vl2 () { return svcntd_pat (SV_VL2); }
31 
32 /*
33 ** cntd_vl3:
34 **	mov	x0, #?3
35 **	ret
36 */
cntd_vl3()37 uint64_t cntd_vl3 () { return svcntd_pat (SV_VL3); }
38 
39 /*
40 ** cntd_vl4:
41 **	mov	x0, #?4
42 **	ret
43 */
cntd_vl4()44 uint64_t cntd_vl4 () { return svcntd_pat (SV_VL4); }
45 
46 /*
47 ** cntd_vl5:
48 **	mov	x0, #?0
49 **	ret
50 */
cntd_vl5()51 uint64_t cntd_vl5 () { return svcntd_pat (SV_VL5); }
52 
53 /*
54 ** cntd_vl6:
55 **	mov	x0, #?0
56 **	ret
57 */
cntd_vl6()58 uint64_t cntd_vl6 () { return svcntd_pat (SV_VL6); }
59 
60 /*
61 ** cntd_vl7:
62 **	mov	x0, #?0
63 **	ret
64 */
cntd_vl7()65 uint64_t cntd_vl7 () { return svcntd_pat (SV_VL7); }
66 
67 /*
68 ** cntd_vl8:
69 **	mov	x0, #?0
70 **	ret
71 */
cntd_vl8()72 uint64_t cntd_vl8 () { return svcntd_pat (SV_VL8); }
73 
74 /*
75 ** cntd_vl16:
76 **	mov	x0, #?0
77 **	ret
78 */
cntd_vl16()79 uint64_t cntd_vl16 () { return svcntd_pat (SV_VL16); }
80 
81 /*
82 ** cntd_vl32:
83 **	mov	x0, #?0
84 **	ret
85 */
cntd_vl32()86 uint64_t cntd_vl32 () { return svcntd_pat (SV_VL32); }
87 
88 /*
89 ** cntd_vl64:
90 **	mov	x0, #?0
91 **	ret
92 */
cntd_vl64()93 uint64_t cntd_vl64 () { return svcntd_pat (SV_VL64); }
94 
95 /*
96 ** cntd_vl128:
97 **	mov	x0, #?0
98 **	ret
99 */
cntd_vl128()100 uint64_t cntd_vl128 () { return svcntd_pat (SV_VL128); }
101 
102 /*
103 ** cntd_vl256:
104 **	mov	x0, #?0
105 **	ret
106 */
cntd_vl256()107 uint64_t cntd_vl256 () { return svcntd_pat (SV_VL256); }
108 
109 /*
110 ** cntd_mul3:
111 **	mov	x0, #?3
112 **	ret
113 */
cntd_mul3()114 uint64_t cntd_mul3 () { return svcntd_pat (SV_MUL3); }
115 
116 /*
117 ** cntd_mul4:
118 **	mov	x0, #?4
119 **	ret
120 */
cntd_mul4()121 uint64_t cntd_mul4 () { return svcntd_pat (SV_MUL4); }
122 
123 /*
124 ** cntd_all:
125 **	mov	x0, #?4
126 **	ret
127 */
cntd_all()128 uint64_t cntd_all () { return svcntd_pat (SV_ALL); }
129 
130 #ifdef __cplusplus
131 }
132 #endif
133