Path: blob/master/tools/android-sdk/renderscript/clang-include/avx512vldqintrin.h
496 views
/*===---- avx512vldqintrin.h - AVX512VL and AVX512DQ intrinsics ------------===1*2* Permission is hereby granted, free of charge, to any person obtaining a copy3* of this software and associated documentation files (the "Software"), to deal4* in the Software without restriction, including without limitation the rights5* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell6* copies of the Software, and to permit persons to whom the Software is7* furnished to do so, subject to the following conditions:8*9* The above copyright notice and this permission notice shall be included in10* all copies or substantial portions of the Software.11*12* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR13* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,14* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE15* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER16* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,17* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN18* THE SOFTWARE.19*20*===-----------------------------------------------------------------------===21*/2223#ifndef __IMMINTRIN_H24#error "Never use <avx512vldqintrin.h> directly; include <immintrin.h> instead."25#endif2627#ifndef __AVX512VLDQINTRIN_H28#define __AVX512VLDQINTRIN_H2930/* Define the default attributes for the functions in this file. */31#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vl,avx512dq")))3233static __inline__ __m256i __DEFAULT_FN_ATTRS34_mm256_mullo_epi64 (__m256i __A, __m256i __B) {35return (__m256i) ((__v4du) __A * (__v4du) __B);36}3738static __inline__ __m256i __DEFAULT_FN_ATTRS39_mm256_mask_mullo_epi64 (__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) {40return (__m256i) __builtin_ia32_pmullq256_mask ((__v4di) __A,41(__v4di) __B,42(__v4di) __W,43(__mmask8) __U);44}4546static __inline__ __m256i __DEFAULT_FN_ATTRS47_mm256_maskz_mullo_epi64 (__mmask8 __U, __m256i __A, __m256i __B) {48return (__m256i) __builtin_ia32_pmullq256_mask ((__v4di) __A,49(__v4di) __B,50(__v4di)51_mm256_setzero_si256 (),52(__mmask8) __U);53}5455static __inline__ __m128i __DEFAULT_FN_ATTRS56_mm_mullo_epi64 (__m128i __A, __m128i __B) {57return (__m128i) ((__v2du) __A * (__v2du) __B);58}5960static __inline__ __m128i __DEFAULT_FN_ATTRS61_mm_mask_mullo_epi64 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {62return (__m128i) __builtin_ia32_pmullq128_mask ((__v2di) __A,63(__v2di) __B,64(__v2di) __W,65(__mmask8) __U);66}6768static __inline__ __m128i __DEFAULT_FN_ATTRS69_mm_maskz_mullo_epi64 (__mmask8 __U, __m128i __A, __m128i __B) {70return (__m128i) __builtin_ia32_pmullq128_mask ((__v2di) __A,71(__v2di) __B,72(__v2di)73_mm_setzero_si128 (),74(__mmask8) __U);75}7677static __inline__ __m256d __DEFAULT_FN_ATTRS78_mm256_mask_andnot_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {79return (__m256d) __builtin_ia32_andnpd256_mask ((__v4df) __A,80(__v4df) __B,81(__v4df) __W,82(__mmask8) __U);83}8485static __inline__ __m256d __DEFAULT_FN_ATTRS86_mm256_maskz_andnot_pd (__mmask8 __U, __m256d __A, __m256d __B) {87return (__m256d) __builtin_ia32_andnpd256_mask ((__v4df) __A,88(__v4df) __B,89(__v4df)90_mm256_setzero_pd (),91(__mmask8) __U);92}9394static __inline__ __m128d __DEFAULT_FN_ATTRS95_mm_mask_andnot_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {96return (__m128d) __builtin_ia32_andnpd128_mask ((__v2df) __A,97(__v2df) __B,98(__v2df) __W,99(__mmask8) __U);100}101102static __inline__ __m128d __DEFAULT_FN_ATTRS103_mm_maskz_andnot_pd (__mmask8 __U, __m128d __A, __m128d __B) {104return (__m128d) __builtin_ia32_andnpd128_mask ((__v2df) __A,105(__v2df) __B,106(__v2df)107_mm_setzero_pd (),108(__mmask8) __U);109}110111static __inline__ __m256 __DEFAULT_FN_ATTRS112_mm256_mask_andnot_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {113return (__m256) __builtin_ia32_andnps256_mask ((__v8sf) __A,114(__v8sf) __B,115(__v8sf) __W,116(__mmask8) __U);117}118119static __inline__ __m256 __DEFAULT_FN_ATTRS120_mm256_maskz_andnot_ps (__mmask8 __U, __m256 __A, __m256 __B) {121return (__m256) __builtin_ia32_andnps256_mask ((__v8sf) __A,122(__v8sf) __B,123(__v8sf)124_mm256_setzero_ps (),125(__mmask8) __U);126}127128static __inline__ __m128 __DEFAULT_FN_ATTRS129_mm_mask_andnot_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {130return (__m128) __builtin_ia32_andnps128_mask ((__v4sf) __A,131(__v4sf) __B,132(__v4sf) __W,133(__mmask8) __U);134}135136static __inline__ __m128 __DEFAULT_FN_ATTRS137_mm_maskz_andnot_ps (__mmask8 __U, __m128 __A, __m128 __B) {138return (__m128) __builtin_ia32_andnps128_mask ((__v4sf) __A,139(__v4sf) __B,140(__v4sf)141_mm_setzero_ps (),142(__mmask8) __U);143}144145static __inline__ __m256d __DEFAULT_FN_ATTRS146_mm256_mask_and_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {147return (__m256d) __builtin_ia32_andpd256_mask ((__v4df) __A,148(__v4df) __B,149(__v4df) __W,150(__mmask8) __U);151}152153static __inline__ __m256d __DEFAULT_FN_ATTRS154_mm256_maskz_and_pd (__mmask8 __U, __m256d __A, __m256d __B) {155return (__m256d) __builtin_ia32_andpd256_mask ((__v4df) __A,156(__v4df) __B,157(__v4df)158_mm256_setzero_pd (),159(__mmask8) __U);160}161162static __inline__ __m128d __DEFAULT_FN_ATTRS163_mm_mask_and_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {164return (__m128d) __builtin_ia32_andpd128_mask ((__v2df) __A,165(__v2df) __B,166(__v2df) __W,167(__mmask8) __U);168}169170static __inline__ __m128d __DEFAULT_FN_ATTRS171_mm_maskz_and_pd (__mmask8 __U, __m128d __A, __m128d __B) {172return (__m128d) __builtin_ia32_andpd128_mask ((__v2df) __A,173(__v2df) __B,174(__v2df)175_mm_setzero_pd (),176(__mmask8) __U);177}178179static __inline__ __m256 __DEFAULT_FN_ATTRS180_mm256_mask_and_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {181return (__m256) __builtin_ia32_andps256_mask ((__v8sf) __A,182(__v8sf) __B,183(__v8sf) __W,184(__mmask8) __U);185}186187static __inline__ __m256 __DEFAULT_FN_ATTRS188_mm256_maskz_and_ps (__mmask8 __U, __m256 __A, __m256 __B) {189return (__m256) __builtin_ia32_andps256_mask ((__v8sf) __A,190(__v8sf) __B,191(__v8sf)192_mm256_setzero_ps (),193(__mmask8) __U);194}195196static __inline__ __m128 __DEFAULT_FN_ATTRS197_mm_mask_and_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {198return (__m128) __builtin_ia32_andps128_mask ((__v4sf) __A,199(__v4sf) __B,200(__v4sf) __W,201(__mmask8) __U);202}203204static __inline__ __m128 __DEFAULT_FN_ATTRS205_mm_maskz_and_ps (__mmask8 __U, __m128 __A, __m128 __B) {206return (__m128) __builtin_ia32_andps128_mask ((__v4sf) __A,207(__v4sf) __B,208(__v4sf)209_mm_setzero_ps (),210(__mmask8) __U);211}212213static __inline__ __m256d __DEFAULT_FN_ATTRS214_mm256_mask_xor_pd (__m256d __W, __mmask8 __U, __m256d __A,215__m256d __B) {216return (__m256d) __builtin_ia32_xorpd256_mask ((__v4df) __A,217(__v4df) __B,218(__v4df) __W,219(__mmask8) __U);220}221222static __inline__ __m256d __DEFAULT_FN_ATTRS223_mm256_maskz_xor_pd (__mmask8 __U, __m256d __A, __m256d __B) {224return (__m256d) __builtin_ia32_xorpd256_mask ((__v4df) __A,225(__v4df) __B,226(__v4df)227_mm256_setzero_pd (),228(__mmask8) __U);229}230231static __inline__ __m128d __DEFAULT_FN_ATTRS232_mm_mask_xor_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {233return (__m128d) __builtin_ia32_xorpd128_mask ((__v2df) __A,234(__v2df) __B,235(__v2df) __W,236(__mmask8) __U);237}238239static __inline__ __m128d __DEFAULT_FN_ATTRS240_mm_maskz_xor_pd (__mmask8 __U, __m128d __A, __m128d __B) {241return (__m128d) __builtin_ia32_xorpd128_mask ((__v2df) __A,242(__v2df) __B,243(__v2df)244_mm_setzero_pd (),245(__mmask8) __U);246}247248static __inline__ __m256 __DEFAULT_FN_ATTRS249_mm256_mask_xor_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {250return (__m256) __builtin_ia32_xorps256_mask ((__v8sf) __A,251(__v8sf) __B,252(__v8sf) __W,253(__mmask8) __U);254}255256static __inline__ __m256 __DEFAULT_FN_ATTRS257_mm256_maskz_xor_ps (__mmask8 __U, __m256 __A, __m256 __B) {258return (__m256) __builtin_ia32_xorps256_mask ((__v8sf) __A,259(__v8sf) __B,260(__v8sf)261_mm256_setzero_ps (),262(__mmask8) __U);263}264265static __inline__ __m128 __DEFAULT_FN_ATTRS266_mm_mask_xor_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {267return (__m128) __builtin_ia32_xorps128_mask ((__v4sf) __A,268(__v4sf) __B,269(__v4sf) __W,270(__mmask8) __U);271}272273static __inline__ __m128 __DEFAULT_FN_ATTRS274_mm_maskz_xor_ps (__mmask8 __U, __m128 __A, __m128 __B) {275return (__m128) __builtin_ia32_xorps128_mask ((__v4sf) __A,276(__v4sf) __B,277(__v4sf)278_mm_setzero_ps (),279(__mmask8) __U);280}281282static __inline__ __m256d __DEFAULT_FN_ATTRS283_mm256_mask_or_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {284return (__m256d) __builtin_ia32_orpd256_mask ((__v4df) __A,285(__v4df) __B,286(__v4df) __W,287(__mmask8) __U);288}289290static __inline__ __m256d __DEFAULT_FN_ATTRS291_mm256_maskz_or_pd (__mmask8 __U, __m256d __A, __m256d __B) {292return (__m256d) __builtin_ia32_orpd256_mask ((__v4df) __A,293(__v4df) __B,294(__v4df)295_mm256_setzero_pd (),296(__mmask8) __U);297}298299static __inline__ __m128d __DEFAULT_FN_ATTRS300_mm_mask_or_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {301return (__m128d) __builtin_ia32_orpd128_mask ((__v2df) __A,302(__v2df) __B,303(__v2df) __W,304(__mmask8) __U);305}306307static __inline__ __m128d __DEFAULT_FN_ATTRS308_mm_maskz_or_pd (__mmask8 __U, __m128d __A, __m128d __B) {309return (__m128d) __builtin_ia32_orpd128_mask ((__v2df) __A,310(__v2df) __B,311(__v2df)312_mm_setzero_pd (),313(__mmask8) __U);314}315316static __inline__ __m256 __DEFAULT_FN_ATTRS317_mm256_mask_or_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {318return (__m256) __builtin_ia32_orps256_mask ((__v8sf) __A,319(__v8sf) __B,320(__v8sf) __W,321(__mmask8) __U);322}323324static __inline__ __m256 __DEFAULT_FN_ATTRS325_mm256_maskz_or_ps (__mmask8 __U, __m256 __A, __m256 __B) {326return (__m256) __builtin_ia32_orps256_mask ((__v8sf) __A,327(__v8sf) __B,328(__v8sf)329_mm256_setzero_ps (),330(__mmask8) __U);331}332333static __inline__ __m128 __DEFAULT_FN_ATTRS334_mm_mask_or_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {335return (__m128) __builtin_ia32_orps128_mask ((__v4sf) __A,336(__v4sf) __B,337(__v4sf) __W,338(__mmask8) __U);339}340341static __inline__ __m128 __DEFAULT_FN_ATTRS342_mm_maskz_or_ps (__mmask8 __U, __m128 __A, __m128 __B) {343return (__m128) __builtin_ia32_orps128_mask ((__v4sf) __A,344(__v4sf) __B,345(__v4sf)346_mm_setzero_ps (),347(__mmask8) __U);348}349350static __inline__ __m128i __DEFAULT_FN_ATTRS351_mm_cvtpd_epi64 (__m128d __A) {352return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,353(__v2di) _mm_setzero_si128(),354(__mmask8) -1);355}356357static __inline__ __m128i __DEFAULT_FN_ATTRS358_mm_mask_cvtpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A) {359return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,360(__v2di) __W,361(__mmask8) __U);362}363364static __inline__ __m128i __DEFAULT_FN_ATTRS365_mm_maskz_cvtpd_epi64 (__mmask8 __U, __m128d __A) {366return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,367(__v2di) _mm_setzero_si128(),368(__mmask8) __U);369}370371static __inline__ __m256i __DEFAULT_FN_ATTRS372_mm256_cvtpd_epi64 (__m256d __A) {373return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,374(__v4di) _mm256_setzero_si256(),375(__mmask8) -1);376}377378static __inline__ __m256i __DEFAULT_FN_ATTRS379_mm256_mask_cvtpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A) {380return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,381(__v4di) __W,382(__mmask8) __U);383}384385static __inline__ __m256i __DEFAULT_FN_ATTRS386_mm256_maskz_cvtpd_epi64 (__mmask8 __U, __m256d __A) {387return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,388(__v4di) _mm256_setzero_si256(),389(__mmask8) __U);390}391392static __inline__ __m128i __DEFAULT_FN_ATTRS393_mm_cvtpd_epu64 (__m128d __A) {394return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,395(__v2di) _mm_setzero_si128(),396(__mmask8) -1);397}398399static __inline__ __m128i __DEFAULT_FN_ATTRS400_mm_mask_cvtpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A) {401return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,402(__v2di) __W,403(__mmask8) __U);404}405406static __inline__ __m128i __DEFAULT_FN_ATTRS407_mm_maskz_cvtpd_epu64 (__mmask8 __U, __m128d __A) {408return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,409(__v2di) _mm_setzero_si128(),410(__mmask8) __U);411}412413static __inline__ __m256i __DEFAULT_FN_ATTRS414_mm256_cvtpd_epu64 (__m256d __A) {415return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,416(__v4di) _mm256_setzero_si256(),417(__mmask8) -1);418}419420static __inline__ __m256i __DEFAULT_FN_ATTRS421_mm256_mask_cvtpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A) {422return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,423(__v4di) __W,424(__mmask8) __U);425}426427static __inline__ __m256i __DEFAULT_FN_ATTRS428_mm256_maskz_cvtpd_epu64 (__mmask8 __U, __m256d __A) {429return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,430(__v4di) _mm256_setzero_si256(),431(__mmask8) __U);432}433434static __inline__ __m128i __DEFAULT_FN_ATTRS435_mm_cvtps_epi64 (__m128 __A) {436return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,437(__v2di) _mm_setzero_si128(),438(__mmask8) -1);439}440441static __inline__ __m128i __DEFAULT_FN_ATTRS442_mm_mask_cvtps_epi64 (__m128i __W, __mmask8 __U, __m128 __A) {443return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,444(__v2di) __W,445(__mmask8) __U);446}447448static __inline__ __m128i __DEFAULT_FN_ATTRS449_mm_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A) {450return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,451(__v2di) _mm_setzero_si128(),452(__mmask8) __U);453}454455static __inline__ __m256i __DEFAULT_FN_ATTRS456_mm256_cvtps_epi64 (__m128 __A) {457return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,458(__v4di) _mm256_setzero_si256(),459(__mmask8) -1);460}461462static __inline__ __m256i __DEFAULT_FN_ATTRS463_mm256_mask_cvtps_epi64 (__m256i __W, __mmask8 __U, __m128 __A) {464return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,465(__v4di) __W,466(__mmask8) __U);467}468469static __inline__ __m256i __DEFAULT_FN_ATTRS470_mm256_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A) {471return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,472(__v4di) _mm256_setzero_si256(),473(__mmask8) __U);474}475476static __inline__ __m128i __DEFAULT_FN_ATTRS477_mm_cvtps_epu64 (__m128 __A) {478return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,479(__v2di) _mm_setzero_si128(),480(__mmask8) -1);481}482483static __inline__ __m128i __DEFAULT_FN_ATTRS484_mm_mask_cvtps_epu64 (__m128i __W, __mmask8 __U, __m128 __A) {485return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,486(__v2di) __W,487(__mmask8) __U);488}489490static __inline__ __m128i __DEFAULT_FN_ATTRS491_mm_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A) {492return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,493(__v2di) _mm_setzero_si128(),494(__mmask8) __U);495}496497static __inline__ __m256i __DEFAULT_FN_ATTRS498_mm256_cvtps_epu64 (__m128 __A) {499return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,500(__v4di) _mm256_setzero_si256(),501(__mmask8) -1);502}503504static __inline__ __m256i __DEFAULT_FN_ATTRS505_mm256_mask_cvtps_epu64 (__m256i __W, __mmask8 __U, __m128 __A) {506return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,507(__v4di) __W,508(__mmask8) __U);509}510511static __inline__ __m256i __DEFAULT_FN_ATTRS512_mm256_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A) {513return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,514(__v4di) _mm256_setzero_si256(),515(__mmask8) __U);516}517518static __inline__ __m128d __DEFAULT_FN_ATTRS519_mm_cvtepi64_pd (__m128i __A) {520return (__m128d) __builtin_ia32_cvtqq2pd128_mask ((__v2di) __A,521(__v2df) _mm_setzero_pd(),522(__mmask8) -1);523}524525static __inline__ __m128d __DEFAULT_FN_ATTRS526_mm_mask_cvtepi64_pd (__m128d __W, __mmask8 __U, __m128i __A) {527return (__m128d) __builtin_ia32_cvtqq2pd128_mask ((__v2di) __A,528(__v2df) __W,529(__mmask8) __U);530}531532static __inline__ __m128d __DEFAULT_FN_ATTRS533_mm_maskz_cvtepi64_pd (__mmask8 __U, __m128i __A) {534return (__m128d) __builtin_ia32_cvtqq2pd128_mask ((__v2di) __A,535(__v2df) _mm_setzero_pd(),536(__mmask8) __U);537}538539static __inline__ __m256d __DEFAULT_FN_ATTRS540_mm256_cvtepi64_pd (__m256i __A) {541return (__m256d) __builtin_ia32_cvtqq2pd256_mask ((__v4di) __A,542(__v4df) _mm256_setzero_pd(),543(__mmask8) -1);544}545546static __inline__ __m256d __DEFAULT_FN_ATTRS547_mm256_mask_cvtepi64_pd (__m256d __W, __mmask8 __U, __m256i __A) {548return (__m256d) __builtin_ia32_cvtqq2pd256_mask ((__v4di) __A,549(__v4df) __W,550(__mmask8) __U);551}552553static __inline__ __m256d __DEFAULT_FN_ATTRS554_mm256_maskz_cvtepi64_pd (__mmask8 __U, __m256i __A) {555return (__m256d) __builtin_ia32_cvtqq2pd256_mask ((__v4di) __A,556(__v4df) _mm256_setzero_pd(),557(__mmask8) __U);558}559560static __inline__ __m128 __DEFAULT_FN_ATTRS561_mm_cvtepi64_ps (__m128i __A) {562return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,563(__v4sf) _mm_setzero_ps(),564(__mmask8) -1);565}566567static __inline__ __m128 __DEFAULT_FN_ATTRS568_mm_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m128i __A) {569return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,570(__v4sf) __W,571(__mmask8) __U);572}573574static __inline__ __m128 __DEFAULT_FN_ATTRS575_mm_maskz_cvtepi64_ps (__mmask8 __U, __m128i __A) {576return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,577(__v4sf) _mm_setzero_ps(),578(__mmask8) __U);579}580581static __inline__ __m128 __DEFAULT_FN_ATTRS582_mm256_cvtepi64_ps (__m256i __A) {583return (__m128) __builtin_ia32_cvtqq2ps256_mask ((__v4di) __A,584(__v4sf) _mm_setzero_ps(),585(__mmask8) -1);586}587588static __inline__ __m128 __DEFAULT_FN_ATTRS589_mm256_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m256i __A) {590return (__m128) __builtin_ia32_cvtqq2ps256_mask ((__v4di) __A,591(__v4sf) __W,592(__mmask8) __U);593}594595static __inline__ __m128 __DEFAULT_FN_ATTRS596_mm256_maskz_cvtepi64_ps (__mmask8 __U, __m256i __A) {597return (__m128) __builtin_ia32_cvtqq2ps256_mask ((__v4di) __A,598(__v4sf) _mm_setzero_ps(),599(__mmask8) __U);600}601602static __inline__ __m128i __DEFAULT_FN_ATTRS603_mm_cvttpd_epi64 (__m128d __A) {604return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,605(__v2di) _mm_setzero_si128(),606(__mmask8) -1);607}608609static __inline__ __m128i __DEFAULT_FN_ATTRS610_mm_mask_cvttpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A) {611return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,612(__v2di) __W,613(__mmask8) __U);614}615616static __inline__ __m128i __DEFAULT_FN_ATTRS617_mm_maskz_cvttpd_epi64 (__mmask8 __U, __m128d __A) {618return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,619(__v2di) _mm_setzero_si128(),620(__mmask8) __U);621}622623static __inline__ __m256i __DEFAULT_FN_ATTRS624_mm256_cvttpd_epi64 (__m256d __A) {625return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,626(__v4di) _mm256_setzero_si256(),627(__mmask8) -1);628}629630static __inline__ __m256i __DEFAULT_FN_ATTRS631_mm256_mask_cvttpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A) {632return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,633(__v4di) __W,634(__mmask8) __U);635}636637static __inline__ __m256i __DEFAULT_FN_ATTRS638_mm256_maskz_cvttpd_epi64 (__mmask8 __U, __m256d __A) {639return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,640(__v4di) _mm256_setzero_si256(),641(__mmask8) __U);642}643644static __inline__ __m128i __DEFAULT_FN_ATTRS645_mm_cvttpd_epu64 (__m128d __A) {646return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,647(__v2di) _mm_setzero_si128(),648(__mmask8) -1);649}650651static __inline__ __m128i __DEFAULT_FN_ATTRS652_mm_mask_cvttpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A) {653return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,654(__v2di) __W,655(__mmask8) __U);656}657658static __inline__ __m128i __DEFAULT_FN_ATTRS659_mm_maskz_cvttpd_epu64 (__mmask8 __U, __m128d __A) {660return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,661(__v2di) _mm_setzero_si128(),662(__mmask8) __U);663}664665static __inline__ __m256i __DEFAULT_FN_ATTRS666_mm256_cvttpd_epu64 (__m256d __A) {667return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,668(__v4di) _mm256_setzero_si256(),669(__mmask8) -1);670}671672static __inline__ __m256i __DEFAULT_FN_ATTRS673_mm256_mask_cvttpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A) {674return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,675(__v4di) __W,676(__mmask8) __U);677}678679static __inline__ __m256i __DEFAULT_FN_ATTRS680_mm256_maskz_cvttpd_epu64 (__mmask8 __U, __m256d __A) {681return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,682(__v4di) _mm256_setzero_si256(),683(__mmask8) __U);684}685686static __inline__ __m128i __DEFAULT_FN_ATTRS687_mm_cvttps_epi64 (__m128 __A) {688return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,689(__v2di) _mm_setzero_si128(),690(__mmask8) -1);691}692693static __inline__ __m128i __DEFAULT_FN_ATTRS694_mm_mask_cvttps_epi64 (__m128i __W, __mmask8 __U, __m128 __A) {695return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,696(__v2di) __W,697(__mmask8) __U);698}699700static __inline__ __m128i __DEFAULT_FN_ATTRS701_mm_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A) {702return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,703(__v2di) _mm_setzero_si128(),704(__mmask8) __U);705}706707static __inline__ __m256i __DEFAULT_FN_ATTRS708_mm256_cvttps_epi64 (__m128 __A) {709return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,710(__v4di) _mm256_setzero_si256(),711(__mmask8) -1);712}713714static __inline__ __m256i __DEFAULT_FN_ATTRS715_mm256_mask_cvttps_epi64 (__m256i __W, __mmask8 __U, __m128 __A) {716return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,717(__v4di) __W,718(__mmask8) __U);719}720721static __inline__ __m256i __DEFAULT_FN_ATTRS722_mm256_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A) {723return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,724(__v4di) _mm256_setzero_si256(),725(__mmask8) __U);726}727728static __inline__ __m128i __DEFAULT_FN_ATTRS729_mm_cvttps_epu64 (__m128 __A) {730return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,731(__v2di) _mm_setzero_si128(),732(__mmask8) -1);733}734735static __inline__ __m128i __DEFAULT_FN_ATTRS736_mm_mask_cvttps_epu64 (__m128i __W, __mmask8 __U, __m128 __A) {737return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,738(__v2di) __W,739(__mmask8) __U);740}741742static __inline__ __m128i __DEFAULT_FN_ATTRS743_mm_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A) {744return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,745(__v2di) _mm_setzero_si128(),746(__mmask8) __U);747}748749static __inline__ __m256i __DEFAULT_FN_ATTRS750_mm256_cvttps_epu64 (__m128 __A) {751return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,752(__v4di) _mm256_setzero_si256(),753(__mmask8) -1);754}755756static __inline__ __m256i __DEFAULT_FN_ATTRS757_mm256_mask_cvttps_epu64 (__m256i __W, __mmask8 __U, __m128 __A) {758return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,759(__v4di) __W,760(__mmask8) __U);761}762763static __inline__ __m256i __DEFAULT_FN_ATTRS764_mm256_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A) {765return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,766(__v4di) _mm256_setzero_si256(),767(__mmask8) __U);768}769770static __inline__ __m128d __DEFAULT_FN_ATTRS771_mm_cvtepu64_pd (__m128i __A) {772return (__m128d) __builtin_ia32_cvtuqq2pd128_mask ((__v2di) __A,773(__v2df) _mm_setzero_pd(),774(__mmask8) -1);775}776777static __inline__ __m128d __DEFAULT_FN_ATTRS778_mm_mask_cvtepu64_pd (__m128d __W, __mmask8 __U, __m128i __A) {779return (__m128d) __builtin_ia32_cvtuqq2pd128_mask ((__v2di) __A,780(__v2df) __W,781(__mmask8) __U);782}783784static __inline__ __m128d __DEFAULT_FN_ATTRS785_mm_maskz_cvtepu64_pd (__mmask8 __U, __m128i __A) {786return (__m128d) __builtin_ia32_cvtuqq2pd128_mask ((__v2di) __A,787(__v2df) _mm_setzero_pd(),788(__mmask8) __U);789}790791static __inline__ __m256d __DEFAULT_FN_ATTRS792_mm256_cvtepu64_pd (__m256i __A) {793return (__m256d) __builtin_ia32_cvtuqq2pd256_mask ((__v4di) __A,794(__v4df) _mm256_setzero_pd(),795(__mmask8) -1);796}797798static __inline__ __m256d __DEFAULT_FN_ATTRS799_mm256_mask_cvtepu64_pd (__m256d __W, __mmask8 __U, __m256i __A) {800return (__m256d) __builtin_ia32_cvtuqq2pd256_mask ((__v4di) __A,801(__v4df) __W,802(__mmask8) __U);803}804805static __inline__ __m256d __DEFAULT_FN_ATTRS806_mm256_maskz_cvtepu64_pd (__mmask8 __U, __m256i __A) {807return (__m256d) __builtin_ia32_cvtuqq2pd256_mask ((__v4di) __A,808(__v4df) _mm256_setzero_pd(),809(__mmask8) __U);810}811812static __inline__ __m128 __DEFAULT_FN_ATTRS813_mm_cvtepu64_ps (__m128i __A) {814return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,815(__v4sf) _mm_setzero_ps(),816(__mmask8) -1);817}818819static __inline__ __m128 __DEFAULT_FN_ATTRS820_mm_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m128i __A) {821return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,822(__v4sf) __W,823(__mmask8) __U);824}825826static __inline__ __m128 __DEFAULT_FN_ATTRS827_mm_maskz_cvtepu64_ps (__mmask8 __U, __m128i __A) {828return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,829(__v4sf) _mm_setzero_ps(),830(__mmask8) __U);831}832833static __inline__ __m128 __DEFAULT_FN_ATTRS834_mm256_cvtepu64_ps (__m256i __A) {835return (__m128) __builtin_ia32_cvtuqq2ps256_mask ((__v4di) __A,836(__v4sf) _mm_setzero_ps(),837(__mmask8) -1);838}839840static __inline__ __m128 __DEFAULT_FN_ATTRS841_mm256_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m256i __A) {842return (__m128) __builtin_ia32_cvtuqq2ps256_mask ((__v4di) __A,843(__v4sf) __W,844(__mmask8) __U);845}846847static __inline__ __m128 __DEFAULT_FN_ATTRS848_mm256_maskz_cvtepu64_ps (__mmask8 __U, __m256i __A) {849return (__m128) __builtin_ia32_cvtuqq2ps256_mask ((__v4di) __A,850(__v4sf) _mm_setzero_ps(),851(__mmask8) __U);852}853854#define _mm_range_pd(A, B, C) __extension__ ({ \855(__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \856(__v2df)(__m128d)(B), (int)(C), \857(__v2df)_mm_setzero_pd(), \858(__mmask8)-1); })859860#define _mm_mask_range_pd(W, U, A, B, C) __extension__ ({ \861(__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \862(__v2df)(__m128d)(B), (int)(C), \863(__v2df)(__m128d)(W), \864(__mmask8)(U)); })865866#define _mm_maskz_range_pd(U, A, B, C) __extension__ ({ \867(__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \868(__v2df)(__m128d)(B), (int)(C), \869(__v2df)_mm_setzero_pd(), \870(__mmask8)(U)); })871872#define _mm256_range_pd(A, B, C) __extension__ ({ \873(__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \874(__v4df)(__m256d)(B), (int)(C), \875(__v4df)_mm256_setzero_pd(), \876(__mmask8)-1); })877878#define _mm256_mask_range_pd(W, U, A, B, C) __extension__ ({ \879(__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \880(__v4df)(__m256d)(B), (int)(C), \881(__v4df)(__m256d)(W), \882(__mmask8)(U)); })883884#define _mm256_maskz_range_pd(U, A, B, C) __extension__ ({ \885(__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \886(__v4df)(__m256d)(B), (int)(C), \887(__v4df)_mm256_setzero_pd(), \888(__mmask8)(U)); })889890#define _mm_range_ps(A, B, C) __extension__ ({ \891(__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \892(__v4sf)(__m128)(B), (int)(C), \893(__v4sf)_mm_setzero_ps(), \894(__mmask8)-1); })895896#define _mm_mask_range_ps(W, U, A, B, C) __extension__ ({ \897(__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \898(__v4sf)(__m128)(B), (int)(C), \899(__v4sf)(__m128)(W), (__mmask8)(U)); })900901#define _mm_maskz_range_ps(U, A, B, C) __extension__ ({ \902(__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \903(__v4sf)(__m128)(B), (int)(C), \904(__v4sf)_mm_setzero_ps(), \905(__mmask8)(U)); })906907#define _mm256_range_ps(A, B, C) __extension__ ({ \908(__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \909(__v8sf)(__m256)(B), (int)(C), \910(__v8sf)_mm256_setzero_ps(), \911(__mmask8)-1); })912913#define _mm256_mask_range_ps(W, U, A, B, C) __extension__ ({ \914(__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \915(__v8sf)(__m256)(B), (int)(C), \916(__v8sf)(__m256)(W), (__mmask8)(U)); })917918#define _mm256_maskz_range_ps(U, A, B, C) __extension__ ({ \919(__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \920(__v8sf)(__m256)(B), (int)(C), \921(__v8sf)_mm256_setzero_ps(), \922(__mmask8)(U)); })923924#define _mm_reduce_pd(A, B) __extension__ ({ \925(__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \926(__v2df)_mm_setzero_pd(), \927(__mmask8)-1); })928929#define _mm_mask_reduce_pd(W, U, A, B) __extension__ ({ \930(__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \931(__v2df)(__m128d)(W), \932(__mmask8)(U)); })933934#define _mm_maskz_reduce_pd(U, A, B) __extension__ ({ \935(__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \936(__v2df)_mm_setzero_pd(), \937(__mmask8)(U)); })938939#define _mm256_reduce_pd(A, B) __extension__ ({ \940(__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \941(__v4df)_mm256_setzero_pd(), \942(__mmask8)-1); })943944#define _mm256_mask_reduce_pd(W, U, A, B) __extension__ ({ \945(__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \946(__v4df)(__m256d)(W), \947(__mmask8)(U)); })948949#define _mm256_maskz_reduce_pd(U, A, B) __extension__ ({ \950(__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \951(__v4df)_mm256_setzero_pd(), \952(__mmask8)(U)); })953954#define _mm_reduce_ps(A, B) __extension__ ({ \955(__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \956(__v4sf)_mm_setzero_ps(), \957(__mmask8)-1); })958959#define _mm_mask_reduce_ps(W, U, A, B) __extension__ ({ \960(__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \961(__v4sf)(__m128)(W), \962(__mmask8)(U)); })963964#define _mm_maskz_reduce_ps(U, A, B) __extension__ ({ \965(__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \966(__v4sf)_mm_setzero_ps(), \967(__mmask8)(U)); })968969#define _mm256_reduce_ps(A, B) __extension__ ({ \970(__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \971(__v8sf)_mm256_setzero_ps(), \972(__mmask8)-1); })973974#define _mm256_mask_reduce_ps(W, U, A, B) __extension__ ({ \975(__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \976(__v8sf)(__m256)(W), \977(__mmask8)(U)); })978979#define _mm256_maskz_reduce_ps(U, A, B) __extension__ ({ \980(__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \981(__v8sf)_mm256_setzero_ps(), \982(__mmask8)(U)); })983984static __inline__ __mmask8 __DEFAULT_FN_ATTRS985_mm_movepi32_mask (__m128i __A)986{987return (__mmask8) __builtin_ia32_cvtd2mask128 ((__v4si) __A);988}989990static __inline__ __mmask8 __DEFAULT_FN_ATTRS991_mm256_movepi32_mask (__m256i __A)992{993return (__mmask8) __builtin_ia32_cvtd2mask256 ((__v8si) __A);994}995996static __inline__ __m128i __DEFAULT_FN_ATTRS997_mm_movm_epi32 (__mmask8 __A)998{999return (__m128i) __builtin_ia32_cvtmask2d128 (__A);1000}10011002static __inline__ __m256i __DEFAULT_FN_ATTRS1003_mm256_movm_epi32 (__mmask8 __A)1004{1005return (__m256i) __builtin_ia32_cvtmask2d256 (__A);1006}10071008static __inline__ __m128i __DEFAULT_FN_ATTRS1009_mm_movm_epi64 (__mmask8 __A)1010{1011return (__m128i) __builtin_ia32_cvtmask2q128 (__A);1012}10131014static __inline__ __m256i __DEFAULT_FN_ATTRS1015_mm256_movm_epi64 (__mmask8 __A)1016{1017return (__m256i) __builtin_ia32_cvtmask2q256 (__A);1018}10191020static __inline__ __mmask8 __DEFAULT_FN_ATTRS1021_mm_movepi64_mask (__m128i __A)1022{1023return (__mmask8) __builtin_ia32_cvtq2mask128 ((__v2di) __A);1024}10251026static __inline__ __mmask8 __DEFAULT_FN_ATTRS1027_mm256_movepi64_mask (__m256i __A)1028{1029return (__mmask8) __builtin_ia32_cvtq2mask256 ((__v4di) __A);1030}10311032static __inline__ __m256 __DEFAULT_FN_ATTRS1033_mm256_broadcast_f32x2 (__m128 __A)1034{1035return (__m256) __builtin_ia32_broadcastf32x2_256_mask ((__v4sf) __A,1036(__v8sf)_mm256_undefined_ps(),1037(__mmask8) -1);1038}10391040static __inline__ __m256 __DEFAULT_FN_ATTRS1041_mm256_mask_broadcast_f32x2 (__m256 __O, __mmask8 __M, __m128 __A)1042{1043return (__m256) __builtin_ia32_broadcastf32x2_256_mask ((__v4sf) __A,1044(__v8sf) __O,1045__M);1046}10471048static __inline__ __m256 __DEFAULT_FN_ATTRS1049_mm256_maskz_broadcast_f32x2 (__mmask8 __M, __m128 __A)1050{1051return (__m256) __builtin_ia32_broadcastf32x2_256_mask ((__v4sf) __A,1052(__v8sf) _mm256_setzero_ps (),1053__M);1054}10551056static __inline__ __m256d __DEFAULT_FN_ATTRS1057_mm256_broadcast_f64x2 (__m128d __A)1058{1059return (__m256d) __builtin_ia32_broadcastf64x2_256_mask ((__v2df) __A,1060(__v4df)_mm256_undefined_pd(),1061(__mmask8) -1);1062}10631064static __inline__ __m256d __DEFAULT_FN_ATTRS1065_mm256_mask_broadcast_f64x2 (__m256d __O, __mmask8 __M, __m128d __A)1066{1067return (__m256d) __builtin_ia32_broadcastf64x2_256_mask ((__v2df) __A,1068(__v4df) __O,1069__M);1070}10711072static __inline__ __m256d __DEFAULT_FN_ATTRS1073_mm256_maskz_broadcast_f64x2 (__mmask8 __M, __m128d __A)1074{1075return (__m256d) __builtin_ia32_broadcastf64x2_256_mask ((__v2df) __A,1076(__v4df) _mm256_setzero_ps (),1077__M);1078}10791080static __inline__ __m128i __DEFAULT_FN_ATTRS1081_mm_broadcast_i32x2 (__m128i __A)1082{1083return (__m128i) __builtin_ia32_broadcasti32x2_128_mask ((__v4si) __A,1084(__v4si)_mm_undefined_si128(),1085(__mmask8) -1);1086}10871088static __inline__ __m128i __DEFAULT_FN_ATTRS1089_mm_mask_broadcast_i32x2 (__m128i __O, __mmask8 __M, __m128i __A)1090{1091return (__m128i) __builtin_ia32_broadcasti32x2_128_mask ((__v4si) __A,1092(__v4si) __O,1093__M);1094}10951096static __inline__ __m128i __DEFAULT_FN_ATTRS1097_mm_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A)1098{1099return (__m128i) __builtin_ia32_broadcasti32x2_128_mask ((__v4si) __A,1100(__v4si) _mm_setzero_si128 (),1101__M);1102}11031104static __inline__ __m256i __DEFAULT_FN_ATTRS1105_mm256_broadcast_i32x2 (__m128i __A)1106{1107return (__m256i) __builtin_ia32_broadcasti32x2_256_mask ((__v4si) __A,1108(__v8si)_mm256_undefined_si256(),1109(__mmask8) -1);1110}11111112static __inline__ __m256i __DEFAULT_FN_ATTRS1113_mm256_mask_broadcast_i32x2 (__m256i __O, __mmask8 __M, __m128i __A)1114{1115return (__m256i) __builtin_ia32_broadcasti32x2_256_mask ((__v4si) __A,1116(__v8si) __O,1117__M);1118}11191120static __inline__ __m256i __DEFAULT_FN_ATTRS1121_mm256_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A)1122{1123return (__m256i) __builtin_ia32_broadcasti32x2_256_mask ((__v4si) __A,1124(__v8si) _mm256_setzero_si256 (),1125__M);1126}11271128static __inline__ __m256i __DEFAULT_FN_ATTRS1129_mm256_broadcast_i64x2 (__m128i __A)1130{1131return (__m256i) __builtin_ia32_broadcasti64x2_256_mask ((__v2di) __A,1132(__v4di)_mm256_undefined_si256(),1133(__mmask8) -1);1134}11351136static __inline__ __m256i __DEFAULT_FN_ATTRS1137_mm256_mask_broadcast_i64x2 (__m256i __O, __mmask8 __M, __m128i __A)1138{1139return (__m256i) __builtin_ia32_broadcasti64x2_256_mask ((__v2di) __A,1140(__v4di) __O,1141__M);1142}11431144static __inline__ __m256i __DEFAULT_FN_ATTRS1145_mm256_maskz_broadcast_i64x2 (__mmask8 __M, __m128i __A)1146{1147return (__m256i) __builtin_ia32_broadcasti64x2_256_mask ((__v2di) __A,1148(__v4di) _mm256_setzero_si256 (),1149__M);1150}11511152#define _mm256_extractf64x2_pd(A, imm) __extension__ ({ \1153(__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \1154(int)(imm), \1155(__v2df)_mm_setzero_pd(), \1156(__mmask8)-1); })11571158#define _mm256_mask_extractf64x2_pd(W, U, A, imm) __extension__ ({ \1159(__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \1160(int)(imm), \1161(__v2df)(__m128d)(W), \1162(__mmask8)(U)); })11631164#define _mm256_maskz_extractf64x2_pd(U, A, imm) __extension__ ({ \1165(__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \1166(int)(imm), \1167(__v2df)_mm_setzero_pd(), \1168(__mmask8)(U)); })11691170#define _mm256_extracti64x2_epi64(A, imm) __extension__ ({ \1171(__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \1172(int)(imm), \1173(__v2di)_mm_setzero_di(), \1174(__mmask8)-1); })11751176#define _mm256_mask_extracti64x2_epi64(W, U, A, imm) __extension__ ({ \1177(__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \1178(int)(imm), \1179(__v2di)(__m128i)(W), \1180(__mmask8)(U)); })11811182#define _mm256_maskz_extracti64x2_epi64(U, A, imm) __extension__ ({ \1183(__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \1184(int)(imm), \1185(__v2di)_mm_setzero_di(), \1186(__mmask8)(U)); })11871188#define _mm256_insertf64x2(A, B, imm) __extension__ ({ \1189(__m256d)__builtin_ia32_insertf64x2_256_mask((__v4df)(__m256d)(A), \1190(__v2df)(__m128d)(B), \1191(int)(imm), \1192(__v4df)_mm256_setzero_pd(), \1193(__mmask8)-1); })11941195#define _mm256_mask_insertf64x2(W, U, A, B, imm) __extension__ ({ \1196(__m256d)__builtin_ia32_insertf64x2_256_mask((__v4df)(__m256d)(A), \1197(__v2df)(__m128d)(B), \1198(int)(imm), \1199(__v4df)(__m256d)(W), \1200(__mmask8)(U)); })12011202#define _mm256_maskz_insertf64x2(U, A, B, imm) __extension__ ({ \1203(__m256d)__builtin_ia32_insertf64x2_256_mask((__v4df)(__m256d)(A), \1204(__v2df)(__m128d)(B), \1205(int)(imm), \1206(__v4df)_mm256_setzero_pd(), \1207(__mmask8)(U)); })12081209#define _mm256_inserti64x2(A, B, imm) __extension__ ({ \1210(__m256i)__builtin_ia32_inserti64x2_256_mask((__v4di)(__m256i)(A), \1211(__v2di)(__m128i)(B), \1212(int)(imm), \1213(__v4di)_mm256_setzero_si256(), \1214(__mmask8)-1); })12151216#define _mm256_mask_inserti64x2(W, U, A, B, imm) __extension__ ({ \1217(__m256i)__builtin_ia32_inserti64x2_256_mask((__v4di)(__m256i)(A), \1218(__v2di)(__m128i)(B), \1219(int)(imm), \1220(__v4di)(__m256i)(W), \1221(__mmask8)(U)); })12221223#define _mm256_maskz_inserti64x2(U, A, B, imm) __extension__ ({ \1224(__m256i)__builtin_ia32_inserti64x2_256_mask((__v4di)(__m256i)(A), \1225(__v2di)(__m128i)(B), \1226(int)(imm), \1227(__v4di)_mm256_setzero_si256(), \1228(__mmask8)(U)); })12291230#define _mm_mask_fpclass_pd_mask(U, A, imm) __extension__ ({ \1231(__mmask8)__builtin_ia32_fpclasspd128_mask((__v2df)(__m128d)(A), (int)(imm), \1232(__mmask8)(U)); })12331234#define _mm_fpclass_pd_mask(A, imm) __extension__ ({ \1235(__mmask8)__builtin_ia32_fpclasspd128_mask((__v2df)(__m128d)(A), (int)(imm), \1236(__mmask8)-1); })12371238#define _mm256_mask_fpclass_pd_mask(U, A, imm) __extension__ ({ \1239(__mmask8)__builtin_ia32_fpclasspd256_mask((__v4df)(__m256d)(A), (int)(imm), \1240(__mmask8)(U)); })12411242#define _mm256_fpclass_pd_mask(A, imm) __extension__ ({ \1243(__mmask8)__builtin_ia32_fpclasspd256_mask((__v4df)(__m256d)(A), (int)(imm), \1244(__mmask8)-1); })12451246#define _mm_mask_fpclass_ps_mask(U, A, imm) __extension__ ({ \1247(__mmask8)__builtin_ia32_fpclassps128_mask((__v4sf)(__m128)(A), (int)(imm), \1248(__mmask8)(U)); })12491250#define _mm_fpclass_ps_mask(A, imm) __extension__ ({ \1251(__mmask8)__builtin_ia32_fpclassps128_mask((__v4sf)(__m128)(A), (int)(imm), \1252(__mmask8)-1); })12531254#define _mm256_mask_fpclass_ps_mask(U, A, imm) __extension__ ({ \1255(__mmask8)__builtin_ia32_fpclassps256_mask((__v8sf)(__m256)(A), (int)(imm), \1256(__mmask8)(U)); })12571258#define _mm256_fpclass_ps_mask(A, imm) __extension__ ({ \1259(__mmask8)__builtin_ia32_fpclassps256_mask((__v8sf)(__m256)(A), (int)(imm), \1260(__mmask8)-1); })12611262#undef __DEFAULT_FN_ATTRS12631264#endif126512661267