xref: /freebsd/contrib/llvm-project/clang/lib/Headers/lsxintrin.h (revision 56b17de1e8360fe131d425de20b5e75ff3ea897c)
1 /*===------------- lsxintrin.h - LoongArch LSX intrinsics ------------------===
2  *
3  * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4  * See https://llvm.org/LICENSE.txt for license information.
5  * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6  *
7  *===-----------------------------------------------------------------------===
8  */
9 
10 #ifndef _LOONGSON_SXINTRIN_H
11 #define _LOONGSON_SXINTRIN_H 1
12 
13 #if defined(__loongarch_sx)
14 typedef signed char v16i8 __attribute__((vector_size(16), aligned(16)));
15 typedef signed char v16i8_b __attribute__((vector_size(16), aligned(1)));
16 typedef unsigned char v16u8 __attribute__((vector_size(16), aligned(16)));
17 typedef unsigned char v16u8_b __attribute__((vector_size(16), aligned(1)));
18 typedef short v8i16 __attribute__((vector_size(16), aligned(16)));
19 typedef short v8i16_h __attribute__((vector_size(16), aligned(2)));
20 typedef unsigned short v8u16 __attribute__((vector_size(16), aligned(16)));
21 typedef unsigned short v8u16_h __attribute__((vector_size(16), aligned(2)));
22 typedef int v4i32 __attribute__((vector_size(16), aligned(16)));
23 typedef int v4i32_w __attribute__((vector_size(16), aligned(4)));
24 typedef unsigned int v4u32 __attribute__((vector_size(16), aligned(16)));
25 typedef unsigned int v4u32_w __attribute__((vector_size(16), aligned(4)));
26 typedef long long v2i64 __attribute__((vector_size(16), aligned(16)));
27 typedef long long v2i64_d __attribute__((vector_size(16), aligned(8)));
28 typedef unsigned long long v2u64 __attribute__((vector_size(16), aligned(16)));
29 typedef unsigned long long v2u64_d __attribute__((vector_size(16), aligned(8)));
30 typedef float v4f32 __attribute__((vector_size(16), aligned(16)));
31 typedef float v4f32_w __attribute__((vector_size(16), aligned(4)));
32 typedef double v2f64 __attribute__((vector_size(16), aligned(16)));
33 typedef double v2f64_d __attribute__((vector_size(16), aligned(8)));
34 
35 typedef long long __m128i __attribute__((__vector_size__(16), __may_alias__));
36 typedef float __m128 __attribute__((__vector_size__(16), __may_alias__));
37 typedef double __m128d __attribute__((__vector_size__(16), __may_alias__));
38 
39 extern __inline
40     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
41     __lsx_vsll_b(__m128i _1, __m128i _2) {
42   return (__m128i)__builtin_lsx_vsll_b((v16i8)_1, (v16i8)_2);
43 }
44 
45 extern __inline
46     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
47     __lsx_vsll_h(__m128i _1, __m128i _2) {
48   return (__m128i)__builtin_lsx_vsll_h((v8i16)_1, (v8i16)_2);
49 }
50 
51 extern __inline
52     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
53     __lsx_vsll_w(__m128i _1, __m128i _2) {
54   return (__m128i)__builtin_lsx_vsll_w((v4i32)_1, (v4i32)_2);
55 }
56 
57 extern __inline
58     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
59     __lsx_vsll_d(__m128i _1, __m128i _2) {
60   return (__m128i)__builtin_lsx_vsll_d((v2i64)_1, (v2i64)_2);
61 }
62 
63 #define __lsx_vslli_b(/*__m128i*/ _1, /*ui3*/ _2)                              \
64   ((__m128i)__builtin_lsx_vslli_b((v16i8)(_1), (_2)))
65 
66 #define __lsx_vslli_h(/*__m128i*/ _1, /*ui4*/ _2)                              \
67   ((__m128i)__builtin_lsx_vslli_h((v8i16)(_1), (_2)))
68 
69 #define __lsx_vslli_w(/*__m128i*/ _1, /*ui5*/ _2)                              \
70   ((__m128i)__builtin_lsx_vslli_w((v4i32)(_1), (_2)))
71 
72 #define __lsx_vslli_d(/*__m128i*/ _1, /*ui6*/ _2)                              \
73   ((__m128i)__builtin_lsx_vslli_d((v2i64)(_1), (_2)))
74 
75 extern __inline
76     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
77     __lsx_vsra_b(__m128i _1, __m128i _2) {
78   return (__m128i)__builtin_lsx_vsra_b((v16i8)_1, (v16i8)_2);
79 }
80 
81 extern __inline
82     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
83     __lsx_vsra_h(__m128i _1, __m128i _2) {
84   return (__m128i)__builtin_lsx_vsra_h((v8i16)_1, (v8i16)_2);
85 }
86 
87 extern __inline
88     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
89     __lsx_vsra_w(__m128i _1, __m128i _2) {
90   return (__m128i)__builtin_lsx_vsra_w((v4i32)_1, (v4i32)_2);
91 }
92 
93 extern __inline
94     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
95     __lsx_vsra_d(__m128i _1, __m128i _2) {
96   return (__m128i)__builtin_lsx_vsra_d((v2i64)_1, (v2i64)_2);
97 }
98 
99 #define __lsx_vsrai_b(/*__m128i*/ _1, /*ui3*/ _2)                              \
100   ((__m128i)__builtin_lsx_vsrai_b((v16i8)(_1), (_2)))
101 
102 #define __lsx_vsrai_h(/*__m128i*/ _1, /*ui4*/ _2)                              \
103   ((__m128i)__builtin_lsx_vsrai_h((v8i16)(_1), (_2)))
104 
105 #define __lsx_vsrai_w(/*__m128i*/ _1, /*ui5*/ _2)                              \
106   ((__m128i)__builtin_lsx_vsrai_w((v4i32)(_1), (_2)))
107 
108 #define __lsx_vsrai_d(/*__m128i*/ _1, /*ui6*/ _2)                              \
109   ((__m128i)__builtin_lsx_vsrai_d((v2i64)(_1), (_2)))
110 
111 extern __inline
112     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
113     __lsx_vsrar_b(__m128i _1, __m128i _2) {
114   return (__m128i)__builtin_lsx_vsrar_b((v16i8)_1, (v16i8)_2);
115 }
116 
117 extern __inline
118     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
119     __lsx_vsrar_h(__m128i _1, __m128i _2) {
120   return (__m128i)__builtin_lsx_vsrar_h((v8i16)_1, (v8i16)_2);
121 }
122 
123 extern __inline
124     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
125     __lsx_vsrar_w(__m128i _1, __m128i _2) {
126   return (__m128i)__builtin_lsx_vsrar_w((v4i32)_1, (v4i32)_2);
127 }
128 
129 extern __inline
130     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
131     __lsx_vsrar_d(__m128i _1, __m128i _2) {
132   return (__m128i)__builtin_lsx_vsrar_d((v2i64)_1, (v2i64)_2);
133 }
134 
135 #define __lsx_vsrari_b(/*__m128i*/ _1, /*ui3*/ _2)                             \
136   ((__m128i)__builtin_lsx_vsrari_b((v16i8)(_1), (_2)))
137 
138 #define __lsx_vsrari_h(/*__m128i*/ _1, /*ui4*/ _2)                             \
139   ((__m128i)__builtin_lsx_vsrari_h((v8i16)(_1), (_2)))
140 
141 #define __lsx_vsrari_w(/*__m128i*/ _1, /*ui5*/ _2)                             \
142   ((__m128i)__builtin_lsx_vsrari_w((v4i32)(_1), (_2)))
143 
144 #define __lsx_vsrari_d(/*__m128i*/ _1, /*ui6*/ _2)                             \
145   ((__m128i)__builtin_lsx_vsrari_d((v2i64)(_1), (_2)))
146 
147 extern __inline
148     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
149     __lsx_vsrl_b(__m128i _1, __m128i _2) {
150   return (__m128i)__builtin_lsx_vsrl_b((v16i8)_1, (v16i8)_2);
151 }
152 
153 extern __inline
154     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
155     __lsx_vsrl_h(__m128i _1, __m128i _2) {
156   return (__m128i)__builtin_lsx_vsrl_h((v8i16)_1, (v8i16)_2);
157 }
158 
159 extern __inline
160     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
161     __lsx_vsrl_w(__m128i _1, __m128i _2) {
162   return (__m128i)__builtin_lsx_vsrl_w((v4i32)_1, (v4i32)_2);
163 }
164 
165 extern __inline
166     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
167     __lsx_vsrl_d(__m128i _1, __m128i _2) {
168   return (__m128i)__builtin_lsx_vsrl_d((v2i64)_1, (v2i64)_2);
169 }
170 
171 #define __lsx_vsrli_b(/*__m128i*/ _1, /*ui3*/ _2)                              \
172   ((__m128i)__builtin_lsx_vsrli_b((v16i8)(_1), (_2)))
173 
174 #define __lsx_vsrli_h(/*__m128i*/ _1, /*ui4*/ _2)                              \
175   ((__m128i)__builtin_lsx_vsrli_h((v8i16)(_1), (_2)))
176 
177 #define __lsx_vsrli_w(/*__m128i*/ _1, /*ui5*/ _2)                              \
178   ((__m128i)__builtin_lsx_vsrli_w((v4i32)(_1), (_2)))
179 
180 #define __lsx_vsrli_d(/*__m128i*/ _1, /*ui6*/ _2)                              \
181   ((__m128i)__builtin_lsx_vsrli_d((v2i64)(_1), (_2)))
182 
183 extern __inline
184     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
185     __lsx_vsrlr_b(__m128i _1, __m128i _2) {
186   return (__m128i)__builtin_lsx_vsrlr_b((v16i8)_1, (v16i8)_2);
187 }
188 
189 extern __inline
190     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
191     __lsx_vsrlr_h(__m128i _1, __m128i _2) {
192   return (__m128i)__builtin_lsx_vsrlr_h((v8i16)_1, (v8i16)_2);
193 }
194 
195 extern __inline
196     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
197     __lsx_vsrlr_w(__m128i _1, __m128i _2) {
198   return (__m128i)__builtin_lsx_vsrlr_w((v4i32)_1, (v4i32)_2);
199 }
200 
201 extern __inline
202     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
203     __lsx_vsrlr_d(__m128i _1, __m128i _2) {
204   return (__m128i)__builtin_lsx_vsrlr_d((v2i64)_1, (v2i64)_2);
205 }
206 
207 #define __lsx_vsrlri_b(/*__m128i*/ _1, /*ui3*/ _2)                             \
208   ((__m128i)__builtin_lsx_vsrlri_b((v16i8)(_1), (_2)))
209 
210 #define __lsx_vsrlri_h(/*__m128i*/ _1, /*ui4*/ _2)                             \
211   ((__m128i)__builtin_lsx_vsrlri_h((v8i16)(_1), (_2)))
212 
213 #define __lsx_vsrlri_w(/*__m128i*/ _1, /*ui5*/ _2)                             \
214   ((__m128i)__builtin_lsx_vsrlri_w((v4i32)(_1), (_2)))
215 
216 #define __lsx_vsrlri_d(/*__m128i*/ _1, /*ui6*/ _2)                             \
217   ((__m128i)__builtin_lsx_vsrlri_d((v2i64)(_1), (_2)))
218 
219 extern __inline
220     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
221     __lsx_vbitclr_b(__m128i _1, __m128i _2) {
222   return (__m128i)__builtin_lsx_vbitclr_b((v16u8)_1, (v16u8)_2);
223 }
224 
225 extern __inline
226     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
227     __lsx_vbitclr_h(__m128i _1, __m128i _2) {
228   return (__m128i)__builtin_lsx_vbitclr_h((v8u16)_1, (v8u16)_2);
229 }
230 
231 extern __inline
232     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
233     __lsx_vbitclr_w(__m128i _1, __m128i _2) {
234   return (__m128i)__builtin_lsx_vbitclr_w((v4u32)_1, (v4u32)_2);
235 }
236 
237 extern __inline
238     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
239     __lsx_vbitclr_d(__m128i _1, __m128i _2) {
240   return (__m128i)__builtin_lsx_vbitclr_d((v2u64)_1, (v2u64)_2);
241 }
242 
243 #define __lsx_vbitclri_b(/*__m128i*/ _1, /*ui3*/ _2)                           \
244   ((__m128i)__builtin_lsx_vbitclri_b((v16u8)(_1), (_2)))
245 
246 #define __lsx_vbitclri_h(/*__m128i*/ _1, /*ui4*/ _2)                           \
247   ((__m128i)__builtin_lsx_vbitclri_h((v8u16)(_1), (_2)))
248 
249 #define __lsx_vbitclri_w(/*__m128i*/ _1, /*ui5*/ _2)                           \
250   ((__m128i)__builtin_lsx_vbitclri_w((v4u32)(_1), (_2)))
251 
252 #define __lsx_vbitclri_d(/*__m128i*/ _1, /*ui6*/ _2)                           \
253   ((__m128i)__builtin_lsx_vbitclri_d((v2u64)(_1), (_2)))
254 
255 extern __inline
256     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
257     __lsx_vbitset_b(__m128i _1, __m128i _2) {
258   return (__m128i)__builtin_lsx_vbitset_b((v16u8)_1, (v16u8)_2);
259 }
260 
261 extern __inline
262     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
263     __lsx_vbitset_h(__m128i _1, __m128i _2) {
264   return (__m128i)__builtin_lsx_vbitset_h((v8u16)_1, (v8u16)_2);
265 }
266 
267 extern __inline
268     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
269     __lsx_vbitset_w(__m128i _1, __m128i _2) {
270   return (__m128i)__builtin_lsx_vbitset_w((v4u32)_1, (v4u32)_2);
271 }
272 
273 extern __inline
274     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
275     __lsx_vbitset_d(__m128i _1, __m128i _2) {
276   return (__m128i)__builtin_lsx_vbitset_d((v2u64)_1, (v2u64)_2);
277 }
278 
279 #define __lsx_vbitseti_b(/*__m128i*/ _1, /*ui3*/ _2)                           \
280   ((__m128i)__builtin_lsx_vbitseti_b((v16u8)(_1), (_2)))
281 
282 #define __lsx_vbitseti_h(/*__m128i*/ _1, /*ui4*/ _2)                           \
283   ((__m128i)__builtin_lsx_vbitseti_h((v8u16)(_1), (_2)))
284 
285 #define __lsx_vbitseti_w(/*__m128i*/ _1, /*ui5*/ _2)                           \
286   ((__m128i)__builtin_lsx_vbitseti_w((v4u32)(_1), (_2)))
287 
288 #define __lsx_vbitseti_d(/*__m128i*/ _1, /*ui6*/ _2)                           \
289   ((__m128i)__builtin_lsx_vbitseti_d((v2u64)(_1), (_2)))
290 
291 extern __inline
292     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
293     __lsx_vbitrev_b(__m128i _1, __m128i _2) {
294   return (__m128i)__builtin_lsx_vbitrev_b((v16u8)_1, (v16u8)_2);
295 }
296 
297 extern __inline
298     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
299     __lsx_vbitrev_h(__m128i _1, __m128i _2) {
300   return (__m128i)__builtin_lsx_vbitrev_h((v8u16)_1, (v8u16)_2);
301 }
302 
303 extern __inline
304     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
305     __lsx_vbitrev_w(__m128i _1, __m128i _2) {
306   return (__m128i)__builtin_lsx_vbitrev_w((v4u32)_1, (v4u32)_2);
307 }
308 
309 extern __inline
310     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
311     __lsx_vbitrev_d(__m128i _1, __m128i _2) {
312   return (__m128i)__builtin_lsx_vbitrev_d((v2u64)_1, (v2u64)_2);
313 }
314 
315 #define __lsx_vbitrevi_b(/*__m128i*/ _1, /*ui3*/ _2)                           \
316   ((__m128i)__builtin_lsx_vbitrevi_b((v16u8)(_1), (_2)))
317 
318 #define __lsx_vbitrevi_h(/*__m128i*/ _1, /*ui4*/ _2)                           \
319   ((__m128i)__builtin_lsx_vbitrevi_h((v8u16)(_1), (_2)))
320 
321 #define __lsx_vbitrevi_w(/*__m128i*/ _1, /*ui5*/ _2)                           \
322   ((__m128i)__builtin_lsx_vbitrevi_w((v4u32)(_1), (_2)))
323 
324 #define __lsx_vbitrevi_d(/*__m128i*/ _1, /*ui6*/ _2)                           \
325   ((__m128i)__builtin_lsx_vbitrevi_d((v2u64)(_1), (_2)))
326 
327 extern __inline
328     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
329     __lsx_vadd_b(__m128i _1, __m128i _2) {
330   return (__m128i)__builtin_lsx_vadd_b((v16i8)_1, (v16i8)_2);
331 }
332 
333 extern __inline
334     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
335     __lsx_vadd_h(__m128i _1, __m128i _2) {
336   return (__m128i)__builtin_lsx_vadd_h((v8i16)_1, (v8i16)_2);
337 }
338 
339 extern __inline
340     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
341     __lsx_vadd_w(__m128i _1, __m128i _2) {
342   return (__m128i)__builtin_lsx_vadd_w((v4i32)_1, (v4i32)_2);
343 }
344 
345 extern __inline
346     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
347     __lsx_vadd_d(__m128i _1, __m128i _2) {
348   return (__m128i)__builtin_lsx_vadd_d((v2i64)_1, (v2i64)_2);
349 }
350 
351 #define __lsx_vaddi_bu(/*__m128i*/ _1, /*ui5*/ _2)                             \
352   ((__m128i)__builtin_lsx_vaddi_bu((v16i8)(_1), (_2)))
353 
354 #define __lsx_vaddi_hu(/*__m128i*/ _1, /*ui5*/ _2)                             \
355   ((__m128i)__builtin_lsx_vaddi_hu((v8i16)(_1), (_2)))
356 
357 #define __lsx_vaddi_wu(/*__m128i*/ _1, /*ui5*/ _2)                             \
358   ((__m128i)__builtin_lsx_vaddi_wu((v4i32)(_1), (_2)))
359 
360 #define __lsx_vaddi_du(/*__m128i*/ _1, /*ui5*/ _2)                             \
361   ((__m128i)__builtin_lsx_vaddi_du((v2i64)(_1), (_2)))
362 
363 extern __inline
364     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
365     __lsx_vsub_b(__m128i _1, __m128i _2) {
366   return (__m128i)__builtin_lsx_vsub_b((v16i8)_1, (v16i8)_2);
367 }
368 
369 extern __inline
370     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
371     __lsx_vsub_h(__m128i _1, __m128i _2) {
372   return (__m128i)__builtin_lsx_vsub_h((v8i16)_1, (v8i16)_2);
373 }
374 
375 extern __inline
376     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
377     __lsx_vsub_w(__m128i _1, __m128i _2) {
378   return (__m128i)__builtin_lsx_vsub_w((v4i32)_1, (v4i32)_2);
379 }
380 
381 extern __inline
382     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
383     __lsx_vsub_d(__m128i _1, __m128i _2) {
384   return (__m128i)__builtin_lsx_vsub_d((v2i64)_1, (v2i64)_2);
385 }
386 
387 #define __lsx_vsubi_bu(/*__m128i*/ _1, /*ui5*/ _2)                             \
388   ((__m128i)__builtin_lsx_vsubi_bu((v16i8)(_1), (_2)))
389 
390 #define __lsx_vsubi_hu(/*__m128i*/ _1, /*ui5*/ _2)                             \
391   ((__m128i)__builtin_lsx_vsubi_hu((v8i16)(_1), (_2)))
392 
393 #define __lsx_vsubi_wu(/*__m128i*/ _1, /*ui5*/ _2)                             \
394   ((__m128i)__builtin_lsx_vsubi_wu((v4i32)(_1), (_2)))
395 
396 #define __lsx_vsubi_du(/*__m128i*/ _1, /*ui5*/ _2)                             \
397   ((__m128i)__builtin_lsx_vsubi_du((v2i64)(_1), (_2)))
398 
399 extern __inline
400     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
401     __lsx_vmax_b(__m128i _1, __m128i _2) {
402   return (__m128i)__builtin_lsx_vmax_b((v16i8)_1, (v16i8)_2);
403 }
404 
405 extern __inline
406     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
407     __lsx_vmax_h(__m128i _1, __m128i _2) {
408   return (__m128i)__builtin_lsx_vmax_h((v8i16)_1, (v8i16)_2);
409 }
410 
411 extern __inline
412     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
413     __lsx_vmax_w(__m128i _1, __m128i _2) {
414   return (__m128i)__builtin_lsx_vmax_w((v4i32)_1, (v4i32)_2);
415 }
416 
417 extern __inline
418     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
419     __lsx_vmax_d(__m128i _1, __m128i _2) {
420   return (__m128i)__builtin_lsx_vmax_d((v2i64)_1, (v2i64)_2);
421 }
422 
423 #define __lsx_vmaxi_b(/*__m128i*/ _1, /*si5*/ _2)                              \
424   ((__m128i)__builtin_lsx_vmaxi_b((v16i8)(_1), (_2)))
425 
426 #define __lsx_vmaxi_h(/*__m128i*/ _1, /*si5*/ _2)                              \
427   ((__m128i)__builtin_lsx_vmaxi_h((v8i16)(_1), (_2)))
428 
429 #define __lsx_vmaxi_w(/*__m128i*/ _1, /*si5*/ _2)                              \
430   ((__m128i)__builtin_lsx_vmaxi_w((v4i32)(_1), (_2)))
431 
432 #define __lsx_vmaxi_d(/*__m128i*/ _1, /*si5*/ _2)                              \
433   ((__m128i)__builtin_lsx_vmaxi_d((v2i64)(_1), (_2)))
434 
435 extern __inline
436     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
437     __lsx_vmax_bu(__m128i _1, __m128i _2) {
438   return (__m128i)__builtin_lsx_vmax_bu((v16u8)_1, (v16u8)_2);
439 }
440 
441 extern __inline
442     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
443     __lsx_vmax_hu(__m128i _1, __m128i _2) {
444   return (__m128i)__builtin_lsx_vmax_hu((v8u16)_1, (v8u16)_2);
445 }
446 
447 extern __inline
448     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
449     __lsx_vmax_wu(__m128i _1, __m128i _2) {
450   return (__m128i)__builtin_lsx_vmax_wu((v4u32)_1, (v4u32)_2);
451 }
452 
453 extern __inline
454     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
455     __lsx_vmax_du(__m128i _1, __m128i _2) {
456   return (__m128i)__builtin_lsx_vmax_du((v2u64)_1, (v2u64)_2);
457 }
458 
459 #define __lsx_vmaxi_bu(/*__m128i*/ _1, /*ui5*/ _2)                             \
460   ((__m128i)__builtin_lsx_vmaxi_bu((v16u8)(_1), (_2)))
461 
462 #define __lsx_vmaxi_hu(/*__m128i*/ _1, /*ui5*/ _2)                             \
463   ((__m128i)__builtin_lsx_vmaxi_hu((v8u16)(_1), (_2)))
464 
465 #define __lsx_vmaxi_wu(/*__m128i*/ _1, /*ui5*/ _2)                             \
466   ((__m128i)__builtin_lsx_vmaxi_wu((v4u32)(_1), (_2)))
467 
468 #define __lsx_vmaxi_du(/*__m128i*/ _1, /*ui5*/ _2)                             \
469   ((__m128i)__builtin_lsx_vmaxi_du((v2u64)(_1), (_2)))
470 
471 extern __inline
472     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
473     __lsx_vmin_b(__m128i _1, __m128i _2) {
474   return (__m128i)__builtin_lsx_vmin_b((v16i8)_1, (v16i8)_2);
475 }
476 
477 extern __inline
478     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
479     __lsx_vmin_h(__m128i _1, __m128i _2) {
480   return (__m128i)__builtin_lsx_vmin_h((v8i16)_1, (v8i16)_2);
481 }
482 
483 extern __inline
484     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
485     __lsx_vmin_w(__m128i _1, __m128i _2) {
486   return (__m128i)__builtin_lsx_vmin_w((v4i32)_1, (v4i32)_2);
487 }
488 
489 extern __inline
490     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
491     __lsx_vmin_d(__m128i _1, __m128i _2) {
492   return (__m128i)__builtin_lsx_vmin_d((v2i64)_1, (v2i64)_2);
493 }
494 
495 #define __lsx_vmini_b(/*__m128i*/ _1, /*si5*/ _2)                              \
496   ((__m128i)__builtin_lsx_vmini_b((v16i8)(_1), (_2)))
497 
498 #define __lsx_vmini_h(/*__m128i*/ _1, /*si5*/ _2)                              \
499   ((__m128i)__builtin_lsx_vmini_h((v8i16)(_1), (_2)))
500 
501 #define __lsx_vmini_w(/*__m128i*/ _1, /*si5*/ _2)                              \
502   ((__m128i)__builtin_lsx_vmini_w((v4i32)(_1), (_2)))
503 
504 #define __lsx_vmini_d(/*__m128i*/ _1, /*si5*/ _2)                              \
505   ((__m128i)__builtin_lsx_vmini_d((v2i64)(_1), (_2)))
506 
507 extern __inline
508     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
509     __lsx_vmin_bu(__m128i _1, __m128i _2) {
510   return (__m128i)__builtin_lsx_vmin_bu((v16u8)_1, (v16u8)_2);
511 }
512 
513 extern __inline
514     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
515     __lsx_vmin_hu(__m128i _1, __m128i _2) {
516   return (__m128i)__builtin_lsx_vmin_hu((v8u16)_1, (v8u16)_2);
517 }
518 
519 extern __inline
520     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
521     __lsx_vmin_wu(__m128i _1, __m128i _2) {
522   return (__m128i)__builtin_lsx_vmin_wu((v4u32)_1, (v4u32)_2);
523 }
524 
525 extern __inline
526     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
527     __lsx_vmin_du(__m128i _1, __m128i _2) {
528   return (__m128i)__builtin_lsx_vmin_du((v2u64)_1, (v2u64)_2);
529 }
530 
531 #define __lsx_vmini_bu(/*__m128i*/ _1, /*ui5*/ _2)                             \
532   ((__m128i)__builtin_lsx_vmini_bu((v16u8)(_1), (_2)))
533 
534 #define __lsx_vmini_hu(/*__m128i*/ _1, /*ui5*/ _2)                             \
535   ((__m128i)__builtin_lsx_vmini_hu((v8u16)(_1), (_2)))
536 
537 #define __lsx_vmini_wu(/*__m128i*/ _1, /*ui5*/ _2)                             \
538   ((__m128i)__builtin_lsx_vmini_wu((v4u32)(_1), (_2)))
539 
540 #define __lsx_vmini_du(/*__m128i*/ _1, /*ui5*/ _2)                             \
541   ((__m128i)__builtin_lsx_vmini_du((v2u64)(_1), (_2)))
542 
543 extern __inline
544     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
545     __lsx_vseq_b(__m128i _1, __m128i _2) {
546   return (__m128i)__builtin_lsx_vseq_b((v16i8)_1, (v16i8)_2);
547 }
548 
549 extern __inline
550     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
551     __lsx_vseq_h(__m128i _1, __m128i _2) {
552   return (__m128i)__builtin_lsx_vseq_h((v8i16)_1, (v8i16)_2);
553 }
554 
555 extern __inline
556     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
557     __lsx_vseq_w(__m128i _1, __m128i _2) {
558   return (__m128i)__builtin_lsx_vseq_w((v4i32)_1, (v4i32)_2);
559 }
560 
561 extern __inline
562     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
563     __lsx_vseq_d(__m128i _1, __m128i _2) {
564   return (__m128i)__builtin_lsx_vseq_d((v2i64)_1, (v2i64)_2);
565 }
566 
567 #define __lsx_vseqi_b(/*__m128i*/ _1, /*si5*/ _2)                              \
568   ((__m128i)__builtin_lsx_vseqi_b((v16i8)(_1), (_2)))
569 
570 #define __lsx_vseqi_h(/*__m128i*/ _1, /*si5*/ _2)                              \
571   ((__m128i)__builtin_lsx_vseqi_h((v8i16)(_1), (_2)))
572 
573 #define __lsx_vseqi_w(/*__m128i*/ _1, /*si5*/ _2)                              \
574   ((__m128i)__builtin_lsx_vseqi_w((v4i32)(_1), (_2)))
575 
576 #define __lsx_vseqi_d(/*__m128i*/ _1, /*si5*/ _2)                              \
577   ((__m128i)__builtin_lsx_vseqi_d((v2i64)(_1), (_2)))
578 
579 #define __lsx_vslti_b(/*__m128i*/ _1, /*si5*/ _2)                              \
580   ((__m128i)__builtin_lsx_vslti_b((v16i8)(_1), (_2)))
581 
582 extern __inline
583     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
584     __lsx_vslt_b(__m128i _1, __m128i _2) {
585   return (__m128i)__builtin_lsx_vslt_b((v16i8)_1, (v16i8)_2);
586 }
587 
588 extern __inline
589     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
590     __lsx_vslt_h(__m128i _1, __m128i _2) {
591   return (__m128i)__builtin_lsx_vslt_h((v8i16)_1, (v8i16)_2);
592 }
593 
594 extern __inline
595     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
596     __lsx_vslt_w(__m128i _1, __m128i _2) {
597   return (__m128i)__builtin_lsx_vslt_w((v4i32)_1, (v4i32)_2);
598 }
599 
600 extern __inline
601     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
602     __lsx_vslt_d(__m128i _1, __m128i _2) {
603   return (__m128i)__builtin_lsx_vslt_d((v2i64)_1, (v2i64)_2);
604 }
605 
606 #define __lsx_vslti_h(/*__m128i*/ _1, /*si5*/ _2)                              \
607   ((__m128i)__builtin_lsx_vslti_h((v8i16)(_1), (_2)))
608 
609 #define __lsx_vslti_w(/*__m128i*/ _1, /*si5*/ _2)                              \
610   ((__m128i)__builtin_lsx_vslti_w((v4i32)(_1), (_2)))
611 
612 #define __lsx_vslti_d(/*__m128i*/ _1, /*si5*/ _2)                              \
613   ((__m128i)__builtin_lsx_vslti_d((v2i64)(_1), (_2)))
614 
615 extern __inline
616     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
617     __lsx_vslt_bu(__m128i _1, __m128i _2) {
618   return (__m128i)__builtin_lsx_vslt_bu((v16u8)_1, (v16u8)_2);
619 }
620 
621 extern __inline
622     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
623     __lsx_vslt_hu(__m128i _1, __m128i _2) {
624   return (__m128i)__builtin_lsx_vslt_hu((v8u16)_1, (v8u16)_2);
625 }
626 
627 extern __inline
628     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
629     __lsx_vslt_wu(__m128i _1, __m128i _2) {
630   return (__m128i)__builtin_lsx_vslt_wu((v4u32)_1, (v4u32)_2);
631 }
632 
633 extern __inline
634     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
635     __lsx_vslt_du(__m128i _1, __m128i _2) {
636   return (__m128i)__builtin_lsx_vslt_du((v2u64)_1, (v2u64)_2);
637 }
638 
639 #define __lsx_vslti_bu(/*__m128i*/ _1, /*ui5*/ _2)                             \
640   ((__m128i)__builtin_lsx_vslti_bu((v16u8)(_1), (_2)))
641 
642 #define __lsx_vslti_hu(/*__m128i*/ _1, /*ui5*/ _2)                             \
643   ((__m128i)__builtin_lsx_vslti_hu((v8u16)(_1), (_2)))
644 
645 #define __lsx_vslti_wu(/*__m128i*/ _1, /*ui5*/ _2)                             \
646   ((__m128i)__builtin_lsx_vslti_wu((v4u32)(_1), (_2)))
647 
648 #define __lsx_vslti_du(/*__m128i*/ _1, /*ui5*/ _2)                             \
649   ((__m128i)__builtin_lsx_vslti_du((v2u64)(_1), (_2)))
650 
651 extern __inline
652     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
653     __lsx_vsle_b(__m128i _1, __m128i _2) {
654   return (__m128i)__builtin_lsx_vsle_b((v16i8)_1, (v16i8)_2);
655 }
656 
657 extern __inline
658     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
659     __lsx_vsle_h(__m128i _1, __m128i _2) {
660   return (__m128i)__builtin_lsx_vsle_h((v8i16)_1, (v8i16)_2);
661 }
662 
663 extern __inline
664     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
665     __lsx_vsle_w(__m128i _1, __m128i _2) {
666   return (__m128i)__builtin_lsx_vsle_w((v4i32)_1, (v4i32)_2);
667 }
668 
669 extern __inline
670     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
671     __lsx_vsle_d(__m128i _1, __m128i _2) {
672   return (__m128i)__builtin_lsx_vsle_d((v2i64)_1, (v2i64)_2);
673 }
674 
675 #define __lsx_vslei_b(/*__m128i*/ _1, /*si5*/ _2)                              \
676   ((__m128i)__builtin_lsx_vslei_b((v16i8)(_1), (_2)))
677 
678 #define __lsx_vslei_h(/*__m128i*/ _1, /*si5*/ _2)                              \
679   ((__m128i)__builtin_lsx_vslei_h((v8i16)(_1), (_2)))
680 
681 #define __lsx_vslei_w(/*__m128i*/ _1, /*si5*/ _2)                              \
682   ((__m128i)__builtin_lsx_vslei_w((v4i32)(_1), (_2)))
683 
684 #define __lsx_vslei_d(/*__m128i*/ _1, /*si5*/ _2)                              \
685   ((__m128i)__builtin_lsx_vslei_d((v2i64)(_1), (_2)))
686 
687 extern __inline
688     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
689     __lsx_vsle_bu(__m128i _1, __m128i _2) {
690   return (__m128i)__builtin_lsx_vsle_bu((v16u8)_1, (v16u8)_2);
691 }
692 
693 extern __inline
694     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
695     __lsx_vsle_hu(__m128i _1, __m128i _2) {
696   return (__m128i)__builtin_lsx_vsle_hu((v8u16)_1, (v8u16)_2);
697 }
698 
699 extern __inline
700     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
701     __lsx_vsle_wu(__m128i _1, __m128i _2) {
702   return (__m128i)__builtin_lsx_vsle_wu((v4u32)_1, (v4u32)_2);
703 }
704 
705 extern __inline
706     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
707     __lsx_vsle_du(__m128i _1, __m128i _2) {
708   return (__m128i)__builtin_lsx_vsle_du((v2u64)_1, (v2u64)_2);
709 }
710 
711 #define __lsx_vslei_bu(/*__m128i*/ _1, /*ui5*/ _2)                             \
712   ((__m128i)__builtin_lsx_vslei_bu((v16u8)(_1), (_2)))
713 
714 #define __lsx_vslei_hu(/*__m128i*/ _1, /*ui5*/ _2)                             \
715   ((__m128i)__builtin_lsx_vslei_hu((v8u16)(_1), (_2)))
716 
717 #define __lsx_vslei_wu(/*__m128i*/ _1, /*ui5*/ _2)                             \
718   ((__m128i)__builtin_lsx_vslei_wu((v4u32)(_1), (_2)))
719 
720 #define __lsx_vslei_du(/*__m128i*/ _1, /*ui5*/ _2)                             \
721   ((__m128i)__builtin_lsx_vslei_du((v2u64)(_1), (_2)))
722 
723 #define __lsx_vsat_b(/*__m128i*/ _1, /*ui3*/ _2)                               \
724   ((__m128i)__builtin_lsx_vsat_b((v16i8)(_1), (_2)))
725 
726 #define __lsx_vsat_h(/*__m128i*/ _1, /*ui4*/ _2)                               \
727   ((__m128i)__builtin_lsx_vsat_h((v8i16)(_1), (_2)))
728 
729 #define __lsx_vsat_w(/*__m128i*/ _1, /*ui5*/ _2)                               \
730   ((__m128i)__builtin_lsx_vsat_w((v4i32)(_1), (_2)))
731 
732 #define __lsx_vsat_d(/*__m128i*/ _1, /*ui6*/ _2)                               \
733   ((__m128i)__builtin_lsx_vsat_d((v2i64)(_1), (_2)))
734 
735 #define __lsx_vsat_bu(/*__m128i*/ _1, /*ui3*/ _2)                              \
736   ((__m128i)__builtin_lsx_vsat_bu((v16u8)(_1), (_2)))
737 
738 #define __lsx_vsat_hu(/*__m128i*/ _1, /*ui4*/ _2)                              \
739   ((__m128i)__builtin_lsx_vsat_hu((v8u16)(_1), (_2)))
740 
741 #define __lsx_vsat_wu(/*__m128i*/ _1, /*ui5*/ _2)                              \
742   ((__m128i)__builtin_lsx_vsat_wu((v4u32)(_1), (_2)))
743 
744 #define __lsx_vsat_du(/*__m128i*/ _1, /*ui6*/ _2)                              \
745   ((__m128i)__builtin_lsx_vsat_du((v2u64)(_1), (_2)))
746 
747 extern __inline
748     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
749     __lsx_vadda_b(__m128i _1, __m128i _2) {
750   return (__m128i)__builtin_lsx_vadda_b((v16i8)_1, (v16i8)_2);
751 }
752 
753 extern __inline
754     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
755     __lsx_vadda_h(__m128i _1, __m128i _2) {
756   return (__m128i)__builtin_lsx_vadda_h((v8i16)_1, (v8i16)_2);
757 }
758 
759 extern __inline
760     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
761     __lsx_vadda_w(__m128i _1, __m128i _2) {
762   return (__m128i)__builtin_lsx_vadda_w((v4i32)_1, (v4i32)_2);
763 }
764 
765 extern __inline
766     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
767     __lsx_vadda_d(__m128i _1, __m128i _2) {
768   return (__m128i)__builtin_lsx_vadda_d((v2i64)_1, (v2i64)_2);
769 }
770 
771 extern __inline
772     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
773     __lsx_vsadd_b(__m128i _1, __m128i _2) {
774   return (__m128i)__builtin_lsx_vsadd_b((v16i8)_1, (v16i8)_2);
775 }
776 
777 extern __inline
778     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
779     __lsx_vsadd_h(__m128i _1, __m128i _2) {
780   return (__m128i)__builtin_lsx_vsadd_h((v8i16)_1, (v8i16)_2);
781 }
782 
783 extern __inline
784     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
785     __lsx_vsadd_w(__m128i _1, __m128i _2) {
786   return (__m128i)__builtin_lsx_vsadd_w((v4i32)_1, (v4i32)_2);
787 }
788 
789 extern __inline
790     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
791     __lsx_vsadd_d(__m128i _1, __m128i _2) {
792   return (__m128i)__builtin_lsx_vsadd_d((v2i64)_1, (v2i64)_2);
793 }
794 
795 extern __inline
796     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
797     __lsx_vsadd_bu(__m128i _1, __m128i _2) {
798   return (__m128i)__builtin_lsx_vsadd_bu((v16u8)_1, (v16u8)_2);
799 }
800 
801 extern __inline
802     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
803     __lsx_vsadd_hu(__m128i _1, __m128i _2) {
804   return (__m128i)__builtin_lsx_vsadd_hu((v8u16)_1, (v8u16)_2);
805 }
806 
807 extern __inline
808     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
809     __lsx_vsadd_wu(__m128i _1, __m128i _2) {
810   return (__m128i)__builtin_lsx_vsadd_wu((v4u32)_1, (v4u32)_2);
811 }
812 
813 extern __inline
814     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
815     __lsx_vsadd_du(__m128i _1, __m128i _2) {
816   return (__m128i)__builtin_lsx_vsadd_du((v2u64)_1, (v2u64)_2);
817 }
818 
819 extern __inline
820     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
821     __lsx_vavg_b(__m128i _1, __m128i _2) {
822   return (__m128i)__builtin_lsx_vavg_b((v16i8)_1, (v16i8)_2);
823 }
824 
825 extern __inline
826     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
827     __lsx_vavg_h(__m128i _1, __m128i _2) {
828   return (__m128i)__builtin_lsx_vavg_h((v8i16)_1, (v8i16)_2);
829 }
830 
831 extern __inline
832     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
833     __lsx_vavg_w(__m128i _1, __m128i _2) {
834   return (__m128i)__builtin_lsx_vavg_w((v4i32)_1, (v4i32)_2);
835 }
836 
837 extern __inline
838     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
839     __lsx_vavg_d(__m128i _1, __m128i _2) {
840   return (__m128i)__builtin_lsx_vavg_d((v2i64)_1, (v2i64)_2);
841 }
842 
843 extern __inline
844     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
845     __lsx_vavg_bu(__m128i _1, __m128i _2) {
846   return (__m128i)__builtin_lsx_vavg_bu((v16u8)_1, (v16u8)_2);
847 }
848 
849 extern __inline
850     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
851     __lsx_vavg_hu(__m128i _1, __m128i _2) {
852   return (__m128i)__builtin_lsx_vavg_hu((v8u16)_1, (v8u16)_2);
853 }
854 
855 extern __inline
856     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
857     __lsx_vavg_wu(__m128i _1, __m128i _2) {
858   return (__m128i)__builtin_lsx_vavg_wu((v4u32)_1, (v4u32)_2);
859 }
860 
861 extern __inline
862     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
863     __lsx_vavg_du(__m128i _1, __m128i _2) {
864   return (__m128i)__builtin_lsx_vavg_du((v2u64)_1, (v2u64)_2);
865 }
866 
867 extern __inline
868     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
869     __lsx_vavgr_b(__m128i _1, __m128i _2) {
870   return (__m128i)__builtin_lsx_vavgr_b((v16i8)_1, (v16i8)_2);
871 }
872 
873 extern __inline
874     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
875     __lsx_vavgr_h(__m128i _1, __m128i _2) {
876   return (__m128i)__builtin_lsx_vavgr_h((v8i16)_1, (v8i16)_2);
877 }
878 
879 extern __inline
880     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
881     __lsx_vavgr_w(__m128i _1, __m128i _2) {
882   return (__m128i)__builtin_lsx_vavgr_w((v4i32)_1, (v4i32)_2);
883 }
884 
885 extern __inline
886     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
887     __lsx_vavgr_d(__m128i _1, __m128i _2) {
888   return (__m128i)__builtin_lsx_vavgr_d((v2i64)_1, (v2i64)_2);
889 }
890 
891 extern __inline
892     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
893     __lsx_vavgr_bu(__m128i _1, __m128i _2) {
894   return (__m128i)__builtin_lsx_vavgr_bu((v16u8)_1, (v16u8)_2);
895 }
896 
897 extern __inline
898     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
899     __lsx_vavgr_hu(__m128i _1, __m128i _2) {
900   return (__m128i)__builtin_lsx_vavgr_hu((v8u16)_1, (v8u16)_2);
901 }
902 
903 extern __inline
904     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
905     __lsx_vavgr_wu(__m128i _1, __m128i _2) {
906   return (__m128i)__builtin_lsx_vavgr_wu((v4u32)_1, (v4u32)_2);
907 }
908 
909 extern __inline
910     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
911     __lsx_vavgr_du(__m128i _1, __m128i _2) {
912   return (__m128i)__builtin_lsx_vavgr_du((v2u64)_1, (v2u64)_2);
913 }
914 
915 extern __inline
916     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
917     __lsx_vssub_b(__m128i _1, __m128i _2) {
918   return (__m128i)__builtin_lsx_vssub_b((v16i8)_1, (v16i8)_2);
919 }
920 
921 extern __inline
922     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
923     __lsx_vssub_h(__m128i _1, __m128i _2) {
924   return (__m128i)__builtin_lsx_vssub_h((v8i16)_1, (v8i16)_2);
925 }
926 
927 extern __inline
928     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
929     __lsx_vssub_w(__m128i _1, __m128i _2) {
930   return (__m128i)__builtin_lsx_vssub_w((v4i32)_1, (v4i32)_2);
931 }
932 
933 extern __inline
934     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
935     __lsx_vssub_d(__m128i _1, __m128i _2) {
936   return (__m128i)__builtin_lsx_vssub_d((v2i64)_1, (v2i64)_2);
937 }
938 
939 extern __inline
940     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
941     __lsx_vssub_bu(__m128i _1, __m128i _2) {
942   return (__m128i)__builtin_lsx_vssub_bu((v16u8)_1, (v16u8)_2);
943 }
944 
945 extern __inline
946     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
947     __lsx_vssub_hu(__m128i _1, __m128i _2) {
948   return (__m128i)__builtin_lsx_vssub_hu((v8u16)_1, (v8u16)_2);
949 }
950 
951 extern __inline
952     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
953     __lsx_vssub_wu(__m128i _1, __m128i _2) {
954   return (__m128i)__builtin_lsx_vssub_wu((v4u32)_1, (v4u32)_2);
955 }
956 
957 extern __inline
958     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
959     __lsx_vssub_du(__m128i _1, __m128i _2) {
960   return (__m128i)__builtin_lsx_vssub_du((v2u64)_1, (v2u64)_2);
961 }
962 
963 extern __inline
964     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
965     __lsx_vabsd_b(__m128i _1, __m128i _2) {
966   return (__m128i)__builtin_lsx_vabsd_b((v16i8)_1, (v16i8)_2);
967 }
968 
969 extern __inline
970     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
971     __lsx_vabsd_h(__m128i _1, __m128i _2) {
972   return (__m128i)__builtin_lsx_vabsd_h((v8i16)_1, (v8i16)_2);
973 }
974 
975 extern __inline
976     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
977     __lsx_vabsd_w(__m128i _1, __m128i _2) {
978   return (__m128i)__builtin_lsx_vabsd_w((v4i32)_1, (v4i32)_2);
979 }
980 
981 extern __inline
982     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
983     __lsx_vabsd_d(__m128i _1, __m128i _2) {
984   return (__m128i)__builtin_lsx_vabsd_d((v2i64)_1, (v2i64)_2);
985 }
986 
987 extern __inline
988     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
989     __lsx_vabsd_bu(__m128i _1, __m128i _2) {
990   return (__m128i)__builtin_lsx_vabsd_bu((v16u8)_1, (v16u8)_2);
991 }
992 
993 extern __inline
994     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
995     __lsx_vabsd_hu(__m128i _1, __m128i _2) {
996   return (__m128i)__builtin_lsx_vabsd_hu((v8u16)_1, (v8u16)_2);
997 }
998 
999 extern __inline
1000     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1001     __lsx_vabsd_wu(__m128i _1, __m128i _2) {
1002   return (__m128i)__builtin_lsx_vabsd_wu((v4u32)_1, (v4u32)_2);
1003 }
1004 
1005 extern __inline
1006     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1007     __lsx_vabsd_du(__m128i _1, __m128i _2) {
1008   return (__m128i)__builtin_lsx_vabsd_du((v2u64)_1, (v2u64)_2);
1009 }
1010 
1011 extern __inline
1012     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1013     __lsx_vmul_b(__m128i _1, __m128i _2) {
1014   return (__m128i)__builtin_lsx_vmul_b((v16i8)_1, (v16i8)_2);
1015 }
1016 
1017 extern __inline
1018     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1019     __lsx_vmul_h(__m128i _1, __m128i _2) {
1020   return (__m128i)__builtin_lsx_vmul_h((v8i16)_1, (v8i16)_2);
1021 }
1022 
1023 extern __inline
1024     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1025     __lsx_vmul_w(__m128i _1, __m128i _2) {
1026   return (__m128i)__builtin_lsx_vmul_w((v4i32)_1, (v4i32)_2);
1027 }
1028 
1029 extern __inline
1030     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1031     __lsx_vmul_d(__m128i _1, __m128i _2) {
1032   return (__m128i)__builtin_lsx_vmul_d((v2i64)_1, (v2i64)_2);
1033 }
1034 
1035 extern __inline
1036     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1037     __lsx_vmadd_b(__m128i _1, __m128i _2, __m128i _3) {
1038   return (__m128i)__builtin_lsx_vmadd_b((v16i8)_1, (v16i8)_2, (v16i8)_3);
1039 }
1040 
1041 extern __inline
1042     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1043     __lsx_vmadd_h(__m128i _1, __m128i _2, __m128i _3) {
1044   return (__m128i)__builtin_lsx_vmadd_h((v8i16)_1, (v8i16)_2, (v8i16)_3);
1045 }
1046 
1047 extern __inline
1048     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1049     __lsx_vmadd_w(__m128i _1, __m128i _2, __m128i _3) {
1050   return (__m128i)__builtin_lsx_vmadd_w((v4i32)_1, (v4i32)_2, (v4i32)_3);
1051 }
1052 
1053 extern __inline
1054     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1055     __lsx_vmadd_d(__m128i _1, __m128i _2, __m128i _3) {
1056   return (__m128i)__builtin_lsx_vmadd_d((v2i64)_1, (v2i64)_2, (v2i64)_3);
1057 }
1058 
1059 extern __inline
1060     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1061     __lsx_vmsub_b(__m128i _1, __m128i _2, __m128i _3) {
1062   return (__m128i)__builtin_lsx_vmsub_b((v16i8)_1, (v16i8)_2, (v16i8)_3);
1063 }
1064 
1065 extern __inline
1066     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1067     __lsx_vmsub_h(__m128i _1, __m128i _2, __m128i _3) {
1068   return (__m128i)__builtin_lsx_vmsub_h((v8i16)_1, (v8i16)_2, (v8i16)_3);
1069 }
1070 
1071 extern __inline
1072     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1073     __lsx_vmsub_w(__m128i _1, __m128i _2, __m128i _3) {
1074   return (__m128i)__builtin_lsx_vmsub_w((v4i32)_1, (v4i32)_2, (v4i32)_3);
1075 }
1076 
1077 extern __inline
1078     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1079     __lsx_vmsub_d(__m128i _1, __m128i _2, __m128i _3) {
1080   return (__m128i)__builtin_lsx_vmsub_d((v2i64)_1, (v2i64)_2, (v2i64)_3);
1081 }
1082 
1083 extern __inline
1084     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1085     __lsx_vdiv_b(__m128i _1, __m128i _2) {
1086   return (__m128i)__builtin_lsx_vdiv_b((v16i8)_1, (v16i8)_2);
1087 }
1088 
1089 extern __inline
1090     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1091     __lsx_vdiv_h(__m128i _1, __m128i _2) {
1092   return (__m128i)__builtin_lsx_vdiv_h((v8i16)_1, (v8i16)_2);
1093 }
1094 
1095 extern __inline
1096     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1097     __lsx_vdiv_w(__m128i _1, __m128i _2) {
1098   return (__m128i)__builtin_lsx_vdiv_w((v4i32)_1, (v4i32)_2);
1099 }
1100 
1101 extern __inline
1102     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1103     __lsx_vdiv_d(__m128i _1, __m128i _2) {
1104   return (__m128i)__builtin_lsx_vdiv_d((v2i64)_1, (v2i64)_2);
1105 }
1106 
1107 extern __inline
1108     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1109     __lsx_vdiv_bu(__m128i _1, __m128i _2) {
1110   return (__m128i)__builtin_lsx_vdiv_bu((v16u8)_1, (v16u8)_2);
1111 }
1112 
1113 extern __inline
1114     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1115     __lsx_vdiv_hu(__m128i _1, __m128i _2) {
1116   return (__m128i)__builtin_lsx_vdiv_hu((v8u16)_1, (v8u16)_2);
1117 }
1118 
1119 extern __inline
1120     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1121     __lsx_vdiv_wu(__m128i _1, __m128i _2) {
1122   return (__m128i)__builtin_lsx_vdiv_wu((v4u32)_1, (v4u32)_2);
1123 }
1124 
1125 extern __inline
1126     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1127     __lsx_vdiv_du(__m128i _1, __m128i _2) {
1128   return (__m128i)__builtin_lsx_vdiv_du((v2u64)_1, (v2u64)_2);
1129 }
1130 
1131 extern __inline
1132     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1133     __lsx_vhaddw_h_b(__m128i _1, __m128i _2) {
1134   return (__m128i)__builtin_lsx_vhaddw_h_b((v16i8)_1, (v16i8)_2);
1135 }
1136 
1137 extern __inline
1138     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1139     __lsx_vhaddw_w_h(__m128i _1, __m128i _2) {
1140   return (__m128i)__builtin_lsx_vhaddw_w_h((v8i16)_1, (v8i16)_2);
1141 }
1142 
1143 extern __inline
1144     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1145     __lsx_vhaddw_d_w(__m128i _1, __m128i _2) {
1146   return (__m128i)__builtin_lsx_vhaddw_d_w((v4i32)_1, (v4i32)_2);
1147 }
1148 
1149 extern __inline
1150     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1151     __lsx_vhaddw_hu_bu(__m128i _1, __m128i _2) {
1152   return (__m128i)__builtin_lsx_vhaddw_hu_bu((v16u8)_1, (v16u8)_2);
1153 }
1154 
1155 extern __inline
1156     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1157     __lsx_vhaddw_wu_hu(__m128i _1, __m128i _2) {
1158   return (__m128i)__builtin_lsx_vhaddw_wu_hu((v8u16)_1, (v8u16)_2);
1159 }
1160 
1161 extern __inline
1162     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1163     __lsx_vhaddw_du_wu(__m128i _1, __m128i _2) {
1164   return (__m128i)__builtin_lsx_vhaddw_du_wu((v4u32)_1, (v4u32)_2);
1165 }
1166 
1167 extern __inline
1168     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1169     __lsx_vhsubw_h_b(__m128i _1, __m128i _2) {
1170   return (__m128i)__builtin_lsx_vhsubw_h_b((v16i8)_1, (v16i8)_2);
1171 }
1172 
1173 extern __inline
1174     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1175     __lsx_vhsubw_w_h(__m128i _1, __m128i _2) {
1176   return (__m128i)__builtin_lsx_vhsubw_w_h((v8i16)_1, (v8i16)_2);
1177 }
1178 
1179 extern __inline
1180     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1181     __lsx_vhsubw_d_w(__m128i _1, __m128i _2) {
1182   return (__m128i)__builtin_lsx_vhsubw_d_w((v4i32)_1, (v4i32)_2);
1183 }
1184 
1185 extern __inline
1186     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1187     __lsx_vhsubw_hu_bu(__m128i _1, __m128i _2) {
1188   return (__m128i)__builtin_lsx_vhsubw_hu_bu((v16u8)_1, (v16u8)_2);
1189 }
1190 
1191 extern __inline
1192     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1193     __lsx_vhsubw_wu_hu(__m128i _1, __m128i _2) {
1194   return (__m128i)__builtin_lsx_vhsubw_wu_hu((v8u16)_1, (v8u16)_2);
1195 }
1196 
1197 extern __inline
1198     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1199     __lsx_vhsubw_du_wu(__m128i _1, __m128i _2) {
1200   return (__m128i)__builtin_lsx_vhsubw_du_wu((v4u32)_1, (v4u32)_2);
1201 }
1202 
1203 extern __inline
1204     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1205     __lsx_vmod_b(__m128i _1, __m128i _2) {
1206   return (__m128i)__builtin_lsx_vmod_b((v16i8)_1, (v16i8)_2);
1207 }
1208 
1209 extern __inline
1210     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1211     __lsx_vmod_h(__m128i _1, __m128i _2) {
1212   return (__m128i)__builtin_lsx_vmod_h((v8i16)_1, (v8i16)_2);
1213 }
1214 
1215 extern __inline
1216     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1217     __lsx_vmod_w(__m128i _1, __m128i _2) {
1218   return (__m128i)__builtin_lsx_vmod_w((v4i32)_1, (v4i32)_2);
1219 }
1220 
1221 extern __inline
1222     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1223     __lsx_vmod_d(__m128i _1, __m128i _2) {
1224   return (__m128i)__builtin_lsx_vmod_d((v2i64)_1, (v2i64)_2);
1225 }
1226 
1227 extern __inline
1228     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1229     __lsx_vmod_bu(__m128i _1, __m128i _2) {
1230   return (__m128i)__builtin_lsx_vmod_bu((v16u8)_1, (v16u8)_2);
1231 }
1232 
1233 extern __inline
1234     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1235     __lsx_vmod_hu(__m128i _1, __m128i _2) {
1236   return (__m128i)__builtin_lsx_vmod_hu((v8u16)_1, (v8u16)_2);
1237 }
1238 
1239 extern __inline
1240     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1241     __lsx_vmod_wu(__m128i _1, __m128i _2) {
1242   return (__m128i)__builtin_lsx_vmod_wu((v4u32)_1, (v4u32)_2);
1243 }
1244 
1245 extern __inline
1246     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1247     __lsx_vmod_du(__m128i _1, __m128i _2) {
1248   return (__m128i)__builtin_lsx_vmod_du((v2u64)_1, (v2u64)_2);
1249 }
1250 
1251 extern __inline
1252     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1253     __lsx_vreplve_b(__m128i _1, int _2) {
1254   return (__m128i)__builtin_lsx_vreplve_b((v16i8)_1, (int)_2);
1255 }
1256 
1257 extern __inline
1258     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1259     __lsx_vreplve_h(__m128i _1, int _2) {
1260   return (__m128i)__builtin_lsx_vreplve_h((v8i16)_1, (int)_2);
1261 }
1262 
1263 extern __inline
1264     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1265     __lsx_vreplve_w(__m128i _1, int _2) {
1266   return (__m128i)__builtin_lsx_vreplve_w((v4i32)_1, (int)_2);
1267 }
1268 
1269 extern __inline
1270     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1271     __lsx_vreplve_d(__m128i _1, int _2) {
1272   return (__m128i)__builtin_lsx_vreplve_d((v2i64)_1, (int)_2);
1273 }
1274 
1275 #define __lsx_vreplvei_b(/*__m128i*/ _1, /*ui4*/ _2)                           \
1276   ((__m128i)__builtin_lsx_vreplvei_b((v16i8)(_1), (_2)))
1277 
1278 #define __lsx_vreplvei_h(/*__m128i*/ _1, /*ui3*/ _2)                           \
1279   ((__m128i)__builtin_lsx_vreplvei_h((v8i16)(_1), (_2)))
1280 
1281 #define __lsx_vreplvei_w(/*__m128i*/ _1, /*ui2*/ _2)                           \
1282   ((__m128i)__builtin_lsx_vreplvei_w((v4i32)(_1), (_2)))
1283 
1284 #define __lsx_vreplvei_d(/*__m128i*/ _1, /*ui1*/ _2)                           \
1285   ((__m128i)__builtin_lsx_vreplvei_d((v2i64)(_1), (_2)))
1286 
1287 extern __inline
1288     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1289     __lsx_vpickev_b(__m128i _1, __m128i _2) {
1290   return (__m128i)__builtin_lsx_vpickev_b((v16i8)_1, (v16i8)_2);
1291 }
1292 
1293 extern __inline
1294     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1295     __lsx_vpickev_h(__m128i _1, __m128i _2) {
1296   return (__m128i)__builtin_lsx_vpickev_h((v8i16)_1, (v8i16)_2);
1297 }
1298 
1299 extern __inline
1300     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1301     __lsx_vpickev_w(__m128i _1, __m128i _2) {
1302   return (__m128i)__builtin_lsx_vpickev_w((v4i32)_1, (v4i32)_2);
1303 }
1304 
1305 extern __inline
1306     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1307     __lsx_vpickev_d(__m128i _1, __m128i _2) {
1308   return (__m128i)__builtin_lsx_vpickev_d((v2i64)_1, (v2i64)_2);
1309 }
1310 
1311 extern __inline
1312     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1313     __lsx_vpickod_b(__m128i _1, __m128i _2) {
1314   return (__m128i)__builtin_lsx_vpickod_b((v16i8)_1, (v16i8)_2);
1315 }
1316 
1317 extern __inline
1318     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1319     __lsx_vpickod_h(__m128i _1, __m128i _2) {
1320   return (__m128i)__builtin_lsx_vpickod_h((v8i16)_1, (v8i16)_2);
1321 }
1322 
1323 extern __inline
1324     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1325     __lsx_vpickod_w(__m128i _1, __m128i _2) {
1326   return (__m128i)__builtin_lsx_vpickod_w((v4i32)_1, (v4i32)_2);
1327 }
1328 
1329 extern __inline
1330     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1331     __lsx_vpickod_d(__m128i _1, __m128i _2) {
1332   return (__m128i)__builtin_lsx_vpickod_d((v2i64)_1, (v2i64)_2);
1333 }
1334 
1335 extern __inline
1336     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1337     __lsx_vilvh_b(__m128i _1, __m128i _2) {
1338   return (__m128i)__builtin_lsx_vilvh_b((v16i8)_1, (v16i8)_2);
1339 }
1340 
1341 extern __inline
1342     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1343     __lsx_vilvh_h(__m128i _1, __m128i _2) {
1344   return (__m128i)__builtin_lsx_vilvh_h((v8i16)_1, (v8i16)_2);
1345 }
1346 
1347 extern __inline
1348     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1349     __lsx_vilvh_w(__m128i _1, __m128i _2) {
1350   return (__m128i)__builtin_lsx_vilvh_w((v4i32)_1, (v4i32)_2);
1351 }
1352 
1353 extern __inline
1354     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1355     __lsx_vilvh_d(__m128i _1, __m128i _2) {
1356   return (__m128i)__builtin_lsx_vilvh_d((v2i64)_1, (v2i64)_2);
1357 }
1358 
1359 extern __inline
1360     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1361     __lsx_vilvl_b(__m128i _1, __m128i _2) {
1362   return (__m128i)__builtin_lsx_vilvl_b((v16i8)_1, (v16i8)_2);
1363 }
1364 
1365 extern __inline
1366     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1367     __lsx_vilvl_h(__m128i _1, __m128i _2) {
1368   return (__m128i)__builtin_lsx_vilvl_h((v8i16)_1, (v8i16)_2);
1369 }
1370 
1371 extern __inline
1372     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1373     __lsx_vilvl_w(__m128i _1, __m128i _2) {
1374   return (__m128i)__builtin_lsx_vilvl_w((v4i32)_1, (v4i32)_2);
1375 }
1376 
1377 extern __inline
1378     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1379     __lsx_vilvl_d(__m128i _1, __m128i _2) {
1380   return (__m128i)__builtin_lsx_vilvl_d((v2i64)_1, (v2i64)_2);
1381 }
1382 
1383 extern __inline
1384     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1385     __lsx_vpackev_b(__m128i _1, __m128i _2) {
1386   return (__m128i)__builtin_lsx_vpackev_b((v16i8)_1, (v16i8)_2);
1387 }
1388 
1389 extern __inline
1390     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1391     __lsx_vpackev_h(__m128i _1, __m128i _2) {
1392   return (__m128i)__builtin_lsx_vpackev_h((v8i16)_1, (v8i16)_2);
1393 }
1394 
1395 extern __inline
1396     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1397     __lsx_vpackev_w(__m128i _1, __m128i _2) {
1398   return (__m128i)__builtin_lsx_vpackev_w((v4i32)_1, (v4i32)_2);
1399 }
1400 
1401 extern __inline
1402     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1403     __lsx_vpackev_d(__m128i _1, __m128i _2) {
1404   return (__m128i)__builtin_lsx_vpackev_d((v2i64)_1, (v2i64)_2);
1405 }
1406 
1407 extern __inline
1408     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1409     __lsx_vpackod_b(__m128i _1, __m128i _2) {
1410   return (__m128i)__builtin_lsx_vpackod_b((v16i8)_1, (v16i8)_2);
1411 }
1412 
1413 extern __inline
1414     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1415     __lsx_vpackod_h(__m128i _1, __m128i _2) {
1416   return (__m128i)__builtin_lsx_vpackod_h((v8i16)_1, (v8i16)_2);
1417 }
1418 
1419 extern __inline
1420     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1421     __lsx_vpackod_w(__m128i _1, __m128i _2) {
1422   return (__m128i)__builtin_lsx_vpackod_w((v4i32)_1, (v4i32)_2);
1423 }
1424 
1425 extern __inline
1426     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1427     __lsx_vpackod_d(__m128i _1, __m128i _2) {
1428   return (__m128i)__builtin_lsx_vpackod_d((v2i64)_1, (v2i64)_2);
1429 }
1430 
1431 extern __inline
1432     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1433     __lsx_vshuf_h(__m128i _1, __m128i _2, __m128i _3) {
1434   return (__m128i)__builtin_lsx_vshuf_h((v8i16)_1, (v8i16)_2, (v8i16)_3);
1435 }
1436 
1437 extern __inline
1438     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1439     __lsx_vshuf_w(__m128i _1, __m128i _2, __m128i _3) {
1440   return (__m128i)__builtin_lsx_vshuf_w((v4i32)_1, (v4i32)_2, (v4i32)_3);
1441 }
1442 
1443 extern __inline
1444     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1445     __lsx_vshuf_d(__m128i _1, __m128i _2, __m128i _3) {
1446   return (__m128i)__builtin_lsx_vshuf_d((v2i64)_1, (v2i64)_2, (v2i64)_3);
1447 }
1448 
1449 extern __inline
1450     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1451     __lsx_vand_v(__m128i _1, __m128i _2) {
1452   return (__m128i)__builtin_lsx_vand_v((v16u8)_1, (v16u8)_2);
1453 }
1454 
1455 #define __lsx_vandi_b(/*__m128i*/ _1, /*ui8*/ _2)                              \
1456   ((__m128i)__builtin_lsx_vandi_b((v16u8)(_1), (_2)))
1457 
1458 extern __inline
1459     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1460     __lsx_vor_v(__m128i _1, __m128i _2) {
1461   return (__m128i)__builtin_lsx_vor_v((v16u8)_1, (v16u8)_2);
1462 }
1463 
1464 #define __lsx_vori_b(/*__m128i*/ _1, /*ui8*/ _2)                               \
1465   ((__m128i)__builtin_lsx_vori_b((v16u8)(_1), (_2)))
1466 
1467 extern __inline
1468     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1469     __lsx_vnor_v(__m128i _1, __m128i _2) {
1470   return (__m128i)__builtin_lsx_vnor_v((v16u8)_1, (v16u8)_2);
1471 }
1472 
1473 #define __lsx_vnori_b(/*__m128i*/ _1, /*ui8*/ _2)                              \
1474   ((__m128i)__builtin_lsx_vnori_b((v16u8)(_1), (_2)))
1475 
1476 extern __inline
1477     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1478     __lsx_vxor_v(__m128i _1, __m128i _2) {
1479   return (__m128i)__builtin_lsx_vxor_v((v16u8)_1, (v16u8)_2);
1480 }
1481 
1482 #define __lsx_vxori_b(/*__m128i*/ _1, /*ui8*/ _2)                              \
1483   ((__m128i)__builtin_lsx_vxori_b((v16u8)(_1), (_2)))
1484 
1485 extern __inline
1486     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1487     __lsx_vbitsel_v(__m128i _1, __m128i _2, __m128i _3) {
1488   return (__m128i)__builtin_lsx_vbitsel_v((v16u8)_1, (v16u8)_2, (v16u8)_3);
1489 }
1490 
1491 #define __lsx_vbitseli_b(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3)           \
1492   ((__m128i)__builtin_lsx_vbitseli_b((v16u8)(_1), (v16u8)(_2), (_3)))
1493 
1494 #define __lsx_vshuf4i_b(/*__m128i*/ _1, /*ui8*/ _2)                            \
1495   ((__m128i)__builtin_lsx_vshuf4i_b((v16i8)(_1), (_2)))
1496 
1497 #define __lsx_vshuf4i_h(/*__m128i*/ _1, /*ui8*/ _2)                            \
1498   ((__m128i)__builtin_lsx_vshuf4i_h((v8i16)(_1), (_2)))
1499 
1500 #define __lsx_vshuf4i_w(/*__m128i*/ _1, /*ui8*/ _2)                            \
1501   ((__m128i)__builtin_lsx_vshuf4i_w((v4i32)(_1), (_2)))
1502 
1503 extern __inline
1504     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1505     __lsx_vreplgr2vr_b(int _1) {
1506   return (__m128i)__builtin_lsx_vreplgr2vr_b((int)_1);
1507 }
1508 
1509 extern __inline
1510     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1511     __lsx_vreplgr2vr_h(int _1) {
1512   return (__m128i)__builtin_lsx_vreplgr2vr_h((int)_1);
1513 }
1514 
1515 extern __inline
1516     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1517     __lsx_vreplgr2vr_w(int _1) {
1518   return (__m128i)__builtin_lsx_vreplgr2vr_w((int)_1);
1519 }
1520 
1521 extern __inline
1522     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1523     __lsx_vreplgr2vr_d(long int _1) {
1524   return (__m128i)__builtin_lsx_vreplgr2vr_d((long int)_1);
1525 }
1526 
1527 extern __inline
1528     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1529     __lsx_vpcnt_b(__m128i _1) {
1530   return (__m128i)__builtin_lsx_vpcnt_b((v16i8)_1);
1531 }
1532 
1533 extern __inline
1534     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1535     __lsx_vpcnt_h(__m128i _1) {
1536   return (__m128i)__builtin_lsx_vpcnt_h((v8i16)_1);
1537 }
1538 
1539 extern __inline
1540     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1541     __lsx_vpcnt_w(__m128i _1) {
1542   return (__m128i)__builtin_lsx_vpcnt_w((v4i32)_1);
1543 }
1544 
1545 extern __inline
1546     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1547     __lsx_vpcnt_d(__m128i _1) {
1548   return (__m128i)__builtin_lsx_vpcnt_d((v2i64)_1);
1549 }
1550 
1551 extern __inline
1552     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1553     __lsx_vclo_b(__m128i _1) {
1554   return (__m128i)__builtin_lsx_vclo_b((v16i8)_1);
1555 }
1556 
1557 extern __inline
1558     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1559     __lsx_vclo_h(__m128i _1) {
1560   return (__m128i)__builtin_lsx_vclo_h((v8i16)_1);
1561 }
1562 
1563 extern __inline
1564     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1565     __lsx_vclo_w(__m128i _1) {
1566   return (__m128i)__builtin_lsx_vclo_w((v4i32)_1);
1567 }
1568 
1569 extern __inline
1570     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1571     __lsx_vclo_d(__m128i _1) {
1572   return (__m128i)__builtin_lsx_vclo_d((v2i64)_1);
1573 }
1574 
1575 extern __inline
1576     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1577     __lsx_vclz_b(__m128i _1) {
1578   return (__m128i)__builtin_lsx_vclz_b((v16i8)_1);
1579 }
1580 
1581 extern __inline
1582     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1583     __lsx_vclz_h(__m128i _1) {
1584   return (__m128i)__builtin_lsx_vclz_h((v8i16)_1);
1585 }
1586 
1587 extern __inline
1588     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1589     __lsx_vclz_w(__m128i _1) {
1590   return (__m128i)__builtin_lsx_vclz_w((v4i32)_1);
1591 }
1592 
1593 extern __inline
1594     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1595     __lsx_vclz_d(__m128i _1) {
1596   return (__m128i)__builtin_lsx_vclz_d((v2i64)_1);
1597 }
1598 
1599 #define __lsx_vpickve2gr_b(/*__m128i*/ _1, /*ui4*/ _2)                         \
1600   ((int)__builtin_lsx_vpickve2gr_b((v16i8)(_1), (_2)))
1601 
1602 #define __lsx_vpickve2gr_h(/*__m128i*/ _1, /*ui3*/ _2)                         \
1603   ((int)__builtin_lsx_vpickve2gr_h((v8i16)(_1), (_2)))
1604 
1605 #define __lsx_vpickve2gr_w(/*__m128i*/ _1, /*ui2*/ _2)                         \
1606   ((int)__builtin_lsx_vpickve2gr_w((v4i32)(_1), (_2)))
1607 
1608 #define __lsx_vpickve2gr_d(/*__m128i*/ _1, /*ui1*/ _2)                         \
1609   ((long int)__builtin_lsx_vpickve2gr_d((v2i64)(_1), (_2)))
1610 
1611 #define __lsx_vpickve2gr_bu(/*__m128i*/ _1, /*ui4*/ _2)                        \
1612   ((unsigned int)__builtin_lsx_vpickve2gr_bu((v16i8)(_1), (_2)))
1613 
1614 #define __lsx_vpickve2gr_hu(/*__m128i*/ _1, /*ui3*/ _2)                        \
1615   ((unsigned int)__builtin_lsx_vpickve2gr_hu((v8i16)(_1), (_2)))
1616 
1617 #define __lsx_vpickve2gr_wu(/*__m128i*/ _1, /*ui2*/ _2)                        \
1618   ((unsigned int)__builtin_lsx_vpickve2gr_wu((v4i32)(_1), (_2)))
1619 
1620 #define __lsx_vpickve2gr_du(/*__m128i*/ _1, /*ui1*/ _2)                        \
1621   ((unsigned long int)__builtin_lsx_vpickve2gr_du((v2i64)(_1), (_2)))
1622 
1623 #define __lsx_vinsgr2vr_b(/*__m128i*/ _1, /*int*/ _2, /*ui4*/ _3)              \
1624   ((__m128i)__builtin_lsx_vinsgr2vr_b((v16i8)(_1), (int)(_2), (_3)))
1625 
1626 #define __lsx_vinsgr2vr_h(/*__m128i*/ _1, /*int*/ _2, /*ui3*/ _3)              \
1627   ((__m128i)__builtin_lsx_vinsgr2vr_h((v8i16)(_1), (int)(_2), (_3)))
1628 
1629 #define __lsx_vinsgr2vr_w(/*__m128i*/ _1, /*int*/ _2, /*ui2*/ _3)              \
1630   ((__m128i)__builtin_lsx_vinsgr2vr_w((v4i32)(_1), (int)(_2), (_3)))
1631 
1632 #define __lsx_vinsgr2vr_d(/*__m128i*/ _1, /*long int*/ _2, /*ui1*/ _3)         \
1633   ((__m128i)__builtin_lsx_vinsgr2vr_d((v2i64)(_1), (long int)(_2), (_3)))
1634 
1635 extern __inline
1636     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1637     __lsx_vfadd_s(__m128 _1, __m128 _2) {
1638   return (__m128)__builtin_lsx_vfadd_s((v4f32)_1, (v4f32)_2);
1639 }
1640 
1641 extern __inline
1642     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1643     __lsx_vfadd_d(__m128d _1, __m128d _2) {
1644   return (__m128d)__builtin_lsx_vfadd_d((v2f64)_1, (v2f64)_2);
1645 }
1646 
1647 extern __inline
1648     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1649     __lsx_vfsub_s(__m128 _1, __m128 _2) {
1650   return (__m128)__builtin_lsx_vfsub_s((v4f32)_1, (v4f32)_2);
1651 }
1652 
1653 extern __inline
1654     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1655     __lsx_vfsub_d(__m128d _1, __m128d _2) {
1656   return (__m128d)__builtin_lsx_vfsub_d((v2f64)_1, (v2f64)_2);
1657 }
1658 
1659 extern __inline
1660     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1661     __lsx_vfmul_s(__m128 _1, __m128 _2) {
1662   return (__m128)__builtin_lsx_vfmul_s((v4f32)_1, (v4f32)_2);
1663 }
1664 
1665 extern __inline
1666     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1667     __lsx_vfmul_d(__m128d _1, __m128d _2) {
1668   return (__m128d)__builtin_lsx_vfmul_d((v2f64)_1, (v2f64)_2);
1669 }
1670 
1671 extern __inline
1672     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1673     __lsx_vfdiv_s(__m128 _1, __m128 _2) {
1674   return (__m128)__builtin_lsx_vfdiv_s((v4f32)_1, (v4f32)_2);
1675 }
1676 
1677 extern __inline
1678     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1679     __lsx_vfdiv_d(__m128d _1, __m128d _2) {
1680   return (__m128d)__builtin_lsx_vfdiv_d((v2f64)_1, (v2f64)_2);
1681 }
1682 
1683 extern __inline
1684     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1685     __lsx_vfcvt_h_s(__m128 _1, __m128 _2) {
1686   return (__m128i)__builtin_lsx_vfcvt_h_s((v4f32)_1, (v4f32)_2);
1687 }
1688 
1689 extern __inline
1690     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1691     __lsx_vfcvt_s_d(__m128d _1, __m128d _2) {
1692   return (__m128)__builtin_lsx_vfcvt_s_d((v2f64)_1, (v2f64)_2);
1693 }
1694 
1695 extern __inline
1696     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1697     __lsx_vfmin_s(__m128 _1, __m128 _2) {
1698   return (__m128)__builtin_lsx_vfmin_s((v4f32)_1, (v4f32)_2);
1699 }
1700 
1701 extern __inline
1702     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1703     __lsx_vfmin_d(__m128d _1, __m128d _2) {
1704   return (__m128d)__builtin_lsx_vfmin_d((v2f64)_1, (v2f64)_2);
1705 }
1706 
1707 extern __inline
1708     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1709     __lsx_vfmina_s(__m128 _1, __m128 _2) {
1710   return (__m128)__builtin_lsx_vfmina_s((v4f32)_1, (v4f32)_2);
1711 }
1712 
1713 extern __inline
1714     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1715     __lsx_vfmina_d(__m128d _1, __m128d _2) {
1716   return (__m128d)__builtin_lsx_vfmina_d((v2f64)_1, (v2f64)_2);
1717 }
1718 
1719 extern __inline
1720     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1721     __lsx_vfmax_s(__m128 _1, __m128 _2) {
1722   return (__m128)__builtin_lsx_vfmax_s((v4f32)_1, (v4f32)_2);
1723 }
1724 
1725 extern __inline
1726     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1727     __lsx_vfmax_d(__m128d _1, __m128d _2) {
1728   return (__m128d)__builtin_lsx_vfmax_d((v2f64)_1, (v2f64)_2);
1729 }
1730 
1731 extern __inline
1732     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1733     __lsx_vfmaxa_s(__m128 _1, __m128 _2) {
1734   return (__m128)__builtin_lsx_vfmaxa_s((v4f32)_1, (v4f32)_2);
1735 }
1736 
1737 extern __inline
1738     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1739     __lsx_vfmaxa_d(__m128d _1, __m128d _2) {
1740   return (__m128d)__builtin_lsx_vfmaxa_d((v2f64)_1, (v2f64)_2);
1741 }
1742 
1743 extern __inline
1744     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1745     __lsx_vfclass_s(__m128 _1) {
1746   return (__m128i)__builtin_lsx_vfclass_s((v4f32)_1);
1747 }
1748 
1749 extern __inline
1750     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1751     __lsx_vfclass_d(__m128d _1) {
1752   return (__m128i)__builtin_lsx_vfclass_d((v2f64)_1);
1753 }
1754 
1755 extern __inline
1756     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1757     __lsx_vfsqrt_s(__m128 _1) {
1758   return (__m128)__builtin_lsx_vfsqrt_s((v4f32)_1);
1759 }
1760 
1761 extern __inline
1762     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1763     __lsx_vfsqrt_d(__m128d _1) {
1764   return (__m128d)__builtin_lsx_vfsqrt_d((v2f64)_1);
1765 }
1766 
1767 extern __inline
1768     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1769     __lsx_vfrecip_s(__m128 _1) {
1770   return (__m128)__builtin_lsx_vfrecip_s((v4f32)_1);
1771 }
1772 
1773 extern __inline
1774     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1775     __lsx_vfrecip_d(__m128d _1) {
1776   return (__m128d)__builtin_lsx_vfrecip_d((v2f64)_1);
1777 }
1778 
1779 extern __inline
1780     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1781     __lsx_vfrecipe_s(__m128 _1) {
1782   return (__m128)__builtin_lsx_vfrecipe_s((v4f32)_1);
1783 }
1784 
1785 extern __inline
1786     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1787     __lsx_vfrecipe_d(__m128d _1) {
1788   return (__m128d)__builtin_lsx_vfrecipe_d((v2f64)_1);
1789 }
1790 
1791 extern __inline
1792     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1793     __lsx_vfrint_s(__m128 _1) {
1794   return (__m128)__builtin_lsx_vfrint_s((v4f32)_1);
1795 }
1796 
1797 extern __inline
1798     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1799     __lsx_vfrint_d(__m128d _1) {
1800   return (__m128d)__builtin_lsx_vfrint_d((v2f64)_1);
1801 }
1802 
1803 extern __inline
1804     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1805     __lsx_vfrsqrt_s(__m128 _1) {
1806   return (__m128)__builtin_lsx_vfrsqrt_s((v4f32)_1);
1807 }
1808 
1809 extern __inline
1810     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1811     __lsx_vfrsqrt_d(__m128d _1) {
1812   return (__m128d)__builtin_lsx_vfrsqrt_d((v2f64)_1);
1813 }
1814 
1815 extern __inline
1816     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1817     __lsx_vfrsqrte_s(__m128 _1) {
1818   return (__m128)__builtin_lsx_vfrsqrte_s((v4f32)_1);
1819 }
1820 
1821 extern __inline
1822     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1823     __lsx_vfrsqrte_d(__m128d _1) {
1824   return (__m128d)__builtin_lsx_vfrsqrte_d((v2f64)_1);
1825 }
1826 
1827 extern __inline
1828     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1829     __lsx_vflogb_s(__m128 _1) {
1830   return (__m128)__builtin_lsx_vflogb_s((v4f32)_1);
1831 }
1832 
1833 extern __inline
1834     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1835     __lsx_vflogb_d(__m128d _1) {
1836   return (__m128d)__builtin_lsx_vflogb_d((v2f64)_1);
1837 }
1838 
1839 extern __inline
1840     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1841     __lsx_vfcvth_s_h(__m128i _1) {
1842   return (__m128)__builtin_lsx_vfcvth_s_h((v8i16)_1);
1843 }
1844 
1845 extern __inline
1846     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1847     __lsx_vfcvth_d_s(__m128 _1) {
1848   return (__m128d)__builtin_lsx_vfcvth_d_s((v4f32)_1);
1849 }
1850 
1851 extern __inline
1852     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1853     __lsx_vfcvtl_s_h(__m128i _1) {
1854   return (__m128)__builtin_lsx_vfcvtl_s_h((v8i16)_1);
1855 }
1856 
1857 extern __inline
1858     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1859     __lsx_vfcvtl_d_s(__m128 _1) {
1860   return (__m128d)__builtin_lsx_vfcvtl_d_s((v4f32)_1);
1861 }
1862 
1863 extern __inline
1864     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1865     __lsx_vftint_w_s(__m128 _1) {
1866   return (__m128i)__builtin_lsx_vftint_w_s((v4f32)_1);
1867 }
1868 
1869 extern __inline
1870     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1871     __lsx_vftint_l_d(__m128d _1) {
1872   return (__m128i)__builtin_lsx_vftint_l_d((v2f64)_1);
1873 }
1874 
1875 extern __inline
1876     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1877     __lsx_vftint_wu_s(__m128 _1) {
1878   return (__m128i)__builtin_lsx_vftint_wu_s((v4f32)_1);
1879 }
1880 
1881 extern __inline
1882     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1883     __lsx_vftint_lu_d(__m128d _1) {
1884   return (__m128i)__builtin_lsx_vftint_lu_d((v2f64)_1);
1885 }
1886 
1887 extern __inline
1888     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1889     __lsx_vftintrz_w_s(__m128 _1) {
1890   return (__m128i)__builtin_lsx_vftintrz_w_s((v4f32)_1);
1891 }
1892 
1893 extern __inline
1894     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1895     __lsx_vftintrz_l_d(__m128d _1) {
1896   return (__m128i)__builtin_lsx_vftintrz_l_d((v2f64)_1);
1897 }
1898 
1899 extern __inline
1900     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1901     __lsx_vftintrz_wu_s(__m128 _1) {
1902   return (__m128i)__builtin_lsx_vftintrz_wu_s((v4f32)_1);
1903 }
1904 
1905 extern __inline
1906     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1907     __lsx_vftintrz_lu_d(__m128d _1) {
1908   return (__m128i)__builtin_lsx_vftintrz_lu_d((v2f64)_1);
1909 }
1910 
1911 extern __inline
1912     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1913     __lsx_vffint_s_w(__m128i _1) {
1914   return (__m128)__builtin_lsx_vffint_s_w((v4i32)_1);
1915 }
1916 
1917 extern __inline
1918     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1919     __lsx_vffint_d_l(__m128i _1) {
1920   return (__m128d)__builtin_lsx_vffint_d_l((v2i64)_1);
1921 }
1922 
1923 extern __inline
1924     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
1925     __lsx_vffint_s_wu(__m128i _1) {
1926   return (__m128)__builtin_lsx_vffint_s_wu((v4u32)_1);
1927 }
1928 
1929 extern __inline
1930     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
1931     __lsx_vffint_d_lu(__m128i _1) {
1932   return (__m128d)__builtin_lsx_vffint_d_lu((v2u64)_1);
1933 }
1934 
1935 extern __inline
1936     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1937     __lsx_vandn_v(__m128i _1, __m128i _2) {
1938   return (__m128i)__builtin_lsx_vandn_v((v16u8)_1, (v16u8)_2);
1939 }
1940 
1941 extern __inline
1942     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1943     __lsx_vneg_b(__m128i _1) {
1944   return (__m128i)__builtin_lsx_vneg_b((v16i8)_1);
1945 }
1946 
1947 extern __inline
1948     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1949     __lsx_vneg_h(__m128i _1) {
1950   return (__m128i)__builtin_lsx_vneg_h((v8i16)_1);
1951 }
1952 
1953 extern __inline
1954     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1955     __lsx_vneg_w(__m128i _1) {
1956   return (__m128i)__builtin_lsx_vneg_w((v4i32)_1);
1957 }
1958 
1959 extern __inline
1960     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1961     __lsx_vneg_d(__m128i _1) {
1962   return (__m128i)__builtin_lsx_vneg_d((v2i64)_1);
1963 }
1964 
1965 extern __inline
1966     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1967     __lsx_vmuh_b(__m128i _1, __m128i _2) {
1968   return (__m128i)__builtin_lsx_vmuh_b((v16i8)_1, (v16i8)_2);
1969 }
1970 
1971 extern __inline
1972     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1973     __lsx_vmuh_h(__m128i _1, __m128i _2) {
1974   return (__m128i)__builtin_lsx_vmuh_h((v8i16)_1, (v8i16)_2);
1975 }
1976 
1977 extern __inline
1978     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1979     __lsx_vmuh_w(__m128i _1, __m128i _2) {
1980   return (__m128i)__builtin_lsx_vmuh_w((v4i32)_1, (v4i32)_2);
1981 }
1982 
1983 extern __inline
1984     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1985     __lsx_vmuh_d(__m128i _1, __m128i _2) {
1986   return (__m128i)__builtin_lsx_vmuh_d((v2i64)_1, (v2i64)_2);
1987 }
1988 
1989 extern __inline
1990     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1991     __lsx_vmuh_bu(__m128i _1, __m128i _2) {
1992   return (__m128i)__builtin_lsx_vmuh_bu((v16u8)_1, (v16u8)_2);
1993 }
1994 
1995 extern __inline
1996     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
1997     __lsx_vmuh_hu(__m128i _1, __m128i _2) {
1998   return (__m128i)__builtin_lsx_vmuh_hu((v8u16)_1, (v8u16)_2);
1999 }
2000 
2001 extern __inline
2002     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2003     __lsx_vmuh_wu(__m128i _1, __m128i _2) {
2004   return (__m128i)__builtin_lsx_vmuh_wu((v4u32)_1, (v4u32)_2);
2005 }
2006 
2007 extern __inline
2008     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2009     __lsx_vmuh_du(__m128i _1, __m128i _2) {
2010   return (__m128i)__builtin_lsx_vmuh_du((v2u64)_1, (v2u64)_2);
2011 }
2012 
2013 #define __lsx_vsllwil_h_b(/*__m128i*/ _1, /*ui3*/ _2)                          \
2014   ((__m128i)__builtin_lsx_vsllwil_h_b((v16i8)(_1), (_2)))
2015 
2016 #define __lsx_vsllwil_w_h(/*__m128i*/ _1, /*ui4*/ _2)                          \
2017   ((__m128i)__builtin_lsx_vsllwil_w_h((v8i16)(_1), (_2)))
2018 
2019 #define __lsx_vsllwil_d_w(/*__m128i*/ _1, /*ui5*/ _2)                          \
2020   ((__m128i)__builtin_lsx_vsllwil_d_w((v4i32)(_1), (_2)))
2021 
2022 #define __lsx_vsllwil_hu_bu(/*__m128i*/ _1, /*ui3*/ _2)                        \
2023   ((__m128i)__builtin_lsx_vsllwil_hu_bu((v16u8)(_1), (_2)))
2024 
2025 #define __lsx_vsllwil_wu_hu(/*__m128i*/ _1, /*ui4*/ _2)                        \
2026   ((__m128i)__builtin_lsx_vsllwil_wu_hu((v8u16)(_1), (_2)))
2027 
2028 #define __lsx_vsllwil_du_wu(/*__m128i*/ _1, /*ui5*/ _2)                        \
2029   ((__m128i)__builtin_lsx_vsllwil_du_wu((v4u32)(_1), (_2)))
2030 
2031 extern __inline
2032     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2033     __lsx_vsran_b_h(__m128i _1, __m128i _2) {
2034   return (__m128i)__builtin_lsx_vsran_b_h((v8i16)_1, (v8i16)_2);
2035 }
2036 
2037 extern __inline
2038     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2039     __lsx_vsran_h_w(__m128i _1, __m128i _2) {
2040   return (__m128i)__builtin_lsx_vsran_h_w((v4i32)_1, (v4i32)_2);
2041 }
2042 
2043 extern __inline
2044     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2045     __lsx_vsran_w_d(__m128i _1, __m128i _2) {
2046   return (__m128i)__builtin_lsx_vsran_w_d((v2i64)_1, (v2i64)_2);
2047 }
2048 
2049 extern __inline
2050     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2051     __lsx_vssran_b_h(__m128i _1, __m128i _2) {
2052   return (__m128i)__builtin_lsx_vssran_b_h((v8i16)_1, (v8i16)_2);
2053 }
2054 
2055 extern __inline
2056     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2057     __lsx_vssran_h_w(__m128i _1, __m128i _2) {
2058   return (__m128i)__builtin_lsx_vssran_h_w((v4i32)_1, (v4i32)_2);
2059 }
2060 
2061 extern __inline
2062     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2063     __lsx_vssran_w_d(__m128i _1, __m128i _2) {
2064   return (__m128i)__builtin_lsx_vssran_w_d((v2i64)_1, (v2i64)_2);
2065 }
2066 
2067 extern __inline
2068     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2069     __lsx_vssran_bu_h(__m128i _1, __m128i _2) {
2070   return (__m128i)__builtin_lsx_vssran_bu_h((v8u16)_1, (v8u16)_2);
2071 }
2072 
2073 extern __inline
2074     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2075     __lsx_vssran_hu_w(__m128i _1, __m128i _2) {
2076   return (__m128i)__builtin_lsx_vssran_hu_w((v4u32)_1, (v4u32)_2);
2077 }
2078 
2079 extern __inline
2080     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2081     __lsx_vssran_wu_d(__m128i _1, __m128i _2) {
2082   return (__m128i)__builtin_lsx_vssran_wu_d((v2u64)_1, (v2u64)_2);
2083 }
2084 
2085 extern __inline
2086     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2087     __lsx_vsrarn_b_h(__m128i _1, __m128i _2) {
2088   return (__m128i)__builtin_lsx_vsrarn_b_h((v8i16)_1, (v8i16)_2);
2089 }
2090 
2091 extern __inline
2092     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2093     __lsx_vsrarn_h_w(__m128i _1, __m128i _2) {
2094   return (__m128i)__builtin_lsx_vsrarn_h_w((v4i32)_1, (v4i32)_2);
2095 }
2096 
2097 extern __inline
2098     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2099     __lsx_vsrarn_w_d(__m128i _1, __m128i _2) {
2100   return (__m128i)__builtin_lsx_vsrarn_w_d((v2i64)_1, (v2i64)_2);
2101 }
2102 
2103 extern __inline
2104     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2105     __lsx_vssrarn_b_h(__m128i _1, __m128i _2) {
2106   return (__m128i)__builtin_lsx_vssrarn_b_h((v8i16)_1, (v8i16)_2);
2107 }
2108 
2109 extern __inline
2110     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2111     __lsx_vssrarn_h_w(__m128i _1, __m128i _2) {
2112   return (__m128i)__builtin_lsx_vssrarn_h_w((v4i32)_1, (v4i32)_2);
2113 }
2114 
2115 extern __inline
2116     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2117     __lsx_vssrarn_w_d(__m128i _1, __m128i _2) {
2118   return (__m128i)__builtin_lsx_vssrarn_w_d((v2i64)_1, (v2i64)_2);
2119 }
2120 
2121 extern __inline
2122     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2123     __lsx_vssrarn_bu_h(__m128i _1, __m128i _2) {
2124   return (__m128i)__builtin_lsx_vssrarn_bu_h((v8u16)_1, (v8u16)_2);
2125 }
2126 
2127 extern __inline
2128     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2129     __lsx_vssrarn_hu_w(__m128i _1, __m128i _2) {
2130   return (__m128i)__builtin_lsx_vssrarn_hu_w((v4u32)_1, (v4u32)_2);
2131 }
2132 
2133 extern __inline
2134     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2135     __lsx_vssrarn_wu_d(__m128i _1, __m128i _2) {
2136   return (__m128i)__builtin_lsx_vssrarn_wu_d((v2u64)_1, (v2u64)_2);
2137 }
2138 
2139 extern __inline
2140     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2141     __lsx_vsrln_b_h(__m128i _1, __m128i _2) {
2142   return (__m128i)__builtin_lsx_vsrln_b_h((v8i16)_1, (v8i16)_2);
2143 }
2144 
2145 extern __inline
2146     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2147     __lsx_vsrln_h_w(__m128i _1, __m128i _2) {
2148   return (__m128i)__builtin_lsx_vsrln_h_w((v4i32)_1, (v4i32)_2);
2149 }
2150 
2151 extern __inline
2152     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2153     __lsx_vsrln_w_d(__m128i _1, __m128i _2) {
2154   return (__m128i)__builtin_lsx_vsrln_w_d((v2i64)_1, (v2i64)_2);
2155 }
2156 
2157 extern __inline
2158     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2159     __lsx_vssrln_bu_h(__m128i _1, __m128i _2) {
2160   return (__m128i)__builtin_lsx_vssrln_bu_h((v8u16)_1, (v8u16)_2);
2161 }
2162 
2163 extern __inline
2164     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2165     __lsx_vssrln_hu_w(__m128i _1, __m128i _2) {
2166   return (__m128i)__builtin_lsx_vssrln_hu_w((v4u32)_1, (v4u32)_2);
2167 }
2168 
2169 extern __inline
2170     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2171     __lsx_vssrln_wu_d(__m128i _1, __m128i _2) {
2172   return (__m128i)__builtin_lsx_vssrln_wu_d((v2u64)_1, (v2u64)_2);
2173 }
2174 
2175 extern __inline
2176     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2177     __lsx_vsrlrn_b_h(__m128i _1, __m128i _2) {
2178   return (__m128i)__builtin_lsx_vsrlrn_b_h((v8i16)_1, (v8i16)_2);
2179 }
2180 
2181 extern __inline
2182     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2183     __lsx_vsrlrn_h_w(__m128i _1, __m128i _2) {
2184   return (__m128i)__builtin_lsx_vsrlrn_h_w((v4i32)_1, (v4i32)_2);
2185 }
2186 
2187 extern __inline
2188     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2189     __lsx_vsrlrn_w_d(__m128i _1, __m128i _2) {
2190   return (__m128i)__builtin_lsx_vsrlrn_w_d((v2i64)_1, (v2i64)_2);
2191 }
2192 
2193 extern __inline
2194     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2195     __lsx_vssrlrn_bu_h(__m128i _1, __m128i _2) {
2196   return (__m128i)__builtin_lsx_vssrlrn_bu_h((v8u16)_1, (v8u16)_2);
2197 }
2198 
2199 extern __inline
2200     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2201     __lsx_vssrlrn_hu_w(__m128i _1, __m128i _2) {
2202   return (__m128i)__builtin_lsx_vssrlrn_hu_w((v4u32)_1, (v4u32)_2);
2203 }
2204 
2205 extern __inline
2206     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2207     __lsx_vssrlrn_wu_d(__m128i _1, __m128i _2) {
2208   return (__m128i)__builtin_lsx_vssrlrn_wu_d((v2u64)_1, (v2u64)_2);
2209 }
2210 
2211 #define __lsx_vfrstpi_b(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)            \
2212   ((__m128i)__builtin_lsx_vfrstpi_b((v16i8)(_1), (v16i8)(_2), (_3)))
2213 
2214 #define __lsx_vfrstpi_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)            \
2215   ((__m128i)__builtin_lsx_vfrstpi_h((v8i16)(_1), (v8i16)(_2), (_3)))
2216 
2217 extern __inline
2218     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2219     __lsx_vfrstp_b(__m128i _1, __m128i _2, __m128i _3) {
2220   return (__m128i)__builtin_lsx_vfrstp_b((v16i8)_1, (v16i8)_2, (v16i8)_3);
2221 }
2222 
2223 extern __inline
2224     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2225     __lsx_vfrstp_h(__m128i _1, __m128i _2, __m128i _3) {
2226   return (__m128i)__builtin_lsx_vfrstp_h((v8i16)_1, (v8i16)_2, (v8i16)_3);
2227 }
2228 
2229 #define __lsx_vshuf4i_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3)            \
2230   ((__m128i)__builtin_lsx_vshuf4i_d((v2i64)(_1), (v2i64)(_2), (_3)))
2231 
2232 #define __lsx_vbsrl_v(/*__m128i*/ _1, /*ui5*/ _2)                              \
2233   ((__m128i)__builtin_lsx_vbsrl_v((v16i8)(_1), (_2)))
2234 
2235 #define __lsx_vbsll_v(/*__m128i*/ _1, /*ui5*/ _2)                              \
2236   ((__m128i)__builtin_lsx_vbsll_v((v16i8)(_1), (_2)))
2237 
2238 #define __lsx_vextrins_b(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3)           \
2239   ((__m128i)__builtin_lsx_vextrins_b((v16i8)(_1), (v16i8)(_2), (_3)))
2240 
2241 #define __lsx_vextrins_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3)           \
2242   ((__m128i)__builtin_lsx_vextrins_h((v8i16)(_1), (v8i16)(_2), (_3)))
2243 
2244 #define __lsx_vextrins_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3)           \
2245   ((__m128i)__builtin_lsx_vextrins_w((v4i32)(_1), (v4i32)(_2), (_3)))
2246 
2247 #define __lsx_vextrins_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3)           \
2248   ((__m128i)__builtin_lsx_vextrins_d((v2i64)(_1), (v2i64)(_2), (_3)))
2249 
2250 extern __inline
2251     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2252     __lsx_vmskltz_b(__m128i _1) {
2253   return (__m128i)__builtin_lsx_vmskltz_b((v16i8)_1);
2254 }
2255 
2256 extern __inline
2257     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2258     __lsx_vmskltz_h(__m128i _1) {
2259   return (__m128i)__builtin_lsx_vmskltz_h((v8i16)_1);
2260 }
2261 
2262 extern __inline
2263     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2264     __lsx_vmskltz_w(__m128i _1) {
2265   return (__m128i)__builtin_lsx_vmskltz_w((v4i32)_1);
2266 }
2267 
2268 extern __inline
2269     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2270     __lsx_vmskltz_d(__m128i _1) {
2271   return (__m128i)__builtin_lsx_vmskltz_d((v2i64)_1);
2272 }
2273 
2274 extern __inline
2275     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2276     __lsx_vsigncov_b(__m128i _1, __m128i _2) {
2277   return (__m128i)__builtin_lsx_vsigncov_b((v16i8)_1, (v16i8)_2);
2278 }
2279 
2280 extern __inline
2281     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2282     __lsx_vsigncov_h(__m128i _1, __m128i _2) {
2283   return (__m128i)__builtin_lsx_vsigncov_h((v8i16)_1, (v8i16)_2);
2284 }
2285 
2286 extern __inline
2287     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2288     __lsx_vsigncov_w(__m128i _1, __m128i _2) {
2289   return (__m128i)__builtin_lsx_vsigncov_w((v4i32)_1, (v4i32)_2);
2290 }
2291 
2292 extern __inline
2293     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2294     __lsx_vsigncov_d(__m128i _1, __m128i _2) {
2295   return (__m128i)__builtin_lsx_vsigncov_d((v2i64)_1, (v2i64)_2);
2296 }
2297 
2298 extern __inline
2299     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
2300     __lsx_vfmadd_s(__m128 _1, __m128 _2, __m128 _3) {
2301   return (__m128)__builtin_lsx_vfmadd_s((v4f32)_1, (v4f32)_2, (v4f32)_3);
2302 }
2303 
2304 extern __inline
2305     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2306     __lsx_vfmadd_d(__m128d _1, __m128d _2, __m128d _3) {
2307   return (__m128d)__builtin_lsx_vfmadd_d((v2f64)_1, (v2f64)_2, (v2f64)_3);
2308 }
2309 
2310 extern __inline
2311     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
2312     __lsx_vfmsub_s(__m128 _1, __m128 _2, __m128 _3) {
2313   return (__m128)__builtin_lsx_vfmsub_s((v4f32)_1, (v4f32)_2, (v4f32)_3);
2314 }
2315 
2316 extern __inline
2317     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2318     __lsx_vfmsub_d(__m128d _1, __m128d _2, __m128d _3) {
2319   return (__m128d)__builtin_lsx_vfmsub_d((v2f64)_1, (v2f64)_2, (v2f64)_3);
2320 }
2321 
2322 extern __inline
2323     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
2324     __lsx_vfnmadd_s(__m128 _1, __m128 _2, __m128 _3) {
2325   return (__m128)__builtin_lsx_vfnmadd_s((v4f32)_1, (v4f32)_2, (v4f32)_3);
2326 }
2327 
2328 extern __inline
2329     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2330     __lsx_vfnmadd_d(__m128d _1, __m128d _2, __m128d _3) {
2331   return (__m128d)__builtin_lsx_vfnmadd_d((v2f64)_1, (v2f64)_2, (v2f64)_3);
2332 }
2333 
2334 extern __inline
2335     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
2336     __lsx_vfnmsub_s(__m128 _1, __m128 _2, __m128 _3) {
2337   return (__m128)__builtin_lsx_vfnmsub_s((v4f32)_1, (v4f32)_2, (v4f32)_3);
2338 }
2339 
2340 extern __inline
2341     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2342     __lsx_vfnmsub_d(__m128d _1, __m128d _2, __m128d _3) {
2343   return (__m128d)__builtin_lsx_vfnmsub_d((v2f64)_1, (v2f64)_2, (v2f64)_3);
2344 }
2345 
2346 extern __inline
2347     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2348     __lsx_vftintrne_w_s(__m128 _1) {
2349   return (__m128i)__builtin_lsx_vftintrne_w_s((v4f32)_1);
2350 }
2351 
2352 extern __inline
2353     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2354     __lsx_vftintrne_l_d(__m128d _1) {
2355   return (__m128i)__builtin_lsx_vftintrne_l_d((v2f64)_1);
2356 }
2357 
2358 extern __inline
2359     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2360     __lsx_vftintrp_w_s(__m128 _1) {
2361   return (__m128i)__builtin_lsx_vftintrp_w_s((v4f32)_1);
2362 }
2363 
2364 extern __inline
2365     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2366     __lsx_vftintrp_l_d(__m128d _1) {
2367   return (__m128i)__builtin_lsx_vftintrp_l_d((v2f64)_1);
2368 }
2369 
2370 extern __inline
2371     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2372     __lsx_vftintrm_w_s(__m128 _1) {
2373   return (__m128i)__builtin_lsx_vftintrm_w_s((v4f32)_1);
2374 }
2375 
2376 extern __inline
2377     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2378     __lsx_vftintrm_l_d(__m128d _1) {
2379   return (__m128i)__builtin_lsx_vftintrm_l_d((v2f64)_1);
2380 }
2381 
2382 extern __inline
2383     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2384     __lsx_vftint_w_d(__m128d _1, __m128d _2) {
2385   return (__m128i)__builtin_lsx_vftint_w_d((v2f64)_1, (v2f64)_2);
2386 }
2387 
2388 extern __inline
2389     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
2390     __lsx_vffint_s_l(__m128i _1, __m128i _2) {
2391   return (__m128)__builtin_lsx_vffint_s_l((v2i64)_1, (v2i64)_2);
2392 }
2393 
2394 extern __inline
2395     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2396     __lsx_vftintrz_w_d(__m128d _1, __m128d _2) {
2397   return (__m128i)__builtin_lsx_vftintrz_w_d((v2f64)_1, (v2f64)_2);
2398 }
2399 
2400 extern __inline
2401     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2402     __lsx_vftintrp_w_d(__m128d _1, __m128d _2) {
2403   return (__m128i)__builtin_lsx_vftintrp_w_d((v2f64)_1, (v2f64)_2);
2404 }
2405 
2406 extern __inline
2407     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2408     __lsx_vftintrm_w_d(__m128d _1, __m128d _2) {
2409   return (__m128i)__builtin_lsx_vftintrm_w_d((v2f64)_1, (v2f64)_2);
2410 }
2411 
2412 extern __inline
2413     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2414     __lsx_vftintrne_w_d(__m128d _1, __m128d _2) {
2415   return (__m128i)__builtin_lsx_vftintrne_w_d((v2f64)_1, (v2f64)_2);
2416 }
2417 
2418 extern __inline
2419     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2420     __lsx_vftintl_l_s(__m128 _1) {
2421   return (__m128i)__builtin_lsx_vftintl_l_s((v4f32)_1);
2422 }
2423 
2424 extern __inline
2425     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2426     __lsx_vftinth_l_s(__m128 _1) {
2427   return (__m128i)__builtin_lsx_vftinth_l_s((v4f32)_1);
2428 }
2429 
2430 extern __inline
2431     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2432     __lsx_vffinth_d_w(__m128i _1) {
2433   return (__m128d)__builtin_lsx_vffinth_d_w((v4i32)_1);
2434 }
2435 
2436 extern __inline
2437     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2438     __lsx_vffintl_d_w(__m128i _1) {
2439   return (__m128d)__builtin_lsx_vffintl_d_w((v4i32)_1);
2440 }
2441 
2442 extern __inline
2443     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2444     __lsx_vftintrzl_l_s(__m128 _1) {
2445   return (__m128i)__builtin_lsx_vftintrzl_l_s((v4f32)_1);
2446 }
2447 
2448 extern __inline
2449     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2450     __lsx_vftintrzh_l_s(__m128 _1) {
2451   return (__m128i)__builtin_lsx_vftintrzh_l_s((v4f32)_1);
2452 }
2453 
2454 extern __inline
2455     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2456     __lsx_vftintrpl_l_s(__m128 _1) {
2457   return (__m128i)__builtin_lsx_vftintrpl_l_s((v4f32)_1);
2458 }
2459 
2460 extern __inline
2461     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2462     __lsx_vftintrph_l_s(__m128 _1) {
2463   return (__m128i)__builtin_lsx_vftintrph_l_s((v4f32)_1);
2464 }
2465 
2466 extern __inline
2467     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2468     __lsx_vftintrml_l_s(__m128 _1) {
2469   return (__m128i)__builtin_lsx_vftintrml_l_s((v4f32)_1);
2470 }
2471 
2472 extern __inline
2473     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2474     __lsx_vftintrmh_l_s(__m128 _1) {
2475   return (__m128i)__builtin_lsx_vftintrmh_l_s((v4f32)_1);
2476 }
2477 
2478 extern __inline
2479     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2480     __lsx_vftintrnel_l_s(__m128 _1) {
2481   return (__m128i)__builtin_lsx_vftintrnel_l_s((v4f32)_1);
2482 }
2483 
2484 extern __inline
2485     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2486     __lsx_vftintrneh_l_s(__m128 _1) {
2487   return (__m128i)__builtin_lsx_vftintrneh_l_s((v4f32)_1);
2488 }
2489 
2490 extern __inline
2491     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
2492     __lsx_vfrintrne_s(__m128 _1) {
2493   return (__m128)__builtin_lsx_vfrintrne_s((v4f32)_1);
2494 }
2495 
2496 extern __inline
2497     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2498     __lsx_vfrintrne_d(__m128d _1) {
2499   return (__m128d)__builtin_lsx_vfrintrne_d((v2f64)_1);
2500 }
2501 
2502 extern __inline
2503     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
2504     __lsx_vfrintrz_s(__m128 _1) {
2505   return (__m128)__builtin_lsx_vfrintrz_s((v4f32)_1);
2506 }
2507 
2508 extern __inline
2509     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2510     __lsx_vfrintrz_d(__m128d _1) {
2511   return (__m128d)__builtin_lsx_vfrintrz_d((v2f64)_1);
2512 }
2513 
2514 extern __inline
2515     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
2516     __lsx_vfrintrp_s(__m128 _1) {
2517   return (__m128)__builtin_lsx_vfrintrp_s((v4f32)_1);
2518 }
2519 
2520 extern __inline
2521     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2522     __lsx_vfrintrp_d(__m128d _1) {
2523   return (__m128d)__builtin_lsx_vfrintrp_d((v2f64)_1);
2524 }
2525 
2526 extern __inline
2527     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128
2528     __lsx_vfrintrm_s(__m128 _1) {
2529   return (__m128)__builtin_lsx_vfrintrm_s((v4f32)_1);
2530 }
2531 
2532 extern __inline
2533     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d
2534     __lsx_vfrintrm_d(__m128d _1) {
2535   return (__m128d)__builtin_lsx_vfrintrm_d((v2f64)_1);
2536 }
2537 
2538 #define __lsx_vstelm_b(/*__m128i*/ _1, /*void **/ _2, /*si8*/ _3, /*idx*/ _4)  \
2539   ((void)__builtin_lsx_vstelm_b((v16i8)(_1), (void *)(_2), (_3), (_4)))
2540 
2541 #define __lsx_vstelm_h(/*__m128i*/ _1, /*void **/ _2, /*si8*/ _3, /*idx*/ _4)  \
2542   ((void)__builtin_lsx_vstelm_h((v8i16)(_1), (void *)(_2), (_3), (_4)))
2543 
2544 #define __lsx_vstelm_w(/*__m128i*/ _1, /*void **/ _2, /*si8*/ _3, /*idx*/ _4)  \
2545   ((void)__builtin_lsx_vstelm_w((v4i32)(_1), (void *)(_2), (_3), (_4)))
2546 
2547 #define __lsx_vstelm_d(/*__m128i*/ _1, /*void **/ _2, /*si8*/ _3, /*idx*/ _4)  \
2548   ((void)__builtin_lsx_vstelm_d((v2i64)(_1), (void *)(_2), (_3), (_4)))
2549 
2550 extern __inline
2551     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2552     __lsx_vaddwev_d_w(__m128i _1, __m128i _2) {
2553   return (__m128i)__builtin_lsx_vaddwev_d_w((v4i32)_1, (v4i32)_2);
2554 }
2555 
2556 extern __inline
2557     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2558     __lsx_vaddwev_w_h(__m128i _1, __m128i _2) {
2559   return (__m128i)__builtin_lsx_vaddwev_w_h((v8i16)_1, (v8i16)_2);
2560 }
2561 
2562 extern __inline
2563     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2564     __lsx_vaddwev_h_b(__m128i _1, __m128i _2) {
2565   return (__m128i)__builtin_lsx_vaddwev_h_b((v16i8)_1, (v16i8)_2);
2566 }
2567 
2568 extern __inline
2569     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2570     __lsx_vaddwod_d_w(__m128i _1, __m128i _2) {
2571   return (__m128i)__builtin_lsx_vaddwod_d_w((v4i32)_1, (v4i32)_2);
2572 }
2573 
2574 extern __inline
2575     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2576     __lsx_vaddwod_w_h(__m128i _1, __m128i _2) {
2577   return (__m128i)__builtin_lsx_vaddwod_w_h((v8i16)_1, (v8i16)_2);
2578 }
2579 
2580 extern __inline
2581     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2582     __lsx_vaddwod_h_b(__m128i _1, __m128i _2) {
2583   return (__m128i)__builtin_lsx_vaddwod_h_b((v16i8)_1, (v16i8)_2);
2584 }
2585 
2586 extern __inline
2587     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2588     __lsx_vaddwev_d_wu(__m128i _1, __m128i _2) {
2589   return (__m128i)__builtin_lsx_vaddwev_d_wu((v4u32)_1, (v4u32)_2);
2590 }
2591 
2592 extern __inline
2593     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2594     __lsx_vaddwev_w_hu(__m128i _1, __m128i _2) {
2595   return (__m128i)__builtin_lsx_vaddwev_w_hu((v8u16)_1, (v8u16)_2);
2596 }
2597 
2598 extern __inline
2599     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2600     __lsx_vaddwev_h_bu(__m128i _1, __m128i _2) {
2601   return (__m128i)__builtin_lsx_vaddwev_h_bu((v16u8)_1, (v16u8)_2);
2602 }
2603 
2604 extern __inline
2605     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2606     __lsx_vaddwod_d_wu(__m128i _1, __m128i _2) {
2607   return (__m128i)__builtin_lsx_vaddwod_d_wu((v4u32)_1, (v4u32)_2);
2608 }
2609 
2610 extern __inline
2611     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2612     __lsx_vaddwod_w_hu(__m128i _1, __m128i _2) {
2613   return (__m128i)__builtin_lsx_vaddwod_w_hu((v8u16)_1, (v8u16)_2);
2614 }
2615 
2616 extern __inline
2617     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2618     __lsx_vaddwod_h_bu(__m128i _1, __m128i _2) {
2619   return (__m128i)__builtin_lsx_vaddwod_h_bu((v16u8)_1, (v16u8)_2);
2620 }
2621 
2622 extern __inline
2623     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2624     __lsx_vaddwev_d_wu_w(__m128i _1, __m128i _2) {
2625   return (__m128i)__builtin_lsx_vaddwev_d_wu_w((v4u32)_1, (v4i32)_2);
2626 }
2627 
2628 extern __inline
2629     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2630     __lsx_vaddwev_w_hu_h(__m128i _1, __m128i _2) {
2631   return (__m128i)__builtin_lsx_vaddwev_w_hu_h((v8u16)_1, (v8i16)_2);
2632 }
2633 
2634 extern __inline
2635     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2636     __lsx_vaddwev_h_bu_b(__m128i _1, __m128i _2) {
2637   return (__m128i)__builtin_lsx_vaddwev_h_bu_b((v16u8)_1, (v16i8)_2);
2638 }
2639 
2640 extern __inline
2641     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2642     __lsx_vaddwod_d_wu_w(__m128i _1, __m128i _2) {
2643   return (__m128i)__builtin_lsx_vaddwod_d_wu_w((v4u32)_1, (v4i32)_2);
2644 }
2645 
2646 extern __inline
2647     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2648     __lsx_vaddwod_w_hu_h(__m128i _1, __m128i _2) {
2649   return (__m128i)__builtin_lsx_vaddwod_w_hu_h((v8u16)_1, (v8i16)_2);
2650 }
2651 
2652 extern __inline
2653     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2654     __lsx_vaddwod_h_bu_b(__m128i _1, __m128i _2) {
2655   return (__m128i)__builtin_lsx_vaddwod_h_bu_b((v16u8)_1, (v16i8)_2);
2656 }
2657 
2658 extern __inline
2659     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2660     __lsx_vsubwev_d_w(__m128i _1, __m128i _2) {
2661   return (__m128i)__builtin_lsx_vsubwev_d_w((v4i32)_1, (v4i32)_2);
2662 }
2663 
2664 extern __inline
2665     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2666     __lsx_vsubwev_w_h(__m128i _1, __m128i _2) {
2667   return (__m128i)__builtin_lsx_vsubwev_w_h((v8i16)_1, (v8i16)_2);
2668 }
2669 
2670 extern __inline
2671     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2672     __lsx_vsubwev_h_b(__m128i _1, __m128i _2) {
2673   return (__m128i)__builtin_lsx_vsubwev_h_b((v16i8)_1, (v16i8)_2);
2674 }
2675 
2676 extern __inline
2677     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2678     __lsx_vsubwod_d_w(__m128i _1, __m128i _2) {
2679   return (__m128i)__builtin_lsx_vsubwod_d_w((v4i32)_1, (v4i32)_2);
2680 }
2681 
2682 extern __inline
2683     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2684     __lsx_vsubwod_w_h(__m128i _1, __m128i _2) {
2685   return (__m128i)__builtin_lsx_vsubwod_w_h((v8i16)_1, (v8i16)_2);
2686 }
2687 
2688 extern __inline
2689     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2690     __lsx_vsubwod_h_b(__m128i _1, __m128i _2) {
2691   return (__m128i)__builtin_lsx_vsubwod_h_b((v16i8)_1, (v16i8)_2);
2692 }
2693 
2694 extern __inline
2695     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2696     __lsx_vsubwev_d_wu(__m128i _1, __m128i _2) {
2697   return (__m128i)__builtin_lsx_vsubwev_d_wu((v4u32)_1, (v4u32)_2);
2698 }
2699 
2700 extern __inline
2701     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2702     __lsx_vsubwev_w_hu(__m128i _1, __m128i _2) {
2703   return (__m128i)__builtin_lsx_vsubwev_w_hu((v8u16)_1, (v8u16)_2);
2704 }
2705 
2706 extern __inline
2707     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2708     __lsx_vsubwev_h_bu(__m128i _1, __m128i _2) {
2709   return (__m128i)__builtin_lsx_vsubwev_h_bu((v16u8)_1, (v16u8)_2);
2710 }
2711 
2712 extern __inline
2713     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2714     __lsx_vsubwod_d_wu(__m128i _1, __m128i _2) {
2715   return (__m128i)__builtin_lsx_vsubwod_d_wu((v4u32)_1, (v4u32)_2);
2716 }
2717 
2718 extern __inline
2719     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2720     __lsx_vsubwod_w_hu(__m128i _1, __m128i _2) {
2721   return (__m128i)__builtin_lsx_vsubwod_w_hu((v8u16)_1, (v8u16)_2);
2722 }
2723 
2724 extern __inline
2725     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2726     __lsx_vsubwod_h_bu(__m128i _1, __m128i _2) {
2727   return (__m128i)__builtin_lsx_vsubwod_h_bu((v16u8)_1, (v16u8)_2);
2728 }
2729 
2730 extern __inline
2731     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2732     __lsx_vaddwev_q_d(__m128i _1, __m128i _2) {
2733   return (__m128i)__builtin_lsx_vaddwev_q_d((v2i64)_1, (v2i64)_2);
2734 }
2735 
2736 extern __inline
2737     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2738     __lsx_vaddwod_q_d(__m128i _1, __m128i _2) {
2739   return (__m128i)__builtin_lsx_vaddwod_q_d((v2i64)_1, (v2i64)_2);
2740 }
2741 
2742 extern __inline
2743     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2744     __lsx_vaddwev_q_du(__m128i _1, __m128i _2) {
2745   return (__m128i)__builtin_lsx_vaddwev_q_du((v2u64)_1, (v2u64)_2);
2746 }
2747 
2748 extern __inline
2749     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2750     __lsx_vaddwod_q_du(__m128i _1, __m128i _2) {
2751   return (__m128i)__builtin_lsx_vaddwod_q_du((v2u64)_1, (v2u64)_2);
2752 }
2753 
2754 extern __inline
2755     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2756     __lsx_vsubwev_q_d(__m128i _1, __m128i _2) {
2757   return (__m128i)__builtin_lsx_vsubwev_q_d((v2i64)_1, (v2i64)_2);
2758 }
2759 
2760 extern __inline
2761     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2762     __lsx_vsubwod_q_d(__m128i _1, __m128i _2) {
2763   return (__m128i)__builtin_lsx_vsubwod_q_d((v2i64)_1, (v2i64)_2);
2764 }
2765 
2766 extern __inline
2767     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2768     __lsx_vsubwev_q_du(__m128i _1, __m128i _2) {
2769   return (__m128i)__builtin_lsx_vsubwev_q_du((v2u64)_1, (v2u64)_2);
2770 }
2771 
2772 extern __inline
2773     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2774     __lsx_vsubwod_q_du(__m128i _1, __m128i _2) {
2775   return (__m128i)__builtin_lsx_vsubwod_q_du((v2u64)_1, (v2u64)_2);
2776 }
2777 
2778 extern __inline
2779     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2780     __lsx_vaddwev_q_du_d(__m128i _1, __m128i _2) {
2781   return (__m128i)__builtin_lsx_vaddwev_q_du_d((v2u64)_1, (v2i64)_2);
2782 }
2783 
2784 extern __inline
2785     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2786     __lsx_vaddwod_q_du_d(__m128i _1, __m128i _2) {
2787   return (__m128i)__builtin_lsx_vaddwod_q_du_d((v2u64)_1, (v2i64)_2);
2788 }
2789 
2790 extern __inline
2791     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2792     __lsx_vmulwev_d_w(__m128i _1, __m128i _2) {
2793   return (__m128i)__builtin_lsx_vmulwev_d_w((v4i32)_1, (v4i32)_2);
2794 }
2795 
2796 extern __inline
2797     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2798     __lsx_vmulwev_w_h(__m128i _1, __m128i _2) {
2799   return (__m128i)__builtin_lsx_vmulwev_w_h((v8i16)_1, (v8i16)_2);
2800 }
2801 
2802 extern __inline
2803     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2804     __lsx_vmulwev_h_b(__m128i _1, __m128i _2) {
2805   return (__m128i)__builtin_lsx_vmulwev_h_b((v16i8)_1, (v16i8)_2);
2806 }
2807 
2808 extern __inline
2809     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2810     __lsx_vmulwod_d_w(__m128i _1, __m128i _2) {
2811   return (__m128i)__builtin_lsx_vmulwod_d_w((v4i32)_1, (v4i32)_2);
2812 }
2813 
2814 extern __inline
2815     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2816     __lsx_vmulwod_w_h(__m128i _1, __m128i _2) {
2817   return (__m128i)__builtin_lsx_vmulwod_w_h((v8i16)_1, (v8i16)_2);
2818 }
2819 
2820 extern __inline
2821     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2822     __lsx_vmulwod_h_b(__m128i _1, __m128i _2) {
2823   return (__m128i)__builtin_lsx_vmulwod_h_b((v16i8)_1, (v16i8)_2);
2824 }
2825 
2826 extern __inline
2827     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2828     __lsx_vmulwev_d_wu(__m128i _1, __m128i _2) {
2829   return (__m128i)__builtin_lsx_vmulwev_d_wu((v4u32)_1, (v4u32)_2);
2830 }
2831 
2832 extern __inline
2833     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2834     __lsx_vmulwev_w_hu(__m128i _1, __m128i _2) {
2835   return (__m128i)__builtin_lsx_vmulwev_w_hu((v8u16)_1, (v8u16)_2);
2836 }
2837 
2838 extern __inline
2839     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2840     __lsx_vmulwev_h_bu(__m128i _1, __m128i _2) {
2841   return (__m128i)__builtin_lsx_vmulwev_h_bu((v16u8)_1, (v16u8)_2);
2842 }
2843 
2844 extern __inline
2845     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2846     __lsx_vmulwod_d_wu(__m128i _1, __m128i _2) {
2847   return (__m128i)__builtin_lsx_vmulwod_d_wu((v4u32)_1, (v4u32)_2);
2848 }
2849 
2850 extern __inline
2851     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2852     __lsx_vmulwod_w_hu(__m128i _1, __m128i _2) {
2853   return (__m128i)__builtin_lsx_vmulwod_w_hu((v8u16)_1, (v8u16)_2);
2854 }
2855 
2856 extern __inline
2857     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2858     __lsx_vmulwod_h_bu(__m128i _1, __m128i _2) {
2859   return (__m128i)__builtin_lsx_vmulwod_h_bu((v16u8)_1, (v16u8)_2);
2860 }
2861 
2862 extern __inline
2863     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2864     __lsx_vmulwev_d_wu_w(__m128i _1, __m128i _2) {
2865   return (__m128i)__builtin_lsx_vmulwev_d_wu_w((v4u32)_1, (v4i32)_2);
2866 }
2867 
2868 extern __inline
2869     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2870     __lsx_vmulwev_w_hu_h(__m128i _1, __m128i _2) {
2871   return (__m128i)__builtin_lsx_vmulwev_w_hu_h((v8u16)_1, (v8i16)_2);
2872 }
2873 
2874 extern __inline
2875     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2876     __lsx_vmulwev_h_bu_b(__m128i _1, __m128i _2) {
2877   return (__m128i)__builtin_lsx_vmulwev_h_bu_b((v16u8)_1, (v16i8)_2);
2878 }
2879 
2880 extern __inline
2881     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2882     __lsx_vmulwod_d_wu_w(__m128i _1, __m128i _2) {
2883   return (__m128i)__builtin_lsx_vmulwod_d_wu_w((v4u32)_1, (v4i32)_2);
2884 }
2885 
2886 extern __inline
2887     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2888     __lsx_vmulwod_w_hu_h(__m128i _1, __m128i _2) {
2889   return (__m128i)__builtin_lsx_vmulwod_w_hu_h((v8u16)_1, (v8i16)_2);
2890 }
2891 
2892 extern __inline
2893     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2894     __lsx_vmulwod_h_bu_b(__m128i _1, __m128i _2) {
2895   return (__m128i)__builtin_lsx_vmulwod_h_bu_b((v16u8)_1, (v16i8)_2);
2896 }
2897 
2898 extern __inline
2899     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2900     __lsx_vmulwev_q_d(__m128i _1, __m128i _2) {
2901   return (__m128i)__builtin_lsx_vmulwev_q_d((v2i64)_1, (v2i64)_2);
2902 }
2903 
2904 extern __inline
2905     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2906     __lsx_vmulwod_q_d(__m128i _1, __m128i _2) {
2907   return (__m128i)__builtin_lsx_vmulwod_q_d((v2i64)_1, (v2i64)_2);
2908 }
2909 
2910 extern __inline
2911     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2912     __lsx_vmulwev_q_du(__m128i _1, __m128i _2) {
2913   return (__m128i)__builtin_lsx_vmulwev_q_du((v2u64)_1, (v2u64)_2);
2914 }
2915 
2916 extern __inline
2917     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2918     __lsx_vmulwod_q_du(__m128i _1, __m128i _2) {
2919   return (__m128i)__builtin_lsx_vmulwod_q_du((v2u64)_1, (v2u64)_2);
2920 }
2921 
2922 extern __inline
2923     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2924     __lsx_vmulwev_q_du_d(__m128i _1, __m128i _2) {
2925   return (__m128i)__builtin_lsx_vmulwev_q_du_d((v2u64)_1, (v2i64)_2);
2926 }
2927 
2928 extern __inline
2929     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2930     __lsx_vmulwod_q_du_d(__m128i _1, __m128i _2) {
2931   return (__m128i)__builtin_lsx_vmulwod_q_du_d((v2u64)_1, (v2i64)_2);
2932 }
2933 
2934 extern __inline
2935     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2936     __lsx_vhaddw_q_d(__m128i _1, __m128i _2) {
2937   return (__m128i)__builtin_lsx_vhaddw_q_d((v2i64)_1, (v2i64)_2);
2938 }
2939 
2940 extern __inline
2941     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2942     __lsx_vhaddw_qu_du(__m128i _1, __m128i _2) {
2943   return (__m128i)__builtin_lsx_vhaddw_qu_du((v2u64)_1, (v2u64)_2);
2944 }
2945 
2946 extern __inline
2947     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2948     __lsx_vhsubw_q_d(__m128i _1, __m128i _2) {
2949   return (__m128i)__builtin_lsx_vhsubw_q_d((v2i64)_1, (v2i64)_2);
2950 }
2951 
2952 extern __inline
2953     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2954     __lsx_vhsubw_qu_du(__m128i _1, __m128i _2) {
2955   return (__m128i)__builtin_lsx_vhsubw_qu_du((v2u64)_1, (v2u64)_2);
2956 }
2957 
2958 extern __inline
2959     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2960     __lsx_vmaddwev_d_w(__m128i _1, __m128i _2, __m128i _3) {
2961   return (__m128i)__builtin_lsx_vmaddwev_d_w((v2i64)_1, (v4i32)_2, (v4i32)_3);
2962 }
2963 
2964 extern __inline
2965     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2966     __lsx_vmaddwev_w_h(__m128i _1, __m128i _2, __m128i _3) {
2967   return (__m128i)__builtin_lsx_vmaddwev_w_h((v4i32)_1, (v8i16)_2, (v8i16)_3);
2968 }
2969 
2970 extern __inline
2971     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2972     __lsx_vmaddwev_h_b(__m128i _1, __m128i _2, __m128i _3) {
2973   return (__m128i)__builtin_lsx_vmaddwev_h_b((v8i16)_1, (v16i8)_2, (v16i8)_3);
2974 }
2975 
2976 extern __inline
2977     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2978     __lsx_vmaddwev_d_wu(__m128i _1, __m128i _2, __m128i _3) {
2979   return (__m128i)__builtin_lsx_vmaddwev_d_wu((v2u64)_1, (v4u32)_2, (v4u32)_3);
2980 }
2981 
2982 extern __inline
2983     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2984     __lsx_vmaddwev_w_hu(__m128i _1, __m128i _2, __m128i _3) {
2985   return (__m128i)__builtin_lsx_vmaddwev_w_hu((v4u32)_1, (v8u16)_2, (v8u16)_3);
2986 }
2987 
2988 extern __inline
2989     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2990     __lsx_vmaddwev_h_bu(__m128i _1, __m128i _2, __m128i _3) {
2991   return (__m128i)__builtin_lsx_vmaddwev_h_bu((v8u16)_1, (v16u8)_2, (v16u8)_3);
2992 }
2993 
2994 extern __inline
2995     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
2996     __lsx_vmaddwod_d_w(__m128i _1, __m128i _2, __m128i _3) {
2997   return (__m128i)__builtin_lsx_vmaddwod_d_w((v2i64)_1, (v4i32)_2, (v4i32)_3);
2998 }
2999 
3000 extern __inline
3001     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3002     __lsx_vmaddwod_w_h(__m128i _1, __m128i _2, __m128i _3) {
3003   return (__m128i)__builtin_lsx_vmaddwod_w_h((v4i32)_1, (v8i16)_2, (v8i16)_3);
3004 }
3005 
3006 extern __inline
3007     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3008     __lsx_vmaddwod_h_b(__m128i _1, __m128i _2, __m128i _3) {
3009   return (__m128i)__builtin_lsx_vmaddwod_h_b((v8i16)_1, (v16i8)_2, (v16i8)_3);
3010 }
3011 
3012 extern __inline
3013     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3014     __lsx_vmaddwod_d_wu(__m128i _1, __m128i _2, __m128i _3) {
3015   return (__m128i)__builtin_lsx_vmaddwod_d_wu((v2u64)_1, (v4u32)_2, (v4u32)_3);
3016 }
3017 
3018 extern __inline
3019     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3020     __lsx_vmaddwod_w_hu(__m128i _1, __m128i _2, __m128i _3) {
3021   return (__m128i)__builtin_lsx_vmaddwod_w_hu((v4u32)_1, (v8u16)_2, (v8u16)_3);
3022 }
3023 
3024 extern __inline
3025     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3026     __lsx_vmaddwod_h_bu(__m128i _1, __m128i _2, __m128i _3) {
3027   return (__m128i)__builtin_lsx_vmaddwod_h_bu((v8u16)_1, (v16u8)_2, (v16u8)_3);
3028 }
3029 
3030 extern __inline
3031     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3032     __lsx_vmaddwev_d_wu_w(__m128i _1, __m128i _2, __m128i _3) {
3033   return (__m128i)__builtin_lsx_vmaddwev_d_wu_w((v2i64)_1, (v4u32)_2,
3034                                                 (v4i32)_3);
3035 }
3036 
3037 extern __inline
3038     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3039     __lsx_vmaddwev_w_hu_h(__m128i _1, __m128i _2, __m128i _3) {
3040   return (__m128i)__builtin_lsx_vmaddwev_w_hu_h((v4i32)_1, (v8u16)_2,
3041                                                 (v8i16)_3);
3042 }
3043 
3044 extern __inline
3045     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3046     __lsx_vmaddwev_h_bu_b(__m128i _1, __m128i _2, __m128i _3) {
3047   return (__m128i)__builtin_lsx_vmaddwev_h_bu_b((v8i16)_1, (v16u8)_2,
3048                                                 (v16i8)_3);
3049 }
3050 
3051 extern __inline
3052     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3053     __lsx_vmaddwod_d_wu_w(__m128i _1, __m128i _2, __m128i _3) {
3054   return (__m128i)__builtin_lsx_vmaddwod_d_wu_w((v2i64)_1, (v4u32)_2,
3055                                                 (v4i32)_3);
3056 }
3057 
3058 extern __inline
3059     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3060     __lsx_vmaddwod_w_hu_h(__m128i _1, __m128i _2, __m128i _3) {
3061   return (__m128i)__builtin_lsx_vmaddwod_w_hu_h((v4i32)_1, (v8u16)_2,
3062                                                 (v8i16)_3);
3063 }
3064 
3065 extern __inline
3066     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3067     __lsx_vmaddwod_h_bu_b(__m128i _1, __m128i _2, __m128i _3) {
3068   return (__m128i)__builtin_lsx_vmaddwod_h_bu_b((v8i16)_1, (v16u8)_2,
3069                                                 (v16i8)_3);
3070 }
3071 
3072 extern __inline
3073     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3074     __lsx_vmaddwev_q_d(__m128i _1, __m128i _2, __m128i _3) {
3075   return (__m128i)__builtin_lsx_vmaddwev_q_d((v2i64)_1, (v2i64)_2, (v2i64)_3);
3076 }
3077 
3078 extern __inline
3079     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3080     __lsx_vmaddwod_q_d(__m128i _1, __m128i _2, __m128i _3) {
3081   return (__m128i)__builtin_lsx_vmaddwod_q_d((v2i64)_1, (v2i64)_2, (v2i64)_3);
3082 }
3083 
3084 extern __inline
3085     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3086     __lsx_vmaddwev_q_du(__m128i _1, __m128i _2, __m128i _3) {
3087   return (__m128i)__builtin_lsx_vmaddwev_q_du((v2u64)_1, (v2u64)_2, (v2u64)_3);
3088 }
3089 
3090 extern __inline
3091     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3092     __lsx_vmaddwod_q_du(__m128i _1, __m128i _2, __m128i _3) {
3093   return (__m128i)__builtin_lsx_vmaddwod_q_du((v2u64)_1, (v2u64)_2, (v2u64)_3);
3094 }
3095 
3096 extern __inline
3097     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3098     __lsx_vmaddwev_q_du_d(__m128i _1, __m128i _2, __m128i _3) {
3099   return (__m128i)__builtin_lsx_vmaddwev_q_du_d((v2i64)_1, (v2u64)_2,
3100                                                 (v2i64)_3);
3101 }
3102 
3103 extern __inline
3104     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3105     __lsx_vmaddwod_q_du_d(__m128i _1, __m128i _2, __m128i _3) {
3106   return (__m128i)__builtin_lsx_vmaddwod_q_du_d((v2i64)_1, (v2u64)_2,
3107                                                 (v2i64)_3);
3108 }
3109 
3110 extern __inline
3111     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3112     __lsx_vrotr_b(__m128i _1, __m128i _2) {
3113   return (__m128i)__builtin_lsx_vrotr_b((v16i8)_1, (v16i8)_2);
3114 }
3115 
3116 extern __inline
3117     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3118     __lsx_vrotr_h(__m128i _1, __m128i _2) {
3119   return (__m128i)__builtin_lsx_vrotr_h((v8i16)_1, (v8i16)_2);
3120 }
3121 
3122 extern __inline
3123     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3124     __lsx_vrotr_w(__m128i _1, __m128i _2) {
3125   return (__m128i)__builtin_lsx_vrotr_w((v4i32)_1, (v4i32)_2);
3126 }
3127 
3128 extern __inline
3129     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3130     __lsx_vrotr_d(__m128i _1, __m128i _2) {
3131   return (__m128i)__builtin_lsx_vrotr_d((v2i64)_1, (v2i64)_2);
3132 }
3133 
3134 extern __inline
3135     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3136     __lsx_vadd_q(__m128i _1, __m128i _2) {
3137   return (__m128i)__builtin_lsx_vadd_q((v2i64)_1, (v2i64)_2);
3138 }
3139 
3140 extern __inline
3141     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3142     __lsx_vsub_q(__m128i _1, __m128i _2) {
3143   return (__m128i)__builtin_lsx_vsub_q((v2i64)_1, (v2i64)_2);
3144 }
3145 
3146 #define __lsx_vldrepl_b(/*void **/ _1, /*si12*/ _2)                            \
3147   ((__m128i)__builtin_lsx_vldrepl_b((void const *)(_1), (_2)))
3148 
3149 #define __lsx_vldrepl_h(/*void **/ _1, /*si11*/ _2)                            \
3150   ((__m128i)__builtin_lsx_vldrepl_h((void const *)(_1), (_2)))
3151 
3152 #define __lsx_vldrepl_w(/*void **/ _1, /*si10*/ _2)                            \
3153   ((__m128i)__builtin_lsx_vldrepl_w((void const *)(_1), (_2)))
3154 
3155 #define __lsx_vldrepl_d(/*void **/ _1, /*si9*/ _2)                             \
3156   ((__m128i)__builtin_lsx_vldrepl_d((void const *)(_1), (_2)))
3157 
3158 extern __inline
3159     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3160     __lsx_vmskgez_b(__m128i _1) {
3161   return (__m128i)__builtin_lsx_vmskgez_b((v16i8)_1);
3162 }
3163 
3164 extern __inline
3165     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3166     __lsx_vmsknz_b(__m128i _1) {
3167   return (__m128i)__builtin_lsx_vmsknz_b((v16i8)_1);
3168 }
3169 
3170 extern __inline
3171     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3172     __lsx_vexth_h_b(__m128i _1) {
3173   return (__m128i)__builtin_lsx_vexth_h_b((v16i8)_1);
3174 }
3175 
3176 extern __inline
3177     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3178     __lsx_vexth_w_h(__m128i _1) {
3179   return (__m128i)__builtin_lsx_vexth_w_h((v8i16)_1);
3180 }
3181 
3182 extern __inline
3183     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3184     __lsx_vexth_d_w(__m128i _1) {
3185   return (__m128i)__builtin_lsx_vexth_d_w((v4i32)_1);
3186 }
3187 
3188 extern __inline
3189     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3190     __lsx_vexth_q_d(__m128i _1) {
3191   return (__m128i)__builtin_lsx_vexth_q_d((v2i64)_1);
3192 }
3193 
3194 extern __inline
3195     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3196     __lsx_vexth_hu_bu(__m128i _1) {
3197   return (__m128i)__builtin_lsx_vexth_hu_bu((v16u8)_1);
3198 }
3199 
3200 extern __inline
3201     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3202     __lsx_vexth_wu_hu(__m128i _1) {
3203   return (__m128i)__builtin_lsx_vexth_wu_hu((v8u16)_1);
3204 }
3205 
3206 extern __inline
3207     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3208     __lsx_vexth_du_wu(__m128i _1) {
3209   return (__m128i)__builtin_lsx_vexth_du_wu((v4u32)_1);
3210 }
3211 
3212 extern __inline
3213     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3214     __lsx_vexth_qu_du(__m128i _1) {
3215   return (__m128i)__builtin_lsx_vexth_qu_du((v2u64)_1);
3216 }
3217 
3218 #define __lsx_vrotri_b(/*__m128i*/ _1, /*ui3*/ _2)                             \
3219   ((__m128i)__builtin_lsx_vrotri_b((v16i8)(_1), (_2)))
3220 
3221 #define __lsx_vrotri_h(/*__m128i*/ _1, /*ui4*/ _2)                             \
3222   ((__m128i)__builtin_lsx_vrotri_h((v8i16)(_1), (_2)))
3223 
3224 #define __lsx_vrotri_w(/*__m128i*/ _1, /*ui5*/ _2)                             \
3225   ((__m128i)__builtin_lsx_vrotri_w((v4i32)(_1), (_2)))
3226 
3227 #define __lsx_vrotri_d(/*__m128i*/ _1, /*ui6*/ _2)                             \
3228   ((__m128i)__builtin_lsx_vrotri_d((v2i64)(_1), (_2)))
3229 
3230 extern __inline
3231     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3232     __lsx_vextl_q_d(__m128i _1) {
3233   return (__m128i)__builtin_lsx_vextl_q_d((v2i64)_1);
3234 }
3235 
3236 #define __lsx_vsrlni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)           \
3237   ((__m128i)__builtin_lsx_vsrlni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3238 
3239 #define __lsx_vsrlni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)           \
3240   ((__m128i)__builtin_lsx_vsrlni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3241 
3242 #define __lsx_vsrlni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)           \
3243   ((__m128i)__builtin_lsx_vsrlni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3244 
3245 #define __lsx_vsrlni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)           \
3246   ((__m128i)__builtin_lsx_vsrlni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3247 
3248 #define __lsx_vsrlrni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)          \
3249   ((__m128i)__builtin_lsx_vsrlrni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3250 
3251 #define __lsx_vsrlrni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)          \
3252   ((__m128i)__builtin_lsx_vsrlrni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3253 
3254 #define __lsx_vsrlrni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)          \
3255   ((__m128i)__builtin_lsx_vsrlrni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3256 
3257 #define __lsx_vsrlrni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)          \
3258   ((__m128i)__builtin_lsx_vsrlrni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3259 
3260 #define __lsx_vssrlni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)          \
3261   ((__m128i)__builtin_lsx_vssrlni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3262 
3263 #define __lsx_vssrlni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)          \
3264   ((__m128i)__builtin_lsx_vssrlni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3265 
3266 #define __lsx_vssrlni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)          \
3267   ((__m128i)__builtin_lsx_vssrlni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3268 
3269 #define __lsx_vssrlni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)          \
3270   ((__m128i)__builtin_lsx_vssrlni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3271 
3272 #define __lsx_vssrlni_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)         \
3273   ((__m128i)__builtin_lsx_vssrlni_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))
3274 
3275 #define __lsx_vssrlni_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)         \
3276   ((__m128i)__builtin_lsx_vssrlni_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))
3277 
3278 #define __lsx_vssrlni_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)         \
3279   ((__m128i)__builtin_lsx_vssrlni_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))
3280 
3281 #define __lsx_vssrlni_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)         \
3282   ((__m128i)__builtin_lsx_vssrlni_du_q((v2u64)(_1), (v2i64)(_2), (_3)))
3283 
3284 #define __lsx_vssrlrni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)         \
3285   ((__m128i)__builtin_lsx_vssrlrni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3286 
3287 #define __lsx_vssrlrni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)         \
3288   ((__m128i)__builtin_lsx_vssrlrni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3289 
3290 #define __lsx_vssrlrni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)         \
3291   ((__m128i)__builtin_lsx_vssrlrni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3292 
3293 #define __lsx_vssrlrni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)         \
3294   ((__m128i)__builtin_lsx_vssrlrni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3295 
3296 #define __lsx_vssrlrni_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)        \
3297   ((__m128i)__builtin_lsx_vssrlrni_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))
3298 
3299 #define __lsx_vssrlrni_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)        \
3300   ((__m128i)__builtin_lsx_vssrlrni_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))
3301 
3302 #define __lsx_vssrlrni_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)        \
3303   ((__m128i)__builtin_lsx_vssrlrni_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))
3304 
3305 #define __lsx_vssrlrni_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)        \
3306   ((__m128i)__builtin_lsx_vssrlrni_du_q((v2u64)(_1), (v2i64)(_2), (_3)))
3307 
3308 #define __lsx_vsrani_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)           \
3309   ((__m128i)__builtin_lsx_vsrani_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3310 
3311 #define __lsx_vsrani_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)           \
3312   ((__m128i)__builtin_lsx_vsrani_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3313 
3314 #define __lsx_vsrani_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)           \
3315   ((__m128i)__builtin_lsx_vsrani_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3316 
3317 #define __lsx_vsrani_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)           \
3318   ((__m128i)__builtin_lsx_vsrani_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3319 
3320 #define __lsx_vsrarni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)          \
3321   ((__m128i)__builtin_lsx_vsrarni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3322 
3323 #define __lsx_vsrarni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)          \
3324   ((__m128i)__builtin_lsx_vsrarni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3325 
3326 #define __lsx_vsrarni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)          \
3327   ((__m128i)__builtin_lsx_vsrarni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3328 
3329 #define __lsx_vsrarni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)          \
3330   ((__m128i)__builtin_lsx_vsrarni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3331 
3332 #define __lsx_vssrani_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)          \
3333   ((__m128i)__builtin_lsx_vssrani_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3334 
3335 #define __lsx_vssrani_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)          \
3336   ((__m128i)__builtin_lsx_vssrani_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3337 
3338 #define __lsx_vssrani_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)          \
3339   ((__m128i)__builtin_lsx_vssrani_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3340 
3341 #define __lsx_vssrani_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)          \
3342   ((__m128i)__builtin_lsx_vssrani_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3343 
3344 #define __lsx_vssrani_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)         \
3345   ((__m128i)__builtin_lsx_vssrani_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))
3346 
3347 #define __lsx_vssrani_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)         \
3348   ((__m128i)__builtin_lsx_vssrani_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))
3349 
3350 #define __lsx_vssrani_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)         \
3351   ((__m128i)__builtin_lsx_vssrani_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))
3352 
3353 #define __lsx_vssrani_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)         \
3354   ((__m128i)__builtin_lsx_vssrani_du_q((v2u64)(_1), (v2i64)(_2), (_3)))
3355 
3356 #define __lsx_vssrarni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)         \
3357   ((__m128i)__builtin_lsx_vssrarni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3358 
3359 #define __lsx_vssrarni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)         \
3360   ((__m128i)__builtin_lsx_vssrarni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3361 
3362 #define __lsx_vssrarni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)         \
3363   ((__m128i)__builtin_lsx_vssrarni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3364 
3365 #define __lsx_vssrarni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)         \
3366   ((__m128i)__builtin_lsx_vssrarni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3367 
3368 #define __lsx_vssrarni_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3)        \
3369   ((__m128i)__builtin_lsx_vssrarni_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))
3370 
3371 #define __lsx_vssrarni_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3)        \
3372   ((__m128i)__builtin_lsx_vssrarni_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))
3373 
3374 #define __lsx_vssrarni_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3)        \
3375   ((__m128i)__builtin_lsx_vssrarni_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))
3376 
3377 #define __lsx_vssrarni_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3)        \
3378   ((__m128i)__builtin_lsx_vssrarni_du_q((v2u64)(_1), (v2i64)(_2), (_3)))
3379 
3380 #define __lsx_vpermi_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3)             \
3381   ((__m128i)__builtin_lsx_vpermi_w((v4i32)(_1), (v4i32)(_2), (_3)))
3382 
3383 #define __lsx_vld(/*void **/ _1, /*si12*/ _2)                                  \
3384   ((__m128i)__builtin_lsx_vld((void const *)(_1), (_2)))
3385 
3386 #define __lsx_vst(/*__m128i*/ _1, /*void **/ _2, /*si12*/ _3)                  \
3387   ((void)__builtin_lsx_vst((v16i8)(_1), (void *)(_2), (_3)))
3388 
3389 extern __inline
3390     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3391     __lsx_vssrlrn_b_h(__m128i _1, __m128i _2) {
3392   return (__m128i)__builtin_lsx_vssrlrn_b_h((v8i16)_1, (v8i16)_2);
3393 }
3394 
3395 extern __inline
3396     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3397     __lsx_vssrlrn_h_w(__m128i _1, __m128i _2) {
3398   return (__m128i)__builtin_lsx_vssrlrn_h_w((v4i32)_1, (v4i32)_2);
3399 }
3400 
3401 extern __inline
3402     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3403     __lsx_vssrlrn_w_d(__m128i _1, __m128i _2) {
3404   return (__m128i)__builtin_lsx_vssrlrn_w_d((v2i64)_1, (v2i64)_2);
3405 }
3406 
3407 extern __inline
3408     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3409     __lsx_vssrln_b_h(__m128i _1, __m128i _2) {
3410   return (__m128i)__builtin_lsx_vssrln_b_h((v8i16)_1, (v8i16)_2);
3411 }
3412 
3413 extern __inline
3414     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3415     __lsx_vssrln_h_w(__m128i _1, __m128i _2) {
3416   return (__m128i)__builtin_lsx_vssrln_h_w((v4i32)_1, (v4i32)_2);
3417 }
3418 
3419 extern __inline
3420     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3421     __lsx_vssrln_w_d(__m128i _1, __m128i _2) {
3422   return (__m128i)__builtin_lsx_vssrln_w_d((v2i64)_1, (v2i64)_2);
3423 }
3424 
3425 extern __inline
3426     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3427     __lsx_vorn_v(__m128i _1, __m128i _2) {
3428   return (__m128i)__builtin_lsx_vorn_v((v16i8)_1, (v16i8)_2);
3429 }
3430 
3431 #define __lsx_vldi(/*i13*/ _1) ((__m128i)__builtin_lsx_vldi((_1)))
3432 
3433 extern __inline
3434     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3435     __lsx_vshuf_b(__m128i _1, __m128i _2, __m128i _3) {
3436   return (__m128i)__builtin_lsx_vshuf_b((v16i8)_1, (v16i8)_2, (v16i8)_3);
3437 }
3438 
3439 extern __inline
3440     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3441     __lsx_vldx(void const *_1, long int _2) {
3442   return (__m128i)__builtin_lsx_vldx((void const *)_1, (long int)_2);
3443 }
3444 
3445 extern __inline
3446     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) void
3447     __lsx_vstx(__m128i _1, void *_2, long int _3) {
3448   return (void)__builtin_lsx_vstx((v16i8)_1, (void *)_2, (long int)_3);
3449 }
3450 
3451 extern __inline
3452     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3453     __lsx_vextl_qu_du(__m128i _1) {
3454   return (__m128i)__builtin_lsx_vextl_qu_du((v2u64)_1);
3455 }
3456 
3457 #define __lsx_bnz_b(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_b((v16u8)(_1)))
3458 
3459 #define __lsx_bnz_d(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_d((v2u64)(_1)))
3460 
3461 #define __lsx_bnz_h(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_h((v8u16)(_1)))
3462 
3463 #define __lsx_bnz_v(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_v((v16u8)(_1)))
3464 
3465 #define __lsx_bnz_w(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_w((v4u32)(_1)))
3466 
3467 #define __lsx_bz_b(/*__m128i*/ _1) ((int)__builtin_lsx_bz_b((v16u8)(_1)))
3468 
3469 #define __lsx_bz_d(/*__m128i*/ _1) ((int)__builtin_lsx_bz_d((v2u64)(_1)))
3470 
3471 #define __lsx_bz_h(/*__m128i*/ _1) ((int)__builtin_lsx_bz_h((v8u16)(_1)))
3472 
3473 #define __lsx_bz_v(/*__m128i*/ _1) ((int)__builtin_lsx_bz_v((v16u8)(_1)))
3474 
3475 #define __lsx_bz_w(/*__m128i*/ _1) ((int)__builtin_lsx_bz_w((v4u32)(_1)))
3476 
3477 extern __inline
3478     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3479     __lsx_vfcmp_caf_d(__m128d _1, __m128d _2) {
3480   return (__m128i)__builtin_lsx_vfcmp_caf_d((v2f64)_1, (v2f64)_2);
3481 }
3482 
3483 extern __inline
3484     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3485     __lsx_vfcmp_caf_s(__m128 _1, __m128 _2) {
3486   return (__m128i)__builtin_lsx_vfcmp_caf_s((v4f32)_1, (v4f32)_2);
3487 }
3488 
3489 extern __inline
3490     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3491     __lsx_vfcmp_ceq_d(__m128d _1, __m128d _2) {
3492   return (__m128i)__builtin_lsx_vfcmp_ceq_d((v2f64)_1, (v2f64)_2);
3493 }
3494 
3495 extern __inline
3496     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3497     __lsx_vfcmp_ceq_s(__m128 _1, __m128 _2) {
3498   return (__m128i)__builtin_lsx_vfcmp_ceq_s((v4f32)_1, (v4f32)_2);
3499 }
3500 
3501 extern __inline
3502     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3503     __lsx_vfcmp_cle_d(__m128d _1, __m128d _2) {
3504   return (__m128i)__builtin_lsx_vfcmp_cle_d((v2f64)_1, (v2f64)_2);
3505 }
3506 
3507 extern __inline
3508     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3509     __lsx_vfcmp_cle_s(__m128 _1, __m128 _2) {
3510   return (__m128i)__builtin_lsx_vfcmp_cle_s((v4f32)_1, (v4f32)_2);
3511 }
3512 
3513 extern __inline
3514     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3515     __lsx_vfcmp_clt_d(__m128d _1, __m128d _2) {
3516   return (__m128i)__builtin_lsx_vfcmp_clt_d((v2f64)_1, (v2f64)_2);
3517 }
3518 
3519 extern __inline
3520     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3521     __lsx_vfcmp_clt_s(__m128 _1, __m128 _2) {
3522   return (__m128i)__builtin_lsx_vfcmp_clt_s((v4f32)_1, (v4f32)_2);
3523 }
3524 
3525 extern __inline
3526     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3527     __lsx_vfcmp_cne_d(__m128d _1, __m128d _2) {
3528   return (__m128i)__builtin_lsx_vfcmp_cne_d((v2f64)_1, (v2f64)_2);
3529 }
3530 
3531 extern __inline
3532     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3533     __lsx_vfcmp_cne_s(__m128 _1, __m128 _2) {
3534   return (__m128i)__builtin_lsx_vfcmp_cne_s((v4f32)_1, (v4f32)_2);
3535 }
3536 
3537 extern __inline
3538     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3539     __lsx_vfcmp_cor_d(__m128d _1, __m128d _2) {
3540   return (__m128i)__builtin_lsx_vfcmp_cor_d((v2f64)_1, (v2f64)_2);
3541 }
3542 
3543 extern __inline
3544     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3545     __lsx_vfcmp_cor_s(__m128 _1, __m128 _2) {
3546   return (__m128i)__builtin_lsx_vfcmp_cor_s((v4f32)_1, (v4f32)_2);
3547 }
3548 
3549 extern __inline
3550     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3551     __lsx_vfcmp_cueq_d(__m128d _1, __m128d _2) {
3552   return (__m128i)__builtin_lsx_vfcmp_cueq_d((v2f64)_1, (v2f64)_2);
3553 }
3554 
3555 extern __inline
3556     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3557     __lsx_vfcmp_cueq_s(__m128 _1, __m128 _2) {
3558   return (__m128i)__builtin_lsx_vfcmp_cueq_s((v4f32)_1, (v4f32)_2);
3559 }
3560 
3561 extern __inline
3562     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3563     __lsx_vfcmp_cule_d(__m128d _1, __m128d _2) {
3564   return (__m128i)__builtin_lsx_vfcmp_cule_d((v2f64)_1, (v2f64)_2);
3565 }
3566 
3567 extern __inline
3568     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3569     __lsx_vfcmp_cule_s(__m128 _1, __m128 _2) {
3570   return (__m128i)__builtin_lsx_vfcmp_cule_s((v4f32)_1, (v4f32)_2);
3571 }
3572 
3573 extern __inline
3574     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3575     __lsx_vfcmp_cult_d(__m128d _1, __m128d _2) {
3576   return (__m128i)__builtin_lsx_vfcmp_cult_d((v2f64)_1, (v2f64)_2);
3577 }
3578 
3579 extern __inline
3580     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3581     __lsx_vfcmp_cult_s(__m128 _1, __m128 _2) {
3582   return (__m128i)__builtin_lsx_vfcmp_cult_s((v4f32)_1, (v4f32)_2);
3583 }
3584 
3585 extern __inline
3586     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3587     __lsx_vfcmp_cun_d(__m128d _1, __m128d _2) {
3588   return (__m128i)__builtin_lsx_vfcmp_cun_d((v2f64)_1, (v2f64)_2);
3589 }
3590 
3591 extern __inline
3592     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3593     __lsx_vfcmp_cune_d(__m128d _1, __m128d _2) {
3594   return (__m128i)__builtin_lsx_vfcmp_cune_d((v2f64)_1, (v2f64)_2);
3595 }
3596 
3597 extern __inline
3598     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3599     __lsx_vfcmp_cune_s(__m128 _1, __m128 _2) {
3600   return (__m128i)__builtin_lsx_vfcmp_cune_s((v4f32)_1, (v4f32)_2);
3601 }
3602 
3603 extern __inline
3604     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3605     __lsx_vfcmp_cun_s(__m128 _1, __m128 _2) {
3606   return (__m128i)__builtin_lsx_vfcmp_cun_s((v4f32)_1, (v4f32)_2);
3607 }
3608 
3609 extern __inline
3610     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3611     __lsx_vfcmp_saf_d(__m128d _1, __m128d _2) {
3612   return (__m128i)__builtin_lsx_vfcmp_saf_d((v2f64)_1, (v2f64)_2);
3613 }
3614 
3615 extern __inline
3616     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3617     __lsx_vfcmp_saf_s(__m128 _1, __m128 _2) {
3618   return (__m128i)__builtin_lsx_vfcmp_saf_s((v4f32)_1, (v4f32)_2);
3619 }
3620 
3621 extern __inline
3622     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3623     __lsx_vfcmp_seq_d(__m128d _1, __m128d _2) {
3624   return (__m128i)__builtin_lsx_vfcmp_seq_d((v2f64)_1, (v2f64)_2);
3625 }
3626 
3627 extern __inline
3628     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3629     __lsx_vfcmp_seq_s(__m128 _1, __m128 _2) {
3630   return (__m128i)__builtin_lsx_vfcmp_seq_s((v4f32)_1, (v4f32)_2);
3631 }
3632 
3633 extern __inline
3634     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3635     __lsx_vfcmp_sle_d(__m128d _1, __m128d _2) {
3636   return (__m128i)__builtin_lsx_vfcmp_sle_d((v2f64)_1, (v2f64)_2);
3637 }
3638 
3639 extern __inline
3640     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3641     __lsx_vfcmp_sle_s(__m128 _1, __m128 _2) {
3642   return (__m128i)__builtin_lsx_vfcmp_sle_s((v4f32)_1, (v4f32)_2);
3643 }
3644 
3645 extern __inline
3646     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3647     __lsx_vfcmp_slt_d(__m128d _1, __m128d _2) {
3648   return (__m128i)__builtin_lsx_vfcmp_slt_d((v2f64)_1, (v2f64)_2);
3649 }
3650 
3651 extern __inline
3652     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3653     __lsx_vfcmp_slt_s(__m128 _1, __m128 _2) {
3654   return (__m128i)__builtin_lsx_vfcmp_slt_s((v4f32)_1, (v4f32)_2);
3655 }
3656 
3657 extern __inline
3658     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3659     __lsx_vfcmp_sne_d(__m128d _1, __m128d _2) {
3660   return (__m128i)__builtin_lsx_vfcmp_sne_d((v2f64)_1, (v2f64)_2);
3661 }
3662 
3663 extern __inline
3664     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3665     __lsx_vfcmp_sne_s(__m128 _1, __m128 _2) {
3666   return (__m128i)__builtin_lsx_vfcmp_sne_s((v4f32)_1, (v4f32)_2);
3667 }
3668 
3669 extern __inline
3670     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3671     __lsx_vfcmp_sor_d(__m128d _1, __m128d _2) {
3672   return (__m128i)__builtin_lsx_vfcmp_sor_d((v2f64)_1, (v2f64)_2);
3673 }
3674 
3675 extern __inline
3676     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3677     __lsx_vfcmp_sor_s(__m128 _1, __m128 _2) {
3678   return (__m128i)__builtin_lsx_vfcmp_sor_s((v4f32)_1, (v4f32)_2);
3679 }
3680 
3681 extern __inline
3682     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3683     __lsx_vfcmp_sueq_d(__m128d _1, __m128d _2) {
3684   return (__m128i)__builtin_lsx_vfcmp_sueq_d((v2f64)_1, (v2f64)_2);
3685 }
3686 
3687 extern __inline
3688     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3689     __lsx_vfcmp_sueq_s(__m128 _1, __m128 _2) {
3690   return (__m128i)__builtin_lsx_vfcmp_sueq_s((v4f32)_1, (v4f32)_2);
3691 }
3692 
3693 extern __inline
3694     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3695     __lsx_vfcmp_sule_d(__m128d _1, __m128d _2) {
3696   return (__m128i)__builtin_lsx_vfcmp_sule_d((v2f64)_1, (v2f64)_2);
3697 }
3698 
3699 extern __inline
3700     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3701     __lsx_vfcmp_sule_s(__m128 _1, __m128 _2) {
3702   return (__m128i)__builtin_lsx_vfcmp_sule_s((v4f32)_1, (v4f32)_2);
3703 }
3704 
3705 extern __inline
3706     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3707     __lsx_vfcmp_sult_d(__m128d _1, __m128d _2) {
3708   return (__m128i)__builtin_lsx_vfcmp_sult_d((v2f64)_1, (v2f64)_2);
3709 }
3710 
3711 extern __inline
3712     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3713     __lsx_vfcmp_sult_s(__m128 _1, __m128 _2) {
3714   return (__m128i)__builtin_lsx_vfcmp_sult_s((v4f32)_1, (v4f32)_2);
3715 }
3716 
3717 extern __inline
3718     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3719     __lsx_vfcmp_sun_d(__m128d _1, __m128d _2) {
3720   return (__m128i)__builtin_lsx_vfcmp_sun_d((v2f64)_1, (v2f64)_2);
3721 }
3722 
3723 extern __inline
3724     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3725     __lsx_vfcmp_sune_d(__m128d _1, __m128d _2) {
3726   return (__m128i)__builtin_lsx_vfcmp_sune_d((v2f64)_1, (v2f64)_2);
3727 }
3728 
3729 extern __inline
3730     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3731     __lsx_vfcmp_sune_s(__m128 _1, __m128 _2) {
3732   return (__m128i)__builtin_lsx_vfcmp_sune_s((v4f32)_1, (v4f32)_2);
3733 }
3734 
3735 extern __inline
3736     __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i
3737     __lsx_vfcmp_sun_s(__m128 _1, __m128 _2) {
3738   return (__m128i)__builtin_lsx_vfcmp_sun_s((v4f32)_1, (v4f32)_2);
3739 }
3740 
3741 #define __lsx_vrepli_b(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_b((_1)))
3742 
3743 #define __lsx_vrepli_d(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_d((_1)))
3744 
3745 #define __lsx_vrepli_h(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_h((_1)))
3746 
3747 #define __lsx_vrepli_w(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_w((_1)))
3748 
3749 #endif /* defined(__loongarch_sx) */
3750 #endif /* _LOONGSON_SXINTRIN_H */
3751