]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/aarch64/aarch64-sve-builtins-base.def
Update copyright years.
[thirdparty/gcc.git] / gcc / config / aarch64 / aarch64-sve-builtins-base.def
CommitLineData
624d0f07 1/* ACLE support for AArch64 SVE (__ARM_FEATURE_SVE intrinsics)
99dee823 2 Copyright (C) 2018-2021 Free Software Foundation, Inc.
624d0f07
RS
3
4 This file is part of GCC.
5
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.
10
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.
15
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/>. */
19
20#define REQUIRED_EXTENSIONS 0
02fcd8ac 21DEF_SVE_FUNCTION (svabd, binary_opt_n, all_arith, mxz)
624d0f07
RS
22DEF_SVE_FUNCTION (svabs, unary, all_float_and_signed, mxz)
23DEF_SVE_FUNCTION (svacge, compare_opt_n, all_float, implicit)
24DEF_SVE_FUNCTION (svacgt, compare_opt_n, all_float, implicit)
25DEF_SVE_FUNCTION (svacle, compare_opt_n, all_float, implicit)
26DEF_SVE_FUNCTION (svaclt, compare_opt_n, all_float, implicit)
02fcd8ac 27DEF_SVE_FUNCTION (svadd, binary_opt_n, all_arith, mxz)
624d0f07 28DEF_SVE_FUNCTION (svadda, fold_left, all_float, implicit)
02fcd8ac 29DEF_SVE_FUNCTION (svaddv, reduction_wide, all_arith, implicit)
624d0f07
RS
30DEF_SVE_FUNCTION (svadrb, adr_offset, none, none)
31DEF_SVE_FUNCTION (svadrd, adr_index, none, none)
32DEF_SVE_FUNCTION (svadrh, adr_index, none, none)
33DEF_SVE_FUNCTION (svadrw, adr_index, none, none)
34DEF_SVE_FUNCTION (svand, binary_opt_n, all_integer, mxz)
35DEF_SVE_FUNCTION (svand, binary_opt_n, b, z)
36DEF_SVE_FUNCTION (svandv, reduction, all_integer, implicit)
37DEF_SVE_FUNCTION (svasr, binary_uint_opt_n, all_signed, mxz)
38DEF_SVE_FUNCTION (svasr_wide, binary_uint64_opt_n, bhs_signed, mxz)
39DEF_SVE_FUNCTION (svasrd, shift_right_imm, all_signed, mxz)
40DEF_SVE_FUNCTION (svbic, binary_opt_n, all_integer, mxz)
41DEF_SVE_FUNCTION (svbic, binary_opt_n, b, z)
42DEF_SVE_FUNCTION (svbrka, unary, b, mz)
43DEF_SVE_FUNCTION (svbrkb, unary, b, mz)
44DEF_SVE_FUNCTION (svbrkn, binary, b, z)
45DEF_SVE_FUNCTION (svbrkpa, binary, b, z)
46DEF_SVE_FUNCTION (svbrkpb, binary, b, z)
47DEF_SVE_FUNCTION (svcadd, binary_rotate, all_float, mxz)
48DEF_SVE_FUNCTION (svclasta, clast, all_data, implicit)
49DEF_SVE_FUNCTION (svclastb, clast, all_data, implicit)
5b052959
RS
50DEF_SVE_FUNCTION (svcls, unary_to_uint, all_signed, mxz)
51DEF_SVE_FUNCTION (svclz, unary_to_uint, all_integer, mxz)
624d0f07
RS
52DEF_SVE_FUNCTION (svcmla, ternary_rotate, all_float, mxz)
53DEF_SVE_FUNCTION (svcmla_lane, ternary_lane_rotate, hs_float, none)
02fcd8ac 54DEF_SVE_FUNCTION (svcmpeq, compare_opt_n, all_arith, implicit)
624d0f07 55DEF_SVE_FUNCTION (svcmpeq_wide, compare_wide_opt_n, bhs_signed, implicit)
02fcd8ac 56DEF_SVE_FUNCTION (svcmpge, compare_opt_n, all_arith, implicit)
624d0f07 57DEF_SVE_FUNCTION (svcmpge_wide, compare_wide_opt_n, bhs_integer, implicit)
02fcd8ac 58DEF_SVE_FUNCTION (svcmpgt, compare_opt_n, all_arith, implicit)
624d0f07 59DEF_SVE_FUNCTION (svcmpgt_wide, compare_wide_opt_n, bhs_integer, implicit)
02fcd8ac 60DEF_SVE_FUNCTION (svcmple, compare_opt_n, all_arith, implicit)
624d0f07 61DEF_SVE_FUNCTION (svcmple_wide, compare_wide_opt_n, bhs_integer, implicit)
02fcd8ac 62DEF_SVE_FUNCTION (svcmplt, compare_opt_n, all_arith, implicit)
624d0f07 63DEF_SVE_FUNCTION (svcmplt_wide, compare_wide_opt_n, bhs_integer, implicit)
02fcd8ac 64DEF_SVE_FUNCTION (svcmpne, compare_opt_n, all_arith, implicit)
624d0f07
RS
65DEF_SVE_FUNCTION (svcmpne_wide, compare_wide_opt_n, bhs_signed, implicit)
66DEF_SVE_FUNCTION (svcmpuo, compare_opt_n, all_float, implicit)
67DEF_SVE_FUNCTION (svcnot, unary, all_integer, mxz)
5b052959 68DEF_SVE_FUNCTION (svcnt, unary_to_uint, all_data, mxz)
624d0f07
RS
69DEF_SVE_FUNCTION (svcntb, count_inherent, none, none)
70DEF_SVE_FUNCTION (svcntb_pat, count_pat, none, none)
71DEF_SVE_FUNCTION (svcntd, count_inherent, none, none)
72DEF_SVE_FUNCTION (svcntd_pat, count_pat, none, none)
73DEF_SVE_FUNCTION (svcnth, count_inherent, none, none)
74DEF_SVE_FUNCTION (svcnth_pat, count_pat, none, none)
75DEF_SVE_FUNCTION (svcntp, count_pred, all_pred, implicit)
76DEF_SVE_FUNCTION (svcntw, count_inherent, none, none)
77DEF_SVE_FUNCTION (svcntw_pat, count_pat, none, none)
78DEF_SVE_FUNCTION (svcompact, unary, sd_data, implicit)
79DEF_SVE_FUNCTION (svcreate2, create, all_data, none)
80DEF_SVE_FUNCTION (svcreate3, create, all_data, none)
81DEF_SVE_FUNCTION (svcreate4, create, all_data, none)
82DEF_SVE_FUNCTION (svcvt, unary_convert, cvt, mxz)
83DEF_SVE_FUNCTION (svdiv, binary_opt_n, all_float_and_sd_integer, mxz)
84DEF_SVE_FUNCTION (svdivr, binary_opt_n, all_float_and_sd_integer, mxz)
85DEF_SVE_FUNCTION (svdot, ternary_qq_opt_n, sd_integer, none)
86DEF_SVE_FUNCTION (svdot_lane, ternary_qq_lane, sd_integer, none)
87DEF_SVE_FUNCTION (svdup, unary_n, all_data, mxz_or_none)
88DEF_SVE_FUNCTION (svdup, unary_n, all_pred, none)
89DEF_SVE_FUNCTION (svdup_lane, binary_uint_n, all_data, none)
90DEF_SVE_FUNCTION (svdupq, dupq, all_data, none)
91DEF_SVE_FUNCTION (svdupq, dupq, all_pred, none)
92DEF_SVE_FUNCTION (svdupq_lane, binary_uint64_n, all_data, none)
93DEF_SVE_FUNCTION (sveor, binary_opt_n, all_integer, mxz)
94DEF_SVE_FUNCTION (sveor, binary_opt_n, b, z)
95DEF_SVE_FUNCTION (sveorv, reduction, all_integer, implicit)
96DEF_SVE_FUNCTION (svexpa, unary_uint, all_float, none)
97DEF_SVE_FUNCTION (svext, ext, all_data, none)
98DEF_SVE_FUNCTION (svextb, unary, hsd_integer, mxz)
99DEF_SVE_FUNCTION (svexth, unary, sd_integer, mxz)
100DEF_SVE_FUNCTION (svextw, unary, d_integer, mxz)
101DEF_SVE_FUNCTION (svget2, get, all_data, none)
102DEF_SVE_FUNCTION (svget3, get, all_data, none)
103DEF_SVE_FUNCTION (svget4, get, all_data, none)
104DEF_SVE_FUNCTION (svindex, binary_scalar, all_integer, none)
105DEF_SVE_FUNCTION (svinsr, binary_n, all_data, none)
106DEF_SVE_FUNCTION (svlasta, reduction, all_data, implicit)
107DEF_SVE_FUNCTION (svlastb, reduction, all_data, implicit)
108DEF_SVE_FUNCTION (svld1, load, all_data, implicit)
109DEF_SVE_FUNCTION (svld1_gather, load_gather_sv, sd_data, implicit)
110DEF_SVE_FUNCTION (svld1_gather, load_gather_vs, sd_data, implicit)
111DEF_SVE_FUNCTION (svld1rq, load_replicate, all_data, implicit)
112DEF_SVE_FUNCTION (svld1sb, load_ext, hsd_integer, implicit)
113DEF_SVE_FUNCTION (svld1sb_gather, load_ext_gather_offset, sd_integer, implicit)
114DEF_SVE_FUNCTION (svld1sh, load_ext, sd_integer, implicit)
115DEF_SVE_FUNCTION (svld1sh_gather, load_ext_gather_offset, sd_integer, implicit)
116DEF_SVE_FUNCTION (svld1sh_gather, load_ext_gather_index, sd_integer, implicit)
117DEF_SVE_FUNCTION (svld1sw, load_ext, d_integer, implicit)
118DEF_SVE_FUNCTION (svld1sw_gather, load_ext_gather_offset, d_integer, implicit)
119DEF_SVE_FUNCTION (svld1sw_gather, load_ext_gather_index, d_integer, implicit)
120DEF_SVE_FUNCTION (svld1ub, load_ext, hsd_integer, implicit)
121DEF_SVE_FUNCTION (svld1ub_gather, load_ext_gather_offset, sd_integer, implicit)
122DEF_SVE_FUNCTION (svld1uh, load_ext, sd_integer, implicit)
123DEF_SVE_FUNCTION (svld1uh_gather, load_ext_gather_offset, sd_integer, implicit)
124DEF_SVE_FUNCTION (svld1uh_gather, load_ext_gather_index, sd_integer, implicit)
125DEF_SVE_FUNCTION (svld1uw, load_ext, d_integer, implicit)
126DEF_SVE_FUNCTION (svld1uw_gather, load_ext_gather_offset, d_integer, implicit)
127DEF_SVE_FUNCTION (svld1uw_gather, load_ext_gather_index, d_integer, implicit)
128DEF_SVE_FUNCTION (svldff1, load, all_data, implicit)
129DEF_SVE_FUNCTION (svldff1_gather, load_gather_sv, sd_data, implicit)
130DEF_SVE_FUNCTION (svldff1_gather, load_gather_vs, sd_data, implicit)
131DEF_SVE_FUNCTION (svldff1sb, load_ext, hsd_integer, implicit)
132DEF_SVE_FUNCTION (svldff1sb_gather, load_ext_gather_offset, sd_integer, implicit)
133DEF_SVE_FUNCTION (svldff1sh, load_ext, sd_integer, implicit)
134DEF_SVE_FUNCTION (svldff1sh_gather, load_ext_gather_offset, sd_integer, implicit)
135DEF_SVE_FUNCTION (svldff1sh_gather, load_ext_gather_index, sd_integer, implicit)
136DEF_SVE_FUNCTION (svldff1sw, load_ext, d_integer, implicit)
137DEF_SVE_FUNCTION (svldff1sw_gather, load_ext_gather_offset, d_integer, implicit)
138DEF_SVE_FUNCTION (svldff1sw_gather, load_ext_gather_index, d_integer, implicit)
139DEF_SVE_FUNCTION (svldff1ub, load_ext, hsd_integer, implicit)
140DEF_SVE_FUNCTION (svldff1ub_gather, load_ext_gather_offset, sd_integer, implicit)
141DEF_SVE_FUNCTION (svldff1uh, load_ext, sd_integer, implicit)
142DEF_SVE_FUNCTION (svldff1uh_gather, load_ext_gather_offset, sd_integer, implicit)
143DEF_SVE_FUNCTION (svldff1uh_gather, load_ext_gather_index, sd_integer, implicit)
144DEF_SVE_FUNCTION (svldff1uw, load_ext, d_integer, implicit)
145DEF_SVE_FUNCTION (svldff1uw_gather, load_ext_gather_offset, d_integer, implicit)
146DEF_SVE_FUNCTION (svldff1uw_gather, load_ext_gather_index, d_integer, implicit)
147DEF_SVE_FUNCTION (svldnf1, load, all_data, implicit)
148DEF_SVE_FUNCTION (svldnf1sb, load_ext, hsd_integer, implicit)
149DEF_SVE_FUNCTION (svldnf1sh, load_ext, sd_integer, implicit)
150DEF_SVE_FUNCTION (svldnf1sw, load_ext, d_integer, implicit)
151DEF_SVE_FUNCTION (svldnf1ub, load_ext, hsd_integer, implicit)
152DEF_SVE_FUNCTION (svldnf1uh, load_ext, sd_integer, implicit)
153DEF_SVE_FUNCTION (svldnf1uw, load_ext, d_integer, implicit)
154DEF_SVE_FUNCTION (svldnt1, load, all_data, implicit)
155DEF_SVE_FUNCTION (svld2, load, all_data, implicit)
156DEF_SVE_FUNCTION (svld3, load, all_data, implicit)
157DEF_SVE_FUNCTION (svld4, load, all_data, implicit)
158DEF_SVE_FUNCTION (svlen, count_vector, all_data, none)
159DEF_SVE_FUNCTION (svlsl, binary_uint_opt_n, all_integer, mxz)
160DEF_SVE_FUNCTION (svlsl_wide, binary_uint64_opt_n, bhs_integer, mxz)
161DEF_SVE_FUNCTION (svlsr, binary_uint_opt_n, all_unsigned, mxz)
162DEF_SVE_FUNCTION (svlsr_wide, binary_uint64_opt_n, bhs_unsigned, mxz)
02fcd8ac
RS
163DEF_SVE_FUNCTION (svmad, ternary_opt_n, all_arith, mxz)
164DEF_SVE_FUNCTION (svmax, binary_opt_n, all_arith, mxz)
624d0f07
RS
165DEF_SVE_FUNCTION (svmaxnm, binary_opt_n, all_float, mxz)
166DEF_SVE_FUNCTION (svmaxnmv, reduction, all_float, implicit)
02fcd8ac
RS
167DEF_SVE_FUNCTION (svmaxv, reduction, all_arith, implicit)
168DEF_SVE_FUNCTION (svmin, binary_opt_n, all_arith, mxz)
624d0f07
RS
169DEF_SVE_FUNCTION (svminnm, binary_opt_n, all_float, mxz)
170DEF_SVE_FUNCTION (svminnmv, reduction, all_float, implicit)
02fcd8ac
RS
171DEF_SVE_FUNCTION (svminv, reduction, all_arith, implicit)
172DEF_SVE_FUNCTION (svmla, ternary_opt_n, all_arith, mxz)
624d0f07 173DEF_SVE_FUNCTION (svmla_lane, ternary_lane, all_float, none)
02fcd8ac 174DEF_SVE_FUNCTION (svmls, ternary_opt_n, all_arith, mxz)
624d0f07 175DEF_SVE_FUNCTION (svmls_lane, ternary_lane, all_float, none)
36696774 176DEF_SVE_FUNCTION (svmmla, mmla, none, none)
624d0f07 177DEF_SVE_FUNCTION (svmov, unary, b, z)
02fcd8ac
RS
178DEF_SVE_FUNCTION (svmsb, ternary_opt_n, all_arith, mxz)
179DEF_SVE_FUNCTION (svmul, binary_opt_n, all_arith, mxz)
624d0f07
RS
180DEF_SVE_FUNCTION (svmul_lane, binary_lane, all_float, none)
181DEF_SVE_FUNCTION (svmulh, binary_opt_n, all_integer, mxz)
182DEF_SVE_FUNCTION (svmulx, binary_opt_n, all_float, mxz)
183DEF_SVE_FUNCTION (svnand, binary_opt_n, b, z)
184DEF_SVE_FUNCTION (svneg, unary, all_float_and_signed, mxz)
185DEF_SVE_FUNCTION (svnmad, ternary_opt_n, all_float, mxz)
186DEF_SVE_FUNCTION (svnmla, ternary_opt_n, all_float, mxz)
187DEF_SVE_FUNCTION (svnmls, ternary_opt_n, all_float, mxz)
188DEF_SVE_FUNCTION (svnmsb, ternary_opt_n, all_float, mxz)
189DEF_SVE_FUNCTION (svnor, binary_opt_n, b, z)
190DEF_SVE_FUNCTION (svnot, unary, all_integer, mxz)
191DEF_SVE_FUNCTION (svnot, unary, b, z)
192DEF_SVE_FUNCTION (svorn, binary_opt_n, b, z)
193DEF_SVE_FUNCTION (svorr, binary_opt_n, all_integer, mxz)
194DEF_SVE_FUNCTION (svorr, binary_opt_n, b, z)
195DEF_SVE_FUNCTION (svorv, reduction, all_integer, implicit)
196DEF_SVE_FUNCTION (svpfalse, inherent_b, b, none)
197DEF_SVE_FUNCTION (svpfirst, unary, b, implicit)
198DEF_SVE_FUNCTION (svpnext, unary_pred, all_pred, implicit)
199DEF_SVE_FUNCTION (svprfb, prefetch, none, implicit)
200DEF_SVE_FUNCTION (svprfb_gather, prefetch_gather_offset, none, implicit)
201DEF_SVE_FUNCTION (svprfd, prefetch, none, implicit)
202DEF_SVE_FUNCTION (svprfd_gather, prefetch_gather_index, none, implicit)
203DEF_SVE_FUNCTION (svprfh, prefetch, none, implicit)
204DEF_SVE_FUNCTION (svprfh_gather, prefetch_gather_index, none, implicit)
205DEF_SVE_FUNCTION (svprfw, prefetch, none, implicit)
206DEF_SVE_FUNCTION (svprfw_gather, prefetch_gather_index, none, implicit)
207DEF_SVE_FUNCTION (svptest_any, ptest, none, implicit)
208DEF_SVE_FUNCTION (svptest_first, ptest, none, implicit)
209DEF_SVE_FUNCTION (svptest_last, ptest, none, implicit)
210DEF_SVE_FUNCTION (svptrue, inherent, all_pred, none)
211DEF_SVE_FUNCTION (svptrue_pat, pattern_pred, all_pred, none)
212DEF_SVE_FUNCTION (svqadd, binary_opt_n, all_integer, none)
213DEF_SVE_FUNCTION (svqdecb, inc_dec, sd_integer, none)
214DEF_SVE_FUNCTION (svqdecb_pat, inc_dec_pat, sd_integer, none)
215DEF_SVE_FUNCTION (svqdecd, inc_dec, d_integer, none)
216DEF_SVE_FUNCTION (svqdecd, inc_dec, sd_integer, none)
217DEF_SVE_FUNCTION (svqdecd_pat, inc_dec_pat, d_integer, none)
218DEF_SVE_FUNCTION (svqdecd_pat, inc_dec_pat, sd_integer, none)
219DEF_SVE_FUNCTION (svqdech, inc_dec, h_integer, none)
220DEF_SVE_FUNCTION (svqdech, inc_dec, sd_integer, none)
221DEF_SVE_FUNCTION (svqdech_pat, inc_dec_pat, h_integer, none)
222DEF_SVE_FUNCTION (svqdech_pat, inc_dec_pat, sd_integer, none)
223DEF_SVE_FUNCTION (svqdecp, inc_dec_pred, hsd_integer, none)
224DEF_SVE_FUNCTION (svqdecp, inc_dec_pred_scalar, inc_dec_n, none)
225DEF_SVE_FUNCTION (svqdecw, inc_dec, s_integer, none)
226DEF_SVE_FUNCTION (svqdecw, inc_dec, sd_integer, none)
227DEF_SVE_FUNCTION (svqdecw_pat, inc_dec_pat, s_integer, none)
228DEF_SVE_FUNCTION (svqdecw_pat, inc_dec_pat, sd_integer, none)
229DEF_SVE_FUNCTION (svqincb, inc_dec, sd_integer, none)
230DEF_SVE_FUNCTION (svqincb_pat, inc_dec_pat, sd_integer, none)
231DEF_SVE_FUNCTION (svqincd, inc_dec, d_integer, none)
232DEF_SVE_FUNCTION (svqincd, inc_dec, sd_integer, none)
233DEF_SVE_FUNCTION (svqincd_pat, inc_dec_pat, d_integer, none)
234DEF_SVE_FUNCTION (svqincd_pat, inc_dec_pat, sd_integer, none)
235DEF_SVE_FUNCTION (svqinch, inc_dec, h_integer, none)
236DEF_SVE_FUNCTION (svqinch, inc_dec, sd_integer, none)
237DEF_SVE_FUNCTION (svqinch_pat, inc_dec_pat, h_integer, none)
238DEF_SVE_FUNCTION (svqinch_pat, inc_dec_pat, sd_integer, none)
239DEF_SVE_FUNCTION (svqincp, inc_dec_pred, hsd_integer, none)
240DEF_SVE_FUNCTION (svqincp, inc_dec_pred_scalar, inc_dec_n, none)
241DEF_SVE_FUNCTION (svqincw, inc_dec, s_integer, none)
242DEF_SVE_FUNCTION (svqincw, inc_dec, sd_integer, none)
243DEF_SVE_FUNCTION (svqincw_pat, inc_dec_pat, s_integer, none)
244DEF_SVE_FUNCTION (svqincw_pat, inc_dec_pat, sd_integer, none)
245DEF_SVE_FUNCTION (svqsub, binary_opt_n, all_integer, none)
246DEF_SVE_FUNCTION (svrbit, unary, all_integer, mxz)
247DEF_SVE_FUNCTION (svrdffr, rdffr, none, z_or_none)
248DEF_SVE_FUNCTION (svrecpe, unary, all_float, none)
249DEF_SVE_FUNCTION (svrecps, binary, all_float, none)
250DEF_SVE_FUNCTION (svrecpx, unary, all_float, mxz)
251DEF_SVE_FUNCTION (svreinterpret, unary_convert, reinterpret, none)
252DEF_SVE_FUNCTION (svrev, unary, all_data, none)
253DEF_SVE_FUNCTION (svrev, unary_pred, all_pred, none)
254DEF_SVE_FUNCTION (svrevb, unary, hsd_integer, mxz)
255DEF_SVE_FUNCTION (svrevh, unary, sd_integer, mxz)
256DEF_SVE_FUNCTION (svrevw, unary, d_integer, mxz)
257DEF_SVE_FUNCTION (svrinta, unary, all_float, mxz)
258DEF_SVE_FUNCTION (svrinti, unary, all_float, mxz)
259DEF_SVE_FUNCTION (svrintm, unary, all_float, mxz)
260DEF_SVE_FUNCTION (svrintn, unary, all_float, mxz)
261DEF_SVE_FUNCTION (svrintp, unary, all_float, mxz)
262DEF_SVE_FUNCTION (svrintx, unary, all_float, mxz)
263DEF_SVE_FUNCTION (svrintz, unary, all_float, mxz)
264DEF_SVE_FUNCTION (svrsqrte, unary, all_float, none)
265DEF_SVE_FUNCTION (svrsqrts, binary, all_float, none)
266DEF_SVE_FUNCTION (svscale, binary_int_opt_n, all_float, mxz)
267DEF_SVE_FUNCTION (svsel, binary, all_data, implicit)
268DEF_SVE_FUNCTION (svsel, binary, b, implicit)
269DEF_SVE_FUNCTION (svset2, set, all_data, none)
270DEF_SVE_FUNCTION (svset3, set, all_data, none)
271DEF_SVE_FUNCTION (svset4, set, all_data, none)
272DEF_SVE_FUNCTION (svsetffr, setffr, none, none)
273DEF_SVE_FUNCTION (svsplice, binary, all_data, implicit)
274DEF_SVE_FUNCTION (svsqrt, unary, all_float, mxz)
275DEF_SVE_FUNCTION (svst1, store, all_data, implicit)
276DEF_SVE_FUNCTION (svst1_scatter, store_scatter_index, sd_data, implicit)
277DEF_SVE_FUNCTION (svst1_scatter, store_scatter_offset, sd_data, implicit)
278DEF_SVE_FUNCTION (svst1b, store, hsd_integer, implicit)
279DEF_SVE_FUNCTION (svst1b_scatter, store_scatter_offset, sd_integer, implicit)
280DEF_SVE_FUNCTION (svst1h, store, sd_integer, implicit)
281DEF_SVE_FUNCTION (svst1h_scatter, store_scatter_index, sd_integer, implicit)
282DEF_SVE_FUNCTION (svst1h_scatter, store_scatter_offset, sd_integer, implicit)
283DEF_SVE_FUNCTION (svst1w, store, d_integer, implicit)
284DEF_SVE_FUNCTION (svst1w_scatter, store_scatter_index, d_integer, implicit)
285DEF_SVE_FUNCTION (svst1w_scatter, store_scatter_offset, d_integer, implicit)
286DEF_SVE_FUNCTION (svst2, store, all_data, implicit)
287DEF_SVE_FUNCTION (svst3, store, all_data, implicit)
288DEF_SVE_FUNCTION (svst4, store, all_data, implicit)
289DEF_SVE_FUNCTION (svstnt1, store, all_data, implicit)
02fcd8ac
RS
290DEF_SVE_FUNCTION (svsub, binary_opt_n, all_arith, mxz)
291DEF_SVE_FUNCTION (svsubr, binary_opt_n, all_arith, mxz)
624d0f07
RS
292DEF_SVE_FUNCTION (svtbl, binary_uint, all_data, none)
293DEF_SVE_FUNCTION (svtmad, tmad, all_float, none)
294DEF_SVE_FUNCTION (svtrn1, binary, all_data, none)
295DEF_SVE_FUNCTION (svtrn1, binary_pred, all_pred, none)
296DEF_SVE_FUNCTION (svtrn2, binary, all_data, none)
297DEF_SVE_FUNCTION (svtrn2, binary_pred, all_pred, none)
298DEF_SVE_FUNCTION (svtsmul, binary_uint, all_float, none)
299DEF_SVE_FUNCTION (svtssel, binary_uint, all_float, none)
300DEF_SVE_FUNCTION (svundef, inherent, all_data, none)
301DEF_SVE_FUNCTION (svundef2, inherent, all_data, none)
302DEF_SVE_FUNCTION (svundef3, inherent, all_data, none)
303DEF_SVE_FUNCTION (svundef4, inherent, all_data, none)
304DEF_SVE_FUNCTION (svunpkhi, unary_widen, hsd_integer, none)
305DEF_SVE_FUNCTION (svunpkhi, unary_widen, b, none)
306DEF_SVE_FUNCTION (svunpklo, unary_widen, hsd_integer, none)
307DEF_SVE_FUNCTION (svunpklo, unary_widen, b, none)
308DEF_SVE_FUNCTION (svuzp1, binary, all_data, none)
309DEF_SVE_FUNCTION (svuzp1, binary_pred, all_pred, none)
310DEF_SVE_FUNCTION (svuzp2, binary, all_data, none)
311DEF_SVE_FUNCTION (svuzp2, binary_pred, all_pred, none)
312DEF_SVE_FUNCTION (svwhilele, compare_scalar, while, none)
313DEF_SVE_FUNCTION (svwhilelt, compare_scalar, while, none)
314DEF_SVE_FUNCTION (svwrffr, setffr, none, implicit)
315DEF_SVE_FUNCTION (svzip1, binary, all_data, none)
316DEF_SVE_FUNCTION (svzip1, binary_pred, all_pred, none)
317DEF_SVE_FUNCTION (svzip2, binary, all_data, none)
318DEF_SVE_FUNCTION (svzip2, binary_pred, all_pred, none)
319#undef REQUIRED_EXTENSIONS
9ceec73f 320
896dff99
RS
321#define REQUIRED_EXTENSIONS AARCH64_FL_BF16
322DEF_SVE_FUNCTION (svbfdot, ternary_bfloat_opt_n, s_float, none)
323DEF_SVE_FUNCTION (svbfdot_lane, ternary_bfloat_lanex2, s_float, none)
324DEF_SVE_FUNCTION (svbfmlalb, ternary_bfloat_opt_n, s_float, none)
325DEF_SVE_FUNCTION (svbfmlalb_lane, ternary_bfloat_lane, s_float, none)
326DEF_SVE_FUNCTION (svbfmlalt, ternary_bfloat_opt_n, s_float, none)
327DEF_SVE_FUNCTION (svbfmlalt_lane, ternary_bfloat_lane, s_float, none)
328DEF_SVE_FUNCTION (svbfmmla, ternary_bfloat, s_float, none)
329DEF_SVE_FUNCTION (svcvt, unary_convert, cvt_bfloat, mxz)
330DEF_SVE_FUNCTION (svcvtnt, unary_convert_narrowt, cvt_bfloat, mx)
331#undef REQUIRED_EXTENSIONS
332
36696774
RS
333#define REQUIRED_EXTENSIONS AARCH64_FL_I8MM
334DEF_SVE_FUNCTION (svmmla, mmla, s_integer, none)
335DEF_SVE_FUNCTION (svusmmla, ternary_uintq_intq, s_signed, none)
336DEF_SVE_FUNCTION (svsudot, ternary_intq_uintq_opt_n, s_signed, none)
337DEF_SVE_FUNCTION (svsudot_lane, ternary_intq_uintq_lane, s_signed, none)
338DEF_SVE_FUNCTION (svusdot, ternary_uintq_intq_opt_n, s_signed, none)
339DEF_SVE_FUNCTION (svusdot_lane, ternary_uintq_intq_lane, s_signed, none)
340#undef REQUIRED_EXTENSIONS
341
342#define REQUIRED_EXTENSIONS AARCH64_FL_F32MM
343DEF_SVE_FUNCTION (svmmla, mmla, s_float, none)
344#undef REQUIRED_EXTENSIONS
345
346#define REQUIRED_EXTENSIONS AARCH64_FL_F64MM
9ceec73f 347DEF_SVE_FUNCTION (svld1ro, load_replicate, all_data, implicit)
36696774
RS
348DEF_SVE_FUNCTION (svmmla, mmla, d_float, none)
349DEF_SVE_FUNCTION (svtrn1q, binary, all_data, none)
350DEF_SVE_FUNCTION (svtrn2q, binary, all_data, none)
351DEF_SVE_FUNCTION (svuzp1q, binary, all_data, none)
352DEF_SVE_FUNCTION (svuzp2q, binary, all_data, none)
353DEF_SVE_FUNCTION (svzip1q, binary, all_data, none)
354DEF_SVE_FUNCTION (svzip2q, binary, all_data, none)
9ceec73f 355#undef REQUIRED_EXTENSIONS