xref: /qemu/target/arm/tcg/helper-sve.h (revision fe7f8dfb2dd27d4ae4fe48ecc7350c254702a0b7)
19e18d7a6SRichard Henderson /*
29e18d7a6SRichard Henderson  *  AArch64 SVE specific helper definitions
39e18d7a6SRichard Henderson  *
49e18d7a6SRichard Henderson  *  Copyright (c) 2018 Linaro, Ltd
59e18d7a6SRichard Henderson  *
69e18d7a6SRichard Henderson  * This library is free software; you can redistribute it and/or
79e18d7a6SRichard Henderson  * modify it under the terms of the GNU Lesser General Public
89e18d7a6SRichard Henderson  * License as published by the Free Software Foundation; either
99e18d7a6SRichard Henderson  * version 2 of the License, or (at your option) any later version.
109e18d7a6SRichard Henderson  *
119e18d7a6SRichard Henderson  * This library is distributed in the hope that it will be useful,
129e18d7a6SRichard Henderson  * but WITHOUT ANY WARRANTY; without even the implied warranty of
139e18d7a6SRichard Henderson  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
149e18d7a6SRichard Henderson  * Lesser General Public License for more details.
159e18d7a6SRichard Henderson  *
169e18d7a6SRichard Henderson  * You should have received a copy of the GNU Lesser General Public
179e18d7a6SRichard Henderson  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
189e18d7a6SRichard Henderson  */
199e18d7a6SRichard Henderson 
209e18d7a6SRichard Henderson DEF_HELPER_FLAGS_2(sve_predtest1, TCG_CALL_NO_WG, i32, i64, i64)
219e18d7a6SRichard Henderson DEF_HELPER_FLAGS_3(sve_predtest, TCG_CALL_NO_WG, i32, ptr, ptr, i32)
22516e246aSRichard Henderson 
23028e2a7bSRichard Henderson DEF_HELPER_FLAGS_3(sve_pfirst, TCG_CALL_NO_WG, i32, ptr, ptr, i32)
24028e2a7bSRichard Henderson DEF_HELPER_FLAGS_3(sve_pnext, TCG_CALL_NO_WG, i32, ptr, ptr, i32)
25028e2a7bSRichard Henderson 
26f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_and_zpzz_b, TCG_CALL_NO_RWG,
27f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
28f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_and_zpzz_h, TCG_CALL_NO_RWG,
29f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
30f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_and_zpzz_s, TCG_CALL_NO_RWG,
31f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
32f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_and_zpzz_d, TCG_CALL_NO_RWG,
33f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
34f97cfd59SRichard Henderson 
35f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_eor_zpzz_b, TCG_CALL_NO_RWG,
36f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
37f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_eor_zpzz_h, TCG_CALL_NO_RWG,
38f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
39f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_eor_zpzz_s, TCG_CALL_NO_RWG,
40f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
41f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_eor_zpzz_d, TCG_CALL_NO_RWG,
42f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
43f97cfd59SRichard Henderson 
44f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_orr_zpzz_b, TCG_CALL_NO_RWG,
45f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
46f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_orr_zpzz_h, TCG_CALL_NO_RWG,
47f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
48f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_orr_zpzz_s, TCG_CALL_NO_RWG,
49f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
50f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_orr_zpzz_d, TCG_CALL_NO_RWG,
51f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
52f97cfd59SRichard Henderson 
53f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_bic_zpzz_b, TCG_CALL_NO_RWG,
54f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
55f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_bic_zpzz_h, TCG_CALL_NO_RWG,
56f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
57f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_bic_zpzz_s, TCG_CALL_NO_RWG,
58f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
59f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_bic_zpzz_d, TCG_CALL_NO_RWG,
60f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
61f97cfd59SRichard Henderson 
62f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_add_zpzz_b, TCG_CALL_NO_RWG,
63f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
64f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_add_zpzz_h, TCG_CALL_NO_RWG,
65f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
66f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_add_zpzz_s, TCG_CALL_NO_RWG,
67f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
68f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_add_zpzz_d, TCG_CALL_NO_RWG,
69f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
70f97cfd59SRichard Henderson 
71f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sub_zpzz_b, TCG_CALL_NO_RWG,
72f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
73f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sub_zpzz_h, TCG_CALL_NO_RWG,
74f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
75f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sub_zpzz_s, TCG_CALL_NO_RWG,
76f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
77f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sub_zpzz_d, TCG_CALL_NO_RWG,
78f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
79f97cfd59SRichard Henderson 
80f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smax_zpzz_b, TCG_CALL_NO_RWG,
81f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
82f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smax_zpzz_h, TCG_CALL_NO_RWG,
83f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
84f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smax_zpzz_s, TCG_CALL_NO_RWG,
85f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
86f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smax_zpzz_d, TCG_CALL_NO_RWG,
87f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
88f97cfd59SRichard Henderson 
89f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umax_zpzz_b, TCG_CALL_NO_RWG,
90f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
91f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umax_zpzz_h, TCG_CALL_NO_RWG,
92f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
93f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umax_zpzz_s, TCG_CALL_NO_RWG,
94f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
95f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umax_zpzz_d, TCG_CALL_NO_RWG,
96f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
97f97cfd59SRichard Henderson 
98f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smin_zpzz_b, TCG_CALL_NO_RWG,
99f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
100f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smin_zpzz_h, TCG_CALL_NO_RWG,
101f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
102f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smin_zpzz_s, TCG_CALL_NO_RWG,
103f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
104f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smin_zpzz_d, TCG_CALL_NO_RWG,
105f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
106f97cfd59SRichard Henderson 
107f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umin_zpzz_b, TCG_CALL_NO_RWG,
108f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
109f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umin_zpzz_h, TCG_CALL_NO_RWG,
110f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
111f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umin_zpzz_s, TCG_CALL_NO_RWG,
112f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
113f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umin_zpzz_d, TCG_CALL_NO_RWG,
114f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
115f97cfd59SRichard Henderson 
116f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sabd_zpzz_b, TCG_CALL_NO_RWG,
117f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
118f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sabd_zpzz_h, TCG_CALL_NO_RWG,
119f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
120f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sabd_zpzz_s, TCG_CALL_NO_RWG,
121f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
122f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sabd_zpzz_d, TCG_CALL_NO_RWG,
123f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
124f97cfd59SRichard Henderson 
125f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_uabd_zpzz_b, TCG_CALL_NO_RWG,
126f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
127f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_uabd_zpzz_h, TCG_CALL_NO_RWG,
128f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
129f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_uabd_zpzz_s, TCG_CALL_NO_RWG,
130f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
131f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_uabd_zpzz_d, TCG_CALL_NO_RWG,
132f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
133f97cfd59SRichard Henderson 
134f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_mul_zpzz_b, TCG_CALL_NO_RWG,
135f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
136f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_mul_zpzz_h, TCG_CALL_NO_RWG,
137f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
138f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_mul_zpzz_s, TCG_CALL_NO_RWG,
139f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
140f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_mul_zpzz_d, TCG_CALL_NO_RWG,
141f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
142f97cfd59SRichard Henderson 
143f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smulh_zpzz_b, TCG_CALL_NO_RWG,
144f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
145f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smulh_zpzz_h, TCG_CALL_NO_RWG,
146f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
147f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smulh_zpzz_s, TCG_CALL_NO_RWG,
148f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
149f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_smulh_zpzz_d, TCG_CALL_NO_RWG,
150f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
151f97cfd59SRichard Henderson 
152f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umulh_zpzz_b, TCG_CALL_NO_RWG,
153f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
154f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umulh_zpzz_h, TCG_CALL_NO_RWG,
155f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
156f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umulh_zpzz_s, TCG_CALL_NO_RWG,
157f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
158f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_umulh_zpzz_d, TCG_CALL_NO_RWG,
159f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
160f97cfd59SRichard Henderson 
161f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sdiv_zpzz_s, TCG_CALL_NO_RWG,
162f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
163f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_sdiv_zpzz_d, TCG_CALL_NO_RWG,
164f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
165f97cfd59SRichard Henderson 
166f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_udiv_zpzz_s, TCG_CALL_NO_RWG,
167f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
168f97cfd59SRichard Henderson DEF_HELPER_FLAGS_5(sve_udiv_zpzz_d, TCG_CALL_NO_RWG,
169f97cfd59SRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
170f97cfd59SRichard Henderson 
17127721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_asr_zpzz_b, TCG_CALL_NO_RWG,
17227721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
17327721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_asr_zpzz_h, TCG_CALL_NO_RWG,
17427721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
17527721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_asr_zpzz_s, TCG_CALL_NO_RWG,
17627721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
17727721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_asr_zpzz_d, TCG_CALL_NO_RWG,
17827721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
17927721dbbSRichard Henderson 
18027721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsr_zpzz_b, TCG_CALL_NO_RWG,
18127721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
18227721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsr_zpzz_h, TCG_CALL_NO_RWG,
18327721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
18427721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsr_zpzz_s, TCG_CALL_NO_RWG,
18527721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
18627721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsr_zpzz_d, TCG_CALL_NO_RWG,
18727721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
18827721dbbSRichard Henderson 
18927721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsl_zpzz_b, TCG_CALL_NO_RWG,
19027721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
19127721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsl_zpzz_h, TCG_CALL_NO_RWG,
19227721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
19327721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsl_zpzz_s, TCG_CALL_NO_RWG,
19427721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
19527721dbbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsl_zpzz_d, TCG_CALL_NO_RWG,
19627721dbbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
19727721dbbSRichard Henderson 
198fe7f8dfbSRichard Henderson DEF_HELPER_FLAGS_5(sve_asr_zpzw_b, TCG_CALL_NO_RWG,
199fe7f8dfbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
200fe7f8dfbSRichard Henderson DEF_HELPER_FLAGS_5(sve_asr_zpzw_h, TCG_CALL_NO_RWG,
201fe7f8dfbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
202fe7f8dfbSRichard Henderson DEF_HELPER_FLAGS_5(sve_asr_zpzw_s, TCG_CALL_NO_RWG,
203fe7f8dfbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
204fe7f8dfbSRichard Henderson 
205fe7f8dfbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsr_zpzw_b, TCG_CALL_NO_RWG,
206fe7f8dfbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
207fe7f8dfbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsr_zpzw_h, TCG_CALL_NO_RWG,
208fe7f8dfbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
209fe7f8dfbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsr_zpzw_s, TCG_CALL_NO_RWG,
210fe7f8dfbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
211fe7f8dfbSRichard Henderson 
212fe7f8dfbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsl_zpzw_b, TCG_CALL_NO_RWG,
213fe7f8dfbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
214fe7f8dfbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsl_zpzw_h, TCG_CALL_NO_RWG,
215fe7f8dfbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
216fe7f8dfbSRichard Henderson DEF_HELPER_FLAGS_5(sve_lsl_zpzw_s, TCG_CALL_NO_RWG,
217fe7f8dfbSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
218fe7f8dfbSRichard Henderson 
219047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_orv_b, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
220047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_orv_h, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
221047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_orv_s, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
222047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_orv_d, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
223047cec97SRichard Henderson 
224047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_eorv_b, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
225047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_eorv_h, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
226047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_eorv_s, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
227047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_eorv_d, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
228047cec97SRichard Henderson 
229047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_andv_b, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
230047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_andv_h, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
231047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_andv_s, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
232047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_andv_d, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
233047cec97SRichard Henderson 
234047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_saddv_b, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
235047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_saddv_h, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
236047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_saddv_s, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
237047cec97SRichard Henderson 
238047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_uaddv_b, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
239047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_uaddv_h, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
240047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_uaddv_s, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
241047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_uaddv_d, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
242047cec97SRichard Henderson 
243047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_smaxv_b, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
244047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_smaxv_h, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
245047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_smaxv_s, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
246047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_smaxv_d, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
247047cec97SRichard Henderson 
248047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_umaxv_b, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
249047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_umaxv_h, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
250047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_umaxv_s, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
251047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_umaxv_d, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
252047cec97SRichard Henderson 
253047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_sminv_b, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
254047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_sminv_h, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
255047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_sminv_s, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
256047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_sminv_d, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
257047cec97SRichard Henderson 
258047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_uminv_b, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
259047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_uminv_h, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
260047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_uminv_s, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
261047cec97SRichard Henderson DEF_HELPER_FLAGS_3(sve_uminv_d, TCG_CALL_NO_RWG, i64, ptr, ptr, i32)
262047cec97SRichard Henderson 
263ccd841c3SRichard Henderson DEF_HELPER_FLAGS_3(sve_clr_b, TCG_CALL_NO_RWG, void, ptr, ptr, i32)
264ccd841c3SRichard Henderson DEF_HELPER_FLAGS_3(sve_clr_h, TCG_CALL_NO_RWG, void, ptr, ptr, i32)
265ccd841c3SRichard Henderson DEF_HELPER_FLAGS_3(sve_clr_s, TCG_CALL_NO_RWG, void, ptr, ptr, i32)
266ccd841c3SRichard Henderson DEF_HELPER_FLAGS_3(sve_clr_d, TCG_CALL_NO_RWG, void, ptr, ptr, i32)
267ccd841c3SRichard Henderson 
268ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_asr_zpzi_b, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
269ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_asr_zpzi_h, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
270ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_asr_zpzi_s, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
271ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_asr_zpzi_d, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
272ccd841c3SRichard Henderson 
273ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_lsr_zpzi_b, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
274ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_lsr_zpzi_h, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
275ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_lsr_zpzi_s, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
276ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_lsr_zpzi_d, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
277ccd841c3SRichard Henderson 
278ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_lsl_zpzi_b, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
279ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_lsl_zpzi_h, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
280ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_lsl_zpzi_s, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
281ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_lsl_zpzi_d, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
282ccd841c3SRichard Henderson 
283ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_asrd_b, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
284ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_asrd_h, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
285ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_asrd_s, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
286ccd841c3SRichard Henderson DEF_HELPER_FLAGS_4(sve_asrd_d, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, i32)
287ccd841c3SRichard Henderson 
288516e246aSRichard Henderson DEF_HELPER_FLAGS_5(sve_and_pppp, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, ptr, i32)
289516e246aSRichard Henderson DEF_HELPER_FLAGS_5(sve_bic_pppp, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, ptr, i32)
290516e246aSRichard Henderson DEF_HELPER_FLAGS_5(sve_eor_pppp, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, ptr, i32)
291516e246aSRichard Henderson DEF_HELPER_FLAGS_5(sve_sel_pppp, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, ptr, i32)
292516e246aSRichard Henderson DEF_HELPER_FLAGS_5(sve_orr_pppp, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, ptr, i32)
293516e246aSRichard Henderson DEF_HELPER_FLAGS_5(sve_orn_pppp, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, ptr, i32)
294516e246aSRichard Henderson DEF_HELPER_FLAGS_5(sve_nor_pppp, TCG_CALL_NO_RWG, void, ptr, ptr, ptr, ptr, i32)
295516e246aSRichard Henderson DEF_HELPER_FLAGS_5(sve_nand_pppp, TCG_CALL_NO_RWG,
296516e246aSRichard Henderson                    void, ptr, ptr, ptr, ptr, i32)
297