[PR testsuite/116860] Testsuite adjustment for recently added tests
[official-gcc.git] / gcc / config / aarch64 / aarch64-sve-builtins-sve2.h
blob6d7d0af26416c5ac4e343db43295ff93def8e5b5
1 /* ACLE support for AArch64 SVE (__ARM_FEATURE_SVE intrinsics)
2 Copyright (C) 2020-2025 Free Software Foundation, Inc.
4 This file is part of GCC.
6 GCC is free software; you can redistribute it and/or modify it
7 under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3, or (at your option)
9 any later version.
11 GCC is distributed in the hope that it will be useful, but
12 WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with GCC; see the file COPYING3. If not see
18 <http://www.gnu.org/licenses/>. */
20 #ifndef GCC_AARCH64_SVE_BUILTINS_SVE2_H
21 #define GCC_AARCH64_SVE_BUILTINS_SVE2_H
23 namespace aarch64_sve
25 namespace functions
27 extern const function_base *const svaba;
28 extern const function_base *const svabalb;
29 extern const function_base *const svabalt;
30 extern const function_base *const svabdlb;
31 extern const function_base *const svabdlt;
32 extern const function_base *const svadalp;
33 extern const function_base *const svadclb;
34 extern const function_base *const svadclt;
35 extern const function_base *const svaddhnb;
36 extern const function_base *const svaddhnt;
37 extern const function_base *const svaddlb;
38 extern const function_base *const svaddlbt;
39 extern const function_base *const svaddlt;
40 extern const function_base *const svaddp;
41 extern const function_base *const svaddqv;
42 extern const function_base *const svaddwb;
43 extern const function_base *const svaddwt;
44 extern const function_base *const svaesd;
45 extern const function_base *const svaese;
46 extern const function_base *const svaesimc;
47 extern const function_base *const svaesmc;
48 extern const function_base *const svandqv;
49 extern const function_base *const svbcax;
50 extern const function_base *const svbdep;
51 extern const function_base *const svbext;
52 extern const function_base *const svbfmlslb;
53 extern const function_base *const svbfmlslb_lane;
54 extern const function_base *const svbfmlslt;
55 extern const function_base *const svbfmlslt_lane;
56 extern const function_base *const svbgrp;
57 extern const function_base *const svbsl;
58 extern const function_base *const svbsl1n;
59 extern const function_base *const svbsl2n;
60 extern const function_base *const svcdot;
61 extern const function_base *const svcdot_lane;
62 extern const function_base *const svclamp;
63 extern const function_base *const svcntp;
64 extern const function_base *const svcvt1;
65 extern const function_base *const svcvt2;
66 extern const function_base *const svcvtl;
67 extern const function_base *const svcvtlt;
68 extern const function_base *const svcvtlt1;
69 extern const function_base *const svcvtlt2;
70 extern const function_base *const svcvtn;
71 extern const function_base *const svcvtnb;
72 extern const function_base *const svcvtnt;
73 extern const function_base *const svcvtx;
74 extern const function_base *const svcvtxnt;
75 extern const function_base *const svdup_laneq;
76 extern const function_base *const sveor3;
77 extern const function_base *const sveorbt;
78 extern const function_base *const sveorqv;
79 extern const function_base *const sveortb;
80 extern const function_base *const svextq;
81 extern const function_base *const svhadd;
82 extern const function_base *const svhistcnt;
83 extern const function_base *const svhistseg;
84 extern const function_base *const svhsub;
85 extern const function_base *const svhsubr;
86 extern const function_base *const svld1q_gather;
87 extern const function_base *const svld1udq;
88 extern const function_base *const svld1uwq;
89 extern const function_base *const svld2q;
90 extern const function_base *const svld3q;
91 extern const function_base *const svld4q;
92 extern const function_base *const svldnt1_gather;
93 extern const function_base *const svldnt1sb_gather;
94 extern const function_base *const svldnt1sh_gather;
95 extern const function_base *const svldnt1sw_gather;
96 extern const function_base *const svldnt1ub_gather;
97 extern const function_base *const svldnt1uh_gather;
98 extern const function_base *const svldnt1uw_gather;
99 extern const function_base *const svlogb;
100 extern const function_base *const svmatch;
101 extern const function_base *const svmaxnmp;
102 extern const function_base *const svmaxnmqv;
103 extern const function_base *const svmaxp;
104 extern const function_base *const svmaxqv;
105 extern const function_base *const svminnmp;
106 extern const function_base *const svminnmqv;
107 extern const function_base *const svminp;
108 extern const function_base *const svminqv;
109 extern const function_base *const svmlalb;
110 extern const function_base *const svmlalb_lane;
111 extern const function_base *const svmlallbb_lane;
112 extern const function_base *const svmlallbb;
113 extern const function_base *const svmlallbt_lane;
114 extern const function_base *const svmlallbt;
115 extern const function_base *const svmlalltb_lane;
116 extern const function_base *const svmlalltb;
117 extern const function_base *const svmlalltt_lane;
118 extern const function_base *const svmlalltt;
119 extern const function_base *const svmlalt;
120 extern const function_base *const svmlalt_lane;
121 extern const function_base *const svmlslb;
122 extern const function_base *const svmlslb_lane;
123 extern const function_base *const svmlslt;
124 extern const function_base *const svmlslt_lane;
125 extern const function_base *const svmovlb;
126 extern const function_base *const svmovlt;
127 extern const function_base *const svmullb;
128 extern const function_base *const svmullb_lane;
129 extern const function_base *const svmullt;
130 extern const function_base *const svmullt_lane;
131 extern const function_base *const svnbsl;
132 extern const function_base *const svnmatch;
133 extern const function_base *const svorqv;
134 extern const function_base *const svpext_lane;
135 extern const function_base *const svpmov;
136 extern const function_base *const svpmov_lane;
137 extern const function_base *const svpmul;
138 extern const function_base *const svpmullb;
139 extern const function_base *const svpmullb_pair;
140 extern const function_base *const svpmullt;
141 extern const function_base *const svpmullt_pair;
142 extern const function_base *const svpsel_lane;
143 extern const function_base *const svqabs;
144 extern const function_base *const svqcadd;
145 extern const function_base *const svqcvt;
146 extern const function_base *const svqcvtn;
147 extern const function_base *const svqdmlalb;
148 extern const function_base *const svqdmlalb_lane;
149 extern const function_base *const svqdmlalbt;
150 extern const function_base *const svqdmlalt;
151 extern const function_base *const svqdmlalt_lane;
152 extern const function_base *const svqdmlslb;
153 extern const function_base *const svqdmlslb_lane;
154 extern const function_base *const svqdmlslbt;
155 extern const function_base *const svqdmlslt;
156 extern const function_base *const svqdmlslt_lane;
157 extern const function_base *const svqdmulh;
158 extern const function_base *const svqdmulh_lane;
159 extern const function_base *const svqdmullb;
160 extern const function_base *const svqdmullb_lane;
161 extern const function_base *const svqdmullt;
162 extern const function_base *const svqdmullt_lane;
163 extern const function_base *const svqneg;
164 extern const function_base *const svqrdcmlah;
165 extern const function_base *const svqrdcmlah_lane;
166 extern const function_base *const svqrdmlah;
167 extern const function_base *const svqrdmlah_lane;
168 extern const function_base *const svqrdmlsh;
169 extern const function_base *const svqrdmlsh_lane;
170 extern const function_base *const svqrdmulh;
171 extern const function_base *const svqrdmulh_lane;
172 extern const function_base *const svqrshl;
173 extern const function_base *const svqrshr;
174 extern const function_base *const svqrshrn;
175 extern const function_base *const svqrshrnb;
176 extern const function_base *const svqrshrnt;
177 extern const function_base *const svqrshru;
178 extern const function_base *const svqrshrun;
179 extern const function_base *const svqrshrunb;
180 extern const function_base *const svqrshrunt;
181 extern const function_base *const svqshl;
182 extern const function_base *const svqshlu;
183 extern const function_base *const svqshrnb;
184 extern const function_base *const svqshrnt;
185 extern const function_base *const svqshrunb;
186 extern const function_base *const svqshrunt;
187 extern const function_base *const svqsubr;
188 extern const function_base *const svqxtnb;
189 extern const function_base *const svqxtnt;
190 extern const function_base *const svqxtunb;
191 extern const function_base *const svqxtunt;
192 extern const function_base *const svraddhnb;
193 extern const function_base *const svraddhnt;
194 extern const function_base *const svrax1;
195 extern const function_base *const svrevd;
196 extern const function_base *const svrhadd;
197 extern const function_base *const svrshl;
198 extern const function_base *const svrshr;
199 extern const function_base *const svrshrnb;
200 extern const function_base *const svrshrnt;
201 extern const function_base *const svrsra;
202 extern const function_base *const svrsubhnb;
203 extern const function_base *const svrsubhnt;
204 extern const function_base *const svsbclb;
205 extern const function_base *const svsbclt;
206 extern const function_base *const svshllb;
207 extern const function_base *const svshllt;
208 extern const function_base *const svshrnb;
209 extern const function_base *const svshrnt;
210 extern const function_base *const svsli;
211 extern const function_base *const svsm4e;
212 extern const function_base *const svsm4ekey;
213 extern const function_base *const svsqadd;
214 extern const function_base *const svsra;
215 extern const function_base *const svsri;
216 extern const function_base *const svst1dq;
217 extern const function_base *const svst1q_scatter;
218 extern const function_base *const svst1wq;
219 extern const function_base *const svst2q;
220 extern const function_base *const svst3q;
221 extern const function_base *const svst4q;
222 extern const function_base *const svstnt1_scatter;
223 extern const function_base *const svstnt1b_scatter;
224 extern const function_base *const svstnt1h_scatter;
225 extern const function_base *const svstnt1w_scatter;
226 extern const function_base *const svsubhnb;
227 extern const function_base *const svsubhnt;
228 extern const function_base *const svsublb;
229 extern const function_base *const svsublbt;
230 extern const function_base *const svsublt;
231 extern const function_base *const svsubltb;
232 extern const function_base *const svsubwb;
233 extern const function_base *const svsubwt;
234 extern const function_base *const svtbl2;
235 extern const function_base *const svtblq;
236 extern const function_base *const svtbx;
237 extern const function_base *const svtbxq;
238 extern const function_base *const svunpk;
239 extern const function_base *const svuqadd;
240 extern const function_base *const svuzp;
241 extern const function_base *const svuzpq;
242 extern const function_base *const svuzpq1;
243 extern const function_base *const svuzpq2;
244 extern const function_base *const svwhilege;
245 extern const function_base *const svwhilegt;
246 extern const function_base *const svwhilerw;
247 extern const function_base *const svwhilewr;
248 extern const function_base *const svxar;
249 extern const function_base *const svzip;
250 extern const function_base *const svzipq;
251 extern const function_base *const svzipq1;
252 extern const function_base *const svzipq2;
253 extern const function_base *const svluti2_lane;
254 extern const function_base *const svluti4_lane;
258 #endif