1use super::types::*;
10
11#[allow(improper_ctypes)]
12extern "unadjusted" {
13 #[link_name = "llvm.loongarch.lsx.vsll.b"]
14 fn __lsx_vsll_b(a: v16i8, b: v16i8) -> v16i8;
15 #[link_name = "llvm.loongarch.lsx.vsll.h"]
16 fn __lsx_vsll_h(a: v8i16, b: v8i16) -> v8i16;
17 #[link_name = "llvm.loongarch.lsx.vsll.w"]
18 fn __lsx_vsll_w(a: v4i32, b: v4i32) -> v4i32;
19 #[link_name = "llvm.loongarch.lsx.vsll.d"]
20 fn __lsx_vsll_d(a: v2i64, b: v2i64) -> v2i64;
21 #[link_name = "llvm.loongarch.lsx.vslli.b"]
22 fn __lsx_vslli_b(a: v16i8, b: u32) -> v16i8;
23 #[link_name = "llvm.loongarch.lsx.vslli.h"]
24 fn __lsx_vslli_h(a: v8i16, b: u32) -> v8i16;
25 #[link_name = "llvm.loongarch.lsx.vslli.w"]
26 fn __lsx_vslli_w(a: v4i32, b: u32) -> v4i32;
27 #[link_name = "llvm.loongarch.lsx.vslli.d"]
28 fn __lsx_vslli_d(a: v2i64, b: u32) -> v2i64;
29 #[link_name = "llvm.loongarch.lsx.vsra.b"]
30 fn __lsx_vsra_b(a: v16i8, b: v16i8) -> v16i8;
31 #[link_name = "llvm.loongarch.lsx.vsra.h"]
32 fn __lsx_vsra_h(a: v8i16, b: v8i16) -> v8i16;
33 #[link_name = "llvm.loongarch.lsx.vsra.w"]
34 fn __lsx_vsra_w(a: v4i32, b: v4i32) -> v4i32;
35 #[link_name = "llvm.loongarch.lsx.vsra.d"]
36 fn __lsx_vsra_d(a: v2i64, b: v2i64) -> v2i64;
37 #[link_name = "llvm.loongarch.lsx.vsrai.b"]
38 fn __lsx_vsrai_b(a: v16i8, b: u32) -> v16i8;
39 #[link_name = "llvm.loongarch.lsx.vsrai.h"]
40 fn __lsx_vsrai_h(a: v8i16, b: u32) -> v8i16;
41 #[link_name = "llvm.loongarch.lsx.vsrai.w"]
42 fn __lsx_vsrai_w(a: v4i32, b: u32) -> v4i32;
43 #[link_name = "llvm.loongarch.lsx.vsrai.d"]
44 fn __lsx_vsrai_d(a: v2i64, b: u32) -> v2i64;
45 #[link_name = "llvm.loongarch.lsx.vsrar.b"]
46 fn __lsx_vsrar_b(a: v16i8, b: v16i8) -> v16i8;
47 #[link_name = "llvm.loongarch.lsx.vsrar.h"]
48 fn __lsx_vsrar_h(a: v8i16, b: v8i16) -> v8i16;
49 #[link_name = "llvm.loongarch.lsx.vsrar.w"]
50 fn __lsx_vsrar_w(a: v4i32, b: v4i32) -> v4i32;
51 #[link_name = "llvm.loongarch.lsx.vsrar.d"]
52 fn __lsx_vsrar_d(a: v2i64, b: v2i64) -> v2i64;
53 #[link_name = "llvm.loongarch.lsx.vsrari.b"]
54 fn __lsx_vsrari_b(a: v16i8, b: u32) -> v16i8;
55 #[link_name = "llvm.loongarch.lsx.vsrari.h"]
56 fn __lsx_vsrari_h(a: v8i16, b: u32) -> v8i16;
57 #[link_name = "llvm.loongarch.lsx.vsrari.w"]
58 fn __lsx_vsrari_w(a: v4i32, b: u32) -> v4i32;
59 #[link_name = "llvm.loongarch.lsx.vsrari.d"]
60 fn __lsx_vsrari_d(a: v2i64, b: u32) -> v2i64;
61 #[link_name = "llvm.loongarch.lsx.vsrl.b"]
62 fn __lsx_vsrl_b(a: v16i8, b: v16i8) -> v16i8;
63 #[link_name = "llvm.loongarch.lsx.vsrl.h"]
64 fn __lsx_vsrl_h(a: v8i16, b: v8i16) -> v8i16;
65 #[link_name = "llvm.loongarch.lsx.vsrl.w"]
66 fn __lsx_vsrl_w(a: v4i32, b: v4i32) -> v4i32;
67 #[link_name = "llvm.loongarch.lsx.vsrl.d"]
68 fn __lsx_vsrl_d(a: v2i64, b: v2i64) -> v2i64;
69 #[link_name = "llvm.loongarch.lsx.vsrli.b"]
70 fn __lsx_vsrli_b(a: v16i8, b: u32) -> v16i8;
71 #[link_name = "llvm.loongarch.lsx.vsrli.h"]
72 fn __lsx_vsrli_h(a: v8i16, b: u32) -> v8i16;
73 #[link_name = "llvm.loongarch.lsx.vsrli.w"]
74 fn __lsx_vsrli_w(a: v4i32, b: u32) -> v4i32;
75 #[link_name = "llvm.loongarch.lsx.vsrli.d"]
76 fn __lsx_vsrli_d(a: v2i64, b: u32) -> v2i64;
77 #[link_name = "llvm.loongarch.lsx.vsrlr.b"]
78 fn __lsx_vsrlr_b(a: v16i8, b: v16i8) -> v16i8;
79 #[link_name = "llvm.loongarch.lsx.vsrlr.h"]
80 fn __lsx_vsrlr_h(a: v8i16, b: v8i16) -> v8i16;
81 #[link_name = "llvm.loongarch.lsx.vsrlr.w"]
82 fn __lsx_vsrlr_w(a: v4i32, b: v4i32) -> v4i32;
83 #[link_name = "llvm.loongarch.lsx.vsrlr.d"]
84 fn __lsx_vsrlr_d(a: v2i64, b: v2i64) -> v2i64;
85 #[link_name = "llvm.loongarch.lsx.vsrlri.b"]
86 fn __lsx_vsrlri_b(a: v16i8, b: u32) -> v16i8;
87 #[link_name = "llvm.loongarch.lsx.vsrlri.h"]
88 fn __lsx_vsrlri_h(a: v8i16, b: u32) -> v8i16;
89 #[link_name = "llvm.loongarch.lsx.vsrlri.w"]
90 fn __lsx_vsrlri_w(a: v4i32, b: u32) -> v4i32;
91 #[link_name = "llvm.loongarch.lsx.vsrlri.d"]
92 fn __lsx_vsrlri_d(a: v2i64, b: u32) -> v2i64;
93 #[link_name = "llvm.loongarch.lsx.vbitclr.b"]
94 fn __lsx_vbitclr_b(a: v16u8, b: v16u8) -> v16u8;
95 #[link_name = "llvm.loongarch.lsx.vbitclr.h"]
96 fn __lsx_vbitclr_h(a: v8u16, b: v8u16) -> v8u16;
97 #[link_name = "llvm.loongarch.lsx.vbitclr.w"]
98 fn __lsx_vbitclr_w(a: v4u32, b: v4u32) -> v4u32;
99 #[link_name = "llvm.loongarch.lsx.vbitclr.d"]
100 fn __lsx_vbitclr_d(a: v2u64, b: v2u64) -> v2u64;
101 #[link_name = "llvm.loongarch.lsx.vbitclri.b"]
102 fn __lsx_vbitclri_b(a: v16u8, b: u32) -> v16u8;
103 #[link_name = "llvm.loongarch.lsx.vbitclri.h"]
104 fn __lsx_vbitclri_h(a: v8u16, b: u32) -> v8u16;
105 #[link_name = "llvm.loongarch.lsx.vbitclri.w"]
106 fn __lsx_vbitclri_w(a: v4u32, b: u32) -> v4u32;
107 #[link_name = "llvm.loongarch.lsx.vbitclri.d"]
108 fn __lsx_vbitclri_d(a: v2u64, b: u32) -> v2u64;
109 #[link_name = "llvm.loongarch.lsx.vbitset.b"]
110 fn __lsx_vbitset_b(a: v16u8, b: v16u8) -> v16u8;
111 #[link_name = "llvm.loongarch.lsx.vbitset.h"]
112 fn __lsx_vbitset_h(a: v8u16, b: v8u16) -> v8u16;
113 #[link_name = "llvm.loongarch.lsx.vbitset.w"]
114 fn __lsx_vbitset_w(a: v4u32, b: v4u32) -> v4u32;
115 #[link_name = "llvm.loongarch.lsx.vbitset.d"]
116 fn __lsx_vbitset_d(a: v2u64, b: v2u64) -> v2u64;
117 #[link_name = "llvm.loongarch.lsx.vbitseti.b"]
118 fn __lsx_vbitseti_b(a: v16u8, b: u32) -> v16u8;
119 #[link_name = "llvm.loongarch.lsx.vbitseti.h"]
120 fn __lsx_vbitseti_h(a: v8u16, b: u32) -> v8u16;
121 #[link_name = "llvm.loongarch.lsx.vbitseti.w"]
122 fn __lsx_vbitseti_w(a: v4u32, b: u32) -> v4u32;
123 #[link_name = "llvm.loongarch.lsx.vbitseti.d"]
124 fn __lsx_vbitseti_d(a: v2u64, b: u32) -> v2u64;
125 #[link_name = "llvm.loongarch.lsx.vbitrev.b"]
126 fn __lsx_vbitrev_b(a: v16u8, b: v16u8) -> v16u8;
127 #[link_name = "llvm.loongarch.lsx.vbitrev.h"]
128 fn __lsx_vbitrev_h(a: v8u16, b: v8u16) -> v8u16;
129 #[link_name = "llvm.loongarch.lsx.vbitrev.w"]
130 fn __lsx_vbitrev_w(a: v4u32, b: v4u32) -> v4u32;
131 #[link_name = "llvm.loongarch.lsx.vbitrev.d"]
132 fn __lsx_vbitrev_d(a: v2u64, b: v2u64) -> v2u64;
133 #[link_name = "llvm.loongarch.lsx.vbitrevi.b"]
134 fn __lsx_vbitrevi_b(a: v16u8, b: u32) -> v16u8;
135 #[link_name = "llvm.loongarch.lsx.vbitrevi.h"]
136 fn __lsx_vbitrevi_h(a: v8u16, b: u32) -> v8u16;
137 #[link_name = "llvm.loongarch.lsx.vbitrevi.w"]
138 fn __lsx_vbitrevi_w(a: v4u32, b: u32) -> v4u32;
139 #[link_name = "llvm.loongarch.lsx.vbitrevi.d"]
140 fn __lsx_vbitrevi_d(a: v2u64, b: u32) -> v2u64;
141 #[link_name = "llvm.loongarch.lsx.vadd.b"]
142 fn __lsx_vadd_b(a: v16i8, b: v16i8) -> v16i8;
143 #[link_name = "llvm.loongarch.lsx.vadd.h"]
144 fn __lsx_vadd_h(a: v8i16, b: v8i16) -> v8i16;
145 #[link_name = "llvm.loongarch.lsx.vadd.w"]
146 fn __lsx_vadd_w(a: v4i32, b: v4i32) -> v4i32;
147 #[link_name = "llvm.loongarch.lsx.vadd.d"]
148 fn __lsx_vadd_d(a: v2i64, b: v2i64) -> v2i64;
149 #[link_name = "llvm.loongarch.lsx.vaddi.bu"]
150 fn __lsx_vaddi_bu(a: v16i8, b: u32) -> v16i8;
151 #[link_name = "llvm.loongarch.lsx.vaddi.hu"]
152 fn __lsx_vaddi_hu(a: v8i16, b: u32) -> v8i16;
153 #[link_name = "llvm.loongarch.lsx.vaddi.wu"]
154 fn __lsx_vaddi_wu(a: v4i32, b: u32) -> v4i32;
155 #[link_name = "llvm.loongarch.lsx.vaddi.du"]
156 fn __lsx_vaddi_du(a: v2i64, b: u32) -> v2i64;
157 #[link_name = "llvm.loongarch.lsx.vsub.b"]
158 fn __lsx_vsub_b(a: v16i8, b: v16i8) -> v16i8;
159 #[link_name = "llvm.loongarch.lsx.vsub.h"]
160 fn __lsx_vsub_h(a: v8i16, b: v8i16) -> v8i16;
161 #[link_name = "llvm.loongarch.lsx.vsub.w"]
162 fn __lsx_vsub_w(a: v4i32, b: v4i32) -> v4i32;
163 #[link_name = "llvm.loongarch.lsx.vsub.d"]
164 fn __lsx_vsub_d(a: v2i64, b: v2i64) -> v2i64;
165 #[link_name = "llvm.loongarch.lsx.vsubi.bu"]
166 fn __lsx_vsubi_bu(a: v16i8, b: u32) -> v16i8;
167 #[link_name = "llvm.loongarch.lsx.vsubi.hu"]
168 fn __lsx_vsubi_hu(a: v8i16, b: u32) -> v8i16;
169 #[link_name = "llvm.loongarch.lsx.vsubi.wu"]
170 fn __lsx_vsubi_wu(a: v4i32, b: u32) -> v4i32;
171 #[link_name = "llvm.loongarch.lsx.vsubi.du"]
172 fn __lsx_vsubi_du(a: v2i64, b: u32) -> v2i64;
173 #[link_name = "llvm.loongarch.lsx.vmax.b"]
174 fn __lsx_vmax_b(a: v16i8, b: v16i8) -> v16i8;
175 #[link_name = "llvm.loongarch.lsx.vmax.h"]
176 fn __lsx_vmax_h(a: v8i16, b: v8i16) -> v8i16;
177 #[link_name = "llvm.loongarch.lsx.vmax.w"]
178 fn __lsx_vmax_w(a: v4i32, b: v4i32) -> v4i32;
179 #[link_name = "llvm.loongarch.lsx.vmax.d"]
180 fn __lsx_vmax_d(a: v2i64, b: v2i64) -> v2i64;
181 #[link_name = "llvm.loongarch.lsx.vmaxi.b"]
182 fn __lsx_vmaxi_b(a: v16i8, b: i32) -> v16i8;
183 #[link_name = "llvm.loongarch.lsx.vmaxi.h"]
184 fn __lsx_vmaxi_h(a: v8i16, b: i32) -> v8i16;
185 #[link_name = "llvm.loongarch.lsx.vmaxi.w"]
186 fn __lsx_vmaxi_w(a: v4i32, b: i32) -> v4i32;
187 #[link_name = "llvm.loongarch.lsx.vmaxi.d"]
188 fn __lsx_vmaxi_d(a: v2i64, b: i32) -> v2i64;
189 #[link_name = "llvm.loongarch.lsx.vmax.bu"]
190 fn __lsx_vmax_bu(a: v16u8, b: v16u8) -> v16u8;
191 #[link_name = "llvm.loongarch.lsx.vmax.hu"]
192 fn __lsx_vmax_hu(a: v8u16, b: v8u16) -> v8u16;
193 #[link_name = "llvm.loongarch.lsx.vmax.wu"]
194 fn __lsx_vmax_wu(a: v4u32, b: v4u32) -> v4u32;
195 #[link_name = "llvm.loongarch.lsx.vmax.du"]
196 fn __lsx_vmax_du(a: v2u64, b: v2u64) -> v2u64;
197 #[link_name = "llvm.loongarch.lsx.vmaxi.bu"]
198 fn __lsx_vmaxi_bu(a: v16u8, b: u32) -> v16u8;
199 #[link_name = "llvm.loongarch.lsx.vmaxi.hu"]
200 fn __lsx_vmaxi_hu(a: v8u16, b: u32) -> v8u16;
201 #[link_name = "llvm.loongarch.lsx.vmaxi.wu"]
202 fn __lsx_vmaxi_wu(a: v4u32, b: u32) -> v4u32;
203 #[link_name = "llvm.loongarch.lsx.vmaxi.du"]
204 fn __lsx_vmaxi_du(a: v2u64, b: u32) -> v2u64;
205 #[link_name = "llvm.loongarch.lsx.vmin.b"]
206 fn __lsx_vmin_b(a: v16i8, b: v16i8) -> v16i8;
207 #[link_name = "llvm.loongarch.lsx.vmin.h"]
208 fn __lsx_vmin_h(a: v8i16, b: v8i16) -> v8i16;
209 #[link_name = "llvm.loongarch.lsx.vmin.w"]
210 fn __lsx_vmin_w(a: v4i32, b: v4i32) -> v4i32;
211 #[link_name = "llvm.loongarch.lsx.vmin.d"]
212 fn __lsx_vmin_d(a: v2i64, b: v2i64) -> v2i64;
213 #[link_name = "llvm.loongarch.lsx.vmini.b"]
214 fn __lsx_vmini_b(a: v16i8, b: i32) -> v16i8;
215 #[link_name = "llvm.loongarch.lsx.vmini.h"]
216 fn __lsx_vmini_h(a: v8i16, b: i32) -> v8i16;
217 #[link_name = "llvm.loongarch.lsx.vmini.w"]
218 fn __lsx_vmini_w(a: v4i32, b: i32) -> v4i32;
219 #[link_name = "llvm.loongarch.lsx.vmini.d"]
220 fn __lsx_vmini_d(a: v2i64, b: i32) -> v2i64;
221 #[link_name = "llvm.loongarch.lsx.vmin.bu"]
222 fn __lsx_vmin_bu(a: v16u8, b: v16u8) -> v16u8;
223 #[link_name = "llvm.loongarch.lsx.vmin.hu"]
224 fn __lsx_vmin_hu(a: v8u16, b: v8u16) -> v8u16;
225 #[link_name = "llvm.loongarch.lsx.vmin.wu"]
226 fn __lsx_vmin_wu(a: v4u32, b: v4u32) -> v4u32;
227 #[link_name = "llvm.loongarch.lsx.vmin.du"]
228 fn __lsx_vmin_du(a: v2u64, b: v2u64) -> v2u64;
229 #[link_name = "llvm.loongarch.lsx.vmini.bu"]
230 fn __lsx_vmini_bu(a: v16u8, b: u32) -> v16u8;
231 #[link_name = "llvm.loongarch.lsx.vmini.hu"]
232 fn __lsx_vmini_hu(a: v8u16, b: u32) -> v8u16;
233 #[link_name = "llvm.loongarch.lsx.vmini.wu"]
234 fn __lsx_vmini_wu(a: v4u32, b: u32) -> v4u32;
235 #[link_name = "llvm.loongarch.lsx.vmini.du"]
236 fn __lsx_vmini_du(a: v2u64, b: u32) -> v2u64;
237 #[link_name = "llvm.loongarch.lsx.vseq.b"]
238 fn __lsx_vseq_b(a: v16i8, b: v16i8) -> v16i8;
239 #[link_name = "llvm.loongarch.lsx.vseq.h"]
240 fn __lsx_vseq_h(a: v8i16, b: v8i16) -> v8i16;
241 #[link_name = "llvm.loongarch.lsx.vseq.w"]
242 fn __lsx_vseq_w(a: v4i32, b: v4i32) -> v4i32;
243 #[link_name = "llvm.loongarch.lsx.vseq.d"]
244 fn __lsx_vseq_d(a: v2i64, b: v2i64) -> v2i64;
245 #[link_name = "llvm.loongarch.lsx.vseqi.b"]
246 fn __lsx_vseqi_b(a: v16i8, b: i32) -> v16i8;
247 #[link_name = "llvm.loongarch.lsx.vseqi.h"]
248 fn __lsx_vseqi_h(a: v8i16, b: i32) -> v8i16;
249 #[link_name = "llvm.loongarch.lsx.vseqi.w"]
250 fn __lsx_vseqi_w(a: v4i32, b: i32) -> v4i32;
251 #[link_name = "llvm.loongarch.lsx.vseqi.d"]
252 fn __lsx_vseqi_d(a: v2i64, b: i32) -> v2i64;
253 #[link_name = "llvm.loongarch.lsx.vslti.b"]
254 fn __lsx_vslti_b(a: v16i8, b: i32) -> v16i8;
255 #[link_name = "llvm.loongarch.lsx.vslt.b"]
256 fn __lsx_vslt_b(a: v16i8, b: v16i8) -> v16i8;
257 #[link_name = "llvm.loongarch.lsx.vslt.h"]
258 fn __lsx_vslt_h(a: v8i16, b: v8i16) -> v8i16;
259 #[link_name = "llvm.loongarch.lsx.vslt.w"]
260 fn __lsx_vslt_w(a: v4i32, b: v4i32) -> v4i32;
261 #[link_name = "llvm.loongarch.lsx.vslt.d"]
262 fn __lsx_vslt_d(a: v2i64, b: v2i64) -> v2i64;
263 #[link_name = "llvm.loongarch.lsx.vslti.h"]
264 fn __lsx_vslti_h(a: v8i16, b: i32) -> v8i16;
265 #[link_name = "llvm.loongarch.lsx.vslti.w"]
266 fn __lsx_vslti_w(a: v4i32, b: i32) -> v4i32;
267 #[link_name = "llvm.loongarch.lsx.vslti.d"]
268 fn __lsx_vslti_d(a: v2i64, b: i32) -> v2i64;
269 #[link_name = "llvm.loongarch.lsx.vslt.bu"]
270 fn __lsx_vslt_bu(a: v16u8, b: v16u8) -> v16i8;
271 #[link_name = "llvm.loongarch.lsx.vslt.hu"]
272 fn __lsx_vslt_hu(a: v8u16, b: v8u16) -> v8i16;
273 #[link_name = "llvm.loongarch.lsx.vslt.wu"]
274 fn __lsx_vslt_wu(a: v4u32, b: v4u32) -> v4i32;
275 #[link_name = "llvm.loongarch.lsx.vslt.du"]
276 fn __lsx_vslt_du(a: v2u64, b: v2u64) -> v2i64;
277 #[link_name = "llvm.loongarch.lsx.vslti.bu"]
278 fn __lsx_vslti_bu(a: v16u8, b: u32) -> v16i8;
279 #[link_name = "llvm.loongarch.lsx.vslti.hu"]
280 fn __lsx_vslti_hu(a: v8u16, b: u32) -> v8i16;
281 #[link_name = "llvm.loongarch.lsx.vslti.wu"]
282 fn __lsx_vslti_wu(a: v4u32, b: u32) -> v4i32;
283 #[link_name = "llvm.loongarch.lsx.vslti.du"]
284 fn __lsx_vslti_du(a: v2u64, b: u32) -> v2i64;
285 #[link_name = "llvm.loongarch.lsx.vsle.b"]
286 fn __lsx_vsle_b(a: v16i8, b: v16i8) -> v16i8;
287 #[link_name = "llvm.loongarch.lsx.vsle.h"]
288 fn __lsx_vsle_h(a: v8i16, b: v8i16) -> v8i16;
289 #[link_name = "llvm.loongarch.lsx.vsle.w"]
290 fn __lsx_vsle_w(a: v4i32, b: v4i32) -> v4i32;
291 #[link_name = "llvm.loongarch.lsx.vsle.d"]
292 fn __lsx_vsle_d(a: v2i64, b: v2i64) -> v2i64;
293 #[link_name = "llvm.loongarch.lsx.vslei.b"]
294 fn __lsx_vslei_b(a: v16i8, b: i32) -> v16i8;
295 #[link_name = "llvm.loongarch.lsx.vslei.h"]
296 fn __lsx_vslei_h(a: v8i16, b: i32) -> v8i16;
297 #[link_name = "llvm.loongarch.lsx.vslei.w"]
298 fn __lsx_vslei_w(a: v4i32, b: i32) -> v4i32;
299 #[link_name = "llvm.loongarch.lsx.vslei.d"]
300 fn __lsx_vslei_d(a: v2i64, b: i32) -> v2i64;
301 #[link_name = "llvm.loongarch.lsx.vsle.bu"]
302 fn __lsx_vsle_bu(a: v16u8, b: v16u8) -> v16i8;
303 #[link_name = "llvm.loongarch.lsx.vsle.hu"]
304 fn __lsx_vsle_hu(a: v8u16, b: v8u16) -> v8i16;
305 #[link_name = "llvm.loongarch.lsx.vsle.wu"]
306 fn __lsx_vsle_wu(a: v4u32, b: v4u32) -> v4i32;
307 #[link_name = "llvm.loongarch.lsx.vsle.du"]
308 fn __lsx_vsle_du(a: v2u64, b: v2u64) -> v2i64;
309 #[link_name = "llvm.loongarch.lsx.vslei.bu"]
310 fn __lsx_vslei_bu(a: v16u8, b: u32) -> v16i8;
311 #[link_name = "llvm.loongarch.lsx.vslei.hu"]
312 fn __lsx_vslei_hu(a: v8u16, b: u32) -> v8i16;
313 #[link_name = "llvm.loongarch.lsx.vslei.wu"]
314 fn __lsx_vslei_wu(a: v4u32, b: u32) -> v4i32;
315 #[link_name = "llvm.loongarch.lsx.vslei.du"]
316 fn __lsx_vslei_du(a: v2u64, b: u32) -> v2i64;
317 #[link_name = "llvm.loongarch.lsx.vsat.b"]
318 fn __lsx_vsat_b(a: v16i8, b: u32) -> v16i8;
319 #[link_name = "llvm.loongarch.lsx.vsat.h"]
320 fn __lsx_vsat_h(a: v8i16, b: u32) -> v8i16;
321 #[link_name = "llvm.loongarch.lsx.vsat.w"]
322 fn __lsx_vsat_w(a: v4i32, b: u32) -> v4i32;
323 #[link_name = "llvm.loongarch.lsx.vsat.d"]
324 fn __lsx_vsat_d(a: v2i64, b: u32) -> v2i64;
325 #[link_name = "llvm.loongarch.lsx.vsat.bu"]
326 fn __lsx_vsat_bu(a: v16u8, b: u32) -> v16u8;
327 #[link_name = "llvm.loongarch.lsx.vsat.hu"]
328 fn __lsx_vsat_hu(a: v8u16, b: u32) -> v8u16;
329 #[link_name = "llvm.loongarch.lsx.vsat.wu"]
330 fn __lsx_vsat_wu(a: v4u32, b: u32) -> v4u32;
331 #[link_name = "llvm.loongarch.lsx.vsat.du"]
332 fn __lsx_vsat_du(a: v2u64, b: u32) -> v2u64;
333 #[link_name = "llvm.loongarch.lsx.vadda.b"]
334 fn __lsx_vadda_b(a: v16i8, b: v16i8) -> v16i8;
335 #[link_name = "llvm.loongarch.lsx.vadda.h"]
336 fn __lsx_vadda_h(a: v8i16, b: v8i16) -> v8i16;
337 #[link_name = "llvm.loongarch.lsx.vadda.w"]
338 fn __lsx_vadda_w(a: v4i32, b: v4i32) -> v4i32;
339 #[link_name = "llvm.loongarch.lsx.vadda.d"]
340 fn __lsx_vadda_d(a: v2i64, b: v2i64) -> v2i64;
341 #[link_name = "llvm.loongarch.lsx.vsadd.b"]
342 fn __lsx_vsadd_b(a: v16i8, b: v16i8) -> v16i8;
343 #[link_name = "llvm.loongarch.lsx.vsadd.h"]
344 fn __lsx_vsadd_h(a: v8i16, b: v8i16) -> v8i16;
345 #[link_name = "llvm.loongarch.lsx.vsadd.w"]
346 fn __lsx_vsadd_w(a: v4i32, b: v4i32) -> v4i32;
347 #[link_name = "llvm.loongarch.lsx.vsadd.d"]
348 fn __lsx_vsadd_d(a: v2i64, b: v2i64) -> v2i64;
349 #[link_name = "llvm.loongarch.lsx.vsadd.bu"]
350 fn __lsx_vsadd_bu(a: v16u8, b: v16u8) -> v16u8;
351 #[link_name = "llvm.loongarch.lsx.vsadd.hu"]
352 fn __lsx_vsadd_hu(a: v8u16, b: v8u16) -> v8u16;
353 #[link_name = "llvm.loongarch.lsx.vsadd.wu"]
354 fn __lsx_vsadd_wu(a: v4u32, b: v4u32) -> v4u32;
355 #[link_name = "llvm.loongarch.lsx.vsadd.du"]
356 fn __lsx_vsadd_du(a: v2u64, b: v2u64) -> v2u64;
357 #[link_name = "llvm.loongarch.lsx.vavg.b"]
358 fn __lsx_vavg_b(a: v16i8, b: v16i8) -> v16i8;
359 #[link_name = "llvm.loongarch.lsx.vavg.h"]
360 fn __lsx_vavg_h(a: v8i16, b: v8i16) -> v8i16;
361 #[link_name = "llvm.loongarch.lsx.vavg.w"]
362 fn __lsx_vavg_w(a: v4i32, b: v4i32) -> v4i32;
363 #[link_name = "llvm.loongarch.lsx.vavg.d"]
364 fn __lsx_vavg_d(a: v2i64, b: v2i64) -> v2i64;
365 #[link_name = "llvm.loongarch.lsx.vavg.bu"]
366 fn __lsx_vavg_bu(a: v16u8, b: v16u8) -> v16u8;
367 #[link_name = "llvm.loongarch.lsx.vavg.hu"]
368 fn __lsx_vavg_hu(a: v8u16, b: v8u16) -> v8u16;
369 #[link_name = "llvm.loongarch.lsx.vavg.wu"]
370 fn __lsx_vavg_wu(a: v4u32, b: v4u32) -> v4u32;
371 #[link_name = "llvm.loongarch.lsx.vavg.du"]
372 fn __lsx_vavg_du(a: v2u64, b: v2u64) -> v2u64;
373 #[link_name = "llvm.loongarch.lsx.vavgr.b"]
374 fn __lsx_vavgr_b(a: v16i8, b: v16i8) -> v16i8;
375 #[link_name = "llvm.loongarch.lsx.vavgr.h"]
376 fn __lsx_vavgr_h(a: v8i16, b: v8i16) -> v8i16;
377 #[link_name = "llvm.loongarch.lsx.vavgr.w"]
378 fn __lsx_vavgr_w(a: v4i32, b: v4i32) -> v4i32;
379 #[link_name = "llvm.loongarch.lsx.vavgr.d"]
380 fn __lsx_vavgr_d(a: v2i64, b: v2i64) -> v2i64;
381 #[link_name = "llvm.loongarch.lsx.vavgr.bu"]
382 fn __lsx_vavgr_bu(a: v16u8, b: v16u8) -> v16u8;
383 #[link_name = "llvm.loongarch.lsx.vavgr.hu"]
384 fn __lsx_vavgr_hu(a: v8u16, b: v8u16) -> v8u16;
385 #[link_name = "llvm.loongarch.lsx.vavgr.wu"]
386 fn __lsx_vavgr_wu(a: v4u32, b: v4u32) -> v4u32;
387 #[link_name = "llvm.loongarch.lsx.vavgr.du"]
388 fn __lsx_vavgr_du(a: v2u64, b: v2u64) -> v2u64;
389 #[link_name = "llvm.loongarch.lsx.vssub.b"]
390 fn __lsx_vssub_b(a: v16i8, b: v16i8) -> v16i8;
391 #[link_name = "llvm.loongarch.lsx.vssub.h"]
392 fn __lsx_vssub_h(a: v8i16, b: v8i16) -> v8i16;
393 #[link_name = "llvm.loongarch.lsx.vssub.w"]
394 fn __lsx_vssub_w(a: v4i32, b: v4i32) -> v4i32;
395 #[link_name = "llvm.loongarch.lsx.vssub.d"]
396 fn __lsx_vssub_d(a: v2i64, b: v2i64) -> v2i64;
397 #[link_name = "llvm.loongarch.lsx.vssub.bu"]
398 fn __lsx_vssub_bu(a: v16u8, b: v16u8) -> v16u8;
399 #[link_name = "llvm.loongarch.lsx.vssub.hu"]
400 fn __lsx_vssub_hu(a: v8u16, b: v8u16) -> v8u16;
401 #[link_name = "llvm.loongarch.lsx.vssub.wu"]
402 fn __lsx_vssub_wu(a: v4u32, b: v4u32) -> v4u32;
403 #[link_name = "llvm.loongarch.lsx.vssub.du"]
404 fn __lsx_vssub_du(a: v2u64, b: v2u64) -> v2u64;
405 #[link_name = "llvm.loongarch.lsx.vabsd.b"]
406 fn __lsx_vabsd_b(a: v16i8, b: v16i8) -> v16i8;
407 #[link_name = "llvm.loongarch.lsx.vabsd.h"]
408 fn __lsx_vabsd_h(a: v8i16, b: v8i16) -> v8i16;
409 #[link_name = "llvm.loongarch.lsx.vabsd.w"]
410 fn __lsx_vabsd_w(a: v4i32, b: v4i32) -> v4i32;
411 #[link_name = "llvm.loongarch.lsx.vabsd.d"]
412 fn __lsx_vabsd_d(a: v2i64, b: v2i64) -> v2i64;
413 #[link_name = "llvm.loongarch.lsx.vabsd.bu"]
414 fn __lsx_vabsd_bu(a: v16u8, b: v16u8) -> v16u8;
415 #[link_name = "llvm.loongarch.lsx.vabsd.hu"]
416 fn __lsx_vabsd_hu(a: v8u16, b: v8u16) -> v8u16;
417 #[link_name = "llvm.loongarch.lsx.vabsd.wu"]
418 fn __lsx_vabsd_wu(a: v4u32, b: v4u32) -> v4u32;
419 #[link_name = "llvm.loongarch.lsx.vabsd.du"]
420 fn __lsx_vabsd_du(a: v2u64, b: v2u64) -> v2u64;
421 #[link_name = "llvm.loongarch.lsx.vmul.b"]
422 fn __lsx_vmul_b(a: v16i8, b: v16i8) -> v16i8;
423 #[link_name = "llvm.loongarch.lsx.vmul.h"]
424 fn __lsx_vmul_h(a: v8i16, b: v8i16) -> v8i16;
425 #[link_name = "llvm.loongarch.lsx.vmul.w"]
426 fn __lsx_vmul_w(a: v4i32, b: v4i32) -> v4i32;
427 #[link_name = "llvm.loongarch.lsx.vmul.d"]
428 fn __lsx_vmul_d(a: v2i64, b: v2i64) -> v2i64;
429 #[link_name = "llvm.loongarch.lsx.vmadd.b"]
430 fn __lsx_vmadd_b(a: v16i8, b: v16i8, c: v16i8) -> v16i8;
431 #[link_name = "llvm.loongarch.lsx.vmadd.h"]
432 fn __lsx_vmadd_h(a: v8i16, b: v8i16, c: v8i16) -> v8i16;
433 #[link_name = "llvm.loongarch.lsx.vmadd.w"]
434 fn __lsx_vmadd_w(a: v4i32, b: v4i32, c: v4i32) -> v4i32;
435 #[link_name = "llvm.loongarch.lsx.vmadd.d"]
436 fn __lsx_vmadd_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64;
437 #[link_name = "llvm.loongarch.lsx.vmsub.b"]
438 fn __lsx_vmsub_b(a: v16i8, b: v16i8, c: v16i8) -> v16i8;
439 #[link_name = "llvm.loongarch.lsx.vmsub.h"]
440 fn __lsx_vmsub_h(a: v8i16, b: v8i16, c: v8i16) -> v8i16;
441 #[link_name = "llvm.loongarch.lsx.vmsub.w"]
442 fn __lsx_vmsub_w(a: v4i32, b: v4i32, c: v4i32) -> v4i32;
443 #[link_name = "llvm.loongarch.lsx.vmsub.d"]
444 fn __lsx_vmsub_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64;
445 #[link_name = "llvm.loongarch.lsx.vdiv.b"]
446 fn __lsx_vdiv_b(a: v16i8, b: v16i8) -> v16i8;
447 #[link_name = "llvm.loongarch.lsx.vdiv.h"]
448 fn __lsx_vdiv_h(a: v8i16, b: v8i16) -> v8i16;
449 #[link_name = "llvm.loongarch.lsx.vdiv.w"]
450 fn __lsx_vdiv_w(a: v4i32, b: v4i32) -> v4i32;
451 #[link_name = "llvm.loongarch.lsx.vdiv.d"]
452 fn __lsx_vdiv_d(a: v2i64, b: v2i64) -> v2i64;
453 #[link_name = "llvm.loongarch.lsx.vdiv.bu"]
454 fn __lsx_vdiv_bu(a: v16u8, b: v16u8) -> v16u8;
455 #[link_name = "llvm.loongarch.lsx.vdiv.hu"]
456 fn __lsx_vdiv_hu(a: v8u16, b: v8u16) -> v8u16;
457 #[link_name = "llvm.loongarch.lsx.vdiv.wu"]
458 fn __lsx_vdiv_wu(a: v4u32, b: v4u32) -> v4u32;
459 #[link_name = "llvm.loongarch.lsx.vdiv.du"]
460 fn __lsx_vdiv_du(a: v2u64, b: v2u64) -> v2u64;
461 #[link_name = "llvm.loongarch.lsx.vhaddw.h.b"]
462 fn __lsx_vhaddw_h_b(a: v16i8, b: v16i8) -> v8i16;
463 #[link_name = "llvm.loongarch.lsx.vhaddw.w.h"]
464 fn __lsx_vhaddw_w_h(a: v8i16, b: v8i16) -> v4i32;
465 #[link_name = "llvm.loongarch.lsx.vhaddw.d.w"]
466 fn __lsx_vhaddw_d_w(a: v4i32, b: v4i32) -> v2i64;
467 #[link_name = "llvm.loongarch.lsx.vhaddw.hu.bu"]
468 fn __lsx_vhaddw_hu_bu(a: v16u8, b: v16u8) -> v8u16;
469 #[link_name = "llvm.loongarch.lsx.vhaddw.wu.hu"]
470 fn __lsx_vhaddw_wu_hu(a: v8u16, b: v8u16) -> v4u32;
471 #[link_name = "llvm.loongarch.lsx.vhaddw.du.wu"]
472 fn __lsx_vhaddw_du_wu(a: v4u32, b: v4u32) -> v2u64;
473 #[link_name = "llvm.loongarch.lsx.vhsubw.h.b"]
474 fn __lsx_vhsubw_h_b(a: v16i8, b: v16i8) -> v8i16;
475 #[link_name = "llvm.loongarch.lsx.vhsubw.w.h"]
476 fn __lsx_vhsubw_w_h(a: v8i16, b: v8i16) -> v4i32;
477 #[link_name = "llvm.loongarch.lsx.vhsubw.d.w"]
478 fn __lsx_vhsubw_d_w(a: v4i32, b: v4i32) -> v2i64;
479 #[link_name = "llvm.loongarch.lsx.vhsubw.hu.bu"]
480 fn __lsx_vhsubw_hu_bu(a: v16u8, b: v16u8) -> v8i16;
481 #[link_name = "llvm.loongarch.lsx.vhsubw.wu.hu"]
482 fn __lsx_vhsubw_wu_hu(a: v8u16, b: v8u16) -> v4i32;
483 #[link_name = "llvm.loongarch.lsx.vhsubw.du.wu"]
484 fn __lsx_vhsubw_du_wu(a: v4u32, b: v4u32) -> v2i64;
485 #[link_name = "llvm.loongarch.lsx.vmod.b"]
486 fn __lsx_vmod_b(a: v16i8, b: v16i8) -> v16i8;
487 #[link_name = "llvm.loongarch.lsx.vmod.h"]
488 fn __lsx_vmod_h(a: v8i16, b: v8i16) -> v8i16;
489 #[link_name = "llvm.loongarch.lsx.vmod.w"]
490 fn __lsx_vmod_w(a: v4i32, b: v4i32) -> v4i32;
491 #[link_name = "llvm.loongarch.lsx.vmod.d"]
492 fn __lsx_vmod_d(a: v2i64, b: v2i64) -> v2i64;
493 #[link_name = "llvm.loongarch.lsx.vmod.bu"]
494 fn __lsx_vmod_bu(a: v16u8, b: v16u8) -> v16u8;
495 #[link_name = "llvm.loongarch.lsx.vmod.hu"]
496 fn __lsx_vmod_hu(a: v8u16, b: v8u16) -> v8u16;
497 #[link_name = "llvm.loongarch.lsx.vmod.wu"]
498 fn __lsx_vmod_wu(a: v4u32, b: v4u32) -> v4u32;
499 #[link_name = "llvm.loongarch.lsx.vmod.du"]
500 fn __lsx_vmod_du(a: v2u64, b: v2u64) -> v2u64;
501 #[link_name = "llvm.loongarch.lsx.vreplve.b"]
502 fn __lsx_vreplve_b(a: v16i8, b: i32) -> v16i8;
503 #[link_name = "llvm.loongarch.lsx.vreplve.h"]
504 fn __lsx_vreplve_h(a: v8i16, b: i32) -> v8i16;
505 #[link_name = "llvm.loongarch.lsx.vreplve.w"]
506 fn __lsx_vreplve_w(a: v4i32, b: i32) -> v4i32;
507 #[link_name = "llvm.loongarch.lsx.vreplve.d"]
508 fn __lsx_vreplve_d(a: v2i64, b: i32) -> v2i64;
509 #[link_name = "llvm.loongarch.lsx.vreplvei.b"]
510 fn __lsx_vreplvei_b(a: v16i8, b: u32) -> v16i8;
511 #[link_name = "llvm.loongarch.lsx.vreplvei.h"]
512 fn __lsx_vreplvei_h(a: v8i16, b: u32) -> v8i16;
513 #[link_name = "llvm.loongarch.lsx.vreplvei.w"]
514 fn __lsx_vreplvei_w(a: v4i32, b: u32) -> v4i32;
515 #[link_name = "llvm.loongarch.lsx.vreplvei.d"]
516 fn __lsx_vreplvei_d(a: v2i64, b: u32) -> v2i64;
517 #[link_name = "llvm.loongarch.lsx.vpickev.b"]
518 fn __lsx_vpickev_b(a: v16i8, b: v16i8) -> v16i8;
519 #[link_name = "llvm.loongarch.lsx.vpickev.h"]
520 fn __lsx_vpickev_h(a: v8i16, b: v8i16) -> v8i16;
521 #[link_name = "llvm.loongarch.lsx.vpickev.w"]
522 fn __lsx_vpickev_w(a: v4i32, b: v4i32) -> v4i32;
523 #[link_name = "llvm.loongarch.lsx.vpickev.d"]
524 fn __lsx_vpickev_d(a: v2i64, b: v2i64) -> v2i64;
525 #[link_name = "llvm.loongarch.lsx.vpickod.b"]
526 fn __lsx_vpickod_b(a: v16i8, b: v16i8) -> v16i8;
527 #[link_name = "llvm.loongarch.lsx.vpickod.h"]
528 fn __lsx_vpickod_h(a: v8i16, b: v8i16) -> v8i16;
529 #[link_name = "llvm.loongarch.lsx.vpickod.w"]
530 fn __lsx_vpickod_w(a: v4i32, b: v4i32) -> v4i32;
531 #[link_name = "llvm.loongarch.lsx.vpickod.d"]
532 fn __lsx_vpickod_d(a: v2i64, b: v2i64) -> v2i64;
533 #[link_name = "llvm.loongarch.lsx.vilvh.b"]
534 fn __lsx_vilvh_b(a: v16i8, b: v16i8) -> v16i8;
535 #[link_name = "llvm.loongarch.lsx.vilvh.h"]
536 fn __lsx_vilvh_h(a: v8i16, b: v8i16) -> v8i16;
537 #[link_name = "llvm.loongarch.lsx.vilvh.w"]
538 fn __lsx_vilvh_w(a: v4i32, b: v4i32) -> v4i32;
539 #[link_name = "llvm.loongarch.lsx.vilvh.d"]
540 fn __lsx_vilvh_d(a: v2i64, b: v2i64) -> v2i64;
541 #[link_name = "llvm.loongarch.lsx.vilvl.b"]
542 fn __lsx_vilvl_b(a: v16i8, b: v16i8) -> v16i8;
543 #[link_name = "llvm.loongarch.lsx.vilvl.h"]
544 fn __lsx_vilvl_h(a: v8i16, b: v8i16) -> v8i16;
545 #[link_name = "llvm.loongarch.lsx.vilvl.w"]
546 fn __lsx_vilvl_w(a: v4i32, b: v4i32) -> v4i32;
547 #[link_name = "llvm.loongarch.lsx.vilvl.d"]
548 fn __lsx_vilvl_d(a: v2i64, b: v2i64) -> v2i64;
549 #[link_name = "llvm.loongarch.lsx.vpackev.b"]
550 fn __lsx_vpackev_b(a: v16i8, b: v16i8) -> v16i8;
551 #[link_name = "llvm.loongarch.lsx.vpackev.h"]
552 fn __lsx_vpackev_h(a: v8i16, b: v8i16) -> v8i16;
553 #[link_name = "llvm.loongarch.lsx.vpackev.w"]
554 fn __lsx_vpackev_w(a: v4i32, b: v4i32) -> v4i32;
555 #[link_name = "llvm.loongarch.lsx.vpackev.d"]
556 fn __lsx_vpackev_d(a: v2i64, b: v2i64) -> v2i64;
557 #[link_name = "llvm.loongarch.lsx.vpackod.b"]
558 fn __lsx_vpackod_b(a: v16i8, b: v16i8) -> v16i8;
559 #[link_name = "llvm.loongarch.lsx.vpackod.h"]
560 fn __lsx_vpackod_h(a: v8i16, b: v8i16) -> v8i16;
561 #[link_name = "llvm.loongarch.lsx.vpackod.w"]
562 fn __lsx_vpackod_w(a: v4i32, b: v4i32) -> v4i32;
563 #[link_name = "llvm.loongarch.lsx.vpackod.d"]
564 fn __lsx_vpackod_d(a: v2i64, b: v2i64) -> v2i64;
565 #[link_name = "llvm.loongarch.lsx.vshuf.h"]
566 fn __lsx_vshuf_h(a: v8i16, b: v8i16, c: v8i16) -> v8i16;
567 #[link_name = "llvm.loongarch.lsx.vshuf.w"]
568 fn __lsx_vshuf_w(a: v4i32, b: v4i32, c: v4i32) -> v4i32;
569 #[link_name = "llvm.loongarch.lsx.vshuf.d"]
570 fn __lsx_vshuf_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64;
571 #[link_name = "llvm.loongarch.lsx.vand.v"]
572 fn __lsx_vand_v(a: v16u8, b: v16u8) -> v16u8;
573 #[link_name = "llvm.loongarch.lsx.vandi.b"]
574 fn __lsx_vandi_b(a: v16u8, b: u32) -> v16u8;
575 #[link_name = "llvm.loongarch.lsx.vor.v"]
576 fn __lsx_vor_v(a: v16u8, b: v16u8) -> v16u8;
577 #[link_name = "llvm.loongarch.lsx.vori.b"]
578 fn __lsx_vori_b(a: v16u8, b: u32) -> v16u8;
579 #[link_name = "llvm.loongarch.lsx.vnor.v"]
580 fn __lsx_vnor_v(a: v16u8, b: v16u8) -> v16u8;
581 #[link_name = "llvm.loongarch.lsx.vnori.b"]
582 fn __lsx_vnori_b(a: v16u8, b: u32) -> v16u8;
583 #[link_name = "llvm.loongarch.lsx.vxor.v"]
584 fn __lsx_vxor_v(a: v16u8, b: v16u8) -> v16u8;
585 #[link_name = "llvm.loongarch.lsx.vxori.b"]
586 fn __lsx_vxori_b(a: v16u8, b: u32) -> v16u8;
587 #[link_name = "llvm.loongarch.lsx.vbitsel.v"]
588 fn __lsx_vbitsel_v(a: v16u8, b: v16u8, c: v16u8) -> v16u8;
589 #[link_name = "llvm.loongarch.lsx.vbitseli.b"]
590 fn __lsx_vbitseli_b(a: v16u8, b: v16u8, c: u32) -> v16u8;
591 #[link_name = "llvm.loongarch.lsx.vshuf4i.b"]
592 fn __lsx_vshuf4i_b(a: v16i8, b: u32) -> v16i8;
593 #[link_name = "llvm.loongarch.lsx.vshuf4i.h"]
594 fn __lsx_vshuf4i_h(a: v8i16, b: u32) -> v8i16;
595 #[link_name = "llvm.loongarch.lsx.vshuf4i.w"]
596 fn __lsx_vshuf4i_w(a: v4i32, b: u32) -> v4i32;
597 #[link_name = "llvm.loongarch.lsx.vreplgr2vr.b"]
598 fn __lsx_vreplgr2vr_b(a: i32) -> v16i8;
599 #[link_name = "llvm.loongarch.lsx.vreplgr2vr.h"]
600 fn __lsx_vreplgr2vr_h(a: i32) -> v8i16;
601 #[link_name = "llvm.loongarch.lsx.vreplgr2vr.w"]
602 fn __lsx_vreplgr2vr_w(a: i32) -> v4i32;
603 #[link_name = "llvm.loongarch.lsx.vreplgr2vr.d"]
604 fn __lsx_vreplgr2vr_d(a: i64) -> v2i64;
605 #[link_name = "llvm.loongarch.lsx.vpcnt.b"]
606 fn __lsx_vpcnt_b(a: v16i8) -> v16i8;
607 #[link_name = "llvm.loongarch.lsx.vpcnt.h"]
608 fn __lsx_vpcnt_h(a: v8i16) -> v8i16;
609 #[link_name = "llvm.loongarch.lsx.vpcnt.w"]
610 fn __lsx_vpcnt_w(a: v4i32) -> v4i32;
611 #[link_name = "llvm.loongarch.lsx.vpcnt.d"]
612 fn __lsx_vpcnt_d(a: v2i64) -> v2i64;
613 #[link_name = "llvm.loongarch.lsx.vclo.b"]
614 fn __lsx_vclo_b(a: v16i8) -> v16i8;
615 #[link_name = "llvm.loongarch.lsx.vclo.h"]
616 fn __lsx_vclo_h(a: v8i16) -> v8i16;
617 #[link_name = "llvm.loongarch.lsx.vclo.w"]
618 fn __lsx_vclo_w(a: v4i32) -> v4i32;
619 #[link_name = "llvm.loongarch.lsx.vclo.d"]
620 fn __lsx_vclo_d(a: v2i64) -> v2i64;
621 #[link_name = "llvm.loongarch.lsx.vclz.b"]
622 fn __lsx_vclz_b(a: v16i8) -> v16i8;
623 #[link_name = "llvm.loongarch.lsx.vclz.h"]
624 fn __lsx_vclz_h(a: v8i16) -> v8i16;
625 #[link_name = "llvm.loongarch.lsx.vclz.w"]
626 fn __lsx_vclz_w(a: v4i32) -> v4i32;
627 #[link_name = "llvm.loongarch.lsx.vclz.d"]
628 fn __lsx_vclz_d(a: v2i64) -> v2i64;
629 #[link_name = "llvm.loongarch.lsx.vpickve2gr.b"]
630 fn __lsx_vpickve2gr_b(a: v16i8, b: u32) -> i32;
631 #[link_name = "llvm.loongarch.lsx.vpickve2gr.h"]
632 fn __lsx_vpickve2gr_h(a: v8i16, b: u32) -> i32;
633 #[link_name = "llvm.loongarch.lsx.vpickve2gr.w"]
634 fn __lsx_vpickve2gr_w(a: v4i32, b: u32) -> i32;
635 #[link_name = "llvm.loongarch.lsx.vpickve2gr.d"]
636 fn __lsx_vpickve2gr_d(a: v2i64, b: u32) -> i64;
637 #[link_name = "llvm.loongarch.lsx.vpickve2gr.bu"]
638 fn __lsx_vpickve2gr_bu(a: v16i8, b: u32) -> u32;
639 #[link_name = "llvm.loongarch.lsx.vpickve2gr.hu"]
640 fn __lsx_vpickve2gr_hu(a: v8i16, b: u32) -> u32;
641 #[link_name = "llvm.loongarch.lsx.vpickve2gr.wu"]
642 fn __lsx_vpickve2gr_wu(a: v4i32, b: u32) -> u32;
643 #[link_name = "llvm.loongarch.lsx.vpickve2gr.du"]
644 fn __lsx_vpickve2gr_du(a: v2i64, b: u32) -> u64;
645 #[link_name = "llvm.loongarch.lsx.vinsgr2vr.b"]
646 fn __lsx_vinsgr2vr_b(a: v16i8, b: i32, c: u32) -> v16i8;
647 #[link_name = "llvm.loongarch.lsx.vinsgr2vr.h"]
648 fn __lsx_vinsgr2vr_h(a: v8i16, b: i32, c: u32) -> v8i16;
649 #[link_name = "llvm.loongarch.lsx.vinsgr2vr.w"]
650 fn __lsx_vinsgr2vr_w(a: v4i32, b: i32, c: u32) -> v4i32;
651 #[link_name = "llvm.loongarch.lsx.vinsgr2vr.d"]
652 fn __lsx_vinsgr2vr_d(a: v2i64, b: i64, c: u32) -> v2i64;
653 #[link_name = "llvm.loongarch.lsx.vfadd.s"]
654 fn __lsx_vfadd_s(a: v4f32, b: v4f32) -> v4f32;
655 #[link_name = "llvm.loongarch.lsx.vfadd.d"]
656 fn __lsx_vfadd_d(a: v2f64, b: v2f64) -> v2f64;
657 #[link_name = "llvm.loongarch.lsx.vfsub.s"]
658 fn __lsx_vfsub_s(a: v4f32, b: v4f32) -> v4f32;
659 #[link_name = "llvm.loongarch.lsx.vfsub.d"]
660 fn __lsx_vfsub_d(a: v2f64, b: v2f64) -> v2f64;
661 #[link_name = "llvm.loongarch.lsx.vfmul.s"]
662 fn __lsx_vfmul_s(a: v4f32, b: v4f32) -> v4f32;
663 #[link_name = "llvm.loongarch.lsx.vfmul.d"]
664 fn __lsx_vfmul_d(a: v2f64, b: v2f64) -> v2f64;
665 #[link_name = "llvm.loongarch.lsx.vfdiv.s"]
666 fn __lsx_vfdiv_s(a: v4f32, b: v4f32) -> v4f32;
667 #[link_name = "llvm.loongarch.lsx.vfdiv.d"]
668 fn __lsx_vfdiv_d(a: v2f64, b: v2f64) -> v2f64;
669 #[link_name = "llvm.loongarch.lsx.vfcvt.h.s"]
670 fn __lsx_vfcvt_h_s(a: v4f32, b: v4f32) -> v8i16;
671 #[link_name = "llvm.loongarch.lsx.vfcvt.s.d"]
672 fn __lsx_vfcvt_s_d(a: v2f64, b: v2f64) -> v4f32;
673 #[link_name = "llvm.loongarch.lsx.vfmin.s"]
674 fn __lsx_vfmin_s(a: v4f32, b: v4f32) -> v4f32;
675 #[link_name = "llvm.loongarch.lsx.vfmin.d"]
676 fn __lsx_vfmin_d(a: v2f64, b: v2f64) -> v2f64;
677 #[link_name = "llvm.loongarch.lsx.vfmina.s"]
678 fn __lsx_vfmina_s(a: v4f32, b: v4f32) -> v4f32;
679 #[link_name = "llvm.loongarch.lsx.vfmina.d"]
680 fn __lsx_vfmina_d(a: v2f64, b: v2f64) -> v2f64;
681 #[link_name = "llvm.loongarch.lsx.vfmax.s"]
682 fn __lsx_vfmax_s(a: v4f32, b: v4f32) -> v4f32;
683 #[link_name = "llvm.loongarch.lsx.vfmax.d"]
684 fn __lsx_vfmax_d(a: v2f64, b: v2f64) -> v2f64;
685 #[link_name = "llvm.loongarch.lsx.vfmaxa.s"]
686 fn __lsx_vfmaxa_s(a: v4f32, b: v4f32) -> v4f32;
687 #[link_name = "llvm.loongarch.lsx.vfmaxa.d"]
688 fn __lsx_vfmaxa_d(a: v2f64, b: v2f64) -> v2f64;
689 #[link_name = "llvm.loongarch.lsx.vfclass.s"]
690 fn __lsx_vfclass_s(a: v4f32) -> v4i32;
691 #[link_name = "llvm.loongarch.lsx.vfclass.d"]
692 fn __lsx_vfclass_d(a: v2f64) -> v2i64;
693 #[link_name = "llvm.loongarch.lsx.vfsqrt.s"]
694 fn __lsx_vfsqrt_s(a: v4f32) -> v4f32;
695 #[link_name = "llvm.loongarch.lsx.vfsqrt.d"]
696 fn __lsx_vfsqrt_d(a: v2f64) -> v2f64;
697 #[link_name = "llvm.loongarch.lsx.vfrecip.s"]
698 fn __lsx_vfrecip_s(a: v4f32) -> v4f32;
699 #[link_name = "llvm.loongarch.lsx.vfrecip.d"]
700 fn __lsx_vfrecip_d(a: v2f64) -> v2f64;
701 #[link_name = "llvm.loongarch.lsx.vfrecipe.s"]
702 fn __lsx_vfrecipe_s(a: v4f32) -> v4f32;
703 #[link_name = "llvm.loongarch.lsx.vfrecipe.d"]
704 fn __lsx_vfrecipe_d(a: v2f64) -> v2f64;
705 #[link_name = "llvm.loongarch.lsx.vfrsqrte.s"]
706 fn __lsx_vfrsqrte_s(a: v4f32) -> v4f32;
707 #[link_name = "llvm.loongarch.lsx.vfrsqrte.d"]
708 fn __lsx_vfrsqrte_d(a: v2f64) -> v2f64;
709 #[link_name = "llvm.loongarch.lsx.vfrint.s"]
710 fn __lsx_vfrint_s(a: v4f32) -> v4f32;
711 #[link_name = "llvm.loongarch.lsx.vfrint.d"]
712 fn __lsx_vfrint_d(a: v2f64) -> v2f64;
713 #[link_name = "llvm.loongarch.lsx.vfrsqrt.s"]
714 fn __lsx_vfrsqrt_s(a: v4f32) -> v4f32;
715 #[link_name = "llvm.loongarch.lsx.vfrsqrt.d"]
716 fn __lsx_vfrsqrt_d(a: v2f64) -> v2f64;
717 #[link_name = "llvm.loongarch.lsx.vflogb.s"]
718 fn __lsx_vflogb_s(a: v4f32) -> v4f32;
719 #[link_name = "llvm.loongarch.lsx.vflogb.d"]
720 fn __lsx_vflogb_d(a: v2f64) -> v2f64;
721 #[link_name = "llvm.loongarch.lsx.vfcvth.s.h"]
722 fn __lsx_vfcvth_s_h(a: v8i16) -> v4f32;
723 #[link_name = "llvm.loongarch.lsx.vfcvth.d.s"]
724 fn __lsx_vfcvth_d_s(a: v4f32) -> v2f64;
725 #[link_name = "llvm.loongarch.lsx.vfcvtl.s.h"]
726 fn __lsx_vfcvtl_s_h(a: v8i16) -> v4f32;
727 #[link_name = "llvm.loongarch.lsx.vfcvtl.d.s"]
728 fn __lsx_vfcvtl_d_s(a: v4f32) -> v2f64;
729 #[link_name = "llvm.loongarch.lsx.vftint.w.s"]
730 fn __lsx_vftint_w_s(a: v4f32) -> v4i32;
731 #[link_name = "llvm.loongarch.lsx.vftint.l.d"]
732 fn __lsx_vftint_l_d(a: v2f64) -> v2i64;
733 #[link_name = "llvm.loongarch.lsx.vftint.wu.s"]
734 fn __lsx_vftint_wu_s(a: v4f32) -> v4u32;
735 #[link_name = "llvm.loongarch.lsx.vftint.lu.d"]
736 fn __lsx_vftint_lu_d(a: v2f64) -> v2u64;
737 #[link_name = "llvm.loongarch.lsx.vftintrz.w.s"]
738 fn __lsx_vftintrz_w_s(a: v4f32) -> v4i32;
739 #[link_name = "llvm.loongarch.lsx.vftintrz.l.d"]
740 fn __lsx_vftintrz_l_d(a: v2f64) -> v2i64;
741 #[link_name = "llvm.loongarch.lsx.vftintrz.wu.s"]
742 fn __lsx_vftintrz_wu_s(a: v4f32) -> v4u32;
743 #[link_name = "llvm.loongarch.lsx.vftintrz.lu.d"]
744 fn __lsx_vftintrz_lu_d(a: v2f64) -> v2u64;
745 #[link_name = "llvm.loongarch.lsx.vffint.s.w"]
746 fn __lsx_vffint_s_w(a: v4i32) -> v4f32;
747 #[link_name = "llvm.loongarch.lsx.vffint.d.l"]
748 fn __lsx_vffint_d_l(a: v2i64) -> v2f64;
749 #[link_name = "llvm.loongarch.lsx.vffint.s.wu"]
750 fn __lsx_vffint_s_wu(a: v4u32) -> v4f32;
751 #[link_name = "llvm.loongarch.lsx.vffint.d.lu"]
752 fn __lsx_vffint_d_lu(a: v2u64) -> v2f64;
753 #[link_name = "llvm.loongarch.lsx.vandn.v"]
754 fn __lsx_vandn_v(a: v16u8, b: v16u8) -> v16u8;
755 #[link_name = "llvm.loongarch.lsx.vneg.b"]
756 fn __lsx_vneg_b(a: v16i8) -> v16i8;
757 #[link_name = "llvm.loongarch.lsx.vneg.h"]
758 fn __lsx_vneg_h(a: v8i16) -> v8i16;
759 #[link_name = "llvm.loongarch.lsx.vneg.w"]
760 fn __lsx_vneg_w(a: v4i32) -> v4i32;
761 #[link_name = "llvm.loongarch.lsx.vneg.d"]
762 fn __lsx_vneg_d(a: v2i64) -> v2i64;
763 #[link_name = "llvm.loongarch.lsx.vmuh.b"]
764 fn __lsx_vmuh_b(a: v16i8, b: v16i8) -> v16i8;
765 #[link_name = "llvm.loongarch.lsx.vmuh.h"]
766 fn __lsx_vmuh_h(a: v8i16, b: v8i16) -> v8i16;
767 #[link_name = "llvm.loongarch.lsx.vmuh.w"]
768 fn __lsx_vmuh_w(a: v4i32, b: v4i32) -> v4i32;
769 #[link_name = "llvm.loongarch.lsx.vmuh.d"]
770 fn __lsx_vmuh_d(a: v2i64, b: v2i64) -> v2i64;
771 #[link_name = "llvm.loongarch.lsx.vmuh.bu"]
772 fn __lsx_vmuh_bu(a: v16u8, b: v16u8) -> v16u8;
773 #[link_name = "llvm.loongarch.lsx.vmuh.hu"]
774 fn __lsx_vmuh_hu(a: v8u16, b: v8u16) -> v8u16;
775 #[link_name = "llvm.loongarch.lsx.vmuh.wu"]
776 fn __lsx_vmuh_wu(a: v4u32, b: v4u32) -> v4u32;
777 #[link_name = "llvm.loongarch.lsx.vmuh.du"]
778 fn __lsx_vmuh_du(a: v2u64, b: v2u64) -> v2u64;
779 #[link_name = "llvm.loongarch.lsx.vsllwil.h.b"]
780 fn __lsx_vsllwil_h_b(a: v16i8, b: u32) -> v8i16;
781 #[link_name = "llvm.loongarch.lsx.vsllwil.w.h"]
782 fn __lsx_vsllwil_w_h(a: v8i16, b: u32) -> v4i32;
783 #[link_name = "llvm.loongarch.lsx.vsllwil.d.w"]
784 fn __lsx_vsllwil_d_w(a: v4i32, b: u32) -> v2i64;
785 #[link_name = "llvm.loongarch.lsx.vsllwil.hu.bu"]
786 fn __lsx_vsllwil_hu_bu(a: v16u8, b: u32) -> v8u16;
787 #[link_name = "llvm.loongarch.lsx.vsllwil.wu.hu"]
788 fn __lsx_vsllwil_wu_hu(a: v8u16, b: u32) -> v4u32;
789 #[link_name = "llvm.loongarch.lsx.vsllwil.du.wu"]
790 fn __lsx_vsllwil_du_wu(a: v4u32, b: u32) -> v2u64;
791 #[link_name = "llvm.loongarch.lsx.vsran.b.h"]
792 fn __lsx_vsran_b_h(a: v8i16, b: v8i16) -> v16i8;
793 #[link_name = "llvm.loongarch.lsx.vsran.h.w"]
794 fn __lsx_vsran_h_w(a: v4i32, b: v4i32) -> v8i16;
795 #[link_name = "llvm.loongarch.lsx.vsran.w.d"]
796 fn __lsx_vsran_w_d(a: v2i64, b: v2i64) -> v4i32;
797 #[link_name = "llvm.loongarch.lsx.vssran.b.h"]
798 fn __lsx_vssran_b_h(a: v8i16, b: v8i16) -> v16i8;
799 #[link_name = "llvm.loongarch.lsx.vssran.h.w"]
800 fn __lsx_vssran_h_w(a: v4i32, b: v4i32) -> v8i16;
801 #[link_name = "llvm.loongarch.lsx.vssran.w.d"]
802 fn __lsx_vssran_w_d(a: v2i64, b: v2i64) -> v4i32;
803 #[link_name = "llvm.loongarch.lsx.vssran.bu.h"]
804 fn __lsx_vssran_bu_h(a: v8u16, b: v8u16) -> v16u8;
805 #[link_name = "llvm.loongarch.lsx.vssran.hu.w"]
806 fn __lsx_vssran_hu_w(a: v4u32, b: v4u32) -> v8u16;
807 #[link_name = "llvm.loongarch.lsx.vssran.wu.d"]
808 fn __lsx_vssran_wu_d(a: v2u64, b: v2u64) -> v4u32;
809 #[link_name = "llvm.loongarch.lsx.vsrarn.b.h"]
810 fn __lsx_vsrarn_b_h(a: v8i16, b: v8i16) -> v16i8;
811 #[link_name = "llvm.loongarch.lsx.vsrarn.h.w"]
812 fn __lsx_vsrarn_h_w(a: v4i32, b: v4i32) -> v8i16;
813 #[link_name = "llvm.loongarch.lsx.vsrarn.w.d"]
814 fn __lsx_vsrarn_w_d(a: v2i64, b: v2i64) -> v4i32;
815 #[link_name = "llvm.loongarch.lsx.vssrarn.b.h"]
816 fn __lsx_vssrarn_b_h(a: v8i16, b: v8i16) -> v16i8;
817 #[link_name = "llvm.loongarch.lsx.vssrarn.h.w"]
818 fn __lsx_vssrarn_h_w(a: v4i32, b: v4i32) -> v8i16;
819 #[link_name = "llvm.loongarch.lsx.vssrarn.w.d"]
820 fn __lsx_vssrarn_w_d(a: v2i64, b: v2i64) -> v4i32;
821 #[link_name = "llvm.loongarch.lsx.vssrarn.bu.h"]
822 fn __lsx_vssrarn_bu_h(a: v8u16, b: v8u16) -> v16u8;
823 #[link_name = "llvm.loongarch.lsx.vssrarn.hu.w"]
824 fn __lsx_vssrarn_hu_w(a: v4u32, b: v4u32) -> v8u16;
825 #[link_name = "llvm.loongarch.lsx.vssrarn.wu.d"]
826 fn __lsx_vssrarn_wu_d(a: v2u64, b: v2u64) -> v4u32;
827 #[link_name = "llvm.loongarch.lsx.vsrln.b.h"]
828 fn __lsx_vsrln_b_h(a: v8i16, b: v8i16) -> v16i8;
829 #[link_name = "llvm.loongarch.lsx.vsrln.h.w"]
830 fn __lsx_vsrln_h_w(a: v4i32, b: v4i32) -> v8i16;
831 #[link_name = "llvm.loongarch.lsx.vsrln.w.d"]
832 fn __lsx_vsrln_w_d(a: v2i64, b: v2i64) -> v4i32;
833 #[link_name = "llvm.loongarch.lsx.vssrln.bu.h"]
834 fn __lsx_vssrln_bu_h(a: v8u16, b: v8u16) -> v16u8;
835 #[link_name = "llvm.loongarch.lsx.vssrln.hu.w"]
836 fn __lsx_vssrln_hu_w(a: v4u32, b: v4u32) -> v8u16;
837 #[link_name = "llvm.loongarch.lsx.vssrln.wu.d"]
838 fn __lsx_vssrln_wu_d(a: v2u64, b: v2u64) -> v4u32;
839 #[link_name = "llvm.loongarch.lsx.vsrlrn.b.h"]
840 fn __lsx_vsrlrn_b_h(a: v8i16, b: v8i16) -> v16i8;
841 #[link_name = "llvm.loongarch.lsx.vsrlrn.h.w"]
842 fn __lsx_vsrlrn_h_w(a: v4i32, b: v4i32) -> v8i16;
843 #[link_name = "llvm.loongarch.lsx.vsrlrn.w.d"]
844 fn __lsx_vsrlrn_w_d(a: v2i64, b: v2i64) -> v4i32;
845 #[link_name = "llvm.loongarch.lsx.vssrlrn.bu.h"]
846 fn __lsx_vssrlrn_bu_h(a: v8u16, b: v8u16) -> v16u8;
847 #[link_name = "llvm.loongarch.lsx.vssrlrn.hu.w"]
848 fn __lsx_vssrlrn_hu_w(a: v4u32, b: v4u32) -> v8u16;
849 #[link_name = "llvm.loongarch.lsx.vssrlrn.wu.d"]
850 fn __lsx_vssrlrn_wu_d(a: v2u64, b: v2u64) -> v4u32;
851 #[link_name = "llvm.loongarch.lsx.vfrstpi.b"]
852 fn __lsx_vfrstpi_b(a: v16i8, b: v16i8, c: u32) -> v16i8;
853 #[link_name = "llvm.loongarch.lsx.vfrstpi.h"]
854 fn __lsx_vfrstpi_h(a: v8i16, b: v8i16, c: u32) -> v8i16;
855 #[link_name = "llvm.loongarch.lsx.vfrstp.b"]
856 fn __lsx_vfrstp_b(a: v16i8, b: v16i8, c: v16i8) -> v16i8;
857 #[link_name = "llvm.loongarch.lsx.vfrstp.h"]
858 fn __lsx_vfrstp_h(a: v8i16, b: v8i16, c: v8i16) -> v8i16;
859 #[link_name = "llvm.loongarch.lsx.vshuf4i.d"]
860 fn __lsx_vshuf4i_d(a: v2i64, b: v2i64, c: u32) -> v2i64;
861 #[link_name = "llvm.loongarch.lsx.vbsrl.v"]
862 fn __lsx_vbsrl_v(a: v16i8, b: u32) -> v16i8;
863 #[link_name = "llvm.loongarch.lsx.vbsll.v"]
864 fn __lsx_vbsll_v(a: v16i8, b: u32) -> v16i8;
865 #[link_name = "llvm.loongarch.lsx.vextrins.b"]
866 fn __lsx_vextrins_b(a: v16i8, b: v16i8, c: u32) -> v16i8;
867 #[link_name = "llvm.loongarch.lsx.vextrins.h"]
868 fn __lsx_vextrins_h(a: v8i16, b: v8i16, c: u32) -> v8i16;
869 #[link_name = "llvm.loongarch.lsx.vextrins.w"]
870 fn __lsx_vextrins_w(a: v4i32, b: v4i32, c: u32) -> v4i32;
871 #[link_name = "llvm.loongarch.lsx.vextrins.d"]
872 fn __lsx_vextrins_d(a: v2i64, b: v2i64, c: u32) -> v2i64;
873 #[link_name = "llvm.loongarch.lsx.vmskltz.b"]
874 fn __lsx_vmskltz_b(a: v16i8) -> v16i8;
875 #[link_name = "llvm.loongarch.lsx.vmskltz.h"]
876 fn __lsx_vmskltz_h(a: v8i16) -> v8i16;
877 #[link_name = "llvm.loongarch.lsx.vmskltz.w"]
878 fn __lsx_vmskltz_w(a: v4i32) -> v4i32;
879 #[link_name = "llvm.loongarch.lsx.vmskltz.d"]
880 fn __lsx_vmskltz_d(a: v2i64) -> v2i64;
881 #[link_name = "llvm.loongarch.lsx.vsigncov.b"]
882 fn __lsx_vsigncov_b(a: v16i8, b: v16i8) -> v16i8;
883 #[link_name = "llvm.loongarch.lsx.vsigncov.h"]
884 fn __lsx_vsigncov_h(a: v8i16, b: v8i16) -> v8i16;
885 #[link_name = "llvm.loongarch.lsx.vsigncov.w"]
886 fn __lsx_vsigncov_w(a: v4i32, b: v4i32) -> v4i32;
887 #[link_name = "llvm.loongarch.lsx.vsigncov.d"]
888 fn __lsx_vsigncov_d(a: v2i64, b: v2i64) -> v2i64;
889 #[link_name = "llvm.loongarch.lsx.vfmadd.s"]
890 fn __lsx_vfmadd_s(a: v4f32, b: v4f32, c: v4f32) -> v4f32;
891 #[link_name = "llvm.loongarch.lsx.vfmadd.d"]
892 fn __lsx_vfmadd_d(a: v2f64, b: v2f64, c: v2f64) -> v2f64;
893 #[link_name = "llvm.loongarch.lsx.vfmsub.s"]
894 fn __lsx_vfmsub_s(a: v4f32, b: v4f32, c: v4f32) -> v4f32;
895 #[link_name = "llvm.loongarch.lsx.vfmsub.d"]
896 fn __lsx_vfmsub_d(a: v2f64, b: v2f64, c: v2f64) -> v2f64;
897 #[link_name = "llvm.loongarch.lsx.vfnmadd.s"]
898 fn __lsx_vfnmadd_s(a: v4f32, b: v4f32, c: v4f32) -> v4f32;
899 #[link_name = "llvm.loongarch.lsx.vfnmadd.d"]
900 fn __lsx_vfnmadd_d(a: v2f64, b: v2f64, c: v2f64) -> v2f64;
901 #[link_name = "llvm.loongarch.lsx.vfnmsub.s"]
902 fn __lsx_vfnmsub_s(a: v4f32, b: v4f32, c: v4f32) -> v4f32;
903 #[link_name = "llvm.loongarch.lsx.vfnmsub.d"]
904 fn __lsx_vfnmsub_d(a: v2f64, b: v2f64, c: v2f64) -> v2f64;
905 #[link_name = "llvm.loongarch.lsx.vftintrne.w.s"]
906 fn __lsx_vftintrne_w_s(a: v4f32) -> v4i32;
907 #[link_name = "llvm.loongarch.lsx.vftintrne.l.d"]
908 fn __lsx_vftintrne_l_d(a: v2f64) -> v2i64;
909 #[link_name = "llvm.loongarch.lsx.vftintrp.w.s"]
910 fn __lsx_vftintrp_w_s(a: v4f32) -> v4i32;
911 #[link_name = "llvm.loongarch.lsx.vftintrp.l.d"]
912 fn __lsx_vftintrp_l_d(a: v2f64) -> v2i64;
913 #[link_name = "llvm.loongarch.lsx.vftintrm.w.s"]
914 fn __lsx_vftintrm_w_s(a: v4f32) -> v4i32;
915 #[link_name = "llvm.loongarch.lsx.vftintrm.l.d"]
916 fn __lsx_vftintrm_l_d(a: v2f64) -> v2i64;
917 #[link_name = "llvm.loongarch.lsx.vftint.w.d"]
918 fn __lsx_vftint_w_d(a: v2f64, b: v2f64) -> v4i32;
919 #[link_name = "llvm.loongarch.lsx.vffint.s.l"]
920 fn __lsx_vffint_s_l(a: v2i64, b: v2i64) -> v4f32;
921 #[link_name = "llvm.loongarch.lsx.vftintrz.w.d"]
922 fn __lsx_vftintrz_w_d(a: v2f64, b: v2f64) -> v4i32;
923 #[link_name = "llvm.loongarch.lsx.vftintrp.w.d"]
924 fn __lsx_vftintrp_w_d(a: v2f64, b: v2f64) -> v4i32;
925 #[link_name = "llvm.loongarch.lsx.vftintrm.w.d"]
926 fn __lsx_vftintrm_w_d(a: v2f64, b: v2f64) -> v4i32;
927 #[link_name = "llvm.loongarch.lsx.vftintrne.w.d"]
928 fn __lsx_vftintrne_w_d(a: v2f64, b: v2f64) -> v4i32;
929 #[link_name = "llvm.loongarch.lsx.vftintl.l.s"]
930 fn __lsx_vftintl_l_s(a: v4f32) -> v2i64;
931 #[link_name = "llvm.loongarch.lsx.vftinth.l.s"]
932 fn __lsx_vftinth_l_s(a: v4f32) -> v2i64;
933 #[link_name = "llvm.loongarch.lsx.vffinth.d.w"]
934 fn __lsx_vffinth_d_w(a: v4i32) -> v2f64;
935 #[link_name = "llvm.loongarch.lsx.vffintl.d.w"]
936 fn __lsx_vffintl_d_w(a: v4i32) -> v2f64;
937 #[link_name = "llvm.loongarch.lsx.vftintrzl.l.s"]
938 fn __lsx_vftintrzl_l_s(a: v4f32) -> v2i64;
939 #[link_name = "llvm.loongarch.lsx.vftintrzh.l.s"]
940 fn __lsx_vftintrzh_l_s(a: v4f32) -> v2i64;
941 #[link_name = "llvm.loongarch.lsx.vftintrpl.l.s"]
942 fn __lsx_vftintrpl_l_s(a: v4f32) -> v2i64;
943 #[link_name = "llvm.loongarch.lsx.vftintrph.l.s"]
944 fn __lsx_vftintrph_l_s(a: v4f32) -> v2i64;
945 #[link_name = "llvm.loongarch.lsx.vftintrml.l.s"]
946 fn __lsx_vftintrml_l_s(a: v4f32) -> v2i64;
947 #[link_name = "llvm.loongarch.lsx.vftintrmh.l.s"]
948 fn __lsx_vftintrmh_l_s(a: v4f32) -> v2i64;
949 #[link_name = "llvm.loongarch.lsx.vftintrnel.l.s"]
950 fn __lsx_vftintrnel_l_s(a: v4f32) -> v2i64;
951 #[link_name = "llvm.loongarch.lsx.vftintrneh.l.s"]
952 fn __lsx_vftintrneh_l_s(a: v4f32) -> v2i64;
953 #[link_name = "llvm.loongarch.lsx.vfrintrne.s"]
954 fn __lsx_vfrintrne_s(a: v4f32) -> v4f32;
955 #[link_name = "llvm.loongarch.lsx.vfrintrne.d"]
956 fn __lsx_vfrintrne_d(a: v2f64) -> v2f64;
957 #[link_name = "llvm.loongarch.lsx.vfrintrz.s"]
958 fn __lsx_vfrintrz_s(a: v4f32) -> v4f32;
959 #[link_name = "llvm.loongarch.lsx.vfrintrz.d"]
960 fn __lsx_vfrintrz_d(a: v2f64) -> v2f64;
961 #[link_name = "llvm.loongarch.lsx.vfrintrp.s"]
962 fn __lsx_vfrintrp_s(a: v4f32) -> v4f32;
963 #[link_name = "llvm.loongarch.lsx.vfrintrp.d"]
964 fn __lsx_vfrintrp_d(a: v2f64) -> v2f64;
965 #[link_name = "llvm.loongarch.lsx.vfrintrm.s"]
966 fn __lsx_vfrintrm_s(a: v4f32) -> v4f32;
967 #[link_name = "llvm.loongarch.lsx.vfrintrm.d"]
968 fn __lsx_vfrintrm_d(a: v2f64) -> v2f64;
969 #[link_name = "llvm.loongarch.lsx.vstelm.b"]
970 fn __lsx_vstelm_b(a: v16i8, b: *mut i8, c: i32, d: u32);
971 #[link_name = "llvm.loongarch.lsx.vstelm.h"]
972 fn __lsx_vstelm_h(a: v8i16, b: *mut i8, c: i32, d: u32);
973 #[link_name = "llvm.loongarch.lsx.vstelm.w"]
974 fn __lsx_vstelm_w(a: v4i32, b: *mut i8, c: i32, d: u32);
975 #[link_name = "llvm.loongarch.lsx.vstelm.d"]
976 fn __lsx_vstelm_d(a: v2i64, b: *mut i8, c: i32, d: u32);
977 #[link_name = "llvm.loongarch.lsx.vaddwev.d.w"]
978 fn __lsx_vaddwev_d_w(a: v4i32, b: v4i32) -> v2i64;
979 #[link_name = "llvm.loongarch.lsx.vaddwev.w.h"]
980 fn __lsx_vaddwev_w_h(a: v8i16, b: v8i16) -> v4i32;
981 #[link_name = "llvm.loongarch.lsx.vaddwev.h.b"]
982 fn __lsx_vaddwev_h_b(a: v16i8, b: v16i8) -> v8i16;
983 #[link_name = "llvm.loongarch.lsx.vaddwod.d.w"]
984 fn __lsx_vaddwod_d_w(a: v4i32, b: v4i32) -> v2i64;
985 #[link_name = "llvm.loongarch.lsx.vaddwod.w.h"]
986 fn __lsx_vaddwod_w_h(a: v8i16, b: v8i16) -> v4i32;
987 #[link_name = "llvm.loongarch.lsx.vaddwod.h.b"]
988 fn __lsx_vaddwod_h_b(a: v16i8, b: v16i8) -> v8i16;
989 #[link_name = "llvm.loongarch.lsx.vaddwev.d.wu"]
990 fn __lsx_vaddwev_d_wu(a: v4u32, b: v4u32) -> v2i64;
991 #[link_name = "llvm.loongarch.lsx.vaddwev.w.hu"]
992 fn __lsx_vaddwev_w_hu(a: v8u16, b: v8u16) -> v4i32;
993 #[link_name = "llvm.loongarch.lsx.vaddwev.h.bu"]
994 fn __lsx_vaddwev_h_bu(a: v16u8, b: v16u8) -> v8i16;
995 #[link_name = "llvm.loongarch.lsx.vaddwod.d.wu"]
996 fn __lsx_vaddwod_d_wu(a: v4u32, b: v4u32) -> v2i64;
997 #[link_name = "llvm.loongarch.lsx.vaddwod.w.hu"]
998 fn __lsx_vaddwod_w_hu(a: v8u16, b: v8u16) -> v4i32;
999 #[link_name = "llvm.loongarch.lsx.vaddwod.h.bu"]
1000 fn __lsx_vaddwod_h_bu(a: v16u8, b: v16u8) -> v8i16;
1001 #[link_name = "llvm.loongarch.lsx.vaddwev.d.wu.w"]
1002 fn __lsx_vaddwev_d_wu_w(a: v4u32, b: v4i32) -> v2i64;
1003 #[link_name = "llvm.loongarch.lsx.vaddwev.w.hu.h"]
1004 fn __lsx_vaddwev_w_hu_h(a: v8u16, b: v8i16) -> v4i32;
1005 #[link_name = "llvm.loongarch.lsx.vaddwev.h.bu.b"]
1006 fn __lsx_vaddwev_h_bu_b(a: v16u8, b: v16i8) -> v8i16;
1007 #[link_name = "llvm.loongarch.lsx.vaddwod.d.wu.w"]
1008 fn __lsx_vaddwod_d_wu_w(a: v4u32, b: v4i32) -> v2i64;
1009 #[link_name = "llvm.loongarch.lsx.vaddwod.w.hu.h"]
1010 fn __lsx_vaddwod_w_hu_h(a: v8u16, b: v8i16) -> v4i32;
1011 #[link_name = "llvm.loongarch.lsx.vaddwod.h.bu.b"]
1012 fn __lsx_vaddwod_h_bu_b(a: v16u8, b: v16i8) -> v8i16;
1013 #[link_name = "llvm.loongarch.lsx.vsubwev.d.w"]
1014 fn __lsx_vsubwev_d_w(a: v4i32, b: v4i32) -> v2i64;
1015 #[link_name = "llvm.loongarch.lsx.vsubwev.w.h"]
1016 fn __lsx_vsubwev_w_h(a: v8i16, b: v8i16) -> v4i32;
1017 #[link_name = "llvm.loongarch.lsx.vsubwev.h.b"]
1018 fn __lsx_vsubwev_h_b(a: v16i8, b: v16i8) -> v8i16;
1019 #[link_name = "llvm.loongarch.lsx.vsubwod.d.w"]
1020 fn __lsx_vsubwod_d_w(a: v4i32, b: v4i32) -> v2i64;
1021 #[link_name = "llvm.loongarch.lsx.vsubwod.w.h"]
1022 fn __lsx_vsubwod_w_h(a: v8i16, b: v8i16) -> v4i32;
1023 #[link_name = "llvm.loongarch.lsx.vsubwod.h.b"]
1024 fn __lsx_vsubwod_h_b(a: v16i8, b: v16i8) -> v8i16;
1025 #[link_name = "llvm.loongarch.lsx.vsubwev.d.wu"]
1026 fn __lsx_vsubwev_d_wu(a: v4u32, b: v4u32) -> v2i64;
1027 #[link_name = "llvm.loongarch.lsx.vsubwev.w.hu"]
1028 fn __lsx_vsubwev_w_hu(a: v8u16, b: v8u16) -> v4i32;
1029 #[link_name = "llvm.loongarch.lsx.vsubwev.h.bu"]
1030 fn __lsx_vsubwev_h_bu(a: v16u8, b: v16u8) -> v8i16;
1031 #[link_name = "llvm.loongarch.lsx.vsubwod.d.wu"]
1032 fn __lsx_vsubwod_d_wu(a: v4u32, b: v4u32) -> v2i64;
1033 #[link_name = "llvm.loongarch.lsx.vsubwod.w.hu"]
1034 fn __lsx_vsubwod_w_hu(a: v8u16, b: v8u16) -> v4i32;
1035 #[link_name = "llvm.loongarch.lsx.vsubwod.h.bu"]
1036 fn __lsx_vsubwod_h_bu(a: v16u8, b: v16u8) -> v8i16;
1037 #[link_name = "llvm.loongarch.lsx.vaddwev.q.d"]
1038 fn __lsx_vaddwev_q_d(a: v2i64, b: v2i64) -> v2i64;
1039 #[link_name = "llvm.loongarch.lsx.vaddwod.q.d"]
1040 fn __lsx_vaddwod_q_d(a: v2i64, b: v2i64) -> v2i64;
1041 #[link_name = "llvm.loongarch.lsx.vaddwev.q.du"]
1042 fn __lsx_vaddwev_q_du(a: v2u64, b: v2u64) -> v2i64;
1043 #[link_name = "llvm.loongarch.lsx.vaddwod.q.du"]
1044 fn __lsx_vaddwod_q_du(a: v2u64, b: v2u64) -> v2i64;
1045 #[link_name = "llvm.loongarch.lsx.vsubwev.q.d"]
1046 fn __lsx_vsubwev_q_d(a: v2i64, b: v2i64) -> v2i64;
1047 #[link_name = "llvm.loongarch.lsx.vsubwod.q.d"]
1048 fn __lsx_vsubwod_q_d(a: v2i64, b: v2i64) -> v2i64;
1049 #[link_name = "llvm.loongarch.lsx.vsubwev.q.du"]
1050 fn __lsx_vsubwev_q_du(a: v2u64, b: v2u64) -> v2i64;
1051 #[link_name = "llvm.loongarch.lsx.vsubwod.q.du"]
1052 fn __lsx_vsubwod_q_du(a: v2u64, b: v2u64) -> v2i64;
1053 #[link_name = "llvm.loongarch.lsx.vaddwev.q.du.d"]
1054 fn __lsx_vaddwev_q_du_d(a: v2u64, b: v2i64) -> v2i64;
1055 #[link_name = "llvm.loongarch.lsx.vaddwod.q.du.d"]
1056 fn __lsx_vaddwod_q_du_d(a: v2u64, b: v2i64) -> v2i64;
1057 #[link_name = "llvm.loongarch.lsx.vmulwev.d.w"]
1058 fn __lsx_vmulwev_d_w(a: v4i32, b: v4i32) -> v2i64;
1059 #[link_name = "llvm.loongarch.lsx.vmulwev.w.h"]
1060 fn __lsx_vmulwev_w_h(a: v8i16, b: v8i16) -> v4i32;
1061 #[link_name = "llvm.loongarch.lsx.vmulwev.h.b"]
1062 fn __lsx_vmulwev_h_b(a: v16i8, b: v16i8) -> v8i16;
1063 #[link_name = "llvm.loongarch.lsx.vmulwod.d.w"]
1064 fn __lsx_vmulwod_d_w(a: v4i32, b: v4i32) -> v2i64;
1065 #[link_name = "llvm.loongarch.lsx.vmulwod.w.h"]
1066 fn __lsx_vmulwod_w_h(a: v8i16, b: v8i16) -> v4i32;
1067 #[link_name = "llvm.loongarch.lsx.vmulwod.h.b"]
1068 fn __lsx_vmulwod_h_b(a: v16i8, b: v16i8) -> v8i16;
1069 #[link_name = "llvm.loongarch.lsx.vmulwev.d.wu"]
1070 fn __lsx_vmulwev_d_wu(a: v4u32, b: v4u32) -> v2i64;
1071 #[link_name = "llvm.loongarch.lsx.vmulwev.w.hu"]
1072 fn __lsx_vmulwev_w_hu(a: v8u16, b: v8u16) -> v4i32;
1073 #[link_name = "llvm.loongarch.lsx.vmulwev.h.bu"]
1074 fn __lsx_vmulwev_h_bu(a: v16u8, b: v16u8) -> v8i16;
1075 #[link_name = "llvm.loongarch.lsx.vmulwod.d.wu"]
1076 fn __lsx_vmulwod_d_wu(a: v4u32, b: v4u32) -> v2i64;
1077 #[link_name = "llvm.loongarch.lsx.vmulwod.w.hu"]
1078 fn __lsx_vmulwod_w_hu(a: v8u16, b: v8u16) -> v4i32;
1079 #[link_name = "llvm.loongarch.lsx.vmulwod.h.bu"]
1080 fn __lsx_vmulwod_h_bu(a: v16u8, b: v16u8) -> v8i16;
1081 #[link_name = "llvm.loongarch.lsx.vmulwev.d.wu.w"]
1082 fn __lsx_vmulwev_d_wu_w(a: v4u32, b: v4i32) -> v2i64;
1083 #[link_name = "llvm.loongarch.lsx.vmulwev.w.hu.h"]
1084 fn __lsx_vmulwev_w_hu_h(a: v8u16, b: v8i16) -> v4i32;
1085 #[link_name = "llvm.loongarch.lsx.vmulwev.h.bu.b"]
1086 fn __lsx_vmulwev_h_bu_b(a: v16u8, b: v16i8) -> v8i16;
1087 #[link_name = "llvm.loongarch.lsx.vmulwod.d.wu.w"]
1088 fn __lsx_vmulwod_d_wu_w(a: v4u32, b: v4i32) -> v2i64;
1089 #[link_name = "llvm.loongarch.lsx.vmulwod.w.hu.h"]
1090 fn __lsx_vmulwod_w_hu_h(a: v8u16, b: v8i16) -> v4i32;
1091 #[link_name = "llvm.loongarch.lsx.vmulwod.h.bu.b"]
1092 fn __lsx_vmulwod_h_bu_b(a: v16u8, b: v16i8) -> v8i16;
1093 #[link_name = "llvm.loongarch.lsx.vmulwev.q.d"]
1094 fn __lsx_vmulwev_q_d(a: v2i64, b: v2i64) -> v2i64;
1095 #[link_name = "llvm.loongarch.lsx.vmulwod.q.d"]
1096 fn __lsx_vmulwod_q_d(a: v2i64, b: v2i64) -> v2i64;
1097 #[link_name = "llvm.loongarch.lsx.vmulwev.q.du"]
1098 fn __lsx_vmulwev_q_du(a: v2u64, b: v2u64) -> v2i64;
1099 #[link_name = "llvm.loongarch.lsx.vmulwod.q.du"]
1100 fn __lsx_vmulwod_q_du(a: v2u64, b: v2u64) -> v2i64;
1101 #[link_name = "llvm.loongarch.lsx.vmulwev.q.du.d"]
1102 fn __lsx_vmulwev_q_du_d(a: v2u64, b: v2i64) -> v2i64;
1103 #[link_name = "llvm.loongarch.lsx.vmulwod.q.du.d"]
1104 fn __lsx_vmulwod_q_du_d(a: v2u64, b: v2i64) -> v2i64;
1105 #[link_name = "llvm.loongarch.lsx.vhaddw.q.d"]
1106 fn __lsx_vhaddw_q_d(a: v2i64, b: v2i64) -> v2i64;
1107 #[link_name = "llvm.loongarch.lsx.vhaddw.qu.du"]
1108 fn __lsx_vhaddw_qu_du(a: v2u64, b: v2u64) -> v2u64;
1109 #[link_name = "llvm.loongarch.lsx.vhsubw.q.d"]
1110 fn __lsx_vhsubw_q_d(a: v2i64, b: v2i64) -> v2i64;
1111 #[link_name = "llvm.loongarch.lsx.vhsubw.qu.du"]
1112 fn __lsx_vhsubw_qu_du(a: v2u64, b: v2u64) -> v2u64;
1113 #[link_name = "llvm.loongarch.lsx.vmaddwev.d.w"]
1114 fn __lsx_vmaddwev_d_w(a: v2i64, b: v4i32, c: v4i32) -> v2i64;
1115 #[link_name = "llvm.loongarch.lsx.vmaddwev.w.h"]
1116 fn __lsx_vmaddwev_w_h(a: v4i32, b: v8i16, c: v8i16) -> v4i32;
1117 #[link_name = "llvm.loongarch.lsx.vmaddwev.h.b"]
1118 fn __lsx_vmaddwev_h_b(a: v8i16, b: v16i8, c: v16i8) -> v8i16;
1119 #[link_name = "llvm.loongarch.lsx.vmaddwev.d.wu"]
1120 fn __lsx_vmaddwev_d_wu(a: v2u64, b: v4u32, c: v4u32) -> v2u64;
1121 #[link_name = "llvm.loongarch.lsx.vmaddwev.w.hu"]
1122 fn __lsx_vmaddwev_w_hu(a: v4u32, b: v8u16, c: v8u16) -> v4u32;
1123 #[link_name = "llvm.loongarch.lsx.vmaddwev.h.bu"]
1124 fn __lsx_vmaddwev_h_bu(a: v8u16, b: v16u8, c: v16u8) -> v8u16;
1125 #[link_name = "llvm.loongarch.lsx.vmaddwod.d.w"]
1126 fn __lsx_vmaddwod_d_w(a: v2i64, b: v4i32, c: v4i32) -> v2i64;
1127 #[link_name = "llvm.loongarch.lsx.vmaddwod.w.h"]
1128 fn __lsx_vmaddwod_w_h(a: v4i32, b: v8i16, c: v8i16) -> v4i32;
1129 #[link_name = "llvm.loongarch.lsx.vmaddwod.h.b"]
1130 fn __lsx_vmaddwod_h_b(a: v8i16, b: v16i8, c: v16i8) -> v8i16;
1131 #[link_name = "llvm.loongarch.lsx.vmaddwod.d.wu"]
1132 fn __lsx_vmaddwod_d_wu(a: v2u64, b: v4u32, c: v4u32) -> v2u64;
1133 #[link_name = "llvm.loongarch.lsx.vmaddwod.w.hu"]
1134 fn __lsx_vmaddwod_w_hu(a: v4u32, b: v8u16, c: v8u16) -> v4u32;
1135 #[link_name = "llvm.loongarch.lsx.vmaddwod.h.bu"]
1136 fn __lsx_vmaddwod_h_bu(a: v8u16, b: v16u8, c: v16u8) -> v8u16;
1137 #[link_name = "llvm.loongarch.lsx.vmaddwev.d.wu.w"]
1138 fn __lsx_vmaddwev_d_wu_w(a: v2i64, b: v4u32, c: v4i32) -> v2i64;
1139 #[link_name = "llvm.loongarch.lsx.vmaddwev.w.hu.h"]
1140 fn __lsx_vmaddwev_w_hu_h(a: v4i32, b: v8u16, c: v8i16) -> v4i32;
1141 #[link_name = "llvm.loongarch.lsx.vmaddwev.h.bu.b"]
1142 fn __lsx_vmaddwev_h_bu_b(a: v8i16, b: v16u8, c: v16i8) -> v8i16;
1143 #[link_name = "llvm.loongarch.lsx.vmaddwod.d.wu.w"]
1144 fn __lsx_vmaddwod_d_wu_w(a: v2i64, b: v4u32, c: v4i32) -> v2i64;
1145 #[link_name = "llvm.loongarch.lsx.vmaddwod.w.hu.h"]
1146 fn __lsx_vmaddwod_w_hu_h(a: v4i32, b: v8u16, c: v8i16) -> v4i32;
1147 #[link_name = "llvm.loongarch.lsx.vmaddwod.h.bu.b"]
1148 fn __lsx_vmaddwod_h_bu_b(a: v8i16, b: v16u8, c: v16i8) -> v8i16;
1149 #[link_name = "llvm.loongarch.lsx.vmaddwev.q.d"]
1150 fn __lsx_vmaddwev_q_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64;
1151 #[link_name = "llvm.loongarch.lsx.vmaddwod.q.d"]
1152 fn __lsx_vmaddwod_q_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64;
1153 #[link_name = "llvm.loongarch.lsx.vmaddwev.q.du"]
1154 fn __lsx_vmaddwev_q_du(a: v2u64, b: v2u64, c: v2u64) -> v2u64;
1155 #[link_name = "llvm.loongarch.lsx.vmaddwod.q.du"]
1156 fn __lsx_vmaddwod_q_du(a: v2u64, b: v2u64, c: v2u64) -> v2u64;
1157 #[link_name = "llvm.loongarch.lsx.vmaddwev.q.du.d"]
1158 fn __lsx_vmaddwev_q_du_d(a: v2i64, b: v2u64, c: v2i64) -> v2i64;
1159 #[link_name = "llvm.loongarch.lsx.vmaddwod.q.du.d"]
1160 fn __lsx_vmaddwod_q_du_d(a: v2i64, b: v2u64, c: v2i64) -> v2i64;
1161 #[link_name = "llvm.loongarch.lsx.vrotr.b"]
1162 fn __lsx_vrotr_b(a: v16i8, b: v16i8) -> v16i8;
1163 #[link_name = "llvm.loongarch.lsx.vrotr.h"]
1164 fn __lsx_vrotr_h(a: v8i16, b: v8i16) -> v8i16;
1165 #[link_name = "llvm.loongarch.lsx.vrotr.w"]
1166 fn __lsx_vrotr_w(a: v4i32, b: v4i32) -> v4i32;
1167 #[link_name = "llvm.loongarch.lsx.vrotr.d"]
1168 fn __lsx_vrotr_d(a: v2i64, b: v2i64) -> v2i64;
1169 #[link_name = "llvm.loongarch.lsx.vadd.q"]
1170 fn __lsx_vadd_q(a: v2i64, b: v2i64) -> v2i64;
1171 #[link_name = "llvm.loongarch.lsx.vsub.q"]
1172 fn __lsx_vsub_q(a: v2i64, b: v2i64) -> v2i64;
1173 #[link_name = "llvm.loongarch.lsx.vldrepl.b"]
1174 fn __lsx_vldrepl_b(a: *const i8, b: i32) -> v16i8;
1175 #[link_name = "llvm.loongarch.lsx.vldrepl.h"]
1176 fn __lsx_vldrepl_h(a: *const i8, b: i32) -> v8i16;
1177 #[link_name = "llvm.loongarch.lsx.vldrepl.w"]
1178 fn __lsx_vldrepl_w(a: *const i8, b: i32) -> v4i32;
1179 #[link_name = "llvm.loongarch.lsx.vldrepl.d"]
1180 fn __lsx_vldrepl_d(a: *const i8, b: i32) -> v2i64;
1181 #[link_name = "llvm.loongarch.lsx.vmskgez.b"]
1182 fn __lsx_vmskgez_b(a: v16i8) -> v16i8;
1183 #[link_name = "llvm.loongarch.lsx.vmsknz.b"]
1184 fn __lsx_vmsknz_b(a: v16i8) -> v16i8;
1185 #[link_name = "llvm.loongarch.lsx.vexth.h.b"]
1186 fn __lsx_vexth_h_b(a: v16i8) -> v8i16;
1187 #[link_name = "llvm.loongarch.lsx.vexth.w.h"]
1188 fn __lsx_vexth_w_h(a: v8i16) -> v4i32;
1189 #[link_name = "llvm.loongarch.lsx.vexth.d.w"]
1190 fn __lsx_vexth_d_w(a: v4i32) -> v2i64;
1191 #[link_name = "llvm.loongarch.lsx.vexth.q.d"]
1192 fn __lsx_vexth_q_d(a: v2i64) -> v2i64;
1193 #[link_name = "llvm.loongarch.lsx.vexth.hu.bu"]
1194 fn __lsx_vexth_hu_bu(a: v16u8) -> v8u16;
1195 #[link_name = "llvm.loongarch.lsx.vexth.wu.hu"]
1196 fn __lsx_vexth_wu_hu(a: v8u16) -> v4u32;
1197 #[link_name = "llvm.loongarch.lsx.vexth.du.wu"]
1198 fn __lsx_vexth_du_wu(a: v4u32) -> v2u64;
1199 #[link_name = "llvm.loongarch.lsx.vexth.qu.du"]
1200 fn __lsx_vexth_qu_du(a: v2u64) -> v2u64;
1201 #[link_name = "llvm.loongarch.lsx.vrotri.b"]
1202 fn __lsx_vrotri_b(a: v16i8, b: u32) -> v16i8;
1203 #[link_name = "llvm.loongarch.lsx.vrotri.h"]
1204 fn __lsx_vrotri_h(a: v8i16, b: u32) -> v8i16;
1205 #[link_name = "llvm.loongarch.lsx.vrotri.w"]
1206 fn __lsx_vrotri_w(a: v4i32, b: u32) -> v4i32;
1207 #[link_name = "llvm.loongarch.lsx.vrotri.d"]
1208 fn __lsx_vrotri_d(a: v2i64, b: u32) -> v2i64;
1209 #[link_name = "llvm.loongarch.lsx.vextl.q.d"]
1210 fn __lsx_vextl_q_d(a: v2i64) -> v2i64;
1211 #[link_name = "llvm.loongarch.lsx.vsrlni.b.h"]
1212 fn __lsx_vsrlni_b_h(a: v16i8, b: v16i8, c: u32) -> v16i8;
1213 #[link_name = "llvm.loongarch.lsx.vsrlni.h.w"]
1214 fn __lsx_vsrlni_h_w(a: v8i16, b: v8i16, c: u32) -> v8i16;
1215 #[link_name = "llvm.loongarch.lsx.vsrlni.w.d"]
1216 fn __lsx_vsrlni_w_d(a: v4i32, b: v4i32, c: u32) -> v4i32;
1217 #[link_name = "llvm.loongarch.lsx.vsrlni.d.q"]
1218 fn __lsx_vsrlni_d_q(a: v2i64, b: v2i64, c: u32) -> v2i64;
1219 #[link_name = "llvm.loongarch.lsx.vsrlrni.b.h"]
1220 fn __lsx_vsrlrni_b_h(a: v16i8, b: v16i8, c: u32) -> v16i8;
1221 #[link_name = "llvm.loongarch.lsx.vsrlrni.h.w"]
1222 fn __lsx_vsrlrni_h_w(a: v8i16, b: v8i16, c: u32) -> v8i16;
1223 #[link_name = "llvm.loongarch.lsx.vsrlrni.w.d"]
1224 fn __lsx_vsrlrni_w_d(a: v4i32, b: v4i32, c: u32) -> v4i32;
1225 #[link_name = "llvm.loongarch.lsx.vsrlrni.d.q"]
1226 fn __lsx_vsrlrni_d_q(a: v2i64, b: v2i64, c: u32) -> v2i64;
1227 #[link_name = "llvm.loongarch.lsx.vssrlni.b.h"]
1228 fn __lsx_vssrlni_b_h(a: v16i8, b: v16i8, c: u32) -> v16i8;
1229 #[link_name = "llvm.loongarch.lsx.vssrlni.h.w"]
1230 fn __lsx_vssrlni_h_w(a: v8i16, b: v8i16, c: u32) -> v8i16;
1231 #[link_name = "llvm.loongarch.lsx.vssrlni.w.d"]
1232 fn __lsx_vssrlni_w_d(a: v4i32, b: v4i32, c: u32) -> v4i32;
1233 #[link_name = "llvm.loongarch.lsx.vssrlni.d.q"]
1234 fn __lsx_vssrlni_d_q(a: v2i64, b: v2i64, c: u32) -> v2i64;
1235 #[link_name = "llvm.loongarch.lsx.vssrlni.bu.h"]
1236 fn __lsx_vssrlni_bu_h(a: v16u8, b: v16i8, c: u32) -> v16u8;
1237 #[link_name = "llvm.loongarch.lsx.vssrlni.hu.w"]
1238 fn __lsx_vssrlni_hu_w(a: v8u16, b: v8i16, c: u32) -> v8u16;
1239 #[link_name = "llvm.loongarch.lsx.vssrlni.wu.d"]
1240 fn __lsx_vssrlni_wu_d(a: v4u32, b: v4i32, c: u32) -> v4u32;
1241 #[link_name = "llvm.loongarch.lsx.vssrlni.du.q"]
1242 fn __lsx_vssrlni_du_q(a: v2u64, b: v2i64, c: u32) -> v2u64;
1243 #[link_name = "llvm.loongarch.lsx.vssrlrni.b.h"]
1244 fn __lsx_vssrlrni_b_h(a: v16i8, b: v16i8, c: u32) -> v16i8;
1245 #[link_name = "llvm.loongarch.lsx.vssrlrni.h.w"]
1246 fn __lsx_vssrlrni_h_w(a: v8i16, b: v8i16, c: u32) -> v8i16;
1247 #[link_name = "llvm.loongarch.lsx.vssrlrni.w.d"]
1248 fn __lsx_vssrlrni_w_d(a: v4i32, b: v4i32, c: u32) -> v4i32;
1249 #[link_name = "llvm.loongarch.lsx.vssrlrni.d.q"]
1250 fn __lsx_vssrlrni_d_q(a: v2i64, b: v2i64, c: u32) -> v2i64;
1251 #[link_name = "llvm.loongarch.lsx.vssrlrni.bu.h"]
1252 fn __lsx_vssrlrni_bu_h(a: v16u8, b: v16i8, c: u32) -> v16u8;
1253 #[link_name = "llvm.loongarch.lsx.vssrlrni.hu.w"]
1254 fn __lsx_vssrlrni_hu_w(a: v8u16, b: v8i16, c: u32) -> v8u16;
1255 #[link_name = "llvm.loongarch.lsx.vssrlrni.wu.d"]
1256 fn __lsx_vssrlrni_wu_d(a: v4u32, b: v4i32, c: u32) -> v4u32;
1257 #[link_name = "llvm.loongarch.lsx.vssrlrni.du.q"]
1258 fn __lsx_vssrlrni_du_q(a: v2u64, b: v2i64, c: u32) -> v2u64;
1259 #[link_name = "llvm.loongarch.lsx.vsrani.b.h"]
1260 fn __lsx_vsrani_b_h(a: v16i8, b: v16i8, c: u32) -> v16i8;
1261 #[link_name = "llvm.loongarch.lsx.vsrani.h.w"]
1262 fn __lsx_vsrani_h_w(a: v8i16, b: v8i16, c: u32) -> v8i16;
1263 #[link_name = "llvm.loongarch.lsx.vsrani.w.d"]
1264 fn __lsx_vsrani_w_d(a: v4i32, b: v4i32, c: u32) -> v4i32;
1265 #[link_name = "llvm.loongarch.lsx.vsrani.d.q"]
1266 fn __lsx_vsrani_d_q(a: v2i64, b: v2i64, c: u32) -> v2i64;
1267 #[link_name = "llvm.loongarch.lsx.vsrarni.b.h"]
1268 fn __lsx_vsrarni_b_h(a: v16i8, b: v16i8, c: u32) -> v16i8;
1269 #[link_name = "llvm.loongarch.lsx.vsrarni.h.w"]
1270 fn __lsx_vsrarni_h_w(a: v8i16, b: v8i16, c: u32) -> v8i16;
1271 #[link_name = "llvm.loongarch.lsx.vsrarni.w.d"]
1272 fn __lsx_vsrarni_w_d(a: v4i32, b: v4i32, c: u32) -> v4i32;
1273 #[link_name = "llvm.loongarch.lsx.vsrarni.d.q"]
1274 fn __lsx_vsrarni_d_q(a: v2i64, b: v2i64, c: u32) -> v2i64;
1275 #[link_name = "llvm.loongarch.lsx.vssrani.b.h"]
1276 fn __lsx_vssrani_b_h(a: v16i8, b: v16i8, c: u32) -> v16i8;
1277 #[link_name = "llvm.loongarch.lsx.vssrani.h.w"]
1278 fn __lsx_vssrani_h_w(a: v8i16, b: v8i16, c: u32) -> v8i16;
1279 #[link_name = "llvm.loongarch.lsx.vssrani.w.d"]
1280 fn __lsx_vssrani_w_d(a: v4i32, b: v4i32, c: u32) -> v4i32;
1281 #[link_name = "llvm.loongarch.lsx.vssrani.d.q"]
1282 fn __lsx_vssrani_d_q(a: v2i64, b: v2i64, c: u32) -> v2i64;
1283 #[link_name = "llvm.loongarch.lsx.vssrani.bu.h"]
1284 fn __lsx_vssrani_bu_h(a: v16u8, b: v16i8, c: u32) -> v16u8;
1285 #[link_name = "llvm.loongarch.lsx.vssrani.hu.w"]
1286 fn __lsx_vssrani_hu_w(a: v8u16, b: v8i16, c: u32) -> v8u16;
1287 #[link_name = "llvm.loongarch.lsx.vssrani.wu.d"]
1288 fn __lsx_vssrani_wu_d(a: v4u32, b: v4i32, c: u32) -> v4u32;
1289 #[link_name = "llvm.loongarch.lsx.vssrani.du.q"]
1290 fn __lsx_vssrani_du_q(a: v2u64, b: v2i64, c: u32) -> v2u64;
1291 #[link_name = "llvm.loongarch.lsx.vssrarni.b.h"]
1292 fn __lsx_vssrarni_b_h(a: v16i8, b: v16i8, c: u32) -> v16i8;
1293 #[link_name = "llvm.loongarch.lsx.vssrarni.h.w"]
1294 fn __lsx_vssrarni_h_w(a: v8i16, b: v8i16, c: u32) -> v8i16;
1295 #[link_name = "llvm.loongarch.lsx.vssrarni.w.d"]
1296 fn __lsx_vssrarni_w_d(a: v4i32, b: v4i32, c: u32) -> v4i32;
1297 #[link_name = "llvm.loongarch.lsx.vssrarni.d.q"]
1298 fn __lsx_vssrarni_d_q(a: v2i64, b: v2i64, c: u32) -> v2i64;
1299 #[link_name = "llvm.loongarch.lsx.vssrarni.bu.h"]
1300 fn __lsx_vssrarni_bu_h(a: v16u8, b: v16i8, c: u32) -> v16u8;
1301 #[link_name = "llvm.loongarch.lsx.vssrarni.hu.w"]
1302 fn __lsx_vssrarni_hu_w(a: v8u16, b: v8i16, c: u32) -> v8u16;
1303 #[link_name = "llvm.loongarch.lsx.vssrarni.wu.d"]
1304 fn __lsx_vssrarni_wu_d(a: v4u32, b: v4i32, c: u32) -> v4u32;
1305 #[link_name = "llvm.loongarch.lsx.vssrarni.du.q"]
1306 fn __lsx_vssrarni_du_q(a: v2u64, b: v2i64, c: u32) -> v2u64;
1307 #[link_name = "llvm.loongarch.lsx.vpermi.w"]
1308 fn __lsx_vpermi_w(a: v4i32, b: v4i32, c: u32) -> v4i32;
1309 #[link_name = "llvm.loongarch.lsx.vld"]
1310 fn __lsx_vld(a: *const i8, b: i32) -> v16i8;
1311 #[link_name = "llvm.loongarch.lsx.vst"]
1312 fn __lsx_vst(a: v16i8, b: *mut i8, c: i32);
1313 #[link_name = "llvm.loongarch.lsx.vssrlrn.b.h"]
1314 fn __lsx_vssrlrn_b_h(a: v8i16, b: v8i16) -> v16i8;
1315 #[link_name = "llvm.loongarch.lsx.vssrlrn.h.w"]
1316 fn __lsx_vssrlrn_h_w(a: v4i32, b: v4i32) -> v8i16;
1317 #[link_name = "llvm.loongarch.lsx.vssrlrn.w.d"]
1318 fn __lsx_vssrlrn_w_d(a: v2i64, b: v2i64) -> v4i32;
1319 #[link_name = "llvm.loongarch.lsx.vssrln.b.h"]
1320 fn __lsx_vssrln_b_h(a: v8i16, b: v8i16) -> v16i8;
1321 #[link_name = "llvm.loongarch.lsx.vssrln.h.w"]
1322 fn __lsx_vssrln_h_w(a: v4i32, b: v4i32) -> v8i16;
1323 #[link_name = "llvm.loongarch.lsx.vssrln.w.d"]
1324 fn __lsx_vssrln_w_d(a: v2i64, b: v2i64) -> v4i32;
1325 #[link_name = "llvm.loongarch.lsx.vorn.v"]
1326 fn __lsx_vorn_v(a: v16i8, b: v16i8) -> v16i8;
1327 #[link_name = "llvm.loongarch.lsx.vldi"]
1328 fn __lsx_vldi(a: i32) -> v2i64;
1329 #[link_name = "llvm.loongarch.lsx.vshuf.b"]
1330 fn __lsx_vshuf_b(a: v16i8, b: v16i8, c: v16i8) -> v16i8;
1331 #[link_name = "llvm.loongarch.lsx.vldx"]
1332 fn __lsx_vldx(a: *const i8, b: i64) -> v16i8;
1333 #[link_name = "llvm.loongarch.lsx.vstx"]
1334 fn __lsx_vstx(a: v16i8, b: *mut i8, c: i64);
1335 #[link_name = "llvm.loongarch.lsx.vextl.qu.du"]
1336 fn __lsx_vextl_qu_du(a: v2u64) -> v2u64;
1337 #[link_name = "llvm.loongarch.lsx.bnz.b"]
1338 fn __lsx_bnz_b(a: v16u8) -> i32;
1339 #[link_name = "llvm.loongarch.lsx.bnz.d"]
1340 fn __lsx_bnz_d(a: v2u64) -> i32;
1341 #[link_name = "llvm.loongarch.lsx.bnz.h"]
1342 fn __lsx_bnz_h(a: v8u16) -> i32;
1343 #[link_name = "llvm.loongarch.lsx.bnz.v"]
1344 fn __lsx_bnz_v(a: v16u8) -> i32;
1345 #[link_name = "llvm.loongarch.lsx.bnz.w"]
1346 fn __lsx_bnz_w(a: v4u32) -> i32;
1347 #[link_name = "llvm.loongarch.lsx.bz.b"]
1348 fn __lsx_bz_b(a: v16u8) -> i32;
1349 #[link_name = "llvm.loongarch.lsx.bz.d"]
1350 fn __lsx_bz_d(a: v2u64) -> i32;
1351 #[link_name = "llvm.loongarch.lsx.bz.h"]
1352 fn __lsx_bz_h(a: v8u16) -> i32;
1353 #[link_name = "llvm.loongarch.lsx.bz.v"]
1354 fn __lsx_bz_v(a: v16u8) -> i32;
1355 #[link_name = "llvm.loongarch.lsx.bz.w"]
1356 fn __lsx_bz_w(a: v4u32) -> i32;
1357 #[link_name = "llvm.loongarch.lsx.vfcmp.caf.d"]
1358 fn __lsx_vfcmp_caf_d(a: v2f64, b: v2f64) -> v2i64;
1359 #[link_name = "llvm.loongarch.lsx.vfcmp.caf.s"]
1360 fn __lsx_vfcmp_caf_s(a: v4f32, b: v4f32) -> v4i32;
1361 #[link_name = "llvm.loongarch.lsx.vfcmp.ceq.d"]
1362 fn __lsx_vfcmp_ceq_d(a: v2f64, b: v2f64) -> v2i64;
1363 #[link_name = "llvm.loongarch.lsx.vfcmp.ceq.s"]
1364 fn __lsx_vfcmp_ceq_s(a: v4f32, b: v4f32) -> v4i32;
1365 #[link_name = "llvm.loongarch.lsx.vfcmp.cle.d"]
1366 fn __lsx_vfcmp_cle_d(a: v2f64, b: v2f64) -> v2i64;
1367 #[link_name = "llvm.loongarch.lsx.vfcmp.cle.s"]
1368 fn __lsx_vfcmp_cle_s(a: v4f32, b: v4f32) -> v4i32;
1369 #[link_name = "llvm.loongarch.lsx.vfcmp.clt.d"]
1370 fn __lsx_vfcmp_clt_d(a: v2f64, b: v2f64) -> v2i64;
1371 #[link_name = "llvm.loongarch.lsx.vfcmp.clt.s"]
1372 fn __lsx_vfcmp_clt_s(a: v4f32, b: v4f32) -> v4i32;
1373 #[link_name = "llvm.loongarch.lsx.vfcmp.cne.d"]
1374 fn __lsx_vfcmp_cne_d(a: v2f64, b: v2f64) -> v2i64;
1375 #[link_name = "llvm.loongarch.lsx.vfcmp.cne.s"]
1376 fn __lsx_vfcmp_cne_s(a: v4f32, b: v4f32) -> v4i32;
1377 #[link_name = "llvm.loongarch.lsx.vfcmp.cor.d"]
1378 fn __lsx_vfcmp_cor_d(a: v2f64, b: v2f64) -> v2i64;
1379 #[link_name = "llvm.loongarch.lsx.vfcmp.cor.s"]
1380 fn __lsx_vfcmp_cor_s(a: v4f32, b: v4f32) -> v4i32;
1381 #[link_name = "llvm.loongarch.lsx.vfcmp.cueq.d"]
1382 fn __lsx_vfcmp_cueq_d(a: v2f64, b: v2f64) -> v2i64;
1383 #[link_name = "llvm.loongarch.lsx.vfcmp.cueq.s"]
1384 fn __lsx_vfcmp_cueq_s(a: v4f32, b: v4f32) -> v4i32;
1385 #[link_name = "llvm.loongarch.lsx.vfcmp.cule.d"]
1386 fn __lsx_vfcmp_cule_d(a: v2f64, b: v2f64) -> v2i64;
1387 #[link_name = "llvm.loongarch.lsx.vfcmp.cule.s"]
1388 fn __lsx_vfcmp_cule_s(a: v4f32, b: v4f32) -> v4i32;
1389 #[link_name = "llvm.loongarch.lsx.vfcmp.cult.d"]
1390 fn __lsx_vfcmp_cult_d(a: v2f64, b: v2f64) -> v2i64;
1391 #[link_name = "llvm.loongarch.lsx.vfcmp.cult.s"]
1392 fn __lsx_vfcmp_cult_s(a: v4f32, b: v4f32) -> v4i32;
1393 #[link_name = "llvm.loongarch.lsx.vfcmp.cun.d"]
1394 fn __lsx_vfcmp_cun_d(a: v2f64, b: v2f64) -> v2i64;
1395 #[link_name = "llvm.loongarch.lsx.vfcmp.cune.d"]
1396 fn __lsx_vfcmp_cune_d(a: v2f64, b: v2f64) -> v2i64;
1397 #[link_name = "llvm.loongarch.lsx.vfcmp.cune.s"]
1398 fn __lsx_vfcmp_cune_s(a: v4f32, b: v4f32) -> v4i32;
1399 #[link_name = "llvm.loongarch.lsx.vfcmp.cun.s"]
1400 fn __lsx_vfcmp_cun_s(a: v4f32, b: v4f32) -> v4i32;
1401 #[link_name = "llvm.loongarch.lsx.vfcmp.saf.d"]
1402 fn __lsx_vfcmp_saf_d(a: v2f64, b: v2f64) -> v2i64;
1403 #[link_name = "llvm.loongarch.lsx.vfcmp.saf.s"]
1404 fn __lsx_vfcmp_saf_s(a: v4f32, b: v4f32) -> v4i32;
1405 #[link_name = "llvm.loongarch.lsx.vfcmp.seq.d"]
1406 fn __lsx_vfcmp_seq_d(a: v2f64, b: v2f64) -> v2i64;
1407 #[link_name = "llvm.loongarch.lsx.vfcmp.seq.s"]
1408 fn __lsx_vfcmp_seq_s(a: v4f32, b: v4f32) -> v4i32;
1409 #[link_name = "llvm.loongarch.lsx.vfcmp.sle.d"]
1410 fn __lsx_vfcmp_sle_d(a: v2f64, b: v2f64) -> v2i64;
1411 #[link_name = "llvm.loongarch.lsx.vfcmp.sle.s"]
1412 fn __lsx_vfcmp_sle_s(a: v4f32, b: v4f32) -> v4i32;
1413 #[link_name = "llvm.loongarch.lsx.vfcmp.slt.d"]
1414 fn __lsx_vfcmp_slt_d(a: v2f64, b: v2f64) -> v2i64;
1415 #[link_name = "llvm.loongarch.lsx.vfcmp.slt.s"]
1416 fn __lsx_vfcmp_slt_s(a: v4f32, b: v4f32) -> v4i32;
1417 #[link_name = "llvm.loongarch.lsx.vfcmp.sne.d"]
1418 fn __lsx_vfcmp_sne_d(a: v2f64, b: v2f64) -> v2i64;
1419 #[link_name = "llvm.loongarch.lsx.vfcmp.sne.s"]
1420 fn __lsx_vfcmp_sne_s(a: v4f32, b: v4f32) -> v4i32;
1421 #[link_name = "llvm.loongarch.lsx.vfcmp.sor.d"]
1422 fn __lsx_vfcmp_sor_d(a: v2f64, b: v2f64) -> v2i64;
1423 #[link_name = "llvm.loongarch.lsx.vfcmp.sor.s"]
1424 fn __lsx_vfcmp_sor_s(a: v4f32, b: v4f32) -> v4i32;
1425 #[link_name = "llvm.loongarch.lsx.vfcmp.sueq.d"]
1426 fn __lsx_vfcmp_sueq_d(a: v2f64, b: v2f64) -> v2i64;
1427 #[link_name = "llvm.loongarch.lsx.vfcmp.sueq.s"]
1428 fn __lsx_vfcmp_sueq_s(a: v4f32, b: v4f32) -> v4i32;
1429 #[link_name = "llvm.loongarch.lsx.vfcmp.sule.d"]
1430 fn __lsx_vfcmp_sule_d(a: v2f64, b: v2f64) -> v2i64;
1431 #[link_name = "llvm.loongarch.lsx.vfcmp.sule.s"]
1432 fn __lsx_vfcmp_sule_s(a: v4f32, b: v4f32) -> v4i32;
1433 #[link_name = "llvm.loongarch.lsx.vfcmp.sult.d"]
1434 fn __lsx_vfcmp_sult_d(a: v2f64, b: v2f64) -> v2i64;
1435 #[link_name = "llvm.loongarch.lsx.vfcmp.sult.s"]
1436 fn __lsx_vfcmp_sult_s(a: v4f32, b: v4f32) -> v4i32;
1437 #[link_name = "llvm.loongarch.lsx.vfcmp.sun.d"]
1438 fn __lsx_vfcmp_sun_d(a: v2f64, b: v2f64) -> v2i64;
1439 #[link_name = "llvm.loongarch.lsx.vfcmp.sune.d"]
1440 fn __lsx_vfcmp_sune_d(a: v2f64, b: v2f64) -> v2i64;
1441 #[link_name = "llvm.loongarch.lsx.vfcmp.sune.s"]
1442 fn __lsx_vfcmp_sune_s(a: v4f32, b: v4f32) -> v4i32;
1443 #[link_name = "llvm.loongarch.lsx.vfcmp.sun.s"]
1444 fn __lsx_vfcmp_sun_s(a: v4f32, b: v4f32) -> v4i32;
1445 #[link_name = "llvm.loongarch.lsx.vrepli.b"]
1446 fn __lsx_vrepli_b(a: i32) -> v16i8;
1447 #[link_name = "llvm.loongarch.lsx.vrepli.d"]
1448 fn __lsx_vrepli_d(a: i32) -> v2i64;
1449 #[link_name = "llvm.loongarch.lsx.vrepli.h"]
1450 fn __lsx_vrepli_h(a: i32) -> v8i16;
1451 #[link_name = "llvm.loongarch.lsx.vrepli.w"]
1452 fn __lsx_vrepli_w(a: i32) -> v4i32;
1453}
1454
1455#[inline]
1456#[target_feature(enable = "lsx")]
1457#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1458pub unsafe fn lsx_vsll_b(a: v16i8, b: v16i8) -> v16i8 {
1459 __lsx_vsll_b(a, b)
1460}
1461
1462#[inline]
1463#[target_feature(enable = "lsx")]
1464#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1465pub unsafe fn lsx_vsll_h(a: v8i16, b: v8i16) -> v8i16 {
1466 __lsx_vsll_h(a, b)
1467}
1468
1469#[inline]
1470#[target_feature(enable = "lsx")]
1471#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1472pub unsafe fn lsx_vsll_w(a: v4i32, b: v4i32) -> v4i32 {
1473 __lsx_vsll_w(a, b)
1474}
1475
1476#[inline]
1477#[target_feature(enable = "lsx")]
1478#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1479pub unsafe fn lsx_vsll_d(a: v2i64, b: v2i64) -> v2i64 {
1480 __lsx_vsll_d(a, b)
1481}
1482
1483#[inline]
1484#[target_feature(enable = "lsx")]
1485#[rustc_legacy_const_generics(1)]
1486#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1487pub unsafe fn lsx_vslli_b<const IMM3: u32>(a: v16i8) -> v16i8 {
1488 static_assert_uimm_bits!(IMM3, 3);
1489 __lsx_vslli_b(a, IMM3)
1490}
1491
1492#[inline]
1493#[target_feature(enable = "lsx")]
1494#[rustc_legacy_const_generics(1)]
1495#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1496pub unsafe fn lsx_vslli_h<const IMM4: u32>(a: v8i16) -> v8i16 {
1497 static_assert_uimm_bits!(IMM4, 4);
1498 __lsx_vslli_h(a, IMM4)
1499}
1500
1501#[inline]
1502#[target_feature(enable = "lsx")]
1503#[rustc_legacy_const_generics(1)]
1504#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1505pub unsafe fn lsx_vslli_w<const IMM5: u32>(a: v4i32) -> v4i32 {
1506 static_assert_uimm_bits!(IMM5, 5);
1507 __lsx_vslli_w(a, IMM5)
1508}
1509
1510#[inline]
1511#[target_feature(enable = "lsx")]
1512#[rustc_legacy_const_generics(1)]
1513#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1514pub unsafe fn lsx_vslli_d<const IMM6: u32>(a: v2i64) -> v2i64 {
1515 static_assert_uimm_bits!(IMM6, 6);
1516 __lsx_vslli_d(a, IMM6)
1517}
1518
1519#[inline]
1520#[target_feature(enable = "lsx")]
1521#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1522pub unsafe fn lsx_vsra_b(a: v16i8, b: v16i8) -> v16i8 {
1523 __lsx_vsra_b(a, b)
1524}
1525
1526#[inline]
1527#[target_feature(enable = "lsx")]
1528#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1529pub unsafe fn lsx_vsra_h(a: v8i16, b: v8i16) -> v8i16 {
1530 __lsx_vsra_h(a, b)
1531}
1532
1533#[inline]
1534#[target_feature(enable = "lsx")]
1535#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1536pub unsafe fn lsx_vsra_w(a: v4i32, b: v4i32) -> v4i32 {
1537 __lsx_vsra_w(a, b)
1538}
1539
1540#[inline]
1541#[target_feature(enable = "lsx")]
1542#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1543pub unsafe fn lsx_vsra_d(a: v2i64, b: v2i64) -> v2i64 {
1544 __lsx_vsra_d(a, b)
1545}
1546
1547#[inline]
1548#[target_feature(enable = "lsx")]
1549#[rustc_legacy_const_generics(1)]
1550#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1551pub unsafe fn lsx_vsrai_b<const IMM3: u32>(a: v16i8) -> v16i8 {
1552 static_assert_uimm_bits!(IMM3, 3);
1553 __lsx_vsrai_b(a, IMM3)
1554}
1555
1556#[inline]
1557#[target_feature(enable = "lsx")]
1558#[rustc_legacy_const_generics(1)]
1559#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1560pub unsafe fn lsx_vsrai_h<const IMM4: u32>(a: v8i16) -> v8i16 {
1561 static_assert_uimm_bits!(IMM4, 4);
1562 __lsx_vsrai_h(a, IMM4)
1563}
1564
1565#[inline]
1566#[target_feature(enable = "lsx")]
1567#[rustc_legacy_const_generics(1)]
1568#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1569pub unsafe fn lsx_vsrai_w<const IMM5: u32>(a: v4i32) -> v4i32 {
1570 static_assert_uimm_bits!(IMM5, 5);
1571 __lsx_vsrai_w(a, IMM5)
1572}
1573
1574#[inline]
1575#[target_feature(enable = "lsx")]
1576#[rustc_legacy_const_generics(1)]
1577#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1578pub unsafe fn lsx_vsrai_d<const IMM6: u32>(a: v2i64) -> v2i64 {
1579 static_assert_uimm_bits!(IMM6, 6);
1580 __lsx_vsrai_d(a, IMM6)
1581}
1582
1583#[inline]
1584#[target_feature(enable = "lsx")]
1585#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1586pub unsafe fn lsx_vsrar_b(a: v16i8, b: v16i8) -> v16i8 {
1587 __lsx_vsrar_b(a, b)
1588}
1589
1590#[inline]
1591#[target_feature(enable = "lsx")]
1592#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1593pub unsafe fn lsx_vsrar_h(a: v8i16, b: v8i16) -> v8i16 {
1594 __lsx_vsrar_h(a, b)
1595}
1596
1597#[inline]
1598#[target_feature(enable = "lsx")]
1599#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1600pub unsafe fn lsx_vsrar_w(a: v4i32, b: v4i32) -> v4i32 {
1601 __lsx_vsrar_w(a, b)
1602}
1603
1604#[inline]
1605#[target_feature(enable = "lsx")]
1606#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1607pub unsafe fn lsx_vsrar_d(a: v2i64, b: v2i64) -> v2i64 {
1608 __lsx_vsrar_d(a, b)
1609}
1610
1611#[inline]
1612#[target_feature(enable = "lsx")]
1613#[rustc_legacy_const_generics(1)]
1614#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1615pub unsafe fn lsx_vsrari_b<const IMM3: u32>(a: v16i8) -> v16i8 {
1616 static_assert_uimm_bits!(IMM3, 3);
1617 __lsx_vsrari_b(a, IMM3)
1618}
1619
1620#[inline]
1621#[target_feature(enable = "lsx")]
1622#[rustc_legacy_const_generics(1)]
1623#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1624pub unsafe fn lsx_vsrari_h<const IMM4: u32>(a: v8i16) -> v8i16 {
1625 static_assert_uimm_bits!(IMM4, 4);
1626 __lsx_vsrari_h(a, IMM4)
1627}
1628
1629#[inline]
1630#[target_feature(enable = "lsx")]
1631#[rustc_legacy_const_generics(1)]
1632#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1633pub unsafe fn lsx_vsrari_w<const IMM5: u32>(a: v4i32) -> v4i32 {
1634 static_assert_uimm_bits!(IMM5, 5);
1635 __lsx_vsrari_w(a, IMM5)
1636}
1637
1638#[inline]
1639#[target_feature(enable = "lsx")]
1640#[rustc_legacy_const_generics(1)]
1641#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1642pub unsafe fn lsx_vsrari_d<const IMM6: u32>(a: v2i64) -> v2i64 {
1643 static_assert_uimm_bits!(IMM6, 6);
1644 __lsx_vsrari_d(a, IMM6)
1645}
1646
1647#[inline]
1648#[target_feature(enable = "lsx")]
1649#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1650pub unsafe fn lsx_vsrl_b(a: v16i8, b: v16i8) -> v16i8 {
1651 __lsx_vsrl_b(a, b)
1652}
1653
1654#[inline]
1655#[target_feature(enable = "lsx")]
1656#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1657pub unsafe fn lsx_vsrl_h(a: v8i16, b: v8i16) -> v8i16 {
1658 __lsx_vsrl_h(a, b)
1659}
1660
1661#[inline]
1662#[target_feature(enable = "lsx")]
1663#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1664pub unsafe fn lsx_vsrl_w(a: v4i32, b: v4i32) -> v4i32 {
1665 __lsx_vsrl_w(a, b)
1666}
1667
1668#[inline]
1669#[target_feature(enable = "lsx")]
1670#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1671pub unsafe fn lsx_vsrl_d(a: v2i64, b: v2i64) -> v2i64 {
1672 __lsx_vsrl_d(a, b)
1673}
1674
1675#[inline]
1676#[target_feature(enable = "lsx")]
1677#[rustc_legacy_const_generics(1)]
1678#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1679pub unsafe fn lsx_vsrli_b<const IMM3: u32>(a: v16i8) -> v16i8 {
1680 static_assert_uimm_bits!(IMM3, 3);
1681 __lsx_vsrli_b(a, IMM3)
1682}
1683
1684#[inline]
1685#[target_feature(enable = "lsx")]
1686#[rustc_legacy_const_generics(1)]
1687#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1688pub unsafe fn lsx_vsrli_h<const IMM4: u32>(a: v8i16) -> v8i16 {
1689 static_assert_uimm_bits!(IMM4, 4);
1690 __lsx_vsrli_h(a, IMM4)
1691}
1692
1693#[inline]
1694#[target_feature(enable = "lsx")]
1695#[rustc_legacy_const_generics(1)]
1696#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1697pub unsafe fn lsx_vsrli_w<const IMM5: u32>(a: v4i32) -> v4i32 {
1698 static_assert_uimm_bits!(IMM5, 5);
1699 __lsx_vsrli_w(a, IMM5)
1700}
1701
1702#[inline]
1703#[target_feature(enable = "lsx")]
1704#[rustc_legacy_const_generics(1)]
1705#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1706pub unsafe fn lsx_vsrli_d<const IMM6: u32>(a: v2i64) -> v2i64 {
1707 static_assert_uimm_bits!(IMM6, 6);
1708 __lsx_vsrli_d(a, IMM6)
1709}
1710
1711#[inline]
1712#[target_feature(enable = "lsx")]
1713#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1714pub unsafe fn lsx_vsrlr_b(a: v16i8, b: v16i8) -> v16i8 {
1715 __lsx_vsrlr_b(a, b)
1716}
1717
1718#[inline]
1719#[target_feature(enable = "lsx")]
1720#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1721pub unsafe fn lsx_vsrlr_h(a: v8i16, b: v8i16) -> v8i16 {
1722 __lsx_vsrlr_h(a, b)
1723}
1724
1725#[inline]
1726#[target_feature(enable = "lsx")]
1727#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1728pub unsafe fn lsx_vsrlr_w(a: v4i32, b: v4i32) -> v4i32 {
1729 __lsx_vsrlr_w(a, b)
1730}
1731
1732#[inline]
1733#[target_feature(enable = "lsx")]
1734#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1735pub unsafe fn lsx_vsrlr_d(a: v2i64, b: v2i64) -> v2i64 {
1736 __lsx_vsrlr_d(a, b)
1737}
1738
1739#[inline]
1740#[target_feature(enable = "lsx")]
1741#[rustc_legacy_const_generics(1)]
1742#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1743pub unsafe fn lsx_vsrlri_b<const IMM3: u32>(a: v16i8) -> v16i8 {
1744 static_assert_uimm_bits!(IMM3, 3);
1745 __lsx_vsrlri_b(a, IMM3)
1746}
1747
1748#[inline]
1749#[target_feature(enable = "lsx")]
1750#[rustc_legacy_const_generics(1)]
1751#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1752pub unsafe fn lsx_vsrlri_h<const IMM4: u32>(a: v8i16) -> v8i16 {
1753 static_assert_uimm_bits!(IMM4, 4);
1754 __lsx_vsrlri_h(a, IMM4)
1755}
1756
1757#[inline]
1758#[target_feature(enable = "lsx")]
1759#[rustc_legacy_const_generics(1)]
1760#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1761pub unsafe fn lsx_vsrlri_w<const IMM5: u32>(a: v4i32) -> v4i32 {
1762 static_assert_uimm_bits!(IMM5, 5);
1763 __lsx_vsrlri_w(a, IMM5)
1764}
1765
1766#[inline]
1767#[target_feature(enable = "lsx")]
1768#[rustc_legacy_const_generics(1)]
1769#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1770pub unsafe fn lsx_vsrlri_d<const IMM6: u32>(a: v2i64) -> v2i64 {
1771 static_assert_uimm_bits!(IMM6, 6);
1772 __lsx_vsrlri_d(a, IMM6)
1773}
1774
1775#[inline]
1776#[target_feature(enable = "lsx")]
1777#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1778pub unsafe fn lsx_vbitclr_b(a: v16u8, b: v16u8) -> v16u8 {
1779 __lsx_vbitclr_b(a, b)
1780}
1781
1782#[inline]
1783#[target_feature(enable = "lsx")]
1784#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1785pub unsafe fn lsx_vbitclr_h(a: v8u16, b: v8u16) -> v8u16 {
1786 __lsx_vbitclr_h(a, b)
1787}
1788
1789#[inline]
1790#[target_feature(enable = "lsx")]
1791#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1792pub unsafe fn lsx_vbitclr_w(a: v4u32, b: v4u32) -> v4u32 {
1793 __lsx_vbitclr_w(a, b)
1794}
1795
1796#[inline]
1797#[target_feature(enable = "lsx")]
1798#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1799pub unsafe fn lsx_vbitclr_d(a: v2u64, b: v2u64) -> v2u64 {
1800 __lsx_vbitclr_d(a, b)
1801}
1802
1803#[inline]
1804#[target_feature(enable = "lsx")]
1805#[rustc_legacy_const_generics(1)]
1806#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1807pub unsafe fn lsx_vbitclri_b<const IMM3: u32>(a: v16u8) -> v16u8 {
1808 static_assert_uimm_bits!(IMM3, 3);
1809 __lsx_vbitclri_b(a, IMM3)
1810}
1811
1812#[inline]
1813#[target_feature(enable = "lsx")]
1814#[rustc_legacy_const_generics(1)]
1815#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1816pub unsafe fn lsx_vbitclri_h<const IMM4: u32>(a: v8u16) -> v8u16 {
1817 static_assert_uimm_bits!(IMM4, 4);
1818 __lsx_vbitclri_h(a, IMM4)
1819}
1820
1821#[inline]
1822#[target_feature(enable = "lsx")]
1823#[rustc_legacy_const_generics(1)]
1824#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1825pub unsafe fn lsx_vbitclri_w<const IMM5: u32>(a: v4u32) -> v4u32 {
1826 static_assert_uimm_bits!(IMM5, 5);
1827 __lsx_vbitclri_w(a, IMM5)
1828}
1829
1830#[inline]
1831#[target_feature(enable = "lsx")]
1832#[rustc_legacy_const_generics(1)]
1833#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1834pub unsafe fn lsx_vbitclri_d<const IMM6: u32>(a: v2u64) -> v2u64 {
1835 static_assert_uimm_bits!(IMM6, 6);
1836 __lsx_vbitclri_d(a, IMM6)
1837}
1838
1839#[inline]
1840#[target_feature(enable = "lsx")]
1841#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1842pub unsafe fn lsx_vbitset_b(a: v16u8, b: v16u8) -> v16u8 {
1843 __lsx_vbitset_b(a, b)
1844}
1845
1846#[inline]
1847#[target_feature(enable = "lsx")]
1848#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1849pub unsafe fn lsx_vbitset_h(a: v8u16, b: v8u16) -> v8u16 {
1850 __lsx_vbitset_h(a, b)
1851}
1852
1853#[inline]
1854#[target_feature(enable = "lsx")]
1855#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1856pub unsafe fn lsx_vbitset_w(a: v4u32, b: v4u32) -> v4u32 {
1857 __lsx_vbitset_w(a, b)
1858}
1859
1860#[inline]
1861#[target_feature(enable = "lsx")]
1862#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1863pub unsafe fn lsx_vbitset_d(a: v2u64, b: v2u64) -> v2u64 {
1864 __lsx_vbitset_d(a, b)
1865}
1866
1867#[inline]
1868#[target_feature(enable = "lsx")]
1869#[rustc_legacy_const_generics(1)]
1870#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1871pub unsafe fn lsx_vbitseti_b<const IMM3: u32>(a: v16u8) -> v16u8 {
1872 static_assert_uimm_bits!(IMM3, 3);
1873 __lsx_vbitseti_b(a, IMM3)
1874}
1875
1876#[inline]
1877#[target_feature(enable = "lsx")]
1878#[rustc_legacy_const_generics(1)]
1879#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1880pub unsafe fn lsx_vbitseti_h<const IMM4: u32>(a: v8u16) -> v8u16 {
1881 static_assert_uimm_bits!(IMM4, 4);
1882 __lsx_vbitseti_h(a, IMM4)
1883}
1884
1885#[inline]
1886#[target_feature(enable = "lsx")]
1887#[rustc_legacy_const_generics(1)]
1888#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1889pub unsafe fn lsx_vbitseti_w<const IMM5: u32>(a: v4u32) -> v4u32 {
1890 static_assert_uimm_bits!(IMM5, 5);
1891 __lsx_vbitseti_w(a, IMM5)
1892}
1893
1894#[inline]
1895#[target_feature(enable = "lsx")]
1896#[rustc_legacy_const_generics(1)]
1897#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1898pub unsafe fn lsx_vbitseti_d<const IMM6: u32>(a: v2u64) -> v2u64 {
1899 static_assert_uimm_bits!(IMM6, 6);
1900 __lsx_vbitseti_d(a, IMM6)
1901}
1902
1903#[inline]
1904#[target_feature(enable = "lsx")]
1905#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1906pub unsafe fn lsx_vbitrev_b(a: v16u8, b: v16u8) -> v16u8 {
1907 __lsx_vbitrev_b(a, b)
1908}
1909
1910#[inline]
1911#[target_feature(enable = "lsx")]
1912#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1913pub unsafe fn lsx_vbitrev_h(a: v8u16, b: v8u16) -> v8u16 {
1914 __lsx_vbitrev_h(a, b)
1915}
1916
1917#[inline]
1918#[target_feature(enable = "lsx")]
1919#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1920pub unsafe fn lsx_vbitrev_w(a: v4u32, b: v4u32) -> v4u32 {
1921 __lsx_vbitrev_w(a, b)
1922}
1923
1924#[inline]
1925#[target_feature(enable = "lsx")]
1926#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1927pub unsafe fn lsx_vbitrev_d(a: v2u64, b: v2u64) -> v2u64 {
1928 __lsx_vbitrev_d(a, b)
1929}
1930
1931#[inline]
1932#[target_feature(enable = "lsx")]
1933#[rustc_legacy_const_generics(1)]
1934#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1935pub unsafe fn lsx_vbitrevi_b<const IMM3: u32>(a: v16u8) -> v16u8 {
1936 static_assert_uimm_bits!(IMM3, 3);
1937 __lsx_vbitrevi_b(a, IMM3)
1938}
1939
1940#[inline]
1941#[target_feature(enable = "lsx")]
1942#[rustc_legacy_const_generics(1)]
1943#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1944pub unsafe fn lsx_vbitrevi_h<const IMM4: u32>(a: v8u16) -> v8u16 {
1945 static_assert_uimm_bits!(IMM4, 4);
1946 __lsx_vbitrevi_h(a, IMM4)
1947}
1948
1949#[inline]
1950#[target_feature(enable = "lsx")]
1951#[rustc_legacy_const_generics(1)]
1952#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1953pub unsafe fn lsx_vbitrevi_w<const IMM5: u32>(a: v4u32) -> v4u32 {
1954 static_assert_uimm_bits!(IMM5, 5);
1955 __lsx_vbitrevi_w(a, IMM5)
1956}
1957
1958#[inline]
1959#[target_feature(enable = "lsx")]
1960#[rustc_legacy_const_generics(1)]
1961#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1962pub unsafe fn lsx_vbitrevi_d<const IMM6: u32>(a: v2u64) -> v2u64 {
1963 static_assert_uimm_bits!(IMM6, 6);
1964 __lsx_vbitrevi_d(a, IMM6)
1965}
1966
1967#[inline]
1968#[target_feature(enable = "lsx")]
1969#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1970pub unsafe fn lsx_vadd_b(a: v16i8, b: v16i8) -> v16i8 {
1971 __lsx_vadd_b(a, b)
1972}
1973
1974#[inline]
1975#[target_feature(enable = "lsx")]
1976#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1977pub unsafe fn lsx_vadd_h(a: v8i16, b: v8i16) -> v8i16 {
1978 __lsx_vadd_h(a, b)
1979}
1980
1981#[inline]
1982#[target_feature(enable = "lsx")]
1983#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1984pub unsafe fn lsx_vadd_w(a: v4i32, b: v4i32) -> v4i32 {
1985 __lsx_vadd_w(a, b)
1986}
1987
1988#[inline]
1989#[target_feature(enable = "lsx")]
1990#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1991pub unsafe fn lsx_vadd_d(a: v2i64, b: v2i64) -> v2i64 {
1992 __lsx_vadd_d(a, b)
1993}
1994
1995#[inline]
1996#[target_feature(enable = "lsx")]
1997#[rustc_legacy_const_generics(1)]
1998#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1999pub unsafe fn lsx_vaddi_bu<const IMM5: u32>(a: v16i8) -> v16i8 {
2000 static_assert_uimm_bits!(IMM5, 5);
2001 __lsx_vaddi_bu(a, IMM5)
2002}
2003
2004#[inline]
2005#[target_feature(enable = "lsx")]
2006#[rustc_legacy_const_generics(1)]
2007#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2008pub unsafe fn lsx_vaddi_hu<const IMM5: u32>(a: v8i16) -> v8i16 {
2009 static_assert_uimm_bits!(IMM5, 5);
2010 __lsx_vaddi_hu(a, IMM5)
2011}
2012
2013#[inline]
2014#[target_feature(enable = "lsx")]
2015#[rustc_legacy_const_generics(1)]
2016#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2017pub unsafe fn lsx_vaddi_wu<const IMM5: u32>(a: v4i32) -> v4i32 {
2018 static_assert_uimm_bits!(IMM5, 5);
2019 __lsx_vaddi_wu(a, IMM5)
2020}
2021
2022#[inline]
2023#[target_feature(enable = "lsx")]
2024#[rustc_legacy_const_generics(1)]
2025#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2026pub unsafe fn lsx_vaddi_du<const IMM5: u32>(a: v2i64) -> v2i64 {
2027 static_assert_uimm_bits!(IMM5, 5);
2028 __lsx_vaddi_du(a, IMM5)
2029}
2030
2031#[inline]
2032#[target_feature(enable = "lsx")]
2033#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2034pub unsafe fn lsx_vsub_b(a: v16i8, b: v16i8) -> v16i8 {
2035 __lsx_vsub_b(a, b)
2036}
2037
2038#[inline]
2039#[target_feature(enable = "lsx")]
2040#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2041pub unsafe fn lsx_vsub_h(a: v8i16, b: v8i16) -> v8i16 {
2042 __lsx_vsub_h(a, b)
2043}
2044
2045#[inline]
2046#[target_feature(enable = "lsx")]
2047#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2048pub unsafe fn lsx_vsub_w(a: v4i32, b: v4i32) -> v4i32 {
2049 __lsx_vsub_w(a, b)
2050}
2051
2052#[inline]
2053#[target_feature(enable = "lsx")]
2054#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2055pub unsafe fn lsx_vsub_d(a: v2i64, b: v2i64) -> v2i64 {
2056 __lsx_vsub_d(a, b)
2057}
2058
2059#[inline]
2060#[target_feature(enable = "lsx")]
2061#[rustc_legacy_const_generics(1)]
2062#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2063pub unsafe fn lsx_vsubi_bu<const IMM5: u32>(a: v16i8) -> v16i8 {
2064 static_assert_uimm_bits!(IMM5, 5);
2065 __lsx_vsubi_bu(a, IMM5)
2066}
2067
2068#[inline]
2069#[target_feature(enable = "lsx")]
2070#[rustc_legacy_const_generics(1)]
2071#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2072pub unsafe fn lsx_vsubi_hu<const IMM5: u32>(a: v8i16) -> v8i16 {
2073 static_assert_uimm_bits!(IMM5, 5);
2074 __lsx_vsubi_hu(a, IMM5)
2075}
2076
2077#[inline]
2078#[target_feature(enable = "lsx")]
2079#[rustc_legacy_const_generics(1)]
2080#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2081pub unsafe fn lsx_vsubi_wu<const IMM5: u32>(a: v4i32) -> v4i32 {
2082 static_assert_uimm_bits!(IMM5, 5);
2083 __lsx_vsubi_wu(a, IMM5)
2084}
2085
2086#[inline]
2087#[target_feature(enable = "lsx")]
2088#[rustc_legacy_const_generics(1)]
2089#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2090pub unsafe fn lsx_vsubi_du<const IMM5: u32>(a: v2i64) -> v2i64 {
2091 static_assert_uimm_bits!(IMM5, 5);
2092 __lsx_vsubi_du(a, IMM5)
2093}
2094
2095#[inline]
2096#[target_feature(enable = "lsx")]
2097#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2098pub unsafe fn lsx_vmax_b(a: v16i8, b: v16i8) -> v16i8 {
2099 __lsx_vmax_b(a, b)
2100}
2101
2102#[inline]
2103#[target_feature(enable = "lsx")]
2104#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2105pub unsafe fn lsx_vmax_h(a: v8i16, b: v8i16) -> v8i16 {
2106 __lsx_vmax_h(a, b)
2107}
2108
2109#[inline]
2110#[target_feature(enable = "lsx")]
2111#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2112pub unsafe fn lsx_vmax_w(a: v4i32, b: v4i32) -> v4i32 {
2113 __lsx_vmax_w(a, b)
2114}
2115
2116#[inline]
2117#[target_feature(enable = "lsx")]
2118#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2119pub unsafe fn lsx_vmax_d(a: v2i64, b: v2i64) -> v2i64 {
2120 __lsx_vmax_d(a, b)
2121}
2122
2123#[inline]
2124#[target_feature(enable = "lsx")]
2125#[rustc_legacy_const_generics(1)]
2126#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2127pub unsafe fn lsx_vmaxi_b<const IMM_S5: i32>(a: v16i8) -> v16i8 {
2128 static_assert_simm_bits!(IMM_S5, 5);
2129 __lsx_vmaxi_b(a, IMM_S5)
2130}
2131
2132#[inline]
2133#[target_feature(enable = "lsx")]
2134#[rustc_legacy_const_generics(1)]
2135#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2136pub unsafe fn lsx_vmaxi_h<const IMM_S5: i32>(a: v8i16) -> v8i16 {
2137 static_assert_simm_bits!(IMM_S5, 5);
2138 __lsx_vmaxi_h(a, IMM_S5)
2139}
2140
2141#[inline]
2142#[target_feature(enable = "lsx")]
2143#[rustc_legacy_const_generics(1)]
2144#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2145pub unsafe fn lsx_vmaxi_w<const IMM_S5: i32>(a: v4i32) -> v4i32 {
2146 static_assert_simm_bits!(IMM_S5, 5);
2147 __lsx_vmaxi_w(a, IMM_S5)
2148}
2149
2150#[inline]
2151#[target_feature(enable = "lsx")]
2152#[rustc_legacy_const_generics(1)]
2153#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2154pub unsafe fn lsx_vmaxi_d<const IMM_S5: i32>(a: v2i64) -> v2i64 {
2155 static_assert_simm_bits!(IMM_S5, 5);
2156 __lsx_vmaxi_d(a, IMM_S5)
2157}
2158
2159#[inline]
2160#[target_feature(enable = "lsx")]
2161#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2162pub unsafe fn lsx_vmax_bu(a: v16u8, b: v16u8) -> v16u8 {
2163 __lsx_vmax_bu(a, b)
2164}
2165
2166#[inline]
2167#[target_feature(enable = "lsx")]
2168#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2169pub unsafe fn lsx_vmax_hu(a: v8u16, b: v8u16) -> v8u16 {
2170 __lsx_vmax_hu(a, b)
2171}
2172
2173#[inline]
2174#[target_feature(enable = "lsx")]
2175#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2176pub unsafe fn lsx_vmax_wu(a: v4u32, b: v4u32) -> v4u32 {
2177 __lsx_vmax_wu(a, b)
2178}
2179
2180#[inline]
2181#[target_feature(enable = "lsx")]
2182#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2183pub unsafe fn lsx_vmax_du(a: v2u64, b: v2u64) -> v2u64 {
2184 __lsx_vmax_du(a, b)
2185}
2186
2187#[inline]
2188#[target_feature(enable = "lsx")]
2189#[rustc_legacy_const_generics(1)]
2190#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2191pub unsafe fn lsx_vmaxi_bu<const IMM5: u32>(a: v16u8) -> v16u8 {
2192 static_assert_uimm_bits!(IMM5, 5);
2193 __lsx_vmaxi_bu(a, IMM5)
2194}
2195
2196#[inline]
2197#[target_feature(enable = "lsx")]
2198#[rustc_legacy_const_generics(1)]
2199#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2200pub unsafe fn lsx_vmaxi_hu<const IMM5: u32>(a: v8u16) -> v8u16 {
2201 static_assert_uimm_bits!(IMM5, 5);
2202 __lsx_vmaxi_hu(a, IMM5)
2203}
2204
2205#[inline]
2206#[target_feature(enable = "lsx")]
2207#[rustc_legacy_const_generics(1)]
2208#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2209pub unsafe fn lsx_vmaxi_wu<const IMM5: u32>(a: v4u32) -> v4u32 {
2210 static_assert_uimm_bits!(IMM5, 5);
2211 __lsx_vmaxi_wu(a, IMM5)
2212}
2213
2214#[inline]
2215#[target_feature(enable = "lsx")]
2216#[rustc_legacy_const_generics(1)]
2217#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2218pub unsafe fn lsx_vmaxi_du<const IMM5: u32>(a: v2u64) -> v2u64 {
2219 static_assert_uimm_bits!(IMM5, 5);
2220 __lsx_vmaxi_du(a, IMM5)
2221}
2222
2223#[inline]
2224#[target_feature(enable = "lsx")]
2225#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2226pub unsafe fn lsx_vmin_b(a: v16i8, b: v16i8) -> v16i8 {
2227 __lsx_vmin_b(a, b)
2228}
2229
2230#[inline]
2231#[target_feature(enable = "lsx")]
2232#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2233pub unsafe fn lsx_vmin_h(a: v8i16, b: v8i16) -> v8i16 {
2234 __lsx_vmin_h(a, b)
2235}
2236
2237#[inline]
2238#[target_feature(enable = "lsx")]
2239#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2240pub unsafe fn lsx_vmin_w(a: v4i32, b: v4i32) -> v4i32 {
2241 __lsx_vmin_w(a, b)
2242}
2243
2244#[inline]
2245#[target_feature(enable = "lsx")]
2246#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2247pub unsafe fn lsx_vmin_d(a: v2i64, b: v2i64) -> v2i64 {
2248 __lsx_vmin_d(a, b)
2249}
2250
2251#[inline]
2252#[target_feature(enable = "lsx")]
2253#[rustc_legacy_const_generics(1)]
2254#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2255pub unsafe fn lsx_vmini_b<const IMM_S5: i32>(a: v16i8) -> v16i8 {
2256 static_assert_simm_bits!(IMM_S5, 5);
2257 __lsx_vmini_b(a, IMM_S5)
2258}
2259
2260#[inline]
2261#[target_feature(enable = "lsx")]
2262#[rustc_legacy_const_generics(1)]
2263#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2264pub unsafe fn lsx_vmini_h<const IMM_S5: i32>(a: v8i16) -> v8i16 {
2265 static_assert_simm_bits!(IMM_S5, 5);
2266 __lsx_vmini_h(a, IMM_S5)
2267}
2268
2269#[inline]
2270#[target_feature(enable = "lsx")]
2271#[rustc_legacy_const_generics(1)]
2272#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2273pub unsafe fn lsx_vmini_w<const IMM_S5: i32>(a: v4i32) -> v4i32 {
2274 static_assert_simm_bits!(IMM_S5, 5);
2275 __lsx_vmini_w(a, IMM_S5)
2276}
2277
2278#[inline]
2279#[target_feature(enable = "lsx")]
2280#[rustc_legacy_const_generics(1)]
2281#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2282pub unsafe fn lsx_vmini_d<const IMM_S5: i32>(a: v2i64) -> v2i64 {
2283 static_assert_simm_bits!(IMM_S5, 5);
2284 __lsx_vmini_d(a, IMM_S5)
2285}
2286
2287#[inline]
2288#[target_feature(enable = "lsx")]
2289#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2290pub unsafe fn lsx_vmin_bu(a: v16u8, b: v16u8) -> v16u8 {
2291 __lsx_vmin_bu(a, b)
2292}
2293
2294#[inline]
2295#[target_feature(enable = "lsx")]
2296#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2297pub unsafe fn lsx_vmin_hu(a: v8u16, b: v8u16) -> v8u16 {
2298 __lsx_vmin_hu(a, b)
2299}
2300
2301#[inline]
2302#[target_feature(enable = "lsx")]
2303#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2304pub unsafe fn lsx_vmin_wu(a: v4u32, b: v4u32) -> v4u32 {
2305 __lsx_vmin_wu(a, b)
2306}
2307
2308#[inline]
2309#[target_feature(enable = "lsx")]
2310#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2311pub unsafe fn lsx_vmin_du(a: v2u64, b: v2u64) -> v2u64 {
2312 __lsx_vmin_du(a, b)
2313}
2314
2315#[inline]
2316#[target_feature(enable = "lsx")]
2317#[rustc_legacy_const_generics(1)]
2318#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2319pub unsafe fn lsx_vmini_bu<const IMM5: u32>(a: v16u8) -> v16u8 {
2320 static_assert_uimm_bits!(IMM5, 5);
2321 __lsx_vmini_bu(a, IMM5)
2322}
2323
2324#[inline]
2325#[target_feature(enable = "lsx")]
2326#[rustc_legacy_const_generics(1)]
2327#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2328pub unsafe fn lsx_vmini_hu<const IMM5: u32>(a: v8u16) -> v8u16 {
2329 static_assert_uimm_bits!(IMM5, 5);
2330 __lsx_vmini_hu(a, IMM5)
2331}
2332
2333#[inline]
2334#[target_feature(enable = "lsx")]
2335#[rustc_legacy_const_generics(1)]
2336#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2337pub unsafe fn lsx_vmini_wu<const IMM5: u32>(a: v4u32) -> v4u32 {
2338 static_assert_uimm_bits!(IMM5, 5);
2339 __lsx_vmini_wu(a, IMM5)
2340}
2341
2342#[inline]
2343#[target_feature(enable = "lsx")]
2344#[rustc_legacy_const_generics(1)]
2345#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2346pub unsafe fn lsx_vmini_du<const IMM5: u32>(a: v2u64) -> v2u64 {
2347 static_assert_uimm_bits!(IMM5, 5);
2348 __lsx_vmini_du(a, IMM5)
2349}
2350
2351#[inline]
2352#[target_feature(enable = "lsx")]
2353#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2354pub unsafe fn lsx_vseq_b(a: v16i8, b: v16i8) -> v16i8 {
2355 __lsx_vseq_b(a, b)
2356}
2357
2358#[inline]
2359#[target_feature(enable = "lsx")]
2360#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2361pub unsafe fn lsx_vseq_h(a: v8i16, b: v8i16) -> v8i16 {
2362 __lsx_vseq_h(a, b)
2363}
2364
2365#[inline]
2366#[target_feature(enable = "lsx")]
2367#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2368pub unsafe fn lsx_vseq_w(a: v4i32, b: v4i32) -> v4i32 {
2369 __lsx_vseq_w(a, b)
2370}
2371
2372#[inline]
2373#[target_feature(enable = "lsx")]
2374#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2375pub unsafe fn lsx_vseq_d(a: v2i64, b: v2i64) -> v2i64 {
2376 __lsx_vseq_d(a, b)
2377}
2378
2379#[inline]
2380#[target_feature(enable = "lsx")]
2381#[rustc_legacy_const_generics(1)]
2382#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2383pub unsafe fn lsx_vseqi_b<const IMM_S5: i32>(a: v16i8) -> v16i8 {
2384 static_assert_simm_bits!(IMM_S5, 5);
2385 __lsx_vseqi_b(a, IMM_S5)
2386}
2387
2388#[inline]
2389#[target_feature(enable = "lsx")]
2390#[rustc_legacy_const_generics(1)]
2391#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2392pub unsafe fn lsx_vseqi_h<const IMM_S5: i32>(a: v8i16) -> v8i16 {
2393 static_assert_simm_bits!(IMM_S5, 5);
2394 __lsx_vseqi_h(a, IMM_S5)
2395}
2396
2397#[inline]
2398#[target_feature(enable = "lsx")]
2399#[rustc_legacy_const_generics(1)]
2400#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2401pub unsafe fn lsx_vseqi_w<const IMM_S5: i32>(a: v4i32) -> v4i32 {
2402 static_assert_simm_bits!(IMM_S5, 5);
2403 __lsx_vseqi_w(a, IMM_S5)
2404}
2405
2406#[inline]
2407#[target_feature(enable = "lsx")]
2408#[rustc_legacy_const_generics(1)]
2409#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2410pub unsafe fn lsx_vseqi_d<const IMM_S5: i32>(a: v2i64) -> v2i64 {
2411 static_assert_simm_bits!(IMM_S5, 5);
2412 __lsx_vseqi_d(a, IMM_S5)
2413}
2414
2415#[inline]
2416#[target_feature(enable = "lsx")]
2417#[rustc_legacy_const_generics(1)]
2418#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2419pub unsafe fn lsx_vslti_b<const IMM_S5: i32>(a: v16i8) -> v16i8 {
2420 static_assert_simm_bits!(IMM_S5, 5);
2421 __lsx_vslti_b(a, IMM_S5)
2422}
2423
2424#[inline]
2425#[target_feature(enable = "lsx")]
2426#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2427pub unsafe fn lsx_vslt_b(a: v16i8, b: v16i8) -> v16i8 {
2428 __lsx_vslt_b(a, b)
2429}
2430
2431#[inline]
2432#[target_feature(enable = "lsx")]
2433#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2434pub unsafe fn lsx_vslt_h(a: v8i16, b: v8i16) -> v8i16 {
2435 __lsx_vslt_h(a, b)
2436}
2437
2438#[inline]
2439#[target_feature(enable = "lsx")]
2440#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2441pub unsafe fn lsx_vslt_w(a: v4i32, b: v4i32) -> v4i32 {
2442 __lsx_vslt_w(a, b)
2443}
2444
2445#[inline]
2446#[target_feature(enable = "lsx")]
2447#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2448pub unsafe fn lsx_vslt_d(a: v2i64, b: v2i64) -> v2i64 {
2449 __lsx_vslt_d(a, b)
2450}
2451
2452#[inline]
2453#[target_feature(enable = "lsx")]
2454#[rustc_legacy_const_generics(1)]
2455#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2456pub unsafe fn lsx_vslti_h<const IMM_S5: i32>(a: v8i16) -> v8i16 {
2457 static_assert_simm_bits!(IMM_S5, 5);
2458 __lsx_vslti_h(a, IMM_S5)
2459}
2460
2461#[inline]
2462#[target_feature(enable = "lsx")]
2463#[rustc_legacy_const_generics(1)]
2464#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2465pub unsafe fn lsx_vslti_w<const IMM_S5: i32>(a: v4i32) -> v4i32 {
2466 static_assert_simm_bits!(IMM_S5, 5);
2467 __lsx_vslti_w(a, IMM_S5)
2468}
2469
2470#[inline]
2471#[target_feature(enable = "lsx")]
2472#[rustc_legacy_const_generics(1)]
2473#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2474pub unsafe fn lsx_vslti_d<const IMM_S5: i32>(a: v2i64) -> v2i64 {
2475 static_assert_simm_bits!(IMM_S5, 5);
2476 __lsx_vslti_d(a, IMM_S5)
2477}
2478
2479#[inline]
2480#[target_feature(enable = "lsx")]
2481#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2482pub unsafe fn lsx_vslt_bu(a: v16u8, b: v16u8) -> v16i8 {
2483 __lsx_vslt_bu(a, b)
2484}
2485
2486#[inline]
2487#[target_feature(enable = "lsx")]
2488#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2489pub unsafe fn lsx_vslt_hu(a: v8u16, b: v8u16) -> v8i16 {
2490 __lsx_vslt_hu(a, b)
2491}
2492
2493#[inline]
2494#[target_feature(enable = "lsx")]
2495#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2496pub unsafe fn lsx_vslt_wu(a: v4u32, b: v4u32) -> v4i32 {
2497 __lsx_vslt_wu(a, b)
2498}
2499
2500#[inline]
2501#[target_feature(enable = "lsx")]
2502#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2503pub unsafe fn lsx_vslt_du(a: v2u64, b: v2u64) -> v2i64 {
2504 __lsx_vslt_du(a, b)
2505}
2506
2507#[inline]
2508#[target_feature(enable = "lsx")]
2509#[rustc_legacy_const_generics(1)]
2510#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2511pub unsafe fn lsx_vslti_bu<const IMM5: u32>(a: v16u8) -> v16i8 {
2512 static_assert_uimm_bits!(IMM5, 5);
2513 __lsx_vslti_bu(a, IMM5)
2514}
2515
2516#[inline]
2517#[target_feature(enable = "lsx")]
2518#[rustc_legacy_const_generics(1)]
2519#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2520pub unsafe fn lsx_vslti_hu<const IMM5: u32>(a: v8u16) -> v8i16 {
2521 static_assert_uimm_bits!(IMM5, 5);
2522 __lsx_vslti_hu(a, IMM5)
2523}
2524
2525#[inline]
2526#[target_feature(enable = "lsx")]
2527#[rustc_legacy_const_generics(1)]
2528#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2529pub unsafe fn lsx_vslti_wu<const IMM5: u32>(a: v4u32) -> v4i32 {
2530 static_assert_uimm_bits!(IMM5, 5);
2531 __lsx_vslti_wu(a, IMM5)
2532}
2533
2534#[inline]
2535#[target_feature(enable = "lsx")]
2536#[rustc_legacy_const_generics(1)]
2537#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2538pub unsafe fn lsx_vslti_du<const IMM5: u32>(a: v2u64) -> v2i64 {
2539 static_assert_uimm_bits!(IMM5, 5);
2540 __lsx_vslti_du(a, IMM5)
2541}
2542
2543#[inline]
2544#[target_feature(enable = "lsx")]
2545#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2546pub unsafe fn lsx_vsle_b(a: v16i8, b: v16i8) -> v16i8 {
2547 __lsx_vsle_b(a, b)
2548}
2549
2550#[inline]
2551#[target_feature(enable = "lsx")]
2552#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2553pub unsafe fn lsx_vsle_h(a: v8i16, b: v8i16) -> v8i16 {
2554 __lsx_vsle_h(a, b)
2555}
2556
2557#[inline]
2558#[target_feature(enable = "lsx")]
2559#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2560pub unsafe fn lsx_vsle_w(a: v4i32, b: v4i32) -> v4i32 {
2561 __lsx_vsle_w(a, b)
2562}
2563
2564#[inline]
2565#[target_feature(enable = "lsx")]
2566#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2567pub unsafe fn lsx_vsle_d(a: v2i64, b: v2i64) -> v2i64 {
2568 __lsx_vsle_d(a, b)
2569}
2570
2571#[inline]
2572#[target_feature(enable = "lsx")]
2573#[rustc_legacy_const_generics(1)]
2574#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2575pub unsafe fn lsx_vslei_b<const IMM_S5: i32>(a: v16i8) -> v16i8 {
2576 static_assert_simm_bits!(IMM_S5, 5);
2577 __lsx_vslei_b(a, IMM_S5)
2578}
2579
2580#[inline]
2581#[target_feature(enable = "lsx")]
2582#[rustc_legacy_const_generics(1)]
2583#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2584pub unsafe fn lsx_vslei_h<const IMM_S5: i32>(a: v8i16) -> v8i16 {
2585 static_assert_simm_bits!(IMM_S5, 5);
2586 __lsx_vslei_h(a, IMM_S5)
2587}
2588
2589#[inline]
2590#[target_feature(enable = "lsx")]
2591#[rustc_legacy_const_generics(1)]
2592#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2593pub unsafe fn lsx_vslei_w<const IMM_S5: i32>(a: v4i32) -> v4i32 {
2594 static_assert_simm_bits!(IMM_S5, 5);
2595 __lsx_vslei_w(a, IMM_S5)
2596}
2597
2598#[inline]
2599#[target_feature(enable = "lsx")]
2600#[rustc_legacy_const_generics(1)]
2601#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2602pub unsafe fn lsx_vslei_d<const IMM_S5: i32>(a: v2i64) -> v2i64 {
2603 static_assert_simm_bits!(IMM_S5, 5);
2604 __lsx_vslei_d(a, IMM_S5)
2605}
2606
2607#[inline]
2608#[target_feature(enable = "lsx")]
2609#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2610pub unsafe fn lsx_vsle_bu(a: v16u8, b: v16u8) -> v16i8 {
2611 __lsx_vsle_bu(a, b)
2612}
2613
2614#[inline]
2615#[target_feature(enable = "lsx")]
2616#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2617pub unsafe fn lsx_vsle_hu(a: v8u16, b: v8u16) -> v8i16 {
2618 __lsx_vsle_hu(a, b)
2619}
2620
2621#[inline]
2622#[target_feature(enable = "lsx")]
2623#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2624pub unsafe fn lsx_vsle_wu(a: v4u32, b: v4u32) -> v4i32 {
2625 __lsx_vsle_wu(a, b)
2626}
2627
2628#[inline]
2629#[target_feature(enable = "lsx")]
2630#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2631pub unsafe fn lsx_vsle_du(a: v2u64, b: v2u64) -> v2i64 {
2632 __lsx_vsle_du(a, b)
2633}
2634
2635#[inline]
2636#[target_feature(enable = "lsx")]
2637#[rustc_legacy_const_generics(1)]
2638#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2639pub unsafe fn lsx_vslei_bu<const IMM5: u32>(a: v16u8) -> v16i8 {
2640 static_assert_uimm_bits!(IMM5, 5);
2641 __lsx_vslei_bu(a, IMM5)
2642}
2643
2644#[inline]
2645#[target_feature(enable = "lsx")]
2646#[rustc_legacy_const_generics(1)]
2647#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2648pub unsafe fn lsx_vslei_hu<const IMM5: u32>(a: v8u16) -> v8i16 {
2649 static_assert_uimm_bits!(IMM5, 5);
2650 __lsx_vslei_hu(a, IMM5)
2651}
2652
2653#[inline]
2654#[target_feature(enable = "lsx")]
2655#[rustc_legacy_const_generics(1)]
2656#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2657pub unsafe fn lsx_vslei_wu<const IMM5: u32>(a: v4u32) -> v4i32 {
2658 static_assert_uimm_bits!(IMM5, 5);
2659 __lsx_vslei_wu(a, IMM5)
2660}
2661
2662#[inline]
2663#[target_feature(enable = "lsx")]
2664#[rustc_legacy_const_generics(1)]
2665#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2666pub unsafe fn lsx_vslei_du<const IMM5: u32>(a: v2u64) -> v2i64 {
2667 static_assert_uimm_bits!(IMM5, 5);
2668 __lsx_vslei_du(a, IMM5)
2669}
2670
2671#[inline]
2672#[target_feature(enable = "lsx")]
2673#[rustc_legacy_const_generics(1)]
2674#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2675pub unsafe fn lsx_vsat_b<const IMM3: u32>(a: v16i8) -> v16i8 {
2676 static_assert_uimm_bits!(IMM3, 3);
2677 __lsx_vsat_b(a, IMM3)
2678}
2679
2680#[inline]
2681#[target_feature(enable = "lsx")]
2682#[rustc_legacy_const_generics(1)]
2683#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2684pub unsafe fn lsx_vsat_h<const IMM4: u32>(a: v8i16) -> v8i16 {
2685 static_assert_uimm_bits!(IMM4, 4);
2686 __lsx_vsat_h(a, IMM4)
2687}
2688
2689#[inline]
2690#[target_feature(enable = "lsx")]
2691#[rustc_legacy_const_generics(1)]
2692#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2693pub unsafe fn lsx_vsat_w<const IMM5: u32>(a: v4i32) -> v4i32 {
2694 static_assert_uimm_bits!(IMM5, 5);
2695 __lsx_vsat_w(a, IMM5)
2696}
2697
2698#[inline]
2699#[target_feature(enable = "lsx")]
2700#[rustc_legacy_const_generics(1)]
2701#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2702pub unsafe fn lsx_vsat_d<const IMM6: u32>(a: v2i64) -> v2i64 {
2703 static_assert_uimm_bits!(IMM6, 6);
2704 __lsx_vsat_d(a, IMM6)
2705}
2706
2707#[inline]
2708#[target_feature(enable = "lsx")]
2709#[rustc_legacy_const_generics(1)]
2710#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2711pub unsafe fn lsx_vsat_bu<const IMM3: u32>(a: v16u8) -> v16u8 {
2712 static_assert_uimm_bits!(IMM3, 3);
2713 __lsx_vsat_bu(a, IMM3)
2714}
2715
2716#[inline]
2717#[target_feature(enable = "lsx")]
2718#[rustc_legacy_const_generics(1)]
2719#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2720pub unsafe fn lsx_vsat_hu<const IMM4: u32>(a: v8u16) -> v8u16 {
2721 static_assert_uimm_bits!(IMM4, 4);
2722 __lsx_vsat_hu(a, IMM4)
2723}
2724
2725#[inline]
2726#[target_feature(enable = "lsx")]
2727#[rustc_legacy_const_generics(1)]
2728#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2729pub unsafe fn lsx_vsat_wu<const IMM5: u32>(a: v4u32) -> v4u32 {
2730 static_assert_uimm_bits!(IMM5, 5);
2731 __lsx_vsat_wu(a, IMM5)
2732}
2733
2734#[inline]
2735#[target_feature(enable = "lsx")]
2736#[rustc_legacy_const_generics(1)]
2737#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2738pub unsafe fn lsx_vsat_du<const IMM6: u32>(a: v2u64) -> v2u64 {
2739 static_assert_uimm_bits!(IMM6, 6);
2740 __lsx_vsat_du(a, IMM6)
2741}
2742
2743#[inline]
2744#[target_feature(enable = "lsx")]
2745#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2746pub unsafe fn lsx_vadda_b(a: v16i8, b: v16i8) -> v16i8 {
2747 __lsx_vadda_b(a, b)
2748}
2749
2750#[inline]
2751#[target_feature(enable = "lsx")]
2752#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2753pub unsafe fn lsx_vadda_h(a: v8i16, b: v8i16) -> v8i16 {
2754 __lsx_vadda_h(a, b)
2755}
2756
2757#[inline]
2758#[target_feature(enable = "lsx")]
2759#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2760pub unsafe fn lsx_vadda_w(a: v4i32, b: v4i32) -> v4i32 {
2761 __lsx_vadda_w(a, b)
2762}
2763
2764#[inline]
2765#[target_feature(enable = "lsx")]
2766#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2767pub unsafe fn lsx_vadda_d(a: v2i64, b: v2i64) -> v2i64 {
2768 __lsx_vadda_d(a, b)
2769}
2770
2771#[inline]
2772#[target_feature(enable = "lsx")]
2773#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2774pub unsafe fn lsx_vsadd_b(a: v16i8, b: v16i8) -> v16i8 {
2775 __lsx_vsadd_b(a, b)
2776}
2777
2778#[inline]
2779#[target_feature(enable = "lsx")]
2780#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2781pub unsafe fn lsx_vsadd_h(a: v8i16, b: v8i16) -> v8i16 {
2782 __lsx_vsadd_h(a, b)
2783}
2784
2785#[inline]
2786#[target_feature(enable = "lsx")]
2787#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2788pub unsafe fn lsx_vsadd_w(a: v4i32, b: v4i32) -> v4i32 {
2789 __lsx_vsadd_w(a, b)
2790}
2791
2792#[inline]
2793#[target_feature(enable = "lsx")]
2794#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2795pub unsafe fn lsx_vsadd_d(a: v2i64, b: v2i64) -> v2i64 {
2796 __lsx_vsadd_d(a, b)
2797}
2798
2799#[inline]
2800#[target_feature(enable = "lsx")]
2801#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2802pub unsafe fn lsx_vsadd_bu(a: v16u8, b: v16u8) -> v16u8 {
2803 __lsx_vsadd_bu(a, b)
2804}
2805
2806#[inline]
2807#[target_feature(enable = "lsx")]
2808#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2809pub unsafe fn lsx_vsadd_hu(a: v8u16, b: v8u16) -> v8u16 {
2810 __lsx_vsadd_hu(a, b)
2811}
2812
2813#[inline]
2814#[target_feature(enable = "lsx")]
2815#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2816pub unsafe fn lsx_vsadd_wu(a: v4u32, b: v4u32) -> v4u32 {
2817 __lsx_vsadd_wu(a, b)
2818}
2819
2820#[inline]
2821#[target_feature(enable = "lsx")]
2822#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2823pub unsafe fn lsx_vsadd_du(a: v2u64, b: v2u64) -> v2u64 {
2824 __lsx_vsadd_du(a, b)
2825}
2826
2827#[inline]
2828#[target_feature(enable = "lsx")]
2829#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2830pub unsafe fn lsx_vavg_b(a: v16i8, b: v16i8) -> v16i8 {
2831 __lsx_vavg_b(a, b)
2832}
2833
2834#[inline]
2835#[target_feature(enable = "lsx")]
2836#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2837pub unsafe fn lsx_vavg_h(a: v8i16, b: v8i16) -> v8i16 {
2838 __lsx_vavg_h(a, b)
2839}
2840
2841#[inline]
2842#[target_feature(enable = "lsx")]
2843#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2844pub unsafe fn lsx_vavg_w(a: v4i32, b: v4i32) -> v4i32 {
2845 __lsx_vavg_w(a, b)
2846}
2847
2848#[inline]
2849#[target_feature(enable = "lsx")]
2850#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2851pub unsafe fn lsx_vavg_d(a: v2i64, b: v2i64) -> v2i64 {
2852 __lsx_vavg_d(a, b)
2853}
2854
2855#[inline]
2856#[target_feature(enable = "lsx")]
2857#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2858pub unsafe fn lsx_vavg_bu(a: v16u8, b: v16u8) -> v16u8 {
2859 __lsx_vavg_bu(a, b)
2860}
2861
2862#[inline]
2863#[target_feature(enable = "lsx")]
2864#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2865pub unsafe fn lsx_vavg_hu(a: v8u16, b: v8u16) -> v8u16 {
2866 __lsx_vavg_hu(a, b)
2867}
2868
2869#[inline]
2870#[target_feature(enable = "lsx")]
2871#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2872pub unsafe fn lsx_vavg_wu(a: v4u32, b: v4u32) -> v4u32 {
2873 __lsx_vavg_wu(a, b)
2874}
2875
2876#[inline]
2877#[target_feature(enable = "lsx")]
2878#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2879pub unsafe fn lsx_vavg_du(a: v2u64, b: v2u64) -> v2u64 {
2880 __lsx_vavg_du(a, b)
2881}
2882
2883#[inline]
2884#[target_feature(enable = "lsx")]
2885#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2886pub unsafe fn lsx_vavgr_b(a: v16i8, b: v16i8) -> v16i8 {
2887 __lsx_vavgr_b(a, b)
2888}
2889
2890#[inline]
2891#[target_feature(enable = "lsx")]
2892#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2893pub unsafe fn lsx_vavgr_h(a: v8i16, b: v8i16) -> v8i16 {
2894 __lsx_vavgr_h(a, b)
2895}
2896
2897#[inline]
2898#[target_feature(enable = "lsx")]
2899#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2900pub unsafe fn lsx_vavgr_w(a: v4i32, b: v4i32) -> v4i32 {
2901 __lsx_vavgr_w(a, b)
2902}
2903
2904#[inline]
2905#[target_feature(enable = "lsx")]
2906#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2907pub unsafe fn lsx_vavgr_d(a: v2i64, b: v2i64) -> v2i64 {
2908 __lsx_vavgr_d(a, b)
2909}
2910
2911#[inline]
2912#[target_feature(enable = "lsx")]
2913#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2914pub unsafe fn lsx_vavgr_bu(a: v16u8, b: v16u8) -> v16u8 {
2915 __lsx_vavgr_bu(a, b)
2916}
2917
2918#[inline]
2919#[target_feature(enable = "lsx")]
2920#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2921pub unsafe fn lsx_vavgr_hu(a: v8u16, b: v8u16) -> v8u16 {
2922 __lsx_vavgr_hu(a, b)
2923}
2924
2925#[inline]
2926#[target_feature(enable = "lsx")]
2927#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2928pub unsafe fn lsx_vavgr_wu(a: v4u32, b: v4u32) -> v4u32 {
2929 __lsx_vavgr_wu(a, b)
2930}
2931
2932#[inline]
2933#[target_feature(enable = "lsx")]
2934#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2935pub unsafe fn lsx_vavgr_du(a: v2u64, b: v2u64) -> v2u64 {
2936 __lsx_vavgr_du(a, b)
2937}
2938
2939#[inline]
2940#[target_feature(enable = "lsx")]
2941#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2942pub unsafe fn lsx_vssub_b(a: v16i8, b: v16i8) -> v16i8 {
2943 __lsx_vssub_b(a, b)
2944}
2945
2946#[inline]
2947#[target_feature(enable = "lsx")]
2948#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2949pub unsafe fn lsx_vssub_h(a: v8i16, b: v8i16) -> v8i16 {
2950 __lsx_vssub_h(a, b)
2951}
2952
2953#[inline]
2954#[target_feature(enable = "lsx")]
2955#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2956pub unsafe fn lsx_vssub_w(a: v4i32, b: v4i32) -> v4i32 {
2957 __lsx_vssub_w(a, b)
2958}
2959
2960#[inline]
2961#[target_feature(enable = "lsx")]
2962#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2963pub unsafe fn lsx_vssub_d(a: v2i64, b: v2i64) -> v2i64 {
2964 __lsx_vssub_d(a, b)
2965}
2966
2967#[inline]
2968#[target_feature(enable = "lsx")]
2969#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2970pub unsafe fn lsx_vssub_bu(a: v16u8, b: v16u8) -> v16u8 {
2971 __lsx_vssub_bu(a, b)
2972}
2973
2974#[inline]
2975#[target_feature(enable = "lsx")]
2976#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2977pub unsafe fn lsx_vssub_hu(a: v8u16, b: v8u16) -> v8u16 {
2978 __lsx_vssub_hu(a, b)
2979}
2980
2981#[inline]
2982#[target_feature(enable = "lsx")]
2983#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2984pub unsafe fn lsx_vssub_wu(a: v4u32, b: v4u32) -> v4u32 {
2985 __lsx_vssub_wu(a, b)
2986}
2987
2988#[inline]
2989#[target_feature(enable = "lsx")]
2990#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2991pub unsafe fn lsx_vssub_du(a: v2u64, b: v2u64) -> v2u64 {
2992 __lsx_vssub_du(a, b)
2993}
2994
2995#[inline]
2996#[target_feature(enable = "lsx")]
2997#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2998pub unsafe fn lsx_vabsd_b(a: v16i8, b: v16i8) -> v16i8 {
2999 __lsx_vabsd_b(a, b)
3000}
3001
3002#[inline]
3003#[target_feature(enable = "lsx")]
3004#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3005pub unsafe fn lsx_vabsd_h(a: v8i16, b: v8i16) -> v8i16 {
3006 __lsx_vabsd_h(a, b)
3007}
3008
3009#[inline]
3010#[target_feature(enable = "lsx")]
3011#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3012pub unsafe fn lsx_vabsd_w(a: v4i32, b: v4i32) -> v4i32 {
3013 __lsx_vabsd_w(a, b)
3014}
3015
3016#[inline]
3017#[target_feature(enable = "lsx")]
3018#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3019pub unsafe fn lsx_vabsd_d(a: v2i64, b: v2i64) -> v2i64 {
3020 __lsx_vabsd_d(a, b)
3021}
3022
3023#[inline]
3024#[target_feature(enable = "lsx")]
3025#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3026pub unsafe fn lsx_vabsd_bu(a: v16u8, b: v16u8) -> v16u8 {
3027 __lsx_vabsd_bu(a, b)
3028}
3029
3030#[inline]
3031#[target_feature(enable = "lsx")]
3032#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3033pub unsafe fn lsx_vabsd_hu(a: v8u16, b: v8u16) -> v8u16 {
3034 __lsx_vabsd_hu(a, b)
3035}
3036
3037#[inline]
3038#[target_feature(enable = "lsx")]
3039#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3040pub unsafe fn lsx_vabsd_wu(a: v4u32, b: v4u32) -> v4u32 {
3041 __lsx_vabsd_wu(a, b)
3042}
3043
3044#[inline]
3045#[target_feature(enable = "lsx")]
3046#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3047pub unsafe fn lsx_vabsd_du(a: v2u64, b: v2u64) -> v2u64 {
3048 __lsx_vabsd_du(a, b)
3049}
3050
3051#[inline]
3052#[target_feature(enable = "lsx")]
3053#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3054pub unsafe fn lsx_vmul_b(a: v16i8, b: v16i8) -> v16i8 {
3055 __lsx_vmul_b(a, b)
3056}
3057
3058#[inline]
3059#[target_feature(enable = "lsx")]
3060#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3061pub unsafe fn lsx_vmul_h(a: v8i16, b: v8i16) -> v8i16 {
3062 __lsx_vmul_h(a, b)
3063}
3064
3065#[inline]
3066#[target_feature(enable = "lsx")]
3067#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3068pub unsafe fn lsx_vmul_w(a: v4i32, b: v4i32) -> v4i32 {
3069 __lsx_vmul_w(a, b)
3070}
3071
3072#[inline]
3073#[target_feature(enable = "lsx")]
3074#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3075pub unsafe fn lsx_vmul_d(a: v2i64, b: v2i64) -> v2i64 {
3076 __lsx_vmul_d(a, b)
3077}
3078
3079#[inline]
3080#[target_feature(enable = "lsx")]
3081#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3082pub unsafe fn lsx_vmadd_b(a: v16i8, b: v16i8, c: v16i8) -> v16i8 {
3083 __lsx_vmadd_b(a, b, c)
3084}
3085
3086#[inline]
3087#[target_feature(enable = "lsx")]
3088#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3089pub unsafe fn lsx_vmadd_h(a: v8i16, b: v8i16, c: v8i16) -> v8i16 {
3090 __lsx_vmadd_h(a, b, c)
3091}
3092
3093#[inline]
3094#[target_feature(enable = "lsx")]
3095#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3096pub unsafe fn lsx_vmadd_w(a: v4i32, b: v4i32, c: v4i32) -> v4i32 {
3097 __lsx_vmadd_w(a, b, c)
3098}
3099
3100#[inline]
3101#[target_feature(enable = "lsx")]
3102#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3103pub unsafe fn lsx_vmadd_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64 {
3104 __lsx_vmadd_d(a, b, c)
3105}
3106
3107#[inline]
3108#[target_feature(enable = "lsx")]
3109#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3110pub unsafe fn lsx_vmsub_b(a: v16i8, b: v16i8, c: v16i8) -> v16i8 {
3111 __lsx_vmsub_b(a, b, c)
3112}
3113
3114#[inline]
3115#[target_feature(enable = "lsx")]
3116#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3117pub unsafe fn lsx_vmsub_h(a: v8i16, b: v8i16, c: v8i16) -> v8i16 {
3118 __lsx_vmsub_h(a, b, c)
3119}
3120
3121#[inline]
3122#[target_feature(enable = "lsx")]
3123#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3124pub unsafe fn lsx_vmsub_w(a: v4i32, b: v4i32, c: v4i32) -> v4i32 {
3125 __lsx_vmsub_w(a, b, c)
3126}
3127
3128#[inline]
3129#[target_feature(enable = "lsx")]
3130#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3131pub unsafe fn lsx_vmsub_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64 {
3132 __lsx_vmsub_d(a, b, c)
3133}
3134
3135#[inline]
3136#[target_feature(enable = "lsx")]
3137#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3138pub unsafe fn lsx_vdiv_b(a: v16i8, b: v16i8) -> v16i8 {
3139 __lsx_vdiv_b(a, b)
3140}
3141
3142#[inline]
3143#[target_feature(enable = "lsx")]
3144#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3145pub unsafe fn lsx_vdiv_h(a: v8i16, b: v8i16) -> v8i16 {
3146 __lsx_vdiv_h(a, b)
3147}
3148
3149#[inline]
3150#[target_feature(enable = "lsx")]
3151#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3152pub unsafe fn lsx_vdiv_w(a: v4i32, b: v4i32) -> v4i32 {
3153 __lsx_vdiv_w(a, b)
3154}
3155
3156#[inline]
3157#[target_feature(enable = "lsx")]
3158#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3159pub unsafe fn lsx_vdiv_d(a: v2i64, b: v2i64) -> v2i64 {
3160 __lsx_vdiv_d(a, b)
3161}
3162
3163#[inline]
3164#[target_feature(enable = "lsx")]
3165#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3166pub unsafe fn lsx_vdiv_bu(a: v16u8, b: v16u8) -> v16u8 {
3167 __lsx_vdiv_bu(a, b)
3168}
3169
3170#[inline]
3171#[target_feature(enable = "lsx")]
3172#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3173pub unsafe fn lsx_vdiv_hu(a: v8u16, b: v8u16) -> v8u16 {
3174 __lsx_vdiv_hu(a, b)
3175}
3176
3177#[inline]
3178#[target_feature(enable = "lsx")]
3179#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3180pub unsafe fn lsx_vdiv_wu(a: v4u32, b: v4u32) -> v4u32 {
3181 __lsx_vdiv_wu(a, b)
3182}
3183
3184#[inline]
3185#[target_feature(enable = "lsx")]
3186#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3187pub unsafe fn lsx_vdiv_du(a: v2u64, b: v2u64) -> v2u64 {
3188 __lsx_vdiv_du(a, b)
3189}
3190
3191#[inline]
3192#[target_feature(enable = "lsx")]
3193#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3194pub unsafe fn lsx_vhaddw_h_b(a: v16i8, b: v16i8) -> v8i16 {
3195 __lsx_vhaddw_h_b(a, b)
3196}
3197
3198#[inline]
3199#[target_feature(enable = "lsx")]
3200#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3201pub unsafe fn lsx_vhaddw_w_h(a: v8i16, b: v8i16) -> v4i32 {
3202 __lsx_vhaddw_w_h(a, b)
3203}
3204
3205#[inline]
3206#[target_feature(enable = "lsx")]
3207#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3208pub unsafe fn lsx_vhaddw_d_w(a: v4i32, b: v4i32) -> v2i64 {
3209 __lsx_vhaddw_d_w(a, b)
3210}
3211
3212#[inline]
3213#[target_feature(enable = "lsx")]
3214#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3215pub unsafe fn lsx_vhaddw_hu_bu(a: v16u8, b: v16u8) -> v8u16 {
3216 __lsx_vhaddw_hu_bu(a, b)
3217}
3218
3219#[inline]
3220#[target_feature(enable = "lsx")]
3221#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3222pub unsafe fn lsx_vhaddw_wu_hu(a: v8u16, b: v8u16) -> v4u32 {
3223 __lsx_vhaddw_wu_hu(a, b)
3224}
3225
3226#[inline]
3227#[target_feature(enable = "lsx")]
3228#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3229pub unsafe fn lsx_vhaddw_du_wu(a: v4u32, b: v4u32) -> v2u64 {
3230 __lsx_vhaddw_du_wu(a, b)
3231}
3232
3233#[inline]
3234#[target_feature(enable = "lsx")]
3235#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3236pub unsafe fn lsx_vhsubw_h_b(a: v16i8, b: v16i8) -> v8i16 {
3237 __lsx_vhsubw_h_b(a, b)
3238}
3239
3240#[inline]
3241#[target_feature(enable = "lsx")]
3242#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3243pub unsafe fn lsx_vhsubw_w_h(a: v8i16, b: v8i16) -> v4i32 {
3244 __lsx_vhsubw_w_h(a, b)
3245}
3246
3247#[inline]
3248#[target_feature(enable = "lsx")]
3249#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3250pub unsafe fn lsx_vhsubw_d_w(a: v4i32, b: v4i32) -> v2i64 {
3251 __lsx_vhsubw_d_w(a, b)
3252}
3253
3254#[inline]
3255#[target_feature(enable = "lsx")]
3256#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3257pub unsafe fn lsx_vhsubw_hu_bu(a: v16u8, b: v16u8) -> v8i16 {
3258 __lsx_vhsubw_hu_bu(a, b)
3259}
3260
3261#[inline]
3262#[target_feature(enable = "lsx")]
3263#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3264pub unsafe fn lsx_vhsubw_wu_hu(a: v8u16, b: v8u16) -> v4i32 {
3265 __lsx_vhsubw_wu_hu(a, b)
3266}
3267
3268#[inline]
3269#[target_feature(enable = "lsx")]
3270#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3271pub unsafe fn lsx_vhsubw_du_wu(a: v4u32, b: v4u32) -> v2i64 {
3272 __lsx_vhsubw_du_wu(a, b)
3273}
3274
3275#[inline]
3276#[target_feature(enable = "lsx")]
3277#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3278pub unsafe fn lsx_vmod_b(a: v16i8, b: v16i8) -> v16i8 {
3279 __lsx_vmod_b(a, b)
3280}
3281
3282#[inline]
3283#[target_feature(enable = "lsx")]
3284#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3285pub unsafe fn lsx_vmod_h(a: v8i16, b: v8i16) -> v8i16 {
3286 __lsx_vmod_h(a, b)
3287}
3288
3289#[inline]
3290#[target_feature(enable = "lsx")]
3291#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3292pub unsafe fn lsx_vmod_w(a: v4i32, b: v4i32) -> v4i32 {
3293 __lsx_vmod_w(a, b)
3294}
3295
3296#[inline]
3297#[target_feature(enable = "lsx")]
3298#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3299pub unsafe fn lsx_vmod_d(a: v2i64, b: v2i64) -> v2i64 {
3300 __lsx_vmod_d(a, b)
3301}
3302
3303#[inline]
3304#[target_feature(enable = "lsx")]
3305#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3306pub unsafe fn lsx_vmod_bu(a: v16u8, b: v16u8) -> v16u8 {
3307 __lsx_vmod_bu(a, b)
3308}
3309
3310#[inline]
3311#[target_feature(enable = "lsx")]
3312#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3313pub unsafe fn lsx_vmod_hu(a: v8u16, b: v8u16) -> v8u16 {
3314 __lsx_vmod_hu(a, b)
3315}
3316
3317#[inline]
3318#[target_feature(enable = "lsx")]
3319#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3320pub unsafe fn lsx_vmod_wu(a: v4u32, b: v4u32) -> v4u32 {
3321 __lsx_vmod_wu(a, b)
3322}
3323
3324#[inline]
3325#[target_feature(enable = "lsx")]
3326#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3327pub unsafe fn lsx_vmod_du(a: v2u64, b: v2u64) -> v2u64 {
3328 __lsx_vmod_du(a, b)
3329}
3330
3331#[inline]
3332#[target_feature(enable = "lsx")]
3333#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3334pub unsafe fn lsx_vreplve_b(a: v16i8, b: i32) -> v16i8 {
3335 __lsx_vreplve_b(a, b)
3336}
3337
3338#[inline]
3339#[target_feature(enable = "lsx")]
3340#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3341pub unsafe fn lsx_vreplve_h(a: v8i16, b: i32) -> v8i16 {
3342 __lsx_vreplve_h(a, b)
3343}
3344
3345#[inline]
3346#[target_feature(enable = "lsx")]
3347#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3348pub unsafe fn lsx_vreplve_w(a: v4i32, b: i32) -> v4i32 {
3349 __lsx_vreplve_w(a, b)
3350}
3351
3352#[inline]
3353#[target_feature(enable = "lsx")]
3354#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3355pub unsafe fn lsx_vreplve_d(a: v2i64, b: i32) -> v2i64 {
3356 __lsx_vreplve_d(a, b)
3357}
3358
3359#[inline]
3360#[target_feature(enable = "lsx")]
3361#[rustc_legacy_const_generics(1)]
3362#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3363pub unsafe fn lsx_vreplvei_b<const IMM4: u32>(a: v16i8) -> v16i8 {
3364 static_assert_uimm_bits!(IMM4, 4);
3365 __lsx_vreplvei_b(a, IMM4)
3366}
3367
3368#[inline]
3369#[target_feature(enable = "lsx")]
3370#[rustc_legacy_const_generics(1)]
3371#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3372pub unsafe fn lsx_vreplvei_h<const IMM3: u32>(a: v8i16) -> v8i16 {
3373 static_assert_uimm_bits!(IMM3, 3);
3374 __lsx_vreplvei_h(a, IMM3)
3375}
3376
3377#[inline]
3378#[target_feature(enable = "lsx")]
3379#[rustc_legacy_const_generics(1)]
3380#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3381pub unsafe fn lsx_vreplvei_w<const IMM2: u32>(a: v4i32) -> v4i32 {
3382 static_assert_uimm_bits!(IMM2, 2);
3383 __lsx_vreplvei_w(a, IMM2)
3384}
3385
3386#[inline]
3387#[target_feature(enable = "lsx")]
3388#[rustc_legacy_const_generics(1)]
3389#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3390pub unsafe fn lsx_vreplvei_d<const IMM1: u32>(a: v2i64) -> v2i64 {
3391 static_assert_uimm_bits!(IMM1, 1);
3392 __lsx_vreplvei_d(a, IMM1)
3393}
3394
3395#[inline]
3396#[target_feature(enable = "lsx")]
3397#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3398pub unsafe fn lsx_vpickev_b(a: v16i8, b: v16i8) -> v16i8 {
3399 __lsx_vpickev_b(a, b)
3400}
3401
3402#[inline]
3403#[target_feature(enable = "lsx")]
3404#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3405pub unsafe fn lsx_vpickev_h(a: v8i16, b: v8i16) -> v8i16 {
3406 __lsx_vpickev_h(a, b)
3407}
3408
3409#[inline]
3410#[target_feature(enable = "lsx")]
3411#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3412pub unsafe fn lsx_vpickev_w(a: v4i32, b: v4i32) -> v4i32 {
3413 __lsx_vpickev_w(a, b)
3414}
3415
3416#[inline]
3417#[target_feature(enable = "lsx")]
3418#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3419pub unsafe fn lsx_vpickev_d(a: v2i64, b: v2i64) -> v2i64 {
3420 __lsx_vpickev_d(a, b)
3421}
3422
3423#[inline]
3424#[target_feature(enable = "lsx")]
3425#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3426pub unsafe fn lsx_vpickod_b(a: v16i8, b: v16i8) -> v16i8 {
3427 __lsx_vpickod_b(a, b)
3428}
3429
3430#[inline]
3431#[target_feature(enable = "lsx")]
3432#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3433pub unsafe fn lsx_vpickod_h(a: v8i16, b: v8i16) -> v8i16 {
3434 __lsx_vpickod_h(a, b)
3435}
3436
3437#[inline]
3438#[target_feature(enable = "lsx")]
3439#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3440pub unsafe fn lsx_vpickod_w(a: v4i32, b: v4i32) -> v4i32 {
3441 __lsx_vpickod_w(a, b)
3442}
3443
3444#[inline]
3445#[target_feature(enable = "lsx")]
3446#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3447pub unsafe fn lsx_vpickod_d(a: v2i64, b: v2i64) -> v2i64 {
3448 __lsx_vpickod_d(a, b)
3449}
3450
3451#[inline]
3452#[target_feature(enable = "lsx")]
3453#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3454pub unsafe fn lsx_vilvh_b(a: v16i8, b: v16i8) -> v16i8 {
3455 __lsx_vilvh_b(a, b)
3456}
3457
3458#[inline]
3459#[target_feature(enable = "lsx")]
3460#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3461pub unsafe fn lsx_vilvh_h(a: v8i16, b: v8i16) -> v8i16 {
3462 __lsx_vilvh_h(a, b)
3463}
3464
3465#[inline]
3466#[target_feature(enable = "lsx")]
3467#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3468pub unsafe fn lsx_vilvh_w(a: v4i32, b: v4i32) -> v4i32 {
3469 __lsx_vilvh_w(a, b)
3470}
3471
3472#[inline]
3473#[target_feature(enable = "lsx")]
3474#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3475pub unsafe fn lsx_vilvh_d(a: v2i64, b: v2i64) -> v2i64 {
3476 __lsx_vilvh_d(a, b)
3477}
3478
3479#[inline]
3480#[target_feature(enable = "lsx")]
3481#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3482pub unsafe fn lsx_vilvl_b(a: v16i8, b: v16i8) -> v16i8 {
3483 __lsx_vilvl_b(a, b)
3484}
3485
3486#[inline]
3487#[target_feature(enable = "lsx")]
3488#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3489pub unsafe fn lsx_vilvl_h(a: v8i16, b: v8i16) -> v8i16 {
3490 __lsx_vilvl_h(a, b)
3491}
3492
3493#[inline]
3494#[target_feature(enable = "lsx")]
3495#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3496pub unsafe fn lsx_vilvl_w(a: v4i32, b: v4i32) -> v4i32 {
3497 __lsx_vilvl_w(a, b)
3498}
3499
3500#[inline]
3501#[target_feature(enable = "lsx")]
3502#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3503pub unsafe fn lsx_vilvl_d(a: v2i64, b: v2i64) -> v2i64 {
3504 __lsx_vilvl_d(a, b)
3505}
3506
3507#[inline]
3508#[target_feature(enable = "lsx")]
3509#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3510pub unsafe fn lsx_vpackev_b(a: v16i8, b: v16i8) -> v16i8 {
3511 __lsx_vpackev_b(a, b)
3512}
3513
3514#[inline]
3515#[target_feature(enable = "lsx")]
3516#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3517pub unsafe fn lsx_vpackev_h(a: v8i16, b: v8i16) -> v8i16 {
3518 __lsx_vpackev_h(a, b)
3519}
3520
3521#[inline]
3522#[target_feature(enable = "lsx")]
3523#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3524pub unsafe fn lsx_vpackev_w(a: v4i32, b: v4i32) -> v4i32 {
3525 __lsx_vpackev_w(a, b)
3526}
3527
3528#[inline]
3529#[target_feature(enable = "lsx")]
3530#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3531pub unsafe fn lsx_vpackev_d(a: v2i64, b: v2i64) -> v2i64 {
3532 __lsx_vpackev_d(a, b)
3533}
3534
3535#[inline]
3536#[target_feature(enable = "lsx")]
3537#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3538pub unsafe fn lsx_vpackod_b(a: v16i8, b: v16i8) -> v16i8 {
3539 __lsx_vpackod_b(a, b)
3540}
3541
3542#[inline]
3543#[target_feature(enable = "lsx")]
3544#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3545pub unsafe fn lsx_vpackod_h(a: v8i16, b: v8i16) -> v8i16 {
3546 __lsx_vpackod_h(a, b)
3547}
3548
3549#[inline]
3550#[target_feature(enable = "lsx")]
3551#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3552pub unsafe fn lsx_vpackod_w(a: v4i32, b: v4i32) -> v4i32 {
3553 __lsx_vpackod_w(a, b)
3554}
3555
3556#[inline]
3557#[target_feature(enable = "lsx")]
3558#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3559pub unsafe fn lsx_vpackod_d(a: v2i64, b: v2i64) -> v2i64 {
3560 __lsx_vpackod_d(a, b)
3561}
3562
3563#[inline]
3564#[target_feature(enable = "lsx")]
3565#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3566pub unsafe fn lsx_vshuf_h(a: v8i16, b: v8i16, c: v8i16) -> v8i16 {
3567 __lsx_vshuf_h(a, b, c)
3568}
3569
3570#[inline]
3571#[target_feature(enable = "lsx")]
3572#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3573pub unsafe fn lsx_vshuf_w(a: v4i32, b: v4i32, c: v4i32) -> v4i32 {
3574 __lsx_vshuf_w(a, b, c)
3575}
3576
3577#[inline]
3578#[target_feature(enable = "lsx")]
3579#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3580pub unsafe fn lsx_vshuf_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64 {
3581 __lsx_vshuf_d(a, b, c)
3582}
3583
3584#[inline]
3585#[target_feature(enable = "lsx")]
3586#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3587pub unsafe fn lsx_vand_v(a: v16u8, b: v16u8) -> v16u8 {
3588 __lsx_vand_v(a, b)
3589}
3590
3591#[inline]
3592#[target_feature(enable = "lsx")]
3593#[rustc_legacy_const_generics(1)]
3594#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3595pub unsafe fn lsx_vandi_b<const IMM8: u32>(a: v16u8) -> v16u8 {
3596 static_assert_uimm_bits!(IMM8, 8);
3597 __lsx_vandi_b(a, IMM8)
3598}
3599
3600#[inline]
3601#[target_feature(enable = "lsx")]
3602#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3603pub unsafe fn lsx_vor_v(a: v16u8, b: v16u8) -> v16u8 {
3604 __lsx_vor_v(a, b)
3605}
3606
3607#[inline]
3608#[target_feature(enable = "lsx")]
3609#[rustc_legacy_const_generics(1)]
3610#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3611pub unsafe fn lsx_vori_b<const IMM8: u32>(a: v16u8) -> v16u8 {
3612 static_assert_uimm_bits!(IMM8, 8);
3613 __lsx_vori_b(a, IMM8)
3614}
3615
3616#[inline]
3617#[target_feature(enable = "lsx")]
3618#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3619pub unsafe fn lsx_vnor_v(a: v16u8, b: v16u8) -> v16u8 {
3620 __lsx_vnor_v(a, b)
3621}
3622
3623#[inline]
3624#[target_feature(enable = "lsx")]
3625#[rustc_legacy_const_generics(1)]
3626#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3627pub unsafe fn lsx_vnori_b<const IMM8: u32>(a: v16u8) -> v16u8 {
3628 static_assert_uimm_bits!(IMM8, 8);
3629 __lsx_vnori_b(a, IMM8)
3630}
3631
3632#[inline]
3633#[target_feature(enable = "lsx")]
3634#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3635pub unsafe fn lsx_vxor_v(a: v16u8, b: v16u8) -> v16u8 {
3636 __lsx_vxor_v(a, b)
3637}
3638
3639#[inline]
3640#[target_feature(enable = "lsx")]
3641#[rustc_legacy_const_generics(1)]
3642#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3643pub unsafe fn lsx_vxori_b<const IMM8: u32>(a: v16u8) -> v16u8 {
3644 static_assert_uimm_bits!(IMM8, 8);
3645 __lsx_vxori_b(a, IMM8)
3646}
3647
3648#[inline]
3649#[target_feature(enable = "lsx")]
3650#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3651pub unsafe fn lsx_vbitsel_v(a: v16u8, b: v16u8, c: v16u8) -> v16u8 {
3652 __lsx_vbitsel_v(a, b, c)
3653}
3654
3655#[inline]
3656#[target_feature(enable = "lsx")]
3657#[rustc_legacy_const_generics(2)]
3658#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3659pub unsafe fn lsx_vbitseli_b<const IMM8: u32>(a: v16u8, b: v16u8) -> v16u8 {
3660 static_assert_uimm_bits!(IMM8, 8);
3661 __lsx_vbitseli_b(a, b, IMM8)
3662}
3663
3664#[inline]
3665#[target_feature(enable = "lsx")]
3666#[rustc_legacy_const_generics(1)]
3667#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3668pub unsafe fn lsx_vshuf4i_b<const IMM8: u32>(a: v16i8) -> v16i8 {
3669 static_assert_uimm_bits!(IMM8, 8);
3670 __lsx_vshuf4i_b(a, IMM8)
3671}
3672
3673#[inline]
3674#[target_feature(enable = "lsx")]
3675#[rustc_legacy_const_generics(1)]
3676#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3677pub unsafe fn lsx_vshuf4i_h<const IMM8: u32>(a: v8i16) -> v8i16 {
3678 static_assert_uimm_bits!(IMM8, 8);
3679 __lsx_vshuf4i_h(a, IMM8)
3680}
3681
3682#[inline]
3683#[target_feature(enable = "lsx")]
3684#[rustc_legacy_const_generics(1)]
3685#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3686pub unsafe fn lsx_vshuf4i_w<const IMM8: u32>(a: v4i32) -> v4i32 {
3687 static_assert_uimm_bits!(IMM8, 8);
3688 __lsx_vshuf4i_w(a, IMM8)
3689}
3690
3691#[inline]
3692#[target_feature(enable = "lsx")]
3693#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3694pub unsafe fn lsx_vreplgr2vr_b(a: i32) -> v16i8 {
3695 __lsx_vreplgr2vr_b(a)
3696}
3697
3698#[inline]
3699#[target_feature(enable = "lsx")]
3700#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3701pub unsafe fn lsx_vreplgr2vr_h(a: i32) -> v8i16 {
3702 __lsx_vreplgr2vr_h(a)
3703}
3704
3705#[inline]
3706#[target_feature(enable = "lsx")]
3707#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3708pub unsafe fn lsx_vreplgr2vr_w(a: i32) -> v4i32 {
3709 __lsx_vreplgr2vr_w(a)
3710}
3711
3712#[inline]
3713#[target_feature(enable = "lsx")]
3714#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3715pub unsafe fn lsx_vreplgr2vr_d(a: i64) -> v2i64 {
3716 __lsx_vreplgr2vr_d(a)
3717}
3718
3719#[inline]
3720#[target_feature(enable = "lsx")]
3721#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3722pub unsafe fn lsx_vpcnt_b(a: v16i8) -> v16i8 {
3723 __lsx_vpcnt_b(a)
3724}
3725
3726#[inline]
3727#[target_feature(enable = "lsx")]
3728#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3729pub unsafe fn lsx_vpcnt_h(a: v8i16) -> v8i16 {
3730 __lsx_vpcnt_h(a)
3731}
3732
3733#[inline]
3734#[target_feature(enable = "lsx")]
3735#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3736pub unsafe fn lsx_vpcnt_w(a: v4i32) -> v4i32 {
3737 __lsx_vpcnt_w(a)
3738}
3739
3740#[inline]
3741#[target_feature(enable = "lsx")]
3742#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3743pub unsafe fn lsx_vpcnt_d(a: v2i64) -> v2i64 {
3744 __lsx_vpcnt_d(a)
3745}
3746
3747#[inline]
3748#[target_feature(enable = "lsx")]
3749#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3750pub unsafe fn lsx_vclo_b(a: v16i8) -> v16i8 {
3751 __lsx_vclo_b(a)
3752}
3753
3754#[inline]
3755#[target_feature(enable = "lsx")]
3756#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3757pub unsafe fn lsx_vclo_h(a: v8i16) -> v8i16 {
3758 __lsx_vclo_h(a)
3759}
3760
3761#[inline]
3762#[target_feature(enable = "lsx")]
3763#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3764pub unsafe fn lsx_vclo_w(a: v4i32) -> v4i32 {
3765 __lsx_vclo_w(a)
3766}
3767
3768#[inline]
3769#[target_feature(enable = "lsx")]
3770#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3771pub unsafe fn lsx_vclo_d(a: v2i64) -> v2i64 {
3772 __lsx_vclo_d(a)
3773}
3774
3775#[inline]
3776#[target_feature(enable = "lsx")]
3777#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3778pub unsafe fn lsx_vclz_b(a: v16i8) -> v16i8 {
3779 __lsx_vclz_b(a)
3780}
3781
3782#[inline]
3783#[target_feature(enable = "lsx")]
3784#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3785pub unsafe fn lsx_vclz_h(a: v8i16) -> v8i16 {
3786 __lsx_vclz_h(a)
3787}
3788
3789#[inline]
3790#[target_feature(enable = "lsx")]
3791#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3792pub unsafe fn lsx_vclz_w(a: v4i32) -> v4i32 {
3793 __lsx_vclz_w(a)
3794}
3795
3796#[inline]
3797#[target_feature(enable = "lsx")]
3798#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3799pub unsafe fn lsx_vclz_d(a: v2i64) -> v2i64 {
3800 __lsx_vclz_d(a)
3801}
3802
3803#[inline]
3804#[target_feature(enable = "lsx")]
3805#[rustc_legacy_const_generics(1)]
3806#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3807pub unsafe fn lsx_vpickve2gr_b<const IMM4: u32>(a: v16i8) -> i32 {
3808 static_assert_uimm_bits!(IMM4, 4);
3809 __lsx_vpickve2gr_b(a, IMM4)
3810}
3811
3812#[inline]
3813#[target_feature(enable = "lsx")]
3814#[rustc_legacy_const_generics(1)]
3815#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3816pub unsafe fn lsx_vpickve2gr_h<const IMM3: u32>(a: v8i16) -> i32 {
3817 static_assert_uimm_bits!(IMM3, 3);
3818 __lsx_vpickve2gr_h(a, IMM3)
3819}
3820
3821#[inline]
3822#[target_feature(enable = "lsx")]
3823#[rustc_legacy_const_generics(1)]
3824#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3825pub unsafe fn lsx_vpickve2gr_w<const IMM2: u32>(a: v4i32) -> i32 {
3826 static_assert_uimm_bits!(IMM2, 2);
3827 __lsx_vpickve2gr_w(a, IMM2)
3828}
3829
3830#[inline]
3831#[target_feature(enable = "lsx")]
3832#[rustc_legacy_const_generics(1)]
3833#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3834pub unsafe fn lsx_vpickve2gr_d<const IMM1: u32>(a: v2i64) -> i64 {
3835 static_assert_uimm_bits!(IMM1, 1);
3836 __lsx_vpickve2gr_d(a, IMM1)
3837}
3838
3839#[inline]
3840#[target_feature(enable = "lsx")]
3841#[rustc_legacy_const_generics(1)]
3842#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3843pub unsafe fn lsx_vpickve2gr_bu<const IMM4: u32>(a: v16i8) -> u32 {
3844 static_assert_uimm_bits!(IMM4, 4);
3845 __lsx_vpickve2gr_bu(a, IMM4)
3846}
3847
3848#[inline]
3849#[target_feature(enable = "lsx")]
3850#[rustc_legacy_const_generics(1)]
3851#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3852pub unsafe fn lsx_vpickve2gr_hu<const IMM3: u32>(a: v8i16) -> u32 {
3853 static_assert_uimm_bits!(IMM3, 3);
3854 __lsx_vpickve2gr_hu(a, IMM3)
3855}
3856
3857#[inline]
3858#[target_feature(enable = "lsx")]
3859#[rustc_legacy_const_generics(1)]
3860#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3861pub unsafe fn lsx_vpickve2gr_wu<const IMM2: u32>(a: v4i32) -> u32 {
3862 static_assert_uimm_bits!(IMM2, 2);
3863 __lsx_vpickve2gr_wu(a, IMM2)
3864}
3865
3866#[inline]
3867#[target_feature(enable = "lsx")]
3868#[rustc_legacy_const_generics(1)]
3869#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3870pub unsafe fn lsx_vpickve2gr_du<const IMM1: u32>(a: v2i64) -> u64 {
3871 static_assert_uimm_bits!(IMM1, 1);
3872 __lsx_vpickve2gr_du(a, IMM1)
3873}
3874
3875#[inline]
3876#[target_feature(enable = "lsx")]
3877#[rustc_legacy_const_generics(2)]
3878#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3879pub unsafe fn lsx_vinsgr2vr_b<const IMM4: u32>(a: v16i8, b: i32) -> v16i8 {
3880 static_assert_uimm_bits!(IMM4, 4);
3881 __lsx_vinsgr2vr_b(a, b, IMM4)
3882}
3883
3884#[inline]
3885#[target_feature(enable = "lsx")]
3886#[rustc_legacy_const_generics(2)]
3887#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3888pub unsafe fn lsx_vinsgr2vr_h<const IMM3: u32>(a: v8i16, b: i32) -> v8i16 {
3889 static_assert_uimm_bits!(IMM3, 3);
3890 __lsx_vinsgr2vr_h(a, b, IMM3)
3891}
3892
3893#[inline]
3894#[target_feature(enable = "lsx")]
3895#[rustc_legacy_const_generics(2)]
3896#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3897pub unsafe fn lsx_vinsgr2vr_w<const IMM2: u32>(a: v4i32, b: i32) -> v4i32 {
3898 static_assert_uimm_bits!(IMM2, 2);
3899 __lsx_vinsgr2vr_w(a, b, IMM2)
3900}
3901
3902#[inline]
3903#[target_feature(enable = "lsx")]
3904#[rustc_legacy_const_generics(2)]
3905#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3906pub unsafe fn lsx_vinsgr2vr_d<const IMM1: u32>(a: v2i64, b: i64) -> v2i64 {
3907 static_assert_uimm_bits!(IMM1, 1);
3908 __lsx_vinsgr2vr_d(a, b, IMM1)
3909}
3910
3911#[inline]
3912#[target_feature(enable = "lsx")]
3913#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3914pub unsafe fn lsx_vfadd_s(a: v4f32, b: v4f32) -> v4f32 {
3915 __lsx_vfadd_s(a, b)
3916}
3917
3918#[inline]
3919#[target_feature(enable = "lsx")]
3920#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3921pub unsafe fn lsx_vfadd_d(a: v2f64, b: v2f64) -> v2f64 {
3922 __lsx_vfadd_d(a, b)
3923}
3924
3925#[inline]
3926#[target_feature(enable = "lsx")]
3927#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3928pub unsafe fn lsx_vfsub_s(a: v4f32, b: v4f32) -> v4f32 {
3929 __lsx_vfsub_s(a, b)
3930}
3931
3932#[inline]
3933#[target_feature(enable = "lsx")]
3934#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3935pub unsafe fn lsx_vfsub_d(a: v2f64, b: v2f64) -> v2f64 {
3936 __lsx_vfsub_d(a, b)
3937}
3938
3939#[inline]
3940#[target_feature(enable = "lsx")]
3941#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3942pub unsafe fn lsx_vfmul_s(a: v4f32, b: v4f32) -> v4f32 {
3943 __lsx_vfmul_s(a, b)
3944}
3945
3946#[inline]
3947#[target_feature(enable = "lsx")]
3948#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3949pub unsafe fn lsx_vfmul_d(a: v2f64, b: v2f64) -> v2f64 {
3950 __lsx_vfmul_d(a, b)
3951}
3952
3953#[inline]
3954#[target_feature(enable = "lsx")]
3955#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3956pub unsafe fn lsx_vfdiv_s(a: v4f32, b: v4f32) -> v4f32 {
3957 __lsx_vfdiv_s(a, b)
3958}
3959
3960#[inline]
3961#[target_feature(enable = "lsx")]
3962#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3963pub unsafe fn lsx_vfdiv_d(a: v2f64, b: v2f64) -> v2f64 {
3964 __lsx_vfdiv_d(a, b)
3965}
3966
3967#[inline]
3968#[target_feature(enable = "lsx")]
3969#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3970pub unsafe fn lsx_vfcvt_h_s(a: v4f32, b: v4f32) -> v8i16 {
3971 __lsx_vfcvt_h_s(a, b)
3972}
3973
3974#[inline]
3975#[target_feature(enable = "lsx")]
3976#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3977pub unsafe fn lsx_vfcvt_s_d(a: v2f64, b: v2f64) -> v4f32 {
3978 __lsx_vfcvt_s_d(a, b)
3979}
3980
3981#[inline]
3982#[target_feature(enable = "lsx")]
3983#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3984pub unsafe fn lsx_vfmin_s(a: v4f32, b: v4f32) -> v4f32 {
3985 __lsx_vfmin_s(a, b)
3986}
3987
3988#[inline]
3989#[target_feature(enable = "lsx")]
3990#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3991pub unsafe fn lsx_vfmin_d(a: v2f64, b: v2f64) -> v2f64 {
3992 __lsx_vfmin_d(a, b)
3993}
3994
3995#[inline]
3996#[target_feature(enable = "lsx")]
3997#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3998pub unsafe fn lsx_vfmina_s(a: v4f32, b: v4f32) -> v4f32 {
3999 __lsx_vfmina_s(a, b)
4000}
4001
4002#[inline]
4003#[target_feature(enable = "lsx")]
4004#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4005pub unsafe fn lsx_vfmina_d(a: v2f64, b: v2f64) -> v2f64 {
4006 __lsx_vfmina_d(a, b)
4007}
4008
4009#[inline]
4010#[target_feature(enable = "lsx")]
4011#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4012pub unsafe fn lsx_vfmax_s(a: v4f32, b: v4f32) -> v4f32 {
4013 __lsx_vfmax_s(a, b)
4014}
4015
4016#[inline]
4017#[target_feature(enable = "lsx")]
4018#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4019pub unsafe fn lsx_vfmax_d(a: v2f64, b: v2f64) -> v2f64 {
4020 __lsx_vfmax_d(a, b)
4021}
4022
4023#[inline]
4024#[target_feature(enable = "lsx")]
4025#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4026pub unsafe fn lsx_vfmaxa_s(a: v4f32, b: v4f32) -> v4f32 {
4027 __lsx_vfmaxa_s(a, b)
4028}
4029
4030#[inline]
4031#[target_feature(enable = "lsx")]
4032#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4033pub unsafe fn lsx_vfmaxa_d(a: v2f64, b: v2f64) -> v2f64 {
4034 __lsx_vfmaxa_d(a, b)
4035}
4036
4037#[inline]
4038#[target_feature(enable = "lsx")]
4039#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4040pub unsafe fn lsx_vfclass_s(a: v4f32) -> v4i32 {
4041 __lsx_vfclass_s(a)
4042}
4043
4044#[inline]
4045#[target_feature(enable = "lsx")]
4046#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4047pub unsafe fn lsx_vfclass_d(a: v2f64) -> v2i64 {
4048 __lsx_vfclass_d(a)
4049}
4050
4051#[inline]
4052#[target_feature(enable = "lsx")]
4053#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4054pub unsafe fn lsx_vfsqrt_s(a: v4f32) -> v4f32 {
4055 __lsx_vfsqrt_s(a)
4056}
4057
4058#[inline]
4059#[target_feature(enable = "lsx")]
4060#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4061pub unsafe fn lsx_vfsqrt_d(a: v2f64) -> v2f64 {
4062 __lsx_vfsqrt_d(a)
4063}
4064
4065#[inline]
4066#[target_feature(enable = "lsx")]
4067#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4068pub unsafe fn lsx_vfrecip_s(a: v4f32) -> v4f32 {
4069 __lsx_vfrecip_s(a)
4070}
4071
4072#[inline]
4073#[target_feature(enable = "lsx")]
4074#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4075pub unsafe fn lsx_vfrecip_d(a: v2f64) -> v2f64 {
4076 __lsx_vfrecip_d(a)
4077}
4078
4079#[inline]
4080#[target_feature(enable = "lsx,frecipe")]
4081#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4082pub unsafe fn lsx_vfrecipe_s(a: v4f32) -> v4f32 {
4083 __lsx_vfrecipe_s(a)
4084}
4085
4086#[inline]
4087#[target_feature(enable = "lsx,frecipe")]
4088#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4089pub unsafe fn lsx_vfrecipe_d(a: v2f64) -> v2f64 {
4090 __lsx_vfrecipe_d(a)
4091}
4092
4093#[inline]
4094#[target_feature(enable = "lsx,frecipe")]
4095#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4096pub unsafe fn lsx_vfrsqrte_s(a: v4f32) -> v4f32 {
4097 __lsx_vfrsqrte_s(a)
4098}
4099
4100#[inline]
4101#[target_feature(enable = "lsx,frecipe")]
4102#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4103pub unsafe fn lsx_vfrsqrte_d(a: v2f64) -> v2f64 {
4104 __lsx_vfrsqrte_d(a)
4105}
4106
4107#[inline]
4108#[target_feature(enable = "lsx")]
4109#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4110pub unsafe fn lsx_vfrint_s(a: v4f32) -> v4f32 {
4111 __lsx_vfrint_s(a)
4112}
4113
4114#[inline]
4115#[target_feature(enable = "lsx")]
4116#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4117pub unsafe fn lsx_vfrint_d(a: v2f64) -> v2f64 {
4118 __lsx_vfrint_d(a)
4119}
4120
4121#[inline]
4122#[target_feature(enable = "lsx")]
4123#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4124pub unsafe fn lsx_vfrsqrt_s(a: v4f32) -> v4f32 {
4125 __lsx_vfrsqrt_s(a)
4126}
4127
4128#[inline]
4129#[target_feature(enable = "lsx")]
4130#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4131pub unsafe fn lsx_vfrsqrt_d(a: v2f64) -> v2f64 {
4132 __lsx_vfrsqrt_d(a)
4133}
4134
4135#[inline]
4136#[target_feature(enable = "lsx")]
4137#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4138pub unsafe fn lsx_vflogb_s(a: v4f32) -> v4f32 {
4139 __lsx_vflogb_s(a)
4140}
4141
4142#[inline]
4143#[target_feature(enable = "lsx")]
4144#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4145pub unsafe fn lsx_vflogb_d(a: v2f64) -> v2f64 {
4146 __lsx_vflogb_d(a)
4147}
4148
4149#[inline]
4150#[target_feature(enable = "lsx")]
4151#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4152pub unsafe fn lsx_vfcvth_s_h(a: v8i16) -> v4f32 {
4153 __lsx_vfcvth_s_h(a)
4154}
4155
4156#[inline]
4157#[target_feature(enable = "lsx")]
4158#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4159pub unsafe fn lsx_vfcvth_d_s(a: v4f32) -> v2f64 {
4160 __lsx_vfcvth_d_s(a)
4161}
4162
4163#[inline]
4164#[target_feature(enable = "lsx")]
4165#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4166pub unsafe fn lsx_vfcvtl_s_h(a: v8i16) -> v4f32 {
4167 __lsx_vfcvtl_s_h(a)
4168}
4169
4170#[inline]
4171#[target_feature(enable = "lsx")]
4172#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4173pub unsafe fn lsx_vfcvtl_d_s(a: v4f32) -> v2f64 {
4174 __lsx_vfcvtl_d_s(a)
4175}
4176
4177#[inline]
4178#[target_feature(enable = "lsx")]
4179#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4180pub unsafe fn lsx_vftint_w_s(a: v4f32) -> v4i32 {
4181 __lsx_vftint_w_s(a)
4182}
4183
4184#[inline]
4185#[target_feature(enable = "lsx")]
4186#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4187pub unsafe fn lsx_vftint_l_d(a: v2f64) -> v2i64 {
4188 __lsx_vftint_l_d(a)
4189}
4190
4191#[inline]
4192#[target_feature(enable = "lsx")]
4193#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4194pub unsafe fn lsx_vftint_wu_s(a: v4f32) -> v4u32 {
4195 __lsx_vftint_wu_s(a)
4196}
4197
4198#[inline]
4199#[target_feature(enable = "lsx")]
4200#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4201pub unsafe fn lsx_vftint_lu_d(a: v2f64) -> v2u64 {
4202 __lsx_vftint_lu_d(a)
4203}
4204
4205#[inline]
4206#[target_feature(enable = "lsx")]
4207#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4208pub unsafe fn lsx_vftintrz_w_s(a: v4f32) -> v4i32 {
4209 __lsx_vftintrz_w_s(a)
4210}
4211
4212#[inline]
4213#[target_feature(enable = "lsx")]
4214#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4215pub unsafe fn lsx_vftintrz_l_d(a: v2f64) -> v2i64 {
4216 __lsx_vftintrz_l_d(a)
4217}
4218
4219#[inline]
4220#[target_feature(enable = "lsx")]
4221#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4222pub unsafe fn lsx_vftintrz_wu_s(a: v4f32) -> v4u32 {
4223 __lsx_vftintrz_wu_s(a)
4224}
4225
4226#[inline]
4227#[target_feature(enable = "lsx")]
4228#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4229pub unsafe fn lsx_vftintrz_lu_d(a: v2f64) -> v2u64 {
4230 __lsx_vftintrz_lu_d(a)
4231}
4232
4233#[inline]
4234#[target_feature(enable = "lsx")]
4235#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4236pub unsafe fn lsx_vffint_s_w(a: v4i32) -> v4f32 {
4237 __lsx_vffint_s_w(a)
4238}
4239
4240#[inline]
4241#[target_feature(enable = "lsx")]
4242#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4243pub unsafe fn lsx_vffint_d_l(a: v2i64) -> v2f64 {
4244 __lsx_vffint_d_l(a)
4245}
4246
4247#[inline]
4248#[target_feature(enable = "lsx")]
4249#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4250pub unsafe fn lsx_vffint_s_wu(a: v4u32) -> v4f32 {
4251 __lsx_vffint_s_wu(a)
4252}
4253
4254#[inline]
4255#[target_feature(enable = "lsx")]
4256#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4257pub unsafe fn lsx_vffint_d_lu(a: v2u64) -> v2f64 {
4258 __lsx_vffint_d_lu(a)
4259}
4260
4261#[inline]
4262#[target_feature(enable = "lsx")]
4263#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4264pub unsafe fn lsx_vandn_v(a: v16u8, b: v16u8) -> v16u8 {
4265 __lsx_vandn_v(a, b)
4266}
4267
4268#[inline]
4269#[target_feature(enable = "lsx")]
4270#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4271pub unsafe fn lsx_vneg_b(a: v16i8) -> v16i8 {
4272 __lsx_vneg_b(a)
4273}
4274
4275#[inline]
4276#[target_feature(enable = "lsx")]
4277#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4278pub unsafe fn lsx_vneg_h(a: v8i16) -> v8i16 {
4279 __lsx_vneg_h(a)
4280}
4281
4282#[inline]
4283#[target_feature(enable = "lsx")]
4284#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4285pub unsafe fn lsx_vneg_w(a: v4i32) -> v4i32 {
4286 __lsx_vneg_w(a)
4287}
4288
4289#[inline]
4290#[target_feature(enable = "lsx")]
4291#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4292pub unsafe fn lsx_vneg_d(a: v2i64) -> v2i64 {
4293 __lsx_vneg_d(a)
4294}
4295
4296#[inline]
4297#[target_feature(enable = "lsx")]
4298#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4299pub unsafe fn lsx_vmuh_b(a: v16i8, b: v16i8) -> v16i8 {
4300 __lsx_vmuh_b(a, b)
4301}
4302
4303#[inline]
4304#[target_feature(enable = "lsx")]
4305#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4306pub unsafe fn lsx_vmuh_h(a: v8i16, b: v8i16) -> v8i16 {
4307 __lsx_vmuh_h(a, b)
4308}
4309
4310#[inline]
4311#[target_feature(enable = "lsx")]
4312#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4313pub unsafe fn lsx_vmuh_w(a: v4i32, b: v4i32) -> v4i32 {
4314 __lsx_vmuh_w(a, b)
4315}
4316
4317#[inline]
4318#[target_feature(enable = "lsx")]
4319#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4320pub unsafe fn lsx_vmuh_d(a: v2i64, b: v2i64) -> v2i64 {
4321 __lsx_vmuh_d(a, b)
4322}
4323
4324#[inline]
4325#[target_feature(enable = "lsx")]
4326#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4327pub unsafe fn lsx_vmuh_bu(a: v16u8, b: v16u8) -> v16u8 {
4328 __lsx_vmuh_bu(a, b)
4329}
4330
4331#[inline]
4332#[target_feature(enable = "lsx")]
4333#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4334pub unsafe fn lsx_vmuh_hu(a: v8u16, b: v8u16) -> v8u16 {
4335 __lsx_vmuh_hu(a, b)
4336}
4337
4338#[inline]
4339#[target_feature(enable = "lsx")]
4340#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4341pub unsafe fn lsx_vmuh_wu(a: v4u32, b: v4u32) -> v4u32 {
4342 __lsx_vmuh_wu(a, b)
4343}
4344
4345#[inline]
4346#[target_feature(enable = "lsx")]
4347#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4348pub unsafe fn lsx_vmuh_du(a: v2u64, b: v2u64) -> v2u64 {
4349 __lsx_vmuh_du(a, b)
4350}
4351
4352#[inline]
4353#[target_feature(enable = "lsx")]
4354#[rustc_legacy_const_generics(1)]
4355#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4356pub unsafe fn lsx_vsllwil_h_b<const IMM3: u32>(a: v16i8) -> v8i16 {
4357 static_assert_uimm_bits!(IMM3, 3);
4358 __lsx_vsllwil_h_b(a, IMM3)
4359}
4360
4361#[inline]
4362#[target_feature(enable = "lsx")]
4363#[rustc_legacy_const_generics(1)]
4364#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4365pub unsafe fn lsx_vsllwil_w_h<const IMM4: u32>(a: v8i16) -> v4i32 {
4366 static_assert_uimm_bits!(IMM4, 4);
4367 __lsx_vsllwil_w_h(a, IMM4)
4368}
4369
4370#[inline]
4371#[target_feature(enable = "lsx")]
4372#[rustc_legacy_const_generics(1)]
4373#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4374pub unsafe fn lsx_vsllwil_d_w<const IMM5: u32>(a: v4i32) -> v2i64 {
4375 static_assert_uimm_bits!(IMM5, 5);
4376 __lsx_vsllwil_d_w(a, IMM5)
4377}
4378
4379#[inline]
4380#[target_feature(enable = "lsx")]
4381#[rustc_legacy_const_generics(1)]
4382#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4383pub unsafe fn lsx_vsllwil_hu_bu<const IMM3: u32>(a: v16u8) -> v8u16 {
4384 static_assert_uimm_bits!(IMM3, 3);
4385 __lsx_vsllwil_hu_bu(a, IMM3)
4386}
4387
4388#[inline]
4389#[target_feature(enable = "lsx")]
4390#[rustc_legacy_const_generics(1)]
4391#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4392pub unsafe fn lsx_vsllwil_wu_hu<const IMM4: u32>(a: v8u16) -> v4u32 {
4393 static_assert_uimm_bits!(IMM4, 4);
4394 __lsx_vsllwil_wu_hu(a, IMM4)
4395}
4396
4397#[inline]
4398#[target_feature(enable = "lsx")]
4399#[rustc_legacy_const_generics(1)]
4400#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4401pub unsafe fn lsx_vsllwil_du_wu<const IMM5: u32>(a: v4u32) -> v2u64 {
4402 static_assert_uimm_bits!(IMM5, 5);
4403 __lsx_vsllwil_du_wu(a, IMM5)
4404}
4405
4406#[inline]
4407#[target_feature(enable = "lsx")]
4408#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4409pub unsafe fn lsx_vsran_b_h(a: v8i16, b: v8i16) -> v16i8 {
4410 __lsx_vsran_b_h(a, b)
4411}
4412
4413#[inline]
4414#[target_feature(enable = "lsx")]
4415#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4416pub unsafe fn lsx_vsran_h_w(a: v4i32, b: v4i32) -> v8i16 {
4417 __lsx_vsran_h_w(a, b)
4418}
4419
4420#[inline]
4421#[target_feature(enable = "lsx")]
4422#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4423pub unsafe fn lsx_vsran_w_d(a: v2i64, b: v2i64) -> v4i32 {
4424 __lsx_vsran_w_d(a, b)
4425}
4426
4427#[inline]
4428#[target_feature(enable = "lsx")]
4429#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4430pub unsafe fn lsx_vssran_b_h(a: v8i16, b: v8i16) -> v16i8 {
4431 __lsx_vssran_b_h(a, b)
4432}
4433
4434#[inline]
4435#[target_feature(enable = "lsx")]
4436#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4437pub unsafe fn lsx_vssran_h_w(a: v4i32, b: v4i32) -> v8i16 {
4438 __lsx_vssran_h_w(a, b)
4439}
4440
4441#[inline]
4442#[target_feature(enable = "lsx")]
4443#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4444pub unsafe fn lsx_vssran_w_d(a: v2i64, b: v2i64) -> v4i32 {
4445 __lsx_vssran_w_d(a, b)
4446}
4447
4448#[inline]
4449#[target_feature(enable = "lsx")]
4450#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4451pub unsafe fn lsx_vssran_bu_h(a: v8u16, b: v8u16) -> v16u8 {
4452 __lsx_vssran_bu_h(a, b)
4453}
4454
4455#[inline]
4456#[target_feature(enable = "lsx")]
4457#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4458pub unsafe fn lsx_vssran_hu_w(a: v4u32, b: v4u32) -> v8u16 {
4459 __lsx_vssran_hu_w(a, b)
4460}
4461
4462#[inline]
4463#[target_feature(enable = "lsx")]
4464#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4465pub unsafe fn lsx_vssran_wu_d(a: v2u64, b: v2u64) -> v4u32 {
4466 __lsx_vssran_wu_d(a, b)
4467}
4468
4469#[inline]
4470#[target_feature(enable = "lsx")]
4471#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4472pub unsafe fn lsx_vsrarn_b_h(a: v8i16, b: v8i16) -> v16i8 {
4473 __lsx_vsrarn_b_h(a, b)
4474}
4475
4476#[inline]
4477#[target_feature(enable = "lsx")]
4478#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4479pub unsafe fn lsx_vsrarn_h_w(a: v4i32, b: v4i32) -> v8i16 {
4480 __lsx_vsrarn_h_w(a, b)
4481}
4482
4483#[inline]
4484#[target_feature(enable = "lsx")]
4485#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4486pub unsafe fn lsx_vsrarn_w_d(a: v2i64, b: v2i64) -> v4i32 {
4487 __lsx_vsrarn_w_d(a, b)
4488}
4489
4490#[inline]
4491#[target_feature(enable = "lsx")]
4492#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4493pub unsafe fn lsx_vssrarn_b_h(a: v8i16, b: v8i16) -> v16i8 {
4494 __lsx_vssrarn_b_h(a, b)
4495}
4496
4497#[inline]
4498#[target_feature(enable = "lsx")]
4499#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4500pub unsafe fn lsx_vssrarn_h_w(a: v4i32, b: v4i32) -> v8i16 {
4501 __lsx_vssrarn_h_w(a, b)
4502}
4503
4504#[inline]
4505#[target_feature(enable = "lsx")]
4506#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4507pub unsafe fn lsx_vssrarn_w_d(a: v2i64, b: v2i64) -> v4i32 {
4508 __lsx_vssrarn_w_d(a, b)
4509}
4510
4511#[inline]
4512#[target_feature(enable = "lsx")]
4513#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4514pub unsafe fn lsx_vssrarn_bu_h(a: v8u16, b: v8u16) -> v16u8 {
4515 __lsx_vssrarn_bu_h(a, b)
4516}
4517
4518#[inline]
4519#[target_feature(enable = "lsx")]
4520#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4521pub unsafe fn lsx_vssrarn_hu_w(a: v4u32, b: v4u32) -> v8u16 {
4522 __lsx_vssrarn_hu_w(a, b)
4523}
4524
4525#[inline]
4526#[target_feature(enable = "lsx")]
4527#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4528pub unsafe fn lsx_vssrarn_wu_d(a: v2u64, b: v2u64) -> v4u32 {
4529 __lsx_vssrarn_wu_d(a, b)
4530}
4531
4532#[inline]
4533#[target_feature(enable = "lsx")]
4534#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4535pub unsafe fn lsx_vsrln_b_h(a: v8i16, b: v8i16) -> v16i8 {
4536 __lsx_vsrln_b_h(a, b)
4537}
4538
4539#[inline]
4540#[target_feature(enable = "lsx")]
4541#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4542pub unsafe fn lsx_vsrln_h_w(a: v4i32, b: v4i32) -> v8i16 {
4543 __lsx_vsrln_h_w(a, b)
4544}
4545
4546#[inline]
4547#[target_feature(enable = "lsx")]
4548#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4549pub unsafe fn lsx_vsrln_w_d(a: v2i64, b: v2i64) -> v4i32 {
4550 __lsx_vsrln_w_d(a, b)
4551}
4552
4553#[inline]
4554#[target_feature(enable = "lsx")]
4555#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4556pub unsafe fn lsx_vssrln_bu_h(a: v8u16, b: v8u16) -> v16u8 {
4557 __lsx_vssrln_bu_h(a, b)
4558}
4559
4560#[inline]
4561#[target_feature(enable = "lsx")]
4562#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4563pub unsafe fn lsx_vssrln_hu_w(a: v4u32, b: v4u32) -> v8u16 {
4564 __lsx_vssrln_hu_w(a, b)
4565}
4566
4567#[inline]
4568#[target_feature(enable = "lsx")]
4569#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4570pub unsafe fn lsx_vssrln_wu_d(a: v2u64, b: v2u64) -> v4u32 {
4571 __lsx_vssrln_wu_d(a, b)
4572}
4573
4574#[inline]
4575#[target_feature(enable = "lsx")]
4576#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4577pub unsafe fn lsx_vsrlrn_b_h(a: v8i16, b: v8i16) -> v16i8 {
4578 __lsx_vsrlrn_b_h(a, b)
4579}
4580
4581#[inline]
4582#[target_feature(enable = "lsx")]
4583#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4584pub unsafe fn lsx_vsrlrn_h_w(a: v4i32, b: v4i32) -> v8i16 {
4585 __lsx_vsrlrn_h_w(a, b)
4586}
4587
4588#[inline]
4589#[target_feature(enable = "lsx")]
4590#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4591pub unsafe fn lsx_vsrlrn_w_d(a: v2i64, b: v2i64) -> v4i32 {
4592 __lsx_vsrlrn_w_d(a, b)
4593}
4594
4595#[inline]
4596#[target_feature(enable = "lsx")]
4597#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4598pub unsafe fn lsx_vssrlrn_bu_h(a: v8u16, b: v8u16) -> v16u8 {
4599 __lsx_vssrlrn_bu_h(a, b)
4600}
4601
4602#[inline]
4603#[target_feature(enable = "lsx")]
4604#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4605pub unsafe fn lsx_vssrlrn_hu_w(a: v4u32, b: v4u32) -> v8u16 {
4606 __lsx_vssrlrn_hu_w(a, b)
4607}
4608
4609#[inline]
4610#[target_feature(enable = "lsx")]
4611#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4612pub unsafe fn lsx_vssrlrn_wu_d(a: v2u64, b: v2u64) -> v4u32 {
4613 __lsx_vssrlrn_wu_d(a, b)
4614}
4615
4616#[inline]
4617#[target_feature(enable = "lsx")]
4618#[rustc_legacy_const_generics(2)]
4619#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4620pub unsafe fn lsx_vfrstpi_b<const IMM5: u32>(a: v16i8, b: v16i8) -> v16i8 {
4621 static_assert_uimm_bits!(IMM5, 5);
4622 __lsx_vfrstpi_b(a, b, IMM5)
4623}
4624
4625#[inline]
4626#[target_feature(enable = "lsx")]
4627#[rustc_legacy_const_generics(2)]
4628#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4629pub unsafe fn lsx_vfrstpi_h<const IMM5: u32>(a: v8i16, b: v8i16) -> v8i16 {
4630 static_assert_uimm_bits!(IMM5, 5);
4631 __lsx_vfrstpi_h(a, b, IMM5)
4632}
4633
4634#[inline]
4635#[target_feature(enable = "lsx")]
4636#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4637pub unsafe fn lsx_vfrstp_b(a: v16i8, b: v16i8, c: v16i8) -> v16i8 {
4638 __lsx_vfrstp_b(a, b, c)
4639}
4640
4641#[inline]
4642#[target_feature(enable = "lsx")]
4643#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4644pub unsafe fn lsx_vfrstp_h(a: v8i16, b: v8i16, c: v8i16) -> v8i16 {
4645 __lsx_vfrstp_h(a, b, c)
4646}
4647
4648#[inline]
4649#[target_feature(enable = "lsx")]
4650#[rustc_legacy_const_generics(2)]
4651#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4652pub unsafe fn lsx_vshuf4i_d<const IMM8: u32>(a: v2i64, b: v2i64) -> v2i64 {
4653 static_assert_uimm_bits!(IMM8, 8);
4654 __lsx_vshuf4i_d(a, b, IMM8)
4655}
4656
4657#[inline]
4658#[target_feature(enable = "lsx")]
4659#[rustc_legacy_const_generics(1)]
4660#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4661pub unsafe fn lsx_vbsrl_v<const IMM5: u32>(a: v16i8) -> v16i8 {
4662 static_assert_uimm_bits!(IMM5, 5);
4663 __lsx_vbsrl_v(a, IMM5)
4664}
4665
4666#[inline]
4667#[target_feature(enable = "lsx")]
4668#[rustc_legacy_const_generics(1)]
4669#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4670pub unsafe fn lsx_vbsll_v<const IMM5: u32>(a: v16i8) -> v16i8 {
4671 static_assert_uimm_bits!(IMM5, 5);
4672 __lsx_vbsll_v(a, IMM5)
4673}
4674
4675#[inline]
4676#[target_feature(enable = "lsx")]
4677#[rustc_legacy_const_generics(2)]
4678#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4679pub unsafe fn lsx_vextrins_b<const IMM8: u32>(a: v16i8, b: v16i8) -> v16i8 {
4680 static_assert_uimm_bits!(IMM8, 8);
4681 __lsx_vextrins_b(a, b, IMM8)
4682}
4683
4684#[inline]
4685#[target_feature(enable = "lsx")]
4686#[rustc_legacy_const_generics(2)]
4687#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4688pub unsafe fn lsx_vextrins_h<const IMM8: u32>(a: v8i16, b: v8i16) -> v8i16 {
4689 static_assert_uimm_bits!(IMM8, 8);
4690 __lsx_vextrins_h(a, b, IMM8)
4691}
4692
4693#[inline]
4694#[target_feature(enable = "lsx")]
4695#[rustc_legacy_const_generics(2)]
4696#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4697pub unsafe fn lsx_vextrins_w<const IMM8: u32>(a: v4i32, b: v4i32) -> v4i32 {
4698 static_assert_uimm_bits!(IMM8, 8);
4699 __lsx_vextrins_w(a, b, IMM8)
4700}
4701
4702#[inline]
4703#[target_feature(enable = "lsx")]
4704#[rustc_legacy_const_generics(2)]
4705#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4706pub unsafe fn lsx_vextrins_d<const IMM8: u32>(a: v2i64, b: v2i64) -> v2i64 {
4707 static_assert_uimm_bits!(IMM8, 8);
4708 __lsx_vextrins_d(a, b, IMM8)
4709}
4710
4711#[inline]
4712#[target_feature(enable = "lsx")]
4713#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4714pub unsafe fn lsx_vmskltz_b(a: v16i8) -> v16i8 {
4715 __lsx_vmskltz_b(a)
4716}
4717
4718#[inline]
4719#[target_feature(enable = "lsx")]
4720#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4721pub unsafe fn lsx_vmskltz_h(a: v8i16) -> v8i16 {
4722 __lsx_vmskltz_h(a)
4723}
4724
4725#[inline]
4726#[target_feature(enable = "lsx")]
4727#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4728pub unsafe fn lsx_vmskltz_w(a: v4i32) -> v4i32 {
4729 __lsx_vmskltz_w(a)
4730}
4731
4732#[inline]
4733#[target_feature(enable = "lsx")]
4734#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4735pub unsafe fn lsx_vmskltz_d(a: v2i64) -> v2i64 {
4736 __lsx_vmskltz_d(a)
4737}
4738
4739#[inline]
4740#[target_feature(enable = "lsx")]
4741#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4742pub unsafe fn lsx_vsigncov_b(a: v16i8, b: v16i8) -> v16i8 {
4743 __lsx_vsigncov_b(a, b)
4744}
4745
4746#[inline]
4747#[target_feature(enable = "lsx")]
4748#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4749pub unsafe fn lsx_vsigncov_h(a: v8i16, b: v8i16) -> v8i16 {
4750 __lsx_vsigncov_h(a, b)
4751}
4752
4753#[inline]
4754#[target_feature(enable = "lsx")]
4755#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4756pub unsafe fn lsx_vsigncov_w(a: v4i32, b: v4i32) -> v4i32 {
4757 __lsx_vsigncov_w(a, b)
4758}
4759
4760#[inline]
4761#[target_feature(enable = "lsx")]
4762#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4763pub unsafe fn lsx_vsigncov_d(a: v2i64, b: v2i64) -> v2i64 {
4764 __lsx_vsigncov_d(a, b)
4765}
4766
4767#[inline]
4768#[target_feature(enable = "lsx")]
4769#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4770pub unsafe fn lsx_vfmadd_s(a: v4f32, b: v4f32, c: v4f32) -> v4f32 {
4771 __lsx_vfmadd_s(a, b, c)
4772}
4773
4774#[inline]
4775#[target_feature(enable = "lsx")]
4776#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4777pub unsafe fn lsx_vfmadd_d(a: v2f64, b: v2f64, c: v2f64) -> v2f64 {
4778 __lsx_vfmadd_d(a, b, c)
4779}
4780
4781#[inline]
4782#[target_feature(enable = "lsx")]
4783#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4784pub unsafe fn lsx_vfmsub_s(a: v4f32, b: v4f32, c: v4f32) -> v4f32 {
4785 __lsx_vfmsub_s(a, b, c)
4786}
4787
4788#[inline]
4789#[target_feature(enable = "lsx")]
4790#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4791pub unsafe fn lsx_vfmsub_d(a: v2f64, b: v2f64, c: v2f64) -> v2f64 {
4792 __lsx_vfmsub_d(a, b, c)
4793}
4794
4795#[inline]
4796#[target_feature(enable = "lsx")]
4797#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4798pub unsafe fn lsx_vfnmadd_s(a: v4f32, b: v4f32, c: v4f32) -> v4f32 {
4799 __lsx_vfnmadd_s(a, b, c)
4800}
4801
4802#[inline]
4803#[target_feature(enable = "lsx")]
4804#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4805pub unsafe fn lsx_vfnmadd_d(a: v2f64, b: v2f64, c: v2f64) -> v2f64 {
4806 __lsx_vfnmadd_d(a, b, c)
4807}
4808
4809#[inline]
4810#[target_feature(enable = "lsx")]
4811#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4812pub unsafe fn lsx_vfnmsub_s(a: v4f32, b: v4f32, c: v4f32) -> v4f32 {
4813 __lsx_vfnmsub_s(a, b, c)
4814}
4815
4816#[inline]
4817#[target_feature(enable = "lsx")]
4818#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4819pub unsafe fn lsx_vfnmsub_d(a: v2f64, b: v2f64, c: v2f64) -> v2f64 {
4820 __lsx_vfnmsub_d(a, b, c)
4821}
4822
4823#[inline]
4824#[target_feature(enable = "lsx")]
4825#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4826pub unsafe fn lsx_vftintrne_w_s(a: v4f32) -> v4i32 {
4827 __lsx_vftintrne_w_s(a)
4828}
4829
4830#[inline]
4831#[target_feature(enable = "lsx")]
4832#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4833pub unsafe fn lsx_vftintrne_l_d(a: v2f64) -> v2i64 {
4834 __lsx_vftintrne_l_d(a)
4835}
4836
4837#[inline]
4838#[target_feature(enable = "lsx")]
4839#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4840pub unsafe fn lsx_vftintrp_w_s(a: v4f32) -> v4i32 {
4841 __lsx_vftintrp_w_s(a)
4842}
4843
4844#[inline]
4845#[target_feature(enable = "lsx")]
4846#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4847pub unsafe fn lsx_vftintrp_l_d(a: v2f64) -> v2i64 {
4848 __lsx_vftintrp_l_d(a)
4849}
4850
4851#[inline]
4852#[target_feature(enable = "lsx")]
4853#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4854pub unsafe fn lsx_vftintrm_w_s(a: v4f32) -> v4i32 {
4855 __lsx_vftintrm_w_s(a)
4856}
4857
4858#[inline]
4859#[target_feature(enable = "lsx")]
4860#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4861pub unsafe fn lsx_vftintrm_l_d(a: v2f64) -> v2i64 {
4862 __lsx_vftintrm_l_d(a)
4863}
4864
4865#[inline]
4866#[target_feature(enable = "lsx")]
4867#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4868pub unsafe fn lsx_vftint_w_d(a: v2f64, b: v2f64) -> v4i32 {
4869 __lsx_vftint_w_d(a, b)
4870}
4871
4872#[inline]
4873#[target_feature(enable = "lsx")]
4874#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4875pub unsafe fn lsx_vffint_s_l(a: v2i64, b: v2i64) -> v4f32 {
4876 __lsx_vffint_s_l(a, b)
4877}
4878
4879#[inline]
4880#[target_feature(enable = "lsx")]
4881#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4882pub unsafe fn lsx_vftintrz_w_d(a: v2f64, b: v2f64) -> v4i32 {
4883 __lsx_vftintrz_w_d(a, b)
4884}
4885
4886#[inline]
4887#[target_feature(enable = "lsx")]
4888#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4889pub unsafe fn lsx_vftintrp_w_d(a: v2f64, b: v2f64) -> v4i32 {
4890 __lsx_vftintrp_w_d(a, b)
4891}
4892
4893#[inline]
4894#[target_feature(enable = "lsx")]
4895#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4896pub unsafe fn lsx_vftintrm_w_d(a: v2f64, b: v2f64) -> v4i32 {
4897 __lsx_vftintrm_w_d(a, b)
4898}
4899
4900#[inline]
4901#[target_feature(enable = "lsx")]
4902#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4903pub unsafe fn lsx_vftintrne_w_d(a: v2f64, b: v2f64) -> v4i32 {
4904 __lsx_vftintrne_w_d(a, b)
4905}
4906
4907#[inline]
4908#[target_feature(enable = "lsx")]
4909#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4910pub unsafe fn lsx_vftintl_l_s(a: v4f32) -> v2i64 {
4911 __lsx_vftintl_l_s(a)
4912}
4913
4914#[inline]
4915#[target_feature(enable = "lsx")]
4916#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4917pub unsafe fn lsx_vftinth_l_s(a: v4f32) -> v2i64 {
4918 __lsx_vftinth_l_s(a)
4919}
4920
4921#[inline]
4922#[target_feature(enable = "lsx")]
4923#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4924pub unsafe fn lsx_vffinth_d_w(a: v4i32) -> v2f64 {
4925 __lsx_vffinth_d_w(a)
4926}
4927
4928#[inline]
4929#[target_feature(enable = "lsx")]
4930#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4931pub unsafe fn lsx_vffintl_d_w(a: v4i32) -> v2f64 {
4932 __lsx_vffintl_d_w(a)
4933}
4934
4935#[inline]
4936#[target_feature(enable = "lsx")]
4937#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4938pub unsafe fn lsx_vftintrzl_l_s(a: v4f32) -> v2i64 {
4939 __lsx_vftintrzl_l_s(a)
4940}
4941
4942#[inline]
4943#[target_feature(enable = "lsx")]
4944#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4945pub unsafe fn lsx_vftintrzh_l_s(a: v4f32) -> v2i64 {
4946 __lsx_vftintrzh_l_s(a)
4947}
4948
4949#[inline]
4950#[target_feature(enable = "lsx")]
4951#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4952pub unsafe fn lsx_vftintrpl_l_s(a: v4f32) -> v2i64 {
4953 __lsx_vftintrpl_l_s(a)
4954}
4955
4956#[inline]
4957#[target_feature(enable = "lsx")]
4958#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4959pub unsafe fn lsx_vftintrph_l_s(a: v4f32) -> v2i64 {
4960 __lsx_vftintrph_l_s(a)
4961}
4962
4963#[inline]
4964#[target_feature(enable = "lsx")]
4965#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4966pub unsafe fn lsx_vftintrml_l_s(a: v4f32) -> v2i64 {
4967 __lsx_vftintrml_l_s(a)
4968}
4969
4970#[inline]
4971#[target_feature(enable = "lsx")]
4972#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4973pub unsafe fn lsx_vftintrmh_l_s(a: v4f32) -> v2i64 {
4974 __lsx_vftintrmh_l_s(a)
4975}
4976
4977#[inline]
4978#[target_feature(enable = "lsx")]
4979#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4980pub unsafe fn lsx_vftintrnel_l_s(a: v4f32) -> v2i64 {
4981 __lsx_vftintrnel_l_s(a)
4982}
4983
4984#[inline]
4985#[target_feature(enable = "lsx")]
4986#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4987pub unsafe fn lsx_vftintrneh_l_s(a: v4f32) -> v2i64 {
4988 __lsx_vftintrneh_l_s(a)
4989}
4990
4991#[inline]
4992#[target_feature(enable = "lsx")]
4993#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4994pub unsafe fn lsx_vfrintrne_s(a: v4f32) -> v4f32 {
4995 __lsx_vfrintrne_s(a)
4996}
4997
4998#[inline]
4999#[target_feature(enable = "lsx")]
5000#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5001pub unsafe fn lsx_vfrintrne_d(a: v2f64) -> v2f64 {
5002 __lsx_vfrintrne_d(a)
5003}
5004
5005#[inline]
5006#[target_feature(enable = "lsx")]
5007#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5008pub unsafe fn lsx_vfrintrz_s(a: v4f32) -> v4f32 {
5009 __lsx_vfrintrz_s(a)
5010}
5011
5012#[inline]
5013#[target_feature(enable = "lsx")]
5014#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5015pub unsafe fn lsx_vfrintrz_d(a: v2f64) -> v2f64 {
5016 __lsx_vfrintrz_d(a)
5017}
5018
5019#[inline]
5020#[target_feature(enable = "lsx")]
5021#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5022pub unsafe fn lsx_vfrintrp_s(a: v4f32) -> v4f32 {
5023 __lsx_vfrintrp_s(a)
5024}
5025
5026#[inline]
5027#[target_feature(enable = "lsx")]
5028#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5029pub unsafe fn lsx_vfrintrp_d(a: v2f64) -> v2f64 {
5030 __lsx_vfrintrp_d(a)
5031}
5032
5033#[inline]
5034#[target_feature(enable = "lsx")]
5035#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5036pub unsafe fn lsx_vfrintrm_s(a: v4f32) -> v4f32 {
5037 __lsx_vfrintrm_s(a)
5038}
5039
5040#[inline]
5041#[target_feature(enable = "lsx")]
5042#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5043pub unsafe fn lsx_vfrintrm_d(a: v2f64) -> v2f64 {
5044 __lsx_vfrintrm_d(a)
5045}
5046
5047#[inline]
5048#[target_feature(enable = "lsx")]
5049#[rustc_legacy_const_generics(2, 3)]
5050#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5051pub unsafe fn lsx_vstelm_b<const IMM_S8: i32, const IMM4: u32>(a: v16i8, mem_addr: *mut i8) {
5052 static_assert_simm_bits!(IMM_S8, 8);
5053 static_assert_uimm_bits!(IMM4, 4);
5054 __lsx_vstelm_b(a, mem_addr, IMM_S8, IMM4)
5055}
5056
5057#[inline]
5058#[target_feature(enable = "lsx")]
5059#[rustc_legacy_const_generics(2, 3)]
5060#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5061pub unsafe fn lsx_vstelm_h<const IMM_S8: i32, const IMM3: u32>(a: v8i16, mem_addr: *mut i8) {
5062 static_assert_simm_bits!(IMM_S8, 8);
5063 static_assert_uimm_bits!(IMM3, 3);
5064 __lsx_vstelm_h(a, mem_addr, IMM_S8, IMM3)
5065}
5066
5067#[inline]
5068#[target_feature(enable = "lsx")]
5069#[rustc_legacy_const_generics(2, 3)]
5070#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5071pub unsafe fn lsx_vstelm_w<const IMM_S8: i32, const IMM2: u32>(a: v4i32, mem_addr: *mut i8) {
5072 static_assert_simm_bits!(IMM_S8, 8);
5073 static_assert_uimm_bits!(IMM2, 2);
5074 __lsx_vstelm_w(a, mem_addr, IMM_S8, IMM2)
5075}
5076
5077#[inline]
5078#[target_feature(enable = "lsx")]
5079#[rustc_legacy_const_generics(2, 3)]
5080#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5081pub unsafe fn lsx_vstelm_d<const IMM_S8: i32, const IMM1: u32>(a: v2i64, mem_addr: *mut i8) {
5082 static_assert_simm_bits!(IMM_S8, 8);
5083 static_assert_uimm_bits!(IMM1, 1);
5084 __lsx_vstelm_d(a, mem_addr, IMM_S8, IMM1)
5085}
5086
5087#[inline]
5088#[target_feature(enable = "lsx")]
5089#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5090pub unsafe fn lsx_vaddwev_d_w(a: v4i32, b: v4i32) -> v2i64 {
5091 __lsx_vaddwev_d_w(a, b)
5092}
5093
5094#[inline]
5095#[target_feature(enable = "lsx")]
5096#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5097pub unsafe fn lsx_vaddwev_w_h(a: v8i16, b: v8i16) -> v4i32 {
5098 __lsx_vaddwev_w_h(a, b)
5099}
5100
5101#[inline]
5102#[target_feature(enable = "lsx")]
5103#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5104pub unsafe fn lsx_vaddwev_h_b(a: v16i8, b: v16i8) -> v8i16 {
5105 __lsx_vaddwev_h_b(a, b)
5106}
5107
5108#[inline]
5109#[target_feature(enable = "lsx")]
5110#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5111pub unsafe fn lsx_vaddwod_d_w(a: v4i32, b: v4i32) -> v2i64 {
5112 __lsx_vaddwod_d_w(a, b)
5113}
5114
5115#[inline]
5116#[target_feature(enable = "lsx")]
5117#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5118pub unsafe fn lsx_vaddwod_w_h(a: v8i16, b: v8i16) -> v4i32 {
5119 __lsx_vaddwod_w_h(a, b)
5120}
5121
5122#[inline]
5123#[target_feature(enable = "lsx")]
5124#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5125pub unsafe fn lsx_vaddwod_h_b(a: v16i8, b: v16i8) -> v8i16 {
5126 __lsx_vaddwod_h_b(a, b)
5127}
5128
5129#[inline]
5130#[target_feature(enable = "lsx")]
5131#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5132pub unsafe fn lsx_vaddwev_d_wu(a: v4u32, b: v4u32) -> v2i64 {
5133 __lsx_vaddwev_d_wu(a, b)
5134}
5135
5136#[inline]
5137#[target_feature(enable = "lsx")]
5138#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5139pub unsafe fn lsx_vaddwev_w_hu(a: v8u16, b: v8u16) -> v4i32 {
5140 __lsx_vaddwev_w_hu(a, b)
5141}
5142
5143#[inline]
5144#[target_feature(enable = "lsx")]
5145#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5146pub unsafe fn lsx_vaddwev_h_bu(a: v16u8, b: v16u8) -> v8i16 {
5147 __lsx_vaddwev_h_bu(a, b)
5148}
5149
5150#[inline]
5151#[target_feature(enable = "lsx")]
5152#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5153pub unsafe fn lsx_vaddwod_d_wu(a: v4u32, b: v4u32) -> v2i64 {
5154 __lsx_vaddwod_d_wu(a, b)
5155}
5156
5157#[inline]
5158#[target_feature(enable = "lsx")]
5159#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5160pub unsafe fn lsx_vaddwod_w_hu(a: v8u16, b: v8u16) -> v4i32 {
5161 __lsx_vaddwod_w_hu(a, b)
5162}
5163
5164#[inline]
5165#[target_feature(enable = "lsx")]
5166#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5167pub unsafe fn lsx_vaddwod_h_bu(a: v16u8, b: v16u8) -> v8i16 {
5168 __lsx_vaddwod_h_bu(a, b)
5169}
5170
5171#[inline]
5172#[target_feature(enable = "lsx")]
5173#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5174pub unsafe fn lsx_vaddwev_d_wu_w(a: v4u32, b: v4i32) -> v2i64 {
5175 __lsx_vaddwev_d_wu_w(a, b)
5176}
5177
5178#[inline]
5179#[target_feature(enable = "lsx")]
5180#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5181pub unsafe fn lsx_vaddwev_w_hu_h(a: v8u16, b: v8i16) -> v4i32 {
5182 __lsx_vaddwev_w_hu_h(a, b)
5183}
5184
5185#[inline]
5186#[target_feature(enable = "lsx")]
5187#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5188pub unsafe fn lsx_vaddwev_h_bu_b(a: v16u8, b: v16i8) -> v8i16 {
5189 __lsx_vaddwev_h_bu_b(a, b)
5190}
5191
5192#[inline]
5193#[target_feature(enable = "lsx")]
5194#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5195pub unsafe fn lsx_vaddwod_d_wu_w(a: v4u32, b: v4i32) -> v2i64 {
5196 __lsx_vaddwod_d_wu_w(a, b)
5197}
5198
5199#[inline]
5200#[target_feature(enable = "lsx")]
5201#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5202pub unsafe fn lsx_vaddwod_w_hu_h(a: v8u16, b: v8i16) -> v4i32 {
5203 __lsx_vaddwod_w_hu_h(a, b)
5204}
5205
5206#[inline]
5207#[target_feature(enable = "lsx")]
5208#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5209pub unsafe fn lsx_vaddwod_h_bu_b(a: v16u8, b: v16i8) -> v8i16 {
5210 __lsx_vaddwod_h_bu_b(a, b)
5211}
5212
5213#[inline]
5214#[target_feature(enable = "lsx")]
5215#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5216pub unsafe fn lsx_vsubwev_d_w(a: v4i32, b: v4i32) -> v2i64 {
5217 __lsx_vsubwev_d_w(a, b)
5218}
5219
5220#[inline]
5221#[target_feature(enable = "lsx")]
5222#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5223pub unsafe fn lsx_vsubwev_w_h(a: v8i16, b: v8i16) -> v4i32 {
5224 __lsx_vsubwev_w_h(a, b)
5225}
5226
5227#[inline]
5228#[target_feature(enable = "lsx")]
5229#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5230pub unsafe fn lsx_vsubwev_h_b(a: v16i8, b: v16i8) -> v8i16 {
5231 __lsx_vsubwev_h_b(a, b)
5232}
5233
5234#[inline]
5235#[target_feature(enable = "lsx")]
5236#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5237pub unsafe fn lsx_vsubwod_d_w(a: v4i32, b: v4i32) -> v2i64 {
5238 __lsx_vsubwod_d_w(a, b)
5239}
5240
5241#[inline]
5242#[target_feature(enable = "lsx")]
5243#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5244pub unsafe fn lsx_vsubwod_w_h(a: v8i16, b: v8i16) -> v4i32 {
5245 __lsx_vsubwod_w_h(a, b)
5246}
5247
5248#[inline]
5249#[target_feature(enable = "lsx")]
5250#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5251pub unsafe fn lsx_vsubwod_h_b(a: v16i8, b: v16i8) -> v8i16 {
5252 __lsx_vsubwod_h_b(a, b)
5253}
5254
5255#[inline]
5256#[target_feature(enable = "lsx")]
5257#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5258pub unsafe fn lsx_vsubwev_d_wu(a: v4u32, b: v4u32) -> v2i64 {
5259 __lsx_vsubwev_d_wu(a, b)
5260}
5261
5262#[inline]
5263#[target_feature(enable = "lsx")]
5264#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5265pub unsafe fn lsx_vsubwev_w_hu(a: v8u16, b: v8u16) -> v4i32 {
5266 __lsx_vsubwev_w_hu(a, b)
5267}
5268
5269#[inline]
5270#[target_feature(enable = "lsx")]
5271#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5272pub unsafe fn lsx_vsubwev_h_bu(a: v16u8, b: v16u8) -> v8i16 {
5273 __lsx_vsubwev_h_bu(a, b)
5274}
5275
5276#[inline]
5277#[target_feature(enable = "lsx")]
5278#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5279pub unsafe fn lsx_vsubwod_d_wu(a: v4u32, b: v4u32) -> v2i64 {
5280 __lsx_vsubwod_d_wu(a, b)
5281}
5282
5283#[inline]
5284#[target_feature(enable = "lsx")]
5285#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5286pub unsafe fn lsx_vsubwod_w_hu(a: v8u16, b: v8u16) -> v4i32 {
5287 __lsx_vsubwod_w_hu(a, b)
5288}
5289
5290#[inline]
5291#[target_feature(enable = "lsx")]
5292#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5293pub unsafe fn lsx_vsubwod_h_bu(a: v16u8, b: v16u8) -> v8i16 {
5294 __lsx_vsubwod_h_bu(a, b)
5295}
5296
5297#[inline]
5298#[target_feature(enable = "lsx")]
5299#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5300pub unsafe fn lsx_vaddwev_q_d(a: v2i64, b: v2i64) -> v2i64 {
5301 __lsx_vaddwev_q_d(a, b)
5302}
5303
5304#[inline]
5305#[target_feature(enable = "lsx")]
5306#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5307pub unsafe fn lsx_vaddwod_q_d(a: v2i64, b: v2i64) -> v2i64 {
5308 __lsx_vaddwod_q_d(a, b)
5309}
5310
5311#[inline]
5312#[target_feature(enable = "lsx")]
5313#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5314pub unsafe fn lsx_vaddwev_q_du(a: v2u64, b: v2u64) -> v2i64 {
5315 __lsx_vaddwev_q_du(a, b)
5316}
5317
5318#[inline]
5319#[target_feature(enable = "lsx")]
5320#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5321pub unsafe fn lsx_vaddwod_q_du(a: v2u64, b: v2u64) -> v2i64 {
5322 __lsx_vaddwod_q_du(a, b)
5323}
5324
5325#[inline]
5326#[target_feature(enable = "lsx")]
5327#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5328pub unsafe fn lsx_vsubwev_q_d(a: v2i64, b: v2i64) -> v2i64 {
5329 __lsx_vsubwev_q_d(a, b)
5330}
5331
5332#[inline]
5333#[target_feature(enable = "lsx")]
5334#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5335pub unsafe fn lsx_vsubwod_q_d(a: v2i64, b: v2i64) -> v2i64 {
5336 __lsx_vsubwod_q_d(a, b)
5337}
5338
5339#[inline]
5340#[target_feature(enable = "lsx")]
5341#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5342pub unsafe fn lsx_vsubwev_q_du(a: v2u64, b: v2u64) -> v2i64 {
5343 __lsx_vsubwev_q_du(a, b)
5344}
5345
5346#[inline]
5347#[target_feature(enable = "lsx")]
5348#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5349pub unsafe fn lsx_vsubwod_q_du(a: v2u64, b: v2u64) -> v2i64 {
5350 __lsx_vsubwod_q_du(a, b)
5351}
5352
5353#[inline]
5354#[target_feature(enable = "lsx")]
5355#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5356pub unsafe fn lsx_vaddwev_q_du_d(a: v2u64, b: v2i64) -> v2i64 {
5357 __lsx_vaddwev_q_du_d(a, b)
5358}
5359
5360#[inline]
5361#[target_feature(enable = "lsx")]
5362#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5363pub unsafe fn lsx_vaddwod_q_du_d(a: v2u64, b: v2i64) -> v2i64 {
5364 __lsx_vaddwod_q_du_d(a, b)
5365}
5366
5367#[inline]
5368#[target_feature(enable = "lsx")]
5369#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5370pub unsafe fn lsx_vmulwev_d_w(a: v4i32, b: v4i32) -> v2i64 {
5371 __lsx_vmulwev_d_w(a, b)
5372}
5373
5374#[inline]
5375#[target_feature(enable = "lsx")]
5376#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5377pub unsafe fn lsx_vmulwev_w_h(a: v8i16, b: v8i16) -> v4i32 {
5378 __lsx_vmulwev_w_h(a, b)
5379}
5380
5381#[inline]
5382#[target_feature(enable = "lsx")]
5383#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5384pub unsafe fn lsx_vmulwev_h_b(a: v16i8, b: v16i8) -> v8i16 {
5385 __lsx_vmulwev_h_b(a, b)
5386}
5387
5388#[inline]
5389#[target_feature(enable = "lsx")]
5390#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5391pub unsafe fn lsx_vmulwod_d_w(a: v4i32, b: v4i32) -> v2i64 {
5392 __lsx_vmulwod_d_w(a, b)
5393}
5394
5395#[inline]
5396#[target_feature(enable = "lsx")]
5397#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5398pub unsafe fn lsx_vmulwod_w_h(a: v8i16, b: v8i16) -> v4i32 {
5399 __lsx_vmulwod_w_h(a, b)
5400}
5401
5402#[inline]
5403#[target_feature(enable = "lsx")]
5404#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5405pub unsafe fn lsx_vmulwod_h_b(a: v16i8, b: v16i8) -> v8i16 {
5406 __lsx_vmulwod_h_b(a, b)
5407}
5408
5409#[inline]
5410#[target_feature(enable = "lsx")]
5411#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5412pub unsafe fn lsx_vmulwev_d_wu(a: v4u32, b: v4u32) -> v2i64 {
5413 __lsx_vmulwev_d_wu(a, b)
5414}
5415
5416#[inline]
5417#[target_feature(enable = "lsx")]
5418#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5419pub unsafe fn lsx_vmulwev_w_hu(a: v8u16, b: v8u16) -> v4i32 {
5420 __lsx_vmulwev_w_hu(a, b)
5421}
5422
5423#[inline]
5424#[target_feature(enable = "lsx")]
5425#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5426pub unsafe fn lsx_vmulwev_h_bu(a: v16u8, b: v16u8) -> v8i16 {
5427 __lsx_vmulwev_h_bu(a, b)
5428}
5429
5430#[inline]
5431#[target_feature(enable = "lsx")]
5432#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5433pub unsafe fn lsx_vmulwod_d_wu(a: v4u32, b: v4u32) -> v2i64 {
5434 __lsx_vmulwod_d_wu(a, b)
5435}
5436
5437#[inline]
5438#[target_feature(enable = "lsx")]
5439#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5440pub unsafe fn lsx_vmulwod_w_hu(a: v8u16, b: v8u16) -> v4i32 {
5441 __lsx_vmulwod_w_hu(a, b)
5442}
5443
5444#[inline]
5445#[target_feature(enable = "lsx")]
5446#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5447pub unsafe fn lsx_vmulwod_h_bu(a: v16u8, b: v16u8) -> v8i16 {
5448 __lsx_vmulwod_h_bu(a, b)
5449}
5450
5451#[inline]
5452#[target_feature(enable = "lsx")]
5453#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5454pub unsafe fn lsx_vmulwev_d_wu_w(a: v4u32, b: v4i32) -> v2i64 {
5455 __lsx_vmulwev_d_wu_w(a, b)
5456}
5457
5458#[inline]
5459#[target_feature(enable = "lsx")]
5460#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5461pub unsafe fn lsx_vmulwev_w_hu_h(a: v8u16, b: v8i16) -> v4i32 {
5462 __lsx_vmulwev_w_hu_h(a, b)
5463}
5464
5465#[inline]
5466#[target_feature(enable = "lsx")]
5467#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5468pub unsafe fn lsx_vmulwev_h_bu_b(a: v16u8, b: v16i8) -> v8i16 {
5469 __lsx_vmulwev_h_bu_b(a, b)
5470}
5471
5472#[inline]
5473#[target_feature(enable = "lsx")]
5474#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5475pub unsafe fn lsx_vmulwod_d_wu_w(a: v4u32, b: v4i32) -> v2i64 {
5476 __lsx_vmulwod_d_wu_w(a, b)
5477}
5478
5479#[inline]
5480#[target_feature(enable = "lsx")]
5481#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5482pub unsafe fn lsx_vmulwod_w_hu_h(a: v8u16, b: v8i16) -> v4i32 {
5483 __lsx_vmulwod_w_hu_h(a, b)
5484}
5485
5486#[inline]
5487#[target_feature(enable = "lsx")]
5488#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5489pub unsafe fn lsx_vmulwod_h_bu_b(a: v16u8, b: v16i8) -> v8i16 {
5490 __lsx_vmulwod_h_bu_b(a, b)
5491}
5492
5493#[inline]
5494#[target_feature(enable = "lsx")]
5495#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5496pub unsafe fn lsx_vmulwev_q_d(a: v2i64, b: v2i64) -> v2i64 {
5497 __lsx_vmulwev_q_d(a, b)
5498}
5499
5500#[inline]
5501#[target_feature(enable = "lsx")]
5502#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5503pub unsafe fn lsx_vmulwod_q_d(a: v2i64, b: v2i64) -> v2i64 {
5504 __lsx_vmulwod_q_d(a, b)
5505}
5506
5507#[inline]
5508#[target_feature(enable = "lsx")]
5509#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5510pub unsafe fn lsx_vmulwev_q_du(a: v2u64, b: v2u64) -> v2i64 {
5511 __lsx_vmulwev_q_du(a, b)
5512}
5513
5514#[inline]
5515#[target_feature(enable = "lsx")]
5516#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5517pub unsafe fn lsx_vmulwod_q_du(a: v2u64, b: v2u64) -> v2i64 {
5518 __lsx_vmulwod_q_du(a, b)
5519}
5520
5521#[inline]
5522#[target_feature(enable = "lsx")]
5523#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5524pub unsafe fn lsx_vmulwev_q_du_d(a: v2u64, b: v2i64) -> v2i64 {
5525 __lsx_vmulwev_q_du_d(a, b)
5526}
5527
5528#[inline]
5529#[target_feature(enable = "lsx")]
5530#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5531pub unsafe fn lsx_vmulwod_q_du_d(a: v2u64, b: v2i64) -> v2i64 {
5532 __lsx_vmulwod_q_du_d(a, b)
5533}
5534
5535#[inline]
5536#[target_feature(enable = "lsx")]
5537#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5538pub unsafe fn lsx_vhaddw_q_d(a: v2i64, b: v2i64) -> v2i64 {
5539 __lsx_vhaddw_q_d(a, b)
5540}
5541
5542#[inline]
5543#[target_feature(enable = "lsx")]
5544#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5545pub unsafe fn lsx_vhaddw_qu_du(a: v2u64, b: v2u64) -> v2u64 {
5546 __lsx_vhaddw_qu_du(a, b)
5547}
5548
5549#[inline]
5550#[target_feature(enable = "lsx")]
5551#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5552pub unsafe fn lsx_vhsubw_q_d(a: v2i64, b: v2i64) -> v2i64 {
5553 __lsx_vhsubw_q_d(a, b)
5554}
5555
5556#[inline]
5557#[target_feature(enable = "lsx")]
5558#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5559pub unsafe fn lsx_vhsubw_qu_du(a: v2u64, b: v2u64) -> v2u64 {
5560 __lsx_vhsubw_qu_du(a, b)
5561}
5562
5563#[inline]
5564#[target_feature(enable = "lsx")]
5565#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5566pub unsafe fn lsx_vmaddwev_d_w(a: v2i64, b: v4i32, c: v4i32) -> v2i64 {
5567 __lsx_vmaddwev_d_w(a, b, c)
5568}
5569
5570#[inline]
5571#[target_feature(enable = "lsx")]
5572#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5573pub unsafe fn lsx_vmaddwev_w_h(a: v4i32, b: v8i16, c: v8i16) -> v4i32 {
5574 __lsx_vmaddwev_w_h(a, b, c)
5575}
5576
5577#[inline]
5578#[target_feature(enable = "lsx")]
5579#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5580pub unsafe fn lsx_vmaddwev_h_b(a: v8i16, b: v16i8, c: v16i8) -> v8i16 {
5581 __lsx_vmaddwev_h_b(a, b, c)
5582}
5583
5584#[inline]
5585#[target_feature(enable = "lsx")]
5586#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5587pub unsafe fn lsx_vmaddwev_d_wu(a: v2u64, b: v4u32, c: v4u32) -> v2u64 {
5588 __lsx_vmaddwev_d_wu(a, b, c)
5589}
5590
5591#[inline]
5592#[target_feature(enable = "lsx")]
5593#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5594pub unsafe fn lsx_vmaddwev_w_hu(a: v4u32, b: v8u16, c: v8u16) -> v4u32 {
5595 __lsx_vmaddwev_w_hu(a, b, c)
5596}
5597
5598#[inline]
5599#[target_feature(enable = "lsx")]
5600#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5601pub unsafe fn lsx_vmaddwev_h_bu(a: v8u16, b: v16u8, c: v16u8) -> v8u16 {
5602 __lsx_vmaddwev_h_bu(a, b, c)
5603}
5604
5605#[inline]
5606#[target_feature(enable = "lsx")]
5607#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5608pub unsafe fn lsx_vmaddwod_d_w(a: v2i64, b: v4i32, c: v4i32) -> v2i64 {
5609 __lsx_vmaddwod_d_w(a, b, c)
5610}
5611
5612#[inline]
5613#[target_feature(enable = "lsx")]
5614#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5615pub unsafe fn lsx_vmaddwod_w_h(a: v4i32, b: v8i16, c: v8i16) -> v4i32 {
5616 __lsx_vmaddwod_w_h(a, b, c)
5617}
5618
5619#[inline]
5620#[target_feature(enable = "lsx")]
5621#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5622pub unsafe fn lsx_vmaddwod_h_b(a: v8i16, b: v16i8, c: v16i8) -> v8i16 {
5623 __lsx_vmaddwod_h_b(a, b, c)
5624}
5625
5626#[inline]
5627#[target_feature(enable = "lsx")]
5628#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5629pub unsafe fn lsx_vmaddwod_d_wu(a: v2u64, b: v4u32, c: v4u32) -> v2u64 {
5630 __lsx_vmaddwod_d_wu(a, b, c)
5631}
5632
5633#[inline]
5634#[target_feature(enable = "lsx")]
5635#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5636pub unsafe fn lsx_vmaddwod_w_hu(a: v4u32, b: v8u16, c: v8u16) -> v4u32 {
5637 __lsx_vmaddwod_w_hu(a, b, c)
5638}
5639
5640#[inline]
5641#[target_feature(enable = "lsx")]
5642#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5643pub unsafe fn lsx_vmaddwod_h_bu(a: v8u16, b: v16u8, c: v16u8) -> v8u16 {
5644 __lsx_vmaddwod_h_bu(a, b, c)
5645}
5646
5647#[inline]
5648#[target_feature(enable = "lsx")]
5649#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5650pub unsafe fn lsx_vmaddwev_d_wu_w(a: v2i64, b: v4u32, c: v4i32) -> v2i64 {
5651 __lsx_vmaddwev_d_wu_w(a, b, c)
5652}
5653
5654#[inline]
5655#[target_feature(enable = "lsx")]
5656#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5657pub unsafe fn lsx_vmaddwev_w_hu_h(a: v4i32, b: v8u16, c: v8i16) -> v4i32 {
5658 __lsx_vmaddwev_w_hu_h(a, b, c)
5659}
5660
5661#[inline]
5662#[target_feature(enable = "lsx")]
5663#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5664pub unsafe fn lsx_vmaddwev_h_bu_b(a: v8i16, b: v16u8, c: v16i8) -> v8i16 {
5665 __lsx_vmaddwev_h_bu_b(a, b, c)
5666}
5667
5668#[inline]
5669#[target_feature(enable = "lsx")]
5670#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5671pub unsafe fn lsx_vmaddwod_d_wu_w(a: v2i64, b: v4u32, c: v4i32) -> v2i64 {
5672 __lsx_vmaddwod_d_wu_w(a, b, c)
5673}
5674
5675#[inline]
5676#[target_feature(enable = "lsx")]
5677#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5678pub unsafe fn lsx_vmaddwod_w_hu_h(a: v4i32, b: v8u16, c: v8i16) -> v4i32 {
5679 __lsx_vmaddwod_w_hu_h(a, b, c)
5680}
5681
5682#[inline]
5683#[target_feature(enable = "lsx")]
5684#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5685pub unsafe fn lsx_vmaddwod_h_bu_b(a: v8i16, b: v16u8, c: v16i8) -> v8i16 {
5686 __lsx_vmaddwod_h_bu_b(a, b, c)
5687}
5688
5689#[inline]
5690#[target_feature(enable = "lsx")]
5691#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5692pub unsafe fn lsx_vmaddwev_q_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64 {
5693 __lsx_vmaddwev_q_d(a, b, c)
5694}
5695
5696#[inline]
5697#[target_feature(enable = "lsx")]
5698#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5699pub unsafe fn lsx_vmaddwod_q_d(a: v2i64, b: v2i64, c: v2i64) -> v2i64 {
5700 __lsx_vmaddwod_q_d(a, b, c)
5701}
5702
5703#[inline]
5704#[target_feature(enable = "lsx")]
5705#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5706pub unsafe fn lsx_vmaddwev_q_du(a: v2u64, b: v2u64, c: v2u64) -> v2u64 {
5707 __lsx_vmaddwev_q_du(a, b, c)
5708}
5709
5710#[inline]
5711#[target_feature(enable = "lsx")]
5712#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5713pub unsafe fn lsx_vmaddwod_q_du(a: v2u64, b: v2u64, c: v2u64) -> v2u64 {
5714 __lsx_vmaddwod_q_du(a, b, c)
5715}
5716
5717#[inline]
5718#[target_feature(enable = "lsx")]
5719#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5720pub unsafe fn lsx_vmaddwev_q_du_d(a: v2i64, b: v2u64, c: v2i64) -> v2i64 {
5721 __lsx_vmaddwev_q_du_d(a, b, c)
5722}
5723
5724#[inline]
5725#[target_feature(enable = "lsx")]
5726#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5727pub unsafe fn lsx_vmaddwod_q_du_d(a: v2i64, b: v2u64, c: v2i64) -> v2i64 {
5728 __lsx_vmaddwod_q_du_d(a, b, c)
5729}
5730
5731#[inline]
5732#[target_feature(enable = "lsx")]
5733#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5734pub unsafe fn lsx_vrotr_b(a: v16i8, b: v16i8) -> v16i8 {
5735 __lsx_vrotr_b(a, b)
5736}
5737
5738#[inline]
5739#[target_feature(enable = "lsx")]
5740#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5741pub unsafe fn lsx_vrotr_h(a: v8i16, b: v8i16) -> v8i16 {
5742 __lsx_vrotr_h(a, b)
5743}
5744
5745#[inline]
5746#[target_feature(enable = "lsx")]
5747#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5748pub unsafe fn lsx_vrotr_w(a: v4i32, b: v4i32) -> v4i32 {
5749 __lsx_vrotr_w(a, b)
5750}
5751
5752#[inline]
5753#[target_feature(enable = "lsx")]
5754#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5755pub unsafe fn lsx_vrotr_d(a: v2i64, b: v2i64) -> v2i64 {
5756 __lsx_vrotr_d(a, b)
5757}
5758
5759#[inline]
5760#[target_feature(enable = "lsx")]
5761#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5762pub unsafe fn lsx_vadd_q(a: v2i64, b: v2i64) -> v2i64 {
5763 __lsx_vadd_q(a, b)
5764}
5765
5766#[inline]
5767#[target_feature(enable = "lsx")]
5768#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5769pub unsafe fn lsx_vsub_q(a: v2i64, b: v2i64) -> v2i64 {
5770 __lsx_vsub_q(a, b)
5771}
5772
5773#[inline]
5774#[target_feature(enable = "lsx")]
5775#[rustc_legacy_const_generics(1)]
5776#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5777pub unsafe fn lsx_vldrepl_b<const IMM_S12: i32>(mem_addr: *const i8) -> v16i8 {
5778 static_assert_simm_bits!(IMM_S12, 12);
5779 __lsx_vldrepl_b(mem_addr, IMM_S12)
5780}
5781
5782#[inline]
5783#[target_feature(enable = "lsx")]
5784#[rustc_legacy_const_generics(1)]
5785#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5786pub unsafe fn lsx_vldrepl_h<const IMM_S11: i32>(mem_addr: *const i8) -> v8i16 {
5787 static_assert_simm_bits!(IMM_S11, 11);
5788 __lsx_vldrepl_h(mem_addr, IMM_S11)
5789}
5790
5791#[inline]
5792#[target_feature(enable = "lsx")]
5793#[rustc_legacy_const_generics(1)]
5794#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5795pub unsafe fn lsx_vldrepl_w<const IMM_S10: i32>(mem_addr: *const i8) -> v4i32 {
5796 static_assert_simm_bits!(IMM_S10, 10);
5797 __lsx_vldrepl_w(mem_addr, IMM_S10)
5798}
5799
5800#[inline]
5801#[target_feature(enable = "lsx")]
5802#[rustc_legacy_const_generics(1)]
5803#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5804pub unsafe fn lsx_vldrepl_d<const IMM_S9: i32>(mem_addr: *const i8) -> v2i64 {
5805 static_assert_simm_bits!(IMM_S9, 9);
5806 __lsx_vldrepl_d(mem_addr, IMM_S9)
5807}
5808
5809#[inline]
5810#[target_feature(enable = "lsx")]
5811#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5812pub unsafe fn lsx_vmskgez_b(a: v16i8) -> v16i8 {
5813 __lsx_vmskgez_b(a)
5814}
5815
5816#[inline]
5817#[target_feature(enable = "lsx")]
5818#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5819pub unsafe fn lsx_vmsknz_b(a: v16i8) -> v16i8 {
5820 __lsx_vmsknz_b(a)
5821}
5822
5823#[inline]
5824#[target_feature(enable = "lsx")]
5825#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5826pub unsafe fn lsx_vexth_h_b(a: v16i8) -> v8i16 {
5827 __lsx_vexth_h_b(a)
5828}
5829
5830#[inline]
5831#[target_feature(enable = "lsx")]
5832#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5833pub unsafe fn lsx_vexth_w_h(a: v8i16) -> v4i32 {
5834 __lsx_vexth_w_h(a)
5835}
5836
5837#[inline]
5838#[target_feature(enable = "lsx")]
5839#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5840pub unsafe fn lsx_vexth_d_w(a: v4i32) -> v2i64 {
5841 __lsx_vexth_d_w(a)
5842}
5843
5844#[inline]
5845#[target_feature(enable = "lsx")]
5846#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5847pub unsafe fn lsx_vexth_q_d(a: v2i64) -> v2i64 {
5848 __lsx_vexth_q_d(a)
5849}
5850
5851#[inline]
5852#[target_feature(enable = "lsx")]
5853#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5854pub unsafe fn lsx_vexth_hu_bu(a: v16u8) -> v8u16 {
5855 __lsx_vexth_hu_bu(a)
5856}
5857
5858#[inline]
5859#[target_feature(enable = "lsx")]
5860#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5861pub unsafe fn lsx_vexth_wu_hu(a: v8u16) -> v4u32 {
5862 __lsx_vexth_wu_hu(a)
5863}
5864
5865#[inline]
5866#[target_feature(enable = "lsx")]
5867#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5868pub unsafe fn lsx_vexth_du_wu(a: v4u32) -> v2u64 {
5869 __lsx_vexth_du_wu(a)
5870}
5871
5872#[inline]
5873#[target_feature(enable = "lsx")]
5874#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5875pub unsafe fn lsx_vexth_qu_du(a: v2u64) -> v2u64 {
5876 __lsx_vexth_qu_du(a)
5877}
5878
5879#[inline]
5880#[target_feature(enable = "lsx")]
5881#[rustc_legacy_const_generics(1)]
5882#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5883pub unsafe fn lsx_vrotri_b<const IMM3: u32>(a: v16i8) -> v16i8 {
5884 static_assert_uimm_bits!(IMM3, 3);
5885 __lsx_vrotri_b(a, IMM3)
5886}
5887
5888#[inline]
5889#[target_feature(enable = "lsx")]
5890#[rustc_legacy_const_generics(1)]
5891#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5892pub unsafe fn lsx_vrotri_h<const IMM4: u32>(a: v8i16) -> v8i16 {
5893 static_assert_uimm_bits!(IMM4, 4);
5894 __lsx_vrotri_h(a, IMM4)
5895}
5896
5897#[inline]
5898#[target_feature(enable = "lsx")]
5899#[rustc_legacy_const_generics(1)]
5900#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5901pub unsafe fn lsx_vrotri_w<const IMM5: u32>(a: v4i32) -> v4i32 {
5902 static_assert_uimm_bits!(IMM5, 5);
5903 __lsx_vrotri_w(a, IMM5)
5904}
5905
5906#[inline]
5907#[target_feature(enable = "lsx")]
5908#[rustc_legacy_const_generics(1)]
5909#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5910pub unsafe fn lsx_vrotri_d<const IMM6: u32>(a: v2i64) -> v2i64 {
5911 static_assert_uimm_bits!(IMM6, 6);
5912 __lsx_vrotri_d(a, IMM6)
5913}
5914
5915#[inline]
5916#[target_feature(enable = "lsx")]
5917#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5918pub unsafe fn lsx_vextl_q_d(a: v2i64) -> v2i64 {
5919 __lsx_vextl_q_d(a)
5920}
5921
5922#[inline]
5923#[target_feature(enable = "lsx")]
5924#[rustc_legacy_const_generics(2)]
5925#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5926pub unsafe fn lsx_vsrlni_b_h<const IMM4: u32>(a: v16i8, b: v16i8) -> v16i8 {
5927 static_assert_uimm_bits!(IMM4, 4);
5928 __lsx_vsrlni_b_h(a, b, IMM4)
5929}
5930
5931#[inline]
5932#[target_feature(enable = "lsx")]
5933#[rustc_legacy_const_generics(2)]
5934#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5935pub unsafe fn lsx_vsrlni_h_w<const IMM5: u32>(a: v8i16, b: v8i16) -> v8i16 {
5936 static_assert_uimm_bits!(IMM5, 5);
5937 __lsx_vsrlni_h_w(a, b, IMM5)
5938}
5939
5940#[inline]
5941#[target_feature(enable = "lsx")]
5942#[rustc_legacy_const_generics(2)]
5943#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5944pub unsafe fn lsx_vsrlni_w_d<const IMM6: u32>(a: v4i32, b: v4i32) -> v4i32 {
5945 static_assert_uimm_bits!(IMM6, 6);
5946 __lsx_vsrlni_w_d(a, b, IMM6)
5947}
5948
5949#[inline]
5950#[target_feature(enable = "lsx")]
5951#[rustc_legacy_const_generics(2)]
5952#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5953pub unsafe fn lsx_vsrlni_d_q<const IMM7: u32>(a: v2i64, b: v2i64) -> v2i64 {
5954 static_assert_uimm_bits!(IMM7, 7);
5955 __lsx_vsrlni_d_q(a, b, IMM7)
5956}
5957
5958#[inline]
5959#[target_feature(enable = "lsx")]
5960#[rustc_legacy_const_generics(2)]
5961#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5962pub unsafe fn lsx_vsrlrni_b_h<const IMM4: u32>(a: v16i8, b: v16i8) -> v16i8 {
5963 static_assert_uimm_bits!(IMM4, 4);
5964 __lsx_vsrlrni_b_h(a, b, IMM4)
5965}
5966
5967#[inline]
5968#[target_feature(enable = "lsx")]
5969#[rustc_legacy_const_generics(2)]
5970#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5971pub unsafe fn lsx_vsrlrni_h_w<const IMM5: u32>(a: v8i16, b: v8i16) -> v8i16 {
5972 static_assert_uimm_bits!(IMM5, 5);
5973 __lsx_vsrlrni_h_w(a, b, IMM5)
5974}
5975
5976#[inline]
5977#[target_feature(enable = "lsx")]
5978#[rustc_legacy_const_generics(2)]
5979#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5980pub unsafe fn lsx_vsrlrni_w_d<const IMM6: u32>(a: v4i32, b: v4i32) -> v4i32 {
5981 static_assert_uimm_bits!(IMM6, 6);
5982 __lsx_vsrlrni_w_d(a, b, IMM6)
5983}
5984
5985#[inline]
5986#[target_feature(enable = "lsx")]
5987#[rustc_legacy_const_generics(2)]
5988#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5989pub unsafe fn lsx_vsrlrni_d_q<const IMM7: u32>(a: v2i64, b: v2i64) -> v2i64 {
5990 static_assert_uimm_bits!(IMM7, 7);
5991 __lsx_vsrlrni_d_q(a, b, IMM7)
5992}
5993
5994#[inline]
5995#[target_feature(enable = "lsx")]
5996#[rustc_legacy_const_generics(2)]
5997#[unstable(feature = "stdarch_loongarch", issue = "117427")]
5998pub unsafe fn lsx_vssrlni_b_h<const IMM4: u32>(a: v16i8, b: v16i8) -> v16i8 {
5999 static_assert_uimm_bits!(IMM4, 4);
6000 __lsx_vssrlni_b_h(a, b, IMM4)
6001}
6002
6003#[inline]
6004#[target_feature(enable = "lsx")]
6005#[rustc_legacy_const_generics(2)]
6006#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6007pub unsafe fn lsx_vssrlni_h_w<const IMM5: u32>(a: v8i16, b: v8i16) -> v8i16 {
6008 static_assert_uimm_bits!(IMM5, 5);
6009 __lsx_vssrlni_h_w(a, b, IMM5)
6010}
6011
6012#[inline]
6013#[target_feature(enable = "lsx")]
6014#[rustc_legacy_const_generics(2)]
6015#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6016pub unsafe fn lsx_vssrlni_w_d<const IMM6: u32>(a: v4i32, b: v4i32) -> v4i32 {
6017 static_assert_uimm_bits!(IMM6, 6);
6018 __lsx_vssrlni_w_d(a, b, IMM6)
6019}
6020
6021#[inline]
6022#[target_feature(enable = "lsx")]
6023#[rustc_legacy_const_generics(2)]
6024#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6025pub unsafe fn lsx_vssrlni_d_q<const IMM7: u32>(a: v2i64, b: v2i64) -> v2i64 {
6026 static_assert_uimm_bits!(IMM7, 7);
6027 __lsx_vssrlni_d_q(a, b, IMM7)
6028}
6029
6030#[inline]
6031#[target_feature(enable = "lsx")]
6032#[rustc_legacy_const_generics(2)]
6033#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6034pub unsafe fn lsx_vssrlni_bu_h<const IMM4: u32>(a: v16u8, b: v16i8) -> v16u8 {
6035 static_assert_uimm_bits!(IMM4, 4);
6036 __lsx_vssrlni_bu_h(a, b, IMM4)
6037}
6038
6039#[inline]
6040#[target_feature(enable = "lsx")]
6041#[rustc_legacy_const_generics(2)]
6042#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6043pub unsafe fn lsx_vssrlni_hu_w<const IMM5: u32>(a: v8u16, b: v8i16) -> v8u16 {
6044 static_assert_uimm_bits!(IMM5, 5);
6045 __lsx_vssrlni_hu_w(a, b, IMM5)
6046}
6047
6048#[inline]
6049#[target_feature(enable = "lsx")]
6050#[rustc_legacy_const_generics(2)]
6051#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6052pub unsafe fn lsx_vssrlni_wu_d<const IMM6: u32>(a: v4u32, b: v4i32) -> v4u32 {
6053 static_assert_uimm_bits!(IMM6, 6);
6054 __lsx_vssrlni_wu_d(a, b, IMM6)
6055}
6056
6057#[inline]
6058#[target_feature(enable = "lsx")]
6059#[rustc_legacy_const_generics(2)]
6060#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6061pub unsafe fn lsx_vssrlni_du_q<const IMM7: u32>(a: v2u64, b: v2i64) -> v2u64 {
6062 static_assert_uimm_bits!(IMM7, 7);
6063 __lsx_vssrlni_du_q(a, b, IMM7)
6064}
6065
6066#[inline]
6067#[target_feature(enable = "lsx")]
6068#[rustc_legacy_const_generics(2)]
6069#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6070pub unsafe fn lsx_vssrlrni_b_h<const IMM4: u32>(a: v16i8, b: v16i8) -> v16i8 {
6071 static_assert_uimm_bits!(IMM4, 4);
6072 __lsx_vssrlrni_b_h(a, b, IMM4)
6073}
6074
6075#[inline]
6076#[target_feature(enable = "lsx")]
6077#[rustc_legacy_const_generics(2)]
6078#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6079pub unsafe fn lsx_vssrlrni_h_w<const IMM5: u32>(a: v8i16, b: v8i16) -> v8i16 {
6080 static_assert_uimm_bits!(IMM5, 5);
6081 __lsx_vssrlrni_h_w(a, b, IMM5)
6082}
6083
6084#[inline]
6085#[target_feature(enable = "lsx")]
6086#[rustc_legacy_const_generics(2)]
6087#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6088pub unsafe fn lsx_vssrlrni_w_d<const IMM6: u32>(a: v4i32, b: v4i32) -> v4i32 {
6089 static_assert_uimm_bits!(IMM6, 6);
6090 __lsx_vssrlrni_w_d(a, b, IMM6)
6091}
6092
6093#[inline]
6094#[target_feature(enable = "lsx")]
6095#[rustc_legacy_const_generics(2)]
6096#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6097pub unsafe fn lsx_vssrlrni_d_q<const IMM7: u32>(a: v2i64, b: v2i64) -> v2i64 {
6098 static_assert_uimm_bits!(IMM7, 7);
6099 __lsx_vssrlrni_d_q(a, b, IMM7)
6100}
6101
6102#[inline]
6103#[target_feature(enable = "lsx")]
6104#[rustc_legacy_const_generics(2)]
6105#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6106pub unsafe fn lsx_vssrlrni_bu_h<const IMM4: u32>(a: v16u8, b: v16i8) -> v16u8 {
6107 static_assert_uimm_bits!(IMM4, 4);
6108 __lsx_vssrlrni_bu_h(a, b, IMM4)
6109}
6110
6111#[inline]
6112#[target_feature(enable = "lsx")]
6113#[rustc_legacy_const_generics(2)]
6114#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6115pub unsafe fn lsx_vssrlrni_hu_w<const IMM5: u32>(a: v8u16, b: v8i16) -> v8u16 {
6116 static_assert_uimm_bits!(IMM5, 5);
6117 __lsx_vssrlrni_hu_w(a, b, IMM5)
6118}
6119
6120#[inline]
6121#[target_feature(enable = "lsx")]
6122#[rustc_legacy_const_generics(2)]
6123#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6124pub unsafe fn lsx_vssrlrni_wu_d<const IMM6: u32>(a: v4u32, b: v4i32) -> v4u32 {
6125 static_assert_uimm_bits!(IMM6, 6);
6126 __lsx_vssrlrni_wu_d(a, b, IMM6)
6127}
6128
6129#[inline]
6130#[target_feature(enable = "lsx")]
6131#[rustc_legacy_const_generics(2)]
6132#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6133pub unsafe fn lsx_vssrlrni_du_q<const IMM7: u32>(a: v2u64, b: v2i64) -> v2u64 {
6134 static_assert_uimm_bits!(IMM7, 7);
6135 __lsx_vssrlrni_du_q(a, b, IMM7)
6136}
6137
6138#[inline]
6139#[target_feature(enable = "lsx")]
6140#[rustc_legacy_const_generics(2)]
6141#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6142pub unsafe fn lsx_vsrani_b_h<const IMM4: u32>(a: v16i8, b: v16i8) -> v16i8 {
6143 static_assert_uimm_bits!(IMM4, 4);
6144 __lsx_vsrani_b_h(a, b, IMM4)
6145}
6146
6147#[inline]
6148#[target_feature(enable = "lsx")]
6149#[rustc_legacy_const_generics(2)]
6150#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6151pub unsafe fn lsx_vsrani_h_w<const IMM5: u32>(a: v8i16, b: v8i16) -> v8i16 {
6152 static_assert_uimm_bits!(IMM5, 5);
6153 __lsx_vsrani_h_w(a, b, IMM5)
6154}
6155
6156#[inline]
6157#[target_feature(enable = "lsx")]
6158#[rustc_legacy_const_generics(2)]
6159#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6160pub unsafe fn lsx_vsrani_w_d<const IMM6: u32>(a: v4i32, b: v4i32) -> v4i32 {
6161 static_assert_uimm_bits!(IMM6, 6);
6162 __lsx_vsrani_w_d(a, b, IMM6)
6163}
6164
6165#[inline]
6166#[target_feature(enable = "lsx")]
6167#[rustc_legacy_const_generics(2)]
6168#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6169pub unsafe fn lsx_vsrani_d_q<const IMM7: u32>(a: v2i64, b: v2i64) -> v2i64 {
6170 static_assert_uimm_bits!(IMM7, 7);
6171 __lsx_vsrani_d_q(a, b, IMM7)
6172}
6173
6174#[inline]
6175#[target_feature(enable = "lsx")]
6176#[rustc_legacy_const_generics(2)]
6177#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6178pub unsafe fn lsx_vsrarni_b_h<const IMM4: u32>(a: v16i8, b: v16i8) -> v16i8 {
6179 static_assert_uimm_bits!(IMM4, 4);
6180 __lsx_vsrarni_b_h(a, b, IMM4)
6181}
6182
6183#[inline]
6184#[target_feature(enable = "lsx")]
6185#[rustc_legacy_const_generics(2)]
6186#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6187pub unsafe fn lsx_vsrarni_h_w<const IMM5: u32>(a: v8i16, b: v8i16) -> v8i16 {
6188 static_assert_uimm_bits!(IMM5, 5);
6189 __lsx_vsrarni_h_w(a, b, IMM5)
6190}
6191
6192#[inline]
6193#[target_feature(enable = "lsx")]
6194#[rustc_legacy_const_generics(2)]
6195#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6196pub unsafe fn lsx_vsrarni_w_d<const IMM6: u32>(a: v4i32, b: v4i32) -> v4i32 {
6197 static_assert_uimm_bits!(IMM6, 6);
6198 __lsx_vsrarni_w_d(a, b, IMM6)
6199}
6200
6201#[inline]
6202#[target_feature(enable = "lsx")]
6203#[rustc_legacy_const_generics(2)]
6204#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6205pub unsafe fn lsx_vsrarni_d_q<const IMM7: u32>(a: v2i64, b: v2i64) -> v2i64 {
6206 static_assert_uimm_bits!(IMM7, 7);
6207 __lsx_vsrarni_d_q(a, b, IMM7)
6208}
6209
6210#[inline]
6211#[target_feature(enable = "lsx")]
6212#[rustc_legacy_const_generics(2)]
6213#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6214pub unsafe fn lsx_vssrani_b_h<const IMM4: u32>(a: v16i8, b: v16i8) -> v16i8 {
6215 static_assert_uimm_bits!(IMM4, 4);
6216 __lsx_vssrani_b_h(a, b, IMM4)
6217}
6218
6219#[inline]
6220#[target_feature(enable = "lsx")]
6221#[rustc_legacy_const_generics(2)]
6222#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6223pub unsafe fn lsx_vssrani_h_w<const IMM5: u32>(a: v8i16, b: v8i16) -> v8i16 {
6224 static_assert_uimm_bits!(IMM5, 5);
6225 __lsx_vssrani_h_w(a, b, IMM5)
6226}
6227
6228#[inline]
6229#[target_feature(enable = "lsx")]
6230#[rustc_legacy_const_generics(2)]
6231#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6232pub unsafe fn lsx_vssrani_w_d<const IMM6: u32>(a: v4i32, b: v4i32) -> v4i32 {
6233 static_assert_uimm_bits!(IMM6, 6);
6234 __lsx_vssrani_w_d(a, b, IMM6)
6235}
6236
6237#[inline]
6238#[target_feature(enable = "lsx")]
6239#[rustc_legacy_const_generics(2)]
6240#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6241pub unsafe fn lsx_vssrani_d_q<const IMM7: u32>(a: v2i64, b: v2i64) -> v2i64 {
6242 static_assert_uimm_bits!(IMM7, 7);
6243 __lsx_vssrani_d_q(a, b, IMM7)
6244}
6245
6246#[inline]
6247#[target_feature(enable = "lsx")]
6248#[rustc_legacy_const_generics(2)]
6249#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6250pub unsafe fn lsx_vssrani_bu_h<const IMM4: u32>(a: v16u8, b: v16i8) -> v16u8 {
6251 static_assert_uimm_bits!(IMM4, 4);
6252 __lsx_vssrani_bu_h(a, b, IMM4)
6253}
6254
6255#[inline]
6256#[target_feature(enable = "lsx")]
6257#[rustc_legacy_const_generics(2)]
6258#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6259pub unsafe fn lsx_vssrani_hu_w<const IMM5: u32>(a: v8u16, b: v8i16) -> v8u16 {
6260 static_assert_uimm_bits!(IMM5, 5);
6261 __lsx_vssrani_hu_w(a, b, IMM5)
6262}
6263
6264#[inline]
6265#[target_feature(enable = "lsx")]
6266#[rustc_legacy_const_generics(2)]
6267#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6268pub unsafe fn lsx_vssrani_wu_d<const IMM6: u32>(a: v4u32, b: v4i32) -> v4u32 {
6269 static_assert_uimm_bits!(IMM6, 6);
6270 __lsx_vssrani_wu_d(a, b, IMM6)
6271}
6272
6273#[inline]
6274#[target_feature(enable = "lsx")]
6275#[rustc_legacy_const_generics(2)]
6276#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6277pub unsafe fn lsx_vssrani_du_q<const IMM7: u32>(a: v2u64, b: v2i64) -> v2u64 {
6278 static_assert_uimm_bits!(IMM7, 7);
6279 __lsx_vssrani_du_q(a, b, IMM7)
6280}
6281
6282#[inline]
6283#[target_feature(enable = "lsx")]
6284#[rustc_legacy_const_generics(2)]
6285#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6286pub unsafe fn lsx_vssrarni_b_h<const IMM4: u32>(a: v16i8, b: v16i8) -> v16i8 {
6287 static_assert_uimm_bits!(IMM4, 4);
6288 __lsx_vssrarni_b_h(a, b, IMM4)
6289}
6290
6291#[inline]
6292#[target_feature(enable = "lsx")]
6293#[rustc_legacy_const_generics(2)]
6294#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6295pub unsafe fn lsx_vssrarni_h_w<const IMM5: u32>(a: v8i16, b: v8i16) -> v8i16 {
6296 static_assert_uimm_bits!(IMM5, 5);
6297 __lsx_vssrarni_h_w(a, b, IMM5)
6298}
6299
6300#[inline]
6301#[target_feature(enable = "lsx")]
6302#[rustc_legacy_const_generics(2)]
6303#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6304pub unsafe fn lsx_vssrarni_w_d<const IMM6: u32>(a: v4i32, b: v4i32) -> v4i32 {
6305 static_assert_uimm_bits!(IMM6, 6);
6306 __lsx_vssrarni_w_d(a, b, IMM6)
6307}
6308
6309#[inline]
6310#[target_feature(enable = "lsx")]
6311#[rustc_legacy_const_generics(2)]
6312#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6313pub unsafe fn lsx_vssrarni_d_q<const IMM7: u32>(a: v2i64, b: v2i64) -> v2i64 {
6314 static_assert_uimm_bits!(IMM7, 7);
6315 __lsx_vssrarni_d_q(a, b, IMM7)
6316}
6317
6318#[inline]
6319#[target_feature(enable = "lsx")]
6320#[rustc_legacy_const_generics(2)]
6321#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6322pub unsafe fn lsx_vssrarni_bu_h<const IMM4: u32>(a: v16u8, b: v16i8) -> v16u8 {
6323 static_assert_uimm_bits!(IMM4, 4);
6324 __lsx_vssrarni_bu_h(a, b, IMM4)
6325}
6326
6327#[inline]
6328#[target_feature(enable = "lsx")]
6329#[rustc_legacy_const_generics(2)]
6330#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6331pub unsafe fn lsx_vssrarni_hu_w<const IMM5: u32>(a: v8u16, b: v8i16) -> v8u16 {
6332 static_assert_uimm_bits!(IMM5, 5);
6333 __lsx_vssrarni_hu_w(a, b, IMM5)
6334}
6335
6336#[inline]
6337#[target_feature(enable = "lsx")]
6338#[rustc_legacy_const_generics(2)]
6339#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6340pub unsafe fn lsx_vssrarni_wu_d<const IMM6: u32>(a: v4u32, b: v4i32) -> v4u32 {
6341 static_assert_uimm_bits!(IMM6, 6);
6342 __lsx_vssrarni_wu_d(a, b, IMM6)
6343}
6344
6345#[inline]
6346#[target_feature(enable = "lsx")]
6347#[rustc_legacy_const_generics(2)]
6348#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6349pub unsafe fn lsx_vssrarni_du_q<const IMM7: u32>(a: v2u64, b: v2i64) -> v2u64 {
6350 static_assert_uimm_bits!(IMM7, 7);
6351 __lsx_vssrarni_du_q(a, b, IMM7)
6352}
6353
6354#[inline]
6355#[target_feature(enable = "lsx")]
6356#[rustc_legacy_const_generics(2)]
6357#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6358pub unsafe fn lsx_vpermi_w<const IMM8: u32>(a: v4i32, b: v4i32) -> v4i32 {
6359 static_assert_uimm_bits!(IMM8, 8);
6360 __lsx_vpermi_w(a, b, IMM8)
6361}
6362
6363#[inline]
6364#[target_feature(enable = "lsx")]
6365#[rustc_legacy_const_generics(1)]
6366#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6367pub unsafe fn lsx_vld<const IMM_S12: i32>(mem_addr: *const i8) -> v16i8 {
6368 static_assert_simm_bits!(IMM_S12, 12);
6369 __lsx_vld(mem_addr, IMM_S12)
6370}
6371
6372#[inline]
6373#[target_feature(enable = "lsx")]
6374#[rustc_legacy_const_generics(2)]
6375#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6376pub unsafe fn lsx_vst<const IMM_S12: i32>(a: v16i8, mem_addr: *mut i8) {
6377 static_assert_simm_bits!(IMM_S12, 12);
6378 __lsx_vst(a, mem_addr, IMM_S12)
6379}
6380
6381#[inline]
6382#[target_feature(enable = "lsx")]
6383#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6384pub unsafe fn lsx_vssrlrn_b_h(a: v8i16, b: v8i16) -> v16i8 {
6385 __lsx_vssrlrn_b_h(a, b)
6386}
6387
6388#[inline]
6389#[target_feature(enable = "lsx")]
6390#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6391pub unsafe fn lsx_vssrlrn_h_w(a: v4i32, b: v4i32) -> v8i16 {
6392 __lsx_vssrlrn_h_w(a, b)
6393}
6394
6395#[inline]
6396#[target_feature(enable = "lsx")]
6397#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6398pub unsafe fn lsx_vssrlrn_w_d(a: v2i64, b: v2i64) -> v4i32 {
6399 __lsx_vssrlrn_w_d(a, b)
6400}
6401
6402#[inline]
6403#[target_feature(enable = "lsx")]
6404#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6405pub unsafe fn lsx_vssrln_b_h(a: v8i16, b: v8i16) -> v16i8 {
6406 __lsx_vssrln_b_h(a, b)
6407}
6408
6409#[inline]
6410#[target_feature(enable = "lsx")]
6411#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6412pub unsafe fn lsx_vssrln_h_w(a: v4i32, b: v4i32) -> v8i16 {
6413 __lsx_vssrln_h_w(a, b)
6414}
6415
6416#[inline]
6417#[target_feature(enable = "lsx")]
6418#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6419pub unsafe fn lsx_vssrln_w_d(a: v2i64, b: v2i64) -> v4i32 {
6420 __lsx_vssrln_w_d(a, b)
6421}
6422
6423#[inline]
6424#[target_feature(enable = "lsx")]
6425#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6426pub unsafe fn lsx_vorn_v(a: v16i8, b: v16i8) -> v16i8 {
6427 __lsx_vorn_v(a, b)
6428}
6429
6430#[inline]
6431#[target_feature(enable = "lsx")]
6432#[rustc_legacy_const_generics(0)]
6433#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6434pub unsafe fn lsx_vldi<const IMM_S13: i32>() -> v2i64 {
6435 static_assert_simm_bits!(IMM_S13, 13);
6436 __lsx_vldi(IMM_S13)
6437}
6438
6439#[inline]
6440#[target_feature(enable = "lsx")]
6441#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6442pub unsafe fn lsx_vshuf_b(a: v16i8, b: v16i8, c: v16i8) -> v16i8 {
6443 __lsx_vshuf_b(a, b, c)
6444}
6445
6446#[inline]
6447#[target_feature(enable = "lsx")]
6448#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6449pub unsafe fn lsx_vldx(mem_addr: *const i8, b: i64) -> v16i8 {
6450 __lsx_vldx(mem_addr, b)
6451}
6452
6453#[inline]
6454#[target_feature(enable = "lsx")]
6455#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6456pub unsafe fn lsx_vstx(a: v16i8, mem_addr: *mut i8, b: i64) {
6457 __lsx_vstx(a, mem_addr, b)
6458}
6459
6460#[inline]
6461#[target_feature(enable = "lsx")]
6462#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6463pub unsafe fn lsx_vextl_qu_du(a: v2u64) -> v2u64 {
6464 __lsx_vextl_qu_du(a)
6465}
6466
6467#[inline]
6468#[target_feature(enable = "lsx")]
6469#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6470pub unsafe fn lsx_bnz_b(a: v16u8) -> i32 {
6471 __lsx_bnz_b(a)
6472}
6473
6474#[inline]
6475#[target_feature(enable = "lsx")]
6476#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6477pub unsafe fn lsx_bnz_d(a: v2u64) -> i32 {
6478 __lsx_bnz_d(a)
6479}
6480
6481#[inline]
6482#[target_feature(enable = "lsx")]
6483#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6484pub unsafe fn lsx_bnz_h(a: v8u16) -> i32 {
6485 __lsx_bnz_h(a)
6486}
6487
6488#[inline]
6489#[target_feature(enable = "lsx")]
6490#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6491pub unsafe fn lsx_bnz_v(a: v16u8) -> i32 {
6492 __lsx_bnz_v(a)
6493}
6494
6495#[inline]
6496#[target_feature(enable = "lsx")]
6497#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6498pub unsafe fn lsx_bnz_w(a: v4u32) -> i32 {
6499 __lsx_bnz_w(a)
6500}
6501
6502#[inline]
6503#[target_feature(enable = "lsx")]
6504#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6505pub unsafe fn lsx_bz_b(a: v16u8) -> i32 {
6506 __lsx_bz_b(a)
6507}
6508
6509#[inline]
6510#[target_feature(enable = "lsx")]
6511#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6512pub unsafe fn lsx_bz_d(a: v2u64) -> i32 {
6513 __lsx_bz_d(a)
6514}
6515
6516#[inline]
6517#[target_feature(enable = "lsx")]
6518#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6519pub unsafe fn lsx_bz_h(a: v8u16) -> i32 {
6520 __lsx_bz_h(a)
6521}
6522
6523#[inline]
6524#[target_feature(enable = "lsx")]
6525#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6526pub unsafe fn lsx_bz_v(a: v16u8) -> i32 {
6527 __lsx_bz_v(a)
6528}
6529
6530#[inline]
6531#[target_feature(enable = "lsx")]
6532#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6533pub unsafe fn lsx_bz_w(a: v4u32) -> i32 {
6534 __lsx_bz_w(a)
6535}
6536
6537#[inline]
6538#[target_feature(enable = "lsx")]
6539#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6540pub unsafe fn lsx_vfcmp_caf_d(a: v2f64, b: v2f64) -> v2i64 {
6541 __lsx_vfcmp_caf_d(a, b)
6542}
6543
6544#[inline]
6545#[target_feature(enable = "lsx")]
6546#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6547pub unsafe fn lsx_vfcmp_caf_s(a: v4f32, b: v4f32) -> v4i32 {
6548 __lsx_vfcmp_caf_s(a, b)
6549}
6550
6551#[inline]
6552#[target_feature(enable = "lsx")]
6553#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6554pub unsafe fn lsx_vfcmp_ceq_d(a: v2f64, b: v2f64) -> v2i64 {
6555 __lsx_vfcmp_ceq_d(a, b)
6556}
6557
6558#[inline]
6559#[target_feature(enable = "lsx")]
6560#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6561pub unsafe fn lsx_vfcmp_ceq_s(a: v4f32, b: v4f32) -> v4i32 {
6562 __lsx_vfcmp_ceq_s(a, b)
6563}
6564
6565#[inline]
6566#[target_feature(enable = "lsx")]
6567#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6568pub unsafe fn lsx_vfcmp_cle_d(a: v2f64, b: v2f64) -> v2i64 {
6569 __lsx_vfcmp_cle_d(a, b)
6570}
6571
6572#[inline]
6573#[target_feature(enable = "lsx")]
6574#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6575pub unsafe fn lsx_vfcmp_cle_s(a: v4f32, b: v4f32) -> v4i32 {
6576 __lsx_vfcmp_cle_s(a, b)
6577}
6578
6579#[inline]
6580#[target_feature(enable = "lsx")]
6581#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6582pub unsafe fn lsx_vfcmp_clt_d(a: v2f64, b: v2f64) -> v2i64 {
6583 __lsx_vfcmp_clt_d(a, b)
6584}
6585
6586#[inline]
6587#[target_feature(enable = "lsx")]
6588#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6589pub unsafe fn lsx_vfcmp_clt_s(a: v4f32, b: v4f32) -> v4i32 {
6590 __lsx_vfcmp_clt_s(a, b)
6591}
6592
6593#[inline]
6594#[target_feature(enable = "lsx")]
6595#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6596pub unsafe fn lsx_vfcmp_cne_d(a: v2f64, b: v2f64) -> v2i64 {
6597 __lsx_vfcmp_cne_d(a, b)
6598}
6599
6600#[inline]
6601#[target_feature(enable = "lsx")]
6602#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6603pub unsafe fn lsx_vfcmp_cne_s(a: v4f32, b: v4f32) -> v4i32 {
6604 __lsx_vfcmp_cne_s(a, b)
6605}
6606
6607#[inline]
6608#[target_feature(enable = "lsx")]
6609#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6610pub unsafe fn lsx_vfcmp_cor_d(a: v2f64, b: v2f64) -> v2i64 {
6611 __lsx_vfcmp_cor_d(a, b)
6612}
6613
6614#[inline]
6615#[target_feature(enable = "lsx")]
6616#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6617pub unsafe fn lsx_vfcmp_cor_s(a: v4f32, b: v4f32) -> v4i32 {
6618 __lsx_vfcmp_cor_s(a, b)
6619}
6620
6621#[inline]
6622#[target_feature(enable = "lsx")]
6623#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6624pub unsafe fn lsx_vfcmp_cueq_d(a: v2f64, b: v2f64) -> v2i64 {
6625 __lsx_vfcmp_cueq_d(a, b)
6626}
6627
6628#[inline]
6629#[target_feature(enable = "lsx")]
6630#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6631pub unsafe fn lsx_vfcmp_cueq_s(a: v4f32, b: v4f32) -> v4i32 {
6632 __lsx_vfcmp_cueq_s(a, b)
6633}
6634
6635#[inline]
6636#[target_feature(enable = "lsx")]
6637#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6638pub unsafe fn lsx_vfcmp_cule_d(a: v2f64, b: v2f64) -> v2i64 {
6639 __lsx_vfcmp_cule_d(a, b)
6640}
6641
6642#[inline]
6643#[target_feature(enable = "lsx")]
6644#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6645pub unsafe fn lsx_vfcmp_cule_s(a: v4f32, b: v4f32) -> v4i32 {
6646 __lsx_vfcmp_cule_s(a, b)
6647}
6648
6649#[inline]
6650#[target_feature(enable = "lsx")]
6651#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6652pub unsafe fn lsx_vfcmp_cult_d(a: v2f64, b: v2f64) -> v2i64 {
6653 __lsx_vfcmp_cult_d(a, b)
6654}
6655
6656#[inline]
6657#[target_feature(enable = "lsx")]
6658#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6659pub unsafe fn lsx_vfcmp_cult_s(a: v4f32, b: v4f32) -> v4i32 {
6660 __lsx_vfcmp_cult_s(a, b)
6661}
6662
6663#[inline]
6664#[target_feature(enable = "lsx")]
6665#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6666pub unsafe fn lsx_vfcmp_cun_d(a: v2f64, b: v2f64) -> v2i64 {
6667 __lsx_vfcmp_cun_d(a, b)
6668}
6669
6670#[inline]
6671#[target_feature(enable = "lsx")]
6672#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6673pub unsafe fn lsx_vfcmp_cune_d(a: v2f64, b: v2f64) -> v2i64 {
6674 __lsx_vfcmp_cune_d(a, b)
6675}
6676
6677#[inline]
6678#[target_feature(enable = "lsx")]
6679#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6680pub unsafe fn lsx_vfcmp_cune_s(a: v4f32, b: v4f32) -> v4i32 {
6681 __lsx_vfcmp_cune_s(a, b)
6682}
6683
6684#[inline]
6685#[target_feature(enable = "lsx")]
6686#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6687pub unsafe fn lsx_vfcmp_cun_s(a: v4f32, b: v4f32) -> v4i32 {
6688 __lsx_vfcmp_cun_s(a, b)
6689}
6690
6691#[inline]
6692#[target_feature(enable = "lsx")]
6693#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6694pub unsafe fn lsx_vfcmp_saf_d(a: v2f64, b: v2f64) -> v2i64 {
6695 __lsx_vfcmp_saf_d(a, b)
6696}
6697
6698#[inline]
6699#[target_feature(enable = "lsx")]
6700#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6701pub unsafe fn lsx_vfcmp_saf_s(a: v4f32, b: v4f32) -> v4i32 {
6702 __lsx_vfcmp_saf_s(a, b)
6703}
6704
6705#[inline]
6706#[target_feature(enable = "lsx")]
6707#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6708pub unsafe fn lsx_vfcmp_seq_d(a: v2f64, b: v2f64) -> v2i64 {
6709 __lsx_vfcmp_seq_d(a, b)
6710}
6711
6712#[inline]
6713#[target_feature(enable = "lsx")]
6714#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6715pub unsafe fn lsx_vfcmp_seq_s(a: v4f32, b: v4f32) -> v4i32 {
6716 __lsx_vfcmp_seq_s(a, b)
6717}
6718
6719#[inline]
6720#[target_feature(enable = "lsx")]
6721#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6722pub unsafe fn lsx_vfcmp_sle_d(a: v2f64, b: v2f64) -> v2i64 {
6723 __lsx_vfcmp_sle_d(a, b)
6724}
6725
6726#[inline]
6727#[target_feature(enable = "lsx")]
6728#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6729pub unsafe fn lsx_vfcmp_sle_s(a: v4f32, b: v4f32) -> v4i32 {
6730 __lsx_vfcmp_sle_s(a, b)
6731}
6732
6733#[inline]
6734#[target_feature(enable = "lsx")]
6735#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6736pub unsafe fn lsx_vfcmp_slt_d(a: v2f64, b: v2f64) -> v2i64 {
6737 __lsx_vfcmp_slt_d(a, b)
6738}
6739
6740#[inline]
6741#[target_feature(enable = "lsx")]
6742#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6743pub unsafe fn lsx_vfcmp_slt_s(a: v4f32, b: v4f32) -> v4i32 {
6744 __lsx_vfcmp_slt_s(a, b)
6745}
6746
6747#[inline]
6748#[target_feature(enable = "lsx")]
6749#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6750pub unsafe fn lsx_vfcmp_sne_d(a: v2f64, b: v2f64) -> v2i64 {
6751 __lsx_vfcmp_sne_d(a, b)
6752}
6753
6754#[inline]
6755#[target_feature(enable = "lsx")]
6756#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6757pub unsafe fn lsx_vfcmp_sne_s(a: v4f32, b: v4f32) -> v4i32 {
6758 __lsx_vfcmp_sne_s(a, b)
6759}
6760
6761#[inline]
6762#[target_feature(enable = "lsx")]
6763#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6764pub unsafe fn lsx_vfcmp_sor_d(a: v2f64, b: v2f64) -> v2i64 {
6765 __lsx_vfcmp_sor_d(a, b)
6766}
6767
6768#[inline]
6769#[target_feature(enable = "lsx")]
6770#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6771pub unsafe fn lsx_vfcmp_sor_s(a: v4f32, b: v4f32) -> v4i32 {
6772 __lsx_vfcmp_sor_s(a, b)
6773}
6774
6775#[inline]
6776#[target_feature(enable = "lsx")]
6777#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6778pub unsafe fn lsx_vfcmp_sueq_d(a: v2f64, b: v2f64) -> v2i64 {
6779 __lsx_vfcmp_sueq_d(a, b)
6780}
6781
6782#[inline]
6783#[target_feature(enable = "lsx")]
6784#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6785pub unsafe fn lsx_vfcmp_sueq_s(a: v4f32, b: v4f32) -> v4i32 {
6786 __lsx_vfcmp_sueq_s(a, b)
6787}
6788
6789#[inline]
6790#[target_feature(enable = "lsx")]
6791#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6792pub unsafe fn lsx_vfcmp_sule_d(a: v2f64, b: v2f64) -> v2i64 {
6793 __lsx_vfcmp_sule_d(a, b)
6794}
6795
6796#[inline]
6797#[target_feature(enable = "lsx")]
6798#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6799pub unsafe fn lsx_vfcmp_sule_s(a: v4f32, b: v4f32) -> v4i32 {
6800 __lsx_vfcmp_sule_s(a, b)
6801}
6802
6803#[inline]
6804#[target_feature(enable = "lsx")]
6805#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6806pub unsafe fn lsx_vfcmp_sult_d(a: v2f64, b: v2f64) -> v2i64 {
6807 __lsx_vfcmp_sult_d(a, b)
6808}
6809
6810#[inline]
6811#[target_feature(enable = "lsx")]
6812#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6813pub unsafe fn lsx_vfcmp_sult_s(a: v4f32, b: v4f32) -> v4i32 {
6814 __lsx_vfcmp_sult_s(a, b)
6815}
6816
6817#[inline]
6818#[target_feature(enable = "lsx")]
6819#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6820pub unsafe fn lsx_vfcmp_sun_d(a: v2f64, b: v2f64) -> v2i64 {
6821 __lsx_vfcmp_sun_d(a, b)
6822}
6823
6824#[inline]
6825#[target_feature(enable = "lsx")]
6826#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6827pub unsafe fn lsx_vfcmp_sune_d(a: v2f64, b: v2f64) -> v2i64 {
6828 __lsx_vfcmp_sune_d(a, b)
6829}
6830
6831#[inline]
6832#[target_feature(enable = "lsx")]
6833#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6834pub unsafe fn lsx_vfcmp_sune_s(a: v4f32, b: v4f32) -> v4i32 {
6835 __lsx_vfcmp_sune_s(a, b)
6836}
6837
6838#[inline]
6839#[target_feature(enable = "lsx")]
6840#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6841pub unsafe fn lsx_vfcmp_sun_s(a: v4f32, b: v4f32) -> v4i32 {
6842 __lsx_vfcmp_sun_s(a, b)
6843}
6844
6845#[inline]
6846#[target_feature(enable = "lsx")]
6847#[rustc_legacy_const_generics(0)]
6848#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6849pub unsafe fn lsx_vrepli_b<const IMM_S10: i32>() -> v16i8 {
6850 static_assert_simm_bits!(IMM_S10, 10);
6851 __lsx_vrepli_b(IMM_S10)
6852}
6853
6854#[inline]
6855#[target_feature(enable = "lsx")]
6856#[rustc_legacy_const_generics(0)]
6857#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6858pub unsafe fn lsx_vrepli_d<const IMM_S10: i32>() -> v2i64 {
6859 static_assert_simm_bits!(IMM_S10, 10);
6860 __lsx_vrepli_d(IMM_S10)
6861}
6862
6863#[inline]
6864#[target_feature(enable = "lsx")]
6865#[rustc_legacy_const_generics(0)]
6866#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6867pub unsafe fn lsx_vrepli_h<const IMM_S10: i32>() -> v8i16 {
6868 static_assert_simm_bits!(IMM_S10, 10);
6869 __lsx_vrepli_h(IMM_S10)
6870}
6871
6872#[inline]
6873#[target_feature(enable = "lsx")]
6874#[rustc_legacy_const_generics(0)]
6875#[unstable(feature = "stdarch_loongarch", issue = "117427")]
6876pub unsafe fn lsx_vrepli_w<const IMM_S10: i32>() -> v4i32 {
6877 static_assert_simm_bits!(IMM_S10, 10);
6878 __lsx_vrepli_w(IMM_S10)
6879}