Skip to main content

core/stdarch/crates/core_arch/src/loongarch64/lasx/
generated.rs

1// This code is automatically generated. DO NOT MODIFY.
2//
3// Instead, modify `crates/stdarch-gen-loongarch/lasx.spec` and run the following command to re-generate this file:
4//
5// ```
6// OUT_DIR=`pwd`/crates/core_arch cargo run -p stdarch-gen-loongarch -- crates/stdarch-gen-loongarch/lasx.spec
7// ```
8
9use crate::mem::transmute;
10use super::super::*;
11
12#[allow(improper_ctypes)]
13unsafe extern "unadjusted" {
14    #[link_name = "llvm.loongarch.lasx.xvsrar.b"]
15    fn __lasx_xvsrar_b(a: __v32i8, b: __v32i8) -> __v32i8;
16    #[link_name = "llvm.loongarch.lasx.xvsrar.h"]
17    fn __lasx_xvsrar_h(a: __v16i16, b: __v16i16) -> __v16i16;
18    #[link_name = "llvm.loongarch.lasx.xvsrar.w"]
19    fn __lasx_xvsrar_w(a: __v8i32, b: __v8i32) -> __v8i32;
20    #[link_name = "llvm.loongarch.lasx.xvsrar.d"]
21    fn __lasx_xvsrar_d(a: __v4i64, b: __v4i64) -> __v4i64;
22    #[link_name = "llvm.loongarch.lasx.xvsrari.b"]
23    fn __lasx_xvsrari_b(a: __v32i8, b: u32) -> __v32i8;
24    #[link_name = "llvm.loongarch.lasx.xvsrari.h"]
25    fn __lasx_xvsrari_h(a: __v16i16, b: u32) -> __v16i16;
26    #[link_name = "llvm.loongarch.lasx.xvsrari.w"]
27    fn __lasx_xvsrari_w(a: __v8i32, b: u32) -> __v8i32;
28    #[link_name = "llvm.loongarch.lasx.xvsrari.d"]
29    fn __lasx_xvsrari_d(a: __v4i64, b: u32) -> __v4i64;
30    #[link_name = "llvm.loongarch.lasx.xvsrlr.b"]
31    fn __lasx_xvsrlr_b(a: __v32i8, b: __v32i8) -> __v32i8;
32    #[link_name = "llvm.loongarch.lasx.xvsrlr.h"]
33    fn __lasx_xvsrlr_h(a: __v16i16, b: __v16i16) -> __v16i16;
34    #[link_name = "llvm.loongarch.lasx.xvsrlr.w"]
35    fn __lasx_xvsrlr_w(a: __v8i32, b: __v8i32) -> __v8i32;
36    #[link_name = "llvm.loongarch.lasx.xvsrlr.d"]
37    fn __lasx_xvsrlr_d(a: __v4i64, b: __v4i64) -> __v4i64;
38    #[link_name = "llvm.loongarch.lasx.xvsrlri.b"]
39    fn __lasx_xvsrlri_b(a: __v32i8, b: u32) -> __v32i8;
40    #[link_name = "llvm.loongarch.lasx.xvsrlri.h"]
41    fn __lasx_xvsrlri_h(a: __v16i16, b: u32) -> __v16i16;
42    #[link_name = "llvm.loongarch.lasx.xvsrlri.w"]
43    fn __lasx_xvsrlri_w(a: __v8i32, b: u32) -> __v8i32;
44    #[link_name = "llvm.loongarch.lasx.xvsrlri.d"]
45    fn __lasx_xvsrlri_d(a: __v4i64, b: u32) -> __v4i64;
46    #[link_name = "llvm.loongarch.lasx.xvbitclri.b"]
47    fn __lasx_xvbitclri_b(a: __v32u8, b: u32) -> __v32u8;
48    #[link_name = "llvm.loongarch.lasx.xvbitclri.h"]
49    fn __lasx_xvbitclri_h(a: __v16u16, b: u32) -> __v16u16;
50    #[link_name = "llvm.loongarch.lasx.xvbitclri.w"]
51    fn __lasx_xvbitclri_w(a: __v8u32, b: u32) -> __v8u32;
52    #[link_name = "llvm.loongarch.lasx.xvbitclri.d"]
53    fn __lasx_xvbitclri_d(a: __v4u64, b: u32) -> __v4u64;
54    #[link_name = "llvm.loongarch.lasx.xvbitseti.b"]
55    fn __lasx_xvbitseti_b(a: __v32u8, b: u32) -> __v32u8;
56    #[link_name = "llvm.loongarch.lasx.xvbitseti.h"]
57    fn __lasx_xvbitseti_h(a: __v16u16, b: u32) -> __v16u16;
58    #[link_name = "llvm.loongarch.lasx.xvbitseti.w"]
59    fn __lasx_xvbitseti_w(a: __v8u32, b: u32) -> __v8u32;
60    #[link_name = "llvm.loongarch.lasx.xvbitseti.d"]
61    fn __lasx_xvbitseti_d(a: __v4u64, b: u32) -> __v4u64;
62    #[link_name = "llvm.loongarch.lasx.xvbitrevi.b"]
63    fn __lasx_xvbitrevi_b(a: __v32u8, b: u32) -> __v32u8;
64    #[link_name = "llvm.loongarch.lasx.xvbitrevi.h"]
65    fn __lasx_xvbitrevi_h(a: __v16u16, b: u32) -> __v16u16;
66    #[link_name = "llvm.loongarch.lasx.xvbitrevi.w"]
67    fn __lasx_xvbitrevi_w(a: __v8u32, b: u32) -> __v8u32;
68    #[link_name = "llvm.loongarch.lasx.xvbitrevi.d"]
69    fn __lasx_xvbitrevi_d(a: __v4u64, b: u32) -> __v4u64;
70    #[link_name = "llvm.loongarch.lasx.xvsubi.bu"]
71    fn __lasx_xvsubi_bu(a: __v32i8, b: u32) -> __v32i8;
72    #[link_name = "llvm.loongarch.lasx.xvsubi.hu"]
73    fn __lasx_xvsubi_hu(a: __v16i16, b: u32) -> __v16i16;
74    #[link_name = "llvm.loongarch.lasx.xvsubi.wu"]
75    fn __lasx_xvsubi_wu(a: __v8i32, b: u32) -> __v8i32;
76    #[link_name = "llvm.loongarch.lasx.xvsubi.du"]
77    fn __lasx_xvsubi_du(a: __v4i64, b: u32) -> __v4i64;
78    #[link_name = "llvm.loongarch.lasx.xvsat.b"]
79    fn __lasx_xvsat_b(a: __v32i8, b: u32) -> __v32i8;
80    #[link_name = "llvm.loongarch.lasx.xvsat.h"]
81    fn __lasx_xvsat_h(a: __v16i16, b: u32) -> __v16i16;
82    #[link_name = "llvm.loongarch.lasx.xvsat.w"]
83    fn __lasx_xvsat_w(a: __v8i32, b: u32) -> __v8i32;
84    #[link_name = "llvm.loongarch.lasx.xvsat.d"]
85    fn __lasx_xvsat_d(a: __v4i64, b: u32) -> __v4i64;
86    #[link_name = "llvm.loongarch.lasx.xvsat.bu"]
87    fn __lasx_xvsat_bu(a: __v32u8, b: u32) -> __v32u8;
88    #[link_name = "llvm.loongarch.lasx.xvsat.hu"]
89    fn __lasx_xvsat_hu(a: __v16u16, b: u32) -> __v16u16;
90    #[link_name = "llvm.loongarch.lasx.xvsat.wu"]
91    fn __lasx_xvsat_wu(a: __v8u32, b: u32) -> __v8u32;
92    #[link_name = "llvm.loongarch.lasx.xvsat.du"]
93    fn __lasx_xvsat_du(a: __v4u64, b: u32) -> __v4u64;
94    #[link_name = "llvm.loongarch.lasx.xvavg.b"]
95    fn __lasx_xvavg_b(a: __v32i8, b: __v32i8) -> __v32i8;
96    #[link_name = "llvm.loongarch.lasx.xvavg.h"]
97    fn __lasx_xvavg_h(a: __v16i16, b: __v16i16) -> __v16i16;
98    #[link_name = "llvm.loongarch.lasx.xvavg.w"]
99    fn __lasx_xvavg_w(a: __v8i32, b: __v8i32) -> __v8i32;
100    #[link_name = "llvm.loongarch.lasx.xvavg.d"]
101    fn __lasx_xvavg_d(a: __v4i64, b: __v4i64) -> __v4i64;
102    #[link_name = "llvm.loongarch.lasx.xvavg.bu"]
103    fn __lasx_xvavg_bu(a: __v32u8, b: __v32u8) -> __v32u8;
104    #[link_name = "llvm.loongarch.lasx.xvavg.hu"]
105    fn __lasx_xvavg_hu(a: __v16u16, b: __v16u16) -> __v16u16;
106    #[link_name = "llvm.loongarch.lasx.xvavg.wu"]
107    fn __lasx_xvavg_wu(a: __v8u32, b: __v8u32) -> __v8u32;
108    #[link_name = "llvm.loongarch.lasx.xvavg.du"]
109    fn __lasx_xvavg_du(a: __v4u64, b: __v4u64) -> __v4u64;
110    #[link_name = "llvm.loongarch.lasx.xvavgr.b"]
111    fn __lasx_xvavgr_b(a: __v32i8, b: __v32i8) -> __v32i8;
112    #[link_name = "llvm.loongarch.lasx.xvavgr.h"]
113    fn __lasx_xvavgr_h(a: __v16i16, b: __v16i16) -> __v16i16;
114    #[link_name = "llvm.loongarch.lasx.xvavgr.w"]
115    fn __lasx_xvavgr_w(a: __v8i32, b: __v8i32) -> __v8i32;
116    #[link_name = "llvm.loongarch.lasx.xvavgr.d"]
117    fn __lasx_xvavgr_d(a: __v4i64, b: __v4i64) -> __v4i64;
118    #[link_name = "llvm.loongarch.lasx.xvavgr.bu"]
119    fn __lasx_xvavgr_bu(a: __v32u8, b: __v32u8) -> __v32u8;
120    #[link_name = "llvm.loongarch.lasx.xvavgr.hu"]
121    fn __lasx_xvavgr_hu(a: __v16u16, b: __v16u16) -> __v16u16;
122    #[link_name = "llvm.loongarch.lasx.xvavgr.wu"]
123    fn __lasx_xvavgr_wu(a: __v8u32, b: __v8u32) -> __v8u32;
124    #[link_name = "llvm.loongarch.lasx.xvavgr.du"]
125    fn __lasx_xvavgr_du(a: __v4u64, b: __v4u64) -> __v4u64;
126    #[link_name = "llvm.loongarch.lasx.xvhaddw.h.b"]
127    fn __lasx_xvhaddw_h_b(a: __v32i8, b: __v32i8) -> __v16i16;
128    #[link_name = "llvm.loongarch.lasx.xvhaddw.w.h"]
129    fn __lasx_xvhaddw_w_h(a: __v16i16, b: __v16i16) -> __v8i32;
130    #[link_name = "llvm.loongarch.lasx.xvhaddw.d.w"]
131    fn __lasx_xvhaddw_d_w(a: __v8i32, b: __v8i32) -> __v4i64;
132    #[link_name = "llvm.loongarch.lasx.xvhaddw.hu.bu"]
133    fn __lasx_xvhaddw_hu_bu(a: __v32u8, b: __v32u8) -> __v16u16;
134    #[link_name = "llvm.loongarch.lasx.xvhaddw.wu.hu"]
135    fn __lasx_xvhaddw_wu_hu(a: __v16u16, b: __v16u16) -> __v8u32;
136    #[link_name = "llvm.loongarch.lasx.xvhaddw.du.wu"]
137    fn __lasx_xvhaddw_du_wu(a: __v8u32, b: __v8u32) -> __v4u64;
138    #[link_name = "llvm.loongarch.lasx.xvhsubw.h.b"]
139    fn __lasx_xvhsubw_h_b(a: __v32i8, b: __v32i8) -> __v16i16;
140    #[link_name = "llvm.loongarch.lasx.xvhsubw.w.h"]
141    fn __lasx_xvhsubw_w_h(a: __v16i16, b: __v16i16) -> __v8i32;
142    #[link_name = "llvm.loongarch.lasx.xvhsubw.d.w"]
143    fn __lasx_xvhsubw_d_w(a: __v8i32, b: __v8i32) -> __v4i64;
144    #[link_name = "llvm.loongarch.lasx.xvhsubw.hu.bu"]
145    fn __lasx_xvhsubw_hu_bu(a: __v32u8, b: __v32u8) -> __v16i16;
146    #[link_name = "llvm.loongarch.lasx.xvhsubw.wu.hu"]
147    fn __lasx_xvhsubw_wu_hu(a: __v16u16, b: __v16u16) -> __v8i32;
148    #[link_name = "llvm.loongarch.lasx.xvhsubw.du.wu"]
149    fn __lasx_xvhsubw_du_wu(a: __v8u32, b: __v8u32) -> __v4i64;
150    #[link_name = "llvm.loongarch.lasx.xvshuf.b"]
151    fn __lasx_xvshuf_b(a: __v32i8, b: __v32i8, c: __v32i8) -> __v32i8;
152    #[link_name = "llvm.loongarch.lasx.xvshuf.h"]
153    fn __lasx_xvshuf_h(a: __v16i16, b: __v16i16, c: __v16i16) -> __v16i16;
154    #[link_name = "llvm.loongarch.lasx.xvshuf.w"]
155    fn __lasx_xvshuf_w(a: __v8i32, b: __v8i32, c: __v8i32) -> __v8i32;
156    #[link_name = "llvm.loongarch.lasx.xvshuf.d"]
157    fn __lasx_xvshuf_d(a: __v4i64, b: __v4i64, c: __v4i64) -> __v4i64;
158    #[link_name = "llvm.loongarch.lasx.xvandi.b"]
159    fn __lasx_xvandi_b(a: __v32u8, b: u32) -> __v32u8;
160    #[link_name = "llvm.loongarch.lasx.xvori.b"]
161    fn __lasx_xvori_b(a: __v32u8, b: u32) -> __v32u8;
162    #[link_name = "llvm.loongarch.lasx.xvnori.b"]
163    fn __lasx_xvnori_b(a: __v32u8, b: u32) -> __v32u8;
164    #[link_name = "llvm.loongarch.lasx.xvxori.b"]
165    fn __lasx_xvxori_b(a: __v32u8, b: u32) -> __v32u8;
166    #[link_name = "llvm.loongarch.lasx.xvbitsel.v"]
167    fn __lasx_xvbitsel_v(a: __v32u8, b: __v32u8, c: __v32u8) -> __v32u8;
168    #[link_name = "llvm.loongarch.lasx.xvbitseli.b"]
169    fn __lasx_xvbitseli_b(a: __v32u8, b: __v32u8, c: u32) -> __v32u8;
170    #[link_name = "llvm.loongarch.lasx.xvclo.b"]
171    fn __lasx_xvclo_b(a: __v32i8) -> __v32i8;
172    #[link_name = "llvm.loongarch.lasx.xvclo.h"]
173    fn __lasx_xvclo_h(a: __v16i16) -> __v16i16;
174    #[link_name = "llvm.loongarch.lasx.xvclo.w"]
175    fn __lasx_xvclo_w(a: __v8i32) -> __v8i32;
176    #[link_name = "llvm.loongarch.lasx.xvclo.d"]
177    fn __lasx_xvclo_d(a: __v4i64) -> __v4i64;
178    #[link_name = "llvm.loongarch.lasx.xvfcvt.h.s"]
179    fn __lasx_xvfcvt_h_s(a: __v8f32, b: __v8f32) -> __v16i16;
180    #[link_name = "llvm.loongarch.lasx.xvfcvt.s.d"]
181    fn __lasx_xvfcvt_s_d(a: __v4f64, b: __v4f64) -> __v8f32;
182    #[link_name = "llvm.loongarch.lasx.xvfmin.s"]
183    fn __lasx_xvfmin_s(a: __v8f32, b: __v8f32) -> __v8f32;
184    #[link_name = "llvm.loongarch.lasx.xvfmin.d"]
185    fn __lasx_xvfmin_d(a: __v4f64, b: __v4f64) -> __v4f64;
186    #[link_name = "llvm.loongarch.lasx.xvfmina.s"]
187    fn __lasx_xvfmina_s(a: __v8f32, b: __v8f32) -> __v8f32;
188    #[link_name = "llvm.loongarch.lasx.xvfmina.d"]
189    fn __lasx_xvfmina_d(a: __v4f64, b: __v4f64) -> __v4f64;
190    #[link_name = "llvm.loongarch.lasx.xvfmax.s"]
191    fn __lasx_xvfmax_s(a: __v8f32, b: __v8f32) -> __v8f32;
192    #[link_name = "llvm.loongarch.lasx.xvfmax.d"]
193    fn __lasx_xvfmax_d(a: __v4f64, b: __v4f64) -> __v4f64;
194    #[link_name = "llvm.loongarch.lasx.xvfmaxa.s"]
195    fn __lasx_xvfmaxa_s(a: __v8f32, b: __v8f32) -> __v8f32;
196    #[link_name = "llvm.loongarch.lasx.xvfmaxa.d"]
197    fn __lasx_xvfmaxa_d(a: __v4f64, b: __v4f64) -> __v4f64;
198    #[link_name = "llvm.loongarch.lasx.xvfclass.s"]
199    fn __lasx_xvfclass_s(a: __v8f32) -> __v8i32;
200    #[link_name = "llvm.loongarch.lasx.xvfclass.d"]
201    fn __lasx_xvfclass_d(a: __v4f64) -> __v4i64;
202    #[link_name = "llvm.loongarch.lasx.xvfrecipe.s"]
203    fn __lasx_xvfrecipe_s(a: __v8f32) -> __v8f32;
204    #[link_name = "llvm.loongarch.lasx.xvfrecipe.d"]
205    fn __lasx_xvfrecipe_d(a: __v4f64) -> __v4f64;
206    #[link_name = "llvm.loongarch.lasx.xvfrsqrte.s"]
207    fn __lasx_xvfrsqrte_s(a: __v8f32) -> __v8f32;
208    #[link_name = "llvm.loongarch.lasx.xvfrsqrte.d"]
209    fn __lasx_xvfrsqrte_d(a: __v4f64) -> __v4f64;
210    #[link_name = "llvm.loongarch.lasx.xvfrint.s"]
211    fn __lasx_xvfrint_s(a: __v8f32) -> __v8f32;
212    #[link_name = "llvm.loongarch.lasx.xvfrint.d"]
213    fn __lasx_xvfrint_d(a: __v4f64) -> __v4f64;
214    #[link_name = "llvm.loongarch.lasx.xvflogb.s"]
215    fn __lasx_xvflogb_s(a: __v8f32) -> __v8f32;
216    #[link_name = "llvm.loongarch.lasx.xvflogb.d"]
217    fn __lasx_xvflogb_d(a: __v4f64) -> __v4f64;
218    #[link_name = "llvm.loongarch.lasx.xvfcvth.s.h"]
219    fn __lasx_xvfcvth_s_h(a: __v16i16) -> __v8f32;
220    #[link_name = "llvm.loongarch.lasx.xvfcvth.d.s"]
221    fn __lasx_xvfcvth_d_s(a: __v8f32) -> __v4f64;
222    #[link_name = "llvm.loongarch.lasx.xvfcvtl.s.h"]
223    fn __lasx_xvfcvtl_s_h(a: __v16i16) -> __v8f32;
224    #[link_name = "llvm.loongarch.lasx.xvfcvtl.d.s"]
225    fn __lasx_xvfcvtl_d_s(a: __v8f32) -> __v4f64;
226    #[link_name = "llvm.loongarch.lasx.xvftint.w.s"]
227    fn __lasx_xvftint_w_s(a: __v8f32) -> __v8i32;
228    #[link_name = "llvm.loongarch.lasx.xvftint.l.d"]
229    fn __lasx_xvftint_l_d(a: __v4f64) -> __v4i64;
230    #[link_name = "llvm.loongarch.lasx.xvftint.wu.s"]
231    fn __lasx_xvftint_wu_s(a: __v8f32) -> __v8u32;
232    #[link_name = "llvm.loongarch.lasx.xvftint.lu.d"]
233    fn __lasx_xvftint_lu_d(a: __v4f64) -> __v4u64;
234    #[link_name = "llvm.loongarch.lasx.xvftintrz.w.s"]
235    fn __lasx_xvftintrz_w_s(a: __v8f32) -> __v8i32;
236    #[link_name = "llvm.loongarch.lasx.xvftintrz.l.d"]
237    fn __lasx_xvftintrz_l_d(a: __v4f64) -> __v4i64;
238    #[link_name = "llvm.loongarch.lasx.xvftintrz.wu.s"]
239    fn __lasx_xvftintrz_wu_s(a: __v8f32) -> __v8u32;
240    #[link_name = "llvm.loongarch.lasx.xvftintrz.lu.d"]
241    fn __lasx_xvftintrz_lu_d(a: __v4f64) -> __v4u64;
242    #[link_name = "llvm.loongarch.lasx.xvffint.s.w"]
243    fn __lasx_xvffint_s_w(a: __v8i32) -> __v8f32;
244    #[link_name = "llvm.loongarch.lasx.xvffint.d.l"]
245    fn __lasx_xvffint_d_l(a: __v4i64) -> __v4f64;
246    #[link_name = "llvm.loongarch.lasx.xvffint.s.wu"]
247    fn __lasx_xvffint_s_wu(a: __v8u32) -> __v8f32;
248    #[link_name = "llvm.loongarch.lasx.xvffint.d.lu"]
249    fn __lasx_xvffint_d_lu(a: __v4u64) -> __v4f64;
250    #[link_name = "llvm.loongarch.lasx.xvreplve.b"]
251    fn __lasx_xvreplve_b(a: __v32i8, b: i32) -> __v32i8;
252    #[link_name = "llvm.loongarch.lasx.xvreplve.h"]
253    fn __lasx_xvreplve_h(a: __v16i16, b: i32) -> __v16i16;
254    #[link_name = "llvm.loongarch.lasx.xvreplve.w"]
255    fn __lasx_xvreplve_w(a: __v8i32, b: i32) -> __v8i32;
256    #[link_name = "llvm.loongarch.lasx.xvreplve.d"]
257    fn __lasx_xvreplve_d(a: __v4i64, b: i32) -> __v4i64;
258    #[link_name = "llvm.loongarch.lasx.xvpermi.w"]
259    fn __lasx_xvpermi_w(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
260    #[link_name = "llvm.loongarch.lasx.xvsllwil.h.b"]
261    fn __lasx_xvsllwil_h_b(a: __v32i8, b: u32) -> __v16i16;
262    #[link_name = "llvm.loongarch.lasx.xvsllwil.w.h"]
263    fn __lasx_xvsllwil_w_h(a: __v16i16, b: u32) -> __v8i32;
264    #[link_name = "llvm.loongarch.lasx.xvsllwil.d.w"]
265    fn __lasx_xvsllwil_d_w(a: __v8i32, b: u32) -> __v4i64;
266    #[link_name = "llvm.loongarch.lasx.xvsllwil.hu.bu"]
267    fn __lasx_xvsllwil_hu_bu(a: __v32u8, b: u32) -> __v16u16;
268    #[link_name = "llvm.loongarch.lasx.xvsllwil.wu.hu"]
269    fn __lasx_xvsllwil_wu_hu(a: __v16u16, b: u32) -> __v8u32;
270    #[link_name = "llvm.loongarch.lasx.xvsllwil.du.wu"]
271    fn __lasx_xvsllwil_du_wu(a: __v8u32, b: u32) -> __v4u64;
272    #[link_name = "llvm.loongarch.lasx.xvsran.b.h"]
273    fn __lasx_xvsran_b_h(a: __v16i16, b: __v16i16) -> __v32i8;
274    #[link_name = "llvm.loongarch.lasx.xvsran.h.w"]
275    fn __lasx_xvsran_h_w(a: __v8i32, b: __v8i32) -> __v16i16;
276    #[link_name = "llvm.loongarch.lasx.xvsran.w.d"]
277    fn __lasx_xvsran_w_d(a: __v4i64, b: __v4i64) -> __v8i32;
278    #[link_name = "llvm.loongarch.lasx.xvssran.b.h"]
279    fn __lasx_xvssran_b_h(a: __v16i16, b: __v16i16) -> __v32i8;
280    #[link_name = "llvm.loongarch.lasx.xvssran.h.w"]
281    fn __lasx_xvssran_h_w(a: __v8i32, b: __v8i32) -> __v16i16;
282    #[link_name = "llvm.loongarch.lasx.xvssran.w.d"]
283    fn __lasx_xvssran_w_d(a: __v4i64, b: __v4i64) -> __v8i32;
284    #[link_name = "llvm.loongarch.lasx.xvssran.bu.h"]
285    fn __lasx_xvssran_bu_h(a: __v16u16, b: __v16u16) -> __v32u8;
286    #[link_name = "llvm.loongarch.lasx.xvssran.hu.w"]
287    fn __lasx_xvssran_hu_w(a: __v8u32, b: __v8u32) -> __v16u16;
288    #[link_name = "llvm.loongarch.lasx.xvssran.wu.d"]
289    fn __lasx_xvssran_wu_d(a: __v4u64, b: __v4u64) -> __v8u32;
290    #[link_name = "llvm.loongarch.lasx.xvsrarn.b.h"]
291    fn __lasx_xvsrarn_b_h(a: __v16i16, b: __v16i16) -> __v32i8;
292    #[link_name = "llvm.loongarch.lasx.xvsrarn.h.w"]
293    fn __lasx_xvsrarn_h_w(a: __v8i32, b: __v8i32) -> __v16i16;
294    #[link_name = "llvm.loongarch.lasx.xvsrarn.w.d"]
295    fn __lasx_xvsrarn_w_d(a: __v4i64, b: __v4i64) -> __v8i32;
296    #[link_name = "llvm.loongarch.lasx.xvssrarn.b.h"]
297    fn __lasx_xvssrarn_b_h(a: __v16i16, b: __v16i16) -> __v32i8;
298    #[link_name = "llvm.loongarch.lasx.xvssrarn.h.w"]
299    fn __lasx_xvssrarn_h_w(a: __v8i32, b: __v8i32) -> __v16i16;
300    #[link_name = "llvm.loongarch.lasx.xvssrarn.w.d"]
301    fn __lasx_xvssrarn_w_d(a: __v4i64, b: __v4i64) -> __v8i32;
302    #[link_name = "llvm.loongarch.lasx.xvssrarn.bu.h"]
303    fn __lasx_xvssrarn_bu_h(a: __v16u16, b: __v16u16) -> __v32u8;
304    #[link_name = "llvm.loongarch.lasx.xvssrarn.hu.w"]
305    fn __lasx_xvssrarn_hu_w(a: __v8u32, b: __v8u32) -> __v16u16;
306    #[link_name = "llvm.loongarch.lasx.xvssrarn.wu.d"]
307    fn __lasx_xvssrarn_wu_d(a: __v4u64, b: __v4u64) -> __v8u32;
308    #[link_name = "llvm.loongarch.lasx.xvsrln.b.h"]
309    fn __lasx_xvsrln_b_h(a: __v16i16, b: __v16i16) -> __v32i8;
310    #[link_name = "llvm.loongarch.lasx.xvsrln.h.w"]
311    fn __lasx_xvsrln_h_w(a: __v8i32, b: __v8i32) -> __v16i16;
312    #[link_name = "llvm.loongarch.lasx.xvsrln.w.d"]
313    fn __lasx_xvsrln_w_d(a: __v4i64, b: __v4i64) -> __v8i32;
314    #[link_name = "llvm.loongarch.lasx.xvssrln.bu.h"]
315    fn __lasx_xvssrln_bu_h(a: __v16u16, b: __v16u16) -> __v32u8;
316    #[link_name = "llvm.loongarch.lasx.xvssrln.hu.w"]
317    fn __lasx_xvssrln_hu_w(a: __v8u32, b: __v8u32) -> __v16u16;
318    #[link_name = "llvm.loongarch.lasx.xvssrln.wu.d"]
319    fn __lasx_xvssrln_wu_d(a: __v4u64, b: __v4u64) -> __v8u32;
320    #[link_name = "llvm.loongarch.lasx.xvsrlrn.b.h"]
321    fn __lasx_xvsrlrn_b_h(a: __v16i16, b: __v16i16) -> __v32i8;
322    #[link_name = "llvm.loongarch.lasx.xvsrlrn.h.w"]
323    fn __lasx_xvsrlrn_h_w(a: __v8i32, b: __v8i32) -> __v16i16;
324    #[link_name = "llvm.loongarch.lasx.xvsrlrn.w.d"]
325    fn __lasx_xvsrlrn_w_d(a: __v4i64, b: __v4i64) -> __v8i32;
326    #[link_name = "llvm.loongarch.lasx.xvssrlrn.bu.h"]
327    fn __lasx_xvssrlrn_bu_h(a: __v16u16, b: __v16u16) -> __v32u8;
328    #[link_name = "llvm.loongarch.lasx.xvssrlrn.hu.w"]
329    fn __lasx_xvssrlrn_hu_w(a: __v8u32, b: __v8u32) -> __v16u16;
330    #[link_name = "llvm.loongarch.lasx.xvssrlrn.wu.d"]
331    fn __lasx_xvssrlrn_wu_d(a: __v4u64, b: __v4u64) -> __v8u32;
332    #[link_name = "llvm.loongarch.lasx.xvfrstpi.b"]
333    fn __lasx_xvfrstpi_b(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
334    #[link_name = "llvm.loongarch.lasx.xvfrstpi.h"]
335    fn __lasx_xvfrstpi_h(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
336    #[link_name = "llvm.loongarch.lasx.xvfrstp.b"]
337    fn __lasx_xvfrstp_b(a: __v32i8, b: __v32i8, c: __v32i8) -> __v32i8;
338    #[link_name = "llvm.loongarch.lasx.xvfrstp.h"]
339    fn __lasx_xvfrstp_h(a: __v16i16, b: __v16i16, c: __v16i16) -> __v16i16;
340    #[link_name = "llvm.loongarch.lasx.xvshuf4i.d"]
341    fn __lasx_xvshuf4i_d(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
342    #[link_name = "llvm.loongarch.lasx.xvbsrl.v"]
343    fn __lasx_xvbsrl_v(a: __v32i8, b: u32) -> __v32i8;
344    #[link_name = "llvm.loongarch.lasx.xvbsll.v"]
345    fn __lasx_xvbsll_v(a: __v32i8, b: u32) -> __v32i8;
346    #[link_name = "llvm.loongarch.lasx.xvextrins.b"]
347    fn __lasx_xvextrins_b(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
348    #[link_name = "llvm.loongarch.lasx.xvextrins.h"]
349    fn __lasx_xvextrins_h(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
350    #[link_name = "llvm.loongarch.lasx.xvextrins.w"]
351    fn __lasx_xvextrins_w(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
352    #[link_name = "llvm.loongarch.lasx.xvextrins.d"]
353    fn __lasx_xvextrins_d(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
354    #[link_name = "llvm.loongarch.lasx.xvmskltz.b"]
355    fn __lasx_xvmskltz_b(a: __v32i8) -> __v32i8;
356    #[link_name = "llvm.loongarch.lasx.xvmskltz.h"]
357    fn __lasx_xvmskltz_h(a: __v16i16) -> __v16i16;
358    #[link_name = "llvm.loongarch.lasx.xvmskltz.w"]
359    fn __lasx_xvmskltz_w(a: __v8i32) -> __v8i32;
360    #[link_name = "llvm.loongarch.lasx.xvmskltz.d"]
361    fn __lasx_xvmskltz_d(a: __v4i64) -> __v4i64;
362    #[link_name = "llvm.loongarch.lasx.xvsigncov.b"]
363    fn __lasx_xvsigncov_b(a: __v32i8, b: __v32i8) -> __v32i8;
364    #[link_name = "llvm.loongarch.lasx.xvsigncov.h"]
365    fn __lasx_xvsigncov_h(a: __v16i16, b: __v16i16) -> __v16i16;
366    #[link_name = "llvm.loongarch.lasx.xvsigncov.w"]
367    fn __lasx_xvsigncov_w(a: __v8i32, b: __v8i32) -> __v8i32;
368    #[link_name = "llvm.loongarch.lasx.xvsigncov.d"]
369    fn __lasx_xvsigncov_d(a: __v4i64, b: __v4i64) -> __v4i64;
370    #[link_name = "llvm.loongarch.lasx.xvftintrne.w.s"]
371    fn __lasx_xvftintrne_w_s(a: __v8f32) -> __v8i32;
372    #[link_name = "llvm.loongarch.lasx.xvftintrne.l.d"]
373    fn __lasx_xvftintrne_l_d(a: __v4f64) -> __v4i64;
374    #[link_name = "llvm.loongarch.lasx.xvftintrp.w.s"]
375    fn __lasx_xvftintrp_w_s(a: __v8f32) -> __v8i32;
376    #[link_name = "llvm.loongarch.lasx.xvftintrp.l.d"]
377    fn __lasx_xvftintrp_l_d(a: __v4f64) -> __v4i64;
378    #[link_name = "llvm.loongarch.lasx.xvftintrm.w.s"]
379    fn __lasx_xvftintrm_w_s(a: __v8f32) -> __v8i32;
380    #[link_name = "llvm.loongarch.lasx.xvftintrm.l.d"]
381    fn __lasx_xvftintrm_l_d(a: __v4f64) -> __v4i64;
382    #[link_name = "llvm.loongarch.lasx.xvftint.w.d"]
383    fn __lasx_xvftint_w_d(a: __v4f64, b: __v4f64) -> __v8i32;
384    #[link_name = "llvm.loongarch.lasx.xvffint.s.l"]
385    fn __lasx_xvffint_s_l(a: __v4i64, b: __v4i64) -> __v8f32;
386    #[link_name = "llvm.loongarch.lasx.xvftintrz.w.d"]
387    fn __lasx_xvftintrz_w_d(a: __v4f64, b: __v4f64) -> __v8i32;
388    #[link_name = "llvm.loongarch.lasx.xvftintrp.w.d"]
389    fn __lasx_xvftintrp_w_d(a: __v4f64, b: __v4f64) -> __v8i32;
390    #[link_name = "llvm.loongarch.lasx.xvftintrm.w.d"]
391    fn __lasx_xvftintrm_w_d(a: __v4f64, b: __v4f64) -> __v8i32;
392    #[link_name = "llvm.loongarch.lasx.xvftintrne.w.d"]
393    fn __lasx_xvftintrne_w_d(a: __v4f64, b: __v4f64) -> __v8i32;
394    #[link_name = "llvm.loongarch.lasx.xvftinth.l.s"]
395    fn __lasx_xvftinth_l_s(a: __v8f32) -> __v4i64;
396    #[link_name = "llvm.loongarch.lasx.xvftintl.l.s"]
397    fn __lasx_xvftintl_l_s(a: __v8f32) -> __v4i64;
398    #[link_name = "llvm.loongarch.lasx.xvffinth.d.w"]
399    fn __lasx_xvffinth_d_w(a: __v8i32) -> __v4f64;
400    #[link_name = "llvm.loongarch.lasx.xvffintl.d.w"]
401    fn __lasx_xvffintl_d_w(a: __v8i32) -> __v4f64;
402    #[link_name = "llvm.loongarch.lasx.xvftintrzh.l.s"]
403    fn __lasx_xvftintrzh_l_s(a: __v8f32) -> __v4i64;
404    #[link_name = "llvm.loongarch.lasx.xvftintrzl.l.s"]
405    fn __lasx_xvftintrzl_l_s(a: __v8f32) -> __v4i64;
406    #[link_name = "llvm.loongarch.lasx.xvftintrph.l.s"]
407    fn __lasx_xvftintrph_l_s(a: __v8f32) -> __v4i64;
408    #[link_name = "llvm.loongarch.lasx.xvftintrpl.l.s"]
409    fn __lasx_xvftintrpl_l_s(a: __v8f32) -> __v4i64;
410    #[link_name = "llvm.loongarch.lasx.xvftintrmh.l.s"]
411    fn __lasx_xvftintrmh_l_s(a: __v8f32) -> __v4i64;
412    #[link_name = "llvm.loongarch.lasx.xvftintrml.l.s"]
413    fn __lasx_xvftintrml_l_s(a: __v8f32) -> __v4i64;
414    #[link_name = "llvm.loongarch.lasx.xvftintrneh.l.s"]
415    fn __lasx_xvftintrneh_l_s(a: __v8f32) -> __v4i64;
416    #[link_name = "llvm.loongarch.lasx.xvftintrnel.l.s"]
417    fn __lasx_xvftintrnel_l_s(a: __v8f32) -> __v4i64;
418    #[link_name = "llvm.loongarch.lasx.xvfrintrne.s"]
419    fn __lasx_xvfrintrne_s(a: __v8f32) -> __v8f32;
420    #[link_name = "llvm.loongarch.lasx.xvfrintrne.d"]
421    fn __lasx_xvfrintrne_d(a: __v4f64) -> __v4f64;
422    #[link_name = "llvm.loongarch.lasx.xvstelm.b"]
423    fn __lasx_xvstelm_b(a: __v32i8, b: *mut i8, c: i32, d: u32);
424    #[link_name = "llvm.loongarch.lasx.xvstelm.h"]
425    fn __lasx_xvstelm_h(a: __v16i16, b: *mut i8, c: i32, d: u32);
426    #[link_name = "llvm.loongarch.lasx.xvstelm.w"]
427    fn __lasx_xvstelm_w(a: __v8i32, b: *mut i8, c: i32, d: u32);
428    #[link_name = "llvm.loongarch.lasx.xvstelm.d"]
429    fn __lasx_xvstelm_d(a: __v4i64, b: *mut i8, c: i32, d: u32);
430    #[link_name = "llvm.loongarch.lasx.xvinsve0.w"]
431    fn __lasx_xvinsve0_w(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
432    #[link_name = "llvm.loongarch.lasx.xvinsve0.d"]
433    fn __lasx_xvinsve0_d(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
434    #[link_name = "llvm.loongarch.lasx.xvpickve.w"]
435    fn __lasx_xvpickve_w(a: __v8i32, b: u32) -> __v8i32;
436    #[link_name = "llvm.loongarch.lasx.xvpickve.d"]
437    fn __lasx_xvpickve_d(a: __v4i64, b: u32) -> __v4i64;
438    #[link_name = "llvm.loongarch.lasx.xvssrlrn.b.h"]
439    fn __lasx_xvssrlrn_b_h(a: __v16i16, b: __v16i16) -> __v32i8;
440    #[link_name = "llvm.loongarch.lasx.xvssrlrn.h.w"]
441    fn __lasx_xvssrlrn_h_w(a: __v8i32, b: __v8i32) -> __v16i16;
442    #[link_name = "llvm.loongarch.lasx.xvssrlrn.w.d"]
443    fn __lasx_xvssrlrn_w_d(a: __v4i64, b: __v4i64) -> __v8i32;
444    #[link_name = "llvm.loongarch.lasx.xvssrln.b.h"]
445    fn __lasx_xvssrln_b_h(a: __v16i16, b: __v16i16) -> __v32i8;
446    #[link_name = "llvm.loongarch.lasx.xvssrln.h.w"]
447    fn __lasx_xvssrln_h_w(a: __v8i32, b: __v8i32) -> __v16i16;
448    #[link_name = "llvm.loongarch.lasx.xvssrln.w.d"]
449    fn __lasx_xvssrln_w_d(a: __v4i64, b: __v4i64) -> __v8i32;
450    #[link_name = "llvm.loongarch.lasx.xvldi"]
451    fn __lasx_xvldi(a: i32) -> __v4i64;
452    #[link_name = "llvm.loongarch.lasx.xvextl.qu.du"]
453    fn __lasx_xvextl_qu_du(a: __v4u64) -> __v4u64;
454    #[link_name = "llvm.loongarch.lasx.vext2xv.h.b"]
455    fn __lasx_vext2xv_h_b(a: __v32i8) -> __v16i16;
456    #[link_name = "llvm.loongarch.lasx.vext2xv.w.h"]
457    fn __lasx_vext2xv_w_h(a: __v16i16) -> __v8i32;
458    #[link_name = "llvm.loongarch.lasx.vext2xv.d.w"]
459    fn __lasx_vext2xv_d_w(a: __v8i32) -> __v4i64;
460    #[link_name = "llvm.loongarch.lasx.vext2xv.w.b"]
461    fn __lasx_vext2xv_w_b(a: __v32i8) -> __v8i32;
462    #[link_name = "llvm.loongarch.lasx.vext2xv.d.h"]
463    fn __lasx_vext2xv_d_h(a: __v16i16) -> __v4i64;
464    #[link_name = "llvm.loongarch.lasx.vext2xv.d.b"]
465    fn __lasx_vext2xv_d_b(a: __v32i8) -> __v4i64;
466    #[link_name = "llvm.loongarch.lasx.vext2xv.hu.bu"]
467    fn __lasx_vext2xv_hu_bu(a: __v32i8) -> __v16i16;
468    #[link_name = "llvm.loongarch.lasx.vext2xv.wu.hu"]
469    fn __lasx_vext2xv_wu_hu(a: __v16i16) -> __v8i32;
470    #[link_name = "llvm.loongarch.lasx.vext2xv.du.wu"]
471    fn __lasx_vext2xv_du_wu(a: __v8i32) -> __v4i64;
472    #[link_name = "llvm.loongarch.lasx.vext2xv.wu.bu"]
473    fn __lasx_vext2xv_wu_bu(a: __v32i8) -> __v8i32;
474    #[link_name = "llvm.loongarch.lasx.vext2xv.du.hu"]
475    fn __lasx_vext2xv_du_hu(a: __v16i16) -> __v4i64;
476    #[link_name = "llvm.loongarch.lasx.vext2xv.du.bu"]
477    fn __lasx_vext2xv_du_bu(a: __v32i8) -> __v4i64;
478    #[link_name = "llvm.loongarch.lasx.xvpermi.q"]
479    fn __lasx_xvpermi_q(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
480    #[link_name = "llvm.loongarch.lasx.xvpermi.d"]
481    fn __lasx_xvpermi_d(a: __v4i64, b: u32) -> __v4i64;
482    #[link_name = "llvm.loongarch.lasx.xvperm.w"]
483    fn __lasx_xvperm_w(a: __v8i32, b: __v8i32) -> __v8i32;
484    #[link_name = "llvm.loongarch.lasx.xvldrepl.b"]
485    fn __lasx_xvldrepl_b(a: *const i8, b: i32) -> __v32i8;
486    #[link_name = "llvm.loongarch.lasx.xvldrepl.h"]
487    fn __lasx_xvldrepl_h(a: *const i8, b: i32) -> __v16i16;
488    #[link_name = "llvm.loongarch.lasx.xvldrepl.w"]
489    fn __lasx_xvldrepl_w(a: *const i8, b: i32) -> __v8i32;
490    #[link_name = "llvm.loongarch.lasx.xvldrepl.d"]
491    fn __lasx_xvldrepl_d(a: *const i8, b: i32) -> __v4i64;
492    #[link_name = "llvm.loongarch.lasx.xvaddwev.q.d"]
493    fn __lasx_xvaddwev_q_d(a: __v4i64, b: __v4i64) -> __v4i64;
494    #[link_name = "llvm.loongarch.lasx.xvaddwev.d.w"]
495    fn __lasx_xvaddwev_d_w(a: __v8i32, b: __v8i32) -> __v4i64;
496    #[link_name = "llvm.loongarch.lasx.xvaddwev.w.h"]
497    fn __lasx_xvaddwev_w_h(a: __v16i16, b: __v16i16) -> __v8i32;
498    #[link_name = "llvm.loongarch.lasx.xvaddwev.h.b"]
499    fn __lasx_xvaddwev_h_b(a: __v32i8, b: __v32i8) -> __v16i16;
500    #[link_name = "llvm.loongarch.lasx.xvaddwev.q.du"]
501    fn __lasx_xvaddwev_q_du(a: __v4u64, b: __v4u64) -> __v4i64;
502    #[link_name = "llvm.loongarch.lasx.xvaddwev.d.wu"]
503    fn __lasx_xvaddwev_d_wu(a: __v8u32, b: __v8u32) -> __v4i64;
504    #[link_name = "llvm.loongarch.lasx.xvaddwev.w.hu"]
505    fn __lasx_xvaddwev_w_hu(a: __v16u16, b: __v16u16) -> __v8i32;
506    #[link_name = "llvm.loongarch.lasx.xvaddwev.h.bu"]
507    fn __lasx_xvaddwev_h_bu(a: __v32u8, b: __v32u8) -> __v16i16;
508    #[link_name = "llvm.loongarch.lasx.xvsubwev.q.d"]
509    fn __lasx_xvsubwev_q_d(a: __v4i64, b: __v4i64) -> __v4i64;
510    #[link_name = "llvm.loongarch.lasx.xvsubwev.d.w"]
511    fn __lasx_xvsubwev_d_w(a: __v8i32, b: __v8i32) -> __v4i64;
512    #[link_name = "llvm.loongarch.lasx.xvsubwev.w.h"]
513    fn __lasx_xvsubwev_w_h(a: __v16i16, b: __v16i16) -> __v8i32;
514    #[link_name = "llvm.loongarch.lasx.xvsubwev.h.b"]
515    fn __lasx_xvsubwev_h_b(a: __v32i8, b: __v32i8) -> __v16i16;
516    #[link_name = "llvm.loongarch.lasx.xvsubwev.q.du"]
517    fn __lasx_xvsubwev_q_du(a: __v4u64, b: __v4u64) -> __v4i64;
518    #[link_name = "llvm.loongarch.lasx.xvsubwev.d.wu"]
519    fn __lasx_xvsubwev_d_wu(a: __v8u32, b: __v8u32) -> __v4i64;
520    #[link_name = "llvm.loongarch.lasx.xvsubwev.w.hu"]
521    fn __lasx_xvsubwev_w_hu(a: __v16u16, b: __v16u16) -> __v8i32;
522    #[link_name = "llvm.loongarch.lasx.xvsubwev.h.bu"]
523    fn __lasx_xvsubwev_h_bu(a: __v32u8, b: __v32u8) -> __v16i16;
524    #[link_name = "llvm.loongarch.lasx.xvmulwev.q.d"]
525    fn __lasx_xvmulwev_q_d(a: __v4i64, b: __v4i64) -> __v4i64;
526    #[link_name = "llvm.loongarch.lasx.xvmulwev.d.w"]
527    fn __lasx_xvmulwev_d_w(a: __v8i32, b: __v8i32) -> __v4i64;
528    #[link_name = "llvm.loongarch.lasx.xvmulwev.w.h"]
529    fn __lasx_xvmulwev_w_h(a: __v16i16, b: __v16i16) -> __v8i32;
530    #[link_name = "llvm.loongarch.lasx.xvmulwev.h.b"]
531    fn __lasx_xvmulwev_h_b(a: __v32i8, b: __v32i8) -> __v16i16;
532    #[link_name = "llvm.loongarch.lasx.xvmulwev.q.du"]
533    fn __lasx_xvmulwev_q_du(a: __v4u64, b: __v4u64) -> __v4i64;
534    #[link_name = "llvm.loongarch.lasx.xvmulwev.d.wu"]
535    fn __lasx_xvmulwev_d_wu(a: __v8u32, b: __v8u32) -> __v4i64;
536    #[link_name = "llvm.loongarch.lasx.xvmulwev.w.hu"]
537    fn __lasx_xvmulwev_w_hu(a: __v16u16, b: __v16u16) -> __v8i32;
538    #[link_name = "llvm.loongarch.lasx.xvmulwev.h.bu"]
539    fn __lasx_xvmulwev_h_bu(a: __v32u8, b: __v32u8) -> __v16i16;
540    #[link_name = "llvm.loongarch.lasx.xvaddwod.q.d"]
541    fn __lasx_xvaddwod_q_d(a: __v4i64, b: __v4i64) -> __v4i64;
542    #[link_name = "llvm.loongarch.lasx.xvaddwod.d.w"]
543    fn __lasx_xvaddwod_d_w(a: __v8i32, b: __v8i32) -> __v4i64;
544    #[link_name = "llvm.loongarch.lasx.xvaddwod.w.h"]
545    fn __lasx_xvaddwod_w_h(a: __v16i16, b: __v16i16) -> __v8i32;
546    #[link_name = "llvm.loongarch.lasx.xvaddwod.h.b"]
547    fn __lasx_xvaddwod_h_b(a: __v32i8, b: __v32i8) -> __v16i16;
548    #[link_name = "llvm.loongarch.lasx.xvaddwod.q.du"]
549    fn __lasx_xvaddwod_q_du(a: __v4u64, b: __v4u64) -> __v4i64;
550    #[link_name = "llvm.loongarch.lasx.xvaddwod.d.wu"]
551    fn __lasx_xvaddwod_d_wu(a: __v8u32, b: __v8u32) -> __v4i64;
552    #[link_name = "llvm.loongarch.lasx.xvaddwod.w.hu"]
553    fn __lasx_xvaddwod_w_hu(a: __v16u16, b: __v16u16) -> __v8i32;
554    #[link_name = "llvm.loongarch.lasx.xvaddwod.h.bu"]
555    fn __lasx_xvaddwod_h_bu(a: __v32u8, b: __v32u8) -> __v16i16;
556    #[link_name = "llvm.loongarch.lasx.xvsubwod.q.d"]
557    fn __lasx_xvsubwod_q_d(a: __v4i64, b: __v4i64) -> __v4i64;
558    #[link_name = "llvm.loongarch.lasx.xvsubwod.d.w"]
559    fn __lasx_xvsubwod_d_w(a: __v8i32, b: __v8i32) -> __v4i64;
560    #[link_name = "llvm.loongarch.lasx.xvsubwod.w.h"]
561    fn __lasx_xvsubwod_w_h(a: __v16i16, b: __v16i16) -> __v8i32;
562    #[link_name = "llvm.loongarch.lasx.xvsubwod.h.b"]
563    fn __lasx_xvsubwod_h_b(a: __v32i8, b: __v32i8) -> __v16i16;
564    #[link_name = "llvm.loongarch.lasx.xvsubwod.q.du"]
565    fn __lasx_xvsubwod_q_du(a: __v4u64, b: __v4u64) -> __v4i64;
566    #[link_name = "llvm.loongarch.lasx.xvsubwod.d.wu"]
567    fn __lasx_xvsubwod_d_wu(a: __v8u32, b: __v8u32) -> __v4i64;
568    #[link_name = "llvm.loongarch.lasx.xvsubwod.w.hu"]
569    fn __lasx_xvsubwod_w_hu(a: __v16u16, b: __v16u16) -> __v8i32;
570    #[link_name = "llvm.loongarch.lasx.xvsubwod.h.bu"]
571    fn __lasx_xvsubwod_h_bu(a: __v32u8, b: __v32u8) -> __v16i16;
572    #[link_name = "llvm.loongarch.lasx.xvmulwod.q.d"]
573    fn __lasx_xvmulwod_q_d(a: __v4i64, b: __v4i64) -> __v4i64;
574    #[link_name = "llvm.loongarch.lasx.xvmulwod.d.w"]
575    fn __lasx_xvmulwod_d_w(a: __v8i32, b: __v8i32) -> __v4i64;
576    #[link_name = "llvm.loongarch.lasx.xvmulwod.w.h"]
577    fn __lasx_xvmulwod_w_h(a: __v16i16, b: __v16i16) -> __v8i32;
578    #[link_name = "llvm.loongarch.lasx.xvmulwod.h.b"]
579    fn __lasx_xvmulwod_h_b(a: __v32i8, b: __v32i8) -> __v16i16;
580    #[link_name = "llvm.loongarch.lasx.xvmulwod.q.du"]
581    fn __lasx_xvmulwod_q_du(a: __v4u64, b: __v4u64) -> __v4i64;
582    #[link_name = "llvm.loongarch.lasx.xvmulwod.d.wu"]
583    fn __lasx_xvmulwod_d_wu(a: __v8u32, b: __v8u32) -> __v4i64;
584    #[link_name = "llvm.loongarch.lasx.xvmulwod.w.hu"]
585    fn __lasx_xvmulwod_w_hu(a: __v16u16, b: __v16u16) -> __v8i32;
586    #[link_name = "llvm.loongarch.lasx.xvmulwod.h.bu"]
587    fn __lasx_xvmulwod_h_bu(a: __v32u8, b: __v32u8) -> __v16i16;
588    #[link_name = "llvm.loongarch.lasx.xvaddwev.d.wu.w"]
589    fn __lasx_xvaddwev_d_wu_w(a: __v8u32, b: __v8i32) -> __v4i64;
590    #[link_name = "llvm.loongarch.lasx.xvaddwev.w.hu.h"]
591    fn __lasx_xvaddwev_w_hu_h(a: __v16u16, b: __v16i16) -> __v8i32;
592    #[link_name = "llvm.loongarch.lasx.xvaddwev.h.bu.b"]
593    fn __lasx_xvaddwev_h_bu_b(a: __v32u8, b: __v32i8) -> __v16i16;
594    #[link_name = "llvm.loongarch.lasx.xvmulwev.d.wu.w"]
595    fn __lasx_xvmulwev_d_wu_w(a: __v8u32, b: __v8i32) -> __v4i64;
596    #[link_name = "llvm.loongarch.lasx.xvmulwev.w.hu.h"]
597    fn __lasx_xvmulwev_w_hu_h(a: __v16u16, b: __v16i16) -> __v8i32;
598    #[link_name = "llvm.loongarch.lasx.xvmulwev.h.bu.b"]
599    fn __lasx_xvmulwev_h_bu_b(a: __v32u8, b: __v32i8) -> __v16i16;
600    #[link_name = "llvm.loongarch.lasx.xvaddwod.d.wu.w"]
601    fn __lasx_xvaddwod_d_wu_w(a: __v8u32, b: __v8i32) -> __v4i64;
602    #[link_name = "llvm.loongarch.lasx.xvaddwod.w.hu.h"]
603    fn __lasx_xvaddwod_w_hu_h(a: __v16u16, b: __v16i16) -> __v8i32;
604    #[link_name = "llvm.loongarch.lasx.xvaddwod.h.bu.b"]
605    fn __lasx_xvaddwod_h_bu_b(a: __v32u8, b: __v32i8) -> __v16i16;
606    #[link_name = "llvm.loongarch.lasx.xvmulwod.d.wu.w"]
607    fn __lasx_xvmulwod_d_wu_w(a: __v8u32, b: __v8i32) -> __v4i64;
608    #[link_name = "llvm.loongarch.lasx.xvmulwod.w.hu.h"]
609    fn __lasx_xvmulwod_w_hu_h(a: __v16u16, b: __v16i16) -> __v8i32;
610    #[link_name = "llvm.loongarch.lasx.xvmulwod.h.bu.b"]
611    fn __lasx_xvmulwod_h_bu_b(a: __v32u8, b: __v32i8) -> __v16i16;
612    #[link_name = "llvm.loongarch.lasx.xvhaddw.q.d"]
613    fn __lasx_xvhaddw_q_d(a: __v4i64, b: __v4i64) -> __v4i64;
614    #[link_name = "llvm.loongarch.lasx.xvhaddw.qu.du"]
615    fn __lasx_xvhaddw_qu_du(a: __v4u64, b: __v4u64) -> __v4u64;
616    #[link_name = "llvm.loongarch.lasx.xvhsubw.q.d"]
617    fn __lasx_xvhsubw_q_d(a: __v4i64, b: __v4i64) -> __v4i64;
618    #[link_name = "llvm.loongarch.lasx.xvhsubw.qu.du"]
619    fn __lasx_xvhsubw_qu_du(a: __v4u64, b: __v4u64) -> __v4u64;
620    #[link_name = "llvm.loongarch.lasx.xvmaddwev.q.d"]
621    fn __lasx_xvmaddwev_q_d(a: __v4i64, b: __v4i64, c: __v4i64) -> __v4i64;
622    #[link_name = "llvm.loongarch.lasx.xvmaddwev.d.w"]
623    fn __lasx_xvmaddwev_d_w(a: __v4i64, b: __v8i32, c: __v8i32) -> __v4i64;
624    #[link_name = "llvm.loongarch.lasx.xvmaddwev.w.h"]
625    fn __lasx_xvmaddwev_w_h(a: __v8i32, b: __v16i16, c: __v16i16) -> __v8i32;
626    #[link_name = "llvm.loongarch.lasx.xvmaddwev.h.b"]
627    fn __lasx_xvmaddwev_h_b(a: __v16i16, b: __v32i8, c: __v32i8) -> __v16i16;
628    #[link_name = "llvm.loongarch.lasx.xvmaddwev.q.du"]
629    fn __lasx_xvmaddwev_q_du(a: __v4u64, b: __v4u64, c: __v4u64) -> __v4u64;
630    #[link_name = "llvm.loongarch.lasx.xvmaddwev.d.wu"]
631    fn __lasx_xvmaddwev_d_wu(a: __v4u64, b: __v8u32, c: __v8u32) -> __v4u64;
632    #[link_name = "llvm.loongarch.lasx.xvmaddwev.w.hu"]
633    fn __lasx_xvmaddwev_w_hu(a: __v8u32, b: __v16u16, c: __v16u16) -> __v8u32;
634    #[link_name = "llvm.loongarch.lasx.xvmaddwev.h.bu"]
635    fn __lasx_xvmaddwev_h_bu(a: __v16u16, b: __v32u8, c: __v32u8) -> __v16u16;
636    #[link_name = "llvm.loongarch.lasx.xvmaddwod.q.d"]
637    fn __lasx_xvmaddwod_q_d(a: __v4i64, b: __v4i64, c: __v4i64) -> __v4i64;
638    #[link_name = "llvm.loongarch.lasx.xvmaddwod.d.w"]
639    fn __lasx_xvmaddwod_d_w(a: __v4i64, b: __v8i32, c: __v8i32) -> __v4i64;
640    #[link_name = "llvm.loongarch.lasx.xvmaddwod.w.h"]
641    fn __lasx_xvmaddwod_w_h(a: __v8i32, b: __v16i16, c: __v16i16) -> __v8i32;
642    #[link_name = "llvm.loongarch.lasx.xvmaddwod.h.b"]
643    fn __lasx_xvmaddwod_h_b(a: __v16i16, b: __v32i8, c: __v32i8) -> __v16i16;
644    #[link_name = "llvm.loongarch.lasx.xvmaddwod.q.du"]
645    fn __lasx_xvmaddwod_q_du(a: __v4u64, b: __v4u64, c: __v4u64) -> __v4u64;
646    #[link_name = "llvm.loongarch.lasx.xvmaddwod.d.wu"]
647    fn __lasx_xvmaddwod_d_wu(a: __v4u64, b: __v8u32, c: __v8u32) -> __v4u64;
648    #[link_name = "llvm.loongarch.lasx.xvmaddwod.w.hu"]
649    fn __lasx_xvmaddwod_w_hu(a: __v8u32, b: __v16u16, c: __v16u16) -> __v8u32;
650    #[link_name = "llvm.loongarch.lasx.xvmaddwod.h.bu"]
651    fn __lasx_xvmaddwod_h_bu(a: __v16u16, b: __v32u8, c: __v32u8) -> __v16u16;
652    #[link_name = "llvm.loongarch.lasx.xvmaddwev.q.du.d"]
653    fn __lasx_xvmaddwev_q_du_d(a: __v4i64, b: __v4u64, c: __v4i64) -> __v4i64;
654    #[link_name = "llvm.loongarch.lasx.xvmaddwev.d.wu.w"]
655    fn __lasx_xvmaddwev_d_wu_w(a: __v4i64, b: __v8u32, c: __v8i32) -> __v4i64;
656    #[link_name = "llvm.loongarch.lasx.xvmaddwev.w.hu.h"]
657    fn __lasx_xvmaddwev_w_hu_h(a: __v8i32, b: __v16u16, c: __v16i16) -> __v8i32;
658    #[link_name = "llvm.loongarch.lasx.xvmaddwev.h.bu.b"]
659    fn __lasx_xvmaddwev_h_bu_b(a: __v16i16, b: __v32u8, c: __v32i8) -> __v16i16;
660    #[link_name = "llvm.loongarch.lasx.xvmaddwod.q.du.d"]
661    fn __lasx_xvmaddwod_q_du_d(a: __v4i64, b: __v4u64, c: __v4i64) -> __v4i64;
662    #[link_name = "llvm.loongarch.lasx.xvmaddwod.d.wu.w"]
663    fn __lasx_xvmaddwod_d_wu_w(a: __v4i64, b: __v8u32, c: __v8i32) -> __v4i64;
664    #[link_name = "llvm.loongarch.lasx.xvmaddwod.w.hu.h"]
665    fn __lasx_xvmaddwod_w_hu_h(a: __v8i32, b: __v16u16, c: __v16i16) -> __v8i32;
666    #[link_name = "llvm.loongarch.lasx.xvmaddwod.h.bu.b"]
667    fn __lasx_xvmaddwod_h_bu_b(a: __v16i16, b: __v32u8, c: __v32i8) -> __v16i16;
668    #[link_name = "llvm.loongarch.lasx.xvadd.q"]
669    fn __lasx_xvadd_q(a: __v4i64, b: __v4i64) -> __v4i64;
670    #[link_name = "llvm.loongarch.lasx.xvsub.q"]
671    fn __lasx_xvsub_q(a: __v4i64, b: __v4i64) -> __v4i64;
672    #[link_name = "llvm.loongarch.lasx.xvaddwev.q.du.d"]
673    fn __lasx_xvaddwev_q_du_d(a: __v4u64, b: __v4i64) -> __v4i64;
674    #[link_name = "llvm.loongarch.lasx.xvaddwod.q.du.d"]
675    fn __lasx_xvaddwod_q_du_d(a: __v4u64, b: __v4i64) -> __v4i64;
676    #[link_name = "llvm.loongarch.lasx.xvmulwev.q.du.d"]
677    fn __lasx_xvmulwev_q_du_d(a: __v4u64, b: __v4i64) -> __v4i64;
678    #[link_name = "llvm.loongarch.lasx.xvmulwod.q.du.d"]
679    fn __lasx_xvmulwod_q_du_d(a: __v4u64, b: __v4i64) -> __v4i64;
680    #[link_name = "llvm.loongarch.lasx.xvmskgez.b"]
681    fn __lasx_xvmskgez_b(a: __v32i8) -> __v32i8;
682    #[link_name = "llvm.loongarch.lasx.xvmsknz.b"]
683    fn __lasx_xvmsknz_b(a: __v32i8) -> __v32i8;
684    #[link_name = "llvm.loongarch.lasx.xvexth.h.b"]
685    fn __lasx_xvexth_h_b(a: __v32i8) -> __v16i16;
686    #[link_name = "llvm.loongarch.lasx.xvexth.w.h"]
687    fn __lasx_xvexth_w_h(a: __v16i16) -> __v8i32;
688    #[link_name = "llvm.loongarch.lasx.xvexth.d.w"]
689    fn __lasx_xvexth_d_w(a: __v8i32) -> __v4i64;
690    #[link_name = "llvm.loongarch.lasx.xvexth.q.d"]
691    fn __lasx_xvexth_q_d(a: __v4i64) -> __v4i64;
692    #[link_name = "llvm.loongarch.lasx.xvexth.hu.bu"]
693    fn __lasx_xvexth_hu_bu(a: __v32u8) -> __v16u16;
694    #[link_name = "llvm.loongarch.lasx.xvexth.wu.hu"]
695    fn __lasx_xvexth_wu_hu(a: __v16u16) -> __v8u32;
696    #[link_name = "llvm.loongarch.lasx.xvexth.du.wu"]
697    fn __lasx_xvexth_du_wu(a: __v8u32) -> __v4u64;
698    #[link_name = "llvm.loongarch.lasx.xvexth.qu.du"]
699    fn __lasx_xvexth_qu_du(a: __v4u64) -> __v4u64;
700    #[link_name = "llvm.loongarch.lasx.xvextl.q.d"]
701    fn __lasx_xvextl_q_d(a: __v4i64) -> __v4i64;
702    #[link_name = "llvm.loongarch.lasx.xvsrlni.b.h"]
703    fn __lasx_xvsrlni_b_h(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
704    #[link_name = "llvm.loongarch.lasx.xvsrlni.h.w"]
705    fn __lasx_xvsrlni_h_w(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
706    #[link_name = "llvm.loongarch.lasx.xvsrlni.w.d"]
707    fn __lasx_xvsrlni_w_d(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
708    #[link_name = "llvm.loongarch.lasx.xvsrlni.d.q"]
709    fn __lasx_xvsrlni_d_q(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
710    #[link_name = "llvm.loongarch.lasx.xvsrlrni.b.h"]
711    fn __lasx_xvsrlrni_b_h(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
712    #[link_name = "llvm.loongarch.lasx.xvsrlrni.h.w"]
713    fn __lasx_xvsrlrni_h_w(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
714    #[link_name = "llvm.loongarch.lasx.xvsrlrni.w.d"]
715    fn __lasx_xvsrlrni_w_d(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
716    #[link_name = "llvm.loongarch.lasx.xvsrlrni.d.q"]
717    fn __lasx_xvsrlrni_d_q(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
718    #[link_name = "llvm.loongarch.lasx.xvssrlni.b.h"]
719    fn __lasx_xvssrlni_b_h(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
720    #[link_name = "llvm.loongarch.lasx.xvssrlni.h.w"]
721    fn __lasx_xvssrlni_h_w(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
722    #[link_name = "llvm.loongarch.lasx.xvssrlni.w.d"]
723    fn __lasx_xvssrlni_w_d(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
724    #[link_name = "llvm.loongarch.lasx.xvssrlni.d.q"]
725    fn __lasx_xvssrlni_d_q(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
726    #[link_name = "llvm.loongarch.lasx.xvssrlni.bu.h"]
727    fn __lasx_xvssrlni_bu_h(a: __v32u8, b: __v32i8, c: u32) -> __v32u8;
728    #[link_name = "llvm.loongarch.lasx.xvssrlni.hu.w"]
729    fn __lasx_xvssrlni_hu_w(a: __v16u16, b: __v16i16, c: u32) -> __v16u16;
730    #[link_name = "llvm.loongarch.lasx.xvssrlni.wu.d"]
731    fn __lasx_xvssrlni_wu_d(a: __v8u32, b: __v8i32, c: u32) -> __v8u32;
732    #[link_name = "llvm.loongarch.lasx.xvssrlni.du.q"]
733    fn __lasx_xvssrlni_du_q(a: __v4u64, b: __v4i64, c: u32) -> __v4u64;
734    #[link_name = "llvm.loongarch.lasx.xvssrlrni.b.h"]
735    fn __lasx_xvssrlrni_b_h(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
736    #[link_name = "llvm.loongarch.lasx.xvssrlrni.h.w"]
737    fn __lasx_xvssrlrni_h_w(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
738    #[link_name = "llvm.loongarch.lasx.xvssrlrni.w.d"]
739    fn __lasx_xvssrlrni_w_d(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
740    #[link_name = "llvm.loongarch.lasx.xvssrlrni.d.q"]
741    fn __lasx_xvssrlrni_d_q(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
742    #[link_name = "llvm.loongarch.lasx.xvssrlrni.bu.h"]
743    fn __lasx_xvssrlrni_bu_h(a: __v32u8, b: __v32i8, c: u32) -> __v32u8;
744    #[link_name = "llvm.loongarch.lasx.xvssrlrni.hu.w"]
745    fn __lasx_xvssrlrni_hu_w(a: __v16u16, b: __v16i16, c: u32) -> __v16u16;
746    #[link_name = "llvm.loongarch.lasx.xvssrlrni.wu.d"]
747    fn __lasx_xvssrlrni_wu_d(a: __v8u32, b: __v8i32, c: u32) -> __v8u32;
748    #[link_name = "llvm.loongarch.lasx.xvssrlrni.du.q"]
749    fn __lasx_xvssrlrni_du_q(a: __v4u64, b: __v4i64, c: u32) -> __v4u64;
750    #[link_name = "llvm.loongarch.lasx.xvsrani.b.h"]
751    fn __lasx_xvsrani_b_h(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
752    #[link_name = "llvm.loongarch.lasx.xvsrani.h.w"]
753    fn __lasx_xvsrani_h_w(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
754    #[link_name = "llvm.loongarch.lasx.xvsrani.w.d"]
755    fn __lasx_xvsrani_w_d(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
756    #[link_name = "llvm.loongarch.lasx.xvsrani.d.q"]
757    fn __lasx_xvsrani_d_q(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
758    #[link_name = "llvm.loongarch.lasx.xvsrarni.b.h"]
759    fn __lasx_xvsrarni_b_h(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
760    #[link_name = "llvm.loongarch.lasx.xvsrarni.h.w"]
761    fn __lasx_xvsrarni_h_w(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
762    #[link_name = "llvm.loongarch.lasx.xvsrarni.w.d"]
763    fn __lasx_xvsrarni_w_d(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
764    #[link_name = "llvm.loongarch.lasx.xvsrarni.d.q"]
765    fn __lasx_xvsrarni_d_q(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
766    #[link_name = "llvm.loongarch.lasx.xvssrani.b.h"]
767    fn __lasx_xvssrani_b_h(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
768    #[link_name = "llvm.loongarch.lasx.xvssrani.h.w"]
769    fn __lasx_xvssrani_h_w(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
770    #[link_name = "llvm.loongarch.lasx.xvssrani.w.d"]
771    fn __lasx_xvssrani_w_d(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
772    #[link_name = "llvm.loongarch.lasx.xvssrani.d.q"]
773    fn __lasx_xvssrani_d_q(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
774    #[link_name = "llvm.loongarch.lasx.xvssrani.bu.h"]
775    fn __lasx_xvssrani_bu_h(a: __v32u8, b: __v32i8, c: u32) -> __v32u8;
776    #[link_name = "llvm.loongarch.lasx.xvssrani.hu.w"]
777    fn __lasx_xvssrani_hu_w(a: __v16u16, b: __v16i16, c: u32) -> __v16u16;
778    #[link_name = "llvm.loongarch.lasx.xvssrani.wu.d"]
779    fn __lasx_xvssrani_wu_d(a: __v8u32, b: __v8i32, c: u32) -> __v8u32;
780    #[link_name = "llvm.loongarch.lasx.xvssrani.du.q"]
781    fn __lasx_xvssrani_du_q(a: __v4u64, b: __v4i64, c: u32) -> __v4u64;
782    #[link_name = "llvm.loongarch.lasx.xvssrarni.b.h"]
783    fn __lasx_xvssrarni_b_h(a: __v32i8, b: __v32i8, c: u32) -> __v32i8;
784    #[link_name = "llvm.loongarch.lasx.xvssrarni.h.w"]
785    fn __lasx_xvssrarni_h_w(a: __v16i16, b: __v16i16, c: u32) -> __v16i16;
786    #[link_name = "llvm.loongarch.lasx.xvssrarni.w.d"]
787    fn __lasx_xvssrarni_w_d(a: __v8i32, b: __v8i32, c: u32) -> __v8i32;
788    #[link_name = "llvm.loongarch.lasx.xvssrarni.d.q"]
789    fn __lasx_xvssrarni_d_q(a: __v4i64, b: __v4i64, c: u32) -> __v4i64;
790    #[link_name = "llvm.loongarch.lasx.xvssrarni.bu.h"]
791    fn __lasx_xvssrarni_bu_h(a: __v32u8, b: __v32i8, c: u32) -> __v32u8;
792    #[link_name = "llvm.loongarch.lasx.xvssrarni.hu.w"]
793    fn __lasx_xvssrarni_hu_w(a: __v16u16, b: __v16i16, c: u32) -> __v16u16;
794    #[link_name = "llvm.loongarch.lasx.xvssrarni.wu.d"]
795    fn __lasx_xvssrarni_wu_d(a: __v8u32, b: __v8i32, c: u32) -> __v8u32;
796    #[link_name = "llvm.loongarch.lasx.xvssrarni.du.q"]
797    fn __lasx_xvssrarni_du_q(a: __v4u64, b: __v4i64, c: u32) -> __v4u64;
798    #[link_name = "llvm.loongarch.lasx.xbnz.b"]
799    fn __lasx_xbnz_b(a: __v32u8) -> i32;
800    #[link_name = "llvm.loongarch.lasx.xbnz.d"]
801    fn __lasx_xbnz_d(a: __v4u64) -> i32;
802    #[link_name = "llvm.loongarch.lasx.xbnz.h"]
803    fn __lasx_xbnz_h(a: __v16u16) -> i32;
804    #[link_name = "llvm.loongarch.lasx.xbnz.v"]
805    fn __lasx_xbnz_v(a: __v32u8) -> i32;
806    #[link_name = "llvm.loongarch.lasx.xbnz.w"]
807    fn __lasx_xbnz_w(a: __v8u32) -> i32;
808    #[link_name = "llvm.loongarch.lasx.xbz.b"]
809    fn __lasx_xbz_b(a: __v32u8) -> i32;
810    #[link_name = "llvm.loongarch.lasx.xbz.d"]
811    fn __lasx_xbz_d(a: __v4u64) -> i32;
812    #[link_name = "llvm.loongarch.lasx.xbz.h"]
813    fn __lasx_xbz_h(a: __v16u16) -> i32;
814    #[link_name = "llvm.loongarch.lasx.xbz.v"]
815    fn __lasx_xbz_v(a: __v32u8) -> i32;
816    #[link_name = "llvm.loongarch.lasx.xbz.w"]
817    fn __lasx_xbz_w(a: __v8u32) -> i32;
818    #[link_name = "llvm.loongarch.lasx.xvfcmp.caf.d"]
819    fn __lasx_xvfcmp_caf_d(a: __v4f64, b: __v4f64) -> __v4i64;
820    #[link_name = "llvm.loongarch.lasx.xvfcmp.caf.s"]
821    fn __lasx_xvfcmp_caf_s(a: __v8f32, b: __v8f32) -> __v8i32;
822    #[link_name = "llvm.loongarch.lasx.xvfcmp.ceq.d"]
823    fn __lasx_xvfcmp_ceq_d(a: __v4f64, b: __v4f64) -> __v4i64;
824    #[link_name = "llvm.loongarch.lasx.xvfcmp.ceq.s"]
825    fn __lasx_xvfcmp_ceq_s(a: __v8f32, b: __v8f32) -> __v8i32;
826    #[link_name = "llvm.loongarch.lasx.xvfcmp.cle.d"]
827    fn __lasx_xvfcmp_cle_d(a: __v4f64, b: __v4f64) -> __v4i64;
828    #[link_name = "llvm.loongarch.lasx.xvfcmp.cle.s"]
829    fn __lasx_xvfcmp_cle_s(a: __v8f32, b: __v8f32) -> __v8i32;
830    #[link_name = "llvm.loongarch.lasx.xvfcmp.clt.d"]
831    fn __lasx_xvfcmp_clt_d(a: __v4f64, b: __v4f64) -> __v4i64;
832    #[link_name = "llvm.loongarch.lasx.xvfcmp.clt.s"]
833    fn __lasx_xvfcmp_clt_s(a: __v8f32, b: __v8f32) -> __v8i32;
834    #[link_name = "llvm.loongarch.lasx.xvfcmp.cne.d"]
835    fn __lasx_xvfcmp_cne_d(a: __v4f64, b: __v4f64) -> __v4i64;
836    #[link_name = "llvm.loongarch.lasx.xvfcmp.cne.s"]
837    fn __lasx_xvfcmp_cne_s(a: __v8f32, b: __v8f32) -> __v8i32;
838    #[link_name = "llvm.loongarch.lasx.xvfcmp.cor.d"]
839    fn __lasx_xvfcmp_cor_d(a: __v4f64, b: __v4f64) -> __v4i64;
840    #[link_name = "llvm.loongarch.lasx.xvfcmp.cor.s"]
841    fn __lasx_xvfcmp_cor_s(a: __v8f32, b: __v8f32) -> __v8i32;
842    #[link_name = "llvm.loongarch.lasx.xvfcmp.cueq.d"]
843    fn __lasx_xvfcmp_cueq_d(a: __v4f64, b: __v4f64) -> __v4i64;
844    #[link_name = "llvm.loongarch.lasx.xvfcmp.cueq.s"]
845    fn __lasx_xvfcmp_cueq_s(a: __v8f32, b: __v8f32) -> __v8i32;
846    #[link_name = "llvm.loongarch.lasx.xvfcmp.cule.d"]
847    fn __lasx_xvfcmp_cule_d(a: __v4f64, b: __v4f64) -> __v4i64;
848    #[link_name = "llvm.loongarch.lasx.xvfcmp.cule.s"]
849    fn __lasx_xvfcmp_cule_s(a: __v8f32, b: __v8f32) -> __v8i32;
850    #[link_name = "llvm.loongarch.lasx.xvfcmp.cult.d"]
851    fn __lasx_xvfcmp_cult_d(a: __v4f64, b: __v4f64) -> __v4i64;
852    #[link_name = "llvm.loongarch.lasx.xvfcmp.cult.s"]
853    fn __lasx_xvfcmp_cult_s(a: __v8f32, b: __v8f32) -> __v8i32;
854    #[link_name = "llvm.loongarch.lasx.xvfcmp.cun.d"]
855    fn __lasx_xvfcmp_cun_d(a: __v4f64, b: __v4f64) -> __v4i64;
856    #[link_name = "llvm.loongarch.lasx.xvfcmp.cune.d"]
857    fn __lasx_xvfcmp_cune_d(a: __v4f64, b: __v4f64) -> __v4i64;
858    #[link_name = "llvm.loongarch.lasx.xvfcmp.cune.s"]
859    fn __lasx_xvfcmp_cune_s(a: __v8f32, b: __v8f32) -> __v8i32;
860    #[link_name = "llvm.loongarch.lasx.xvfcmp.cun.s"]
861    fn __lasx_xvfcmp_cun_s(a: __v8f32, b: __v8f32) -> __v8i32;
862    #[link_name = "llvm.loongarch.lasx.xvfcmp.saf.d"]
863    fn __lasx_xvfcmp_saf_d(a: __v4f64, b: __v4f64) -> __v4i64;
864    #[link_name = "llvm.loongarch.lasx.xvfcmp.saf.s"]
865    fn __lasx_xvfcmp_saf_s(a: __v8f32, b: __v8f32) -> __v8i32;
866    #[link_name = "llvm.loongarch.lasx.xvfcmp.seq.d"]
867    fn __lasx_xvfcmp_seq_d(a: __v4f64, b: __v4f64) -> __v4i64;
868    #[link_name = "llvm.loongarch.lasx.xvfcmp.seq.s"]
869    fn __lasx_xvfcmp_seq_s(a: __v8f32, b: __v8f32) -> __v8i32;
870    #[link_name = "llvm.loongarch.lasx.xvfcmp.sle.d"]
871    fn __lasx_xvfcmp_sle_d(a: __v4f64, b: __v4f64) -> __v4i64;
872    #[link_name = "llvm.loongarch.lasx.xvfcmp.sle.s"]
873    fn __lasx_xvfcmp_sle_s(a: __v8f32, b: __v8f32) -> __v8i32;
874    #[link_name = "llvm.loongarch.lasx.xvfcmp.slt.d"]
875    fn __lasx_xvfcmp_slt_d(a: __v4f64, b: __v4f64) -> __v4i64;
876    #[link_name = "llvm.loongarch.lasx.xvfcmp.slt.s"]
877    fn __lasx_xvfcmp_slt_s(a: __v8f32, b: __v8f32) -> __v8i32;
878    #[link_name = "llvm.loongarch.lasx.xvfcmp.sne.d"]
879    fn __lasx_xvfcmp_sne_d(a: __v4f64, b: __v4f64) -> __v4i64;
880    #[link_name = "llvm.loongarch.lasx.xvfcmp.sne.s"]
881    fn __lasx_xvfcmp_sne_s(a: __v8f32, b: __v8f32) -> __v8i32;
882    #[link_name = "llvm.loongarch.lasx.xvfcmp.sor.d"]
883    fn __lasx_xvfcmp_sor_d(a: __v4f64, b: __v4f64) -> __v4i64;
884    #[link_name = "llvm.loongarch.lasx.xvfcmp.sor.s"]
885    fn __lasx_xvfcmp_sor_s(a: __v8f32, b: __v8f32) -> __v8i32;
886    #[link_name = "llvm.loongarch.lasx.xvfcmp.sueq.d"]
887    fn __lasx_xvfcmp_sueq_d(a: __v4f64, b: __v4f64) -> __v4i64;
888    #[link_name = "llvm.loongarch.lasx.xvfcmp.sueq.s"]
889    fn __lasx_xvfcmp_sueq_s(a: __v8f32, b: __v8f32) -> __v8i32;
890    #[link_name = "llvm.loongarch.lasx.xvfcmp.sule.d"]
891    fn __lasx_xvfcmp_sule_d(a: __v4f64, b: __v4f64) -> __v4i64;
892    #[link_name = "llvm.loongarch.lasx.xvfcmp.sule.s"]
893    fn __lasx_xvfcmp_sule_s(a: __v8f32, b: __v8f32) -> __v8i32;
894    #[link_name = "llvm.loongarch.lasx.xvfcmp.sult.d"]
895    fn __lasx_xvfcmp_sult_d(a: __v4f64, b: __v4f64) -> __v4i64;
896    #[link_name = "llvm.loongarch.lasx.xvfcmp.sult.s"]
897    fn __lasx_xvfcmp_sult_s(a: __v8f32, b: __v8f32) -> __v8i32;
898    #[link_name = "llvm.loongarch.lasx.xvfcmp.sun.d"]
899    fn __lasx_xvfcmp_sun_d(a: __v4f64, b: __v4f64) -> __v4i64;
900    #[link_name = "llvm.loongarch.lasx.xvfcmp.sune.d"]
901    fn __lasx_xvfcmp_sune_d(a: __v4f64, b: __v4f64) -> __v4i64;
902    #[link_name = "llvm.loongarch.lasx.xvfcmp.sune.s"]
903    fn __lasx_xvfcmp_sune_s(a: __v8f32, b: __v8f32) -> __v8i32;
904    #[link_name = "llvm.loongarch.lasx.xvfcmp.sun.s"]
905    fn __lasx_xvfcmp_sun_s(a: __v8f32, b: __v8f32) -> __v8i32;
906    #[link_name = "llvm.loongarch.lasx.xvpickve.d.f"]
907    fn __lasx_xvpickve_d_f(a: __v4f64, b: u32) -> __v4f64;
908    #[link_name = "llvm.loongarch.lasx.xvpickve.w.f"]
909    fn __lasx_xvpickve_w_f(a: __v8f32, b: u32) -> __v8f32;
910    #[link_name = "llvm.loongarch.lasx.cast.128.s"]
911    fn __lasx_cast_128_s(a: __v4f32) -> __v8f32;
912    #[link_name = "llvm.loongarch.lasx.cast.128.d"]
913    fn __lasx_cast_128_d(a: __v2f64) -> __v4f64;
914    #[link_name = "llvm.loongarch.lasx.cast.128"]
915    fn __lasx_cast_128(a: __v2i64) -> __v4i64;
916    #[link_name = "llvm.loongarch.lasx.concat.128.s"]
917    fn __lasx_concat_128_s(a: __v4f32, b: __v4f32) -> __v8f32;
918    #[link_name = "llvm.loongarch.lasx.concat.128.d"]
919    fn __lasx_concat_128_d(a: __v2f64, b: __v2f64) -> __v4f64;
920    #[link_name = "llvm.loongarch.lasx.concat.128"]
921    fn __lasx_concat_128(a: __v2i64, b: __v2i64) -> __v4i64;
922    #[link_name = "llvm.loongarch.lasx.extract.128.lo.s"]
923    fn __lasx_extract_128_lo_s(a: __v8f32) -> __v4f32;
924    #[link_name = "llvm.loongarch.lasx.extract.128.hi.s"]
925    fn __lasx_extract_128_hi_s(a: __v8f32) -> __v4f32;
926    #[link_name = "llvm.loongarch.lasx.extract.128.lo.d"]
927    fn __lasx_extract_128_lo_d(a: __v4f64) -> __v2f64;
928    #[link_name = "llvm.loongarch.lasx.extract.128.hi.d"]
929    fn __lasx_extract_128_hi_d(a: __v4f64) -> __v2f64;
930    #[link_name = "llvm.loongarch.lasx.extract.128.lo"]
931    fn __lasx_extract_128_lo(a: __v4i64) -> __v2i64;
932    #[link_name = "llvm.loongarch.lasx.extract.128.hi"]
933    fn __lasx_extract_128_hi(a: __v4i64) -> __v2i64;
934    #[link_name = "llvm.loongarch.lasx.insert.128.lo.s"]
935    fn __lasx_insert_128_lo_s(a: __v8f32, b: __v4f32) -> __v8f32;
936    #[link_name = "llvm.loongarch.lasx.insert.128.hi.s"]
937    fn __lasx_insert_128_hi_s(a: __v8f32, b: __v4f32) -> __v8f32;
938    #[link_name = "llvm.loongarch.lasx.insert.128.lo.d"]
939    fn __lasx_insert_128_lo_d(a: __v4f64, b: __v2f64) -> __v4f64;
940    #[link_name = "llvm.loongarch.lasx.insert.128.hi.d"]
941    fn __lasx_insert_128_hi_d(a: __v4f64, b: __v2f64) -> __v4f64;
942    #[link_name = "llvm.loongarch.lasx.insert.128.lo"]
943    fn __lasx_insert_128_lo(a: __v4i64, b: __v2i64) -> __v4i64;
944    #[link_name = "llvm.loongarch.lasx.insert.128.hi"]
945    fn __lasx_insert_128_hi(a: __v4i64, b: __v2i64) -> __v4i64;
946}
947
948#[inline]
949#[target_feature(enable = "lasx")]
950#[unstable(feature = "stdarch_loongarch", issue = "117427")]
951pub fn lasx_xvsrar_b(a: m256i, b: m256i) -> m256i {
952    unsafe { transmute(__lasx_xvsrar_b(transmute(a), transmute(b))) }
953}
954
955#[inline]
956#[target_feature(enable = "lasx")]
957#[unstable(feature = "stdarch_loongarch", issue = "117427")]
958pub fn lasx_xvsrar_h(a: m256i, b: m256i) -> m256i {
959    unsafe { transmute(__lasx_xvsrar_h(transmute(a), transmute(b))) }
960}
961
962#[inline]
963#[target_feature(enable = "lasx")]
964#[unstable(feature = "stdarch_loongarch", issue = "117427")]
965pub fn lasx_xvsrar_w(a: m256i, b: m256i) -> m256i {
966    unsafe { transmute(__lasx_xvsrar_w(transmute(a), transmute(b))) }
967}
968
969#[inline]
970#[target_feature(enable = "lasx")]
971#[unstable(feature = "stdarch_loongarch", issue = "117427")]
972pub fn lasx_xvsrar_d(a: m256i, b: m256i) -> m256i {
973    unsafe { transmute(__lasx_xvsrar_d(transmute(a), transmute(b))) }
974}
975
976#[inline]
977#[target_feature(enable = "lasx")]
978#[rustc_legacy_const_generics(1)]
979#[unstable(feature = "stdarch_loongarch", issue = "117427")]
980pub fn lasx_xvsrari_b<const IMM3: u32>(a: m256i) -> m256i {
981    static_assert_uimm_bits!(IMM3, 3);
982    unsafe { transmute(__lasx_xvsrari_b(transmute(a), IMM3)) }
983}
984
985#[inline]
986#[target_feature(enable = "lasx")]
987#[rustc_legacy_const_generics(1)]
988#[unstable(feature = "stdarch_loongarch", issue = "117427")]
989pub fn lasx_xvsrari_h<const IMM4: u32>(a: m256i) -> m256i {
990    static_assert_uimm_bits!(IMM4, 4);
991    unsafe { transmute(__lasx_xvsrari_h(transmute(a), IMM4)) }
992}
993
994#[inline]
995#[target_feature(enable = "lasx")]
996#[rustc_legacy_const_generics(1)]
997#[unstable(feature = "stdarch_loongarch", issue = "117427")]
998pub fn lasx_xvsrari_w<const IMM5: u32>(a: m256i) -> m256i {
999    static_assert_uimm_bits!(IMM5, 5);
1000    unsafe { transmute(__lasx_xvsrari_w(transmute(a), IMM5)) }
1001}
1002
1003#[inline]
1004#[target_feature(enable = "lasx")]
1005#[rustc_legacy_const_generics(1)]
1006#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1007pub fn lasx_xvsrari_d<const IMM6: u32>(a: m256i) -> m256i {
1008    static_assert_uimm_bits!(IMM6, 6);
1009    unsafe { transmute(__lasx_xvsrari_d(transmute(a), IMM6)) }
1010}
1011
1012#[inline]
1013#[target_feature(enable = "lasx")]
1014#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1015pub fn lasx_xvsrlr_b(a: m256i, b: m256i) -> m256i {
1016    unsafe { transmute(__lasx_xvsrlr_b(transmute(a), transmute(b))) }
1017}
1018
1019#[inline]
1020#[target_feature(enable = "lasx")]
1021#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1022pub fn lasx_xvsrlr_h(a: m256i, b: m256i) -> m256i {
1023    unsafe { transmute(__lasx_xvsrlr_h(transmute(a), transmute(b))) }
1024}
1025
1026#[inline]
1027#[target_feature(enable = "lasx")]
1028#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1029pub fn lasx_xvsrlr_w(a: m256i, b: m256i) -> m256i {
1030    unsafe { transmute(__lasx_xvsrlr_w(transmute(a), transmute(b))) }
1031}
1032
1033#[inline]
1034#[target_feature(enable = "lasx")]
1035#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1036pub fn lasx_xvsrlr_d(a: m256i, b: m256i) -> m256i {
1037    unsafe { transmute(__lasx_xvsrlr_d(transmute(a), transmute(b))) }
1038}
1039
1040#[inline]
1041#[target_feature(enable = "lasx")]
1042#[rustc_legacy_const_generics(1)]
1043#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1044pub fn lasx_xvsrlri_b<const IMM3: u32>(a: m256i) -> m256i {
1045    static_assert_uimm_bits!(IMM3, 3);
1046    unsafe { transmute(__lasx_xvsrlri_b(transmute(a), IMM3)) }
1047}
1048
1049#[inline]
1050#[target_feature(enable = "lasx")]
1051#[rustc_legacy_const_generics(1)]
1052#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1053pub fn lasx_xvsrlri_h<const IMM4: u32>(a: m256i) -> m256i {
1054    static_assert_uimm_bits!(IMM4, 4);
1055    unsafe { transmute(__lasx_xvsrlri_h(transmute(a), IMM4)) }
1056}
1057
1058#[inline]
1059#[target_feature(enable = "lasx")]
1060#[rustc_legacy_const_generics(1)]
1061#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1062pub fn lasx_xvsrlri_w<const IMM5: u32>(a: m256i) -> m256i {
1063    static_assert_uimm_bits!(IMM5, 5);
1064    unsafe { transmute(__lasx_xvsrlri_w(transmute(a), IMM5)) }
1065}
1066
1067#[inline]
1068#[target_feature(enable = "lasx")]
1069#[rustc_legacy_const_generics(1)]
1070#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1071pub fn lasx_xvsrlri_d<const IMM6: u32>(a: m256i) -> m256i {
1072    static_assert_uimm_bits!(IMM6, 6);
1073    unsafe { transmute(__lasx_xvsrlri_d(transmute(a), IMM6)) }
1074}
1075
1076#[inline]
1077#[target_feature(enable = "lasx")]
1078#[rustc_legacy_const_generics(1)]
1079#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1080pub fn lasx_xvbitclri_b<const IMM3: u32>(a: m256i) -> m256i {
1081    static_assert_uimm_bits!(IMM3, 3);
1082    unsafe { transmute(__lasx_xvbitclri_b(transmute(a), IMM3)) }
1083}
1084
1085#[inline]
1086#[target_feature(enable = "lasx")]
1087#[rustc_legacy_const_generics(1)]
1088#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1089pub fn lasx_xvbitclri_h<const IMM4: u32>(a: m256i) -> m256i {
1090    static_assert_uimm_bits!(IMM4, 4);
1091    unsafe { transmute(__lasx_xvbitclri_h(transmute(a), IMM4)) }
1092}
1093
1094#[inline]
1095#[target_feature(enable = "lasx")]
1096#[rustc_legacy_const_generics(1)]
1097#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1098pub fn lasx_xvbitclri_w<const IMM5: u32>(a: m256i) -> m256i {
1099    static_assert_uimm_bits!(IMM5, 5);
1100    unsafe { transmute(__lasx_xvbitclri_w(transmute(a), IMM5)) }
1101}
1102
1103#[inline]
1104#[target_feature(enable = "lasx")]
1105#[rustc_legacy_const_generics(1)]
1106#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1107pub fn lasx_xvbitclri_d<const IMM6: u32>(a: m256i) -> m256i {
1108    static_assert_uimm_bits!(IMM6, 6);
1109    unsafe { transmute(__lasx_xvbitclri_d(transmute(a), IMM6)) }
1110}
1111
1112#[inline]
1113#[target_feature(enable = "lasx")]
1114#[rustc_legacy_const_generics(1)]
1115#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1116pub fn lasx_xvbitseti_b<const IMM3: u32>(a: m256i) -> m256i {
1117    static_assert_uimm_bits!(IMM3, 3);
1118    unsafe { transmute(__lasx_xvbitseti_b(transmute(a), IMM3)) }
1119}
1120
1121#[inline]
1122#[target_feature(enable = "lasx")]
1123#[rustc_legacy_const_generics(1)]
1124#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1125pub fn lasx_xvbitseti_h<const IMM4: u32>(a: m256i) -> m256i {
1126    static_assert_uimm_bits!(IMM4, 4);
1127    unsafe { transmute(__lasx_xvbitseti_h(transmute(a), IMM4)) }
1128}
1129
1130#[inline]
1131#[target_feature(enable = "lasx")]
1132#[rustc_legacy_const_generics(1)]
1133#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1134pub fn lasx_xvbitseti_w<const IMM5: u32>(a: m256i) -> m256i {
1135    static_assert_uimm_bits!(IMM5, 5);
1136    unsafe { transmute(__lasx_xvbitseti_w(transmute(a), IMM5)) }
1137}
1138
1139#[inline]
1140#[target_feature(enable = "lasx")]
1141#[rustc_legacy_const_generics(1)]
1142#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1143pub fn lasx_xvbitseti_d<const IMM6: u32>(a: m256i) -> m256i {
1144    static_assert_uimm_bits!(IMM6, 6);
1145    unsafe { transmute(__lasx_xvbitseti_d(transmute(a), IMM6)) }
1146}
1147
1148#[inline]
1149#[target_feature(enable = "lasx")]
1150#[rustc_legacy_const_generics(1)]
1151#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1152pub fn lasx_xvbitrevi_b<const IMM3: u32>(a: m256i) -> m256i {
1153    static_assert_uimm_bits!(IMM3, 3);
1154    unsafe { transmute(__lasx_xvbitrevi_b(transmute(a), IMM3)) }
1155}
1156
1157#[inline]
1158#[target_feature(enable = "lasx")]
1159#[rustc_legacy_const_generics(1)]
1160#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1161pub fn lasx_xvbitrevi_h<const IMM4: u32>(a: m256i) -> m256i {
1162    static_assert_uimm_bits!(IMM4, 4);
1163    unsafe { transmute(__lasx_xvbitrevi_h(transmute(a), IMM4)) }
1164}
1165
1166#[inline]
1167#[target_feature(enable = "lasx")]
1168#[rustc_legacy_const_generics(1)]
1169#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1170pub fn lasx_xvbitrevi_w<const IMM5: u32>(a: m256i) -> m256i {
1171    static_assert_uimm_bits!(IMM5, 5);
1172    unsafe { transmute(__lasx_xvbitrevi_w(transmute(a), IMM5)) }
1173}
1174
1175#[inline]
1176#[target_feature(enable = "lasx")]
1177#[rustc_legacy_const_generics(1)]
1178#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1179pub fn lasx_xvbitrevi_d<const IMM6: u32>(a: m256i) -> m256i {
1180    static_assert_uimm_bits!(IMM6, 6);
1181    unsafe { transmute(__lasx_xvbitrevi_d(transmute(a), IMM6)) }
1182}
1183
1184#[inline]
1185#[target_feature(enable = "lasx")]
1186#[rustc_legacy_const_generics(1)]
1187#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1188pub fn lasx_xvsubi_bu<const IMM5: u32>(a: m256i) -> m256i {
1189    static_assert_uimm_bits!(IMM5, 5);
1190    unsafe { transmute(__lasx_xvsubi_bu(transmute(a), IMM5)) }
1191}
1192
1193#[inline]
1194#[target_feature(enable = "lasx")]
1195#[rustc_legacy_const_generics(1)]
1196#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1197pub fn lasx_xvsubi_hu<const IMM5: u32>(a: m256i) -> m256i {
1198    static_assert_uimm_bits!(IMM5, 5);
1199    unsafe { transmute(__lasx_xvsubi_hu(transmute(a), IMM5)) }
1200}
1201
1202#[inline]
1203#[target_feature(enable = "lasx")]
1204#[rustc_legacy_const_generics(1)]
1205#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1206pub fn lasx_xvsubi_wu<const IMM5: u32>(a: m256i) -> m256i {
1207    static_assert_uimm_bits!(IMM5, 5);
1208    unsafe { transmute(__lasx_xvsubi_wu(transmute(a), IMM5)) }
1209}
1210
1211#[inline]
1212#[target_feature(enable = "lasx")]
1213#[rustc_legacy_const_generics(1)]
1214#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1215pub fn lasx_xvsubi_du<const IMM5: u32>(a: m256i) -> m256i {
1216    static_assert_uimm_bits!(IMM5, 5);
1217    unsafe { transmute(__lasx_xvsubi_du(transmute(a), IMM5)) }
1218}
1219
1220#[inline]
1221#[target_feature(enable = "lasx")]
1222#[rustc_legacy_const_generics(1)]
1223#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1224pub fn lasx_xvsat_b<const IMM3: u32>(a: m256i) -> m256i {
1225    static_assert_uimm_bits!(IMM3, 3);
1226    unsafe { transmute(__lasx_xvsat_b(transmute(a), IMM3)) }
1227}
1228
1229#[inline]
1230#[target_feature(enable = "lasx")]
1231#[rustc_legacy_const_generics(1)]
1232#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1233pub fn lasx_xvsat_h<const IMM4: u32>(a: m256i) -> m256i {
1234    static_assert_uimm_bits!(IMM4, 4);
1235    unsafe { transmute(__lasx_xvsat_h(transmute(a), IMM4)) }
1236}
1237
1238#[inline]
1239#[target_feature(enable = "lasx")]
1240#[rustc_legacy_const_generics(1)]
1241#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1242pub fn lasx_xvsat_w<const IMM5: u32>(a: m256i) -> m256i {
1243    static_assert_uimm_bits!(IMM5, 5);
1244    unsafe { transmute(__lasx_xvsat_w(transmute(a), IMM5)) }
1245}
1246
1247#[inline]
1248#[target_feature(enable = "lasx")]
1249#[rustc_legacy_const_generics(1)]
1250#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1251pub fn lasx_xvsat_d<const IMM6: u32>(a: m256i) -> m256i {
1252    static_assert_uimm_bits!(IMM6, 6);
1253    unsafe { transmute(__lasx_xvsat_d(transmute(a), IMM6)) }
1254}
1255
1256#[inline]
1257#[target_feature(enable = "lasx")]
1258#[rustc_legacy_const_generics(1)]
1259#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1260pub fn lasx_xvsat_bu<const IMM3: u32>(a: m256i) -> m256i {
1261    static_assert_uimm_bits!(IMM3, 3);
1262    unsafe { transmute(__lasx_xvsat_bu(transmute(a), IMM3)) }
1263}
1264
1265#[inline]
1266#[target_feature(enable = "lasx")]
1267#[rustc_legacy_const_generics(1)]
1268#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1269pub fn lasx_xvsat_hu<const IMM4: u32>(a: m256i) -> m256i {
1270    static_assert_uimm_bits!(IMM4, 4);
1271    unsafe { transmute(__lasx_xvsat_hu(transmute(a), IMM4)) }
1272}
1273
1274#[inline]
1275#[target_feature(enable = "lasx")]
1276#[rustc_legacy_const_generics(1)]
1277#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1278pub fn lasx_xvsat_wu<const IMM5: u32>(a: m256i) -> m256i {
1279    static_assert_uimm_bits!(IMM5, 5);
1280    unsafe { transmute(__lasx_xvsat_wu(transmute(a), IMM5)) }
1281}
1282
1283#[inline]
1284#[target_feature(enable = "lasx")]
1285#[rustc_legacy_const_generics(1)]
1286#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1287pub fn lasx_xvsat_du<const IMM6: u32>(a: m256i) -> m256i {
1288    static_assert_uimm_bits!(IMM6, 6);
1289    unsafe { transmute(__lasx_xvsat_du(transmute(a), IMM6)) }
1290}
1291
1292#[inline]
1293#[target_feature(enable = "lasx")]
1294#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1295pub fn lasx_xvavg_b(a: m256i, b: m256i) -> m256i {
1296    unsafe { transmute(__lasx_xvavg_b(transmute(a), transmute(b))) }
1297}
1298
1299#[inline]
1300#[target_feature(enable = "lasx")]
1301#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1302pub fn lasx_xvavg_h(a: m256i, b: m256i) -> m256i {
1303    unsafe { transmute(__lasx_xvavg_h(transmute(a), transmute(b))) }
1304}
1305
1306#[inline]
1307#[target_feature(enable = "lasx")]
1308#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1309pub fn lasx_xvavg_w(a: m256i, b: m256i) -> m256i {
1310    unsafe { transmute(__lasx_xvavg_w(transmute(a), transmute(b))) }
1311}
1312
1313#[inline]
1314#[target_feature(enable = "lasx")]
1315#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1316pub fn lasx_xvavg_d(a: m256i, b: m256i) -> m256i {
1317    unsafe { transmute(__lasx_xvavg_d(transmute(a), transmute(b))) }
1318}
1319
1320#[inline]
1321#[target_feature(enable = "lasx")]
1322#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1323pub fn lasx_xvavg_bu(a: m256i, b: m256i) -> m256i {
1324    unsafe { transmute(__lasx_xvavg_bu(transmute(a), transmute(b))) }
1325}
1326
1327#[inline]
1328#[target_feature(enable = "lasx")]
1329#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1330pub fn lasx_xvavg_hu(a: m256i, b: m256i) -> m256i {
1331    unsafe { transmute(__lasx_xvavg_hu(transmute(a), transmute(b))) }
1332}
1333
1334#[inline]
1335#[target_feature(enable = "lasx")]
1336#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1337pub fn lasx_xvavg_wu(a: m256i, b: m256i) -> m256i {
1338    unsafe { transmute(__lasx_xvavg_wu(transmute(a), transmute(b))) }
1339}
1340
1341#[inline]
1342#[target_feature(enable = "lasx")]
1343#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1344pub fn lasx_xvavg_du(a: m256i, b: m256i) -> m256i {
1345    unsafe { transmute(__lasx_xvavg_du(transmute(a), transmute(b))) }
1346}
1347
1348#[inline]
1349#[target_feature(enable = "lasx")]
1350#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1351pub fn lasx_xvavgr_b(a: m256i, b: m256i) -> m256i {
1352    unsafe { transmute(__lasx_xvavgr_b(transmute(a), transmute(b))) }
1353}
1354
1355#[inline]
1356#[target_feature(enable = "lasx")]
1357#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1358pub fn lasx_xvavgr_h(a: m256i, b: m256i) -> m256i {
1359    unsafe { transmute(__lasx_xvavgr_h(transmute(a), transmute(b))) }
1360}
1361
1362#[inline]
1363#[target_feature(enable = "lasx")]
1364#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1365pub fn lasx_xvavgr_w(a: m256i, b: m256i) -> m256i {
1366    unsafe { transmute(__lasx_xvavgr_w(transmute(a), transmute(b))) }
1367}
1368
1369#[inline]
1370#[target_feature(enable = "lasx")]
1371#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1372pub fn lasx_xvavgr_d(a: m256i, b: m256i) -> m256i {
1373    unsafe { transmute(__lasx_xvavgr_d(transmute(a), transmute(b))) }
1374}
1375
1376#[inline]
1377#[target_feature(enable = "lasx")]
1378#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1379pub fn lasx_xvavgr_bu(a: m256i, b: m256i) -> m256i {
1380    unsafe { transmute(__lasx_xvavgr_bu(transmute(a), transmute(b))) }
1381}
1382
1383#[inline]
1384#[target_feature(enable = "lasx")]
1385#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1386pub fn lasx_xvavgr_hu(a: m256i, b: m256i) -> m256i {
1387    unsafe { transmute(__lasx_xvavgr_hu(transmute(a), transmute(b))) }
1388}
1389
1390#[inline]
1391#[target_feature(enable = "lasx")]
1392#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1393pub fn lasx_xvavgr_wu(a: m256i, b: m256i) -> m256i {
1394    unsafe { transmute(__lasx_xvavgr_wu(transmute(a), transmute(b))) }
1395}
1396
1397#[inline]
1398#[target_feature(enable = "lasx")]
1399#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1400pub fn lasx_xvavgr_du(a: m256i, b: m256i) -> m256i {
1401    unsafe { transmute(__lasx_xvavgr_du(transmute(a), transmute(b))) }
1402}
1403
1404#[inline]
1405#[target_feature(enable = "lasx")]
1406#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1407pub fn lasx_xvhaddw_h_b(a: m256i, b: m256i) -> m256i {
1408    unsafe { transmute(__lasx_xvhaddw_h_b(transmute(a), transmute(b))) }
1409}
1410
1411#[inline]
1412#[target_feature(enable = "lasx")]
1413#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1414pub fn lasx_xvhaddw_w_h(a: m256i, b: m256i) -> m256i {
1415    unsafe { transmute(__lasx_xvhaddw_w_h(transmute(a), transmute(b))) }
1416}
1417
1418#[inline]
1419#[target_feature(enable = "lasx")]
1420#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1421pub fn lasx_xvhaddw_d_w(a: m256i, b: m256i) -> m256i {
1422    unsafe { transmute(__lasx_xvhaddw_d_w(transmute(a), transmute(b))) }
1423}
1424
1425#[inline]
1426#[target_feature(enable = "lasx")]
1427#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1428pub fn lasx_xvhaddw_hu_bu(a: m256i, b: m256i) -> m256i {
1429    unsafe { transmute(__lasx_xvhaddw_hu_bu(transmute(a), transmute(b))) }
1430}
1431
1432#[inline]
1433#[target_feature(enable = "lasx")]
1434#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1435pub fn lasx_xvhaddw_wu_hu(a: m256i, b: m256i) -> m256i {
1436    unsafe { transmute(__lasx_xvhaddw_wu_hu(transmute(a), transmute(b))) }
1437}
1438
1439#[inline]
1440#[target_feature(enable = "lasx")]
1441#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1442pub fn lasx_xvhaddw_du_wu(a: m256i, b: m256i) -> m256i {
1443    unsafe { transmute(__lasx_xvhaddw_du_wu(transmute(a), transmute(b))) }
1444}
1445
1446#[inline]
1447#[target_feature(enable = "lasx")]
1448#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1449pub fn lasx_xvhsubw_h_b(a: m256i, b: m256i) -> m256i {
1450    unsafe { transmute(__lasx_xvhsubw_h_b(transmute(a), transmute(b))) }
1451}
1452
1453#[inline]
1454#[target_feature(enable = "lasx")]
1455#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1456pub fn lasx_xvhsubw_w_h(a: m256i, b: m256i) -> m256i {
1457    unsafe { transmute(__lasx_xvhsubw_w_h(transmute(a), transmute(b))) }
1458}
1459
1460#[inline]
1461#[target_feature(enable = "lasx")]
1462#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1463pub fn lasx_xvhsubw_d_w(a: m256i, b: m256i) -> m256i {
1464    unsafe { transmute(__lasx_xvhsubw_d_w(transmute(a), transmute(b))) }
1465}
1466
1467#[inline]
1468#[target_feature(enable = "lasx")]
1469#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1470pub fn lasx_xvhsubw_hu_bu(a: m256i, b: m256i) -> m256i {
1471    unsafe { transmute(__lasx_xvhsubw_hu_bu(transmute(a), transmute(b))) }
1472}
1473
1474#[inline]
1475#[target_feature(enable = "lasx")]
1476#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1477pub fn lasx_xvhsubw_wu_hu(a: m256i, b: m256i) -> m256i {
1478    unsafe { transmute(__lasx_xvhsubw_wu_hu(transmute(a), transmute(b))) }
1479}
1480
1481#[inline]
1482#[target_feature(enable = "lasx")]
1483#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1484pub fn lasx_xvhsubw_du_wu(a: m256i, b: m256i) -> m256i {
1485    unsafe { transmute(__lasx_xvhsubw_du_wu(transmute(a), transmute(b))) }
1486}
1487
1488#[inline]
1489#[target_feature(enable = "lasx")]
1490#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1491pub fn lasx_xvshuf_b(a: m256i, b: m256i, c: m256i) -> m256i {
1492    unsafe { transmute(__lasx_xvshuf_b(transmute(a), transmute(b), transmute(c))) }
1493}
1494
1495#[inline]
1496#[target_feature(enable = "lasx")]
1497#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1498pub fn lasx_xvshuf_h(a: m256i, b: m256i, c: m256i) -> m256i {
1499    unsafe { transmute(__lasx_xvshuf_h(transmute(a), transmute(b), transmute(c))) }
1500}
1501
1502#[inline]
1503#[target_feature(enable = "lasx")]
1504#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1505pub fn lasx_xvshuf_w(a: m256i, b: m256i, c: m256i) -> m256i {
1506    unsafe { transmute(__lasx_xvshuf_w(transmute(a), transmute(b), transmute(c))) }
1507}
1508
1509#[inline]
1510#[target_feature(enable = "lasx")]
1511#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1512pub fn lasx_xvshuf_d(a: m256i, b: m256i, c: m256i) -> m256i {
1513    unsafe { transmute(__lasx_xvshuf_d(transmute(a), transmute(b), transmute(c))) }
1514}
1515
1516#[inline]
1517#[target_feature(enable = "lasx")]
1518#[rustc_legacy_const_generics(1)]
1519#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1520pub fn lasx_xvandi_b<const IMM8: u32>(a: m256i) -> m256i {
1521    static_assert_uimm_bits!(IMM8, 8);
1522    unsafe { transmute(__lasx_xvandi_b(transmute(a), IMM8)) }
1523}
1524
1525#[inline]
1526#[target_feature(enable = "lasx")]
1527#[rustc_legacy_const_generics(1)]
1528#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1529pub fn lasx_xvori_b<const IMM8: u32>(a: m256i) -> m256i {
1530    static_assert_uimm_bits!(IMM8, 8);
1531    unsafe { transmute(__lasx_xvori_b(transmute(a), IMM8)) }
1532}
1533
1534#[inline]
1535#[target_feature(enable = "lasx")]
1536#[rustc_legacy_const_generics(1)]
1537#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1538pub fn lasx_xvnori_b<const IMM8: u32>(a: m256i) -> m256i {
1539    static_assert_uimm_bits!(IMM8, 8);
1540    unsafe { transmute(__lasx_xvnori_b(transmute(a), IMM8)) }
1541}
1542
1543#[inline]
1544#[target_feature(enable = "lasx")]
1545#[rustc_legacy_const_generics(1)]
1546#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1547pub fn lasx_xvxori_b<const IMM8: u32>(a: m256i) -> m256i {
1548    static_assert_uimm_bits!(IMM8, 8);
1549    unsafe { transmute(__lasx_xvxori_b(transmute(a), IMM8)) }
1550}
1551
1552#[inline]
1553#[target_feature(enable = "lasx")]
1554#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1555pub fn lasx_xvbitsel_v(a: m256i, b: m256i, c: m256i) -> m256i {
1556    unsafe { transmute(__lasx_xvbitsel_v(transmute(a), transmute(b), transmute(c))) }
1557}
1558
1559#[inline]
1560#[target_feature(enable = "lasx")]
1561#[rustc_legacy_const_generics(2)]
1562#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1563pub fn lasx_xvbitseli_b<const IMM8: u32>(a: m256i, b: m256i) -> m256i {
1564    static_assert_uimm_bits!(IMM8, 8);
1565    unsafe { transmute(__lasx_xvbitseli_b(transmute(a), transmute(b), IMM8)) }
1566}
1567
1568#[inline]
1569#[target_feature(enable = "lasx")]
1570#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1571pub fn lasx_xvclo_b(a: m256i) -> m256i {
1572    unsafe { transmute(__lasx_xvclo_b(transmute(a))) }
1573}
1574
1575#[inline]
1576#[target_feature(enable = "lasx")]
1577#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1578pub fn lasx_xvclo_h(a: m256i) -> m256i {
1579    unsafe { transmute(__lasx_xvclo_h(transmute(a))) }
1580}
1581
1582#[inline]
1583#[target_feature(enable = "lasx")]
1584#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1585pub fn lasx_xvclo_w(a: m256i) -> m256i {
1586    unsafe { transmute(__lasx_xvclo_w(transmute(a))) }
1587}
1588
1589#[inline]
1590#[target_feature(enable = "lasx")]
1591#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1592pub fn lasx_xvclo_d(a: m256i) -> m256i {
1593    unsafe { transmute(__lasx_xvclo_d(transmute(a))) }
1594}
1595
1596#[inline]
1597#[target_feature(enable = "lasx")]
1598#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1599pub fn lasx_xvfcvt_h_s(a: m256, b: m256) -> m256i {
1600    unsafe { transmute(__lasx_xvfcvt_h_s(transmute(a), transmute(b))) }
1601}
1602
1603#[inline]
1604#[target_feature(enable = "lasx")]
1605#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1606pub fn lasx_xvfcvt_s_d(a: m256d, b: m256d) -> m256 {
1607    unsafe { transmute(__lasx_xvfcvt_s_d(transmute(a), transmute(b))) }
1608}
1609
1610#[inline]
1611#[target_feature(enable = "lasx")]
1612#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1613pub fn lasx_xvfmin_s(a: m256, b: m256) -> m256 {
1614    unsafe { transmute(__lasx_xvfmin_s(transmute(a), transmute(b))) }
1615}
1616
1617#[inline]
1618#[target_feature(enable = "lasx")]
1619#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1620pub fn lasx_xvfmin_d(a: m256d, b: m256d) -> m256d {
1621    unsafe { transmute(__lasx_xvfmin_d(transmute(a), transmute(b))) }
1622}
1623
1624#[inline]
1625#[target_feature(enable = "lasx")]
1626#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1627pub fn lasx_xvfmina_s(a: m256, b: m256) -> m256 {
1628    unsafe { transmute(__lasx_xvfmina_s(transmute(a), transmute(b))) }
1629}
1630
1631#[inline]
1632#[target_feature(enable = "lasx")]
1633#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1634pub fn lasx_xvfmina_d(a: m256d, b: m256d) -> m256d {
1635    unsafe { transmute(__lasx_xvfmina_d(transmute(a), transmute(b))) }
1636}
1637
1638#[inline]
1639#[target_feature(enable = "lasx")]
1640#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1641pub fn lasx_xvfmax_s(a: m256, b: m256) -> m256 {
1642    unsafe { transmute(__lasx_xvfmax_s(transmute(a), transmute(b))) }
1643}
1644
1645#[inline]
1646#[target_feature(enable = "lasx")]
1647#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1648pub fn lasx_xvfmax_d(a: m256d, b: m256d) -> m256d {
1649    unsafe { transmute(__lasx_xvfmax_d(transmute(a), transmute(b))) }
1650}
1651
1652#[inline]
1653#[target_feature(enable = "lasx")]
1654#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1655pub fn lasx_xvfmaxa_s(a: m256, b: m256) -> m256 {
1656    unsafe { transmute(__lasx_xvfmaxa_s(transmute(a), transmute(b))) }
1657}
1658
1659#[inline]
1660#[target_feature(enable = "lasx")]
1661#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1662pub fn lasx_xvfmaxa_d(a: m256d, b: m256d) -> m256d {
1663    unsafe { transmute(__lasx_xvfmaxa_d(transmute(a), transmute(b))) }
1664}
1665
1666#[inline]
1667#[target_feature(enable = "lasx")]
1668#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1669pub fn lasx_xvfclass_s(a: m256) -> m256i {
1670    unsafe { transmute(__lasx_xvfclass_s(transmute(a))) }
1671}
1672
1673#[inline]
1674#[target_feature(enable = "lasx")]
1675#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1676pub fn lasx_xvfclass_d(a: m256d) -> m256i {
1677    unsafe { transmute(__lasx_xvfclass_d(transmute(a))) }
1678}
1679
1680#[inline]
1681#[target_feature(enable = "lasx,frecipe")]
1682#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1683pub fn lasx_xvfrecipe_s(a: m256) -> m256 {
1684    unsafe { transmute(__lasx_xvfrecipe_s(transmute(a))) }
1685}
1686
1687#[inline]
1688#[target_feature(enable = "lasx,frecipe")]
1689#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1690pub fn lasx_xvfrecipe_d(a: m256d) -> m256d {
1691    unsafe { transmute(__lasx_xvfrecipe_d(transmute(a))) }
1692}
1693
1694#[inline]
1695#[target_feature(enable = "lasx,frecipe")]
1696#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1697pub fn lasx_xvfrsqrte_s(a: m256) -> m256 {
1698    unsafe { transmute(__lasx_xvfrsqrte_s(transmute(a))) }
1699}
1700
1701#[inline]
1702#[target_feature(enable = "lasx,frecipe")]
1703#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1704pub fn lasx_xvfrsqrte_d(a: m256d) -> m256d {
1705    unsafe { transmute(__lasx_xvfrsqrte_d(transmute(a))) }
1706}
1707
1708#[inline]
1709#[target_feature(enable = "lasx")]
1710#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1711pub fn lasx_xvfrint_s(a: m256) -> m256 {
1712    unsafe { transmute(__lasx_xvfrint_s(transmute(a))) }
1713}
1714
1715#[inline]
1716#[target_feature(enable = "lasx")]
1717#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1718pub fn lasx_xvfrint_d(a: m256d) -> m256d {
1719    unsafe { transmute(__lasx_xvfrint_d(transmute(a))) }
1720}
1721
1722#[inline]
1723#[target_feature(enable = "lasx")]
1724#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1725pub fn lasx_xvflogb_s(a: m256) -> m256 {
1726    unsafe { transmute(__lasx_xvflogb_s(transmute(a))) }
1727}
1728
1729#[inline]
1730#[target_feature(enable = "lasx")]
1731#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1732pub fn lasx_xvflogb_d(a: m256d) -> m256d {
1733    unsafe { transmute(__lasx_xvflogb_d(transmute(a))) }
1734}
1735
1736#[inline]
1737#[target_feature(enable = "lasx")]
1738#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1739pub fn lasx_xvfcvth_s_h(a: m256i) -> m256 {
1740    unsafe { transmute(__lasx_xvfcvth_s_h(transmute(a))) }
1741}
1742
1743#[inline]
1744#[target_feature(enable = "lasx")]
1745#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1746pub fn lasx_xvfcvth_d_s(a: m256) -> m256d {
1747    unsafe { transmute(__lasx_xvfcvth_d_s(transmute(a))) }
1748}
1749
1750#[inline]
1751#[target_feature(enable = "lasx")]
1752#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1753pub fn lasx_xvfcvtl_s_h(a: m256i) -> m256 {
1754    unsafe { transmute(__lasx_xvfcvtl_s_h(transmute(a))) }
1755}
1756
1757#[inline]
1758#[target_feature(enable = "lasx")]
1759#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1760pub fn lasx_xvfcvtl_d_s(a: m256) -> m256d {
1761    unsafe { transmute(__lasx_xvfcvtl_d_s(transmute(a))) }
1762}
1763
1764#[inline]
1765#[target_feature(enable = "lasx")]
1766#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1767pub fn lasx_xvftint_w_s(a: m256) -> m256i {
1768    unsafe { transmute(__lasx_xvftint_w_s(transmute(a))) }
1769}
1770
1771#[inline]
1772#[target_feature(enable = "lasx")]
1773#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1774pub fn lasx_xvftint_l_d(a: m256d) -> m256i {
1775    unsafe { transmute(__lasx_xvftint_l_d(transmute(a))) }
1776}
1777
1778#[inline]
1779#[target_feature(enable = "lasx")]
1780#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1781pub fn lasx_xvftint_wu_s(a: m256) -> m256i {
1782    unsafe { transmute(__lasx_xvftint_wu_s(transmute(a))) }
1783}
1784
1785#[inline]
1786#[target_feature(enable = "lasx")]
1787#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1788pub fn lasx_xvftint_lu_d(a: m256d) -> m256i {
1789    unsafe { transmute(__lasx_xvftint_lu_d(transmute(a))) }
1790}
1791
1792#[inline]
1793#[target_feature(enable = "lasx")]
1794#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1795pub fn lasx_xvftintrz_w_s(a: m256) -> m256i {
1796    unsafe { transmute(__lasx_xvftintrz_w_s(transmute(a))) }
1797}
1798
1799#[inline]
1800#[target_feature(enable = "lasx")]
1801#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1802pub fn lasx_xvftintrz_l_d(a: m256d) -> m256i {
1803    unsafe { transmute(__lasx_xvftintrz_l_d(transmute(a))) }
1804}
1805
1806#[inline]
1807#[target_feature(enable = "lasx")]
1808#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1809pub fn lasx_xvftintrz_wu_s(a: m256) -> m256i {
1810    unsafe { transmute(__lasx_xvftintrz_wu_s(transmute(a))) }
1811}
1812
1813#[inline]
1814#[target_feature(enable = "lasx")]
1815#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1816pub fn lasx_xvftintrz_lu_d(a: m256d) -> m256i {
1817    unsafe { transmute(__lasx_xvftintrz_lu_d(transmute(a))) }
1818}
1819
1820#[inline]
1821#[target_feature(enable = "lasx")]
1822#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1823pub fn lasx_xvffint_s_w(a: m256i) -> m256 {
1824    unsafe { transmute(__lasx_xvffint_s_w(transmute(a))) }
1825}
1826
1827#[inline]
1828#[target_feature(enable = "lasx")]
1829#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1830pub fn lasx_xvffint_d_l(a: m256i) -> m256d {
1831    unsafe { transmute(__lasx_xvffint_d_l(transmute(a))) }
1832}
1833
1834#[inline]
1835#[target_feature(enable = "lasx")]
1836#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1837pub fn lasx_xvffint_s_wu(a: m256i) -> m256 {
1838    unsafe { transmute(__lasx_xvffint_s_wu(transmute(a))) }
1839}
1840
1841#[inline]
1842#[target_feature(enable = "lasx")]
1843#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1844pub fn lasx_xvffint_d_lu(a: m256i) -> m256d {
1845    unsafe { transmute(__lasx_xvffint_d_lu(transmute(a))) }
1846}
1847
1848#[inline]
1849#[target_feature(enable = "lasx")]
1850#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1851pub fn lasx_xvreplve_b(a: m256i, b: i32) -> m256i {
1852    unsafe { transmute(__lasx_xvreplve_b(transmute(a), transmute(b))) }
1853}
1854
1855#[inline]
1856#[target_feature(enable = "lasx")]
1857#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1858pub fn lasx_xvreplve_h(a: m256i, b: i32) -> m256i {
1859    unsafe { transmute(__lasx_xvreplve_h(transmute(a), transmute(b))) }
1860}
1861
1862#[inline]
1863#[target_feature(enable = "lasx")]
1864#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1865pub fn lasx_xvreplve_w(a: m256i, b: i32) -> m256i {
1866    unsafe { transmute(__lasx_xvreplve_w(transmute(a), transmute(b))) }
1867}
1868
1869#[inline]
1870#[target_feature(enable = "lasx")]
1871#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1872pub fn lasx_xvreplve_d(a: m256i, b: i32) -> m256i {
1873    unsafe { transmute(__lasx_xvreplve_d(transmute(a), transmute(b))) }
1874}
1875
1876#[inline]
1877#[target_feature(enable = "lasx")]
1878#[rustc_legacy_const_generics(2)]
1879#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1880pub fn lasx_xvpermi_w<const IMM8: u32>(a: m256i, b: m256i) -> m256i {
1881    static_assert_uimm_bits!(IMM8, 8);
1882    unsafe { transmute(__lasx_xvpermi_w(transmute(a), transmute(b), IMM8)) }
1883}
1884
1885#[inline]
1886#[target_feature(enable = "lasx")]
1887#[rustc_legacy_const_generics(1)]
1888#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1889pub fn lasx_xvsllwil_h_b<const IMM3: u32>(a: m256i) -> m256i {
1890    static_assert_uimm_bits!(IMM3, 3);
1891    unsafe { transmute(__lasx_xvsllwil_h_b(transmute(a), IMM3)) }
1892}
1893
1894#[inline]
1895#[target_feature(enable = "lasx")]
1896#[rustc_legacy_const_generics(1)]
1897#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1898pub fn lasx_xvsllwil_w_h<const IMM4: u32>(a: m256i) -> m256i {
1899    static_assert_uimm_bits!(IMM4, 4);
1900    unsafe { transmute(__lasx_xvsllwil_w_h(transmute(a), IMM4)) }
1901}
1902
1903#[inline]
1904#[target_feature(enable = "lasx")]
1905#[rustc_legacy_const_generics(1)]
1906#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1907pub fn lasx_xvsllwil_d_w<const IMM5: u32>(a: m256i) -> m256i {
1908    static_assert_uimm_bits!(IMM5, 5);
1909    unsafe { transmute(__lasx_xvsllwil_d_w(transmute(a), IMM5)) }
1910}
1911
1912#[inline]
1913#[target_feature(enable = "lasx")]
1914#[rustc_legacy_const_generics(1)]
1915#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1916pub fn lasx_xvsllwil_hu_bu<const IMM3: u32>(a: m256i) -> m256i {
1917    static_assert_uimm_bits!(IMM3, 3);
1918    unsafe { transmute(__lasx_xvsllwil_hu_bu(transmute(a), IMM3)) }
1919}
1920
1921#[inline]
1922#[target_feature(enable = "lasx")]
1923#[rustc_legacy_const_generics(1)]
1924#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1925pub fn lasx_xvsllwil_wu_hu<const IMM4: u32>(a: m256i) -> m256i {
1926    static_assert_uimm_bits!(IMM4, 4);
1927    unsafe { transmute(__lasx_xvsllwil_wu_hu(transmute(a), IMM4)) }
1928}
1929
1930#[inline]
1931#[target_feature(enable = "lasx")]
1932#[rustc_legacy_const_generics(1)]
1933#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1934pub fn lasx_xvsllwil_du_wu<const IMM5: u32>(a: m256i) -> m256i {
1935    static_assert_uimm_bits!(IMM5, 5);
1936    unsafe { transmute(__lasx_xvsllwil_du_wu(transmute(a), IMM5)) }
1937}
1938
1939#[inline]
1940#[target_feature(enable = "lasx")]
1941#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1942pub fn lasx_xvsran_b_h(a: m256i, b: m256i) -> m256i {
1943    unsafe { transmute(__lasx_xvsran_b_h(transmute(a), transmute(b))) }
1944}
1945
1946#[inline]
1947#[target_feature(enable = "lasx")]
1948#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1949pub fn lasx_xvsran_h_w(a: m256i, b: m256i) -> m256i {
1950    unsafe { transmute(__lasx_xvsran_h_w(transmute(a), transmute(b))) }
1951}
1952
1953#[inline]
1954#[target_feature(enable = "lasx")]
1955#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1956pub fn lasx_xvsran_w_d(a: m256i, b: m256i) -> m256i {
1957    unsafe { transmute(__lasx_xvsran_w_d(transmute(a), transmute(b))) }
1958}
1959
1960#[inline]
1961#[target_feature(enable = "lasx")]
1962#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1963pub fn lasx_xvssran_b_h(a: m256i, b: m256i) -> m256i {
1964    unsafe { transmute(__lasx_xvssran_b_h(transmute(a), transmute(b))) }
1965}
1966
1967#[inline]
1968#[target_feature(enable = "lasx")]
1969#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1970pub fn lasx_xvssran_h_w(a: m256i, b: m256i) -> m256i {
1971    unsafe { transmute(__lasx_xvssran_h_w(transmute(a), transmute(b))) }
1972}
1973
1974#[inline]
1975#[target_feature(enable = "lasx")]
1976#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1977pub fn lasx_xvssran_w_d(a: m256i, b: m256i) -> m256i {
1978    unsafe { transmute(__lasx_xvssran_w_d(transmute(a), transmute(b))) }
1979}
1980
1981#[inline]
1982#[target_feature(enable = "lasx")]
1983#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1984pub fn lasx_xvssran_bu_h(a: m256i, b: m256i) -> m256i {
1985    unsafe { transmute(__lasx_xvssran_bu_h(transmute(a), transmute(b))) }
1986}
1987
1988#[inline]
1989#[target_feature(enable = "lasx")]
1990#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1991pub fn lasx_xvssran_hu_w(a: m256i, b: m256i) -> m256i {
1992    unsafe { transmute(__lasx_xvssran_hu_w(transmute(a), transmute(b))) }
1993}
1994
1995#[inline]
1996#[target_feature(enable = "lasx")]
1997#[unstable(feature = "stdarch_loongarch", issue = "117427")]
1998pub fn lasx_xvssran_wu_d(a: m256i, b: m256i) -> m256i {
1999    unsafe { transmute(__lasx_xvssran_wu_d(transmute(a), transmute(b))) }
2000}
2001
2002#[inline]
2003#[target_feature(enable = "lasx")]
2004#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2005pub fn lasx_xvsrarn_b_h(a: m256i, b: m256i) -> m256i {
2006    unsafe { transmute(__lasx_xvsrarn_b_h(transmute(a), transmute(b))) }
2007}
2008
2009#[inline]
2010#[target_feature(enable = "lasx")]
2011#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2012pub fn lasx_xvsrarn_h_w(a: m256i, b: m256i) -> m256i {
2013    unsafe { transmute(__lasx_xvsrarn_h_w(transmute(a), transmute(b))) }
2014}
2015
2016#[inline]
2017#[target_feature(enable = "lasx")]
2018#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2019pub fn lasx_xvsrarn_w_d(a: m256i, b: m256i) -> m256i {
2020    unsafe { transmute(__lasx_xvsrarn_w_d(transmute(a), transmute(b))) }
2021}
2022
2023#[inline]
2024#[target_feature(enable = "lasx")]
2025#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2026pub fn lasx_xvssrarn_b_h(a: m256i, b: m256i) -> m256i {
2027    unsafe { transmute(__lasx_xvssrarn_b_h(transmute(a), transmute(b))) }
2028}
2029
2030#[inline]
2031#[target_feature(enable = "lasx")]
2032#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2033pub fn lasx_xvssrarn_h_w(a: m256i, b: m256i) -> m256i {
2034    unsafe { transmute(__lasx_xvssrarn_h_w(transmute(a), transmute(b))) }
2035}
2036
2037#[inline]
2038#[target_feature(enable = "lasx")]
2039#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2040pub fn lasx_xvssrarn_w_d(a: m256i, b: m256i) -> m256i {
2041    unsafe { transmute(__lasx_xvssrarn_w_d(transmute(a), transmute(b))) }
2042}
2043
2044#[inline]
2045#[target_feature(enable = "lasx")]
2046#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2047pub fn lasx_xvssrarn_bu_h(a: m256i, b: m256i) -> m256i {
2048    unsafe { transmute(__lasx_xvssrarn_bu_h(transmute(a), transmute(b))) }
2049}
2050
2051#[inline]
2052#[target_feature(enable = "lasx")]
2053#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2054pub fn lasx_xvssrarn_hu_w(a: m256i, b: m256i) -> m256i {
2055    unsafe { transmute(__lasx_xvssrarn_hu_w(transmute(a), transmute(b))) }
2056}
2057
2058#[inline]
2059#[target_feature(enable = "lasx")]
2060#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2061pub fn lasx_xvssrarn_wu_d(a: m256i, b: m256i) -> m256i {
2062    unsafe { transmute(__lasx_xvssrarn_wu_d(transmute(a), transmute(b))) }
2063}
2064
2065#[inline]
2066#[target_feature(enable = "lasx")]
2067#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2068pub fn lasx_xvsrln_b_h(a: m256i, b: m256i) -> m256i {
2069    unsafe { transmute(__lasx_xvsrln_b_h(transmute(a), transmute(b))) }
2070}
2071
2072#[inline]
2073#[target_feature(enable = "lasx")]
2074#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2075pub fn lasx_xvsrln_h_w(a: m256i, b: m256i) -> m256i {
2076    unsafe { transmute(__lasx_xvsrln_h_w(transmute(a), transmute(b))) }
2077}
2078
2079#[inline]
2080#[target_feature(enable = "lasx")]
2081#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2082pub fn lasx_xvsrln_w_d(a: m256i, b: m256i) -> m256i {
2083    unsafe { transmute(__lasx_xvsrln_w_d(transmute(a), transmute(b))) }
2084}
2085
2086#[inline]
2087#[target_feature(enable = "lasx")]
2088#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2089pub fn lasx_xvssrln_bu_h(a: m256i, b: m256i) -> m256i {
2090    unsafe { transmute(__lasx_xvssrln_bu_h(transmute(a), transmute(b))) }
2091}
2092
2093#[inline]
2094#[target_feature(enable = "lasx")]
2095#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2096pub fn lasx_xvssrln_hu_w(a: m256i, b: m256i) -> m256i {
2097    unsafe { transmute(__lasx_xvssrln_hu_w(transmute(a), transmute(b))) }
2098}
2099
2100#[inline]
2101#[target_feature(enable = "lasx")]
2102#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2103pub fn lasx_xvssrln_wu_d(a: m256i, b: m256i) -> m256i {
2104    unsafe { transmute(__lasx_xvssrln_wu_d(transmute(a), transmute(b))) }
2105}
2106
2107#[inline]
2108#[target_feature(enable = "lasx")]
2109#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2110pub fn lasx_xvsrlrn_b_h(a: m256i, b: m256i) -> m256i {
2111    unsafe { transmute(__lasx_xvsrlrn_b_h(transmute(a), transmute(b))) }
2112}
2113
2114#[inline]
2115#[target_feature(enable = "lasx")]
2116#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2117pub fn lasx_xvsrlrn_h_w(a: m256i, b: m256i) -> m256i {
2118    unsafe { transmute(__lasx_xvsrlrn_h_w(transmute(a), transmute(b))) }
2119}
2120
2121#[inline]
2122#[target_feature(enable = "lasx")]
2123#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2124pub fn lasx_xvsrlrn_w_d(a: m256i, b: m256i) -> m256i {
2125    unsafe { transmute(__lasx_xvsrlrn_w_d(transmute(a), transmute(b))) }
2126}
2127
2128#[inline]
2129#[target_feature(enable = "lasx")]
2130#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2131pub fn lasx_xvssrlrn_bu_h(a: m256i, b: m256i) -> m256i {
2132    unsafe { transmute(__lasx_xvssrlrn_bu_h(transmute(a), transmute(b))) }
2133}
2134
2135#[inline]
2136#[target_feature(enable = "lasx")]
2137#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2138pub fn lasx_xvssrlrn_hu_w(a: m256i, b: m256i) -> m256i {
2139    unsafe { transmute(__lasx_xvssrlrn_hu_w(transmute(a), transmute(b))) }
2140}
2141
2142#[inline]
2143#[target_feature(enable = "lasx")]
2144#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2145pub fn lasx_xvssrlrn_wu_d(a: m256i, b: m256i) -> m256i {
2146    unsafe { transmute(__lasx_xvssrlrn_wu_d(transmute(a), transmute(b))) }
2147}
2148
2149#[inline]
2150#[target_feature(enable = "lasx")]
2151#[rustc_legacy_const_generics(2)]
2152#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2153pub fn lasx_xvfrstpi_b<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
2154    static_assert_uimm_bits!(IMM5, 5);
2155    unsafe { transmute(__lasx_xvfrstpi_b(transmute(a), transmute(b), IMM5)) }
2156}
2157
2158#[inline]
2159#[target_feature(enable = "lasx")]
2160#[rustc_legacy_const_generics(2)]
2161#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2162pub fn lasx_xvfrstpi_h<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
2163    static_assert_uimm_bits!(IMM5, 5);
2164    unsafe { transmute(__lasx_xvfrstpi_h(transmute(a), transmute(b), IMM5)) }
2165}
2166
2167#[inline]
2168#[target_feature(enable = "lasx")]
2169#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2170pub fn lasx_xvfrstp_b(a: m256i, b: m256i, c: m256i) -> m256i {
2171    unsafe { transmute(__lasx_xvfrstp_b(transmute(a), transmute(b), transmute(c))) }
2172}
2173
2174#[inline]
2175#[target_feature(enable = "lasx")]
2176#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2177pub fn lasx_xvfrstp_h(a: m256i, b: m256i, c: m256i) -> m256i {
2178    unsafe { transmute(__lasx_xvfrstp_h(transmute(a), transmute(b), transmute(c))) }
2179}
2180
2181#[inline]
2182#[target_feature(enable = "lasx")]
2183#[rustc_legacy_const_generics(2)]
2184#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2185pub fn lasx_xvshuf4i_d<const IMM8: u32>(a: m256i, b: m256i) -> m256i {
2186    static_assert_uimm_bits!(IMM8, 8);
2187    unsafe { transmute(__lasx_xvshuf4i_d(transmute(a), transmute(b), IMM8)) }
2188}
2189
2190#[inline]
2191#[target_feature(enable = "lasx")]
2192#[rustc_legacy_const_generics(1)]
2193#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2194pub fn lasx_xvbsrl_v<const IMM5: u32>(a: m256i) -> m256i {
2195    static_assert_uimm_bits!(IMM5, 5);
2196    unsafe { transmute(__lasx_xvbsrl_v(transmute(a), IMM5)) }
2197}
2198
2199#[inline]
2200#[target_feature(enable = "lasx")]
2201#[rustc_legacy_const_generics(1)]
2202#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2203pub fn lasx_xvbsll_v<const IMM5: u32>(a: m256i) -> m256i {
2204    static_assert_uimm_bits!(IMM5, 5);
2205    unsafe { transmute(__lasx_xvbsll_v(transmute(a), IMM5)) }
2206}
2207
2208#[inline]
2209#[target_feature(enable = "lasx")]
2210#[rustc_legacy_const_generics(2)]
2211#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2212pub fn lasx_xvextrins_b<const IMM8: u32>(a: m256i, b: m256i) -> m256i {
2213    static_assert_uimm_bits!(IMM8, 8);
2214    unsafe { transmute(__lasx_xvextrins_b(transmute(a), transmute(b), IMM8)) }
2215}
2216
2217#[inline]
2218#[target_feature(enable = "lasx")]
2219#[rustc_legacy_const_generics(2)]
2220#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2221pub fn lasx_xvextrins_h<const IMM8: u32>(a: m256i, b: m256i) -> m256i {
2222    static_assert_uimm_bits!(IMM8, 8);
2223    unsafe { transmute(__lasx_xvextrins_h(transmute(a), transmute(b), IMM8)) }
2224}
2225
2226#[inline]
2227#[target_feature(enable = "lasx")]
2228#[rustc_legacy_const_generics(2)]
2229#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2230pub fn lasx_xvextrins_w<const IMM8: u32>(a: m256i, b: m256i) -> m256i {
2231    static_assert_uimm_bits!(IMM8, 8);
2232    unsafe { transmute(__lasx_xvextrins_w(transmute(a), transmute(b), IMM8)) }
2233}
2234
2235#[inline]
2236#[target_feature(enable = "lasx")]
2237#[rustc_legacy_const_generics(2)]
2238#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2239pub fn lasx_xvextrins_d<const IMM8: u32>(a: m256i, b: m256i) -> m256i {
2240    static_assert_uimm_bits!(IMM8, 8);
2241    unsafe { transmute(__lasx_xvextrins_d(transmute(a), transmute(b), IMM8)) }
2242}
2243
2244#[inline]
2245#[target_feature(enable = "lasx")]
2246#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2247pub fn lasx_xvmskltz_b(a: m256i) -> m256i {
2248    unsafe { transmute(__lasx_xvmskltz_b(transmute(a))) }
2249}
2250
2251#[inline]
2252#[target_feature(enable = "lasx")]
2253#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2254pub fn lasx_xvmskltz_h(a: m256i) -> m256i {
2255    unsafe { transmute(__lasx_xvmskltz_h(transmute(a))) }
2256}
2257
2258#[inline]
2259#[target_feature(enable = "lasx")]
2260#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2261pub fn lasx_xvmskltz_w(a: m256i) -> m256i {
2262    unsafe { transmute(__lasx_xvmskltz_w(transmute(a))) }
2263}
2264
2265#[inline]
2266#[target_feature(enable = "lasx")]
2267#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2268pub fn lasx_xvmskltz_d(a: m256i) -> m256i {
2269    unsafe { transmute(__lasx_xvmskltz_d(transmute(a))) }
2270}
2271
2272#[inline]
2273#[target_feature(enable = "lasx")]
2274#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2275pub fn lasx_xvsigncov_b(a: m256i, b: m256i) -> m256i {
2276    unsafe { transmute(__lasx_xvsigncov_b(transmute(a), transmute(b))) }
2277}
2278
2279#[inline]
2280#[target_feature(enable = "lasx")]
2281#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2282pub fn lasx_xvsigncov_h(a: m256i, b: m256i) -> m256i {
2283    unsafe { transmute(__lasx_xvsigncov_h(transmute(a), transmute(b))) }
2284}
2285
2286#[inline]
2287#[target_feature(enable = "lasx")]
2288#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2289pub fn lasx_xvsigncov_w(a: m256i, b: m256i) -> m256i {
2290    unsafe { transmute(__lasx_xvsigncov_w(transmute(a), transmute(b))) }
2291}
2292
2293#[inline]
2294#[target_feature(enable = "lasx")]
2295#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2296pub fn lasx_xvsigncov_d(a: m256i, b: m256i) -> m256i {
2297    unsafe { transmute(__lasx_xvsigncov_d(transmute(a), transmute(b))) }
2298}
2299
2300#[inline]
2301#[target_feature(enable = "lasx")]
2302#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2303pub fn lasx_xvftintrne_w_s(a: m256) -> m256i {
2304    unsafe { transmute(__lasx_xvftintrne_w_s(transmute(a))) }
2305}
2306
2307#[inline]
2308#[target_feature(enable = "lasx")]
2309#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2310pub fn lasx_xvftintrne_l_d(a: m256d) -> m256i {
2311    unsafe { transmute(__lasx_xvftintrne_l_d(transmute(a))) }
2312}
2313
2314#[inline]
2315#[target_feature(enable = "lasx")]
2316#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2317pub fn lasx_xvftintrp_w_s(a: m256) -> m256i {
2318    unsafe { transmute(__lasx_xvftintrp_w_s(transmute(a))) }
2319}
2320
2321#[inline]
2322#[target_feature(enable = "lasx")]
2323#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2324pub fn lasx_xvftintrp_l_d(a: m256d) -> m256i {
2325    unsafe { transmute(__lasx_xvftintrp_l_d(transmute(a))) }
2326}
2327
2328#[inline]
2329#[target_feature(enable = "lasx")]
2330#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2331pub fn lasx_xvftintrm_w_s(a: m256) -> m256i {
2332    unsafe { transmute(__lasx_xvftintrm_w_s(transmute(a))) }
2333}
2334
2335#[inline]
2336#[target_feature(enable = "lasx")]
2337#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2338pub fn lasx_xvftintrm_l_d(a: m256d) -> m256i {
2339    unsafe { transmute(__lasx_xvftintrm_l_d(transmute(a))) }
2340}
2341
2342#[inline]
2343#[target_feature(enable = "lasx")]
2344#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2345pub fn lasx_xvftint_w_d(a: m256d, b: m256d) -> m256i {
2346    unsafe { transmute(__lasx_xvftint_w_d(transmute(a), transmute(b))) }
2347}
2348
2349#[inline]
2350#[target_feature(enable = "lasx")]
2351#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2352pub fn lasx_xvffint_s_l(a: m256i, b: m256i) -> m256 {
2353    unsafe { transmute(__lasx_xvffint_s_l(transmute(a), transmute(b))) }
2354}
2355
2356#[inline]
2357#[target_feature(enable = "lasx")]
2358#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2359pub fn lasx_xvftintrz_w_d(a: m256d, b: m256d) -> m256i {
2360    unsafe { transmute(__lasx_xvftintrz_w_d(transmute(a), transmute(b))) }
2361}
2362
2363#[inline]
2364#[target_feature(enable = "lasx")]
2365#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2366pub fn lasx_xvftintrp_w_d(a: m256d, b: m256d) -> m256i {
2367    unsafe { transmute(__lasx_xvftintrp_w_d(transmute(a), transmute(b))) }
2368}
2369
2370#[inline]
2371#[target_feature(enable = "lasx")]
2372#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2373pub fn lasx_xvftintrm_w_d(a: m256d, b: m256d) -> m256i {
2374    unsafe { transmute(__lasx_xvftintrm_w_d(transmute(a), transmute(b))) }
2375}
2376
2377#[inline]
2378#[target_feature(enable = "lasx")]
2379#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2380pub fn lasx_xvftintrne_w_d(a: m256d, b: m256d) -> m256i {
2381    unsafe { transmute(__lasx_xvftintrne_w_d(transmute(a), transmute(b))) }
2382}
2383
2384#[inline]
2385#[target_feature(enable = "lasx")]
2386#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2387pub fn lasx_xvftinth_l_s(a: m256) -> m256i {
2388    unsafe { transmute(__lasx_xvftinth_l_s(transmute(a))) }
2389}
2390
2391#[inline]
2392#[target_feature(enable = "lasx")]
2393#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2394pub fn lasx_xvftintl_l_s(a: m256) -> m256i {
2395    unsafe { transmute(__lasx_xvftintl_l_s(transmute(a))) }
2396}
2397
2398#[inline]
2399#[target_feature(enable = "lasx")]
2400#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2401pub fn lasx_xvffinth_d_w(a: m256i) -> m256d {
2402    unsafe { transmute(__lasx_xvffinth_d_w(transmute(a))) }
2403}
2404
2405#[inline]
2406#[target_feature(enable = "lasx")]
2407#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2408pub fn lasx_xvffintl_d_w(a: m256i) -> m256d {
2409    unsafe { transmute(__lasx_xvffintl_d_w(transmute(a))) }
2410}
2411
2412#[inline]
2413#[target_feature(enable = "lasx")]
2414#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2415pub fn lasx_xvftintrzh_l_s(a: m256) -> m256i {
2416    unsafe { transmute(__lasx_xvftintrzh_l_s(transmute(a))) }
2417}
2418
2419#[inline]
2420#[target_feature(enable = "lasx")]
2421#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2422pub fn lasx_xvftintrzl_l_s(a: m256) -> m256i {
2423    unsafe { transmute(__lasx_xvftintrzl_l_s(transmute(a))) }
2424}
2425
2426#[inline]
2427#[target_feature(enable = "lasx")]
2428#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2429pub fn lasx_xvftintrph_l_s(a: m256) -> m256i {
2430    unsafe { transmute(__lasx_xvftintrph_l_s(transmute(a))) }
2431}
2432
2433#[inline]
2434#[target_feature(enable = "lasx")]
2435#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2436pub fn lasx_xvftintrpl_l_s(a: m256) -> m256i {
2437    unsafe { transmute(__lasx_xvftintrpl_l_s(transmute(a))) }
2438}
2439
2440#[inline]
2441#[target_feature(enable = "lasx")]
2442#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2443pub fn lasx_xvftintrmh_l_s(a: m256) -> m256i {
2444    unsafe { transmute(__lasx_xvftintrmh_l_s(transmute(a))) }
2445}
2446
2447#[inline]
2448#[target_feature(enable = "lasx")]
2449#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2450pub fn lasx_xvftintrml_l_s(a: m256) -> m256i {
2451    unsafe { transmute(__lasx_xvftintrml_l_s(transmute(a))) }
2452}
2453
2454#[inline]
2455#[target_feature(enable = "lasx")]
2456#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2457pub fn lasx_xvftintrneh_l_s(a: m256) -> m256i {
2458    unsafe { transmute(__lasx_xvftintrneh_l_s(transmute(a))) }
2459}
2460
2461#[inline]
2462#[target_feature(enable = "lasx")]
2463#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2464pub fn lasx_xvftintrnel_l_s(a: m256) -> m256i {
2465    unsafe { transmute(__lasx_xvftintrnel_l_s(transmute(a))) }
2466}
2467
2468#[inline]
2469#[target_feature(enable = "lasx")]
2470#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2471pub fn lasx_xvfrintrne_s(a: m256) -> m256 {
2472    unsafe { transmute(__lasx_xvfrintrne_s(transmute(a))) }
2473}
2474
2475#[inline]
2476#[target_feature(enable = "lasx")]
2477#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2478pub fn lasx_xvfrintrne_d(a: m256d) -> m256d {
2479    unsafe { transmute(__lasx_xvfrintrne_d(transmute(a))) }
2480}
2481
2482#[inline]
2483#[target_feature(enable = "lasx")]
2484#[rustc_legacy_const_generics(2, 3)]
2485#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2486pub unsafe fn lasx_xvstelm_b<const IMM_S8: i32, const IMM4: u32>(a: m256i, mem_addr: *mut i8) {
2487    static_assert_simm_bits!(IMM_S8, 8);
2488    static_assert_uimm_bits!(IMM4, 4);
2489    __lasx_xvstelm_b(transmute(a), mem_addr, IMM_S8, IMM4)
2490}
2491
2492#[inline]
2493#[target_feature(enable = "lasx")]
2494#[rustc_legacy_const_generics(2, 3)]
2495#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2496pub unsafe fn lasx_xvstelm_h<const IMM_S8: i32, const IMM3: u32>(a: m256i, mem_addr: *mut i8) {
2497    static_assert_simm_bits!(IMM_S8, 8);
2498    static_assert_uimm_bits!(IMM3, 3);
2499    __lasx_xvstelm_h(transmute(a), mem_addr, IMM_S8, IMM3)
2500}
2501
2502#[inline]
2503#[target_feature(enable = "lasx")]
2504#[rustc_legacy_const_generics(2, 3)]
2505#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2506pub unsafe fn lasx_xvstelm_w<const IMM_S8: i32, const IMM2: u32>(a: m256i, mem_addr: *mut i8) {
2507    static_assert_simm_bits!(IMM_S8, 8);
2508    static_assert_uimm_bits!(IMM2, 2);
2509    __lasx_xvstelm_w(transmute(a), mem_addr, IMM_S8, IMM2)
2510}
2511
2512#[inline]
2513#[target_feature(enable = "lasx")]
2514#[rustc_legacy_const_generics(2, 3)]
2515#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2516pub unsafe fn lasx_xvstelm_d<const IMM_S8: i32, const IMM1: u32>(a: m256i, mem_addr: *mut i8) {
2517    static_assert_simm_bits!(IMM_S8, 8);
2518    static_assert_uimm_bits!(IMM1, 1);
2519    __lasx_xvstelm_d(transmute(a), mem_addr, IMM_S8, IMM1)
2520}
2521
2522#[inline]
2523#[target_feature(enable = "lasx")]
2524#[rustc_legacy_const_generics(2)]
2525#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2526pub fn lasx_xvinsve0_w<const IMM3: u32>(a: m256i, b: m256i) -> m256i {
2527    static_assert_uimm_bits!(IMM3, 3);
2528    unsafe { transmute(__lasx_xvinsve0_w(transmute(a), transmute(b), IMM3)) }
2529}
2530
2531#[inline]
2532#[target_feature(enable = "lasx")]
2533#[rustc_legacy_const_generics(2)]
2534#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2535pub fn lasx_xvinsve0_d<const IMM2: u32>(a: m256i, b: m256i) -> m256i {
2536    static_assert_uimm_bits!(IMM2, 2);
2537    unsafe { transmute(__lasx_xvinsve0_d(transmute(a), transmute(b), IMM2)) }
2538}
2539
2540#[inline]
2541#[target_feature(enable = "lasx")]
2542#[rustc_legacy_const_generics(1)]
2543#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2544pub fn lasx_xvpickve_w<const IMM3: u32>(a: m256i) -> m256i {
2545    static_assert_uimm_bits!(IMM3, 3);
2546    unsafe { transmute(__lasx_xvpickve_w(transmute(a), IMM3)) }
2547}
2548
2549#[inline]
2550#[target_feature(enable = "lasx")]
2551#[rustc_legacy_const_generics(1)]
2552#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2553pub fn lasx_xvpickve_d<const IMM2: u32>(a: m256i) -> m256i {
2554    static_assert_uimm_bits!(IMM2, 2);
2555    unsafe { transmute(__lasx_xvpickve_d(transmute(a), IMM2)) }
2556}
2557
2558#[inline]
2559#[target_feature(enable = "lasx")]
2560#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2561pub fn lasx_xvssrlrn_b_h(a: m256i, b: m256i) -> m256i {
2562    unsafe { transmute(__lasx_xvssrlrn_b_h(transmute(a), transmute(b))) }
2563}
2564
2565#[inline]
2566#[target_feature(enable = "lasx")]
2567#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2568pub fn lasx_xvssrlrn_h_w(a: m256i, b: m256i) -> m256i {
2569    unsafe { transmute(__lasx_xvssrlrn_h_w(transmute(a), transmute(b))) }
2570}
2571
2572#[inline]
2573#[target_feature(enable = "lasx")]
2574#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2575pub fn lasx_xvssrlrn_w_d(a: m256i, b: m256i) -> m256i {
2576    unsafe { transmute(__lasx_xvssrlrn_w_d(transmute(a), transmute(b))) }
2577}
2578
2579#[inline]
2580#[target_feature(enable = "lasx")]
2581#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2582pub fn lasx_xvssrln_b_h(a: m256i, b: m256i) -> m256i {
2583    unsafe { transmute(__lasx_xvssrln_b_h(transmute(a), transmute(b))) }
2584}
2585
2586#[inline]
2587#[target_feature(enable = "lasx")]
2588#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2589pub fn lasx_xvssrln_h_w(a: m256i, b: m256i) -> m256i {
2590    unsafe { transmute(__lasx_xvssrln_h_w(transmute(a), transmute(b))) }
2591}
2592
2593#[inline]
2594#[target_feature(enable = "lasx")]
2595#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2596pub fn lasx_xvssrln_w_d(a: m256i, b: m256i) -> m256i {
2597    unsafe { transmute(__lasx_xvssrln_w_d(transmute(a), transmute(b))) }
2598}
2599
2600#[inline]
2601#[target_feature(enable = "lasx")]
2602#[rustc_legacy_const_generics(0)]
2603#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2604pub fn lasx_xvldi<const IMM_S13: i32>() -> m256i {
2605    static_assert_simm_bits!(IMM_S13, 13);
2606    unsafe { transmute(__lasx_xvldi(IMM_S13)) }
2607}
2608
2609#[inline]
2610#[target_feature(enable = "lasx")]
2611#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2612pub fn lasx_xvextl_qu_du(a: m256i) -> m256i {
2613    unsafe { transmute(__lasx_xvextl_qu_du(transmute(a))) }
2614}
2615
2616#[inline]
2617#[target_feature(enable = "lasx")]
2618#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2619pub fn lasx_vext2xv_h_b(a: m256i) -> m256i {
2620    unsafe { transmute(__lasx_vext2xv_h_b(transmute(a))) }
2621}
2622
2623#[inline]
2624#[target_feature(enable = "lasx")]
2625#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2626pub fn lasx_vext2xv_w_h(a: m256i) -> m256i {
2627    unsafe { transmute(__lasx_vext2xv_w_h(transmute(a))) }
2628}
2629
2630#[inline]
2631#[target_feature(enable = "lasx")]
2632#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2633pub fn lasx_vext2xv_d_w(a: m256i) -> m256i {
2634    unsafe { transmute(__lasx_vext2xv_d_w(transmute(a))) }
2635}
2636
2637#[inline]
2638#[target_feature(enable = "lasx")]
2639#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2640pub fn lasx_vext2xv_w_b(a: m256i) -> m256i {
2641    unsafe { transmute(__lasx_vext2xv_w_b(transmute(a))) }
2642}
2643
2644#[inline]
2645#[target_feature(enable = "lasx")]
2646#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2647pub fn lasx_vext2xv_d_h(a: m256i) -> m256i {
2648    unsafe { transmute(__lasx_vext2xv_d_h(transmute(a))) }
2649}
2650
2651#[inline]
2652#[target_feature(enable = "lasx")]
2653#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2654pub fn lasx_vext2xv_d_b(a: m256i) -> m256i {
2655    unsafe { transmute(__lasx_vext2xv_d_b(transmute(a))) }
2656}
2657
2658#[inline]
2659#[target_feature(enable = "lasx")]
2660#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2661pub fn lasx_vext2xv_hu_bu(a: m256i) -> m256i {
2662    unsafe { transmute(__lasx_vext2xv_hu_bu(transmute(a))) }
2663}
2664
2665#[inline]
2666#[target_feature(enable = "lasx")]
2667#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2668pub fn lasx_vext2xv_wu_hu(a: m256i) -> m256i {
2669    unsafe { transmute(__lasx_vext2xv_wu_hu(transmute(a))) }
2670}
2671
2672#[inline]
2673#[target_feature(enable = "lasx")]
2674#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2675pub fn lasx_vext2xv_du_wu(a: m256i) -> m256i {
2676    unsafe { transmute(__lasx_vext2xv_du_wu(transmute(a))) }
2677}
2678
2679#[inline]
2680#[target_feature(enable = "lasx")]
2681#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2682pub fn lasx_vext2xv_wu_bu(a: m256i) -> m256i {
2683    unsafe { transmute(__lasx_vext2xv_wu_bu(transmute(a))) }
2684}
2685
2686#[inline]
2687#[target_feature(enable = "lasx")]
2688#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2689pub fn lasx_vext2xv_du_hu(a: m256i) -> m256i {
2690    unsafe { transmute(__lasx_vext2xv_du_hu(transmute(a))) }
2691}
2692
2693#[inline]
2694#[target_feature(enable = "lasx")]
2695#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2696pub fn lasx_vext2xv_du_bu(a: m256i) -> m256i {
2697    unsafe { transmute(__lasx_vext2xv_du_bu(transmute(a))) }
2698}
2699
2700#[inline]
2701#[target_feature(enable = "lasx")]
2702#[rustc_legacy_const_generics(2)]
2703#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2704pub fn lasx_xvpermi_q<const IMM8: u32>(a: m256i, b: m256i) -> m256i {
2705    static_assert_uimm_bits!(IMM8, 8);
2706    unsafe { transmute(__lasx_xvpermi_q(transmute(a), transmute(b), IMM8)) }
2707}
2708
2709#[inline]
2710#[target_feature(enable = "lasx")]
2711#[rustc_legacy_const_generics(1)]
2712#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2713pub fn lasx_xvpermi_d<const IMM8: u32>(a: m256i) -> m256i {
2714    static_assert_uimm_bits!(IMM8, 8);
2715    unsafe { transmute(__lasx_xvpermi_d(transmute(a), IMM8)) }
2716}
2717
2718#[inline]
2719#[target_feature(enable = "lasx")]
2720#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2721pub fn lasx_xvperm_w(a: m256i, b: m256i) -> m256i {
2722    unsafe { transmute(__lasx_xvperm_w(transmute(a), transmute(b))) }
2723}
2724
2725#[inline]
2726#[target_feature(enable = "lasx")]
2727#[rustc_legacy_const_generics(1)]
2728#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2729pub unsafe fn lasx_xvldrepl_b<const IMM_S12: i32>(mem_addr: *const i8) -> m256i {
2730    static_assert_simm_bits!(IMM_S12, 12);
2731    transmute(__lasx_xvldrepl_b(mem_addr, IMM_S12))
2732}
2733
2734#[inline]
2735#[target_feature(enable = "lasx")]
2736#[rustc_legacy_const_generics(1)]
2737#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2738pub unsafe fn lasx_xvldrepl_h<const IMM_S11: i32>(mem_addr: *const i8) -> m256i {
2739    static_assert_simm_bits!(IMM_S11, 11);
2740    transmute(__lasx_xvldrepl_h(mem_addr, IMM_S11))
2741}
2742
2743#[inline]
2744#[target_feature(enable = "lasx")]
2745#[rustc_legacy_const_generics(1)]
2746#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2747pub unsafe fn lasx_xvldrepl_w<const IMM_S10: i32>(mem_addr: *const i8) -> m256i {
2748    static_assert_simm_bits!(IMM_S10, 10);
2749    transmute(__lasx_xvldrepl_w(mem_addr, IMM_S10))
2750}
2751
2752#[inline]
2753#[target_feature(enable = "lasx")]
2754#[rustc_legacy_const_generics(1)]
2755#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2756pub unsafe fn lasx_xvldrepl_d<const IMM_S9: i32>(mem_addr: *const i8) -> m256i {
2757    static_assert_simm_bits!(IMM_S9, 9);
2758    transmute(__lasx_xvldrepl_d(mem_addr, IMM_S9))
2759}
2760
2761#[inline]
2762#[target_feature(enable = "lasx")]
2763#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2764pub fn lasx_xvaddwev_q_d(a: m256i, b: m256i) -> m256i {
2765    unsafe { transmute(__lasx_xvaddwev_q_d(transmute(a), transmute(b))) }
2766}
2767
2768#[inline]
2769#[target_feature(enable = "lasx")]
2770#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2771pub fn lasx_xvaddwev_d_w(a: m256i, b: m256i) -> m256i {
2772    unsafe { transmute(__lasx_xvaddwev_d_w(transmute(a), transmute(b))) }
2773}
2774
2775#[inline]
2776#[target_feature(enable = "lasx")]
2777#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2778pub fn lasx_xvaddwev_w_h(a: m256i, b: m256i) -> m256i {
2779    unsafe { transmute(__lasx_xvaddwev_w_h(transmute(a), transmute(b))) }
2780}
2781
2782#[inline]
2783#[target_feature(enable = "lasx")]
2784#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2785pub fn lasx_xvaddwev_h_b(a: m256i, b: m256i) -> m256i {
2786    unsafe { transmute(__lasx_xvaddwev_h_b(transmute(a), transmute(b))) }
2787}
2788
2789#[inline]
2790#[target_feature(enable = "lasx")]
2791#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2792pub fn lasx_xvaddwev_q_du(a: m256i, b: m256i) -> m256i {
2793    unsafe { transmute(__lasx_xvaddwev_q_du(transmute(a), transmute(b))) }
2794}
2795
2796#[inline]
2797#[target_feature(enable = "lasx")]
2798#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2799pub fn lasx_xvaddwev_d_wu(a: m256i, b: m256i) -> m256i {
2800    unsafe { transmute(__lasx_xvaddwev_d_wu(transmute(a), transmute(b))) }
2801}
2802
2803#[inline]
2804#[target_feature(enable = "lasx")]
2805#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2806pub fn lasx_xvaddwev_w_hu(a: m256i, b: m256i) -> m256i {
2807    unsafe { transmute(__lasx_xvaddwev_w_hu(transmute(a), transmute(b))) }
2808}
2809
2810#[inline]
2811#[target_feature(enable = "lasx")]
2812#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2813pub fn lasx_xvaddwev_h_bu(a: m256i, b: m256i) -> m256i {
2814    unsafe { transmute(__lasx_xvaddwev_h_bu(transmute(a), transmute(b))) }
2815}
2816
2817#[inline]
2818#[target_feature(enable = "lasx")]
2819#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2820pub fn lasx_xvsubwev_q_d(a: m256i, b: m256i) -> m256i {
2821    unsafe { transmute(__lasx_xvsubwev_q_d(transmute(a), transmute(b))) }
2822}
2823
2824#[inline]
2825#[target_feature(enable = "lasx")]
2826#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2827pub fn lasx_xvsubwev_d_w(a: m256i, b: m256i) -> m256i {
2828    unsafe { transmute(__lasx_xvsubwev_d_w(transmute(a), transmute(b))) }
2829}
2830
2831#[inline]
2832#[target_feature(enable = "lasx")]
2833#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2834pub fn lasx_xvsubwev_w_h(a: m256i, b: m256i) -> m256i {
2835    unsafe { transmute(__lasx_xvsubwev_w_h(transmute(a), transmute(b))) }
2836}
2837
2838#[inline]
2839#[target_feature(enable = "lasx")]
2840#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2841pub fn lasx_xvsubwev_h_b(a: m256i, b: m256i) -> m256i {
2842    unsafe { transmute(__lasx_xvsubwev_h_b(transmute(a), transmute(b))) }
2843}
2844
2845#[inline]
2846#[target_feature(enable = "lasx")]
2847#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2848pub fn lasx_xvsubwev_q_du(a: m256i, b: m256i) -> m256i {
2849    unsafe { transmute(__lasx_xvsubwev_q_du(transmute(a), transmute(b))) }
2850}
2851
2852#[inline]
2853#[target_feature(enable = "lasx")]
2854#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2855pub fn lasx_xvsubwev_d_wu(a: m256i, b: m256i) -> m256i {
2856    unsafe { transmute(__lasx_xvsubwev_d_wu(transmute(a), transmute(b))) }
2857}
2858
2859#[inline]
2860#[target_feature(enable = "lasx")]
2861#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2862pub fn lasx_xvsubwev_w_hu(a: m256i, b: m256i) -> m256i {
2863    unsafe { transmute(__lasx_xvsubwev_w_hu(transmute(a), transmute(b))) }
2864}
2865
2866#[inline]
2867#[target_feature(enable = "lasx")]
2868#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2869pub fn lasx_xvsubwev_h_bu(a: m256i, b: m256i) -> m256i {
2870    unsafe { transmute(__lasx_xvsubwev_h_bu(transmute(a), transmute(b))) }
2871}
2872
2873#[inline]
2874#[target_feature(enable = "lasx")]
2875#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2876pub fn lasx_xvmulwev_q_d(a: m256i, b: m256i) -> m256i {
2877    unsafe { transmute(__lasx_xvmulwev_q_d(transmute(a), transmute(b))) }
2878}
2879
2880#[inline]
2881#[target_feature(enable = "lasx")]
2882#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2883pub fn lasx_xvmulwev_d_w(a: m256i, b: m256i) -> m256i {
2884    unsafe { transmute(__lasx_xvmulwev_d_w(transmute(a), transmute(b))) }
2885}
2886
2887#[inline]
2888#[target_feature(enable = "lasx")]
2889#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2890pub fn lasx_xvmulwev_w_h(a: m256i, b: m256i) -> m256i {
2891    unsafe { transmute(__lasx_xvmulwev_w_h(transmute(a), transmute(b))) }
2892}
2893
2894#[inline]
2895#[target_feature(enable = "lasx")]
2896#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2897pub fn lasx_xvmulwev_h_b(a: m256i, b: m256i) -> m256i {
2898    unsafe { transmute(__lasx_xvmulwev_h_b(transmute(a), transmute(b))) }
2899}
2900
2901#[inline]
2902#[target_feature(enable = "lasx")]
2903#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2904pub fn lasx_xvmulwev_q_du(a: m256i, b: m256i) -> m256i {
2905    unsafe { transmute(__lasx_xvmulwev_q_du(transmute(a), transmute(b))) }
2906}
2907
2908#[inline]
2909#[target_feature(enable = "lasx")]
2910#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2911pub fn lasx_xvmulwev_d_wu(a: m256i, b: m256i) -> m256i {
2912    unsafe { transmute(__lasx_xvmulwev_d_wu(transmute(a), transmute(b))) }
2913}
2914
2915#[inline]
2916#[target_feature(enable = "lasx")]
2917#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2918pub fn lasx_xvmulwev_w_hu(a: m256i, b: m256i) -> m256i {
2919    unsafe { transmute(__lasx_xvmulwev_w_hu(transmute(a), transmute(b))) }
2920}
2921
2922#[inline]
2923#[target_feature(enable = "lasx")]
2924#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2925pub fn lasx_xvmulwev_h_bu(a: m256i, b: m256i) -> m256i {
2926    unsafe { transmute(__lasx_xvmulwev_h_bu(transmute(a), transmute(b))) }
2927}
2928
2929#[inline]
2930#[target_feature(enable = "lasx")]
2931#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2932pub fn lasx_xvaddwod_q_d(a: m256i, b: m256i) -> m256i {
2933    unsafe { transmute(__lasx_xvaddwod_q_d(transmute(a), transmute(b))) }
2934}
2935
2936#[inline]
2937#[target_feature(enable = "lasx")]
2938#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2939pub fn lasx_xvaddwod_d_w(a: m256i, b: m256i) -> m256i {
2940    unsafe { transmute(__lasx_xvaddwod_d_w(transmute(a), transmute(b))) }
2941}
2942
2943#[inline]
2944#[target_feature(enable = "lasx")]
2945#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2946pub fn lasx_xvaddwod_w_h(a: m256i, b: m256i) -> m256i {
2947    unsafe { transmute(__lasx_xvaddwod_w_h(transmute(a), transmute(b))) }
2948}
2949
2950#[inline]
2951#[target_feature(enable = "lasx")]
2952#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2953pub fn lasx_xvaddwod_h_b(a: m256i, b: m256i) -> m256i {
2954    unsafe { transmute(__lasx_xvaddwod_h_b(transmute(a), transmute(b))) }
2955}
2956
2957#[inline]
2958#[target_feature(enable = "lasx")]
2959#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2960pub fn lasx_xvaddwod_q_du(a: m256i, b: m256i) -> m256i {
2961    unsafe { transmute(__lasx_xvaddwod_q_du(transmute(a), transmute(b))) }
2962}
2963
2964#[inline]
2965#[target_feature(enable = "lasx")]
2966#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2967pub fn lasx_xvaddwod_d_wu(a: m256i, b: m256i) -> m256i {
2968    unsafe { transmute(__lasx_xvaddwod_d_wu(transmute(a), transmute(b))) }
2969}
2970
2971#[inline]
2972#[target_feature(enable = "lasx")]
2973#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2974pub fn lasx_xvaddwod_w_hu(a: m256i, b: m256i) -> m256i {
2975    unsafe { transmute(__lasx_xvaddwod_w_hu(transmute(a), transmute(b))) }
2976}
2977
2978#[inline]
2979#[target_feature(enable = "lasx")]
2980#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2981pub fn lasx_xvaddwod_h_bu(a: m256i, b: m256i) -> m256i {
2982    unsafe { transmute(__lasx_xvaddwod_h_bu(transmute(a), transmute(b))) }
2983}
2984
2985#[inline]
2986#[target_feature(enable = "lasx")]
2987#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2988pub fn lasx_xvsubwod_q_d(a: m256i, b: m256i) -> m256i {
2989    unsafe { transmute(__lasx_xvsubwod_q_d(transmute(a), transmute(b))) }
2990}
2991
2992#[inline]
2993#[target_feature(enable = "lasx")]
2994#[unstable(feature = "stdarch_loongarch", issue = "117427")]
2995pub fn lasx_xvsubwod_d_w(a: m256i, b: m256i) -> m256i {
2996    unsafe { transmute(__lasx_xvsubwod_d_w(transmute(a), transmute(b))) }
2997}
2998
2999#[inline]
3000#[target_feature(enable = "lasx")]
3001#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3002pub fn lasx_xvsubwod_w_h(a: m256i, b: m256i) -> m256i {
3003    unsafe { transmute(__lasx_xvsubwod_w_h(transmute(a), transmute(b))) }
3004}
3005
3006#[inline]
3007#[target_feature(enable = "lasx")]
3008#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3009pub fn lasx_xvsubwod_h_b(a: m256i, b: m256i) -> m256i {
3010    unsafe { transmute(__lasx_xvsubwod_h_b(transmute(a), transmute(b))) }
3011}
3012
3013#[inline]
3014#[target_feature(enable = "lasx")]
3015#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3016pub fn lasx_xvsubwod_q_du(a: m256i, b: m256i) -> m256i {
3017    unsafe { transmute(__lasx_xvsubwod_q_du(transmute(a), transmute(b))) }
3018}
3019
3020#[inline]
3021#[target_feature(enable = "lasx")]
3022#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3023pub fn lasx_xvsubwod_d_wu(a: m256i, b: m256i) -> m256i {
3024    unsafe { transmute(__lasx_xvsubwod_d_wu(transmute(a), transmute(b))) }
3025}
3026
3027#[inline]
3028#[target_feature(enable = "lasx")]
3029#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3030pub fn lasx_xvsubwod_w_hu(a: m256i, b: m256i) -> m256i {
3031    unsafe { transmute(__lasx_xvsubwod_w_hu(transmute(a), transmute(b))) }
3032}
3033
3034#[inline]
3035#[target_feature(enable = "lasx")]
3036#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3037pub fn lasx_xvsubwod_h_bu(a: m256i, b: m256i) -> m256i {
3038    unsafe { transmute(__lasx_xvsubwod_h_bu(transmute(a), transmute(b))) }
3039}
3040
3041#[inline]
3042#[target_feature(enable = "lasx")]
3043#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3044pub fn lasx_xvmulwod_q_d(a: m256i, b: m256i) -> m256i {
3045    unsafe { transmute(__lasx_xvmulwod_q_d(transmute(a), transmute(b))) }
3046}
3047
3048#[inline]
3049#[target_feature(enable = "lasx")]
3050#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3051pub fn lasx_xvmulwod_d_w(a: m256i, b: m256i) -> m256i {
3052    unsafe { transmute(__lasx_xvmulwod_d_w(transmute(a), transmute(b))) }
3053}
3054
3055#[inline]
3056#[target_feature(enable = "lasx")]
3057#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3058pub fn lasx_xvmulwod_w_h(a: m256i, b: m256i) -> m256i {
3059    unsafe { transmute(__lasx_xvmulwod_w_h(transmute(a), transmute(b))) }
3060}
3061
3062#[inline]
3063#[target_feature(enable = "lasx")]
3064#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3065pub fn lasx_xvmulwod_h_b(a: m256i, b: m256i) -> m256i {
3066    unsafe { transmute(__lasx_xvmulwod_h_b(transmute(a), transmute(b))) }
3067}
3068
3069#[inline]
3070#[target_feature(enable = "lasx")]
3071#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3072pub fn lasx_xvmulwod_q_du(a: m256i, b: m256i) -> m256i {
3073    unsafe { transmute(__lasx_xvmulwod_q_du(transmute(a), transmute(b))) }
3074}
3075
3076#[inline]
3077#[target_feature(enable = "lasx")]
3078#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3079pub fn lasx_xvmulwod_d_wu(a: m256i, b: m256i) -> m256i {
3080    unsafe { transmute(__lasx_xvmulwod_d_wu(transmute(a), transmute(b))) }
3081}
3082
3083#[inline]
3084#[target_feature(enable = "lasx")]
3085#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3086pub fn lasx_xvmulwod_w_hu(a: m256i, b: m256i) -> m256i {
3087    unsafe { transmute(__lasx_xvmulwod_w_hu(transmute(a), transmute(b))) }
3088}
3089
3090#[inline]
3091#[target_feature(enable = "lasx")]
3092#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3093pub fn lasx_xvmulwod_h_bu(a: m256i, b: m256i) -> m256i {
3094    unsafe { transmute(__lasx_xvmulwod_h_bu(transmute(a), transmute(b))) }
3095}
3096
3097#[inline]
3098#[target_feature(enable = "lasx")]
3099#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3100pub fn lasx_xvaddwev_d_wu_w(a: m256i, b: m256i) -> m256i {
3101    unsafe { transmute(__lasx_xvaddwev_d_wu_w(transmute(a), transmute(b))) }
3102}
3103
3104#[inline]
3105#[target_feature(enable = "lasx")]
3106#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3107pub fn lasx_xvaddwev_w_hu_h(a: m256i, b: m256i) -> m256i {
3108    unsafe { transmute(__lasx_xvaddwev_w_hu_h(transmute(a), transmute(b))) }
3109}
3110
3111#[inline]
3112#[target_feature(enable = "lasx")]
3113#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3114pub fn lasx_xvaddwev_h_bu_b(a: m256i, b: m256i) -> m256i {
3115    unsafe { transmute(__lasx_xvaddwev_h_bu_b(transmute(a), transmute(b))) }
3116}
3117
3118#[inline]
3119#[target_feature(enable = "lasx")]
3120#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3121pub fn lasx_xvmulwev_d_wu_w(a: m256i, b: m256i) -> m256i {
3122    unsafe { transmute(__lasx_xvmulwev_d_wu_w(transmute(a), transmute(b))) }
3123}
3124
3125#[inline]
3126#[target_feature(enable = "lasx")]
3127#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3128pub fn lasx_xvmulwev_w_hu_h(a: m256i, b: m256i) -> m256i {
3129    unsafe { transmute(__lasx_xvmulwev_w_hu_h(transmute(a), transmute(b))) }
3130}
3131
3132#[inline]
3133#[target_feature(enable = "lasx")]
3134#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3135pub fn lasx_xvmulwev_h_bu_b(a: m256i, b: m256i) -> m256i {
3136    unsafe { transmute(__lasx_xvmulwev_h_bu_b(transmute(a), transmute(b))) }
3137}
3138
3139#[inline]
3140#[target_feature(enable = "lasx")]
3141#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3142pub fn lasx_xvaddwod_d_wu_w(a: m256i, b: m256i) -> m256i {
3143    unsafe { transmute(__lasx_xvaddwod_d_wu_w(transmute(a), transmute(b))) }
3144}
3145
3146#[inline]
3147#[target_feature(enable = "lasx")]
3148#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3149pub fn lasx_xvaddwod_w_hu_h(a: m256i, b: m256i) -> m256i {
3150    unsafe { transmute(__lasx_xvaddwod_w_hu_h(transmute(a), transmute(b))) }
3151}
3152
3153#[inline]
3154#[target_feature(enable = "lasx")]
3155#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3156pub fn lasx_xvaddwod_h_bu_b(a: m256i, b: m256i) -> m256i {
3157    unsafe { transmute(__lasx_xvaddwod_h_bu_b(transmute(a), transmute(b))) }
3158}
3159
3160#[inline]
3161#[target_feature(enable = "lasx")]
3162#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3163pub fn lasx_xvmulwod_d_wu_w(a: m256i, b: m256i) -> m256i {
3164    unsafe { transmute(__lasx_xvmulwod_d_wu_w(transmute(a), transmute(b))) }
3165}
3166
3167#[inline]
3168#[target_feature(enable = "lasx")]
3169#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3170pub fn lasx_xvmulwod_w_hu_h(a: m256i, b: m256i) -> m256i {
3171    unsafe { transmute(__lasx_xvmulwod_w_hu_h(transmute(a), transmute(b))) }
3172}
3173
3174#[inline]
3175#[target_feature(enable = "lasx")]
3176#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3177pub fn lasx_xvmulwod_h_bu_b(a: m256i, b: m256i) -> m256i {
3178    unsafe { transmute(__lasx_xvmulwod_h_bu_b(transmute(a), transmute(b))) }
3179}
3180
3181#[inline]
3182#[target_feature(enable = "lasx")]
3183#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3184pub fn lasx_xvhaddw_q_d(a: m256i, b: m256i) -> m256i {
3185    unsafe { transmute(__lasx_xvhaddw_q_d(transmute(a), transmute(b))) }
3186}
3187
3188#[inline]
3189#[target_feature(enable = "lasx")]
3190#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3191pub fn lasx_xvhaddw_qu_du(a: m256i, b: m256i) -> m256i {
3192    unsafe { transmute(__lasx_xvhaddw_qu_du(transmute(a), transmute(b))) }
3193}
3194
3195#[inline]
3196#[target_feature(enable = "lasx")]
3197#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3198pub fn lasx_xvhsubw_q_d(a: m256i, b: m256i) -> m256i {
3199    unsafe { transmute(__lasx_xvhsubw_q_d(transmute(a), transmute(b))) }
3200}
3201
3202#[inline]
3203#[target_feature(enable = "lasx")]
3204#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3205pub fn lasx_xvhsubw_qu_du(a: m256i, b: m256i) -> m256i {
3206    unsafe { transmute(__lasx_xvhsubw_qu_du(transmute(a), transmute(b))) }
3207}
3208
3209#[inline]
3210#[target_feature(enable = "lasx")]
3211#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3212pub fn lasx_xvmaddwev_q_d(a: m256i, b: m256i, c: m256i) -> m256i {
3213    unsafe { transmute(__lasx_xvmaddwev_q_d(transmute(a), transmute(b), transmute(c))) }
3214}
3215
3216#[inline]
3217#[target_feature(enable = "lasx")]
3218#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3219pub fn lasx_xvmaddwev_d_w(a: m256i, b: m256i, c: m256i) -> m256i {
3220    unsafe { transmute(__lasx_xvmaddwev_d_w(transmute(a), transmute(b), transmute(c))) }
3221}
3222
3223#[inline]
3224#[target_feature(enable = "lasx")]
3225#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3226pub fn lasx_xvmaddwev_w_h(a: m256i, b: m256i, c: m256i) -> m256i {
3227    unsafe { transmute(__lasx_xvmaddwev_w_h(transmute(a), transmute(b), transmute(c))) }
3228}
3229
3230#[inline]
3231#[target_feature(enable = "lasx")]
3232#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3233pub fn lasx_xvmaddwev_h_b(a: m256i, b: m256i, c: m256i) -> m256i {
3234    unsafe { transmute(__lasx_xvmaddwev_h_b(transmute(a), transmute(b), transmute(c))) }
3235}
3236
3237#[inline]
3238#[target_feature(enable = "lasx")]
3239#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3240pub fn lasx_xvmaddwev_q_du(a: m256i, b: m256i, c: m256i) -> m256i {
3241    unsafe { transmute(__lasx_xvmaddwev_q_du(transmute(a), transmute(b), transmute(c))) }
3242}
3243
3244#[inline]
3245#[target_feature(enable = "lasx")]
3246#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3247pub fn lasx_xvmaddwev_d_wu(a: m256i, b: m256i, c: m256i) -> m256i {
3248    unsafe { transmute(__lasx_xvmaddwev_d_wu(transmute(a), transmute(b), transmute(c))) }
3249}
3250
3251#[inline]
3252#[target_feature(enable = "lasx")]
3253#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3254pub fn lasx_xvmaddwev_w_hu(a: m256i, b: m256i, c: m256i) -> m256i {
3255    unsafe { transmute(__lasx_xvmaddwev_w_hu(transmute(a), transmute(b), transmute(c))) }
3256}
3257
3258#[inline]
3259#[target_feature(enable = "lasx")]
3260#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3261pub fn lasx_xvmaddwev_h_bu(a: m256i, b: m256i, c: m256i) -> m256i {
3262    unsafe { transmute(__lasx_xvmaddwev_h_bu(transmute(a), transmute(b), transmute(c))) }
3263}
3264
3265#[inline]
3266#[target_feature(enable = "lasx")]
3267#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3268pub fn lasx_xvmaddwod_q_d(a: m256i, b: m256i, c: m256i) -> m256i {
3269    unsafe { transmute(__lasx_xvmaddwod_q_d(transmute(a), transmute(b), transmute(c))) }
3270}
3271
3272#[inline]
3273#[target_feature(enable = "lasx")]
3274#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3275pub fn lasx_xvmaddwod_d_w(a: m256i, b: m256i, c: m256i) -> m256i {
3276    unsafe { transmute(__lasx_xvmaddwod_d_w(transmute(a), transmute(b), transmute(c))) }
3277}
3278
3279#[inline]
3280#[target_feature(enable = "lasx")]
3281#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3282pub fn lasx_xvmaddwod_w_h(a: m256i, b: m256i, c: m256i) -> m256i {
3283    unsafe { transmute(__lasx_xvmaddwod_w_h(transmute(a), transmute(b), transmute(c))) }
3284}
3285
3286#[inline]
3287#[target_feature(enable = "lasx")]
3288#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3289pub fn lasx_xvmaddwod_h_b(a: m256i, b: m256i, c: m256i) -> m256i {
3290    unsafe { transmute(__lasx_xvmaddwod_h_b(transmute(a), transmute(b), transmute(c))) }
3291}
3292
3293#[inline]
3294#[target_feature(enable = "lasx")]
3295#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3296pub fn lasx_xvmaddwod_q_du(a: m256i, b: m256i, c: m256i) -> m256i {
3297    unsafe { transmute(__lasx_xvmaddwod_q_du(transmute(a), transmute(b), transmute(c))) }
3298}
3299
3300#[inline]
3301#[target_feature(enable = "lasx")]
3302#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3303pub fn lasx_xvmaddwod_d_wu(a: m256i, b: m256i, c: m256i) -> m256i {
3304    unsafe { transmute(__lasx_xvmaddwod_d_wu(transmute(a), transmute(b), transmute(c))) }
3305}
3306
3307#[inline]
3308#[target_feature(enable = "lasx")]
3309#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3310pub fn lasx_xvmaddwod_w_hu(a: m256i, b: m256i, c: m256i) -> m256i {
3311    unsafe { transmute(__lasx_xvmaddwod_w_hu(transmute(a), transmute(b), transmute(c))) }
3312}
3313
3314#[inline]
3315#[target_feature(enable = "lasx")]
3316#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3317pub fn lasx_xvmaddwod_h_bu(a: m256i, b: m256i, c: m256i) -> m256i {
3318    unsafe { transmute(__lasx_xvmaddwod_h_bu(transmute(a), transmute(b), transmute(c))) }
3319}
3320
3321#[inline]
3322#[target_feature(enable = "lasx")]
3323#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3324pub fn lasx_xvmaddwev_q_du_d(a: m256i, b: m256i, c: m256i) -> m256i {
3325    unsafe { transmute(__lasx_xvmaddwev_q_du_d(transmute(a), transmute(b), transmute(c))) }
3326}
3327
3328#[inline]
3329#[target_feature(enable = "lasx")]
3330#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3331pub fn lasx_xvmaddwev_d_wu_w(a: m256i, b: m256i, c: m256i) -> m256i {
3332    unsafe { transmute(__lasx_xvmaddwev_d_wu_w(transmute(a), transmute(b), transmute(c))) }
3333}
3334
3335#[inline]
3336#[target_feature(enable = "lasx")]
3337#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3338pub fn lasx_xvmaddwev_w_hu_h(a: m256i, b: m256i, c: m256i) -> m256i {
3339    unsafe { transmute(__lasx_xvmaddwev_w_hu_h(transmute(a), transmute(b), transmute(c))) }
3340}
3341
3342#[inline]
3343#[target_feature(enable = "lasx")]
3344#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3345pub fn lasx_xvmaddwev_h_bu_b(a: m256i, b: m256i, c: m256i) -> m256i {
3346    unsafe { transmute(__lasx_xvmaddwev_h_bu_b(transmute(a), transmute(b), transmute(c))) }
3347}
3348
3349#[inline]
3350#[target_feature(enable = "lasx")]
3351#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3352pub fn lasx_xvmaddwod_q_du_d(a: m256i, b: m256i, c: m256i) -> m256i {
3353    unsafe { transmute(__lasx_xvmaddwod_q_du_d(transmute(a), transmute(b), transmute(c))) }
3354}
3355
3356#[inline]
3357#[target_feature(enable = "lasx")]
3358#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3359pub fn lasx_xvmaddwod_d_wu_w(a: m256i, b: m256i, c: m256i) -> m256i {
3360    unsafe { transmute(__lasx_xvmaddwod_d_wu_w(transmute(a), transmute(b), transmute(c))) }
3361}
3362
3363#[inline]
3364#[target_feature(enable = "lasx")]
3365#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3366pub fn lasx_xvmaddwod_w_hu_h(a: m256i, b: m256i, c: m256i) -> m256i {
3367    unsafe { transmute(__lasx_xvmaddwod_w_hu_h(transmute(a), transmute(b), transmute(c))) }
3368}
3369
3370#[inline]
3371#[target_feature(enable = "lasx")]
3372#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3373pub fn lasx_xvmaddwod_h_bu_b(a: m256i, b: m256i, c: m256i) -> m256i {
3374    unsafe { transmute(__lasx_xvmaddwod_h_bu_b(transmute(a), transmute(b), transmute(c))) }
3375}
3376
3377#[inline]
3378#[target_feature(enable = "lasx")]
3379#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3380pub fn lasx_xvadd_q(a: m256i, b: m256i) -> m256i {
3381    unsafe { transmute(__lasx_xvadd_q(transmute(a), transmute(b))) }
3382}
3383
3384#[inline]
3385#[target_feature(enable = "lasx")]
3386#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3387pub fn lasx_xvsub_q(a: m256i, b: m256i) -> m256i {
3388    unsafe { transmute(__lasx_xvsub_q(transmute(a), transmute(b))) }
3389}
3390
3391#[inline]
3392#[target_feature(enable = "lasx")]
3393#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3394pub fn lasx_xvaddwev_q_du_d(a: m256i, b: m256i) -> m256i {
3395    unsafe { transmute(__lasx_xvaddwev_q_du_d(transmute(a), transmute(b))) }
3396}
3397
3398#[inline]
3399#[target_feature(enable = "lasx")]
3400#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3401pub fn lasx_xvaddwod_q_du_d(a: m256i, b: m256i) -> m256i {
3402    unsafe { transmute(__lasx_xvaddwod_q_du_d(transmute(a), transmute(b))) }
3403}
3404
3405#[inline]
3406#[target_feature(enable = "lasx")]
3407#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3408pub fn lasx_xvmulwev_q_du_d(a: m256i, b: m256i) -> m256i {
3409    unsafe { transmute(__lasx_xvmulwev_q_du_d(transmute(a), transmute(b))) }
3410}
3411
3412#[inline]
3413#[target_feature(enable = "lasx")]
3414#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3415pub fn lasx_xvmulwod_q_du_d(a: m256i, b: m256i) -> m256i {
3416    unsafe { transmute(__lasx_xvmulwod_q_du_d(transmute(a), transmute(b))) }
3417}
3418
3419#[inline]
3420#[target_feature(enable = "lasx")]
3421#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3422pub fn lasx_xvmskgez_b(a: m256i) -> m256i {
3423    unsafe { transmute(__lasx_xvmskgez_b(transmute(a))) }
3424}
3425
3426#[inline]
3427#[target_feature(enable = "lasx")]
3428#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3429pub fn lasx_xvmsknz_b(a: m256i) -> m256i {
3430    unsafe { transmute(__lasx_xvmsknz_b(transmute(a))) }
3431}
3432
3433#[inline]
3434#[target_feature(enable = "lasx")]
3435#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3436pub fn lasx_xvexth_h_b(a: m256i) -> m256i {
3437    unsafe { transmute(__lasx_xvexth_h_b(transmute(a))) }
3438}
3439
3440#[inline]
3441#[target_feature(enable = "lasx")]
3442#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3443pub fn lasx_xvexth_w_h(a: m256i) -> m256i {
3444    unsafe { transmute(__lasx_xvexth_w_h(transmute(a))) }
3445}
3446
3447#[inline]
3448#[target_feature(enable = "lasx")]
3449#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3450pub fn lasx_xvexth_d_w(a: m256i) -> m256i {
3451    unsafe { transmute(__lasx_xvexth_d_w(transmute(a))) }
3452}
3453
3454#[inline]
3455#[target_feature(enable = "lasx")]
3456#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3457pub fn lasx_xvexth_q_d(a: m256i) -> m256i {
3458    unsafe { transmute(__lasx_xvexth_q_d(transmute(a))) }
3459}
3460
3461#[inline]
3462#[target_feature(enable = "lasx")]
3463#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3464pub fn lasx_xvexth_hu_bu(a: m256i) -> m256i {
3465    unsafe { transmute(__lasx_xvexth_hu_bu(transmute(a))) }
3466}
3467
3468#[inline]
3469#[target_feature(enable = "lasx")]
3470#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3471pub fn lasx_xvexth_wu_hu(a: m256i) -> m256i {
3472    unsafe { transmute(__lasx_xvexth_wu_hu(transmute(a))) }
3473}
3474
3475#[inline]
3476#[target_feature(enable = "lasx")]
3477#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3478pub fn lasx_xvexth_du_wu(a: m256i) -> m256i {
3479    unsafe { transmute(__lasx_xvexth_du_wu(transmute(a))) }
3480}
3481
3482#[inline]
3483#[target_feature(enable = "lasx")]
3484#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3485pub fn lasx_xvexth_qu_du(a: m256i) -> m256i {
3486    unsafe { transmute(__lasx_xvexth_qu_du(transmute(a))) }
3487}
3488
3489#[inline]
3490#[target_feature(enable = "lasx")]
3491#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3492pub fn lasx_xvextl_q_d(a: m256i) -> m256i {
3493    unsafe { transmute(__lasx_xvextl_q_d(transmute(a))) }
3494}
3495
3496#[inline]
3497#[target_feature(enable = "lasx")]
3498#[rustc_legacy_const_generics(2)]
3499#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3500pub fn lasx_xvsrlni_b_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3501    static_assert_uimm_bits!(IMM4, 4);
3502    unsafe { transmute(__lasx_xvsrlni_b_h(transmute(a), transmute(b), IMM4)) }
3503}
3504
3505#[inline]
3506#[target_feature(enable = "lasx")]
3507#[rustc_legacy_const_generics(2)]
3508#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3509pub fn lasx_xvsrlni_h_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3510    static_assert_uimm_bits!(IMM5, 5);
3511    unsafe { transmute(__lasx_xvsrlni_h_w(transmute(a), transmute(b), IMM5)) }
3512}
3513
3514#[inline]
3515#[target_feature(enable = "lasx")]
3516#[rustc_legacy_const_generics(2)]
3517#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3518pub fn lasx_xvsrlni_w_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3519    static_assert_uimm_bits!(IMM6, 6);
3520    unsafe { transmute(__lasx_xvsrlni_w_d(transmute(a), transmute(b), IMM6)) }
3521}
3522
3523#[inline]
3524#[target_feature(enable = "lasx")]
3525#[rustc_legacy_const_generics(2)]
3526#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3527pub fn lasx_xvsrlni_d_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3528    static_assert_uimm_bits!(IMM7, 7);
3529    unsafe { transmute(__lasx_xvsrlni_d_q(transmute(a), transmute(b), IMM7)) }
3530}
3531
3532#[inline]
3533#[target_feature(enable = "lasx")]
3534#[rustc_legacy_const_generics(2)]
3535#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3536pub fn lasx_xvsrlrni_b_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3537    static_assert_uimm_bits!(IMM4, 4);
3538    unsafe { transmute(__lasx_xvsrlrni_b_h(transmute(a), transmute(b), IMM4)) }
3539}
3540
3541#[inline]
3542#[target_feature(enable = "lasx")]
3543#[rustc_legacy_const_generics(2)]
3544#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3545pub fn lasx_xvsrlrni_h_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3546    static_assert_uimm_bits!(IMM5, 5);
3547    unsafe { transmute(__lasx_xvsrlrni_h_w(transmute(a), transmute(b), IMM5)) }
3548}
3549
3550#[inline]
3551#[target_feature(enable = "lasx")]
3552#[rustc_legacy_const_generics(2)]
3553#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3554pub fn lasx_xvsrlrni_w_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3555    static_assert_uimm_bits!(IMM6, 6);
3556    unsafe { transmute(__lasx_xvsrlrni_w_d(transmute(a), transmute(b), IMM6)) }
3557}
3558
3559#[inline]
3560#[target_feature(enable = "lasx")]
3561#[rustc_legacy_const_generics(2)]
3562#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3563pub fn lasx_xvsrlrni_d_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3564    static_assert_uimm_bits!(IMM7, 7);
3565    unsafe { transmute(__lasx_xvsrlrni_d_q(transmute(a), transmute(b), IMM7)) }
3566}
3567
3568#[inline]
3569#[target_feature(enable = "lasx")]
3570#[rustc_legacy_const_generics(2)]
3571#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3572pub fn lasx_xvssrlni_b_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3573    static_assert_uimm_bits!(IMM4, 4);
3574    unsafe { transmute(__lasx_xvssrlni_b_h(transmute(a), transmute(b), IMM4)) }
3575}
3576
3577#[inline]
3578#[target_feature(enable = "lasx")]
3579#[rustc_legacy_const_generics(2)]
3580#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3581pub fn lasx_xvssrlni_h_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3582    static_assert_uimm_bits!(IMM5, 5);
3583    unsafe { transmute(__lasx_xvssrlni_h_w(transmute(a), transmute(b), IMM5)) }
3584}
3585
3586#[inline]
3587#[target_feature(enable = "lasx")]
3588#[rustc_legacy_const_generics(2)]
3589#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3590pub fn lasx_xvssrlni_w_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3591    static_assert_uimm_bits!(IMM6, 6);
3592    unsafe { transmute(__lasx_xvssrlni_w_d(transmute(a), transmute(b), IMM6)) }
3593}
3594
3595#[inline]
3596#[target_feature(enable = "lasx")]
3597#[rustc_legacy_const_generics(2)]
3598#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3599pub fn lasx_xvssrlni_d_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3600    static_assert_uimm_bits!(IMM7, 7);
3601    unsafe { transmute(__lasx_xvssrlni_d_q(transmute(a), transmute(b), IMM7)) }
3602}
3603
3604#[inline]
3605#[target_feature(enable = "lasx")]
3606#[rustc_legacy_const_generics(2)]
3607#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3608pub fn lasx_xvssrlni_bu_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3609    static_assert_uimm_bits!(IMM4, 4);
3610    unsafe { transmute(__lasx_xvssrlni_bu_h(transmute(a), transmute(b), IMM4)) }
3611}
3612
3613#[inline]
3614#[target_feature(enable = "lasx")]
3615#[rustc_legacy_const_generics(2)]
3616#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3617pub fn lasx_xvssrlni_hu_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3618    static_assert_uimm_bits!(IMM5, 5);
3619    unsafe { transmute(__lasx_xvssrlni_hu_w(transmute(a), transmute(b), IMM5)) }
3620}
3621
3622#[inline]
3623#[target_feature(enable = "lasx")]
3624#[rustc_legacy_const_generics(2)]
3625#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3626pub fn lasx_xvssrlni_wu_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3627    static_assert_uimm_bits!(IMM6, 6);
3628    unsafe { transmute(__lasx_xvssrlni_wu_d(transmute(a), transmute(b), IMM6)) }
3629}
3630
3631#[inline]
3632#[target_feature(enable = "lasx")]
3633#[rustc_legacy_const_generics(2)]
3634#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3635pub fn lasx_xvssrlni_du_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3636    static_assert_uimm_bits!(IMM7, 7);
3637    unsafe { transmute(__lasx_xvssrlni_du_q(transmute(a), transmute(b), IMM7)) }
3638}
3639
3640#[inline]
3641#[target_feature(enable = "lasx")]
3642#[rustc_legacy_const_generics(2)]
3643#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3644pub fn lasx_xvssrlrni_b_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3645    static_assert_uimm_bits!(IMM4, 4);
3646    unsafe { transmute(__lasx_xvssrlrni_b_h(transmute(a), transmute(b), IMM4)) }
3647}
3648
3649#[inline]
3650#[target_feature(enable = "lasx")]
3651#[rustc_legacy_const_generics(2)]
3652#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3653pub fn lasx_xvssrlrni_h_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3654    static_assert_uimm_bits!(IMM5, 5);
3655    unsafe { transmute(__lasx_xvssrlrni_h_w(transmute(a), transmute(b), IMM5)) }
3656}
3657
3658#[inline]
3659#[target_feature(enable = "lasx")]
3660#[rustc_legacy_const_generics(2)]
3661#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3662pub fn lasx_xvssrlrni_w_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3663    static_assert_uimm_bits!(IMM6, 6);
3664    unsafe { transmute(__lasx_xvssrlrni_w_d(transmute(a), transmute(b), IMM6)) }
3665}
3666
3667#[inline]
3668#[target_feature(enable = "lasx")]
3669#[rustc_legacy_const_generics(2)]
3670#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3671pub fn lasx_xvssrlrni_d_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3672    static_assert_uimm_bits!(IMM7, 7);
3673    unsafe { transmute(__lasx_xvssrlrni_d_q(transmute(a), transmute(b), IMM7)) }
3674}
3675
3676#[inline]
3677#[target_feature(enable = "lasx")]
3678#[rustc_legacy_const_generics(2)]
3679#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3680pub fn lasx_xvssrlrni_bu_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3681    static_assert_uimm_bits!(IMM4, 4);
3682    unsafe { transmute(__lasx_xvssrlrni_bu_h(transmute(a), transmute(b), IMM4)) }
3683}
3684
3685#[inline]
3686#[target_feature(enable = "lasx")]
3687#[rustc_legacy_const_generics(2)]
3688#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3689pub fn lasx_xvssrlrni_hu_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3690    static_assert_uimm_bits!(IMM5, 5);
3691    unsafe { transmute(__lasx_xvssrlrni_hu_w(transmute(a), transmute(b), IMM5)) }
3692}
3693
3694#[inline]
3695#[target_feature(enable = "lasx")]
3696#[rustc_legacy_const_generics(2)]
3697#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3698pub fn lasx_xvssrlrni_wu_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3699    static_assert_uimm_bits!(IMM6, 6);
3700    unsafe { transmute(__lasx_xvssrlrni_wu_d(transmute(a), transmute(b), IMM6)) }
3701}
3702
3703#[inline]
3704#[target_feature(enable = "lasx")]
3705#[rustc_legacy_const_generics(2)]
3706#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3707pub fn lasx_xvssrlrni_du_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3708    static_assert_uimm_bits!(IMM7, 7);
3709    unsafe { transmute(__lasx_xvssrlrni_du_q(transmute(a), transmute(b), IMM7)) }
3710}
3711
3712#[inline]
3713#[target_feature(enable = "lasx")]
3714#[rustc_legacy_const_generics(2)]
3715#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3716pub fn lasx_xvsrani_b_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3717    static_assert_uimm_bits!(IMM4, 4);
3718    unsafe { transmute(__lasx_xvsrani_b_h(transmute(a), transmute(b), IMM4)) }
3719}
3720
3721#[inline]
3722#[target_feature(enable = "lasx")]
3723#[rustc_legacy_const_generics(2)]
3724#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3725pub fn lasx_xvsrani_h_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3726    static_assert_uimm_bits!(IMM5, 5);
3727    unsafe { transmute(__lasx_xvsrani_h_w(transmute(a), transmute(b), IMM5)) }
3728}
3729
3730#[inline]
3731#[target_feature(enable = "lasx")]
3732#[rustc_legacy_const_generics(2)]
3733#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3734pub fn lasx_xvsrani_w_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3735    static_assert_uimm_bits!(IMM6, 6);
3736    unsafe { transmute(__lasx_xvsrani_w_d(transmute(a), transmute(b), IMM6)) }
3737}
3738
3739#[inline]
3740#[target_feature(enable = "lasx")]
3741#[rustc_legacy_const_generics(2)]
3742#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3743pub fn lasx_xvsrani_d_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3744    static_assert_uimm_bits!(IMM7, 7);
3745    unsafe { transmute(__lasx_xvsrani_d_q(transmute(a), transmute(b), IMM7)) }
3746}
3747
3748#[inline]
3749#[target_feature(enable = "lasx")]
3750#[rustc_legacy_const_generics(2)]
3751#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3752pub fn lasx_xvsrarni_b_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3753    static_assert_uimm_bits!(IMM4, 4);
3754    unsafe { transmute(__lasx_xvsrarni_b_h(transmute(a), transmute(b), IMM4)) }
3755}
3756
3757#[inline]
3758#[target_feature(enable = "lasx")]
3759#[rustc_legacy_const_generics(2)]
3760#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3761pub fn lasx_xvsrarni_h_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3762    static_assert_uimm_bits!(IMM5, 5);
3763    unsafe { transmute(__lasx_xvsrarni_h_w(transmute(a), transmute(b), IMM5)) }
3764}
3765
3766#[inline]
3767#[target_feature(enable = "lasx")]
3768#[rustc_legacy_const_generics(2)]
3769#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3770pub fn lasx_xvsrarni_w_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3771    static_assert_uimm_bits!(IMM6, 6);
3772    unsafe { transmute(__lasx_xvsrarni_w_d(transmute(a), transmute(b), IMM6)) }
3773}
3774
3775#[inline]
3776#[target_feature(enable = "lasx")]
3777#[rustc_legacy_const_generics(2)]
3778#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3779pub fn lasx_xvsrarni_d_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3780    static_assert_uimm_bits!(IMM7, 7);
3781    unsafe { transmute(__lasx_xvsrarni_d_q(transmute(a), transmute(b), IMM7)) }
3782}
3783
3784#[inline]
3785#[target_feature(enable = "lasx")]
3786#[rustc_legacy_const_generics(2)]
3787#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3788pub fn lasx_xvssrani_b_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3789    static_assert_uimm_bits!(IMM4, 4);
3790    unsafe { transmute(__lasx_xvssrani_b_h(transmute(a), transmute(b), IMM4)) }
3791}
3792
3793#[inline]
3794#[target_feature(enable = "lasx")]
3795#[rustc_legacy_const_generics(2)]
3796#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3797pub fn lasx_xvssrani_h_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3798    static_assert_uimm_bits!(IMM5, 5);
3799    unsafe { transmute(__lasx_xvssrani_h_w(transmute(a), transmute(b), IMM5)) }
3800}
3801
3802#[inline]
3803#[target_feature(enable = "lasx")]
3804#[rustc_legacy_const_generics(2)]
3805#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3806pub fn lasx_xvssrani_w_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3807    static_assert_uimm_bits!(IMM6, 6);
3808    unsafe { transmute(__lasx_xvssrani_w_d(transmute(a), transmute(b), IMM6)) }
3809}
3810
3811#[inline]
3812#[target_feature(enable = "lasx")]
3813#[rustc_legacy_const_generics(2)]
3814#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3815pub fn lasx_xvssrani_d_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3816    static_assert_uimm_bits!(IMM7, 7);
3817    unsafe { transmute(__lasx_xvssrani_d_q(transmute(a), transmute(b), IMM7)) }
3818}
3819
3820#[inline]
3821#[target_feature(enable = "lasx")]
3822#[rustc_legacy_const_generics(2)]
3823#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3824pub fn lasx_xvssrani_bu_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3825    static_assert_uimm_bits!(IMM4, 4);
3826    unsafe { transmute(__lasx_xvssrani_bu_h(transmute(a), transmute(b), IMM4)) }
3827}
3828
3829#[inline]
3830#[target_feature(enable = "lasx")]
3831#[rustc_legacy_const_generics(2)]
3832#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3833pub fn lasx_xvssrani_hu_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3834    static_assert_uimm_bits!(IMM5, 5);
3835    unsafe { transmute(__lasx_xvssrani_hu_w(transmute(a), transmute(b), IMM5)) }
3836}
3837
3838#[inline]
3839#[target_feature(enable = "lasx")]
3840#[rustc_legacy_const_generics(2)]
3841#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3842pub fn lasx_xvssrani_wu_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3843    static_assert_uimm_bits!(IMM6, 6);
3844    unsafe { transmute(__lasx_xvssrani_wu_d(transmute(a), transmute(b), IMM6)) }
3845}
3846
3847#[inline]
3848#[target_feature(enable = "lasx")]
3849#[rustc_legacy_const_generics(2)]
3850#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3851pub fn lasx_xvssrani_du_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3852    static_assert_uimm_bits!(IMM7, 7);
3853    unsafe { transmute(__lasx_xvssrani_du_q(transmute(a), transmute(b), IMM7)) }
3854}
3855
3856#[inline]
3857#[target_feature(enable = "lasx")]
3858#[rustc_legacy_const_generics(2)]
3859#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3860pub fn lasx_xvssrarni_b_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3861    static_assert_uimm_bits!(IMM4, 4);
3862    unsafe { transmute(__lasx_xvssrarni_b_h(transmute(a), transmute(b), IMM4)) }
3863}
3864
3865#[inline]
3866#[target_feature(enable = "lasx")]
3867#[rustc_legacy_const_generics(2)]
3868#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3869pub fn lasx_xvssrarni_h_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3870    static_assert_uimm_bits!(IMM5, 5);
3871    unsafe { transmute(__lasx_xvssrarni_h_w(transmute(a), transmute(b), IMM5)) }
3872}
3873
3874#[inline]
3875#[target_feature(enable = "lasx")]
3876#[rustc_legacy_const_generics(2)]
3877#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3878pub fn lasx_xvssrarni_w_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3879    static_assert_uimm_bits!(IMM6, 6);
3880    unsafe { transmute(__lasx_xvssrarni_w_d(transmute(a), transmute(b), IMM6)) }
3881}
3882
3883#[inline]
3884#[target_feature(enable = "lasx")]
3885#[rustc_legacy_const_generics(2)]
3886#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3887pub fn lasx_xvssrarni_d_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3888    static_assert_uimm_bits!(IMM7, 7);
3889    unsafe { transmute(__lasx_xvssrarni_d_q(transmute(a), transmute(b), IMM7)) }
3890}
3891
3892#[inline]
3893#[target_feature(enable = "lasx")]
3894#[rustc_legacy_const_generics(2)]
3895#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3896pub fn lasx_xvssrarni_bu_h<const IMM4: u32>(a: m256i, b: m256i) -> m256i {
3897    static_assert_uimm_bits!(IMM4, 4);
3898    unsafe { transmute(__lasx_xvssrarni_bu_h(transmute(a), transmute(b), IMM4)) }
3899}
3900
3901#[inline]
3902#[target_feature(enable = "lasx")]
3903#[rustc_legacy_const_generics(2)]
3904#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3905pub fn lasx_xvssrarni_hu_w<const IMM5: u32>(a: m256i, b: m256i) -> m256i {
3906    static_assert_uimm_bits!(IMM5, 5);
3907    unsafe { transmute(__lasx_xvssrarni_hu_w(transmute(a), transmute(b), IMM5)) }
3908}
3909
3910#[inline]
3911#[target_feature(enable = "lasx")]
3912#[rustc_legacy_const_generics(2)]
3913#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3914pub fn lasx_xvssrarni_wu_d<const IMM6: u32>(a: m256i, b: m256i) -> m256i {
3915    static_assert_uimm_bits!(IMM6, 6);
3916    unsafe { transmute(__lasx_xvssrarni_wu_d(transmute(a), transmute(b), IMM6)) }
3917}
3918
3919#[inline]
3920#[target_feature(enable = "lasx")]
3921#[rustc_legacy_const_generics(2)]
3922#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3923pub fn lasx_xvssrarni_du_q<const IMM7: u32>(a: m256i, b: m256i) -> m256i {
3924    static_assert_uimm_bits!(IMM7, 7);
3925    unsafe { transmute(__lasx_xvssrarni_du_q(transmute(a), transmute(b), IMM7)) }
3926}
3927
3928#[inline]
3929#[target_feature(enable = "lasx")]
3930#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3931pub fn lasx_xbnz_b(a: m256i) -> i32 {
3932    unsafe { transmute(__lasx_xbnz_b(transmute(a))) }
3933}
3934
3935#[inline]
3936#[target_feature(enable = "lasx")]
3937#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3938pub fn lasx_xbnz_d(a: m256i) -> i32 {
3939    unsafe { transmute(__lasx_xbnz_d(transmute(a))) }
3940}
3941
3942#[inline]
3943#[target_feature(enable = "lasx")]
3944#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3945pub fn lasx_xbnz_h(a: m256i) -> i32 {
3946    unsafe { transmute(__lasx_xbnz_h(transmute(a))) }
3947}
3948
3949#[inline]
3950#[target_feature(enable = "lasx")]
3951#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3952pub fn lasx_xbnz_v(a: m256i) -> i32 {
3953    unsafe { transmute(__lasx_xbnz_v(transmute(a))) }
3954}
3955
3956#[inline]
3957#[target_feature(enable = "lasx")]
3958#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3959pub fn lasx_xbnz_w(a: m256i) -> i32 {
3960    unsafe { transmute(__lasx_xbnz_w(transmute(a))) }
3961}
3962
3963#[inline]
3964#[target_feature(enable = "lasx")]
3965#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3966pub fn lasx_xbz_b(a: m256i) -> i32 {
3967    unsafe { transmute(__lasx_xbz_b(transmute(a))) }
3968}
3969
3970#[inline]
3971#[target_feature(enable = "lasx")]
3972#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3973pub fn lasx_xbz_d(a: m256i) -> i32 {
3974    unsafe { transmute(__lasx_xbz_d(transmute(a))) }
3975}
3976
3977#[inline]
3978#[target_feature(enable = "lasx")]
3979#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3980pub fn lasx_xbz_h(a: m256i) -> i32 {
3981    unsafe { transmute(__lasx_xbz_h(transmute(a))) }
3982}
3983
3984#[inline]
3985#[target_feature(enable = "lasx")]
3986#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3987pub fn lasx_xbz_v(a: m256i) -> i32 {
3988    unsafe { transmute(__lasx_xbz_v(transmute(a))) }
3989}
3990
3991#[inline]
3992#[target_feature(enable = "lasx")]
3993#[unstable(feature = "stdarch_loongarch", issue = "117427")]
3994pub fn lasx_xbz_w(a: m256i) -> i32 {
3995    unsafe { transmute(__lasx_xbz_w(transmute(a))) }
3996}
3997
3998#[inline]
3999#[target_feature(enable = "lasx")]
4000#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4001pub fn lasx_xvfcmp_caf_d(a: m256d, b: m256d) -> m256i {
4002    unsafe { transmute(__lasx_xvfcmp_caf_d(transmute(a), transmute(b))) }
4003}
4004
4005#[inline]
4006#[target_feature(enable = "lasx")]
4007#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4008pub fn lasx_xvfcmp_caf_s(a: m256, b: m256) -> m256i {
4009    unsafe { transmute(__lasx_xvfcmp_caf_s(transmute(a), transmute(b))) }
4010}
4011
4012#[inline]
4013#[target_feature(enable = "lasx")]
4014#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4015pub fn lasx_xvfcmp_ceq_d(a: m256d, b: m256d) -> m256i {
4016    unsafe { transmute(__lasx_xvfcmp_ceq_d(transmute(a), transmute(b))) }
4017}
4018
4019#[inline]
4020#[target_feature(enable = "lasx")]
4021#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4022pub fn lasx_xvfcmp_ceq_s(a: m256, b: m256) -> m256i {
4023    unsafe { transmute(__lasx_xvfcmp_ceq_s(transmute(a), transmute(b))) }
4024}
4025
4026#[inline]
4027#[target_feature(enable = "lasx")]
4028#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4029pub fn lasx_xvfcmp_cle_d(a: m256d, b: m256d) -> m256i {
4030    unsafe { transmute(__lasx_xvfcmp_cle_d(transmute(a), transmute(b))) }
4031}
4032
4033#[inline]
4034#[target_feature(enable = "lasx")]
4035#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4036pub fn lasx_xvfcmp_cle_s(a: m256, b: m256) -> m256i {
4037    unsafe { transmute(__lasx_xvfcmp_cle_s(transmute(a), transmute(b))) }
4038}
4039
4040#[inline]
4041#[target_feature(enable = "lasx")]
4042#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4043pub fn lasx_xvfcmp_clt_d(a: m256d, b: m256d) -> m256i {
4044    unsafe { transmute(__lasx_xvfcmp_clt_d(transmute(a), transmute(b))) }
4045}
4046
4047#[inline]
4048#[target_feature(enable = "lasx")]
4049#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4050pub fn lasx_xvfcmp_clt_s(a: m256, b: m256) -> m256i {
4051    unsafe { transmute(__lasx_xvfcmp_clt_s(transmute(a), transmute(b))) }
4052}
4053
4054#[inline]
4055#[target_feature(enable = "lasx")]
4056#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4057pub fn lasx_xvfcmp_cne_d(a: m256d, b: m256d) -> m256i {
4058    unsafe { transmute(__lasx_xvfcmp_cne_d(transmute(a), transmute(b))) }
4059}
4060
4061#[inline]
4062#[target_feature(enable = "lasx")]
4063#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4064pub fn lasx_xvfcmp_cne_s(a: m256, b: m256) -> m256i {
4065    unsafe { transmute(__lasx_xvfcmp_cne_s(transmute(a), transmute(b))) }
4066}
4067
4068#[inline]
4069#[target_feature(enable = "lasx")]
4070#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4071pub fn lasx_xvfcmp_cor_d(a: m256d, b: m256d) -> m256i {
4072    unsafe { transmute(__lasx_xvfcmp_cor_d(transmute(a), transmute(b))) }
4073}
4074
4075#[inline]
4076#[target_feature(enable = "lasx")]
4077#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4078pub fn lasx_xvfcmp_cor_s(a: m256, b: m256) -> m256i {
4079    unsafe { transmute(__lasx_xvfcmp_cor_s(transmute(a), transmute(b))) }
4080}
4081
4082#[inline]
4083#[target_feature(enable = "lasx")]
4084#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4085pub fn lasx_xvfcmp_cueq_d(a: m256d, b: m256d) -> m256i {
4086    unsafe { transmute(__lasx_xvfcmp_cueq_d(transmute(a), transmute(b))) }
4087}
4088
4089#[inline]
4090#[target_feature(enable = "lasx")]
4091#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4092pub fn lasx_xvfcmp_cueq_s(a: m256, b: m256) -> m256i {
4093    unsafe { transmute(__lasx_xvfcmp_cueq_s(transmute(a), transmute(b))) }
4094}
4095
4096#[inline]
4097#[target_feature(enable = "lasx")]
4098#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4099pub fn lasx_xvfcmp_cule_d(a: m256d, b: m256d) -> m256i {
4100    unsafe { transmute(__lasx_xvfcmp_cule_d(transmute(a), transmute(b))) }
4101}
4102
4103#[inline]
4104#[target_feature(enable = "lasx")]
4105#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4106pub fn lasx_xvfcmp_cule_s(a: m256, b: m256) -> m256i {
4107    unsafe { transmute(__lasx_xvfcmp_cule_s(transmute(a), transmute(b))) }
4108}
4109
4110#[inline]
4111#[target_feature(enable = "lasx")]
4112#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4113pub fn lasx_xvfcmp_cult_d(a: m256d, b: m256d) -> m256i {
4114    unsafe { transmute(__lasx_xvfcmp_cult_d(transmute(a), transmute(b))) }
4115}
4116
4117#[inline]
4118#[target_feature(enable = "lasx")]
4119#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4120pub fn lasx_xvfcmp_cult_s(a: m256, b: m256) -> m256i {
4121    unsafe { transmute(__lasx_xvfcmp_cult_s(transmute(a), transmute(b))) }
4122}
4123
4124#[inline]
4125#[target_feature(enable = "lasx")]
4126#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4127pub fn lasx_xvfcmp_cun_d(a: m256d, b: m256d) -> m256i {
4128    unsafe { transmute(__lasx_xvfcmp_cun_d(transmute(a), transmute(b))) }
4129}
4130
4131#[inline]
4132#[target_feature(enable = "lasx")]
4133#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4134pub fn lasx_xvfcmp_cune_d(a: m256d, b: m256d) -> m256i {
4135    unsafe { transmute(__lasx_xvfcmp_cune_d(transmute(a), transmute(b))) }
4136}
4137
4138#[inline]
4139#[target_feature(enable = "lasx")]
4140#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4141pub fn lasx_xvfcmp_cune_s(a: m256, b: m256) -> m256i {
4142    unsafe { transmute(__lasx_xvfcmp_cune_s(transmute(a), transmute(b))) }
4143}
4144
4145#[inline]
4146#[target_feature(enable = "lasx")]
4147#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4148pub fn lasx_xvfcmp_cun_s(a: m256, b: m256) -> m256i {
4149    unsafe { transmute(__lasx_xvfcmp_cun_s(transmute(a), transmute(b))) }
4150}
4151
4152#[inline]
4153#[target_feature(enable = "lasx")]
4154#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4155pub fn lasx_xvfcmp_saf_d(a: m256d, b: m256d) -> m256i {
4156    unsafe { transmute(__lasx_xvfcmp_saf_d(transmute(a), transmute(b))) }
4157}
4158
4159#[inline]
4160#[target_feature(enable = "lasx")]
4161#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4162pub fn lasx_xvfcmp_saf_s(a: m256, b: m256) -> m256i {
4163    unsafe { transmute(__lasx_xvfcmp_saf_s(transmute(a), transmute(b))) }
4164}
4165
4166#[inline]
4167#[target_feature(enable = "lasx")]
4168#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4169pub fn lasx_xvfcmp_seq_d(a: m256d, b: m256d) -> m256i {
4170    unsafe { transmute(__lasx_xvfcmp_seq_d(transmute(a), transmute(b))) }
4171}
4172
4173#[inline]
4174#[target_feature(enable = "lasx")]
4175#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4176pub fn lasx_xvfcmp_seq_s(a: m256, b: m256) -> m256i {
4177    unsafe { transmute(__lasx_xvfcmp_seq_s(transmute(a), transmute(b))) }
4178}
4179
4180#[inline]
4181#[target_feature(enable = "lasx")]
4182#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4183pub fn lasx_xvfcmp_sle_d(a: m256d, b: m256d) -> m256i {
4184    unsafe { transmute(__lasx_xvfcmp_sle_d(transmute(a), transmute(b))) }
4185}
4186
4187#[inline]
4188#[target_feature(enable = "lasx")]
4189#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4190pub fn lasx_xvfcmp_sle_s(a: m256, b: m256) -> m256i {
4191    unsafe { transmute(__lasx_xvfcmp_sle_s(transmute(a), transmute(b))) }
4192}
4193
4194#[inline]
4195#[target_feature(enable = "lasx")]
4196#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4197pub fn lasx_xvfcmp_slt_d(a: m256d, b: m256d) -> m256i {
4198    unsafe { transmute(__lasx_xvfcmp_slt_d(transmute(a), transmute(b))) }
4199}
4200
4201#[inline]
4202#[target_feature(enable = "lasx")]
4203#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4204pub fn lasx_xvfcmp_slt_s(a: m256, b: m256) -> m256i {
4205    unsafe { transmute(__lasx_xvfcmp_slt_s(transmute(a), transmute(b))) }
4206}
4207
4208#[inline]
4209#[target_feature(enable = "lasx")]
4210#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4211pub fn lasx_xvfcmp_sne_d(a: m256d, b: m256d) -> m256i {
4212    unsafe { transmute(__lasx_xvfcmp_sne_d(transmute(a), transmute(b))) }
4213}
4214
4215#[inline]
4216#[target_feature(enable = "lasx")]
4217#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4218pub fn lasx_xvfcmp_sne_s(a: m256, b: m256) -> m256i {
4219    unsafe { transmute(__lasx_xvfcmp_sne_s(transmute(a), transmute(b))) }
4220}
4221
4222#[inline]
4223#[target_feature(enable = "lasx")]
4224#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4225pub fn lasx_xvfcmp_sor_d(a: m256d, b: m256d) -> m256i {
4226    unsafe { transmute(__lasx_xvfcmp_sor_d(transmute(a), transmute(b))) }
4227}
4228
4229#[inline]
4230#[target_feature(enable = "lasx")]
4231#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4232pub fn lasx_xvfcmp_sor_s(a: m256, b: m256) -> m256i {
4233    unsafe { transmute(__lasx_xvfcmp_sor_s(transmute(a), transmute(b))) }
4234}
4235
4236#[inline]
4237#[target_feature(enable = "lasx")]
4238#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4239pub fn lasx_xvfcmp_sueq_d(a: m256d, b: m256d) -> m256i {
4240    unsafe { transmute(__lasx_xvfcmp_sueq_d(transmute(a), transmute(b))) }
4241}
4242
4243#[inline]
4244#[target_feature(enable = "lasx")]
4245#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4246pub fn lasx_xvfcmp_sueq_s(a: m256, b: m256) -> m256i {
4247    unsafe { transmute(__lasx_xvfcmp_sueq_s(transmute(a), transmute(b))) }
4248}
4249
4250#[inline]
4251#[target_feature(enable = "lasx")]
4252#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4253pub fn lasx_xvfcmp_sule_d(a: m256d, b: m256d) -> m256i {
4254    unsafe { transmute(__lasx_xvfcmp_sule_d(transmute(a), transmute(b))) }
4255}
4256
4257#[inline]
4258#[target_feature(enable = "lasx")]
4259#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4260pub fn lasx_xvfcmp_sule_s(a: m256, b: m256) -> m256i {
4261    unsafe { transmute(__lasx_xvfcmp_sule_s(transmute(a), transmute(b))) }
4262}
4263
4264#[inline]
4265#[target_feature(enable = "lasx")]
4266#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4267pub fn lasx_xvfcmp_sult_d(a: m256d, b: m256d) -> m256i {
4268    unsafe { transmute(__lasx_xvfcmp_sult_d(transmute(a), transmute(b))) }
4269}
4270
4271#[inline]
4272#[target_feature(enable = "lasx")]
4273#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4274pub fn lasx_xvfcmp_sult_s(a: m256, b: m256) -> m256i {
4275    unsafe { transmute(__lasx_xvfcmp_sult_s(transmute(a), transmute(b))) }
4276}
4277
4278#[inline]
4279#[target_feature(enable = "lasx")]
4280#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4281pub fn lasx_xvfcmp_sun_d(a: m256d, b: m256d) -> m256i {
4282    unsafe { transmute(__lasx_xvfcmp_sun_d(transmute(a), transmute(b))) }
4283}
4284
4285#[inline]
4286#[target_feature(enable = "lasx")]
4287#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4288pub fn lasx_xvfcmp_sune_d(a: m256d, b: m256d) -> m256i {
4289    unsafe { transmute(__lasx_xvfcmp_sune_d(transmute(a), transmute(b))) }
4290}
4291
4292#[inline]
4293#[target_feature(enable = "lasx")]
4294#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4295pub fn lasx_xvfcmp_sune_s(a: m256, b: m256) -> m256i {
4296    unsafe { transmute(__lasx_xvfcmp_sune_s(transmute(a), transmute(b))) }
4297}
4298
4299#[inline]
4300#[target_feature(enable = "lasx")]
4301#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4302pub fn lasx_xvfcmp_sun_s(a: m256, b: m256) -> m256i {
4303    unsafe { transmute(__lasx_xvfcmp_sun_s(transmute(a), transmute(b))) }
4304}
4305
4306#[inline]
4307#[target_feature(enable = "lasx")]
4308#[rustc_legacy_const_generics(1)]
4309#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4310pub fn lasx_xvpickve_d_f<const IMM2: u32>(a: m256d) -> m256d {
4311    static_assert_uimm_bits!(IMM2, 2);
4312    unsafe { transmute(__lasx_xvpickve_d_f(transmute(a), IMM2)) }
4313}
4314
4315#[inline]
4316#[target_feature(enable = "lasx")]
4317#[rustc_legacy_const_generics(1)]
4318#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4319pub fn lasx_xvpickve_w_f<const IMM3: u32>(a: m256) -> m256 {
4320    static_assert_uimm_bits!(IMM3, 3);
4321    unsafe { transmute(__lasx_xvpickve_w_f(transmute(a), IMM3)) }
4322}
4323
4324#[inline]
4325#[target_feature(enable = "lasx")]
4326#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4327pub fn lasx_cast_128_s(a: m128) -> m256 {
4328    unsafe { transmute(__lasx_cast_128_s(transmute(a))) }
4329}
4330
4331#[inline]
4332#[target_feature(enable = "lasx")]
4333#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4334pub fn lasx_cast_128_d(a: m128d) -> m256d {
4335    unsafe { transmute(__lasx_cast_128_d(transmute(a))) }
4336}
4337
4338#[inline]
4339#[target_feature(enable = "lasx")]
4340#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4341pub fn lasx_cast_128(a: m128i) -> m256i {
4342    unsafe { transmute(__lasx_cast_128(transmute(a))) }
4343}
4344
4345#[inline]
4346#[target_feature(enable = "lasx")]
4347#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4348pub fn lasx_concat_128_s(a: m128, b: m128) -> m256 {
4349    unsafe { transmute(__lasx_concat_128_s(transmute(a), transmute(b))) }
4350}
4351
4352#[inline]
4353#[target_feature(enable = "lasx")]
4354#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4355pub fn lasx_concat_128_d(a: m128d, b: m128d) -> m256d {
4356    unsafe { transmute(__lasx_concat_128_d(transmute(a), transmute(b))) }
4357}
4358
4359#[inline]
4360#[target_feature(enable = "lasx")]
4361#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4362pub fn lasx_concat_128(a: m128i, b: m128i) -> m256i {
4363    unsafe { transmute(__lasx_concat_128(transmute(a), transmute(b))) }
4364}
4365
4366#[inline]
4367#[target_feature(enable = "lasx")]
4368#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4369pub fn lasx_extract_128_lo_s(a: m256) -> m128 {
4370    unsafe { transmute(__lasx_extract_128_lo_s(transmute(a))) }
4371}
4372
4373#[inline]
4374#[target_feature(enable = "lasx")]
4375#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4376pub fn lasx_extract_128_hi_s(a: m256) -> m128 {
4377    unsafe { transmute(__lasx_extract_128_hi_s(transmute(a))) }
4378}
4379
4380#[inline]
4381#[target_feature(enable = "lasx")]
4382#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4383pub fn lasx_extract_128_lo_d(a: m256d) -> m128d {
4384    unsafe { transmute(__lasx_extract_128_lo_d(transmute(a))) }
4385}
4386
4387#[inline]
4388#[target_feature(enable = "lasx")]
4389#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4390pub fn lasx_extract_128_hi_d(a: m256d) -> m128d {
4391    unsafe { transmute(__lasx_extract_128_hi_d(transmute(a))) }
4392}
4393
4394#[inline]
4395#[target_feature(enable = "lasx")]
4396#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4397pub fn lasx_extract_128_lo(a: m256i) -> m128i {
4398    unsafe { transmute(__lasx_extract_128_lo(transmute(a))) }
4399}
4400
4401#[inline]
4402#[target_feature(enable = "lasx")]
4403#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4404pub fn lasx_extract_128_hi(a: m256i) -> m128i {
4405    unsafe { transmute(__lasx_extract_128_hi(transmute(a))) }
4406}
4407
4408#[inline]
4409#[target_feature(enable = "lasx")]
4410#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4411pub fn lasx_insert_128_lo_s(a: m256, b: m128) -> m256 {
4412    unsafe { transmute(__lasx_insert_128_lo_s(transmute(a), transmute(b))) }
4413}
4414
4415#[inline]
4416#[target_feature(enable = "lasx")]
4417#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4418pub fn lasx_insert_128_hi_s(a: m256, b: m128) -> m256 {
4419    unsafe { transmute(__lasx_insert_128_hi_s(transmute(a), transmute(b))) }
4420}
4421
4422#[inline]
4423#[target_feature(enable = "lasx")]
4424#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4425pub fn lasx_insert_128_lo_d(a: m256d, b: m128d) -> m256d {
4426    unsafe { transmute(__lasx_insert_128_lo_d(transmute(a), transmute(b))) }
4427}
4428
4429#[inline]
4430#[target_feature(enable = "lasx")]
4431#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4432pub fn lasx_insert_128_hi_d(a: m256d, b: m128d) -> m256d {
4433    unsafe { transmute(__lasx_insert_128_hi_d(transmute(a), transmute(b))) }
4434}
4435
4436#[inline]
4437#[target_feature(enable = "lasx")]
4438#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4439pub fn lasx_insert_128_lo(a: m256i, b: m128i) -> m256i {
4440    unsafe { transmute(__lasx_insert_128_lo(transmute(a), transmute(b))) }
4441}
4442
4443#[inline]
4444#[target_feature(enable = "lasx")]
4445#[unstable(feature = "stdarch_loongarch", issue = "117427")]
4446pub fn lasx_insert_128_hi(a: m256i, b: m128i) -> m256i {
4447    unsafe { transmute(__lasx_insert_128_hi(transmute(a), transmute(b))) }
4448}