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