1use 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}