3753 lines · c
1/*===------------- lsxintrin.h - LoongArch LSX intrinsics ------------------===2 *3 * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4 * See https://llvm.org/LICENSE.txt for license information.5 * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6 *7 *===-----------------------------------------------------------------------===8 */9 10#ifndef _LOONGSON_SXINTRIN_H11#define _LOONGSON_SXINTRIN_H 112 13#if defined(__loongarch_sx)14typedef signed char v16i8 __attribute__((vector_size(16), aligned(16)));15typedef signed char v16i8_b __attribute__((vector_size(16), aligned(1)));16typedef unsigned char v16u8 __attribute__((vector_size(16), aligned(16)));17typedef unsigned char v16u8_b __attribute__((vector_size(16), aligned(1)));18typedef short v8i16 __attribute__((vector_size(16), aligned(16)));19typedef short v8i16_h __attribute__((vector_size(16), aligned(2)));20typedef unsigned short v8u16 __attribute__((vector_size(16), aligned(16)));21typedef unsigned short v8u16_h __attribute__((vector_size(16), aligned(2)));22typedef int v4i32 __attribute__((vector_size(16), aligned(16)));23typedef int v4i32_w __attribute__((vector_size(16), aligned(4)));24typedef unsigned int v4u32 __attribute__((vector_size(16), aligned(16)));25typedef unsigned int v4u32_w __attribute__((vector_size(16), aligned(4)));26typedef long long v2i64 __attribute__((vector_size(16), aligned(16)));27typedef long long v2i64_d __attribute__((vector_size(16), aligned(8)));28typedef unsigned long long v2u64 __attribute__((vector_size(16), aligned(16)));29typedef unsigned long long v2u64_d __attribute__((vector_size(16), aligned(8)));30typedef float v4f32 __attribute__((vector_size(16), aligned(16)));31typedef float v4f32_w __attribute__((vector_size(16), aligned(4)));32typedef double v2f64 __attribute__((vector_size(16), aligned(16)));33typedef double v2f64_d __attribute__((vector_size(16), aligned(8)));34 35typedef long long __m128i __attribute__((__vector_size__(16), __may_alias__));36typedef float __m128 __attribute__((__vector_size__(16), __may_alias__));37typedef double __m128d __attribute__((__vector_size__(16), __may_alias__));38 39extern __inline40 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i41 __lsx_vsll_b(__m128i _1, __m128i _2) {42 return (__m128i)__builtin_lsx_vsll_b((v16i8)_1, (v16i8)_2);43}44 45extern __inline46 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i47 __lsx_vsll_h(__m128i _1, __m128i _2) {48 return (__m128i)__builtin_lsx_vsll_h((v8i16)_1, (v8i16)_2);49}50 51extern __inline52 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i53 __lsx_vsll_w(__m128i _1, __m128i _2) {54 return (__m128i)__builtin_lsx_vsll_w((v4i32)_1, (v4i32)_2);55}56 57extern __inline58 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i59 __lsx_vsll_d(__m128i _1, __m128i _2) {60 return (__m128i)__builtin_lsx_vsll_d((v2i64)_1, (v2i64)_2);61}62 63#define __lsx_vslli_b(/*__m128i*/ _1, /*ui3*/ _2) \64 ((__m128i)__builtin_lsx_vslli_b((v16i8)(_1), (_2)))65 66#define __lsx_vslli_h(/*__m128i*/ _1, /*ui4*/ _2) \67 ((__m128i)__builtin_lsx_vslli_h((v8i16)(_1), (_2)))68 69#define __lsx_vslli_w(/*__m128i*/ _1, /*ui5*/ _2) \70 ((__m128i)__builtin_lsx_vslli_w((v4i32)(_1), (_2)))71 72#define __lsx_vslli_d(/*__m128i*/ _1, /*ui6*/ _2) \73 ((__m128i)__builtin_lsx_vslli_d((v2i64)(_1), (_2)))74 75extern __inline76 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i77 __lsx_vsra_b(__m128i _1, __m128i _2) {78 return (__m128i)__builtin_lsx_vsra_b((v16i8)_1, (v16i8)_2);79}80 81extern __inline82 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i83 __lsx_vsra_h(__m128i _1, __m128i _2) {84 return (__m128i)__builtin_lsx_vsra_h((v8i16)_1, (v8i16)_2);85}86 87extern __inline88 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i89 __lsx_vsra_w(__m128i _1, __m128i _2) {90 return (__m128i)__builtin_lsx_vsra_w((v4i32)_1, (v4i32)_2);91}92 93extern __inline94 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i95 __lsx_vsra_d(__m128i _1, __m128i _2) {96 return (__m128i)__builtin_lsx_vsra_d((v2i64)_1, (v2i64)_2);97}98 99#define __lsx_vsrai_b(/*__m128i*/ _1, /*ui3*/ _2) \100 ((__m128i)__builtin_lsx_vsrai_b((v16i8)(_1), (_2)))101 102#define __lsx_vsrai_h(/*__m128i*/ _1, /*ui4*/ _2) \103 ((__m128i)__builtin_lsx_vsrai_h((v8i16)(_1), (_2)))104 105#define __lsx_vsrai_w(/*__m128i*/ _1, /*ui5*/ _2) \106 ((__m128i)__builtin_lsx_vsrai_w((v4i32)(_1), (_2)))107 108#define __lsx_vsrai_d(/*__m128i*/ _1, /*ui6*/ _2) \109 ((__m128i)__builtin_lsx_vsrai_d((v2i64)(_1), (_2)))110 111extern __inline112 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i113 __lsx_vsrar_b(__m128i _1, __m128i _2) {114 return (__m128i)__builtin_lsx_vsrar_b((v16i8)_1, (v16i8)_2);115}116 117extern __inline118 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i119 __lsx_vsrar_h(__m128i _1, __m128i _2) {120 return (__m128i)__builtin_lsx_vsrar_h((v8i16)_1, (v8i16)_2);121}122 123extern __inline124 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i125 __lsx_vsrar_w(__m128i _1, __m128i _2) {126 return (__m128i)__builtin_lsx_vsrar_w((v4i32)_1, (v4i32)_2);127}128 129extern __inline130 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i131 __lsx_vsrar_d(__m128i _1, __m128i _2) {132 return (__m128i)__builtin_lsx_vsrar_d((v2i64)_1, (v2i64)_2);133}134 135#define __lsx_vsrari_b(/*__m128i*/ _1, /*ui3*/ _2) \136 ((__m128i)__builtin_lsx_vsrari_b((v16i8)(_1), (_2)))137 138#define __lsx_vsrari_h(/*__m128i*/ _1, /*ui4*/ _2) \139 ((__m128i)__builtin_lsx_vsrari_h((v8i16)(_1), (_2)))140 141#define __lsx_vsrari_w(/*__m128i*/ _1, /*ui5*/ _2) \142 ((__m128i)__builtin_lsx_vsrari_w((v4i32)(_1), (_2)))143 144#define __lsx_vsrari_d(/*__m128i*/ _1, /*ui6*/ _2) \145 ((__m128i)__builtin_lsx_vsrari_d((v2i64)(_1), (_2)))146 147extern __inline148 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i149 __lsx_vsrl_b(__m128i _1, __m128i _2) {150 return (__m128i)__builtin_lsx_vsrl_b((v16i8)_1, (v16i8)_2);151}152 153extern __inline154 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i155 __lsx_vsrl_h(__m128i _1, __m128i _2) {156 return (__m128i)__builtin_lsx_vsrl_h((v8i16)_1, (v8i16)_2);157}158 159extern __inline160 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i161 __lsx_vsrl_w(__m128i _1, __m128i _2) {162 return (__m128i)__builtin_lsx_vsrl_w((v4i32)_1, (v4i32)_2);163}164 165extern __inline166 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i167 __lsx_vsrl_d(__m128i _1, __m128i _2) {168 return (__m128i)__builtin_lsx_vsrl_d((v2i64)_1, (v2i64)_2);169}170 171#define __lsx_vsrli_b(/*__m128i*/ _1, /*ui3*/ _2) \172 ((__m128i)__builtin_lsx_vsrli_b((v16i8)(_1), (_2)))173 174#define __lsx_vsrli_h(/*__m128i*/ _1, /*ui4*/ _2) \175 ((__m128i)__builtin_lsx_vsrli_h((v8i16)(_1), (_2)))176 177#define __lsx_vsrli_w(/*__m128i*/ _1, /*ui5*/ _2) \178 ((__m128i)__builtin_lsx_vsrli_w((v4i32)(_1), (_2)))179 180#define __lsx_vsrli_d(/*__m128i*/ _1, /*ui6*/ _2) \181 ((__m128i)__builtin_lsx_vsrli_d((v2i64)(_1), (_2)))182 183extern __inline184 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i185 __lsx_vsrlr_b(__m128i _1, __m128i _2) {186 return (__m128i)__builtin_lsx_vsrlr_b((v16i8)_1, (v16i8)_2);187}188 189extern __inline190 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i191 __lsx_vsrlr_h(__m128i _1, __m128i _2) {192 return (__m128i)__builtin_lsx_vsrlr_h((v8i16)_1, (v8i16)_2);193}194 195extern __inline196 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i197 __lsx_vsrlr_w(__m128i _1, __m128i _2) {198 return (__m128i)__builtin_lsx_vsrlr_w((v4i32)_1, (v4i32)_2);199}200 201extern __inline202 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i203 __lsx_vsrlr_d(__m128i _1, __m128i _2) {204 return (__m128i)__builtin_lsx_vsrlr_d((v2i64)_1, (v2i64)_2);205}206 207#define __lsx_vsrlri_b(/*__m128i*/ _1, /*ui3*/ _2) \208 ((__m128i)__builtin_lsx_vsrlri_b((v16i8)(_1), (_2)))209 210#define __lsx_vsrlri_h(/*__m128i*/ _1, /*ui4*/ _2) \211 ((__m128i)__builtin_lsx_vsrlri_h((v8i16)(_1), (_2)))212 213#define __lsx_vsrlri_w(/*__m128i*/ _1, /*ui5*/ _2) \214 ((__m128i)__builtin_lsx_vsrlri_w((v4i32)(_1), (_2)))215 216#define __lsx_vsrlri_d(/*__m128i*/ _1, /*ui6*/ _2) \217 ((__m128i)__builtin_lsx_vsrlri_d((v2i64)(_1), (_2)))218 219extern __inline220 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i221 __lsx_vbitclr_b(__m128i _1, __m128i _2) {222 return (__m128i)__builtin_lsx_vbitclr_b((v16u8)_1, (v16u8)_2);223}224 225extern __inline226 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i227 __lsx_vbitclr_h(__m128i _1, __m128i _2) {228 return (__m128i)__builtin_lsx_vbitclr_h((v8u16)_1, (v8u16)_2);229}230 231extern __inline232 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i233 __lsx_vbitclr_w(__m128i _1, __m128i _2) {234 return (__m128i)__builtin_lsx_vbitclr_w((v4u32)_1, (v4u32)_2);235}236 237extern __inline238 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i239 __lsx_vbitclr_d(__m128i _1, __m128i _2) {240 return (__m128i)__builtin_lsx_vbitclr_d((v2u64)_1, (v2u64)_2);241}242 243#define __lsx_vbitclri_b(/*__m128i*/ _1, /*ui3*/ _2) \244 ((__m128i)__builtin_lsx_vbitclri_b((v16u8)(_1), (_2)))245 246#define __lsx_vbitclri_h(/*__m128i*/ _1, /*ui4*/ _2) \247 ((__m128i)__builtin_lsx_vbitclri_h((v8u16)(_1), (_2)))248 249#define __lsx_vbitclri_w(/*__m128i*/ _1, /*ui5*/ _2) \250 ((__m128i)__builtin_lsx_vbitclri_w((v4u32)(_1), (_2)))251 252#define __lsx_vbitclri_d(/*__m128i*/ _1, /*ui6*/ _2) \253 ((__m128i)__builtin_lsx_vbitclri_d((v2u64)(_1), (_2)))254 255extern __inline256 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i257 __lsx_vbitset_b(__m128i _1, __m128i _2) {258 return (__m128i)__builtin_lsx_vbitset_b((v16u8)_1, (v16u8)_2);259}260 261extern __inline262 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i263 __lsx_vbitset_h(__m128i _1, __m128i _2) {264 return (__m128i)__builtin_lsx_vbitset_h((v8u16)_1, (v8u16)_2);265}266 267extern __inline268 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i269 __lsx_vbitset_w(__m128i _1, __m128i _2) {270 return (__m128i)__builtin_lsx_vbitset_w((v4u32)_1, (v4u32)_2);271}272 273extern __inline274 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i275 __lsx_vbitset_d(__m128i _1, __m128i _2) {276 return (__m128i)__builtin_lsx_vbitset_d((v2u64)_1, (v2u64)_2);277}278 279#define __lsx_vbitseti_b(/*__m128i*/ _1, /*ui3*/ _2) \280 ((__m128i)__builtin_lsx_vbitseti_b((v16u8)(_1), (_2)))281 282#define __lsx_vbitseti_h(/*__m128i*/ _1, /*ui4*/ _2) \283 ((__m128i)__builtin_lsx_vbitseti_h((v8u16)(_1), (_2)))284 285#define __lsx_vbitseti_w(/*__m128i*/ _1, /*ui5*/ _2) \286 ((__m128i)__builtin_lsx_vbitseti_w((v4u32)(_1), (_2)))287 288#define __lsx_vbitseti_d(/*__m128i*/ _1, /*ui6*/ _2) \289 ((__m128i)__builtin_lsx_vbitseti_d((v2u64)(_1), (_2)))290 291extern __inline292 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i293 __lsx_vbitrev_b(__m128i _1, __m128i _2) {294 return (__m128i)__builtin_lsx_vbitrev_b((v16u8)_1, (v16u8)_2);295}296 297extern __inline298 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i299 __lsx_vbitrev_h(__m128i _1, __m128i _2) {300 return (__m128i)__builtin_lsx_vbitrev_h((v8u16)_1, (v8u16)_2);301}302 303extern __inline304 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i305 __lsx_vbitrev_w(__m128i _1, __m128i _2) {306 return (__m128i)__builtin_lsx_vbitrev_w((v4u32)_1, (v4u32)_2);307}308 309extern __inline310 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i311 __lsx_vbitrev_d(__m128i _1, __m128i _2) {312 return (__m128i)__builtin_lsx_vbitrev_d((v2u64)_1, (v2u64)_2);313}314 315#define __lsx_vbitrevi_b(/*__m128i*/ _1, /*ui3*/ _2) \316 ((__m128i)__builtin_lsx_vbitrevi_b((v16u8)(_1), (_2)))317 318#define __lsx_vbitrevi_h(/*__m128i*/ _1, /*ui4*/ _2) \319 ((__m128i)__builtin_lsx_vbitrevi_h((v8u16)(_1), (_2)))320 321#define __lsx_vbitrevi_w(/*__m128i*/ _1, /*ui5*/ _2) \322 ((__m128i)__builtin_lsx_vbitrevi_w((v4u32)(_1), (_2)))323 324#define __lsx_vbitrevi_d(/*__m128i*/ _1, /*ui6*/ _2) \325 ((__m128i)__builtin_lsx_vbitrevi_d((v2u64)(_1), (_2)))326 327extern __inline328 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i329 __lsx_vadd_b(__m128i _1, __m128i _2) {330 return (__m128i)__builtin_lsx_vadd_b((v16i8)_1, (v16i8)_2);331}332 333extern __inline334 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i335 __lsx_vadd_h(__m128i _1, __m128i _2) {336 return (__m128i)__builtin_lsx_vadd_h((v8i16)_1, (v8i16)_2);337}338 339extern __inline340 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i341 __lsx_vadd_w(__m128i _1, __m128i _2) {342 return (__m128i)__builtin_lsx_vadd_w((v4i32)_1, (v4i32)_2);343}344 345extern __inline346 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i347 __lsx_vadd_d(__m128i _1, __m128i _2) {348 return (__m128i)__builtin_lsx_vadd_d((v2i64)_1, (v2i64)_2);349}350 351#define __lsx_vaddi_bu(/*__m128i*/ _1, /*ui5*/ _2) \352 ((__m128i)__builtin_lsx_vaddi_bu((v16i8)(_1), (_2)))353 354#define __lsx_vaddi_hu(/*__m128i*/ _1, /*ui5*/ _2) \355 ((__m128i)__builtin_lsx_vaddi_hu((v8i16)(_1), (_2)))356 357#define __lsx_vaddi_wu(/*__m128i*/ _1, /*ui5*/ _2) \358 ((__m128i)__builtin_lsx_vaddi_wu((v4i32)(_1), (_2)))359 360#define __lsx_vaddi_du(/*__m128i*/ _1, /*ui5*/ _2) \361 ((__m128i)__builtin_lsx_vaddi_du((v2i64)(_1), (_2)))362 363extern __inline364 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i365 __lsx_vsub_b(__m128i _1, __m128i _2) {366 return (__m128i)__builtin_lsx_vsub_b((v16i8)_1, (v16i8)_2);367}368 369extern __inline370 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i371 __lsx_vsub_h(__m128i _1, __m128i _2) {372 return (__m128i)__builtin_lsx_vsub_h((v8i16)_1, (v8i16)_2);373}374 375extern __inline376 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i377 __lsx_vsub_w(__m128i _1, __m128i _2) {378 return (__m128i)__builtin_lsx_vsub_w((v4i32)_1, (v4i32)_2);379}380 381extern __inline382 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i383 __lsx_vsub_d(__m128i _1, __m128i _2) {384 return (__m128i)__builtin_lsx_vsub_d((v2i64)_1, (v2i64)_2);385}386 387#define __lsx_vsubi_bu(/*__m128i*/ _1, /*ui5*/ _2) \388 ((__m128i)__builtin_lsx_vsubi_bu((v16i8)(_1), (_2)))389 390#define __lsx_vsubi_hu(/*__m128i*/ _1, /*ui5*/ _2) \391 ((__m128i)__builtin_lsx_vsubi_hu((v8i16)(_1), (_2)))392 393#define __lsx_vsubi_wu(/*__m128i*/ _1, /*ui5*/ _2) \394 ((__m128i)__builtin_lsx_vsubi_wu((v4i32)(_1), (_2)))395 396#define __lsx_vsubi_du(/*__m128i*/ _1, /*ui5*/ _2) \397 ((__m128i)__builtin_lsx_vsubi_du((v2i64)(_1), (_2)))398 399extern __inline400 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i401 __lsx_vmax_b(__m128i _1, __m128i _2) {402 return (__m128i)__builtin_lsx_vmax_b((v16i8)_1, (v16i8)_2);403}404 405extern __inline406 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i407 __lsx_vmax_h(__m128i _1, __m128i _2) {408 return (__m128i)__builtin_lsx_vmax_h((v8i16)_1, (v8i16)_2);409}410 411extern __inline412 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i413 __lsx_vmax_w(__m128i _1, __m128i _2) {414 return (__m128i)__builtin_lsx_vmax_w((v4i32)_1, (v4i32)_2);415}416 417extern __inline418 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i419 __lsx_vmax_d(__m128i _1, __m128i _2) {420 return (__m128i)__builtin_lsx_vmax_d((v2i64)_1, (v2i64)_2);421}422 423#define __lsx_vmaxi_b(/*__m128i*/ _1, /*si5*/ _2) \424 ((__m128i)__builtin_lsx_vmaxi_b((v16i8)(_1), (_2)))425 426#define __lsx_vmaxi_h(/*__m128i*/ _1, /*si5*/ _2) \427 ((__m128i)__builtin_lsx_vmaxi_h((v8i16)(_1), (_2)))428 429#define __lsx_vmaxi_w(/*__m128i*/ _1, /*si5*/ _2) \430 ((__m128i)__builtin_lsx_vmaxi_w((v4i32)(_1), (_2)))431 432#define __lsx_vmaxi_d(/*__m128i*/ _1, /*si5*/ _2) \433 ((__m128i)__builtin_lsx_vmaxi_d((v2i64)(_1), (_2)))434 435extern __inline436 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i437 __lsx_vmax_bu(__m128i _1, __m128i _2) {438 return (__m128i)__builtin_lsx_vmax_bu((v16u8)_1, (v16u8)_2);439}440 441extern __inline442 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i443 __lsx_vmax_hu(__m128i _1, __m128i _2) {444 return (__m128i)__builtin_lsx_vmax_hu((v8u16)_1, (v8u16)_2);445}446 447extern __inline448 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i449 __lsx_vmax_wu(__m128i _1, __m128i _2) {450 return (__m128i)__builtin_lsx_vmax_wu((v4u32)_1, (v4u32)_2);451}452 453extern __inline454 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i455 __lsx_vmax_du(__m128i _1, __m128i _2) {456 return (__m128i)__builtin_lsx_vmax_du((v2u64)_1, (v2u64)_2);457}458 459#define __lsx_vmaxi_bu(/*__m128i*/ _1, /*ui5*/ _2) \460 ((__m128i)__builtin_lsx_vmaxi_bu((v16u8)(_1), (_2)))461 462#define __lsx_vmaxi_hu(/*__m128i*/ _1, /*ui5*/ _2) \463 ((__m128i)__builtin_lsx_vmaxi_hu((v8u16)(_1), (_2)))464 465#define __lsx_vmaxi_wu(/*__m128i*/ _1, /*ui5*/ _2) \466 ((__m128i)__builtin_lsx_vmaxi_wu((v4u32)(_1), (_2)))467 468#define __lsx_vmaxi_du(/*__m128i*/ _1, /*ui5*/ _2) \469 ((__m128i)__builtin_lsx_vmaxi_du((v2u64)(_1), (_2)))470 471extern __inline472 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i473 __lsx_vmin_b(__m128i _1, __m128i _2) {474 return (__m128i)__builtin_lsx_vmin_b((v16i8)_1, (v16i8)_2);475}476 477extern __inline478 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i479 __lsx_vmin_h(__m128i _1, __m128i _2) {480 return (__m128i)__builtin_lsx_vmin_h((v8i16)_1, (v8i16)_2);481}482 483extern __inline484 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i485 __lsx_vmin_w(__m128i _1, __m128i _2) {486 return (__m128i)__builtin_lsx_vmin_w((v4i32)_1, (v4i32)_2);487}488 489extern __inline490 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i491 __lsx_vmin_d(__m128i _1, __m128i _2) {492 return (__m128i)__builtin_lsx_vmin_d((v2i64)_1, (v2i64)_2);493}494 495#define __lsx_vmini_b(/*__m128i*/ _1, /*si5*/ _2) \496 ((__m128i)__builtin_lsx_vmini_b((v16i8)(_1), (_2)))497 498#define __lsx_vmini_h(/*__m128i*/ _1, /*si5*/ _2) \499 ((__m128i)__builtin_lsx_vmini_h((v8i16)(_1), (_2)))500 501#define __lsx_vmini_w(/*__m128i*/ _1, /*si5*/ _2) \502 ((__m128i)__builtin_lsx_vmini_w((v4i32)(_1), (_2)))503 504#define __lsx_vmini_d(/*__m128i*/ _1, /*si5*/ _2) \505 ((__m128i)__builtin_lsx_vmini_d((v2i64)(_1), (_2)))506 507extern __inline508 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i509 __lsx_vmin_bu(__m128i _1, __m128i _2) {510 return (__m128i)__builtin_lsx_vmin_bu((v16u8)_1, (v16u8)_2);511}512 513extern __inline514 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i515 __lsx_vmin_hu(__m128i _1, __m128i _2) {516 return (__m128i)__builtin_lsx_vmin_hu((v8u16)_1, (v8u16)_2);517}518 519extern __inline520 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i521 __lsx_vmin_wu(__m128i _1, __m128i _2) {522 return (__m128i)__builtin_lsx_vmin_wu((v4u32)_1, (v4u32)_2);523}524 525extern __inline526 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i527 __lsx_vmin_du(__m128i _1, __m128i _2) {528 return (__m128i)__builtin_lsx_vmin_du((v2u64)_1, (v2u64)_2);529}530 531#define __lsx_vmini_bu(/*__m128i*/ _1, /*ui5*/ _2) \532 ((__m128i)__builtin_lsx_vmini_bu((v16u8)(_1), (_2)))533 534#define __lsx_vmini_hu(/*__m128i*/ _1, /*ui5*/ _2) \535 ((__m128i)__builtin_lsx_vmini_hu((v8u16)(_1), (_2)))536 537#define __lsx_vmini_wu(/*__m128i*/ _1, /*ui5*/ _2) \538 ((__m128i)__builtin_lsx_vmini_wu((v4u32)(_1), (_2)))539 540#define __lsx_vmini_du(/*__m128i*/ _1, /*ui5*/ _2) \541 ((__m128i)__builtin_lsx_vmini_du((v2u64)(_1), (_2)))542 543extern __inline544 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i545 __lsx_vseq_b(__m128i _1, __m128i _2) {546 return (__m128i)__builtin_lsx_vseq_b((v16i8)_1, (v16i8)_2);547}548 549extern __inline550 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i551 __lsx_vseq_h(__m128i _1, __m128i _2) {552 return (__m128i)__builtin_lsx_vseq_h((v8i16)_1, (v8i16)_2);553}554 555extern __inline556 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i557 __lsx_vseq_w(__m128i _1, __m128i _2) {558 return (__m128i)__builtin_lsx_vseq_w((v4i32)_1, (v4i32)_2);559}560 561extern __inline562 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i563 __lsx_vseq_d(__m128i _1, __m128i _2) {564 return (__m128i)__builtin_lsx_vseq_d((v2i64)_1, (v2i64)_2);565}566 567#define __lsx_vseqi_b(/*__m128i*/ _1, /*si5*/ _2) \568 ((__m128i)__builtin_lsx_vseqi_b((v16i8)(_1), (_2)))569 570#define __lsx_vseqi_h(/*__m128i*/ _1, /*si5*/ _2) \571 ((__m128i)__builtin_lsx_vseqi_h((v8i16)(_1), (_2)))572 573#define __lsx_vseqi_w(/*__m128i*/ _1, /*si5*/ _2) \574 ((__m128i)__builtin_lsx_vseqi_w((v4i32)(_1), (_2)))575 576#define __lsx_vseqi_d(/*__m128i*/ _1, /*si5*/ _2) \577 ((__m128i)__builtin_lsx_vseqi_d((v2i64)(_1), (_2)))578 579#define __lsx_vslti_b(/*__m128i*/ _1, /*si5*/ _2) \580 ((__m128i)__builtin_lsx_vslti_b((v16i8)(_1), (_2)))581 582extern __inline583 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i584 __lsx_vslt_b(__m128i _1, __m128i _2) {585 return (__m128i)__builtin_lsx_vslt_b((v16i8)_1, (v16i8)_2);586}587 588extern __inline589 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i590 __lsx_vslt_h(__m128i _1, __m128i _2) {591 return (__m128i)__builtin_lsx_vslt_h((v8i16)_1, (v8i16)_2);592}593 594extern __inline595 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i596 __lsx_vslt_w(__m128i _1, __m128i _2) {597 return (__m128i)__builtin_lsx_vslt_w((v4i32)_1, (v4i32)_2);598}599 600extern __inline601 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i602 __lsx_vslt_d(__m128i _1, __m128i _2) {603 return (__m128i)__builtin_lsx_vslt_d((v2i64)_1, (v2i64)_2);604}605 606#define __lsx_vslti_h(/*__m128i*/ _1, /*si5*/ _2) \607 ((__m128i)__builtin_lsx_vslti_h((v8i16)(_1), (_2)))608 609#define __lsx_vslti_w(/*__m128i*/ _1, /*si5*/ _2) \610 ((__m128i)__builtin_lsx_vslti_w((v4i32)(_1), (_2)))611 612#define __lsx_vslti_d(/*__m128i*/ _1, /*si5*/ _2) \613 ((__m128i)__builtin_lsx_vslti_d((v2i64)(_1), (_2)))614 615extern __inline616 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i617 __lsx_vslt_bu(__m128i _1, __m128i _2) {618 return (__m128i)__builtin_lsx_vslt_bu((v16u8)_1, (v16u8)_2);619}620 621extern __inline622 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i623 __lsx_vslt_hu(__m128i _1, __m128i _2) {624 return (__m128i)__builtin_lsx_vslt_hu((v8u16)_1, (v8u16)_2);625}626 627extern __inline628 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i629 __lsx_vslt_wu(__m128i _1, __m128i _2) {630 return (__m128i)__builtin_lsx_vslt_wu((v4u32)_1, (v4u32)_2);631}632 633extern __inline634 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i635 __lsx_vslt_du(__m128i _1, __m128i _2) {636 return (__m128i)__builtin_lsx_vslt_du((v2u64)_1, (v2u64)_2);637}638 639#define __lsx_vslti_bu(/*__m128i*/ _1, /*ui5*/ _2) \640 ((__m128i)__builtin_lsx_vslti_bu((v16u8)(_1), (_2)))641 642#define __lsx_vslti_hu(/*__m128i*/ _1, /*ui5*/ _2) \643 ((__m128i)__builtin_lsx_vslti_hu((v8u16)(_1), (_2)))644 645#define __lsx_vslti_wu(/*__m128i*/ _1, /*ui5*/ _2) \646 ((__m128i)__builtin_lsx_vslti_wu((v4u32)(_1), (_2)))647 648#define __lsx_vslti_du(/*__m128i*/ _1, /*ui5*/ _2) \649 ((__m128i)__builtin_lsx_vslti_du((v2u64)(_1), (_2)))650 651extern __inline652 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i653 __lsx_vsle_b(__m128i _1, __m128i _2) {654 return (__m128i)__builtin_lsx_vsle_b((v16i8)_1, (v16i8)_2);655}656 657extern __inline658 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i659 __lsx_vsle_h(__m128i _1, __m128i _2) {660 return (__m128i)__builtin_lsx_vsle_h((v8i16)_1, (v8i16)_2);661}662 663extern __inline664 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i665 __lsx_vsle_w(__m128i _1, __m128i _2) {666 return (__m128i)__builtin_lsx_vsle_w((v4i32)_1, (v4i32)_2);667}668 669extern __inline670 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i671 __lsx_vsle_d(__m128i _1, __m128i _2) {672 return (__m128i)__builtin_lsx_vsle_d((v2i64)_1, (v2i64)_2);673}674 675#define __lsx_vslei_b(/*__m128i*/ _1, /*si5*/ _2) \676 ((__m128i)__builtin_lsx_vslei_b((v16i8)(_1), (_2)))677 678#define __lsx_vslei_h(/*__m128i*/ _1, /*si5*/ _2) \679 ((__m128i)__builtin_lsx_vslei_h((v8i16)(_1), (_2)))680 681#define __lsx_vslei_w(/*__m128i*/ _1, /*si5*/ _2) \682 ((__m128i)__builtin_lsx_vslei_w((v4i32)(_1), (_2)))683 684#define __lsx_vslei_d(/*__m128i*/ _1, /*si5*/ _2) \685 ((__m128i)__builtin_lsx_vslei_d((v2i64)(_1), (_2)))686 687extern __inline688 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i689 __lsx_vsle_bu(__m128i _1, __m128i _2) {690 return (__m128i)__builtin_lsx_vsle_bu((v16u8)_1, (v16u8)_2);691}692 693extern __inline694 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i695 __lsx_vsle_hu(__m128i _1, __m128i _2) {696 return (__m128i)__builtin_lsx_vsle_hu((v8u16)_1, (v8u16)_2);697}698 699extern __inline700 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i701 __lsx_vsle_wu(__m128i _1, __m128i _2) {702 return (__m128i)__builtin_lsx_vsle_wu((v4u32)_1, (v4u32)_2);703}704 705extern __inline706 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i707 __lsx_vsle_du(__m128i _1, __m128i _2) {708 return (__m128i)__builtin_lsx_vsle_du((v2u64)_1, (v2u64)_2);709}710 711#define __lsx_vslei_bu(/*__m128i*/ _1, /*ui5*/ _2) \712 ((__m128i)__builtin_lsx_vslei_bu((v16u8)(_1), (_2)))713 714#define __lsx_vslei_hu(/*__m128i*/ _1, /*ui5*/ _2) \715 ((__m128i)__builtin_lsx_vslei_hu((v8u16)(_1), (_2)))716 717#define __lsx_vslei_wu(/*__m128i*/ _1, /*ui5*/ _2) \718 ((__m128i)__builtin_lsx_vslei_wu((v4u32)(_1), (_2)))719 720#define __lsx_vslei_du(/*__m128i*/ _1, /*ui5*/ _2) \721 ((__m128i)__builtin_lsx_vslei_du((v2u64)(_1), (_2)))722 723#define __lsx_vsat_b(/*__m128i*/ _1, /*ui3*/ _2) \724 ((__m128i)__builtin_lsx_vsat_b((v16i8)(_1), (_2)))725 726#define __lsx_vsat_h(/*__m128i*/ _1, /*ui4*/ _2) \727 ((__m128i)__builtin_lsx_vsat_h((v8i16)(_1), (_2)))728 729#define __lsx_vsat_w(/*__m128i*/ _1, /*ui5*/ _2) \730 ((__m128i)__builtin_lsx_vsat_w((v4i32)(_1), (_2)))731 732#define __lsx_vsat_d(/*__m128i*/ _1, /*ui6*/ _2) \733 ((__m128i)__builtin_lsx_vsat_d((v2i64)(_1), (_2)))734 735#define __lsx_vsat_bu(/*__m128i*/ _1, /*ui3*/ _2) \736 ((__m128i)__builtin_lsx_vsat_bu((v16u8)(_1), (_2)))737 738#define __lsx_vsat_hu(/*__m128i*/ _1, /*ui4*/ _2) \739 ((__m128i)__builtin_lsx_vsat_hu((v8u16)(_1), (_2)))740 741#define __lsx_vsat_wu(/*__m128i*/ _1, /*ui5*/ _2) \742 ((__m128i)__builtin_lsx_vsat_wu((v4u32)(_1), (_2)))743 744#define __lsx_vsat_du(/*__m128i*/ _1, /*ui6*/ _2) \745 ((__m128i)__builtin_lsx_vsat_du((v2u64)(_1), (_2)))746 747extern __inline748 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i749 __lsx_vadda_b(__m128i _1, __m128i _2) {750 return (__m128i)__builtin_lsx_vadda_b((v16i8)_1, (v16i8)_2);751}752 753extern __inline754 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i755 __lsx_vadda_h(__m128i _1, __m128i _2) {756 return (__m128i)__builtin_lsx_vadda_h((v8i16)_1, (v8i16)_2);757}758 759extern __inline760 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i761 __lsx_vadda_w(__m128i _1, __m128i _2) {762 return (__m128i)__builtin_lsx_vadda_w((v4i32)_1, (v4i32)_2);763}764 765extern __inline766 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i767 __lsx_vadda_d(__m128i _1, __m128i _2) {768 return (__m128i)__builtin_lsx_vadda_d((v2i64)_1, (v2i64)_2);769}770 771extern __inline772 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i773 __lsx_vsadd_b(__m128i _1, __m128i _2) {774 return (__m128i)__builtin_lsx_vsadd_b((v16i8)_1, (v16i8)_2);775}776 777extern __inline778 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i779 __lsx_vsadd_h(__m128i _1, __m128i _2) {780 return (__m128i)__builtin_lsx_vsadd_h((v8i16)_1, (v8i16)_2);781}782 783extern __inline784 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i785 __lsx_vsadd_w(__m128i _1, __m128i _2) {786 return (__m128i)__builtin_lsx_vsadd_w((v4i32)_1, (v4i32)_2);787}788 789extern __inline790 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i791 __lsx_vsadd_d(__m128i _1, __m128i _2) {792 return (__m128i)__builtin_lsx_vsadd_d((v2i64)_1, (v2i64)_2);793}794 795extern __inline796 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i797 __lsx_vsadd_bu(__m128i _1, __m128i _2) {798 return (__m128i)__builtin_lsx_vsadd_bu((v16u8)_1, (v16u8)_2);799}800 801extern __inline802 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i803 __lsx_vsadd_hu(__m128i _1, __m128i _2) {804 return (__m128i)__builtin_lsx_vsadd_hu((v8u16)_1, (v8u16)_2);805}806 807extern __inline808 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i809 __lsx_vsadd_wu(__m128i _1, __m128i _2) {810 return (__m128i)__builtin_lsx_vsadd_wu((v4u32)_1, (v4u32)_2);811}812 813extern __inline814 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i815 __lsx_vsadd_du(__m128i _1, __m128i _2) {816 return (__m128i)__builtin_lsx_vsadd_du((v2u64)_1, (v2u64)_2);817}818 819extern __inline820 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i821 __lsx_vavg_b(__m128i _1, __m128i _2) {822 return (__m128i)__builtin_lsx_vavg_b((v16i8)_1, (v16i8)_2);823}824 825extern __inline826 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i827 __lsx_vavg_h(__m128i _1, __m128i _2) {828 return (__m128i)__builtin_lsx_vavg_h((v8i16)_1, (v8i16)_2);829}830 831extern __inline832 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i833 __lsx_vavg_w(__m128i _1, __m128i _2) {834 return (__m128i)__builtin_lsx_vavg_w((v4i32)_1, (v4i32)_2);835}836 837extern __inline838 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i839 __lsx_vavg_d(__m128i _1, __m128i _2) {840 return (__m128i)__builtin_lsx_vavg_d((v2i64)_1, (v2i64)_2);841}842 843extern __inline844 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i845 __lsx_vavg_bu(__m128i _1, __m128i _2) {846 return (__m128i)__builtin_lsx_vavg_bu((v16u8)_1, (v16u8)_2);847}848 849extern __inline850 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i851 __lsx_vavg_hu(__m128i _1, __m128i _2) {852 return (__m128i)__builtin_lsx_vavg_hu((v8u16)_1, (v8u16)_2);853}854 855extern __inline856 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i857 __lsx_vavg_wu(__m128i _1, __m128i _2) {858 return (__m128i)__builtin_lsx_vavg_wu((v4u32)_1, (v4u32)_2);859}860 861extern __inline862 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i863 __lsx_vavg_du(__m128i _1, __m128i _2) {864 return (__m128i)__builtin_lsx_vavg_du((v2u64)_1, (v2u64)_2);865}866 867extern __inline868 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i869 __lsx_vavgr_b(__m128i _1, __m128i _2) {870 return (__m128i)__builtin_lsx_vavgr_b((v16i8)_1, (v16i8)_2);871}872 873extern __inline874 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i875 __lsx_vavgr_h(__m128i _1, __m128i _2) {876 return (__m128i)__builtin_lsx_vavgr_h((v8i16)_1, (v8i16)_2);877}878 879extern __inline880 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i881 __lsx_vavgr_w(__m128i _1, __m128i _2) {882 return (__m128i)__builtin_lsx_vavgr_w((v4i32)_1, (v4i32)_2);883}884 885extern __inline886 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i887 __lsx_vavgr_d(__m128i _1, __m128i _2) {888 return (__m128i)__builtin_lsx_vavgr_d((v2i64)_1, (v2i64)_2);889}890 891extern __inline892 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i893 __lsx_vavgr_bu(__m128i _1, __m128i _2) {894 return (__m128i)__builtin_lsx_vavgr_bu((v16u8)_1, (v16u8)_2);895}896 897extern __inline898 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i899 __lsx_vavgr_hu(__m128i _1, __m128i _2) {900 return (__m128i)__builtin_lsx_vavgr_hu((v8u16)_1, (v8u16)_2);901}902 903extern __inline904 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i905 __lsx_vavgr_wu(__m128i _1, __m128i _2) {906 return (__m128i)__builtin_lsx_vavgr_wu((v4u32)_1, (v4u32)_2);907}908 909extern __inline910 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i911 __lsx_vavgr_du(__m128i _1, __m128i _2) {912 return (__m128i)__builtin_lsx_vavgr_du((v2u64)_1, (v2u64)_2);913}914 915extern __inline916 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i917 __lsx_vssub_b(__m128i _1, __m128i _2) {918 return (__m128i)__builtin_lsx_vssub_b((v16i8)_1, (v16i8)_2);919}920 921extern __inline922 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i923 __lsx_vssub_h(__m128i _1, __m128i _2) {924 return (__m128i)__builtin_lsx_vssub_h((v8i16)_1, (v8i16)_2);925}926 927extern __inline928 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i929 __lsx_vssub_w(__m128i _1, __m128i _2) {930 return (__m128i)__builtin_lsx_vssub_w((v4i32)_1, (v4i32)_2);931}932 933extern __inline934 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i935 __lsx_vssub_d(__m128i _1, __m128i _2) {936 return (__m128i)__builtin_lsx_vssub_d((v2i64)_1, (v2i64)_2);937}938 939extern __inline940 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i941 __lsx_vssub_bu(__m128i _1, __m128i _2) {942 return (__m128i)__builtin_lsx_vssub_bu((v16u8)_1, (v16u8)_2);943}944 945extern __inline946 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i947 __lsx_vssub_hu(__m128i _1, __m128i _2) {948 return (__m128i)__builtin_lsx_vssub_hu((v8u16)_1, (v8u16)_2);949}950 951extern __inline952 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i953 __lsx_vssub_wu(__m128i _1, __m128i _2) {954 return (__m128i)__builtin_lsx_vssub_wu((v4u32)_1, (v4u32)_2);955}956 957extern __inline958 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i959 __lsx_vssub_du(__m128i _1, __m128i _2) {960 return (__m128i)__builtin_lsx_vssub_du((v2u64)_1, (v2u64)_2);961}962 963extern __inline964 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i965 __lsx_vabsd_b(__m128i _1, __m128i _2) {966 return (__m128i)__builtin_lsx_vabsd_b((v16i8)_1, (v16i8)_2);967}968 969extern __inline970 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i971 __lsx_vabsd_h(__m128i _1, __m128i _2) {972 return (__m128i)__builtin_lsx_vabsd_h((v8i16)_1, (v8i16)_2);973}974 975extern __inline976 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i977 __lsx_vabsd_w(__m128i _1, __m128i _2) {978 return (__m128i)__builtin_lsx_vabsd_w((v4i32)_1, (v4i32)_2);979}980 981extern __inline982 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i983 __lsx_vabsd_d(__m128i _1, __m128i _2) {984 return (__m128i)__builtin_lsx_vabsd_d((v2i64)_1, (v2i64)_2);985}986 987extern __inline988 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i989 __lsx_vabsd_bu(__m128i _1, __m128i _2) {990 return (__m128i)__builtin_lsx_vabsd_bu((v16u8)_1, (v16u8)_2);991}992 993extern __inline994 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i995 __lsx_vabsd_hu(__m128i _1, __m128i _2) {996 return (__m128i)__builtin_lsx_vabsd_hu((v8u16)_1, (v8u16)_2);997}998 999extern __inline1000 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1001 __lsx_vabsd_wu(__m128i _1, __m128i _2) {1002 return (__m128i)__builtin_lsx_vabsd_wu((v4u32)_1, (v4u32)_2);1003}1004 1005extern __inline1006 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1007 __lsx_vabsd_du(__m128i _1, __m128i _2) {1008 return (__m128i)__builtin_lsx_vabsd_du((v2u64)_1, (v2u64)_2);1009}1010 1011extern __inline1012 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1013 __lsx_vmul_b(__m128i _1, __m128i _2) {1014 return (__m128i)__builtin_lsx_vmul_b((v16i8)_1, (v16i8)_2);1015}1016 1017extern __inline1018 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1019 __lsx_vmul_h(__m128i _1, __m128i _2) {1020 return (__m128i)__builtin_lsx_vmul_h((v8i16)_1, (v8i16)_2);1021}1022 1023extern __inline1024 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1025 __lsx_vmul_w(__m128i _1, __m128i _2) {1026 return (__m128i)__builtin_lsx_vmul_w((v4i32)_1, (v4i32)_2);1027}1028 1029extern __inline1030 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1031 __lsx_vmul_d(__m128i _1, __m128i _2) {1032 return (__m128i)__builtin_lsx_vmul_d((v2i64)_1, (v2i64)_2);1033}1034 1035extern __inline1036 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1037 __lsx_vmadd_b(__m128i _1, __m128i _2, __m128i _3) {1038 return (__m128i)__builtin_lsx_vmadd_b((v16i8)_1, (v16i8)_2, (v16i8)_3);1039}1040 1041extern __inline1042 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1043 __lsx_vmadd_h(__m128i _1, __m128i _2, __m128i _3) {1044 return (__m128i)__builtin_lsx_vmadd_h((v8i16)_1, (v8i16)_2, (v8i16)_3);1045}1046 1047extern __inline1048 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1049 __lsx_vmadd_w(__m128i _1, __m128i _2, __m128i _3) {1050 return (__m128i)__builtin_lsx_vmadd_w((v4i32)_1, (v4i32)_2, (v4i32)_3);1051}1052 1053extern __inline1054 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1055 __lsx_vmadd_d(__m128i _1, __m128i _2, __m128i _3) {1056 return (__m128i)__builtin_lsx_vmadd_d((v2i64)_1, (v2i64)_2, (v2i64)_3);1057}1058 1059extern __inline1060 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1061 __lsx_vmsub_b(__m128i _1, __m128i _2, __m128i _3) {1062 return (__m128i)__builtin_lsx_vmsub_b((v16i8)_1, (v16i8)_2, (v16i8)_3);1063}1064 1065extern __inline1066 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1067 __lsx_vmsub_h(__m128i _1, __m128i _2, __m128i _3) {1068 return (__m128i)__builtin_lsx_vmsub_h((v8i16)_1, (v8i16)_2, (v8i16)_3);1069}1070 1071extern __inline1072 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1073 __lsx_vmsub_w(__m128i _1, __m128i _2, __m128i _3) {1074 return (__m128i)__builtin_lsx_vmsub_w((v4i32)_1, (v4i32)_2, (v4i32)_3);1075}1076 1077extern __inline1078 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1079 __lsx_vmsub_d(__m128i _1, __m128i _2, __m128i _3) {1080 return (__m128i)__builtin_lsx_vmsub_d((v2i64)_1, (v2i64)_2, (v2i64)_3);1081}1082 1083extern __inline1084 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1085 __lsx_vdiv_b(__m128i _1, __m128i _2) {1086 return (__m128i)__builtin_lsx_vdiv_b((v16i8)_1, (v16i8)_2);1087}1088 1089extern __inline1090 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1091 __lsx_vdiv_h(__m128i _1, __m128i _2) {1092 return (__m128i)__builtin_lsx_vdiv_h((v8i16)_1, (v8i16)_2);1093}1094 1095extern __inline1096 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1097 __lsx_vdiv_w(__m128i _1, __m128i _2) {1098 return (__m128i)__builtin_lsx_vdiv_w((v4i32)_1, (v4i32)_2);1099}1100 1101extern __inline1102 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1103 __lsx_vdiv_d(__m128i _1, __m128i _2) {1104 return (__m128i)__builtin_lsx_vdiv_d((v2i64)_1, (v2i64)_2);1105}1106 1107extern __inline1108 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1109 __lsx_vdiv_bu(__m128i _1, __m128i _2) {1110 return (__m128i)__builtin_lsx_vdiv_bu((v16u8)_1, (v16u8)_2);1111}1112 1113extern __inline1114 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1115 __lsx_vdiv_hu(__m128i _1, __m128i _2) {1116 return (__m128i)__builtin_lsx_vdiv_hu((v8u16)_1, (v8u16)_2);1117}1118 1119extern __inline1120 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1121 __lsx_vdiv_wu(__m128i _1, __m128i _2) {1122 return (__m128i)__builtin_lsx_vdiv_wu((v4u32)_1, (v4u32)_2);1123}1124 1125extern __inline1126 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1127 __lsx_vdiv_du(__m128i _1, __m128i _2) {1128 return (__m128i)__builtin_lsx_vdiv_du((v2u64)_1, (v2u64)_2);1129}1130 1131extern __inline1132 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1133 __lsx_vhaddw_h_b(__m128i _1, __m128i _2) {1134 return (__m128i)__builtin_lsx_vhaddw_h_b((v16i8)_1, (v16i8)_2);1135}1136 1137extern __inline1138 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1139 __lsx_vhaddw_w_h(__m128i _1, __m128i _2) {1140 return (__m128i)__builtin_lsx_vhaddw_w_h((v8i16)_1, (v8i16)_2);1141}1142 1143extern __inline1144 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1145 __lsx_vhaddw_d_w(__m128i _1, __m128i _2) {1146 return (__m128i)__builtin_lsx_vhaddw_d_w((v4i32)_1, (v4i32)_2);1147}1148 1149extern __inline1150 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1151 __lsx_vhaddw_hu_bu(__m128i _1, __m128i _2) {1152 return (__m128i)__builtin_lsx_vhaddw_hu_bu((v16u8)_1, (v16u8)_2);1153}1154 1155extern __inline1156 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1157 __lsx_vhaddw_wu_hu(__m128i _1, __m128i _2) {1158 return (__m128i)__builtin_lsx_vhaddw_wu_hu((v8u16)_1, (v8u16)_2);1159}1160 1161extern __inline1162 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1163 __lsx_vhaddw_du_wu(__m128i _1, __m128i _2) {1164 return (__m128i)__builtin_lsx_vhaddw_du_wu((v4u32)_1, (v4u32)_2);1165}1166 1167extern __inline1168 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1169 __lsx_vhsubw_h_b(__m128i _1, __m128i _2) {1170 return (__m128i)__builtin_lsx_vhsubw_h_b((v16i8)_1, (v16i8)_2);1171}1172 1173extern __inline1174 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1175 __lsx_vhsubw_w_h(__m128i _1, __m128i _2) {1176 return (__m128i)__builtin_lsx_vhsubw_w_h((v8i16)_1, (v8i16)_2);1177}1178 1179extern __inline1180 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1181 __lsx_vhsubw_d_w(__m128i _1, __m128i _2) {1182 return (__m128i)__builtin_lsx_vhsubw_d_w((v4i32)_1, (v4i32)_2);1183}1184 1185extern __inline1186 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1187 __lsx_vhsubw_hu_bu(__m128i _1, __m128i _2) {1188 return (__m128i)__builtin_lsx_vhsubw_hu_bu((v16u8)_1, (v16u8)_2);1189}1190 1191extern __inline1192 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1193 __lsx_vhsubw_wu_hu(__m128i _1, __m128i _2) {1194 return (__m128i)__builtin_lsx_vhsubw_wu_hu((v8u16)_1, (v8u16)_2);1195}1196 1197extern __inline1198 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1199 __lsx_vhsubw_du_wu(__m128i _1, __m128i _2) {1200 return (__m128i)__builtin_lsx_vhsubw_du_wu((v4u32)_1, (v4u32)_2);1201}1202 1203extern __inline1204 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1205 __lsx_vmod_b(__m128i _1, __m128i _2) {1206 return (__m128i)__builtin_lsx_vmod_b((v16i8)_1, (v16i8)_2);1207}1208 1209extern __inline1210 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1211 __lsx_vmod_h(__m128i _1, __m128i _2) {1212 return (__m128i)__builtin_lsx_vmod_h((v8i16)_1, (v8i16)_2);1213}1214 1215extern __inline1216 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1217 __lsx_vmod_w(__m128i _1, __m128i _2) {1218 return (__m128i)__builtin_lsx_vmod_w((v4i32)_1, (v4i32)_2);1219}1220 1221extern __inline1222 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1223 __lsx_vmod_d(__m128i _1, __m128i _2) {1224 return (__m128i)__builtin_lsx_vmod_d((v2i64)_1, (v2i64)_2);1225}1226 1227extern __inline1228 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1229 __lsx_vmod_bu(__m128i _1, __m128i _2) {1230 return (__m128i)__builtin_lsx_vmod_bu((v16u8)_1, (v16u8)_2);1231}1232 1233extern __inline1234 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1235 __lsx_vmod_hu(__m128i _1, __m128i _2) {1236 return (__m128i)__builtin_lsx_vmod_hu((v8u16)_1, (v8u16)_2);1237}1238 1239extern __inline1240 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1241 __lsx_vmod_wu(__m128i _1, __m128i _2) {1242 return (__m128i)__builtin_lsx_vmod_wu((v4u32)_1, (v4u32)_2);1243}1244 1245extern __inline1246 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1247 __lsx_vmod_du(__m128i _1, __m128i _2) {1248 return (__m128i)__builtin_lsx_vmod_du((v2u64)_1, (v2u64)_2);1249}1250 1251extern __inline1252 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1253 __lsx_vreplve_b(__m128i _1, int _2) {1254 return (__m128i)__builtin_lsx_vreplve_b((v16i8)_1, (int)_2);1255}1256 1257extern __inline1258 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1259 __lsx_vreplve_h(__m128i _1, int _2) {1260 return (__m128i)__builtin_lsx_vreplve_h((v8i16)_1, (int)_2);1261}1262 1263extern __inline1264 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1265 __lsx_vreplve_w(__m128i _1, int _2) {1266 return (__m128i)__builtin_lsx_vreplve_w((v4i32)_1, (int)_2);1267}1268 1269extern __inline1270 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1271 __lsx_vreplve_d(__m128i _1, int _2) {1272 return (__m128i)__builtin_lsx_vreplve_d((v2i64)_1, (int)_2);1273}1274 1275#define __lsx_vreplvei_b(/*__m128i*/ _1, /*ui4*/ _2) \1276 ((__m128i)__builtin_lsx_vreplvei_b((v16i8)(_1), (_2)))1277 1278#define __lsx_vreplvei_h(/*__m128i*/ _1, /*ui3*/ _2) \1279 ((__m128i)__builtin_lsx_vreplvei_h((v8i16)(_1), (_2)))1280 1281#define __lsx_vreplvei_w(/*__m128i*/ _1, /*ui2*/ _2) \1282 ((__m128i)__builtin_lsx_vreplvei_w((v4i32)(_1), (_2)))1283 1284#define __lsx_vreplvei_d(/*__m128i*/ _1, /*ui1*/ _2) \1285 ((__m128i)__builtin_lsx_vreplvei_d((v2i64)(_1), (_2)))1286 1287extern __inline1288 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1289 __lsx_vpickev_b(__m128i _1, __m128i _2) {1290 return (__m128i)__builtin_lsx_vpickev_b((v16i8)_1, (v16i8)_2);1291}1292 1293extern __inline1294 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1295 __lsx_vpickev_h(__m128i _1, __m128i _2) {1296 return (__m128i)__builtin_lsx_vpickev_h((v8i16)_1, (v8i16)_2);1297}1298 1299extern __inline1300 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1301 __lsx_vpickev_w(__m128i _1, __m128i _2) {1302 return (__m128i)__builtin_lsx_vpickev_w((v4i32)_1, (v4i32)_2);1303}1304 1305extern __inline1306 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1307 __lsx_vpickev_d(__m128i _1, __m128i _2) {1308 return (__m128i)__builtin_lsx_vpickev_d((v2i64)_1, (v2i64)_2);1309}1310 1311extern __inline1312 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1313 __lsx_vpickod_b(__m128i _1, __m128i _2) {1314 return (__m128i)__builtin_lsx_vpickod_b((v16i8)_1, (v16i8)_2);1315}1316 1317extern __inline1318 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1319 __lsx_vpickod_h(__m128i _1, __m128i _2) {1320 return (__m128i)__builtin_lsx_vpickod_h((v8i16)_1, (v8i16)_2);1321}1322 1323extern __inline1324 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1325 __lsx_vpickod_w(__m128i _1, __m128i _2) {1326 return (__m128i)__builtin_lsx_vpickod_w((v4i32)_1, (v4i32)_2);1327}1328 1329extern __inline1330 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1331 __lsx_vpickod_d(__m128i _1, __m128i _2) {1332 return (__m128i)__builtin_lsx_vpickod_d((v2i64)_1, (v2i64)_2);1333}1334 1335extern __inline1336 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1337 __lsx_vilvh_b(__m128i _1, __m128i _2) {1338 return (__m128i)__builtin_lsx_vilvh_b((v16i8)_1, (v16i8)_2);1339}1340 1341extern __inline1342 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1343 __lsx_vilvh_h(__m128i _1, __m128i _2) {1344 return (__m128i)__builtin_lsx_vilvh_h((v8i16)_1, (v8i16)_2);1345}1346 1347extern __inline1348 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1349 __lsx_vilvh_w(__m128i _1, __m128i _2) {1350 return (__m128i)__builtin_lsx_vilvh_w((v4i32)_1, (v4i32)_2);1351}1352 1353extern __inline1354 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1355 __lsx_vilvh_d(__m128i _1, __m128i _2) {1356 return (__m128i)__builtin_lsx_vilvh_d((v2i64)_1, (v2i64)_2);1357}1358 1359extern __inline1360 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1361 __lsx_vilvl_b(__m128i _1, __m128i _2) {1362 return (__m128i)__builtin_lsx_vilvl_b((v16i8)_1, (v16i8)_2);1363}1364 1365extern __inline1366 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1367 __lsx_vilvl_h(__m128i _1, __m128i _2) {1368 return (__m128i)__builtin_lsx_vilvl_h((v8i16)_1, (v8i16)_2);1369}1370 1371extern __inline1372 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1373 __lsx_vilvl_w(__m128i _1, __m128i _2) {1374 return (__m128i)__builtin_lsx_vilvl_w((v4i32)_1, (v4i32)_2);1375}1376 1377extern __inline1378 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1379 __lsx_vilvl_d(__m128i _1, __m128i _2) {1380 return (__m128i)__builtin_lsx_vilvl_d((v2i64)_1, (v2i64)_2);1381}1382 1383extern __inline1384 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1385 __lsx_vpackev_b(__m128i _1, __m128i _2) {1386 return (__m128i)__builtin_lsx_vpackev_b((v16i8)_1, (v16i8)_2);1387}1388 1389extern __inline1390 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1391 __lsx_vpackev_h(__m128i _1, __m128i _2) {1392 return (__m128i)__builtin_lsx_vpackev_h((v8i16)_1, (v8i16)_2);1393}1394 1395extern __inline1396 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1397 __lsx_vpackev_w(__m128i _1, __m128i _2) {1398 return (__m128i)__builtin_lsx_vpackev_w((v4i32)_1, (v4i32)_2);1399}1400 1401extern __inline1402 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1403 __lsx_vpackev_d(__m128i _1, __m128i _2) {1404 return (__m128i)__builtin_lsx_vpackev_d((v2i64)_1, (v2i64)_2);1405}1406 1407extern __inline1408 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1409 __lsx_vpackod_b(__m128i _1, __m128i _2) {1410 return (__m128i)__builtin_lsx_vpackod_b((v16i8)_1, (v16i8)_2);1411}1412 1413extern __inline1414 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1415 __lsx_vpackod_h(__m128i _1, __m128i _2) {1416 return (__m128i)__builtin_lsx_vpackod_h((v8i16)_1, (v8i16)_2);1417}1418 1419extern __inline1420 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1421 __lsx_vpackod_w(__m128i _1, __m128i _2) {1422 return (__m128i)__builtin_lsx_vpackod_w((v4i32)_1, (v4i32)_2);1423}1424 1425extern __inline1426 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1427 __lsx_vpackod_d(__m128i _1, __m128i _2) {1428 return (__m128i)__builtin_lsx_vpackod_d((v2i64)_1, (v2i64)_2);1429}1430 1431extern __inline1432 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1433 __lsx_vshuf_h(__m128i _1, __m128i _2, __m128i _3) {1434 return (__m128i)__builtin_lsx_vshuf_h((v8i16)_1, (v8i16)_2, (v8i16)_3);1435}1436 1437extern __inline1438 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1439 __lsx_vshuf_w(__m128i _1, __m128i _2, __m128i _3) {1440 return (__m128i)__builtin_lsx_vshuf_w((v4i32)_1, (v4i32)_2, (v4i32)_3);1441}1442 1443extern __inline1444 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1445 __lsx_vshuf_d(__m128i _1, __m128i _2, __m128i _3) {1446 return (__m128i)__builtin_lsx_vshuf_d((v2i64)_1, (v2i64)_2, (v2i64)_3);1447}1448 1449extern __inline1450 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1451 __lsx_vand_v(__m128i _1, __m128i _2) {1452 return (__m128i)__builtin_lsx_vand_v((v16u8)_1, (v16u8)_2);1453}1454 1455#define __lsx_vandi_b(/*__m128i*/ _1, /*ui8*/ _2) \1456 ((__m128i)__builtin_lsx_vandi_b((v16u8)(_1), (_2)))1457 1458extern __inline1459 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1460 __lsx_vor_v(__m128i _1, __m128i _2) {1461 return (__m128i)__builtin_lsx_vor_v((v16u8)_1, (v16u8)_2);1462}1463 1464#define __lsx_vori_b(/*__m128i*/ _1, /*ui8*/ _2) \1465 ((__m128i)__builtin_lsx_vori_b((v16u8)(_1), (_2)))1466 1467extern __inline1468 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1469 __lsx_vnor_v(__m128i _1, __m128i _2) {1470 return (__m128i)__builtin_lsx_vnor_v((v16u8)_1, (v16u8)_2);1471}1472 1473#define __lsx_vnori_b(/*__m128i*/ _1, /*ui8*/ _2) \1474 ((__m128i)__builtin_lsx_vnori_b((v16u8)(_1), (_2)))1475 1476extern __inline1477 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1478 __lsx_vxor_v(__m128i _1, __m128i _2) {1479 return (__m128i)__builtin_lsx_vxor_v((v16u8)_1, (v16u8)_2);1480}1481 1482#define __lsx_vxori_b(/*__m128i*/ _1, /*ui8*/ _2) \1483 ((__m128i)__builtin_lsx_vxori_b((v16u8)(_1), (_2)))1484 1485extern __inline1486 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1487 __lsx_vbitsel_v(__m128i _1, __m128i _2, __m128i _3) {1488 return (__m128i)__builtin_lsx_vbitsel_v((v16u8)_1, (v16u8)_2, (v16u8)_3);1489}1490 1491#define __lsx_vbitseli_b(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \1492 ((__m128i)__builtin_lsx_vbitseli_b((v16u8)(_1), (v16u8)(_2), (_3)))1493 1494#define __lsx_vshuf4i_b(/*__m128i*/ _1, /*ui8*/ _2) \1495 ((__m128i)__builtin_lsx_vshuf4i_b((v16i8)(_1), (_2)))1496 1497#define __lsx_vshuf4i_h(/*__m128i*/ _1, /*ui8*/ _2) \1498 ((__m128i)__builtin_lsx_vshuf4i_h((v8i16)(_1), (_2)))1499 1500#define __lsx_vshuf4i_w(/*__m128i*/ _1, /*ui8*/ _2) \1501 ((__m128i)__builtin_lsx_vshuf4i_w((v4i32)(_1), (_2)))1502 1503extern __inline1504 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1505 __lsx_vreplgr2vr_b(int _1) {1506 return (__m128i)__builtin_lsx_vreplgr2vr_b((int)_1);1507}1508 1509extern __inline1510 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1511 __lsx_vreplgr2vr_h(int _1) {1512 return (__m128i)__builtin_lsx_vreplgr2vr_h((int)_1);1513}1514 1515extern __inline1516 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1517 __lsx_vreplgr2vr_w(int _1) {1518 return (__m128i)__builtin_lsx_vreplgr2vr_w((int)_1);1519}1520 1521extern __inline1522 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1523 __lsx_vreplgr2vr_d(long int _1) {1524 return (__m128i)__builtin_lsx_vreplgr2vr_d((long int)_1);1525}1526 1527extern __inline1528 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1529 __lsx_vpcnt_b(__m128i _1) {1530 return (__m128i)__builtin_lsx_vpcnt_b((v16i8)_1);1531}1532 1533extern __inline1534 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1535 __lsx_vpcnt_h(__m128i _1) {1536 return (__m128i)__builtin_lsx_vpcnt_h((v8i16)_1);1537}1538 1539extern __inline1540 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1541 __lsx_vpcnt_w(__m128i _1) {1542 return (__m128i)__builtin_lsx_vpcnt_w((v4i32)_1);1543}1544 1545extern __inline1546 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1547 __lsx_vpcnt_d(__m128i _1) {1548 return (__m128i)__builtin_lsx_vpcnt_d((v2i64)_1);1549}1550 1551extern __inline1552 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1553 __lsx_vclo_b(__m128i _1) {1554 return (__m128i)__builtin_lsx_vclo_b((v16i8)_1);1555}1556 1557extern __inline1558 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1559 __lsx_vclo_h(__m128i _1) {1560 return (__m128i)__builtin_lsx_vclo_h((v8i16)_1);1561}1562 1563extern __inline1564 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1565 __lsx_vclo_w(__m128i _1) {1566 return (__m128i)__builtin_lsx_vclo_w((v4i32)_1);1567}1568 1569extern __inline1570 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1571 __lsx_vclo_d(__m128i _1) {1572 return (__m128i)__builtin_lsx_vclo_d((v2i64)_1);1573}1574 1575extern __inline1576 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1577 __lsx_vclz_b(__m128i _1) {1578 return (__m128i)__builtin_lsx_vclz_b((v16i8)_1);1579}1580 1581extern __inline1582 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1583 __lsx_vclz_h(__m128i _1) {1584 return (__m128i)__builtin_lsx_vclz_h((v8i16)_1);1585}1586 1587extern __inline1588 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1589 __lsx_vclz_w(__m128i _1) {1590 return (__m128i)__builtin_lsx_vclz_w((v4i32)_1);1591}1592 1593extern __inline1594 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1595 __lsx_vclz_d(__m128i _1) {1596 return (__m128i)__builtin_lsx_vclz_d((v2i64)_1);1597}1598 1599#define __lsx_vpickve2gr_b(/*__m128i*/ _1, /*ui4*/ _2) \1600 ((int)__builtin_lsx_vpickve2gr_b((v16i8)(_1), (_2)))1601 1602#define __lsx_vpickve2gr_h(/*__m128i*/ _1, /*ui3*/ _2) \1603 ((int)__builtin_lsx_vpickve2gr_h((v8i16)(_1), (_2)))1604 1605#define __lsx_vpickve2gr_w(/*__m128i*/ _1, /*ui2*/ _2) \1606 ((int)__builtin_lsx_vpickve2gr_w((v4i32)(_1), (_2)))1607 1608#define __lsx_vpickve2gr_d(/*__m128i*/ _1, /*ui1*/ _2) \1609 ((long int)__builtin_lsx_vpickve2gr_d((v2i64)(_1), (_2)))1610 1611#define __lsx_vpickve2gr_bu(/*__m128i*/ _1, /*ui4*/ _2) \1612 ((unsigned int)__builtin_lsx_vpickve2gr_bu((v16i8)(_1), (_2)))1613 1614#define __lsx_vpickve2gr_hu(/*__m128i*/ _1, /*ui3*/ _2) \1615 ((unsigned int)__builtin_lsx_vpickve2gr_hu((v8i16)(_1), (_2)))1616 1617#define __lsx_vpickve2gr_wu(/*__m128i*/ _1, /*ui2*/ _2) \1618 ((unsigned int)__builtin_lsx_vpickve2gr_wu((v4i32)(_1), (_2)))1619 1620#define __lsx_vpickve2gr_du(/*__m128i*/ _1, /*ui1*/ _2) \1621 ((unsigned long int)__builtin_lsx_vpickve2gr_du((v2i64)(_1), (_2)))1622 1623#define __lsx_vinsgr2vr_b(/*__m128i*/ _1, /*int*/ _2, /*ui4*/ _3) \1624 ((__m128i)__builtin_lsx_vinsgr2vr_b((v16i8)(_1), (int)(_2), (_3)))1625 1626#define __lsx_vinsgr2vr_h(/*__m128i*/ _1, /*int*/ _2, /*ui3*/ _3) \1627 ((__m128i)__builtin_lsx_vinsgr2vr_h((v8i16)(_1), (int)(_2), (_3)))1628 1629#define __lsx_vinsgr2vr_w(/*__m128i*/ _1, /*int*/ _2, /*ui2*/ _3) \1630 ((__m128i)__builtin_lsx_vinsgr2vr_w((v4i32)(_1), (int)(_2), (_3)))1631 1632#define __lsx_vinsgr2vr_d(/*__m128i*/ _1, /*long int*/ _2, /*ui1*/ _3) \1633 ((__m128i)__builtin_lsx_vinsgr2vr_d((v2i64)(_1), (long int)(_2), (_3)))1634 1635extern __inline1636 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281637 __lsx_vfadd_s(__m128 _1, __m128 _2) {1638 return (__m128)__builtin_lsx_vfadd_s((v4f32)_1, (v4f32)_2);1639}1640 1641extern __inline1642 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1643 __lsx_vfadd_d(__m128d _1, __m128d _2) {1644 return (__m128d)__builtin_lsx_vfadd_d((v2f64)_1, (v2f64)_2);1645}1646 1647extern __inline1648 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281649 __lsx_vfsub_s(__m128 _1, __m128 _2) {1650 return (__m128)__builtin_lsx_vfsub_s((v4f32)_1, (v4f32)_2);1651}1652 1653extern __inline1654 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1655 __lsx_vfsub_d(__m128d _1, __m128d _2) {1656 return (__m128d)__builtin_lsx_vfsub_d((v2f64)_1, (v2f64)_2);1657}1658 1659extern __inline1660 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281661 __lsx_vfmul_s(__m128 _1, __m128 _2) {1662 return (__m128)__builtin_lsx_vfmul_s((v4f32)_1, (v4f32)_2);1663}1664 1665extern __inline1666 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1667 __lsx_vfmul_d(__m128d _1, __m128d _2) {1668 return (__m128d)__builtin_lsx_vfmul_d((v2f64)_1, (v2f64)_2);1669}1670 1671extern __inline1672 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281673 __lsx_vfdiv_s(__m128 _1, __m128 _2) {1674 return (__m128)__builtin_lsx_vfdiv_s((v4f32)_1, (v4f32)_2);1675}1676 1677extern __inline1678 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1679 __lsx_vfdiv_d(__m128d _1, __m128d _2) {1680 return (__m128d)__builtin_lsx_vfdiv_d((v2f64)_1, (v2f64)_2);1681}1682 1683extern __inline1684 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1685 __lsx_vfcvt_h_s(__m128 _1, __m128 _2) {1686 return (__m128i)__builtin_lsx_vfcvt_h_s((v4f32)_1, (v4f32)_2);1687}1688 1689extern __inline1690 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281691 __lsx_vfcvt_s_d(__m128d _1, __m128d _2) {1692 return (__m128)__builtin_lsx_vfcvt_s_d((v2f64)_1, (v2f64)_2);1693}1694 1695extern __inline1696 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281697 __lsx_vfmin_s(__m128 _1, __m128 _2) {1698 return (__m128)__builtin_lsx_vfmin_s((v4f32)_1, (v4f32)_2);1699}1700 1701extern __inline1702 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1703 __lsx_vfmin_d(__m128d _1, __m128d _2) {1704 return (__m128d)__builtin_lsx_vfmin_d((v2f64)_1, (v2f64)_2);1705}1706 1707extern __inline1708 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281709 __lsx_vfmina_s(__m128 _1, __m128 _2) {1710 return (__m128)__builtin_lsx_vfmina_s((v4f32)_1, (v4f32)_2);1711}1712 1713extern __inline1714 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1715 __lsx_vfmina_d(__m128d _1, __m128d _2) {1716 return (__m128d)__builtin_lsx_vfmina_d((v2f64)_1, (v2f64)_2);1717}1718 1719extern __inline1720 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281721 __lsx_vfmax_s(__m128 _1, __m128 _2) {1722 return (__m128)__builtin_lsx_vfmax_s((v4f32)_1, (v4f32)_2);1723}1724 1725extern __inline1726 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1727 __lsx_vfmax_d(__m128d _1, __m128d _2) {1728 return (__m128d)__builtin_lsx_vfmax_d((v2f64)_1, (v2f64)_2);1729}1730 1731extern __inline1732 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281733 __lsx_vfmaxa_s(__m128 _1, __m128 _2) {1734 return (__m128)__builtin_lsx_vfmaxa_s((v4f32)_1, (v4f32)_2);1735}1736 1737extern __inline1738 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1739 __lsx_vfmaxa_d(__m128d _1, __m128d _2) {1740 return (__m128d)__builtin_lsx_vfmaxa_d((v2f64)_1, (v2f64)_2);1741}1742 1743extern __inline1744 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1745 __lsx_vfclass_s(__m128 _1) {1746 return (__m128i)__builtin_lsx_vfclass_s((v4f32)_1);1747}1748 1749extern __inline1750 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1751 __lsx_vfclass_d(__m128d _1) {1752 return (__m128i)__builtin_lsx_vfclass_d((v2f64)_1);1753}1754 1755extern __inline1756 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281757 __lsx_vfsqrt_s(__m128 _1) {1758 return (__m128)__builtin_lsx_vfsqrt_s((v4f32)_1);1759}1760 1761extern __inline1762 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1763 __lsx_vfsqrt_d(__m128d _1) {1764 return (__m128d)__builtin_lsx_vfsqrt_d((v2f64)_1);1765}1766 1767extern __inline1768 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281769 __lsx_vfrecip_s(__m128 _1) {1770 return (__m128)__builtin_lsx_vfrecip_s((v4f32)_1);1771}1772 1773extern __inline1774 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1775 __lsx_vfrecip_d(__m128d _1) {1776 return (__m128d)__builtin_lsx_vfrecip_d((v2f64)_1);1777}1778 1779extern __inline1780 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281781 __lsx_vfrint_s(__m128 _1) {1782 return (__m128)__builtin_lsx_vfrint_s((v4f32)_1);1783}1784 1785extern __inline1786 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1787 __lsx_vfrint_d(__m128d _1) {1788 return (__m128d)__builtin_lsx_vfrint_d((v2f64)_1);1789}1790 1791extern __inline1792 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281793 __lsx_vfrsqrt_s(__m128 _1) {1794 return (__m128)__builtin_lsx_vfrsqrt_s((v4f32)_1);1795}1796 1797extern __inline1798 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1799 __lsx_vfrsqrt_d(__m128d _1) {1800 return (__m128d)__builtin_lsx_vfrsqrt_d((v2f64)_1);1801}1802 1803extern __inline1804 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281805 __lsx_vflogb_s(__m128 _1) {1806 return (__m128)__builtin_lsx_vflogb_s((v4f32)_1);1807}1808 1809extern __inline1810 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1811 __lsx_vflogb_d(__m128d _1) {1812 return (__m128d)__builtin_lsx_vflogb_d((v2f64)_1);1813}1814 1815extern __inline1816 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281817 __lsx_vfcvth_s_h(__m128i _1) {1818 return (__m128)__builtin_lsx_vfcvth_s_h((v8i16)_1);1819}1820 1821extern __inline1822 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1823 __lsx_vfcvth_d_s(__m128 _1) {1824 return (__m128d)__builtin_lsx_vfcvth_d_s((v4f32)_1);1825}1826 1827extern __inline1828 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281829 __lsx_vfcvtl_s_h(__m128i _1) {1830 return (__m128)__builtin_lsx_vfcvtl_s_h((v8i16)_1);1831}1832 1833extern __inline1834 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1835 __lsx_vfcvtl_d_s(__m128 _1) {1836 return (__m128d)__builtin_lsx_vfcvtl_d_s((v4f32)_1);1837}1838 1839extern __inline1840 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1841 __lsx_vftint_w_s(__m128 _1) {1842 return (__m128i)__builtin_lsx_vftint_w_s((v4f32)_1);1843}1844 1845extern __inline1846 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1847 __lsx_vftint_l_d(__m128d _1) {1848 return (__m128i)__builtin_lsx_vftint_l_d((v2f64)_1);1849}1850 1851extern __inline1852 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1853 __lsx_vftint_wu_s(__m128 _1) {1854 return (__m128i)__builtin_lsx_vftint_wu_s((v4f32)_1);1855}1856 1857extern __inline1858 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1859 __lsx_vftint_lu_d(__m128d _1) {1860 return (__m128i)__builtin_lsx_vftint_lu_d((v2f64)_1);1861}1862 1863extern __inline1864 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1865 __lsx_vftintrz_w_s(__m128 _1) {1866 return (__m128i)__builtin_lsx_vftintrz_w_s((v4f32)_1);1867}1868 1869extern __inline1870 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1871 __lsx_vftintrz_l_d(__m128d _1) {1872 return (__m128i)__builtin_lsx_vftintrz_l_d((v2f64)_1);1873}1874 1875extern __inline1876 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1877 __lsx_vftintrz_wu_s(__m128 _1) {1878 return (__m128i)__builtin_lsx_vftintrz_wu_s((v4f32)_1);1879}1880 1881extern __inline1882 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1883 __lsx_vftintrz_lu_d(__m128d _1) {1884 return (__m128i)__builtin_lsx_vftintrz_lu_d((v2f64)_1);1885}1886 1887extern __inline1888 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281889 __lsx_vffint_s_w(__m128i _1) {1890 return (__m128)__builtin_lsx_vffint_s_w((v4i32)_1);1891}1892 1893extern __inline1894 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1895 __lsx_vffint_d_l(__m128i _1) {1896 return (__m128d)__builtin_lsx_vffint_d_l((v2i64)_1);1897}1898 1899extern __inline1900 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1281901 __lsx_vffint_s_wu(__m128i _1) {1902 return (__m128)__builtin_lsx_vffint_s_wu((v4u32)_1);1903}1904 1905extern __inline1906 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d1907 __lsx_vffint_d_lu(__m128i _1) {1908 return (__m128d)__builtin_lsx_vffint_d_lu((v2u64)_1);1909}1910 1911extern __inline1912 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1913 __lsx_vandn_v(__m128i _1, __m128i _2) {1914 return (__m128i)__builtin_lsx_vandn_v((v16u8)_1, (v16u8)_2);1915}1916 1917extern __inline1918 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1919 __lsx_vneg_b(__m128i _1) {1920 return (__m128i)__builtin_lsx_vneg_b((v16i8)_1);1921}1922 1923extern __inline1924 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1925 __lsx_vneg_h(__m128i _1) {1926 return (__m128i)__builtin_lsx_vneg_h((v8i16)_1);1927}1928 1929extern __inline1930 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1931 __lsx_vneg_w(__m128i _1) {1932 return (__m128i)__builtin_lsx_vneg_w((v4i32)_1);1933}1934 1935extern __inline1936 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1937 __lsx_vneg_d(__m128i _1) {1938 return (__m128i)__builtin_lsx_vneg_d((v2i64)_1);1939}1940 1941extern __inline1942 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1943 __lsx_vmuh_b(__m128i _1, __m128i _2) {1944 return (__m128i)__builtin_lsx_vmuh_b((v16i8)_1, (v16i8)_2);1945}1946 1947extern __inline1948 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1949 __lsx_vmuh_h(__m128i _1, __m128i _2) {1950 return (__m128i)__builtin_lsx_vmuh_h((v8i16)_1, (v8i16)_2);1951}1952 1953extern __inline1954 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1955 __lsx_vmuh_w(__m128i _1, __m128i _2) {1956 return (__m128i)__builtin_lsx_vmuh_w((v4i32)_1, (v4i32)_2);1957}1958 1959extern __inline1960 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1961 __lsx_vmuh_d(__m128i _1, __m128i _2) {1962 return (__m128i)__builtin_lsx_vmuh_d((v2i64)_1, (v2i64)_2);1963}1964 1965extern __inline1966 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1967 __lsx_vmuh_bu(__m128i _1, __m128i _2) {1968 return (__m128i)__builtin_lsx_vmuh_bu((v16u8)_1, (v16u8)_2);1969}1970 1971extern __inline1972 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1973 __lsx_vmuh_hu(__m128i _1, __m128i _2) {1974 return (__m128i)__builtin_lsx_vmuh_hu((v8u16)_1, (v8u16)_2);1975}1976 1977extern __inline1978 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1979 __lsx_vmuh_wu(__m128i _1, __m128i _2) {1980 return (__m128i)__builtin_lsx_vmuh_wu((v4u32)_1, (v4u32)_2);1981}1982 1983extern __inline1984 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i1985 __lsx_vmuh_du(__m128i _1, __m128i _2) {1986 return (__m128i)__builtin_lsx_vmuh_du((v2u64)_1, (v2u64)_2);1987}1988 1989#define __lsx_vsllwil_h_b(/*__m128i*/ _1, /*ui3*/ _2) \1990 ((__m128i)__builtin_lsx_vsllwil_h_b((v16i8)(_1), (_2)))1991 1992#define __lsx_vsllwil_w_h(/*__m128i*/ _1, /*ui4*/ _2) \1993 ((__m128i)__builtin_lsx_vsllwil_w_h((v8i16)(_1), (_2)))1994 1995#define __lsx_vsllwil_d_w(/*__m128i*/ _1, /*ui5*/ _2) \1996 ((__m128i)__builtin_lsx_vsllwil_d_w((v4i32)(_1), (_2)))1997 1998#define __lsx_vsllwil_hu_bu(/*__m128i*/ _1, /*ui3*/ _2) \1999 ((__m128i)__builtin_lsx_vsllwil_hu_bu((v16u8)(_1), (_2)))2000 2001#define __lsx_vsllwil_wu_hu(/*__m128i*/ _1, /*ui4*/ _2) \2002 ((__m128i)__builtin_lsx_vsllwil_wu_hu((v8u16)(_1), (_2)))2003 2004#define __lsx_vsllwil_du_wu(/*__m128i*/ _1, /*ui5*/ _2) \2005 ((__m128i)__builtin_lsx_vsllwil_du_wu((v4u32)(_1), (_2)))2006 2007extern __inline2008 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2009 __lsx_vsran_b_h(__m128i _1, __m128i _2) {2010 return (__m128i)__builtin_lsx_vsran_b_h((v8i16)_1, (v8i16)_2);2011}2012 2013extern __inline2014 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2015 __lsx_vsran_h_w(__m128i _1, __m128i _2) {2016 return (__m128i)__builtin_lsx_vsran_h_w((v4i32)_1, (v4i32)_2);2017}2018 2019extern __inline2020 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2021 __lsx_vsran_w_d(__m128i _1, __m128i _2) {2022 return (__m128i)__builtin_lsx_vsran_w_d((v2i64)_1, (v2i64)_2);2023}2024 2025extern __inline2026 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2027 __lsx_vssran_b_h(__m128i _1, __m128i _2) {2028 return (__m128i)__builtin_lsx_vssran_b_h((v8i16)_1, (v8i16)_2);2029}2030 2031extern __inline2032 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2033 __lsx_vssran_h_w(__m128i _1, __m128i _2) {2034 return (__m128i)__builtin_lsx_vssran_h_w((v4i32)_1, (v4i32)_2);2035}2036 2037extern __inline2038 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2039 __lsx_vssran_w_d(__m128i _1, __m128i _2) {2040 return (__m128i)__builtin_lsx_vssran_w_d((v2i64)_1, (v2i64)_2);2041}2042 2043extern __inline2044 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2045 __lsx_vssran_bu_h(__m128i _1, __m128i _2) {2046 return (__m128i)__builtin_lsx_vssran_bu_h((v8u16)_1, (v8u16)_2);2047}2048 2049extern __inline2050 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2051 __lsx_vssran_hu_w(__m128i _1, __m128i _2) {2052 return (__m128i)__builtin_lsx_vssran_hu_w((v4u32)_1, (v4u32)_2);2053}2054 2055extern __inline2056 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2057 __lsx_vssran_wu_d(__m128i _1, __m128i _2) {2058 return (__m128i)__builtin_lsx_vssran_wu_d((v2u64)_1, (v2u64)_2);2059}2060 2061extern __inline2062 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2063 __lsx_vsrarn_b_h(__m128i _1, __m128i _2) {2064 return (__m128i)__builtin_lsx_vsrarn_b_h((v8i16)_1, (v8i16)_2);2065}2066 2067extern __inline2068 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2069 __lsx_vsrarn_h_w(__m128i _1, __m128i _2) {2070 return (__m128i)__builtin_lsx_vsrarn_h_w((v4i32)_1, (v4i32)_2);2071}2072 2073extern __inline2074 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2075 __lsx_vsrarn_w_d(__m128i _1, __m128i _2) {2076 return (__m128i)__builtin_lsx_vsrarn_w_d((v2i64)_1, (v2i64)_2);2077}2078 2079extern __inline2080 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2081 __lsx_vssrarn_b_h(__m128i _1, __m128i _2) {2082 return (__m128i)__builtin_lsx_vssrarn_b_h((v8i16)_1, (v8i16)_2);2083}2084 2085extern __inline2086 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2087 __lsx_vssrarn_h_w(__m128i _1, __m128i _2) {2088 return (__m128i)__builtin_lsx_vssrarn_h_w((v4i32)_1, (v4i32)_2);2089}2090 2091extern __inline2092 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2093 __lsx_vssrarn_w_d(__m128i _1, __m128i _2) {2094 return (__m128i)__builtin_lsx_vssrarn_w_d((v2i64)_1, (v2i64)_2);2095}2096 2097extern __inline2098 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2099 __lsx_vssrarn_bu_h(__m128i _1, __m128i _2) {2100 return (__m128i)__builtin_lsx_vssrarn_bu_h((v8u16)_1, (v8u16)_2);2101}2102 2103extern __inline2104 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2105 __lsx_vssrarn_hu_w(__m128i _1, __m128i _2) {2106 return (__m128i)__builtin_lsx_vssrarn_hu_w((v4u32)_1, (v4u32)_2);2107}2108 2109extern __inline2110 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2111 __lsx_vssrarn_wu_d(__m128i _1, __m128i _2) {2112 return (__m128i)__builtin_lsx_vssrarn_wu_d((v2u64)_1, (v2u64)_2);2113}2114 2115extern __inline2116 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2117 __lsx_vsrln_b_h(__m128i _1, __m128i _2) {2118 return (__m128i)__builtin_lsx_vsrln_b_h((v8i16)_1, (v8i16)_2);2119}2120 2121extern __inline2122 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2123 __lsx_vsrln_h_w(__m128i _1, __m128i _2) {2124 return (__m128i)__builtin_lsx_vsrln_h_w((v4i32)_1, (v4i32)_2);2125}2126 2127extern __inline2128 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2129 __lsx_vsrln_w_d(__m128i _1, __m128i _2) {2130 return (__m128i)__builtin_lsx_vsrln_w_d((v2i64)_1, (v2i64)_2);2131}2132 2133extern __inline2134 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2135 __lsx_vssrln_bu_h(__m128i _1, __m128i _2) {2136 return (__m128i)__builtin_lsx_vssrln_bu_h((v8u16)_1, (v8u16)_2);2137}2138 2139extern __inline2140 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2141 __lsx_vssrln_hu_w(__m128i _1, __m128i _2) {2142 return (__m128i)__builtin_lsx_vssrln_hu_w((v4u32)_1, (v4u32)_2);2143}2144 2145extern __inline2146 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2147 __lsx_vssrln_wu_d(__m128i _1, __m128i _2) {2148 return (__m128i)__builtin_lsx_vssrln_wu_d((v2u64)_1, (v2u64)_2);2149}2150 2151extern __inline2152 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2153 __lsx_vsrlrn_b_h(__m128i _1, __m128i _2) {2154 return (__m128i)__builtin_lsx_vsrlrn_b_h((v8i16)_1, (v8i16)_2);2155}2156 2157extern __inline2158 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2159 __lsx_vsrlrn_h_w(__m128i _1, __m128i _2) {2160 return (__m128i)__builtin_lsx_vsrlrn_h_w((v4i32)_1, (v4i32)_2);2161}2162 2163extern __inline2164 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2165 __lsx_vsrlrn_w_d(__m128i _1, __m128i _2) {2166 return (__m128i)__builtin_lsx_vsrlrn_w_d((v2i64)_1, (v2i64)_2);2167}2168 2169extern __inline2170 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2171 __lsx_vssrlrn_bu_h(__m128i _1, __m128i _2) {2172 return (__m128i)__builtin_lsx_vssrlrn_bu_h((v8u16)_1, (v8u16)_2);2173}2174 2175extern __inline2176 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2177 __lsx_vssrlrn_hu_w(__m128i _1, __m128i _2) {2178 return (__m128i)__builtin_lsx_vssrlrn_hu_w((v4u32)_1, (v4u32)_2);2179}2180 2181extern __inline2182 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2183 __lsx_vssrlrn_wu_d(__m128i _1, __m128i _2) {2184 return (__m128i)__builtin_lsx_vssrlrn_wu_d((v2u64)_1, (v2u64)_2);2185}2186 2187#define __lsx_vfrstpi_b(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \2188 ((__m128i)__builtin_lsx_vfrstpi_b((v16i8)(_1), (v16i8)(_2), (_3)))2189 2190#define __lsx_vfrstpi_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \2191 ((__m128i)__builtin_lsx_vfrstpi_h((v8i16)(_1), (v8i16)(_2), (_3)))2192 2193extern __inline2194 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2195 __lsx_vfrstp_b(__m128i _1, __m128i _2, __m128i _3) {2196 return (__m128i)__builtin_lsx_vfrstp_b((v16i8)_1, (v16i8)_2, (v16i8)_3);2197}2198 2199extern __inline2200 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2201 __lsx_vfrstp_h(__m128i _1, __m128i _2, __m128i _3) {2202 return (__m128i)__builtin_lsx_vfrstp_h((v8i16)_1, (v8i16)_2, (v8i16)_3);2203}2204 2205#define __lsx_vshuf4i_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \2206 ((__m128i)__builtin_lsx_vshuf4i_d((v2i64)(_1), (v2i64)(_2), (_3)))2207 2208#define __lsx_vbsrl_v(/*__m128i*/ _1, /*ui5*/ _2) \2209 ((__m128i)__builtin_lsx_vbsrl_v((v16i8)(_1), (_2)))2210 2211#define __lsx_vbsll_v(/*__m128i*/ _1, /*ui5*/ _2) \2212 ((__m128i)__builtin_lsx_vbsll_v((v16i8)(_1), (_2)))2213 2214#define __lsx_vextrins_b(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \2215 ((__m128i)__builtin_lsx_vextrins_b((v16i8)(_1), (v16i8)(_2), (_3)))2216 2217#define __lsx_vextrins_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \2218 ((__m128i)__builtin_lsx_vextrins_h((v8i16)(_1), (v8i16)(_2), (_3)))2219 2220#define __lsx_vextrins_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \2221 ((__m128i)__builtin_lsx_vextrins_w((v4i32)(_1), (v4i32)(_2), (_3)))2222 2223#define __lsx_vextrins_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \2224 ((__m128i)__builtin_lsx_vextrins_d((v2i64)(_1), (v2i64)(_2), (_3)))2225 2226extern __inline2227 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2228 __lsx_vmskltz_b(__m128i _1) {2229 return (__m128i)__builtin_lsx_vmskltz_b((v16i8)_1);2230}2231 2232extern __inline2233 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2234 __lsx_vmskltz_h(__m128i _1) {2235 return (__m128i)__builtin_lsx_vmskltz_h((v8i16)_1);2236}2237 2238extern __inline2239 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2240 __lsx_vmskltz_w(__m128i _1) {2241 return (__m128i)__builtin_lsx_vmskltz_w((v4i32)_1);2242}2243 2244extern __inline2245 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2246 __lsx_vmskltz_d(__m128i _1) {2247 return (__m128i)__builtin_lsx_vmskltz_d((v2i64)_1);2248}2249 2250extern __inline2251 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2252 __lsx_vsigncov_b(__m128i _1, __m128i _2) {2253 return (__m128i)__builtin_lsx_vsigncov_b((v16i8)_1, (v16i8)_2);2254}2255 2256extern __inline2257 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2258 __lsx_vsigncov_h(__m128i _1, __m128i _2) {2259 return (__m128i)__builtin_lsx_vsigncov_h((v8i16)_1, (v8i16)_2);2260}2261 2262extern __inline2263 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2264 __lsx_vsigncov_w(__m128i _1, __m128i _2) {2265 return (__m128i)__builtin_lsx_vsigncov_w((v4i32)_1, (v4i32)_2);2266}2267 2268extern __inline2269 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2270 __lsx_vsigncov_d(__m128i _1, __m128i _2) {2271 return (__m128i)__builtin_lsx_vsigncov_d((v2i64)_1, (v2i64)_2);2272}2273 2274extern __inline2275 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1282276 __lsx_vfmadd_s(__m128 _1, __m128 _2, __m128 _3) {2277 return (__m128)__builtin_lsx_vfmadd_s((v4f32)_1, (v4f32)_2, (v4f32)_3);2278}2279 2280extern __inline2281 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2282 __lsx_vfmadd_d(__m128d _1, __m128d _2, __m128d _3) {2283 return (__m128d)__builtin_lsx_vfmadd_d((v2f64)_1, (v2f64)_2, (v2f64)_3);2284}2285 2286extern __inline2287 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1282288 __lsx_vfmsub_s(__m128 _1, __m128 _2, __m128 _3) {2289 return (__m128)__builtin_lsx_vfmsub_s((v4f32)_1, (v4f32)_2, (v4f32)_3);2290}2291 2292extern __inline2293 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2294 __lsx_vfmsub_d(__m128d _1, __m128d _2, __m128d _3) {2295 return (__m128d)__builtin_lsx_vfmsub_d((v2f64)_1, (v2f64)_2, (v2f64)_3);2296}2297 2298extern __inline2299 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1282300 __lsx_vfnmadd_s(__m128 _1, __m128 _2, __m128 _3) {2301 return (__m128)__builtin_lsx_vfnmadd_s((v4f32)_1, (v4f32)_2, (v4f32)_3);2302}2303 2304extern __inline2305 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2306 __lsx_vfnmadd_d(__m128d _1, __m128d _2, __m128d _3) {2307 return (__m128d)__builtin_lsx_vfnmadd_d((v2f64)_1, (v2f64)_2, (v2f64)_3);2308}2309 2310extern __inline2311 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1282312 __lsx_vfnmsub_s(__m128 _1, __m128 _2, __m128 _3) {2313 return (__m128)__builtin_lsx_vfnmsub_s((v4f32)_1, (v4f32)_2, (v4f32)_3);2314}2315 2316extern __inline2317 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2318 __lsx_vfnmsub_d(__m128d _1, __m128d _2, __m128d _3) {2319 return (__m128d)__builtin_lsx_vfnmsub_d((v2f64)_1, (v2f64)_2, (v2f64)_3);2320}2321 2322extern __inline2323 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2324 __lsx_vftintrne_w_s(__m128 _1) {2325 return (__m128i)__builtin_lsx_vftintrne_w_s((v4f32)_1);2326}2327 2328extern __inline2329 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2330 __lsx_vftintrne_l_d(__m128d _1) {2331 return (__m128i)__builtin_lsx_vftintrne_l_d((v2f64)_1);2332}2333 2334extern __inline2335 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2336 __lsx_vftintrp_w_s(__m128 _1) {2337 return (__m128i)__builtin_lsx_vftintrp_w_s((v4f32)_1);2338}2339 2340extern __inline2341 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2342 __lsx_vftintrp_l_d(__m128d _1) {2343 return (__m128i)__builtin_lsx_vftintrp_l_d((v2f64)_1);2344}2345 2346extern __inline2347 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2348 __lsx_vftintrm_w_s(__m128 _1) {2349 return (__m128i)__builtin_lsx_vftintrm_w_s((v4f32)_1);2350}2351 2352extern __inline2353 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2354 __lsx_vftintrm_l_d(__m128d _1) {2355 return (__m128i)__builtin_lsx_vftintrm_l_d((v2f64)_1);2356}2357 2358extern __inline2359 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2360 __lsx_vftint_w_d(__m128d _1, __m128d _2) {2361 return (__m128i)__builtin_lsx_vftint_w_d((v2f64)_1, (v2f64)_2);2362}2363 2364extern __inline2365 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1282366 __lsx_vffint_s_l(__m128i _1, __m128i _2) {2367 return (__m128)__builtin_lsx_vffint_s_l((v2i64)_1, (v2i64)_2);2368}2369 2370extern __inline2371 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2372 __lsx_vftintrz_w_d(__m128d _1, __m128d _2) {2373 return (__m128i)__builtin_lsx_vftintrz_w_d((v2f64)_1, (v2f64)_2);2374}2375 2376extern __inline2377 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2378 __lsx_vftintrp_w_d(__m128d _1, __m128d _2) {2379 return (__m128i)__builtin_lsx_vftintrp_w_d((v2f64)_1, (v2f64)_2);2380}2381 2382extern __inline2383 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2384 __lsx_vftintrm_w_d(__m128d _1, __m128d _2) {2385 return (__m128i)__builtin_lsx_vftintrm_w_d((v2f64)_1, (v2f64)_2);2386}2387 2388extern __inline2389 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2390 __lsx_vftintrne_w_d(__m128d _1, __m128d _2) {2391 return (__m128i)__builtin_lsx_vftintrne_w_d((v2f64)_1, (v2f64)_2);2392}2393 2394extern __inline2395 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2396 __lsx_vftintl_l_s(__m128 _1) {2397 return (__m128i)__builtin_lsx_vftintl_l_s((v4f32)_1);2398}2399 2400extern __inline2401 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2402 __lsx_vftinth_l_s(__m128 _1) {2403 return (__m128i)__builtin_lsx_vftinth_l_s((v4f32)_1);2404}2405 2406extern __inline2407 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2408 __lsx_vffinth_d_w(__m128i _1) {2409 return (__m128d)__builtin_lsx_vffinth_d_w((v4i32)_1);2410}2411 2412extern __inline2413 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2414 __lsx_vffintl_d_w(__m128i _1) {2415 return (__m128d)__builtin_lsx_vffintl_d_w((v4i32)_1);2416}2417 2418extern __inline2419 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2420 __lsx_vftintrzl_l_s(__m128 _1) {2421 return (__m128i)__builtin_lsx_vftintrzl_l_s((v4f32)_1);2422}2423 2424extern __inline2425 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2426 __lsx_vftintrzh_l_s(__m128 _1) {2427 return (__m128i)__builtin_lsx_vftintrzh_l_s((v4f32)_1);2428}2429 2430extern __inline2431 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2432 __lsx_vftintrpl_l_s(__m128 _1) {2433 return (__m128i)__builtin_lsx_vftintrpl_l_s((v4f32)_1);2434}2435 2436extern __inline2437 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2438 __lsx_vftintrph_l_s(__m128 _1) {2439 return (__m128i)__builtin_lsx_vftintrph_l_s((v4f32)_1);2440}2441 2442extern __inline2443 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2444 __lsx_vftintrml_l_s(__m128 _1) {2445 return (__m128i)__builtin_lsx_vftintrml_l_s((v4f32)_1);2446}2447 2448extern __inline2449 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2450 __lsx_vftintrmh_l_s(__m128 _1) {2451 return (__m128i)__builtin_lsx_vftintrmh_l_s((v4f32)_1);2452}2453 2454extern __inline2455 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2456 __lsx_vftintrnel_l_s(__m128 _1) {2457 return (__m128i)__builtin_lsx_vftintrnel_l_s((v4f32)_1);2458}2459 2460extern __inline2461 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2462 __lsx_vftintrneh_l_s(__m128 _1) {2463 return (__m128i)__builtin_lsx_vftintrneh_l_s((v4f32)_1);2464}2465 2466extern __inline2467 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1282468 __lsx_vfrintrne_s(__m128 _1) {2469 return (__m128)__builtin_lsx_vfrintrne_s((v4f32)_1);2470}2471 2472extern __inline2473 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2474 __lsx_vfrintrne_d(__m128d _1) {2475 return (__m128d)__builtin_lsx_vfrintrne_d((v2f64)_1);2476}2477 2478extern __inline2479 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1282480 __lsx_vfrintrz_s(__m128 _1) {2481 return (__m128)__builtin_lsx_vfrintrz_s((v4f32)_1);2482}2483 2484extern __inline2485 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2486 __lsx_vfrintrz_d(__m128d _1) {2487 return (__m128d)__builtin_lsx_vfrintrz_d((v2f64)_1);2488}2489 2490extern __inline2491 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1282492 __lsx_vfrintrp_s(__m128 _1) {2493 return (__m128)__builtin_lsx_vfrintrp_s((v4f32)_1);2494}2495 2496extern __inline2497 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2498 __lsx_vfrintrp_d(__m128d _1) {2499 return (__m128d)__builtin_lsx_vfrintrp_d((v2f64)_1);2500}2501 2502extern __inline2503 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1282504 __lsx_vfrintrm_s(__m128 _1) {2505 return (__m128)__builtin_lsx_vfrintrm_s((v4f32)_1);2506}2507 2508extern __inline2509 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d2510 __lsx_vfrintrm_d(__m128d _1) {2511 return (__m128d)__builtin_lsx_vfrintrm_d((v2f64)_1);2512}2513 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)))2516 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)))2519 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)))2522 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)))2525 2526extern __inline2527 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2528 __lsx_vaddwev_d_w(__m128i _1, __m128i _2) {2529 return (__m128i)__builtin_lsx_vaddwev_d_w((v4i32)_1, (v4i32)_2);2530}2531 2532extern __inline2533 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2534 __lsx_vaddwev_w_h(__m128i _1, __m128i _2) {2535 return (__m128i)__builtin_lsx_vaddwev_w_h((v8i16)_1, (v8i16)_2);2536}2537 2538extern __inline2539 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2540 __lsx_vaddwev_h_b(__m128i _1, __m128i _2) {2541 return (__m128i)__builtin_lsx_vaddwev_h_b((v16i8)_1, (v16i8)_2);2542}2543 2544extern __inline2545 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2546 __lsx_vaddwod_d_w(__m128i _1, __m128i _2) {2547 return (__m128i)__builtin_lsx_vaddwod_d_w((v4i32)_1, (v4i32)_2);2548}2549 2550extern __inline2551 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2552 __lsx_vaddwod_w_h(__m128i _1, __m128i _2) {2553 return (__m128i)__builtin_lsx_vaddwod_w_h((v8i16)_1, (v8i16)_2);2554}2555 2556extern __inline2557 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2558 __lsx_vaddwod_h_b(__m128i _1, __m128i _2) {2559 return (__m128i)__builtin_lsx_vaddwod_h_b((v16i8)_1, (v16i8)_2);2560}2561 2562extern __inline2563 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2564 __lsx_vaddwev_d_wu(__m128i _1, __m128i _2) {2565 return (__m128i)__builtin_lsx_vaddwev_d_wu((v4u32)_1, (v4u32)_2);2566}2567 2568extern __inline2569 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2570 __lsx_vaddwev_w_hu(__m128i _1, __m128i _2) {2571 return (__m128i)__builtin_lsx_vaddwev_w_hu((v8u16)_1, (v8u16)_2);2572}2573 2574extern __inline2575 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2576 __lsx_vaddwev_h_bu(__m128i _1, __m128i _2) {2577 return (__m128i)__builtin_lsx_vaddwev_h_bu((v16u8)_1, (v16u8)_2);2578}2579 2580extern __inline2581 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2582 __lsx_vaddwod_d_wu(__m128i _1, __m128i _2) {2583 return (__m128i)__builtin_lsx_vaddwod_d_wu((v4u32)_1, (v4u32)_2);2584}2585 2586extern __inline2587 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2588 __lsx_vaddwod_w_hu(__m128i _1, __m128i _2) {2589 return (__m128i)__builtin_lsx_vaddwod_w_hu((v8u16)_1, (v8u16)_2);2590}2591 2592extern __inline2593 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2594 __lsx_vaddwod_h_bu(__m128i _1, __m128i _2) {2595 return (__m128i)__builtin_lsx_vaddwod_h_bu((v16u8)_1, (v16u8)_2);2596}2597 2598extern __inline2599 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2600 __lsx_vaddwev_d_wu_w(__m128i _1, __m128i _2) {2601 return (__m128i)__builtin_lsx_vaddwev_d_wu_w((v4u32)_1, (v4i32)_2);2602}2603 2604extern __inline2605 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2606 __lsx_vaddwev_w_hu_h(__m128i _1, __m128i _2) {2607 return (__m128i)__builtin_lsx_vaddwev_w_hu_h((v8u16)_1, (v8i16)_2);2608}2609 2610extern __inline2611 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2612 __lsx_vaddwev_h_bu_b(__m128i _1, __m128i _2) {2613 return (__m128i)__builtin_lsx_vaddwev_h_bu_b((v16u8)_1, (v16i8)_2);2614}2615 2616extern __inline2617 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2618 __lsx_vaddwod_d_wu_w(__m128i _1, __m128i _2) {2619 return (__m128i)__builtin_lsx_vaddwod_d_wu_w((v4u32)_1, (v4i32)_2);2620}2621 2622extern __inline2623 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2624 __lsx_vaddwod_w_hu_h(__m128i _1, __m128i _2) {2625 return (__m128i)__builtin_lsx_vaddwod_w_hu_h((v8u16)_1, (v8i16)_2);2626}2627 2628extern __inline2629 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2630 __lsx_vaddwod_h_bu_b(__m128i _1, __m128i _2) {2631 return (__m128i)__builtin_lsx_vaddwod_h_bu_b((v16u8)_1, (v16i8)_2);2632}2633 2634extern __inline2635 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2636 __lsx_vsubwev_d_w(__m128i _1, __m128i _2) {2637 return (__m128i)__builtin_lsx_vsubwev_d_w((v4i32)_1, (v4i32)_2);2638}2639 2640extern __inline2641 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2642 __lsx_vsubwev_w_h(__m128i _1, __m128i _2) {2643 return (__m128i)__builtin_lsx_vsubwev_w_h((v8i16)_1, (v8i16)_2);2644}2645 2646extern __inline2647 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2648 __lsx_vsubwev_h_b(__m128i _1, __m128i _2) {2649 return (__m128i)__builtin_lsx_vsubwev_h_b((v16i8)_1, (v16i8)_2);2650}2651 2652extern __inline2653 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2654 __lsx_vsubwod_d_w(__m128i _1, __m128i _2) {2655 return (__m128i)__builtin_lsx_vsubwod_d_w((v4i32)_1, (v4i32)_2);2656}2657 2658extern __inline2659 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2660 __lsx_vsubwod_w_h(__m128i _1, __m128i _2) {2661 return (__m128i)__builtin_lsx_vsubwod_w_h((v8i16)_1, (v8i16)_2);2662}2663 2664extern __inline2665 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2666 __lsx_vsubwod_h_b(__m128i _1, __m128i _2) {2667 return (__m128i)__builtin_lsx_vsubwod_h_b((v16i8)_1, (v16i8)_2);2668}2669 2670extern __inline2671 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2672 __lsx_vsubwev_d_wu(__m128i _1, __m128i _2) {2673 return (__m128i)__builtin_lsx_vsubwev_d_wu((v4u32)_1, (v4u32)_2);2674}2675 2676extern __inline2677 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2678 __lsx_vsubwev_w_hu(__m128i _1, __m128i _2) {2679 return (__m128i)__builtin_lsx_vsubwev_w_hu((v8u16)_1, (v8u16)_2);2680}2681 2682extern __inline2683 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2684 __lsx_vsubwev_h_bu(__m128i _1, __m128i _2) {2685 return (__m128i)__builtin_lsx_vsubwev_h_bu((v16u8)_1, (v16u8)_2);2686}2687 2688extern __inline2689 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2690 __lsx_vsubwod_d_wu(__m128i _1, __m128i _2) {2691 return (__m128i)__builtin_lsx_vsubwod_d_wu((v4u32)_1, (v4u32)_2);2692}2693 2694extern __inline2695 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2696 __lsx_vsubwod_w_hu(__m128i _1, __m128i _2) {2697 return (__m128i)__builtin_lsx_vsubwod_w_hu((v8u16)_1, (v8u16)_2);2698}2699 2700extern __inline2701 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2702 __lsx_vsubwod_h_bu(__m128i _1, __m128i _2) {2703 return (__m128i)__builtin_lsx_vsubwod_h_bu((v16u8)_1, (v16u8)_2);2704}2705 2706extern __inline2707 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2708 __lsx_vaddwev_q_d(__m128i _1, __m128i _2) {2709 return (__m128i)__builtin_lsx_vaddwev_q_d((v2i64)_1, (v2i64)_2);2710}2711 2712extern __inline2713 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2714 __lsx_vaddwod_q_d(__m128i _1, __m128i _2) {2715 return (__m128i)__builtin_lsx_vaddwod_q_d((v2i64)_1, (v2i64)_2);2716}2717 2718extern __inline2719 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2720 __lsx_vaddwev_q_du(__m128i _1, __m128i _2) {2721 return (__m128i)__builtin_lsx_vaddwev_q_du((v2u64)_1, (v2u64)_2);2722}2723 2724extern __inline2725 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2726 __lsx_vaddwod_q_du(__m128i _1, __m128i _2) {2727 return (__m128i)__builtin_lsx_vaddwod_q_du((v2u64)_1, (v2u64)_2);2728}2729 2730extern __inline2731 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2732 __lsx_vsubwev_q_d(__m128i _1, __m128i _2) {2733 return (__m128i)__builtin_lsx_vsubwev_q_d((v2i64)_1, (v2i64)_2);2734}2735 2736extern __inline2737 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2738 __lsx_vsubwod_q_d(__m128i _1, __m128i _2) {2739 return (__m128i)__builtin_lsx_vsubwod_q_d((v2i64)_1, (v2i64)_2);2740}2741 2742extern __inline2743 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2744 __lsx_vsubwev_q_du(__m128i _1, __m128i _2) {2745 return (__m128i)__builtin_lsx_vsubwev_q_du((v2u64)_1, (v2u64)_2);2746}2747 2748extern __inline2749 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2750 __lsx_vsubwod_q_du(__m128i _1, __m128i _2) {2751 return (__m128i)__builtin_lsx_vsubwod_q_du((v2u64)_1, (v2u64)_2);2752}2753 2754extern __inline2755 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2756 __lsx_vaddwev_q_du_d(__m128i _1, __m128i _2) {2757 return (__m128i)__builtin_lsx_vaddwev_q_du_d((v2u64)_1, (v2i64)_2);2758}2759 2760extern __inline2761 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2762 __lsx_vaddwod_q_du_d(__m128i _1, __m128i _2) {2763 return (__m128i)__builtin_lsx_vaddwod_q_du_d((v2u64)_1, (v2i64)_2);2764}2765 2766extern __inline2767 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2768 __lsx_vmulwev_d_w(__m128i _1, __m128i _2) {2769 return (__m128i)__builtin_lsx_vmulwev_d_w((v4i32)_1, (v4i32)_2);2770}2771 2772extern __inline2773 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2774 __lsx_vmulwev_w_h(__m128i _1, __m128i _2) {2775 return (__m128i)__builtin_lsx_vmulwev_w_h((v8i16)_1, (v8i16)_2);2776}2777 2778extern __inline2779 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2780 __lsx_vmulwev_h_b(__m128i _1, __m128i _2) {2781 return (__m128i)__builtin_lsx_vmulwev_h_b((v16i8)_1, (v16i8)_2);2782}2783 2784extern __inline2785 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2786 __lsx_vmulwod_d_w(__m128i _1, __m128i _2) {2787 return (__m128i)__builtin_lsx_vmulwod_d_w((v4i32)_1, (v4i32)_2);2788}2789 2790extern __inline2791 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2792 __lsx_vmulwod_w_h(__m128i _1, __m128i _2) {2793 return (__m128i)__builtin_lsx_vmulwod_w_h((v8i16)_1, (v8i16)_2);2794}2795 2796extern __inline2797 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2798 __lsx_vmulwod_h_b(__m128i _1, __m128i _2) {2799 return (__m128i)__builtin_lsx_vmulwod_h_b((v16i8)_1, (v16i8)_2);2800}2801 2802extern __inline2803 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2804 __lsx_vmulwev_d_wu(__m128i _1, __m128i _2) {2805 return (__m128i)__builtin_lsx_vmulwev_d_wu((v4u32)_1, (v4u32)_2);2806}2807 2808extern __inline2809 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2810 __lsx_vmulwev_w_hu(__m128i _1, __m128i _2) {2811 return (__m128i)__builtin_lsx_vmulwev_w_hu((v8u16)_1, (v8u16)_2);2812}2813 2814extern __inline2815 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2816 __lsx_vmulwev_h_bu(__m128i _1, __m128i _2) {2817 return (__m128i)__builtin_lsx_vmulwev_h_bu((v16u8)_1, (v16u8)_2);2818}2819 2820extern __inline2821 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2822 __lsx_vmulwod_d_wu(__m128i _1, __m128i _2) {2823 return (__m128i)__builtin_lsx_vmulwod_d_wu((v4u32)_1, (v4u32)_2);2824}2825 2826extern __inline2827 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2828 __lsx_vmulwod_w_hu(__m128i _1, __m128i _2) {2829 return (__m128i)__builtin_lsx_vmulwod_w_hu((v8u16)_1, (v8u16)_2);2830}2831 2832extern __inline2833 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2834 __lsx_vmulwod_h_bu(__m128i _1, __m128i _2) {2835 return (__m128i)__builtin_lsx_vmulwod_h_bu((v16u8)_1, (v16u8)_2);2836}2837 2838extern __inline2839 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2840 __lsx_vmulwev_d_wu_w(__m128i _1, __m128i _2) {2841 return (__m128i)__builtin_lsx_vmulwev_d_wu_w((v4u32)_1, (v4i32)_2);2842}2843 2844extern __inline2845 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2846 __lsx_vmulwev_w_hu_h(__m128i _1, __m128i _2) {2847 return (__m128i)__builtin_lsx_vmulwev_w_hu_h((v8u16)_1, (v8i16)_2);2848}2849 2850extern __inline2851 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2852 __lsx_vmulwev_h_bu_b(__m128i _1, __m128i _2) {2853 return (__m128i)__builtin_lsx_vmulwev_h_bu_b((v16u8)_1, (v16i8)_2);2854}2855 2856extern __inline2857 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2858 __lsx_vmulwod_d_wu_w(__m128i _1, __m128i _2) {2859 return (__m128i)__builtin_lsx_vmulwod_d_wu_w((v4u32)_1, (v4i32)_2);2860}2861 2862extern __inline2863 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2864 __lsx_vmulwod_w_hu_h(__m128i _1, __m128i _2) {2865 return (__m128i)__builtin_lsx_vmulwod_w_hu_h((v8u16)_1, (v8i16)_2);2866}2867 2868extern __inline2869 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2870 __lsx_vmulwod_h_bu_b(__m128i _1, __m128i _2) {2871 return (__m128i)__builtin_lsx_vmulwod_h_bu_b((v16u8)_1, (v16i8)_2);2872}2873 2874extern __inline2875 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2876 __lsx_vmulwev_q_d(__m128i _1, __m128i _2) {2877 return (__m128i)__builtin_lsx_vmulwev_q_d((v2i64)_1, (v2i64)_2);2878}2879 2880extern __inline2881 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2882 __lsx_vmulwod_q_d(__m128i _1, __m128i _2) {2883 return (__m128i)__builtin_lsx_vmulwod_q_d((v2i64)_1, (v2i64)_2);2884}2885 2886extern __inline2887 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2888 __lsx_vmulwev_q_du(__m128i _1, __m128i _2) {2889 return (__m128i)__builtin_lsx_vmulwev_q_du((v2u64)_1, (v2u64)_2);2890}2891 2892extern __inline2893 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2894 __lsx_vmulwod_q_du(__m128i _1, __m128i _2) {2895 return (__m128i)__builtin_lsx_vmulwod_q_du((v2u64)_1, (v2u64)_2);2896}2897 2898extern __inline2899 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2900 __lsx_vmulwev_q_du_d(__m128i _1, __m128i _2) {2901 return (__m128i)__builtin_lsx_vmulwev_q_du_d((v2u64)_1, (v2i64)_2);2902}2903 2904extern __inline2905 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2906 __lsx_vmulwod_q_du_d(__m128i _1, __m128i _2) {2907 return (__m128i)__builtin_lsx_vmulwod_q_du_d((v2u64)_1, (v2i64)_2);2908}2909 2910extern __inline2911 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2912 __lsx_vhaddw_q_d(__m128i _1, __m128i _2) {2913 return (__m128i)__builtin_lsx_vhaddw_q_d((v2i64)_1, (v2i64)_2);2914}2915 2916extern __inline2917 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2918 __lsx_vhaddw_qu_du(__m128i _1, __m128i _2) {2919 return (__m128i)__builtin_lsx_vhaddw_qu_du((v2u64)_1, (v2u64)_2);2920}2921 2922extern __inline2923 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2924 __lsx_vhsubw_q_d(__m128i _1, __m128i _2) {2925 return (__m128i)__builtin_lsx_vhsubw_q_d((v2i64)_1, (v2i64)_2);2926}2927 2928extern __inline2929 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2930 __lsx_vhsubw_qu_du(__m128i _1, __m128i _2) {2931 return (__m128i)__builtin_lsx_vhsubw_qu_du((v2u64)_1, (v2u64)_2);2932}2933 2934extern __inline2935 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2936 __lsx_vmaddwev_d_w(__m128i _1, __m128i _2, __m128i _3) {2937 return (__m128i)__builtin_lsx_vmaddwev_d_w((v2i64)_1, (v4i32)_2, (v4i32)_3);2938}2939 2940extern __inline2941 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2942 __lsx_vmaddwev_w_h(__m128i _1, __m128i _2, __m128i _3) {2943 return (__m128i)__builtin_lsx_vmaddwev_w_h((v4i32)_1, (v8i16)_2, (v8i16)_3);2944}2945 2946extern __inline2947 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2948 __lsx_vmaddwev_h_b(__m128i _1, __m128i _2, __m128i _3) {2949 return (__m128i)__builtin_lsx_vmaddwev_h_b((v8i16)_1, (v16i8)_2, (v16i8)_3);2950}2951 2952extern __inline2953 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2954 __lsx_vmaddwev_d_wu(__m128i _1, __m128i _2, __m128i _3) {2955 return (__m128i)__builtin_lsx_vmaddwev_d_wu((v2u64)_1, (v4u32)_2, (v4u32)_3);2956}2957 2958extern __inline2959 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2960 __lsx_vmaddwev_w_hu(__m128i _1, __m128i _2, __m128i _3) {2961 return (__m128i)__builtin_lsx_vmaddwev_w_hu((v4u32)_1, (v8u16)_2, (v8u16)_3);2962}2963 2964extern __inline2965 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2966 __lsx_vmaddwev_h_bu(__m128i _1, __m128i _2, __m128i _3) {2967 return (__m128i)__builtin_lsx_vmaddwev_h_bu((v8u16)_1, (v16u8)_2, (v16u8)_3);2968}2969 2970extern __inline2971 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2972 __lsx_vmaddwod_d_w(__m128i _1, __m128i _2, __m128i _3) {2973 return (__m128i)__builtin_lsx_vmaddwod_d_w((v2i64)_1, (v4i32)_2, (v4i32)_3);2974}2975 2976extern __inline2977 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2978 __lsx_vmaddwod_w_h(__m128i _1, __m128i _2, __m128i _3) {2979 return (__m128i)__builtin_lsx_vmaddwod_w_h((v4i32)_1, (v8i16)_2, (v8i16)_3);2980}2981 2982extern __inline2983 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2984 __lsx_vmaddwod_h_b(__m128i _1, __m128i _2, __m128i _3) {2985 return (__m128i)__builtin_lsx_vmaddwod_h_b((v8i16)_1, (v16i8)_2, (v16i8)_3);2986}2987 2988extern __inline2989 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2990 __lsx_vmaddwod_d_wu(__m128i _1, __m128i _2, __m128i _3) {2991 return (__m128i)__builtin_lsx_vmaddwod_d_wu((v2u64)_1, (v4u32)_2, (v4u32)_3);2992}2993 2994extern __inline2995 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i2996 __lsx_vmaddwod_w_hu(__m128i _1, __m128i _2, __m128i _3) {2997 return (__m128i)__builtin_lsx_vmaddwod_w_hu((v4u32)_1, (v8u16)_2, (v8u16)_3);2998}2999 3000extern __inline3001 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3002 __lsx_vmaddwod_h_bu(__m128i _1, __m128i _2, __m128i _3) {3003 return (__m128i)__builtin_lsx_vmaddwod_h_bu((v8u16)_1, (v16u8)_2, (v16u8)_3);3004}3005 3006extern __inline3007 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3008 __lsx_vmaddwev_d_wu_w(__m128i _1, __m128i _2, __m128i _3) {3009 return (__m128i)__builtin_lsx_vmaddwev_d_wu_w((v2i64)_1, (v4u32)_2,3010 (v4i32)_3);3011}3012 3013extern __inline3014 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3015 __lsx_vmaddwev_w_hu_h(__m128i _1, __m128i _2, __m128i _3) {3016 return (__m128i)__builtin_lsx_vmaddwev_w_hu_h((v4i32)_1, (v8u16)_2,3017 (v8i16)_3);3018}3019 3020extern __inline3021 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3022 __lsx_vmaddwev_h_bu_b(__m128i _1, __m128i _2, __m128i _3) {3023 return (__m128i)__builtin_lsx_vmaddwev_h_bu_b((v8i16)_1, (v16u8)_2,3024 (v16i8)_3);3025}3026 3027extern __inline3028 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3029 __lsx_vmaddwod_d_wu_w(__m128i _1, __m128i _2, __m128i _3) {3030 return (__m128i)__builtin_lsx_vmaddwod_d_wu_w((v2i64)_1, (v4u32)_2,3031 (v4i32)_3);3032}3033 3034extern __inline3035 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3036 __lsx_vmaddwod_w_hu_h(__m128i _1, __m128i _2, __m128i _3) {3037 return (__m128i)__builtin_lsx_vmaddwod_w_hu_h((v4i32)_1, (v8u16)_2,3038 (v8i16)_3);3039}3040 3041extern __inline3042 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3043 __lsx_vmaddwod_h_bu_b(__m128i _1, __m128i _2, __m128i _3) {3044 return (__m128i)__builtin_lsx_vmaddwod_h_bu_b((v8i16)_1, (v16u8)_2,3045 (v16i8)_3);3046}3047 3048extern __inline3049 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3050 __lsx_vmaddwev_q_d(__m128i _1, __m128i _2, __m128i _3) {3051 return (__m128i)__builtin_lsx_vmaddwev_q_d((v2i64)_1, (v2i64)_2, (v2i64)_3);3052}3053 3054extern __inline3055 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3056 __lsx_vmaddwod_q_d(__m128i _1, __m128i _2, __m128i _3) {3057 return (__m128i)__builtin_lsx_vmaddwod_q_d((v2i64)_1, (v2i64)_2, (v2i64)_3);3058}3059 3060extern __inline3061 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3062 __lsx_vmaddwev_q_du(__m128i _1, __m128i _2, __m128i _3) {3063 return (__m128i)__builtin_lsx_vmaddwev_q_du((v2u64)_1, (v2u64)_2, (v2u64)_3);3064}3065 3066extern __inline3067 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3068 __lsx_vmaddwod_q_du(__m128i _1, __m128i _2, __m128i _3) {3069 return (__m128i)__builtin_lsx_vmaddwod_q_du((v2u64)_1, (v2u64)_2, (v2u64)_3);3070}3071 3072extern __inline3073 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3074 __lsx_vmaddwev_q_du_d(__m128i _1, __m128i _2, __m128i _3) {3075 return (__m128i)__builtin_lsx_vmaddwev_q_du_d((v2i64)_1, (v2u64)_2,3076 (v2i64)_3);3077}3078 3079extern __inline3080 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3081 __lsx_vmaddwod_q_du_d(__m128i _1, __m128i _2, __m128i _3) {3082 return (__m128i)__builtin_lsx_vmaddwod_q_du_d((v2i64)_1, (v2u64)_2,3083 (v2i64)_3);3084}3085 3086extern __inline3087 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3088 __lsx_vrotr_b(__m128i _1, __m128i _2) {3089 return (__m128i)__builtin_lsx_vrotr_b((v16i8)_1, (v16i8)_2);3090}3091 3092extern __inline3093 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3094 __lsx_vrotr_h(__m128i _1, __m128i _2) {3095 return (__m128i)__builtin_lsx_vrotr_h((v8i16)_1, (v8i16)_2);3096}3097 3098extern __inline3099 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3100 __lsx_vrotr_w(__m128i _1, __m128i _2) {3101 return (__m128i)__builtin_lsx_vrotr_w((v4i32)_1, (v4i32)_2);3102}3103 3104extern __inline3105 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3106 __lsx_vrotr_d(__m128i _1, __m128i _2) {3107 return (__m128i)__builtin_lsx_vrotr_d((v2i64)_1, (v2i64)_2);3108}3109 3110extern __inline3111 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3112 __lsx_vadd_q(__m128i _1, __m128i _2) {3113 return (__m128i)__builtin_lsx_vadd_q((v2i64)_1, (v2i64)_2);3114}3115 3116extern __inline3117 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3118 __lsx_vsub_q(__m128i _1, __m128i _2) {3119 return (__m128i)__builtin_lsx_vsub_q((v2i64)_1, (v2i64)_2);3120}3121 3122#define __lsx_vldrepl_b(/*void **/ _1, /*si12*/ _2) \3123 ((__m128i)__builtin_lsx_vldrepl_b((void const *)(_1), (_2)))3124 3125#define __lsx_vldrepl_h(/*void **/ _1, /*si11*/ _2) \3126 ((__m128i)__builtin_lsx_vldrepl_h((void const *)(_1), (_2)))3127 3128#define __lsx_vldrepl_w(/*void **/ _1, /*si10*/ _2) \3129 ((__m128i)__builtin_lsx_vldrepl_w((void const *)(_1), (_2)))3130 3131#define __lsx_vldrepl_d(/*void **/ _1, /*si9*/ _2) \3132 ((__m128i)__builtin_lsx_vldrepl_d((void const *)(_1), (_2)))3133 3134extern __inline3135 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3136 __lsx_vmskgez_b(__m128i _1) {3137 return (__m128i)__builtin_lsx_vmskgez_b((v16i8)_1);3138}3139 3140extern __inline3141 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3142 __lsx_vmsknz_b(__m128i _1) {3143 return (__m128i)__builtin_lsx_vmsknz_b((v16i8)_1);3144}3145 3146extern __inline3147 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3148 __lsx_vexth_h_b(__m128i _1) {3149 return (__m128i)__builtin_lsx_vexth_h_b((v16i8)_1);3150}3151 3152extern __inline3153 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3154 __lsx_vexth_w_h(__m128i _1) {3155 return (__m128i)__builtin_lsx_vexth_w_h((v8i16)_1);3156}3157 3158extern __inline3159 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3160 __lsx_vexth_d_w(__m128i _1) {3161 return (__m128i)__builtin_lsx_vexth_d_w((v4i32)_1);3162}3163 3164extern __inline3165 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3166 __lsx_vexth_q_d(__m128i _1) {3167 return (__m128i)__builtin_lsx_vexth_q_d((v2i64)_1);3168}3169 3170extern __inline3171 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3172 __lsx_vexth_hu_bu(__m128i _1) {3173 return (__m128i)__builtin_lsx_vexth_hu_bu((v16u8)_1);3174}3175 3176extern __inline3177 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3178 __lsx_vexth_wu_hu(__m128i _1) {3179 return (__m128i)__builtin_lsx_vexth_wu_hu((v8u16)_1);3180}3181 3182extern __inline3183 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3184 __lsx_vexth_du_wu(__m128i _1) {3185 return (__m128i)__builtin_lsx_vexth_du_wu((v4u32)_1);3186}3187 3188extern __inline3189 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3190 __lsx_vexth_qu_du(__m128i _1) {3191 return (__m128i)__builtin_lsx_vexth_qu_du((v2u64)_1);3192}3193 3194#define __lsx_vrotri_b(/*__m128i*/ _1, /*ui3*/ _2) \3195 ((__m128i)__builtin_lsx_vrotri_b((v16i8)(_1), (_2)))3196 3197#define __lsx_vrotri_h(/*__m128i*/ _1, /*ui4*/ _2) \3198 ((__m128i)__builtin_lsx_vrotri_h((v8i16)(_1), (_2)))3199 3200#define __lsx_vrotri_w(/*__m128i*/ _1, /*ui5*/ _2) \3201 ((__m128i)__builtin_lsx_vrotri_w((v4i32)(_1), (_2)))3202 3203#define __lsx_vrotri_d(/*__m128i*/ _1, /*ui6*/ _2) \3204 ((__m128i)__builtin_lsx_vrotri_d((v2i64)(_1), (_2)))3205 3206extern __inline3207 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3208 __lsx_vextl_q_d(__m128i _1) {3209 return (__m128i)__builtin_lsx_vextl_q_d((v2i64)_1);3210}3211 3212#define __lsx_vsrlni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3213 ((__m128i)__builtin_lsx_vsrlni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))3214 3215#define __lsx_vsrlni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3216 ((__m128i)__builtin_lsx_vsrlni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))3217 3218#define __lsx_vsrlni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3219 ((__m128i)__builtin_lsx_vsrlni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))3220 3221#define __lsx_vsrlni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3222 ((__m128i)__builtin_lsx_vsrlni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))3223 3224#define __lsx_vsrlrni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3225 ((__m128i)__builtin_lsx_vsrlrni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))3226 3227#define __lsx_vsrlrni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3228 ((__m128i)__builtin_lsx_vsrlrni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))3229 3230#define __lsx_vsrlrni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3231 ((__m128i)__builtin_lsx_vsrlrni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))3232 3233#define __lsx_vsrlrni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3234 ((__m128i)__builtin_lsx_vsrlrni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))3235 3236#define __lsx_vssrlni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3237 ((__m128i)__builtin_lsx_vssrlni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))3238 3239#define __lsx_vssrlni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3240 ((__m128i)__builtin_lsx_vssrlni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))3241 3242#define __lsx_vssrlni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3243 ((__m128i)__builtin_lsx_vssrlni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))3244 3245#define __lsx_vssrlni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3246 ((__m128i)__builtin_lsx_vssrlni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))3247 3248#define __lsx_vssrlni_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3249 ((__m128i)__builtin_lsx_vssrlni_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))3250 3251#define __lsx_vssrlni_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3252 ((__m128i)__builtin_lsx_vssrlni_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))3253 3254#define __lsx_vssrlni_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3255 ((__m128i)__builtin_lsx_vssrlni_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))3256 3257#define __lsx_vssrlni_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3258 ((__m128i)__builtin_lsx_vssrlni_du_q((v2u64)(_1), (v2i64)(_2), (_3)))3259 3260#define __lsx_vssrlrni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3261 ((__m128i)__builtin_lsx_vssrlrni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))3262 3263#define __lsx_vssrlrni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3264 ((__m128i)__builtin_lsx_vssrlrni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))3265 3266#define __lsx_vssrlrni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3267 ((__m128i)__builtin_lsx_vssrlrni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))3268 3269#define __lsx_vssrlrni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3270 ((__m128i)__builtin_lsx_vssrlrni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))3271 3272#define __lsx_vssrlrni_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3273 ((__m128i)__builtin_lsx_vssrlrni_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))3274 3275#define __lsx_vssrlrni_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3276 ((__m128i)__builtin_lsx_vssrlrni_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))3277 3278#define __lsx_vssrlrni_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3279 ((__m128i)__builtin_lsx_vssrlrni_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))3280 3281#define __lsx_vssrlrni_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3282 ((__m128i)__builtin_lsx_vssrlrni_du_q((v2u64)(_1), (v2i64)(_2), (_3)))3283 3284#define __lsx_vsrani_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3285 ((__m128i)__builtin_lsx_vsrani_b_h((v16i8)(_1), (v16i8)(_2), (_3)))3286 3287#define __lsx_vsrani_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3288 ((__m128i)__builtin_lsx_vsrani_h_w((v8i16)(_1), (v8i16)(_2), (_3)))3289 3290#define __lsx_vsrani_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3291 ((__m128i)__builtin_lsx_vsrani_w_d((v4i32)(_1), (v4i32)(_2), (_3)))3292 3293#define __lsx_vsrani_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3294 ((__m128i)__builtin_lsx_vsrani_d_q((v2i64)(_1), (v2i64)(_2), (_3)))3295 3296#define __lsx_vsrarni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3297 ((__m128i)__builtin_lsx_vsrarni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))3298 3299#define __lsx_vsrarni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3300 ((__m128i)__builtin_lsx_vsrarni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))3301 3302#define __lsx_vsrarni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3303 ((__m128i)__builtin_lsx_vsrarni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))3304 3305#define __lsx_vsrarni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3306 ((__m128i)__builtin_lsx_vsrarni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))3307 3308#define __lsx_vssrani_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3309 ((__m128i)__builtin_lsx_vssrani_b_h((v16i8)(_1), (v16i8)(_2), (_3)))3310 3311#define __lsx_vssrani_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3312 ((__m128i)__builtin_lsx_vssrani_h_w((v8i16)(_1), (v8i16)(_2), (_3)))3313 3314#define __lsx_vssrani_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3315 ((__m128i)__builtin_lsx_vssrani_w_d((v4i32)(_1), (v4i32)(_2), (_3)))3316 3317#define __lsx_vssrani_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3318 ((__m128i)__builtin_lsx_vssrani_d_q((v2i64)(_1), (v2i64)(_2), (_3)))3319 3320#define __lsx_vssrani_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3321 ((__m128i)__builtin_lsx_vssrani_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))3322 3323#define __lsx_vssrani_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3324 ((__m128i)__builtin_lsx_vssrani_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))3325 3326#define __lsx_vssrani_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3327 ((__m128i)__builtin_lsx_vssrani_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))3328 3329#define __lsx_vssrani_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3330 ((__m128i)__builtin_lsx_vssrani_du_q((v2u64)(_1), (v2i64)(_2), (_3)))3331 3332#define __lsx_vssrarni_b_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3333 ((__m128i)__builtin_lsx_vssrarni_b_h((v16i8)(_1), (v16i8)(_2), (_3)))3334 3335#define __lsx_vssrarni_h_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3336 ((__m128i)__builtin_lsx_vssrarni_h_w((v8i16)(_1), (v8i16)(_2), (_3)))3337 3338#define __lsx_vssrarni_w_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3339 ((__m128i)__builtin_lsx_vssrarni_w_d((v4i32)(_1), (v4i32)(_2), (_3)))3340 3341#define __lsx_vssrarni_d_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3342 ((__m128i)__builtin_lsx_vssrarni_d_q((v2i64)(_1), (v2i64)(_2), (_3)))3343 3344#define __lsx_vssrarni_bu_h(/*__m128i*/ _1, /*__m128i*/ _2, /*ui4*/ _3) \3345 ((__m128i)__builtin_lsx_vssrarni_bu_h((v16u8)(_1), (v16i8)(_2), (_3)))3346 3347#define __lsx_vssrarni_hu_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui5*/ _3) \3348 ((__m128i)__builtin_lsx_vssrarni_hu_w((v8u16)(_1), (v8i16)(_2), (_3)))3349 3350#define __lsx_vssrarni_wu_d(/*__m128i*/ _1, /*__m128i*/ _2, /*ui6*/ _3) \3351 ((__m128i)__builtin_lsx_vssrarni_wu_d((v4u32)(_1), (v4i32)(_2), (_3)))3352 3353#define __lsx_vssrarni_du_q(/*__m128i*/ _1, /*__m128i*/ _2, /*ui7*/ _3) \3354 ((__m128i)__builtin_lsx_vssrarni_du_q((v2u64)(_1), (v2i64)(_2), (_3)))3355 3356#define __lsx_vpermi_w(/*__m128i*/ _1, /*__m128i*/ _2, /*ui8*/ _3) \3357 ((__m128i)__builtin_lsx_vpermi_w((v4i32)(_1), (v4i32)(_2), (_3)))3358 3359#define __lsx_vld(/*void **/ _1, /*si12*/ _2) \3360 ((__m128i)__builtin_lsx_vld((void const *)(_1), (_2)))3361 3362#define __lsx_vst(/*__m128i*/ _1, /*void **/ _2, /*si12*/ _3) \3363 ((void)__builtin_lsx_vst((v16i8)(_1), (void *)(_2), (_3)))3364 3365extern __inline3366 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3367 __lsx_vssrlrn_b_h(__m128i _1, __m128i _2) {3368 return (__m128i)__builtin_lsx_vssrlrn_b_h((v8i16)_1, (v8i16)_2);3369}3370 3371extern __inline3372 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3373 __lsx_vssrlrn_h_w(__m128i _1, __m128i _2) {3374 return (__m128i)__builtin_lsx_vssrlrn_h_w((v4i32)_1, (v4i32)_2);3375}3376 3377extern __inline3378 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3379 __lsx_vssrlrn_w_d(__m128i _1, __m128i _2) {3380 return (__m128i)__builtin_lsx_vssrlrn_w_d((v2i64)_1, (v2i64)_2);3381}3382 3383extern __inline3384 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3385 __lsx_vssrln_b_h(__m128i _1, __m128i _2) {3386 return (__m128i)__builtin_lsx_vssrln_b_h((v8i16)_1, (v8i16)_2);3387}3388 3389extern __inline3390 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3391 __lsx_vssrln_h_w(__m128i _1, __m128i _2) {3392 return (__m128i)__builtin_lsx_vssrln_h_w((v4i32)_1, (v4i32)_2);3393}3394 3395extern __inline3396 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3397 __lsx_vssrln_w_d(__m128i _1, __m128i _2) {3398 return (__m128i)__builtin_lsx_vssrln_w_d((v2i64)_1, (v2i64)_2);3399}3400 3401extern __inline3402 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3403 __lsx_vorn_v(__m128i _1, __m128i _2) {3404 return (__m128i)__builtin_lsx_vorn_v((v16u8)_1, (v16u8)_2);3405}3406 3407#define __lsx_vldi(/*i13*/ _1) ((__m128i)__builtin_lsx_vldi((_1)))3408 3409extern __inline3410 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3411 __lsx_vshuf_b(__m128i _1, __m128i _2, __m128i _3) {3412 return (__m128i)__builtin_lsx_vshuf_b((v16i8)_1, (v16i8)_2, (v16i8)_3);3413}3414 3415extern __inline3416 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3417 __lsx_vldx(void const *_1, long int _2) {3418 return (__m128i)__builtin_lsx_vldx((void const *)_1, (long int)_2);3419}3420 3421extern __inline3422 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) void3423 __lsx_vstx(__m128i _1, void *_2, long int _3) {3424 return (void)__builtin_lsx_vstx((v16i8)_1, (void *)_2, (long int)_3);3425}3426 3427extern __inline3428 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3429 __lsx_vextl_qu_du(__m128i _1) {3430 return (__m128i)__builtin_lsx_vextl_qu_du((v2u64)_1);3431}3432 3433#define __lsx_bnz_b(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_b((v16u8)(_1)))3434 3435#define __lsx_bnz_d(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_d((v2u64)(_1)))3436 3437#define __lsx_bnz_h(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_h((v8u16)(_1)))3438 3439#define __lsx_bnz_v(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_v((v16u8)(_1)))3440 3441#define __lsx_bnz_w(/*__m128i*/ _1) ((int)__builtin_lsx_bnz_w((v4u32)(_1)))3442 3443#define __lsx_bz_b(/*__m128i*/ _1) ((int)__builtin_lsx_bz_b((v16u8)(_1)))3444 3445#define __lsx_bz_d(/*__m128i*/ _1) ((int)__builtin_lsx_bz_d((v2u64)(_1)))3446 3447#define __lsx_bz_h(/*__m128i*/ _1) ((int)__builtin_lsx_bz_h((v8u16)(_1)))3448 3449#define __lsx_bz_v(/*__m128i*/ _1) ((int)__builtin_lsx_bz_v((v16u8)(_1)))3450 3451#define __lsx_bz_w(/*__m128i*/ _1) ((int)__builtin_lsx_bz_w((v4u32)(_1)))3452 3453extern __inline3454 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3455 __lsx_vfcmp_caf_d(__m128d _1, __m128d _2) {3456 return (__m128i)__builtin_lsx_vfcmp_caf_d((v2f64)_1, (v2f64)_2);3457}3458 3459extern __inline3460 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3461 __lsx_vfcmp_caf_s(__m128 _1, __m128 _2) {3462 return (__m128i)__builtin_lsx_vfcmp_caf_s((v4f32)_1, (v4f32)_2);3463}3464 3465extern __inline3466 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3467 __lsx_vfcmp_ceq_d(__m128d _1, __m128d _2) {3468 return (__m128i)__builtin_lsx_vfcmp_ceq_d((v2f64)_1, (v2f64)_2);3469}3470 3471extern __inline3472 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3473 __lsx_vfcmp_ceq_s(__m128 _1, __m128 _2) {3474 return (__m128i)__builtin_lsx_vfcmp_ceq_s((v4f32)_1, (v4f32)_2);3475}3476 3477extern __inline3478 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3479 __lsx_vfcmp_cle_d(__m128d _1, __m128d _2) {3480 return (__m128i)__builtin_lsx_vfcmp_cle_d((v2f64)_1, (v2f64)_2);3481}3482 3483extern __inline3484 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3485 __lsx_vfcmp_cle_s(__m128 _1, __m128 _2) {3486 return (__m128i)__builtin_lsx_vfcmp_cle_s((v4f32)_1, (v4f32)_2);3487}3488 3489extern __inline3490 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3491 __lsx_vfcmp_clt_d(__m128d _1, __m128d _2) {3492 return (__m128i)__builtin_lsx_vfcmp_clt_d((v2f64)_1, (v2f64)_2);3493}3494 3495extern __inline3496 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3497 __lsx_vfcmp_clt_s(__m128 _1, __m128 _2) {3498 return (__m128i)__builtin_lsx_vfcmp_clt_s((v4f32)_1, (v4f32)_2);3499}3500 3501extern __inline3502 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3503 __lsx_vfcmp_cne_d(__m128d _1, __m128d _2) {3504 return (__m128i)__builtin_lsx_vfcmp_cne_d((v2f64)_1, (v2f64)_2);3505}3506 3507extern __inline3508 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3509 __lsx_vfcmp_cne_s(__m128 _1, __m128 _2) {3510 return (__m128i)__builtin_lsx_vfcmp_cne_s((v4f32)_1, (v4f32)_2);3511}3512 3513extern __inline3514 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3515 __lsx_vfcmp_cor_d(__m128d _1, __m128d _2) {3516 return (__m128i)__builtin_lsx_vfcmp_cor_d((v2f64)_1, (v2f64)_2);3517}3518 3519extern __inline3520 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3521 __lsx_vfcmp_cor_s(__m128 _1, __m128 _2) {3522 return (__m128i)__builtin_lsx_vfcmp_cor_s((v4f32)_1, (v4f32)_2);3523}3524 3525extern __inline3526 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3527 __lsx_vfcmp_cueq_d(__m128d _1, __m128d _2) {3528 return (__m128i)__builtin_lsx_vfcmp_cueq_d((v2f64)_1, (v2f64)_2);3529}3530 3531extern __inline3532 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3533 __lsx_vfcmp_cueq_s(__m128 _1, __m128 _2) {3534 return (__m128i)__builtin_lsx_vfcmp_cueq_s((v4f32)_1, (v4f32)_2);3535}3536 3537extern __inline3538 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3539 __lsx_vfcmp_cule_d(__m128d _1, __m128d _2) {3540 return (__m128i)__builtin_lsx_vfcmp_cule_d((v2f64)_1, (v2f64)_2);3541}3542 3543extern __inline3544 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3545 __lsx_vfcmp_cule_s(__m128 _1, __m128 _2) {3546 return (__m128i)__builtin_lsx_vfcmp_cule_s((v4f32)_1, (v4f32)_2);3547}3548 3549extern __inline3550 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3551 __lsx_vfcmp_cult_d(__m128d _1, __m128d _2) {3552 return (__m128i)__builtin_lsx_vfcmp_cult_d((v2f64)_1, (v2f64)_2);3553}3554 3555extern __inline3556 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3557 __lsx_vfcmp_cult_s(__m128 _1, __m128 _2) {3558 return (__m128i)__builtin_lsx_vfcmp_cult_s((v4f32)_1, (v4f32)_2);3559}3560 3561extern __inline3562 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3563 __lsx_vfcmp_cun_d(__m128d _1, __m128d _2) {3564 return (__m128i)__builtin_lsx_vfcmp_cun_d((v2f64)_1, (v2f64)_2);3565}3566 3567extern __inline3568 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3569 __lsx_vfcmp_cune_d(__m128d _1, __m128d _2) {3570 return (__m128i)__builtin_lsx_vfcmp_cune_d((v2f64)_1, (v2f64)_2);3571}3572 3573extern __inline3574 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3575 __lsx_vfcmp_cune_s(__m128 _1, __m128 _2) {3576 return (__m128i)__builtin_lsx_vfcmp_cune_s((v4f32)_1, (v4f32)_2);3577}3578 3579extern __inline3580 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3581 __lsx_vfcmp_cun_s(__m128 _1, __m128 _2) {3582 return (__m128i)__builtin_lsx_vfcmp_cun_s((v4f32)_1, (v4f32)_2);3583}3584 3585extern __inline3586 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3587 __lsx_vfcmp_saf_d(__m128d _1, __m128d _2) {3588 return (__m128i)__builtin_lsx_vfcmp_saf_d((v2f64)_1, (v2f64)_2);3589}3590 3591extern __inline3592 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3593 __lsx_vfcmp_saf_s(__m128 _1, __m128 _2) {3594 return (__m128i)__builtin_lsx_vfcmp_saf_s((v4f32)_1, (v4f32)_2);3595}3596 3597extern __inline3598 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3599 __lsx_vfcmp_seq_d(__m128d _1, __m128d _2) {3600 return (__m128i)__builtin_lsx_vfcmp_seq_d((v2f64)_1, (v2f64)_2);3601}3602 3603extern __inline3604 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3605 __lsx_vfcmp_seq_s(__m128 _1, __m128 _2) {3606 return (__m128i)__builtin_lsx_vfcmp_seq_s((v4f32)_1, (v4f32)_2);3607}3608 3609extern __inline3610 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3611 __lsx_vfcmp_sle_d(__m128d _1, __m128d _2) {3612 return (__m128i)__builtin_lsx_vfcmp_sle_d((v2f64)_1, (v2f64)_2);3613}3614 3615extern __inline3616 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3617 __lsx_vfcmp_sle_s(__m128 _1, __m128 _2) {3618 return (__m128i)__builtin_lsx_vfcmp_sle_s((v4f32)_1, (v4f32)_2);3619}3620 3621extern __inline3622 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3623 __lsx_vfcmp_slt_d(__m128d _1, __m128d _2) {3624 return (__m128i)__builtin_lsx_vfcmp_slt_d((v2f64)_1, (v2f64)_2);3625}3626 3627extern __inline3628 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3629 __lsx_vfcmp_slt_s(__m128 _1, __m128 _2) {3630 return (__m128i)__builtin_lsx_vfcmp_slt_s((v4f32)_1, (v4f32)_2);3631}3632 3633extern __inline3634 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3635 __lsx_vfcmp_sne_d(__m128d _1, __m128d _2) {3636 return (__m128i)__builtin_lsx_vfcmp_sne_d((v2f64)_1, (v2f64)_2);3637}3638 3639extern __inline3640 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3641 __lsx_vfcmp_sne_s(__m128 _1, __m128 _2) {3642 return (__m128i)__builtin_lsx_vfcmp_sne_s((v4f32)_1, (v4f32)_2);3643}3644 3645extern __inline3646 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3647 __lsx_vfcmp_sor_d(__m128d _1, __m128d _2) {3648 return (__m128i)__builtin_lsx_vfcmp_sor_d((v2f64)_1, (v2f64)_2);3649}3650 3651extern __inline3652 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3653 __lsx_vfcmp_sor_s(__m128 _1, __m128 _2) {3654 return (__m128i)__builtin_lsx_vfcmp_sor_s((v4f32)_1, (v4f32)_2);3655}3656 3657extern __inline3658 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3659 __lsx_vfcmp_sueq_d(__m128d _1, __m128d _2) {3660 return (__m128i)__builtin_lsx_vfcmp_sueq_d((v2f64)_1, (v2f64)_2);3661}3662 3663extern __inline3664 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3665 __lsx_vfcmp_sueq_s(__m128 _1, __m128 _2) {3666 return (__m128i)__builtin_lsx_vfcmp_sueq_s((v4f32)_1, (v4f32)_2);3667}3668 3669extern __inline3670 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3671 __lsx_vfcmp_sule_d(__m128d _1, __m128d _2) {3672 return (__m128i)__builtin_lsx_vfcmp_sule_d((v2f64)_1, (v2f64)_2);3673}3674 3675extern __inline3676 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3677 __lsx_vfcmp_sule_s(__m128 _1, __m128 _2) {3678 return (__m128i)__builtin_lsx_vfcmp_sule_s((v4f32)_1, (v4f32)_2);3679}3680 3681extern __inline3682 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3683 __lsx_vfcmp_sult_d(__m128d _1, __m128d _2) {3684 return (__m128i)__builtin_lsx_vfcmp_sult_d((v2f64)_1, (v2f64)_2);3685}3686 3687extern __inline3688 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3689 __lsx_vfcmp_sult_s(__m128 _1, __m128 _2) {3690 return (__m128i)__builtin_lsx_vfcmp_sult_s((v4f32)_1, (v4f32)_2);3691}3692 3693extern __inline3694 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3695 __lsx_vfcmp_sun_d(__m128d _1, __m128d _2) {3696 return (__m128i)__builtin_lsx_vfcmp_sun_d((v2f64)_1, (v2f64)_2);3697}3698 3699extern __inline3700 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3701 __lsx_vfcmp_sune_d(__m128d _1, __m128d _2) {3702 return (__m128i)__builtin_lsx_vfcmp_sune_d((v2f64)_1, (v2f64)_2);3703}3704 3705extern __inline3706 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3707 __lsx_vfcmp_sune_s(__m128 _1, __m128 _2) {3708 return (__m128i)__builtin_lsx_vfcmp_sune_s((v4f32)_1, (v4f32)_2);3709}3710 3711extern __inline3712 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128i3713 __lsx_vfcmp_sun_s(__m128 _1, __m128 _2) {3714 return (__m128i)__builtin_lsx_vfcmp_sun_s((v4f32)_1, (v4f32)_2);3715}3716 3717#if defined(__loongarch_frecipe)3718extern __inline3719 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1283720 __lsx_vfrecipe_s(__m128 _1) {3721 return (__m128)__builtin_lsx_vfrecipe_s((v4f32)_1);3722}3723 3724extern __inline3725 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d3726 __lsx_vfrecipe_d(__m128d _1) {3727 return (__m128d)__builtin_lsx_vfrecipe_d((v2f64)_1);3728}3729 3730extern __inline3731 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m1283732 __lsx_vfrsqrte_s(__m128 _1) {3733 return (__m128)__builtin_lsx_vfrsqrte_s((v4f32)_1);3734}3735 3736extern __inline3737 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) __m128d3738 __lsx_vfrsqrte_d(__m128d _1) {3739 return (__m128d)__builtin_lsx_vfrsqrte_d((v2f64)_1);3740}3741#endif3742 3743#define __lsx_vrepli_b(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_b((_1)))3744 3745#define __lsx_vrepli_d(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_d((_1)))3746 3747#define __lsx_vrepli_h(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_h((_1)))3748 3749#define __lsx_vrepli_w(/*si10*/ _1) ((__m128i)__builtin_lsx_vrepli_w((_1)))3750 3751#endif /* defined(__loongarch_sx) */3752#endif /* _LOONGSON_SXINTRIN_H */3753