1 /*===------------- lsxintrin.h - LoongArch LSX intrinsics ------------------===
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
7 *===-----------------------------------------------------------------------===
10 #ifndef _LOONGSON_SXINTRIN_H
11 #define _LOONGSON_SXINTRIN_H 1
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)));
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__
));
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
);
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
);
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
);
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
);
63 #define __lsx_vslli_b(/*__m128i*/ _1, /*ui3*/ _2) \
64 ((__m128i)__builtin_lsx_vslli_b((v16i8)(_1), (_2)))
66 #define __lsx_vslli_h(/*__m128i*/ _1, /*ui4*/ _2) \
67 ((__m128i)__builtin_lsx_vslli_h((v8i16)(_1), (_2)))
69 #define __lsx_vslli_w(/*__m128i*/ _1, /*ui5*/ _2) \
70 ((__m128i)__builtin_lsx_vslli_w((v4i32)(_1), (_2)))
72 #define __lsx_vslli_d(/*__m128i*/ _1, /*ui6*/ _2) \
73 ((__m128i)__builtin_lsx_vslli_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
99 #define __lsx_vsrai_b(/*__m128i*/ _1, /*ui3*/ _2) \
100 ((__m128i)__builtin_lsx_vsrai_b((v16i8)(_1), (_2)))
102 #define __lsx_vsrai_h(/*__m128i*/ _1, /*ui4*/ _2) \
103 ((__m128i)__builtin_lsx_vsrai_h((v8i16)(_1), (_2)))
105 #define __lsx_vsrai_w(/*__m128i*/ _1, /*ui5*/ _2) \
106 ((__m128i)__builtin_lsx_vsrai_w((v4i32)(_1), (_2)))
108 #define __lsx_vsrai_d(/*__m128i*/ _1, /*ui6*/ _2) \
109 ((__m128i)__builtin_lsx_vsrai_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
135 #define __lsx_vsrari_b(/*__m128i*/ _1, /*ui3*/ _2) \
136 ((__m128i)__builtin_lsx_vsrari_b((v16i8)(_1), (_2)))
138 #define __lsx_vsrari_h(/*__m128i*/ _1, /*ui4*/ _2) \
139 ((__m128i)__builtin_lsx_vsrari_h((v8i16)(_1), (_2)))
141 #define __lsx_vsrari_w(/*__m128i*/ _1, /*ui5*/ _2) \
142 ((__m128i)__builtin_lsx_vsrari_w((v4i32)(_1), (_2)))
144 #define __lsx_vsrari_d(/*__m128i*/ _1, /*ui6*/ _2) \
145 ((__m128i)__builtin_lsx_vsrari_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
171 #define __lsx_vsrli_b(/*__m128i*/ _1, /*ui3*/ _2) \
172 ((__m128i)__builtin_lsx_vsrli_b((v16i8)(_1), (_2)))
174 #define __lsx_vsrli_h(/*__m128i*/ _1, /*ui4*/ _2) \
175 ((__m128i)__builtin_lsx_vsrli_h((v8i16)(_1), (_2)))
177 #define __lsx_vsrli_w(/*__m128i*/ _1, /*ui5*/ _2) \
178 ((__m128i)__builtin_lsx_vsrli_w((v4i32)(_1), (_2)))
180 #define __lsx_vsrli_d(/*__m128i*/ _1, /*ui6*/ _2) \
181 ((__m128i)__builtin_lsx_vsrli_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
207 #define __lsx_vsrlri_b(/*__m128i*/ _1, /*ui3*/ _2) \
208 ((__m128i)__builtin_lsx_vsrlri_b((v16i8)(_1), (_2)))
210 #define __lsx_vsrlri_h(/*__m128i*/ _1, /*ui4*/ _2) \
211 ((__m128i)__builtin_lsx_vsrlri_h((v8i16)(_1), (_2)))
213 #define __lsx_vsrlri_w(/*__m128i*/ _1, /*ui5*/ _2) \
214 ((__m128i)__builtin_lsx_vsrlri_w((v4i32)(_1), (_2)))
216 #define __lsx_vsrlri_d(/*__m128i*/ _1, /*ui6*/ _2) \
217 ((__m128i)__builtin_lsx_vsrlri_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
243 #define __lsx_vbitclri_b(/*__m128i*/ _1, /*ui3*/ _2) \
244 ((__m128i)__builtin_lsx_vbitclri_b((v16u8)(_1), (_2)))
246 #define __lsx_vbitclri_h(/*__m128i*/ _1, /*ui4*/ _2) \
247 ((__m128i)__builtin_lsx_vbitclri_h((v8u16)(_1), (_2)))
249 #define __lsx_vbitclri_w(/*__m128i*/ _1, /*ui5*/ _2) \
250 ((__m128i)__builtin_lsx_vbitclri_w((v4u32)(_1), (_2)))
252 #define __lsx_vbitclri_d(/*__m128i*/ _1, /*ui6*/ _2) \
253 ((__m128i)__builtin_lsx_vbitclri_d((v2u64)(_1), (_2)))
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
);
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
);
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
);
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
);
279 #define __lsx_vbitseti_b(/*__m128i*/ _1, /*ui3*/ _2) \
280 ((__m128i)__builtin_lsx_vbitseti_b((v16u8)(_1), (_2)))
282 #define __lsx_vbitseti_h(/*__m128i*/ _1, /*ui4*/ _2) \
283 ((__m128i)__builtin_lsx_vbitseti_h((v8u16)(_1), (_2)))
285 #define __lsx_vbitseti_w(/*__m128i*/ _1, /*ui5*/ _2) \
286 ((__m128i)__builtin_lsx_vbitseti_w((v4u32)(_1), (_2)))
288 #define __lsx_vbitseti_d(/*__m128i*/ _1, /*ui6*/ _2) \
289 ((__m128i)__builtin_lsx_vbitseti_d((v2u64)(_1), (_2)))
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
);
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
);
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
);
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
);
315 #define __lsx_vbitrevi_b(/*__m128i*/ _1, /*ui3*/ _2) \
316 ((__m128i)__builtin_lsx_vbitrevi_b((v16u8)(_1), (_2)))
318 #define __lsx_vbitrevi_h(/*__m128i*/ _1, /*ui4*/ _2) \
319 ((__m128i)__builtin_lsx_vbitrevi_h((v8u16)(_1), (_2)))
321 #define __lsx_vbitrevi_w(/*__m128i*/ _1, /*ui5*/ _2) \
322 ((__m128i)__builtin_lsx_vbitrevi_w((v4u32)(_1), (_2)))
324 #define __lsx_vbitrevi_d(/*__m128i*/ _1, /*ui6*/ _2) \
325 ((__m128i)__builtin_lsx_vbitrevi_d((v2u64)(_1), (_2)))
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
);
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
);
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
);
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
);
351 #define __lsx_vaddi_bu(/*__m128i*/ _1, /*ui5*/ _2) \
352 ((__m128i)__builtin_lsx_vaddi_bu((v16i8)(_1), (_2)))
354 #define __lsx_vaddi_hu(/*__m128i*/ _1, /*ui5*/ _2) \
355 ((__m128i)__builtin_lsx_vaddi_hu((v8i16)(_1), (_2)))
357 #define __lsx_vaddi_wu(/*__m128i*/ _1, /*ui5*/ _2) \
358 ((__m128i)__builtin_lsx_vaddi_wu((v4i32)(_1), (_2)))
360 #define __lsx_vaddi_du(/*__m128i*/ _1, /*ui5*/ _2) \
361 ((__m128i)__builtin_lsx_vaddi_du((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
387 #define __lsx_vsubi_bu(/*__m128i*/ _1, /*ui5*/ _2) \
388 ((__m128i)__builtin_lsx_vsubi_bu((v16i8)(_1), (_2)))
390 #define __lsx_vsubi_hu(/*__m128i*/ _1, /*ui5*/ _2) \
391 ((__m128i)__builtin_lsx_vsubi_hu((v8i16)(_1), (_2)))
393 #define __lsx_vsubi_wu(/*__m128i*/ _1, /*ui5*/ _2) \
394 ((__m128i)__builtin_lsx_vsubi_wu((v4i32)(_1), (_2)))
396 #define __lsx_vsubi_du(/*__m128i*/ _1, /*ui5*/ _2) \
397 ((__m128i)__builtin_lsx_vsubi_du((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
423 #define __lsx_vmaxi_b(/*__m128i*/ _1, /*si5*/ _2) \
424 ((__m128i)__builtin_lsx_vmaxi_b((v16i8)(_1), (_2)))
426 #define __lsx_vmaxi_h(/*__m128i*/ _1, /*si5*/ _2) \
427 ((__m128i)__builtin_lsx_vmaxi_h((v8i16)(_1), (_2)))
429 #define __lsx_vmaxi_w(/*__m128i*/ _1, /*si5*/ _2) \
430 ((__m128i)__builtin_lsx_vmaxi_w((v4i32)(_1), (_2)))
432 #define __lsx_vmaxi_d(/*__m128i*/ _1, /*si5*/ _2) \
433 ((__m128i)__builtin_lsx_vmaxi_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
459 #define __lsx_vmaxi_bu(/*__m128i*/ _1, /*ui5*/ _2) \
460 ((__m128i)__builtin_lsx_vmaxi_bu((v16u8)(_1), (_2)))
462 #define __lsx_vmaxi_hu(/*__m128i*/ _1, /*ui5*/ _2) \
463 ((__m128i)__builtin_lsx_vmaxi_hu((v8u16)(_1), (_2)))
465 #define __lsx_vmaxi_wu(/*__m128i*/ _1, /*ui5*/ _2) \
466 ((__m128i)__builtin_lsx_vmaxi_wu((v4u32)(_1), (_2)))
468 #define __lsx_vmaxi_du(/*__m128i*/ _1, /*ui5*/ _2) \
469 ((__m128i)__builtin_lsx_vmaxi_du((v2u64)(_1), (_2)))
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
);
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
);
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
);
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
);
495 #define __lsx_vmini_b(/*__m128i*/ _1, /*si5*/ _2) \
496 ((__m128i)__builtin_lsx_vmini_b((v16i8)(_1), (_2)))
498 #define __lsx_vmini_h(/*__m128i*/ _1, /*si5*/ _2) \
499 ((__m128i)__builtin_lsx_vmini_h((v8i16)(_1), (_2)))
501 #define __lsx_vmini_w(/*__m128i*/ _1, /*si5*/ _2) \
502 ((__m128i)__builtin_lsx_vmini_w((v4i32)(_1), (_2)))
504 #define __lsx_vmini_d(/*__m128i*/ _1, /*si5*/ _2) \
505 ((__m128i)__builtin_lsx_vmini_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
531 #define __lsx_vmini_bu(/*__m128i*/ _1, /*ui5*/ _2) \
532 ((__m128i)__builtin_lsx_vmini_bu((v16u8)(_1), (_2)))
534 #define __lsx_vmini_hu(/*__m128i*/ _1, /*ui5*/ _2) \
535 ((__m128i)__builtin_lsx_vmini_hu((v8u16)(_1), (_2)))
537 #define __lsx_vmini_wu(/*__m128i*/ _1, /*ui5*/ _2) \
538 ((__m128i)__builtin_lsx_vmini_wu((v4u32)(_1), (_2)))
540 #define __lsx_vmini_du(/*__m128i*/ _1, /*ui5*/ _2) \
541 ((__m128i)__builtin_lsx_vmini_du((v2u64)(_1), (_2)))
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
);
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
);
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
);
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
);
567 #define __lsx_vseqi_b(/*__m128i*/ _1, /*si5*/ _2) \
568 ((__m128i)__builtin_lsx_vseqi_b((v16i8)(_1), (_2)))
570 #define __lsx_vseqi_h(/*__m128i*/ _1, /*si5*/ _2) \
571 ((__m128i)__builtin_lsx_vseqi_h((v8i16)(_1), (_2)))
573 #define __lsx_vseqi_w(/*__m128i*/ _1, /*si5*/ _2) \
574 ((__m128i)__builtin_lsx_vseqi_w((v4i32)(_1), (_2)))
576 #define __lsx_vseqi_d(/*__m128i*/ _1, /*si5*/ _2) \
577 ((__m128i)__builtin_lsx_vseqi_d((v2i64)(_1), (_2)))
579 #define __lsx_vslti_b(/*__m128i*/ _1, /*si5*/ _2) \
580 ((__m128i)__builtin_lsx_vslti_b((v16i8)(_1), (_2)))
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
);
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
);
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
);
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
);
606 #define __lsx_vslti_h(/*__m128i*/ _1, /*si5*/ _2) \
607 ((__m128i)__builtin_lsx_vslti_h((v8i16)(_1), (_2)))
609 #define __lsx_vslti_w(/*__m128i*/ _1, /*si5*/ _2) \
610 ((__m128i)__builtin_lsx_vslti_w((v4i32)(_1), (_2)))
612 #define __lsx_vslti_d(/*__m128i*/ _1, /*si5*/ _2) \
613 ((__m128i)__builtin_lsx_vslti_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
639 #define __lsx_vslti_bu(/*__m128i*/ _1, /*ui5*/ _2) \
640 ((__m128i)__builtin_lsx_vslti_bu((v16u8)(_1), (_2)))
642 #define __lsx_vslti_hu(/*__m128i*/ _1, /*ui5*/ _2) \
643 ((__m128i)__builtin_lsx_vslti_hu((v8u16)(_1), (_2)))
645 #define __lsx_vslti_wu(/*__m128i*/ _1, /*ui5*/ _2) \
646 ((__m128i)__builtin_lsx_vslti_wu((v4u32)(_1), (_2)))
648 #define __lsx_vslti_du(/*__m128i*/ _1, /*ui5*/ _2) \
649 ((__m128i)__builtin_lsx_vslti_du((v2u64)(_1), (_2)))
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
);
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
);
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
);
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
);
675 #define __lsx_vslei_b(/*__m128i*/ _1, /*si5*/ _2) \
676 ((__m128i)__builtin_lsx_vslei_b((v16i8)(_1), (_2)))
678 #define __lsx_vslei_h(/*__m128i*/ _1, /*si5*/ _2) \
679 ((__m128i)__builtin_lsx_vslei_h((v8i16)(_1), (_2)))
681 #define __lsx_vslei_w(/*__m128i*/ _1, /*si5*/ _2) \
682 ((__m128i)__builtin_lsx_vslei_w((v4i32)(_1), (_2)))
684 #define __lsx_vslei_d(/*__m128i*/ _1, /*si5*/ _2) \
685 ((__m128i)__builtin_lsx_vslei_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
711 #define __lsx_vslei_bu(/*__m128i*/ _1, /*ui5*/ _2) \
712 ((__m128i)__builtin_lsx_vslei_bu((v16u8)(_1), (_2)))
714 #define __lsx_vslei_hu(/*__m128i*/ _1, /*ui5*/ _2) \
715 ((__m128i)__builtin_lsx_vslei_hu((v8u16)(_1), (_2)))
717 #define __lsx_vslei_wu(/*__m128i*/ _1, /*ui5*/ _2) \
718 ((__m128i)__builtin_lsx_vslei_wu((v4u32)(_1), (_2)))
720 #define __lsx_vslei_du(/*__m128i*/ _1, /*ui5*/ _2) \
721 ((__m128i)__builtin_lsx_vslei_du((v2u64)(_1), (_2)))
723 #define __lsx_vsat_b(/*__m128i*/ _1, /*ui3*/ _2) \
724 ((__m128i)__builtin_lsx_vsat_b((v16i8)(_1), (_2)))
726 #define __lsx_vsat_h(/*__m128i*/ _1, /*ui4*/ _2) \
727 ((__m128i)__builtin_lsx_vsat_h((v8i16)(_1), (_2)))
729 #define __lsx_vsat_w(/*__m128i*/ _1, /*ui5*/ _2) \
730 ((__m128i)__builtin_lsx_vsat_w((v4i32)(_1), (_2)))
732 #define __lsx_vsat_d(/*__m128i*/ _1, /*ui6*/ _2) \
733 ((__m128i)__builtin_lsx_vsat_d((v2i64)(_1), (_2)))
735 #define __lsx_vsat_bu(/*__m128i*/ _1, /*ui3*/ _2) \
736 ((__m128i)__builtin_lsx_vsat_bu((v16u8)(_1), (_2)))
738 #define __lsx_vsat_hu(/*__m128i*/ _1, /*ui4*/ _2) \
739 ((__m128i)__builtin_lsx_vsat_hu((v8u16)(_1), (_2)))
741 #define __lsx_vsat_wu(/*__m128i*/ _1, /*ui5*/ _2) \
742 ((__m128i)__builtin_lsx_vsat_wu((v4u32)(_1), (_2)))
744 #define __lsx_vsat_du(/*__m128i*/ _1, /*ui6*/ _2) \
745 ((__m128i)__builtin_lsx_vsat_du((v2u64)(_1), (_2)))
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
1275 #define __lsx_vreplvei_b(/*__m128i*/ _1, /*ui4*/ _2) \
1276 ((__m128i)__builtin_lsx_vreplvei_b((v16i8)(_1), (_2)))
1278 #define __lsx_vreplvei_h(/*__m128i*/ _1, /*ui3*/ _2) \
1279 ((__m128i)__builtin_lsx_vreplvei_h((v8i16)(_1), (_2)))
1281 #define __lsx_vreplvei_w(/*__m128i*/ _1, /*ui2*/ _2) \
1282 ((__m128i)__builtin_lsx_vreplvei_w((v4i32)(_1), (_2)))
1284 #define __lsx_vreplvei_d(/*__m128i*/ _1, /*ui1*/ _2) \
1285 ((__m128i)__builtin_lsx_vreplvei_d((v2i64)(_1), (_2)))
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
1455 #define __lsx_vandi_b(/*__m128i*/ _1, /*ui8*/ _2) \
1456 ((__m128i)__builtin_lsx_vandi_b((v16u8)(_1), (_2)))
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
);
1464 #define __lsx_vori_b(/*__m128i*/ _1, /*ui8*/ _2) \
1465 ((__m128i)__builtin_lsx_vori_b((v16u8)(_1), (_2)))
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
);
1473 #define __lsx_vnori_b(/*__m128i*/ _1, /*ui8*/ _2) \
1474 ((__m128i)__builtin_lsx_vnori_b((v16u8)(_1), (_2)))
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
);
1482 #define __lsx_vxori_b(/*__m128i*/ _1, /*ui8*/ _2) \
1483 ((__m128i)__builtin_lsx_vxori_b((v16u8)(_1), (_2)))
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
);
1491 #define __lsx_vbitseli_b(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \
1492 ((__m128i)__builtin_lsx_vbitseli_b((v16u8)(_1), (v16u8)(_2), (_3)))
1494 #define __lsx_vshuf4i_b(/*__m128i*/ _1, /*ui8*/ _2) \
1495 ((__m128i)__builtin_lsx_vshuf4i_b((v16i8)(_1), (_2)))
1497 #define __lsx_vshuf4i_h(/*__m128i*/ _1, /*ui8*/ _2) \
1498 ((__m128i)__builtin_lsx_vshuf4i_h((v8i16)(_1), (_2)))
1500 #define __lsx_vshuf4i_w(/*__m128i*/ _1, /*ui8*/ _2) \
1501 ((__m128i)__builtin_lsx_vshuf4i_w((v4i32)(_1), (_2)))
1504 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1505 __lsx_vreplgr2vr_b(int _1
) {
1506 return (__m128i
)__builtin_lsx_vreplgr2vr_b((int)_1
);
1510 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1511 __lsx_vreplgr2vr_h(int _1
) {
1512 return (__m128i
)__builtin_lsx_vreplgr2vr_h((int)_1
);
1516 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1517 __lsx_vreplgr2vr_w(int _1
) {
1518 return (__m128i
)__builtin_lsx_vreplgr2vr_w((int)_1
);
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
);
1528 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1529 __lsx_vpcnt_b(__m128i _1
) {
1530 return (__m128i
)__builtin_lsx_vpcnt_b((v16i8
)_1
);
1534 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1535 __lsx_vpcnt_h(__m128i _1
) {
1536 return (__m128i
)__builtin_lsx_vpcnt_h((v8i16
)_1
);
1540 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1541 __lsx_vpcnt_w(__m128i _1
) {
1542 return (__m128i
)__builtin_lsx_vpcnt_w((v4i32
)_1
);
1546 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1547 __lsx_vpcnt_d(__m128i _1
) {
1548 return (__m128i
)__builtin_lsx_vpcnt_d((v2i64
)_1
);
1552 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1553 __lsx_vclo_b(__m128i _1
) {
1554 return (__m128i
)__builtin_lsx_vclo_b((v16i8
)_1
);
1558 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1559 __lsx_vclo_h(__m128i _1
) {
1560 return (__m128i
)__builtin_lsx_vclo_h((v8i16
)_1
);
1564 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1565 __lsx_vclo_w(__m128i _1
) {
1566 return (__m128i
)__builtin_lsx_vclo_w((v4i32
)_1
);
1570 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1571 __lsx_vclo_d(__m128i _1
) {
1572 return (__m128i
)__builtin_lsx_vclo_d((v2i64
)_1
);
1576 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1577 __lsx_vclz_b(__m128i _1
) {
1578 return (__m128i
)__builtin_lsx_vclz_b((v16i8
)_1
);
1582 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1583 __lsx_vclz_h(__m128i _1
) {
1584 return (__m128i
)__builtin_lsx_vclz_h((v8i16
)_1
);
1588 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1589 __lsx_vclz_w(__m128i _1
) {
1590 return (__m128i
)__builtin_lsx_vclz_w((v4i32
)_1
);
1594 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1595 __lsx_vclz_d(__m128i _1
) {
1596 return (__m128i
)__builtin_lsx_vclz_d((v2i64
)_1
);
1599 #define __lsx_vpickve2gr_b(/*__m128i*/ _1, /*ui4*/ _2) \
1600 ((int)__builtin_lsx_vpickve2gr_b((v16i8)(_1), (_2)))
1602 #define __lsx_vpickve2gr_h(/*__m128i*/ _1, /*ui3*/ _2) \
1603 ((int)__builtin_lsx_vpickve2gr_h((v8i16)(_1), (_2)))
1605 #define __lsx_vpickve2gr_w(/*__m128i*/ _1, /*ui2*/ _2) \
1606 ((int)__builtin_lsx_vpickve2gr_w((v4i32)(_1), (_2)))
1608 #define __lsx_vpickve2gr_d(/*__m128i*/ _1, /*ui1*/ _2) \
1609 ((long int)__builtin_lsx_vpickve2gr_d((v2i64)(_1), (_2)))
1611 #define __lsx_vpickve2gr_bu(/*__m128i*/ _1, /*ui4*/ _2) \
1612 ((unsigned int)__builtin_lsx_vpickve2gr_bu((v16i8)(_1), (_2)))
1614 #define __lsx_vpickve2gr_hu(/*__m128i*/ _1, /*ui3*/ _2) \
1615 ((unsigned int)__builtin_lsx_vpickve2gr_hu((v8i16)(_1), (_2)))
1617 #define __lsx_vpickve2gr_wu(/*__m128i*/ _1, /*ui2*/ _2) \
1618 ((unsigned int)__builtin_lsx_vpickve2gr_wu((v4i32)(_1), (_2)))
1620 #define __lsx_vpickve2gr_du(/*__m128i*/ _1, /*ui1*/ _2) \
1621 ((unsigned long int)__builtin_lsx_vpickve2gr_du((v2i64)(_1), (_2)))
1623 #define __lsx_vinsgr2vr_b(/*__m128i*/ _1, /*int*/ _2, /*ui4*/ _3) \
1624 ((__m128i)__builtin_lsx_vinsgr2vr_b((v16i8)(_1), (int)(_2), (_3)))
1626 #define __lsx_vinsgr2vr_h(/*__m128i*/ _1, /*int*/ _2, /*ui3*/ _3) \
1627 ((__m128i)__builtin_lsx_vinsgr2vr_h((v8i16)(_1), (int)(_2), (_3)))
1629 #define __lsx_vinsgr2vr_w(/*__m128i*/ _1, /*int*/ _2, /*ui2*/ _3) \
1630 ((__m128i)__builtin_lsx_vinsgr2vr_w((v4i32)(_1), (int)(_2), (_3)))
1632 #define __lsx_vinsgr2vr_d(/*__m128i*/ _1, /*long int*/ _2, /*ui1*/ _3) \
1633 ((__m128i)__builtin_lsx_vinsgr2vr_d((v2i64)(_1), (long int)(_2), (_3)))
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
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
);
1744 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1745 __lsx_vfclass_s(__m128 _1
) {
1746 return (__m128i
)__builtin_lsx_vfclass_s((v4f32
)_1
);
1750 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1751 __lsx_vfclass_d(__m128d _1
) {
1752 return (__m128i
)__builtin_lsx_vfclass_d((v2f64
)_1
);
1756 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
1757 __lsx_vfsqrt_s(__m128 _1
) {
1758 return (__m128
)__builtin_lsx_vfsqrt_s((v4f32
)_1
);
1762 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
1763 __lsx_vfsqrt_d(__m128d _1
) {
1764 return (__m128d
)__builtin_lsx_vfsqrt_d((v2f64
)_1
);
1768 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
1769 __lsx_vfrecip_s(__m128 _1
) {
1770 return (__m128
)__builtin_lsx_vfrecip_s((v4f32
)_1
);
1774 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
1775 __lsx_vfrecip_d(__m128d _1
) {
1776 return (__m128d
)__builtin_lsx_vfrecip_d((v2f64
)_1
);
1780 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
1781 __lsx_vfrint_s(__m128 _1
) {
1782 return (__m128
)__builtin_lsx_vfrint_s((v4f32
)_1
);
1786 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
1787 __lsx_vfrint_d(__m128d _1
) {
1788 return (__m128d
)__builtin_lsx_vfrint_d((v2f64
)_1
);
1792 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
1793 __lsx_vfrsqrt_s(__m128 _1
) {
1794 return (__m128
)__builtin_lsx_vfrsqrt_s((v4f32
)_1
);
1798 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
1799 __lsx_vfrsqrt_d(__m128d _1
) {
1800 return (__m128d
)__builtin_lsx_vfrsqrt_d((v2f64
)_1
);
1804 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
1805 __lsx_vflogb_s(__m128 _1
) {
1806 return (__m128
)__builtin_lsx_vflogb_s((v4f32
)_1
);
1810 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
1811 __lsx_vflogb_d(__m128d _1
) {
1812 return (__m128d
)__builtin_lsx_vflogb_d((v2f64
)_1
);
1816 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
1817 __lsx_vfcvth_s_h(__m128i _1
) {
1818 return (__m128
)__builtin_lsx_vfcvth_s_h((v8i16
)_1
);
1822 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
1823 __lsx_vfcvth_d_s(__m128 _1
) {
1824 return (__m128d
)__builtin_lsx_vfcvth_d_s((v4f32
)_1
);
1828 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
1829 __lsx_vfcvtl_s_h(__m128i _1
) {
1830 return (__m128
)__builtin_lsx_vfcvtl_s_h((v8i16
)_1
);
1834 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
1835 __lsx_vfcvtl_d_s(__m128 _1
) {
1836 return (__m128d
)__builtin_lsx_vfcvtl_d_s((v4f32
)_1
);
1840 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1841 __lsx_vftint_w_s(__m128 _1
) {
1842 return (__m128i
)__builtin_lsx_vftint_w_s((v4f32
)_1
);
1846 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1847 __lsx_vftint_l_d(__m128d _1
) {
1848 return (__m128i
)__builtin_lsx_vftint_l_d((v2f64
)_1
);
1852 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1853 __lsx_vftint_wu_s(__m128 _1
) {
1854 return (__m128i
)__builtin_lsx_vftint_wu_s((v4f32
)_1
);
1858 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1859 __lsx_vftint_lu_d(__m128d _1
) {
1860 return (__m128i
)__builtin_lsx_vftint_lu_d((v2f64
)_1
);
1864 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1865 __lsx_vftintrz_w_s(__m128 _1
) {
1866 return (__m128i
)__builtin_lsx_vftintrz_w_s((v4f32
)_1
);
1870 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1871 __lsx_vftintrz_l_d(__m128d _1
) {
1872 return (__m128i
)__builtin_lsx_vftintrz_l_d((v2f64
)_1
);
1876 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1877 __lsx_vftintrz_wu_s(__m128 _1
) {
1878 return (__m128i
)__builtin_lsx_vftintrz_wu_s((v4f32
)_1
);
1882 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1883 __lsx_vftintrz_lu_d(__m128d _1
) {
1884 return (__m128i
)__builtin_lsx_vftintrz_lu_d((v2f64
)_1
);
1888 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
1889 __lsx_vffint_s_w(__m128i _1
) {
1890 return (__m128
)__builtin_lsx_vffint_s_w((v4i32
)_1
);
1894 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
1895 __lsx_vffint_d_l(__m128i _1
) {
1896 return (__m128d
)__builtin_lsx_vffint_d_l((v2i64
)_1
);
1900 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
1901 __lsx_vffint_s_wu(__m128i _1
) {
1902 return (__m128
)__builtin_lsx_vffint_s_wu((v4u32
)_1
);
1906 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
1907 __lsx_vffint_d_lu(__m128i _1
) {
1908 return (__m128d
)__builtin_lsx_vffint_d_lu((v2u64
)_1
);
1912 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1913 __lsx_vandn_v(__m128i _1
, __m128i _2
) {
1914 return (__m128i
)__builtin_lsx_vandn_v((v16u8
)_1
, (v16u8
)_2
);
1918 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1919 __lsx_vneg_b(__m128i _1
) {
1920 return (__m128i
)__builtin_lsx_vneg_b((v16i8
)_1
);
1924 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1925 __lsx_vneg_h(__m128i _1
) {
1926 return (__m128i
)__builtin_lsx_vneg_h((v8i16
)_1
);
1930 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1931 __lsx_vneg_w(__m128i _1
) {
1932 return (__m128i
)__builtin_lsx_vneg_w((v4i32
)_1
);
1936 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1937 __lsx_vneg_d(__m128i _1
) {
1938 return (__m128i
)__builtin_lsx_vneg_d((v2i64
)_1
);
1942 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1943 __lsx_vmuh_b(__m128i _1
, __m128i _2
) {
1944 return (__m128i
)__builtin_lsx_vmuh_b((v16i8
)_1
, (v16i8
)_2
);
1948 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1949 __lsx_vmuh_h(__m128i _1
, __m128i _2
) {
1950 return (__m128i
)__builtin_lsx_vmuh_h((v8i16
)_1
, (v8i16
)_2
);
1954 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1955 __lsx_vmuh_w(__m128i _1
, __m128i _2
) {
1956 return (__m128i
)__builtin_lsx_vmuh_w((v4i32
)_1
, (v4i32
)_2
);
1960 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1961 __lsx_vmuh_d(__m128i _1
, __m128i _2
) {
1962 return (__m128i
)__builtin_lsx_vmuh_d((v2i64
)_1
, (v2i64
)_2
);
1966 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1967 __lsx_vmuh_bu(__m128i _1
, __m128i _2
) {
1968 return (__m128i
)__builtin_lsx_vmuh_bu((v16u8
)_1
, (v16u8
)_2
);
1972 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1973 __lsx_vmuh_hu(__m128i _1
, __m128i _2
) {
1974 return (__m128i
)__builtin_lsx_vmuh_hu((v8u16
)_1
, (v8u16
)_2
);
1978 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1979 __lsx_vmuh_wu(__m128i _1
, __m128i _2
) {
1980 return (__m128i
)__builtin_lsx_vmuh_wu((v4u32
)_1
, (v4u32
)_2
);
1984 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
1985 __lsx_vmuh_du(__m128i _1
, __m128i _2
) {
1986 return (__m128i
)__builtin_lsx_vmuh_du((v2u64
)_1
, (v2u64
)_2
);
1989 #define __lsx_vsllwil_h_b(/*__m128i*/ _1, /*ui3*/ _2) \
1990 ((__m128i)__builtin_lsx_vsllwil_h_b((v16i8)(_1), (_2)))
1992 #define __lsx_vsllwil_w_h(/*__m128i*/ _1, /*ui4*/ _2) \
1993 ((__m128i)__builtin_lsx_vsllwil_w_h((v8i16)(_1), (_2)))
1995 #define __lsx_vsllwil_d_w(/*__m128i*/ _1, /*ui5*/ _2) \
1996 ((__m128i)__builtin_lsx_vsllwil_d_w((v4i32)(_1), (_2)))
1998 #define __lsx_vsllwil_hu_bu(/*__m128i*/ _1, /*ui3*/ _2) \
1999 ((__m128i)__builtin_lsx_vsllwil_hu_bu((v16u8)(_1), (_2)))
2001 #define __lsx_vsllwil_wu_hu(/*__m128i*/ _1, /*ui4*/ _2) \
2002 ((__m128i)__builtin_lsx_vsllwil_wu_hu((v8u16)(_1), (_2)))
2004 #define __lsx_vsllwil_du_wu(/*__m128i*/ _1, /*ui5*/ _2) \
2005 ((__m128i)__builtin_lsx_vsllwil_du_wu((v4u32)(_1), (_2)))
2008 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2009 __lsx_vsran_b_h(__m128i _1
, __m128i _2
) {
2010 return (__m128i
)__builtin_lsx_vsran_b_h((v8i16
)_1
, (v8i16
)_2
);
2014 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2015 __lsx_vsran_h_w(__m128i _1
, __m128i _2
) {
2016 return (__m128i
)__builtin_lsx_vsran_h_w((v4i32
)_1
, (v4i32
)_2
);
2020 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2021 __lsx_vsran_w_d(__m128i _1
, __m128i _2
) {
2022 return (__m128i
)__builtin_lsx_vsran_w_d((v2i64
)_1
, (v2i64
)_2
);
2026 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2027 __lsx_vssran_b_h(__m128i _1
, __m128i _2
) {
2028 return (__m128i
)__builtin_lsx_vssran_b_h((v8i16
)_1
, (v8i16
)_2
);
2032 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2033 __lsx_vssran_h_w(__m128i _1
, __m128i _2
) {
2034 return (__m128i
)__builtin_lsx_vssran_h_w((v4i32
)_1
, (v4i32
)_2
);
2038 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2039 __lsx_vssran_w_d(__m128i _1
, __m128i _2
) {
2040 return (__m128i
)__builtin_lsx_vssran_w_d((v2i64
)_1
, (v2i64
)_2
);
2044 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2045 __lsx_vssran_bu_h(__m128i _1
, __m128i _2
) {
2046 return (__m128i
)__builtin_lsx_vssran_bu_h((v8u16
)_1
, (v8u16
)_2
);
2050 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2051 __lsx_vssran_hu_w(__m128i _1
, __m128i _2
) {
2052 return (__m128i
)__builtin_lsx_vssran_hu_w((v4u32
)_1
, (v4u32
)_2
);
2056 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2057 __lsx_vssran_wu_d(__m128i _1
, __m128i _2
) {
2058 return (__m128i
)__builtin_lsx_vssran_wu_d((v2u64
)_1
, (v2u64
)_2
);
2062 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2063 __lsx_vsrarn_b_h(__m128i _1
, __m128i _2
) {
2064 return (__m128i
)__builtin_lsx_vsrarn_b_h((v8i16
)_1
, (v8i16
)_2
);
2068 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2069 __lsx_vsrarn_h_w(__m128i _1
, __m128i _2
) {
2070 return (__m128i
)__builtin_lsx_vsrarn_h_w((v4i32
)_1
, (v4i32
)_2
);
2074 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2075 __lsx_vsrarn_w_d(__m128i _1
, __m128i _2
) {
2076 return (__m128i
)__builtin_lsx_vsrarn_w_d((v2i64
)_1
, (v2i64
)_2
);
2080 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2081 __lsx_vssrarn_b_h(__m128i _1
, __m128i _2
) {
2082 return (__m128i
)__builtin_lsx_vssrarn_b_h((v8i16
)_1
, (v8i16
)_2
);
2086 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2087 __lsx_vssrarn_h_w(__m128i _1
, __m128i _2
) {
2088 return (__m128i
)__builtin_lsx_vssrarn_h_w((v4i32
)_1
, (v4i32
)_2
);
2092 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2093 __lsx_vssrarn_w_d(__m128i _1
, __m128i _2
) {
2094 return (__m128i
)__builtin_lsx_vssrarn_w_d((v2i64
)_1
, (v2i64
)_2
);
2098 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2099 __lsx_vssrarn_bu_h(__m128i _1
, __m128i _2
) {
2100 return (__m128i
)__builtin_lsx_vssrarn_bu_h((v8u16
)_1
, (v8u16
)_2
);
2104 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2105 __lsx_vssrarn_hu_w(__m128i _1
, __m128i _2
) {
2106 return (__m128i
)__builtin_lsx_vssrarn_hu_w((v4u32
)_1
, (v4u32
)_2
);
2110 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2111 __lsx_vssrarn_wu_d(__m128i _1
, __m128i _2
) {
2112 return (__m128i
)__builtin_lsx_vssrarn_wu_d((v2u64
)_1
, (v2u64
)_2
);
2116 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2117 __lsx_vsrln_b_h(__m128i _1
, __m128i _2
) {
2118 return (__m128i
)__builtin_lsx_vsrln_b_h((v8i16
)_1
, (v8i16
)_2
);
2122 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2123 __lsx_vsrln_h_w(__m128i _1
, __m128i _2
) {
2124 return (__m128i
)__builtin_lsx_vsrln_h_w((v4i32
)_1
, (v4i32
)_2
);
2128 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2129 __lsx_vsrln_w_d(__m128i _1
, __m128i _2
) {
2130 return (__m128i
)__builtin_lsx_vsrln_w_d((v2i64
)_1
, (v2i64
)_2
);
2134 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2135 __lsx_vssrln_bu_h(__m128i _1
, __m128i _2
) {
2136 return (__m128i
)__builtin_lsx_vssrln_bu_h((v8u16
)_1
, (v8u16
)_2
);
2140 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2141 __lsx_vssrln_hu_w(__m128i _1
, __m128i _2
) {
2142 return (__m128i
)__builtin_lsx_vssrln_hu_w((v4u32
)_1
, (v4u32
)_2
);
2146 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2147 __lsx_vssrln_wu_d(__m128i _1
, __m128i _2
) {
2148 return (__m128i
)__builtin_lsx_vssrln_wu_d((v2u64
)_1
, (v2u64
)_2
);
2152 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2153 __lsx_vsrlrn_b_h(__m128i _1
, __m128i _2
) {
2154 return (__m128i
)__builtin_lsx_vsrlrn_b_h((v8i16
)_1
, (v8i16
)_2
);
2158 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2159 __lsx_vsrlrn_h_w(__m128i _1
, __m128i _2
) {
2160 return (__m128i
)__builtin_lsx_vsrlrn_h_w((v4i32
)_1
, (v4i32
)_2
);
2164 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2165 __lsx_vsrlrn_w_d(__m128i _1
, __m128i _2
) {
2166 return (__m128i
)__builtin_lsx_vsrlrn_w_d((v2i64
)_1
, (v2i64
)_2
);
2170 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2171 __lsx_vssrlrn_bu_h(__m128i _1
, __m128i _2
) {
2172 return (__m128i
)__builtin_lsx_vssrlrn_bu_h((v8u16
)_1
, (v8u16
)_2
);
2176 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2177 __lsx_vssrlrn_hu_w(__m128i _1
, __m128i _2
) {
2178 return (__m128i
)__builtin_lsx_vssrlrn_hu_w((v4u32
)_1
, (v4u32
)_2
);
2182 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2183 __lsx_vssrlrn_wu_d(__m128i _1
, __m128i _2
) {
2184 return (__m128i
)__builtin_lsx_vssrlrn_wu_d((v2u64
)_1
, (v2u64
)_2
);
2187 #define __lsx_vfrstpi_b(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
2188 ((__m128i)__builtin_lsx_vfrstpi_b((v16i8)(_1), (v16i8)(_2), (_3)))
2190 #define __lsx_vfrstpi_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
2191 ((__m128i)__builtin_lsx_vfrstpi_h((v8i16)(_1), (v8i16)(_2), (_3)))
2194 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2195 __lsx_vfrstp_b(__m128i _1
, __m128i _2
, __m128i _3
) {
2196 return (__m128i
)__builtin_lsx_vfrstp_b((v16i8
)_1
, (v16i8
)_2
, (v16i8
)_3
);
2200 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2201 __lsx_vfrstp_h(__m128i _1
, __m128i _2
, __m128i _3
) {
2202 return (__m128i
)__builtin_lsx_vfrstp_h((v8i16
)_1
, (v8i16
)_2
, (v8i16
)_3
);
2205 #define __lsx_vshuf4i_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \
2206 ((__m128i)__builtin_lsx_vshuf4i_d((v2i64)(_1), (v2i64)(_2), (_3)))
2208 #define __lsx_vbsrl_v(/*__m128i*/ _1, /*ui5*/ _2) \
2209 ((__m128i)__builtin_lsx_vbsrl_v((v16i8)(_1), (_2)))
2211 #define __lsx_vbsll_v(/*__m128i*/ _1, /*ui5*/ _2) \
2212 ((__m128i)__builtin_lsx_vbsll_v((v16i8)(_1), (_2)))
2214 #define __lsx_vextrins_b(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \
2215 ((__m128i)__builtin_lsx_vextrins_b((v16i8)(_1), (v16i8)(_2), (_3)))
2217 #define __lsx_vextrins_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \
2218 ((__m128i)__builtin_lsx_vextrins_h((v8i16)(_1), (v8i16)(_2), (_3)))
2220 #define __lsx_vextrins_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \
2221 ((__m128i)__builtin_lsx_vextrins_w((v4i32)(_1), (v4i32)(_2), (_3)))
2223 #define __lsx_vextrins_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \
2224 ((__m128i)__builtin_lsx_vextrins_d((v2i64)(_1), (v2i64)(_2), (_3)))
2227 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2228 __lsx_vmskltz_b(__m128i _1
) {
2229 return (__m128i
)__builtin_lsx_vmskltz_b((v16i8
)_1
);
2233 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2234 __lsx_vmskltz_h(__m128i _1
) {
2235 return (__m128i
)__builtin_lsx_vmskltz_h((v8i16
)_1
);
2239 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2240 __lsx_vmskltz_w(__m128i _1
) {
2241 return (__m128i
)__builtin_lsx_vmskltz_w((v4i32
)_1
);
2245 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2246 __lsx_vmskltz_d(__m128i _1
) {
2247 return (__m128i
)__builtin_lsx_vmskltz_d((v2i64
)_1
);
2251 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2252 __lsx_vsigncov_b(__m128i _1
, __m128i _2
) {
2253 return (__m128i
)__builtin_lsx_vsigncov_b((v16i8
)_1
, (v16i8
)_2
);
2257 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2258 __lsx_vsigncov_h(__m128i _1
, __m128i _2
) {
2259 return (__m128i
)__builtin_lsx_vsigncov_h((v8i16
)_1
, (v8i16
)_2
);
2263 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2264 __lsx_vsigncov_w(__m128i _1
, __m128i _2
) {
2265 return (__m128i
)__builtin_lsx_vsigncov_w((v4i32
)_1
, (v4i32
)_2
);
2269 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2270 __lsx_vsigncov_d(__m128i _1
, __m128i _2
) {
2271 return (__m128i
)__builtin_lsx_vsigncov_d((v2i64
)_1
, (v2i64
)_2
);
2275 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
2276 __lsx_vfmadd_s(__m128 _1
, __m128 _2
, __m128 _3
) {
2277 return (__m128
)__builtin_lsx_vfmadd_s((v4f32
)_1
, (v4f32
)_2
, (v4f32
)_3
);
2281 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2282 __lsx_vfmadd_d(__m128d _1
, __m128d _2
, __m128d _3
) {
2283 return (__m128d
)__builtin_lsx_vfmadd_d((v2f64
)_1
, (v2f64
)_2
, (v2f64
)_3
);
2287 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
2288 __lsx_vfmsub_s(__m128 _1
, __m128 _2
, __m128 _3
) {
2289 return (__m128
)__builtin_lsx_vfmsub_s((v4f32
)_1
, (v4f32
)_2
, (v4f32
)_3
);
2293 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2294 __lsx_vfmsub_d(__m128d _1
, __m128d _2
, __m128d _3
) {
2295 return (__m128d
)__builtin_lsx_vfmsub_d((v2f64
)_1
, (v2f64
)_2
, (v2f64
)_3
);
2299 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
2300 __lsx_vfnmadd_s(__m128 _1
, __m128 _2
, __m128 _3
) {
2301 return (__m128
)__builtin_lsx_vfnmadd_s((v4f32
)_1
, (v4f32
)_2
, (v4f32
)_3
);
2305 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2306 __lsx_vfnmadd_d(__m128d _1
, __m128d _2
, __m128d _3
) {
2307 return (__m128d
)__builtin_lsx_vfnmadd_d((v2f64
)_1
, (v2f64
)_2
, (v2f64
)_3
);
2311 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
2312 __lsx_vfnmsub_s(__m128 _1
, __m128 _2
, __m128 _3
) {
2313 return (__m128
)__builtin_lsx_vfnmsub_s((v4f32
)_1
, (v4f32
)_2
, (v4f32
)_3
);
2317 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2318 __lsx_vfnmsub_d(__m128d _1
, __m128d _2
, __m128d _3
) {
2319 return (__m128d
)__builtin_lsx_vfnmsub_d((v2f64
)_1
, (v2f64
)_2
, (v2f64
)_3
);
2323 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2324 __lsx_vftintrne_w_s(__m128 _1
) {
2325 return (__m128i
)__builtin_lsx_vftintrne_w_s((v4f32
)_1
);
2329 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2330 __lsx_vftintrne_l_d(__m128d _1
) {
2331 return (__m128i
)__builtin_lsx_vftintrne_l_d((v2f64
)_1
);
2335 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2336 __lsx_vftintrp_w_s(__m128 _1
) {
2337 return (__m128i
)__builtin_lsx_vftintrp_w_s((v4f32
)_1
);
2341 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2342 __lsx_vftintrp_l_d(__m128d _1
) {
2343 return (__m128i
)__builtin_lsx_vftintrp_l_d((v2f64
)_1
);
2347 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2348 __lsx_vftintrm_w_s(__m128 _1
) {
2349 return (__m128i
)__builtin_lsx_vftintrm_w_s((v4f32
)_1
);
2353 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2354 __lsx_vftintrm_l_d(__m128d _1
) {
2355 return (__m128i
)__builtin_lsx_vftintrm_l_d((v2f64
)_1
);
2359 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2360 __lsx_vftint_w_d(__m128d _1
, __m128d _2
) {
2361 return (__m128i
)__builtin_lsx_vftint_w_d((v2f64
)_1
, (v2f64
)_2
);
2365 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
2366 __lsx_vffint_s_l(__m128i _1
, __m128i _2
) {
2367 return (__m128
)__builtin_lsx_vffint_s_l((v2i64
)_1
, (v2i64
)_2
);
2371 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2372 __lsx_vftintrz_w_d(__m128d _1
, __m128d _2
) {
2373 return (__m128i
)__builtin_lsx_vftintrz_w_d((v2f64
)_1
, (v2f64
)_2
);
2377 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2378 __lsx_vftintrp_w_d(__m128d _1
, __m128d _2
) {
2379 return (__m128i
)__builtin_lsx_vftintrp_w_d((v2f64
)_1
, (v2f64
)_2
);
2383 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2384 __lsx_vftintrm_w_d(__m128d _1
, __m128d _2
) {
2385 return (__m128i
)__builtin_lsx_vftintrm_w_d((v2f64
)_1
, (v2f64
)_2
);
2389 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2390 __lsx_vftintrne_w_d(__m128d _1
, __m128d _2
) {
2391 return (__m128i
)__builtin_lsx_vftintrne_w_d((v2f64
)_1
, (v2f64
)_2
);
2395 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2396 __lsx_vftintl_l_s(__m128 _1
) {
2397 return (__m128i
)__builtin_lsx_vftintl_l_s((v4f32
)_1
);
2401 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2402 __lsx_vftinth_l_s(__m128 _1
) {
2403 return (__m128i
)__builtin_lsx_vftinth_l_s((v4f32
)_1
);
2407 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2408 __lsx_vffinth_d_w(__m128i _1
) {
2409 return (__m128d
)__builtin_lsx_vffinth_d_w((v4i32
)_1
);
2413 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2414 __lsx_vffintl_d_w(__m128i _1
) {
2415 return (__m128d
)__builtin_lsx_vffintl_d_w((v4i32
)_1
);
2419 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2420 __lsx_vftintrzl_l_s(__m128 _1
) {
2421 return (__m128i
)__builtin_lsx_vftintrzl_l_s((v4f32
)_1
);
2425 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2426 __lsx_vftintrzh_l_s(__m128 _1
) {
2427 return (__m128i
)__builtin_lsx_vftintrzh_l_s((v4f32
)_1
);
2431 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2432 __lsx_vftintrpl_l_s(__m128 _1
) {
2433 return (__m128i
)__builtin_lsx_vftintrpl_l_s((v4f32
)_1
);
2437 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2438 __lsx_vftintrph_l_s(__m128 _1
) {
2439 return (__m128i
)__builtin_lsx_vftintrph_l_s((v4f32
)_1
);
2443 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2444 __lsx_vftintrml_l_s(__m128 _1
) {
2445 return (__m128i
)__builtin_lsx_vftintrml_l_s((v4f32
)_1
);
2449 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2450 __lsx_vftintrmh_l_s(__m128 _1
) {
2451 return (__m128i
)__builtin_lsx_vftintrmh_l_s((v4f32
)_1
);
2455 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2456 __lsx_vftintrnel_l_s(__m128 _1
) {
2457 return (__m128i
)__builtin_lsx_vftintrnel_l_s((v4f32
)_1
);
2461 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2462 __lsx_vftintrneh_l_s(__m128 _1
) {
2463 return (__m128i
)__builtin_lsx_vftintrneh_l_s((v4f32
)_1
);
2467 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
2468 __lsx_vfrintrne_s(__m128 _1
) {
2469 return (__m128
)__builtin_lsx_vfrintrne_s((v4f32
)_1
);
2473 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2474 __lsx_vfrintrne_d(__m128d _1
) {
2475 return (__m128d
)__builtin_lsx_vfrintrne_d((v2f64
)_1
);
2479 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
2480 __lsx_vfrintrz_s(__m128 _1
) {
2481 return (__m128
)__builtin_lsx_vfrintrz_s((v4f32
)_1
);
2485 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2486 __lsx_vfrintrz_d(__m128d _1
) {
2487 return (__m128d
)__builtin_lsx_vfrintrz_d((v2f64
)_1
);
2491 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
2492 __lsx_vfrintrp_s(__m128 _1
) {
2493 return (__m128
)__builtin_lsx_vfrintrp_s((v4f32
)_1
);
2497 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2498 __lsx_vfrintrp_d(__m128d _1
) {
2499 return (__m128d
)__builtin_lsx_vfrintrp_d((v2f64
)_1
);
2503 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128
2504 __lsx_vfrintrm_s(__m128 _1
) {
2505 return (__m128
)__builtin_lsx_vfrintrm_s((v4f32
)_1
);
2509 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128d
2510 __lsx_vfrintrm_d(__m128d _1
) {
2511 return (__m128d
)__builtin_lsx_vfrintrm_d((v2f64
)_1
);
2514 #define __lsx_vstelm_b(/*__m128i*/ _1, /*void **/ _2, /*si8*/ _3, /*idx*/ _4) \
2515 ((void)__builtin_lsx_vstelm_b((v16i8)(_1), (void *)(_2), (_3), (_4)))
2517 #define __lsx_vstelm_h(/*__m128i*/ _1, /*void **/ _2, /*si8*/ _3, /*idx*/ _4) \
2518 ((void)__builtin_lsx_vstelm_h((v8i16)(_1), (void *)(_2), (_3), (_4)))
2520 #define __lsx_vstelm_w(/*__m128i*/ _1, /*void **/ _2, /*si8*/ _3, /*idx*/ _4) \
2521 ((void)__builtin_lsx_vstelm_w((v4i32)(_1), (void *)(_2), (_3), (_4)))
2523 #define __lsx_vstelm_d(/*__m128i*/ _1, /*void **/ _2, /*si8*/ _3, /*idx*/ _4) \
2524 ((void)__builtin_lsx_vstelm_d((v2i64)(_1), (void *)(_2), (_3), (_4)))
2527 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2528 __lsx_vaddwev_d_w(__m128i _1
, __m128i _2
) {
2529 return (__m128i
)__builtin_lsx_vaddwev_d_w((v4i32
)_1
, (v4i32
)_2
);
2533 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2534 __lsx_vaddwev_w_h(__m128i _1
, __m128i _2
) {
2535 return (__m128i
)__builtin_lsx_vaddwev_w_h((v8i16
)_1
, (v8i16
)_2
);
2539 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2540 __lsx_vaddwev_h_b(__m128i _1
, __m128i _2
) {
2541 return (__m128i
)__builtin_lsx_vaddwev_h_b((v16i8
)_1
, (v16i8
)_2
);
2545 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2546 __lsx_vaddwod_d_w(__m128i _1
, __m128i _2
) {
2547 return (__m128i
)__builtin_lsx_vaddwod_d_w((v4i32
)_1
, (v4i32
)_2
);
2551 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2552 __lsx_vaddwod_w_h(__m128i _1
, __m128i _2
) {
2553 return (__m128i
)__builtin_lsx_vaddwod_w_h((v8i16
)_1
, (v8i16
)_2
);
2557 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2558 __lsx_vaddwod_h_b(__m128i _1
, __m128i _2
) {
2559 return (__m128i
)__builtin_lsx_vaddwod_h_b((v16i8
)_1
, (v16i8
)_2
);
2563 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2564 __lsx_vaddwev_d_wu(__m128i _1
, __m128i _2
) {
2565 return (__m128i
)__builtin_lsx_vaddwev_d_wu((v4u32
)_1
, (v4u32
)_2
);
2569 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2570 __lsx_vaddwev_w_hu(__m128i _1
, __m128i _2
) {
2571 return (__m128i
)__builtin_lsx_vaddwev_w_hu((v8u16
)_1
, (v8u16
)_2
);
2575 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2576 __lsx_vaddwev_h_bu(__m128i _1
, __m128i _2
) {
2577 return (__m128i
)__builtin_lsx_vaddwev_h_bu((v16u8
)_1
, (v16u8
)_2
);
2581 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2582 __lsx_vaddwod_d_wu(__m128i _1
, __m128i _2
) {
2583 return (__m128i
)__builtin_lsx_vaddwod_d_wu((v4u32
)_1
, (v4u32
)_2
);
2587 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2588 __lsx_vaddwod_w_hu(__m128i _1
, __m128i _2
) {
2589 return (__m128i
)__builtin_lsx_vaddwod_w_hu((v8u16
)_1
, (v8u16
)_2
);
2593 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2594 __lsx_vaddwod_h_bu(__m128i _1
, __m128i _2
) {
2595 return (__m128i
)__builtin_lsx_vaddwod_h_bu((v16u8
)_1
, (v16u8
)_2
);
2599 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2600 __lsx_vaddwev_d_wu_w(__m128i _1
, __m128i _2
) {
2601 return (__m128i
)__builtin_lsx_vaddwev_d_wu_w((v4u32
)_1
, (v4i32
)_2
);
2605 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2606 __lsx_vaddwev_w_hu_h(__m128i _1
, __m128i _2
) {
2607 return (__m128i
)__builtin_lsx_vaddwev_w_hu_h((v8u16
)_1
, (v8i16
)_2
);
2611 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2612 __lsx_vaddwev_h_bu_b(__m128i _1
, __m128i _2
) {
2613 return (__m128i
)__builtin_lsx_vaddwev_h_bu_b((v16u8
)_1
, (v16i8
)_2
);
2617 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2618 __lsx_vaddwod_d_wu_w(__m128i _1
, __m128i _2
) {
2619 return (__m128i
)__builtin_lsx_vaddwod_d_wu_w((v4u32
)_1
, (v4i32
)_2
);
2623 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2624 __lsx_vaddwod_w_hu_h(__m128i _1
, __m128i _2
) {
2625 return (__m128i
)__builtin_lsx_vaddwod_w_hu_h((v8u16
)_1
, (v8i16
)_2
);
2629 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2630 __lsx_vaddwod_h_bu_b(__m128i _1
, __m128i _2
) {
2631 return (__m128i
)__builtin_lsx_vaddwod_h_bu_b((v16u8
)_1
, (v16i8
)_2
);
2635 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2636 __lsx_vsubwev_d_w(__m128i _1
, __m128i _2
) {
2637 return (__m128i
)__builtin_lsx_vsubwev_d_w((v4i32
)_1
, (v4i32
)_2
);
2641 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2642 __lsx_vsubwev_w_h(__m128i _1
, __m128i _2
) {
2643 return (__m128i
)__builtin_lsx_vsubwev_w_h((v8i16
)_1
, (v8i16
)_2
);
2647 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2648 __lsx_vsubwev_h_b(__m128i _1
, __m128i _2
) {
2649 return (__m128i
)__builtin_lsx_vsubwev_h_b((v16i8
)_1
, (v16i8
)_2
);
2653 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2654 __lsx_vsubwod_d_w(__m128i _1
, __m128i _2
) {
2655 return (__m128i
)__builtin_lsx_vsubwod_d_w((v4i32
)_1
, (v4i32
)_2
);
2659 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2660 __lsx_vsubwod_w_h(__m128i _1
, __m128i _2
) {
2661 return (__m128i
)__builtin_lsx_vsubwod_w_h((v8i16
)_1
, (v8i16
)_2
);
2665 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2666 __lsx_vsubwod_h_b(__m128i _1
, __m128i _2
) {
2667 return (__m128i
)__builtin_lsx_vsubwod_h_b((v16i8
)_1
, (v16i8
)_2
);
2671 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2672 __lsx_vsubwev_d_wu(__m128i _1
, __m128i _2
) {
2673 return (__m128i
)__builtin_lsx_vsubwev_d_wu((v4u32
)_1
, (v4u32
)_2
);
2677 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2678 __lsx_vsubwev_w_hu(__m128i _1
, __m128i _2
) {
2679 return (__m128i
)__builtin_lsx_vsubwev_w_hu((v8u16
)_1
, (v8u16
)_2
);
2683 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2684 __lsx_vsubwev_h_bu(__m128i _1
, __m128i _2
) {
2685 return (__m128i
)__builtin_lsx_vsubwev_h_bu((v16u8
)_1
, (v16u8
)_2
);
2689 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2690 __lsx_vsubwod_d_wu(__m128i _1
, __m128i _2
) {
2691 return (__m128i
)__builtin_lsx_vsubwod_d_wu((v4u32
)_1
, (v4u32
)_2
);
2695 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2696 __lsx_vsubwod_w_hu(__m128i _1
, __m128i _2
) {
2697 return (__m128i
)__builtin_lsx_vsubwod_w_hu((v8u16
)_1
, (v8u16
)_2
);
2701 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2702 __lsx_vsubwod_h_bu(__m128i _1
, __m128i _2
) {
2703 return (__m128i
)__builtin_lsx_vsubwod_h_bu((v16u8
)_1
, (v16u8
)_2
);
2707 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2708 __lsx_vaddwev_q_d(__m128i _1
, __m128i _2
) {
2709 return (__m128i
)__builtin_lsx_vaddwev_q_d((v2i64
)_1
, (v2i64
)_2
);
2713 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2714 __lsx_vaddwod_q_d(__m128i _1
, __m128i _2
) {
2715 return (__m128i
)__builtin_lsx_vaddwod_q_d((v2i64
)_1
, (v2i64
)_2
);
2719 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2720 __lsx_vaddwev_q_du(__m128i _1
, __m128i _2
) {
2721 return (__m128i
)__builtin_lsx_vaddwev_q_du((v2u64
)_1
, (v2u64
)_2
);
2725 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2726 __lsx_vaddwod_q_du(__m128i _1
, __m128i _2
) {
2727 return (__m128i
)__builtin_lsx_vaddwod_q_du((v2u64
)_1
, (v2u64
)_2
);
2731 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2732 __lsx_vsubwev_q_d(__m128i _1
, __m128i _2
) {
2733 return (__m128i
)__builtin_lsx_vsubwev_q_d((v2i64
)_1
, (v2i64
)_2
);
2737 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2738 __lsx_vsubwod_q_d(__m128i _1
, __m128i _2
) {
2739 return (__m128i
)__builtin_lsx_vsubwod_q_d((v2i64
)_1
, (v2i64
)_2
);
2743 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2744 __lsx_vsubwev_q_du(__m128i _1
, __m128i _2
) {
2745 return (__m128i
)__builtin_lsx_vsubwev_q_du((v2u64
)_1
, (v2u64
)_2
);
2749 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2750 __lsx_vsubwod_q_du(__m128i _1
, __m128i _2
) {
2751 return (__m128i
)__builtin_lsx_vsubwod_q_du((v2u64
)_1
, (v2u64
)_2
);
2755 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2756 __lsx_vaddwev_q_du_d(__m128i _1
, __m128i _2
) {
2757 return (__m128i
)__builtin_lsx_vaddwev_q_du_d((v2u64
)_1
, (v2i64
)_2
);
2761 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2762 __lsx_vaddwod_q_du_d(__m128i _1
, __m128i _2
) {
2763 return (__m128i
)__builtin_lsx_vaddwod_q_du_d((v2u64
)_1
, (v2i64
)_2
);
2767 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2768 __lsx_vmulwev_d_w(__m128i _1
, __m128i _2
) {
2769 return (__m128i
)__builtin_lsx_vmulwev_d_w((v4i32
)_1
, (v4i32
)_2
);
2773 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2774 __lsx_vmulwev_w_h(__m128i _1
, __m128i _2
) {
2775 return (__m128i
)__builtin_lsx_vmulwev_w_h((v8i16
)_1
, (v8i16
)_2
);
2779 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2780 __lsx_vmulwev_h_b(__m128i _1
, __m128i _2
) {
2781 return (__m128i
)__builtin_lsx_vmulwev_h_b((v16i8
)_1
, (v16i8
)_2
);
2785 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2786 __lsx_vmulwod_d_w(__m128i _1
, __m128i _2
) {
2787 return (__m128i
)__builtin_lsx_vmulwod_d_w((v4i32
)_1
, (v4i32
)_2
);
2791 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2792 __lsx_vmulwod_w_h(__m128i _1
, __m128i _2
) {
2793 return (__m128i
)__builtin_lsx_vmulwod_w_h((v8i16
)_1
, (v8i16
)_2
);
2797 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2798 __lsx_vmulwod_h_b(__m128i _1
, __m128i _2
) {
2799 return (__m128i
)__builtin_lsx_vmulwod_h_b((v16i8
)_1
, (v16i8
)_2
);
2803 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2804 __lsx_vmulwev_d_wu(__m128i _1
, __m128i _2
) {
2805 return (__m128i
)__builtin_lsx_vmulwev_d_wu((v4u32
)_1
, (v4u32
)_2
);
2809 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2810 __lsx_vmulwev_w_hu(__m128i _1
, __m128i _2
) {
2811 return (__m128i
)__builtin_lsx_vmulwev_w_hu((v8u16
)_1
, (v8u16
)_2
);
2815 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2816 __lsx_vmulwev_h_bu(__m128i _1
, __m128i _2
) {
2817 return (__m128i
)__builtin_lsx_vmulwev_h_bu((v16u8
)_1
, (v16u8
)_2
);
2821 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2822 __lsx_vmulwod_d_wu(__m128i _1
, __m128i _2
) {
2823 return (__m128i
)__builtin_lsx_vmulwod_d_wu((v4u32
)_1
, (v4u32
)_2
);
2827 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2828 __lsx_vmulwod_w_hu(__m128i _1
, __m128i _2
) {
2829 return (__m128i
)__builtin_lsx_vmulwod_w_hu((v8u16
)_1
, (v8u16
)_2
);
2833 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2834 __lsx_vmulwod_h_bu(__m128i _1
, __m128i _2
) {
2835 return (__m128i
)__builtin_lsx_vmulwod_h_bu((v16u8
)_1
, (v16u8
)_2
);
2839 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2840 __lsx_vmulwev_d_wu_w(__m128i _1
, __m128i _2
) {
2841 return (__m128i
)__builtin_lsx_vmulwev_d_wu_w((v4u32
)_1
, (v4i32
)_2
);
2845 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2846 __lsx_vmulwev_w_hu_h(__m128i _1
, __m128i _2
) {
2847 return (__m128i
)__builtin_lsx_vmulwev_w_hu_h((v8u16
)_1
, (v8i16
)_2
);
2851 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2852 __lsx_vmulwev_h_bu_b(__m128i _1
, __m128i _2
) {
2853 return (__m128i
)__builtin_lsx_vmulwev_h_bu_b((v16u8
)_1
, (v16i8
)_2
);
2857 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2858 __lsx_vmulwod_d_wu_w(__m128i _1
, __m128i _2
) {
2859 return (__m128i
)__builtin_lsx_vmulwod_d_wu_w((v4u32
)_1
, (v4i32
)_2
);
2863 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2864 __lsx_vmulwod_w_hu_h(__m128i _1
, __m128i _2
) {
2865 return (__m128i
)__builtin_lsx_vmulwod_w_hu_h((v8u16
)_1
, (v8i16
)_2
);
2869 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2870 __lsx_vmulwod_h_bu_b(__m128i _1
, __m128i _2
) {
2871 return (__m128i
)__builtin_lsx_vmulwod_h_bu_b((v16u8
)_1
, (v16i8
)_2
);
2875 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2876 __lsx_vmulwev_q_d(__m128i _1
, __m128i _2
) {
2877 return (__m128i
)__builtin_lsx_vmulwev_q_d((v2i64
)_1
, (v2i64
)_2
);
2881 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2882 __lsx_vmulwod_q_d(__m128i _1
, __m128i _2
) {
2883 return (__m128i
)__builtin_lsx_vmulwod_q_d((v2i64
)_1
, (v2i64
)_2
);
2887 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2888 __lsx_vmulwev_q_du(__m128i _1
, __m128i _2
) {
2889 return (__m128i
)__builtin_lsx_vmulwev_q_du((v2u64
)_1
, (v2u64
)_2
);
2893 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2894 __lsx_vmulwod_q_du(__m128i _1
, __m128i _2
) {
2895 return (__m128i
)__builtin_lsx_vmulwod_q_du((v2u64
)_1
, (v2u64
)_2
);
2899 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2900 __lsx_vmulwev_q_du_d(__m128i _1
, __m128i _2
) {
2901 return (__m128i
)__builtin_lsx_vmulwev_q_du_d((v2u64
)_1
, (v2i64
)_2
);
2905 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2906 __lsx_vmulwod_q_du_d(__m128i _1
, __m128i _2
) {
2907 return (__m128i
)__builtin_lsx_vmulwod_q_du_d((v2u64
)_1
, (v2i64
)_2
);
2911 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2912 __lsx_vhaddw_q_d(__m128i _1
, __m128i _2
) {
2913 return (__m128i
)__builtin_lsx_vhaddw_q_d((v2i64
)_1
, (v2i64
)_2
);
2917 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2918 __lsx_vhaddw_qu_du(__m128i _1
, __m128i _2
) {
2919 return (__m128i
)__builtin_lsx_vhaddw_qu_du((v2u64
)_1
, (v2u64
)_2
);
2923 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2924 __lsx_vhsubw_q_d(__m128i _1
, __m128i _2
) {
2925 return (__m128i
)__builtin_lsx_vhsubw_q_d((v2i64
)_1
, (v2i64
)_2
);
2929 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2930 __lsx_vhsubw_qu_du(__m128i _1
, __m128i _2
) {
2931 return (__m128i
)__builtin_lsx_vhsubw_qu_du((v2u64
)_1
, (v2u64
)_2
);
2935 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2936 __lsx_vmaddwev_d_w(__m128i _1
, __m128i _2
, __m128i _3
) {
2937 return (__m128i
)__builtin_lsx_vmaddwev_d_w((v2i64
)_1
, (v4i32
)_2
, (v4i32
)_3
);
2941 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2942 __lsx_vmaddwev_w_h(__m128i _1
, __m128i _2
, __m128i _3
) {
2943 return (__m128i
)__builtin_lsx_vmaddwev_w_h((v4i32
)_1
, (v8i16
)_2
, (v8i16
)_3
);
2947 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2948 __lsx_vmaddwev_h_b(__m128i _1
, __m128i _2
, __m128i _3
) {
2949 return (__m128i
)__builtin_lsx_vmaddwev_h_b((v8i16
)_1
, (v16i8
)_2
, (v16i8
)_3
);
2953 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2954 __lsx_vmaddwev_d_wu(__m128i _1
, __m128i _2
, __m128i _3
) {
2955 return (__m128i
)__builtin_lsx_vmaddwev_d_wu((v2u64
)_1
, (v4u32
)_2
, (v4u32
)_3
);
2959 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2960 __lsx_vmaddwev_w_hu(__m128i _1
, __m128i _2
, __m128i _3
) {
2961 return (__m128i
)__builtin_lsx_vmaddwev_w_hu((v4u32
)_1
, (v8u16
)_2
, (v8u16
)_3
);
2965 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2966 __lsx_vmaddwev_h_bu(__m128i _1
, __m128i _2
, __m128i _3
) {
2967 return (__m128i
)__builtin_lsx_vmaddwev_h_bu((v8u16
)_1
, (v16u8
)_2
, (v16u8
)_3
);
2971 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2972 __lsx_vmaddwod_d_w(__m128i _1
, __m128i _2
, __m128i _3
) {
2973 return (__m128i
)__builtin_lsx_vmaddwod_d_w((v2i64
)_1
, (v4i32
)_2
, (v4i32
)_3
);
2977 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2978 __lsx_vmaddwod_w_h(__m128i _1
, __m128i _2
, __m128i _3
) {
2979 return (__m128i
)__builtin_lsx_vmaddwod_w_h((v4i32
)_1
, (v8i16
)_2
, (v8i16
)_3
);
2983 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2984 __lsx_vmaddwod_h_b(__m128i _1
, __m128i _2
, __m128i _3
) {
2985 return (__m128i
)__builtin_lsx_vmaddwod_h_b((v8i16
)_1
, (v16i8
)_2
, (v16i8
)_3
);
2989 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2990 __lsx_vmaddwod_d_wu(__m128i _1
, __m128i _2
, __m128i _3
) {
2991 return (__m128i
)__builtin_lsx_vmaddwod_d_wu((v2u64
)_1
, (v4u32
)_2
, (v4u32
)_3
);
2995 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
2996 __lsx_vmaddwod_w_hu(__m128i _1
, __m128i _2
, __m128i _3
) {
2997 return (__m128i
)__builtin_lsx_vmaddwod_w_hu((v4u32
)_1
, (v8u16
)_2
, (v8u16
)_3
);
3001 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3002 __lsx_vmaddwod_h_bu(__m128i _1
, __m128i _2
, __m128i _3
) {
3003 return (__m128i
)__builtin_lsx_vmaddwod_h_bu((v8u16
)_1
, (v16u8
)_2
, (v16u8
)_3
);
3007 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3008 __lsx_vmaddwev_d_wu_w(__m128i _1
, __m128i _2
, __m128i _3
) {
3009 return (__m128i
)__builtin_lsx_vmaddwev_d_wu_w((v2i64
)_1
, (v4u32
)_2
,
3014 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3015 __lsx_vmaddwev_w_hu_h(__m128i _1
, __m128i _2
, __m128i _3
) {
3016 return (__m128i
)__builtin_lsx_vmaddwev_w_hu_h((v4i32
)_1
, (v8u16
)_2
,
3021 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3022 __lsx_vmaddwev_h_bu_b(__m128i _1
, __m128i _2
, __m128i _3
) {
3023 return (__m128i
)__builtin_lsx_vmaddwev_h_bu_b((v8i16
)_1
, (v16u8
)_2
,
3028 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3029 __lsx_vmaddwod_d_wu_w(__m128i _1
, __m128i _2
, __m128i _3
) {
3030 return (__m128i
)__builtin_lsx_vmaddwod_d_wu_w((v2i64
)_1
, (v4u32
)_2
,
3035 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3036 __lsx_vmaddwod_w_hu_h(__m128i _1
, __m128i _2
, __m128i _3
) {
3037 return (__m128i
)__builtin_lsx_vmaddwod_w_hu_h((v4i32
)_1
, (v8u16
)_2
,
3042 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3043 __lsx_vmaddwod_h_bu_b(__m128i _1
, __m128i _2
, __m128i _3
) {
3044 return (__m128i
)__builtin_lsx_vmaddwod_h_bu_b((v8i16
)_1
, (v16u8
)_2
,
3049 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3050 __lsx_vmaddwev_q_d(__m128i _1
, __m128i _2
, __m128i _3
) {
3051 return (__m128i
)__builtin_lsx_vmaddwev_q_d((v2i64
)_1
, (v2i64
)_2
, (v2i64
)_3
);
3055 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3056 __lsx_vmaddwod_q_d(__m128i _1
, __m128i _2
, __m128i _3
) {
3057 return (__m128i
)__builtin_lsx_vmaddwod_q_d((v2i64
)_1
, (v2i64
)_2
, (v2i64
)_3
);
3061 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3062 __lsx_vmaddwev_q_du(__m128i _1
, __m128i _2
, __m128i _3
) {
3063 return (__m128i
)__builtin_lsx_vmaddwev_q_du((v2u64
)_1
, (v2u64
)_2
, (v2u64
)_3
);
3067 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3068 __lsx_vmaddwod_q_du(__m128i _1
, __m128i _2
, __m128i _3
) {
3069 return (__m128i
)__builtin_lsx_vmaddwod_q_du((v2u64
)_1
, (v2u64
)_2
, (v2u64
)_3
);
3073 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3074 __lsx_vmaddwev_q_du_d(__m128i _1
, __m128i _2
, __m128i _3
) {
3075 return (__m128i
)__builtin_lsx_vmaddwev_q_du_d((v2i64
)_1
, (v2u64
)_2
,
3080 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3081 __lsx_vmaddwod_q_du_d(__m128i _1
, __m128i _2
, __m128i _3
) {
3082 return (__m128i
)__builtin_lsx_vmaddwod_q_du_d((v2i64
)_1
, (v2u64
)_2
,
3087 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3088 __lsx_vrotr_b(__m128i _1
, __m128i _2
) {
3089 return (__m128i
)__builtin_lsx_vrotr_b((v16i8
)_1
, (v16i8
)_2
);
3093 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3094 __lsx_vrotr_h(__m128i _1
, __m128i _2
) {
3095 return (__m128i
)__builtin_lsx_vrotr_h((v8i16
)_1
, (v8i16
)_2
);
3099 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3100 __lsx_vrotr_w(__m128i _1
, __m128i _2
) {
3101 return (__m128i
)__builtin_lsx_vrotr_w((v4i32
)_1
, (v4i32
)_2
);
3105 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3106 __lsx_vrotr_d(__m128i _1
, __m128i _2
) {
3107 return (__m128i
)__builtin_lsx_vrotr_d((v2i64
)_1
, (v2i64
)_2
);
3111 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3112 __lsx_vadd_q(__m128i _1
, __m128i _2
) {
3113 return (__m128i
)__builtin_lsx_vadd_q((v2i64
)_1
, (v2i64
)_2
);
3117 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3118 __lsx_vsub_q(__m128i _1
, __m128i _2
) {
3119 return (__m128i
)__builtin_lsx_vsub_q((v2i64
)_1
, (v2i64
)_2
);
3122 #define __lsx_vldrepl_b(/*void **/ _1, /*si12*/ _2) \
3123 ((__m128i)__builtin_lsx_vldrepl_b((void const *)(_1), (_2)))
3125 #define __lsx_vldrepl_h(/*void **/ _1, /*si11*/ _2) \
3126 ((__m128i)__builtin_lsx_vldrepl_h((void const *)(_1), (_2)))
3128 #define __lsx_vldrepl_w(/*void **/ _1, /*si10*/ _2) \
3129 ((__m128i)__builtin_lsx_vldrepl_w((void const *)(_1), (_2)))
3131 #define __lsx_vldrepl_d(/*void **/ _1, /*si9*/ _2) \
3132 ((__m128i)__builtin_lsx_vldrepl_d((void const *)(_1), (_2)))
3135 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3136 __lsx_vmskgez_b(__m128i _1
) {
3137 return (__m128i
)__builtin_lsx_vmskgez_b((v16i8
)_1
);
3141 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3142 __lsx_vmsknz_b(__m128i _1
) {
3143 return (__m128i
)__builtin_lsx_vmsknz_b((v16i8
)_1
);
3147 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3148 __lsx_vexth_h_b(__m128i _1
) {
3149 return (__m128i
)__builtin_lsx_vexth_h_b((v16i8
)_1
);
3153 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3154 __lsx_vexth_w_h(__m128i _1
) {
3155 return (__m128i
)__builtin_lsx_vexth_w_h((v8i16
)_1
);
3159 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3160 __lsx_vexth_d_w(__m128i _1
) {
3161 return (__m128i
)__builtin_lsx_vexth_d_w((v4i32
)_1
);
3165 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3166 __lsx_vexth_q_d(__m128i _1
) {
3167 return (__m128i
)__builtin_lsx_vexth_q_d((v2i64
)_1
);
3171 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3172 __lsx_vexth_hu_bu(__m128i _1
) {
3173 return (__m128i
)__builtin_lsx_vexth_hu_bu((v16u8
)_1
);
3177 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3178 __lsx_vexth_wu_hu(__m128i _1
) {
3179 return (__m128i
)__builtin_lsx_vexth_wu_hu((v8u16
)_1
);
3183 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3184 __lsx_vexth_du_wu(__m128i _1
) {
3185 return (__m128i
)__builtin_lsx_vexth_du_wu((v4u32
)_1
);
3189 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3190 __lsx_vexth_qu_du(__m128i _1
) {
3191 return (__m128i
)__builtin_lsx_vexth_qu_du((v2u64
)_1
);
3194 #define __lsx_vrotri_b(/*__m128i*/ _1, /*ui3*/ _2) \
3195 ((__m128i)__builtin_lsx_vrotri_b((v16i8)(_1), (_2)))
3197 #define __lsx_vrotri_h(/*__m128i*/ _1, /*ui4*/ _2) \
3198 ((__m128i)__builtin_lsx_vrotri_h((v8i16)(_1), (_2)))
3200 #define __lsx_vrotri_w(/*__m128i*/ _1, /*ui5*/ _2) \
3201 ((__m128i)__builtin_lsx_vrotri_w((v4i32)(_1), (_2)))
3203 #define __lsx_vrotri_d(/*__m128i*/ _1, /*ui6*/ _2) \
3204 ((__m128i)__builtin_lsx_vrotri_d((v2i64)(_1), (_2)))
3207 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3208 __lsx_vextl_q_d(__m128i _1
) {
3209 return (__m128i
)__builtin_lsx_vextl_q_d((v2i64
)_1
);
3212 #define __lsx_vsrlni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3213 ((__m128i)__builtin_lsx_vsrlni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3215 #define __lsx_vsrlni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3216 ((__m128i)__builtin_lsx_vsrlni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3218 #define __lsx_vsrlni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3219 ((__m128i)__builtin_lsx_vsrlni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3221 #define __lsx_vsrlni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3222 ((__m128i)__builtin_lsx_vsrlni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3224 #define __lsx_vsrlrni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3225 ((__m128i)__builtin_lsx_vsrlrni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3227 #define __lsx_vsrlrni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3228 ((__m128i)__builtin_lsx_vsrlrni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3230 #define __lsx_vsrlrni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3231 ((__m128i)__builtin_lsx_vsrlrni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3233 #define __lsx_vsrlrni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3234 ((__m128i)__builtin_lsx_vsrlrni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3236 #define __lsx_vssrlni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3237 ((__m128i)__builtin_lsx_vssrlni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3239 #define __lsx_vssrlni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3240 ((__m128i)__builtin_lsx_vssrlni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3242 #define __lsx_vssrlni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3243 ((__m128i)__builtin_lsx_vssrlni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3245 #define __lsx_vssrlni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3246 ((__m128i)__builtin_lsx_vssrlni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3248 #define __lsx_vssrlni_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3249 ((__m128i)__builtin_lsx_vssrlni_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))
3251 #define __lsx_vssrlni_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3252 ((__m128i)__builtin_lsx_vssrlni_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))
3254 #define __lsx_vssrlni_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3255 ((__m128i)__builtin_lsx_vssrlni_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))
3257 #define __lsx_vssrlni_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3258 ((__m128i)__builtin_lsx_vssrlni_du_q((v2u64)(_1), (v2i64)(_2), (_3)))
3260 #define __lsx_vssrlrni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3261 ((__m128i)__builtin_lsx_vssrlrni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3263 #define __lsx_vssrlrni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3264 ((__m128i)__builtin_lsx_vssrlrni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3266 #define __lsx_vssrlrni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3267 ((__m128i)__builtin_lsx_vssrlrni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3269 #define __lsx_vssrlrni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3270 ((__m128i)__builtin_lsx_vssrlrni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3272 #define __lsx_vssrlrni_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3273 ((__m128i)__builtin_lsx_vssrlrni_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))
3275 #define __lsx_vssrlrni_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3276 ((__m128i)__builtin_lsx_vssrlrni_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))
3278 #define __lsx_vssrlrni_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3279 ((__m128i)__builtin_lsx_vssrlrni_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))
3281 #define __lsx_vssrlrni_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3282 ((__m128i)__builtin_lsx_vssrlrni_du_q((v2u64)(_1), (v2i64)(_2), (_3)))
3284 #define __lsx_vsrani_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3285 ((__m128i)__builtin_lsx_vsrani_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3287 #define __lsx_vsrani_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3288 ((__m128i)__builtin_lsx_vsrani_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3290 #define __lsx_vsrani_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3291 ((__m128i)__builtin_lsx_vsrani_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3293 #define __lsx_vsrani_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3294 ((__m128i)__builtin_lsx_vsrani_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3296 #define __lsx_vsrarni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3297 ((__m128i)__builtin_lsx_vsrarni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3299 #define __lsx_vsrarni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3300 ((__m128i)__builtin_lsx_vsrarni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3302 #define __lsx_vsrarni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3303 ((__m128i)__builtin_lsx_vsrarni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3305 #define __lsx_vsrarni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3306 ((__m128i)__builtin_lsx_vsrarni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3308 #define __lsx_vssrani_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3309 ((__m128i)__builtin_lsx_vssrani_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3311 #define __lsx_vssrani_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3312 ((__m128i)__builtin_lsx_vssrani_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3314 #define __lsx_vssrani_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3315 ((__m128i)__builtin_lsx_vssrani_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3317 #define __lsx_vssrani_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3318 ((__m128i)__builtin_lsx_vssrani_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3320 #define __lsx_vssrani_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3321 ((__m128i)__builtin_lsx_vssrani_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))
3323 #define __lsx_vssrani_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3324 ((__m128i)__builtin_lsx_vssrani_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))
3326 #define __lsx_vssrani_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3327 ((__m128i)__builtin_lsx_vssrani_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))
3329 #define __lsx_vssrani_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3330 ((__m128i)__builtin_lsx_vssrani_du_q((v2u64)(_1), (v2i64)(_2), (_3)))
3332 #define __lsx_vssrarni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3333 ((__m128i)__builtin_lsx_vssrarni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))
3335 #define __lsx_vssrarni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3336 ((__m128i)__builtin_lsx_vssrarni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))
3338 #define __lsx_vssrarni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3339 ((__m128i)__builtin_lsx_vssrarni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))
3341 #define __lsx_vssrarni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3342 ((__m128i)__builtin_lsx_vssrarni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))
3344 #define __lsx_vssrarni_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \
3345 ((__m128i)__builtin_lsx_vssrarni_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))
3347 #define __lsx_vssrarni_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \
3348 ((__m128i)__builtin_lsx_vssrarni_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))
3350 #define __lsx_vssrarni_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \
3351 ((__m128i)__builtin_lsx_vssrarni_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))
3353 #define __lsx_vssrarni_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \
3354 ((__m128i)__builtin_lsx_vssrarni_du_q((v2u64)(_1), (v2i64)(_2), (_3)))
3356 #define __lsx_vpermi_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \
3357 ((__m128i)__builtin_lsx_vpermi_w((v4i32)(_1), (v4i32)(_2), (_3)))
3359 #define __lsx_vld(/*void **/ _1, /*si12*/ _2) \
3360 ((__m128i)__builtin_lsx_vld((void const *)(_1), (_2)))
3362 #define __lsx_vst(/*__m128i*/ _1, /*void **/ _2, /*si12*/ _3) \
3363 ((void)__builtin_lsx_vst((v16i8)(_1), (void *)(_2), (_3)))
3366 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3367 __lsx_vssrlrn_b_h(__m128i _1
, __m128i _2
) {
3368 return (__m128i
)__builtin_lsx_vssrlrn_b_h((v8i16
)_1
, (v8i16
)_2
);
3372 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3373 __lsx_vssrlrn_h_w(__m128i _1
, __m128i _2
) {
3374 return (__m128i
)__builtin_lsx_vssrlrn_h_w((v4i32
)_1
, (v4i32
)_2
);
3378 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3379 __lsx_vssrlrn_w_d(__m128i _1
, __m128i _2
) {
3380 return (__m128i
)__builtin_lsx_vssrlrn_w_d((v2i64
)_1
, (v2i64
)_2
);
3384 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3385 __lsx_vssrln_b_h(__m128i _1
, __m128i _2
) {
3386 return (__m128i
)__builtin_lsx_vssrln_b_h((v8i16
)_1
, (v8i16
)_2
);
3390 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3391 __lsx_vssrln_h_w(__m128i _1
, __m128i _2
) {
3392 return (__m128i
)__builtin_lsx_vssrln_h_w((v4i32
)_1
, (v4i32
)_2
);
3396 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3397 __lsx_vssrln_w_d(__m128i _1
, __m128i _2
) {
3398 return (__m128i
)__builtin_lsx_vssrln_w_d((v2i64
)_1
, (v2i64
)_2
);
3402 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3403 __lsx_vorn_v(__m128i _1
, __m128i _2
) {
3404 return (__m128i
)__builtin_lsx_vorn_v((v16i8
)_1
, (v16i8
)_2
);
3407 #define __lsx_vldi(/*i13*/ _1) ((__m128i)__builtin_lsx_vldi((_1)))
3410 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3411 __lsx_vshuf_b(__m128i _1
, __m128i _2
, __m128i _3
) {
3412 return (__m128i
)__builtin_lsx_vshuf_b((v16i8
)_1
, (v16i8
)_2
, (v16i8
)_3
);
3416 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3417 __lsx_vldx(void const *_1
, long int _2
) {
3418 return (__m128i
)__builtin_lsx_vldx((void const *)_1
, (long int)_2
);
3422 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) void
3423 __lsx_vstx(__m128i _1
, void *_2
, long int _3
) {
3424 return (void)__builtin_lsx_vstx((v16i8
)_1
, (void *)_2
, (long int)_3
);
3428 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3429 __lsx_vextl_qu_du(__m128i _1
) {
3430 return (__m128i
)__builtin_lsx_vextl_qu_du((v2u64
)_1
);
3433 #define __lsx_bnz_b(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_b((v16u8)(_1)))
3435 #define __lsx_bnz_d(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_d((v2u64)(_1)))
3437 #define __lsx_bnz_h(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_h((v8u16)(_1)))
3439 #define __lsx_bnz_v(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_v((v16u8)(_1)))
3441 #define __lsx_bnz_w(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_w((v4u32)(_1)))
3443 #define __lsx_bz_b(/*__m128i*/ _1) ((int)__builtin_lsx_bz_b((v16u8)(_1)))
3445 #define __lsx_bz_d(/*__m128i*/ _1) ((int)__builtin_lsx_bz_d((v2u64)(_1)))
3447 #define __lsx_bz_h(/*__m128i*/ _1) ((int)__builtin_lsx_bz_h((v8u16)(_1)))
3449 #define __lsx_bz_v(/*__m128i*/ _1) ((int)__builtin_lsx_bz_v((v16u8)(_1)))
3451 #define __lsx_bz_w(/*__m128i*/ _1) ((int)__builtin_lsx_bz_w((v4u32)(_1)))
3454 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3455 __lsx_vfcmp_caf_d(__m128d _1
, __m128d _2
) {
3456 return (__m128i
)__builtin_lsx_vfcmp_caf_d((v2f64
)_1
, (v2f64
)_2
);
3460 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3461 __lsx_vfcmp_caf_s(__m128 _1
, __m128 _2
) {
3462 return (__m128i
)__builtin_lsx_vfcmp_caf_s((v4f32
)_1
, (v4f32
)_2
);
3466 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3467 __lsx_vfcmp_ceq_d(__m128d _1
, __m128d _2
) {
3468 return (__m128i
)__builtin_lsx_vfcmp_ceq_d((v2f64
)_1
, (v2f64
)_2
);
3472 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3473 __lsx_vfcmp_ceq_s(__m128 _1
, __m128 _2
) {
3474 return (__m128i
)__builtin_lsx_vfcmp_ceq_s((v4f32
)_1
, (v4f32
)_2
);
3478 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3479 __lsx_vfcmp_cle_d(__m128d _1
, __m128d _2
) {
3480 return (__m128i
)__builtin_lsx_vfcmp_cle_d((v2f64
)_1
, (v2f64
)_2
);
3484 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3485 __lsx_vfcmp_cle_s(__m128 _1
, __m128 _2
) {
3486 return (__m128i
)__builtin_lsx_vfcmp_cle_s((v4f32
)_1
, (v4f32
)_2
);
3490 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3491 __lsx_vfcmp_clt_d(__m128d _1
, __m128d _2
) {
3492 return (__m128i
)__builtin_lsx_vfcmp_clt_d((v2f64
)_1
, (v2f64
)_2
);
3496 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3497 __lsx_vfcmp_clt_s(__m128 _1
, __m128 _2
) {
3498 return (__m128i
)__builtin_lsx_vfcmp_clt_s((v4f32
)_1
, (v4f32
)_2
);
3502 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3503 __lsx_vfcmp_cne_d(__m128d _1
, __m128d _2
) {
3504 return (__m128i
)__builtin_lsx_vfcmp_cne_d((v2f64
)_1
, (v2f64
)_2
);
3508 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3509 __lsx_vfcmp_cne_s(__m128 _1
, __m128 _2
) {
3510 return (__m128i
)__builtin_lsx_vfcmp_cne_s((v4f32
)_1
, (v4f32
)_2
);
3514 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3515 __lsx_vfcmp_cor_d(__m128d _1
, __m128d _2
) {
3516 return (__m128i
)__builtin_lsx_vfcmp_cor_d((v2f64
)_1
, (v2f64
)_2
);
3520 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3521 __lsx_vfcmp_cor_s(__m128 _1
, __m128 _2
) {
3522 return (__m128i
)__builtin_lsx_vfcmp_cor_s((v4f32
)_1
, (v4f32
)_2
);
3526 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3527 __lsx_vfcmp_cueq_d(__m128d _1
, __m128d _2
) {
3528 return (__m128i
)__builtin_lsx_vfcmp_cueq_d((v2f64
)_1
, (v2f64
)_2
);
3532 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3533 __lsx_vfcmp_cueq_s(__m128 _1
, __m128 _2
) {
3534 return (__m128i
)__builtin_lsx_vfcmp_cueq_s((v4f32
)_1
, (v4f32
)_2
);
3538 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3539 __lsx_vfcmp_cule_d(__m128d _1
, __m128d _2
) {
3540 return (__m128i
)__builtin_lsx_vfcmp_cule_d((v2f64
)_1
, (v2f64
)_2
);
3544 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3545 __lsx_vfcmp_cule_s(__m128 _1
, __m128 _2
) {
3546 return (__m128i
)__builtin_lsx_vfcmp_cule_s((v4f32
)_1
, (v4f32
)_2
);
3550 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3551 __lsx_vfcmp_cult_d(__m128d _1
, __m128d _2
) {
3552 return (__m128i
)__builtin_lsx_vfcmp_cult_d((v2f64
)_1
, (v2f64
)_2
);
3556 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3557 __lsx_vfcmp_cult_s(__m128 _1
, __m128 _2
) {
3558 return (__m128i
)__builtin_lsx_vfcmp_cult_s((v4f32
)_1
, (v4f32
)_2
);
3562 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3563 __lsx_vfcmp_cun_d(__m128d _1
, __m128d _2
) {
3564 return (__m128i
)__builtin_lsx_vfcmp_cun_d((v2f64
)_1
, (v2f64
)_2
);
3568 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3569 __lsx_vfcmp_cune_d(__m128d _1
, __m128d _2
) {
3570 return (__m128i
)__builtin_lsx_vfcmp_cune_d((v2f64
)_1
, (v2f64
)_2
);
3574 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3575 __lsx_vfcmp_cune_s(__m128 _1
, __m128 _2
) {
3576 return (__m128i
)__builtin_lsx_vfcmp_cune_s((v4f32
)_1
, (v4f32
)_2
);
3580 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3581 __lsx_vfcmp_cun_s(__m128 _1
, __m128 _2
) {
3582 return (__m128i
)__builtin_lsx_vfcmp_cun_s((v4f32
)_1
, (v4f32
)_2
);
3586 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3587 __lsx_vfcmp_saf_d(__m128d _1
, __m128d _2
) {
3588 return (__m128i
)__builtin_lsx_vfcmp_saf_d((v2f64
)_1
, (v2f64
)_2
);
3592 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3593 __lsx_vfcmp_saf_s(__m128 _1
, __m128 _2
) {
3594 return (__m128i
)__builtin_lsx_vfcmp_saf_s((v4f32
)_1
, (v4f32
)_2
);
3598 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3599 __lsx_vfcmp_seq_d(__m128d _1
, __m128d _2
) {
3600 return (__m128i
)__builtin_lsx_vfcmp_seq_d((v2f64
)_1
, (v2f64
)_2
);
3604 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3605 __lsx_vfcmp_seq_s(__m128 _1
, __m128 _2
) {
3606 return (__m128i
)__builtin_lsx_vfcmp_seq_s((v4f32
)_1
, (v4f32
)_2
);
3610 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3611 __lsx_vfcmp_sle_d(__m128d _1
, __m128d _2
) {
3612 return (__m128i
)__builtin_lsx_vfcmp_sle_d((v2f64
)_1
, (v2f64
)_2
);
3616 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3617 __lsx_vfcmp_sle_s(__m128 _1
, __m128 _2
) {
3618 return (__m128i
)__builtin_lsx_vfcmp_sle_s((v4f32
)_1
, (v4f32
)_2
);
3622 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3623 __lsx_vfcmp_slt_d(__m128d _1
, __m128d _2
) {
3624 return (__m128i
)__builtin_lsx_vfcmp_slt_d((v2f64
)_1
, (v2f64
)_2
);
3628 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3629 __lsx_vfcmp_slt_s(__m128 _1
, __m128 _2
) {
3630 return (__m128i
)__builtin_lsx_vfcmp_slt_s((v4f32
)_1
, (v4f32
)_2
);
3634 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3635 __lsx_vfcmp_sne_d(__m128d _1
, __m128d _2
) {
3636 return (__m128i
)__builtin_lsx_vfcmp_sne_d((v2f64
)_1
, (v2f64
)_2
);
3640 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3641 __lsx_vfcmp_sne_s(__m128 _1
, __m128 _2
) {
3642 return (__m128i
)__builtin_lsx_vfcmp_sne_s((v4f32
)_1
, (v4f32
)_2
);
3646 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3647 __lsx_vfcmp_sor_d(__m128d _1
, __m128d _2
) {
3648 return (__m128i
)__builtin_lsx_vfcmp_sor_d((v2f64
)_1
, (v2f64
)_2
);
3652 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3653 __lsx_vfcmp_sor_s(__m128 _1
, __m128 _2
) {
3654 return (__m128i
)__builtin_lsx_vfcmp_sor_s((v4f32
)_1
, (v4f32
)_2
);
3658 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3659 __lsx_vfcmp_sueq_d(__m128d _1
, __m128d _2
) {
3660 return (__m128i
)__builtin_lsx_vfcmp_sueq_d((v2f64
)_1
, (v2f64
)_2
);
3664 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3665 __lsx_vfcmp_sueq_s(__m128 _1
, __m128 _2
) {
3666 return (__m128i
)__builtin_lsx_vfcmp_sueq_s((v4f32
)_1
, (v4f32
)_2
);
3670 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3671 __lsx_vfcmp_sule_d(__m128d _1
, __m128d _2
) {
3672 return (__m128i
)__builtin_lsx_vfcmp_sule_d((v2f64
)_1
, (v2f64
)_2
);
3676 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3677 __lsx_vfcmp_sule_s(__m128 _1
, __m128 _2
) {
3678 return (__m128i
)__builtin_lsx_vfcmp_sule_s((v4f32
)_1
, (v4f32
)_2
);
3682 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3683 __lsx_vfcmp_sult_d(__m128d _1
, __m128d _2
) {
3684 return (__m128i
)__builtin_lsx_vfcmp_sult_d((v2f64
)_1
, (v2f64
)_2
);
3688 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3689 __lsx_vfcmp_sult_s(__m128 _1
, __m128 _2
) {
3690 return (__m128i
)__builtin_lsx_vfcmp_sult_s((v4f32
)_1
, (v4f32
)_2
);
3694 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3695 __lsx_vfcmp_sun_d(__m128d _1
, __m128d _2
) {
3696 return (__m128i
)__builtin_lsx_vfcmp_sun_d((v2f64
)_1
, (v2f64
)_2
);
3700 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3701 __lsx_vfcmp_sune_d(__m128d _1
, __m128d _2
) {
3702 return (__m128i
)__builtin_lsx_vfcmp_sune_d((v2f64
)_1
, (v2f64
)_2
);
3706 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3707 __lsx_vfcmp_sune_s(__m128 _1
, __m128 _2
) {
3708 return (__m128i
)__builtin_lsx_vfcmp_sune_s((v4f32
)_1
, (v4f32
)_2
);
3712 __attribute__((__gnu_inline__
, __always_inline__
, __artificial__
)) __m128i
3713 __lsx_vfcmp_sun_s(__m128 _1
, __m128 _2
) {
3714 return (__m128i
)__builtin_lsx_vfcmp_sun_s((v4f32
)_1
, (v4f32
)_2
);
3717 #define __lsx_vrepli_b(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_b((_1)))
3719 #define __lsx_vrepli_d(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_d((_1)))
3721 #define __lsx_vrepli_h(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_h((_1)))
3723 #define __lsx_vrepli_w(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_w((_1)))
3725 #endif /* defined(__loongarch_sx) */
3726 #endif /* _LOONGSON_SXINTRIN_H */