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