diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/adxintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/adxintrin.h
deleted file mode 100644
index 7acdaf4ab6..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/adxintrin.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/* Copyright (C) 2012-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#if !defined _X86INTRIN_H_INCLUDED && !defined _IMMINTRIN_H_INCLUDED
-# error "Never use directly; include instead."
-#endif
-
-#ifndef _ADXINTRIN_H_INCLUDED
-#define _ADXINTRIN_H_INCLUDED
-
-extern __inline unsigned char
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_subborrow_u32 (unsigned char __CF, unsigned int __X,
- unsigned int __Y, unsigned int *__P)
-{
- return __builtin_ia32_sbb_u32 (__CF, __X, __Y, __P);
-}
-
-extern __inline unsigned char
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_addcarry_u32 (unsigned char __CF, unsigned int __X,
- unsigned int __Y, unsigned int *__P)
-{
- return __builtin_ia32_addcarryx_u32 (__CF, __X, __Y, __P);
-}
-
-extern __inline unsigned char
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_addcarryx_u32 (unsigned char __CF, unsigned int __X,
- unsigned int __Y, unsigned int *__P)
-{
- return __builtin_ia32_addcarryx_u32 (__CF, __X, __Y, __P);
-}
-
-#ifdef __x86_64__
-extern __inline unsigned char
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_subborrow_u64 (unsigned char __CF, unsigned long long __X,
- unsigned long long __Y, unsigned long long *__P)
-{
- return __builtin_ia32_sbb_u64 (__CF, __X, __Y, __P);
-}
-
-extern __inline unsigned char
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_addcarry_u64 (unsigned char __CF, unsigned long long __X,
- unsigned long long __Y, unsigned long long *__P)
-{
- return __builtin_ia32_addcarryx_u64 (__CF, __X, __Y, __P);
-}
-
-extern __inline unsigned char
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_addcarryx_u64 (unsigned char __CF, unsigned long long __X,
- unsigned long long __Y, unsigned long long *__P)
-{
- return __builtin_ia32_addcarryx_u64 (__CF, __X, __Y, __P);
-}
-#endif
-
-#endif /* _ADXINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/ammintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/ammintrin.h
deleted file mode 100644
index 0093092781..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/ammintrin.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/* Copyright (C) 2007-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-/* Implemented from the specification included in the AMD Programmers
- Manual Update, version 2.x */
-
-#ifndef _AMMINTRIN_H_INCLUDED
-#define _AMMINTRIN_H_INCLUDED
-
-/* We need definitions from the SSE3, SSE2 and SSE header files*/
-#include
-
-#ifndef __SSE4A__
-#pragma GCC push_options
-#pragma GCC target("sse4a")
-#define __DISABLE_SSE4A__
-#endif /* __SSE4A__ */
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_stream_sd (double * __P, __m128d __Y)
-{
- __builtin_ia32_movntsd (__P, (__v2df) __Y);
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_stream_ss (float * __P, __m128 __Y)
-{
- __builtin_ia32_movntss (__P, (__v4sf) __Y);
-}
-
-extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_extract_si64 (__m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_extrq ((__v2di) __X, (__v16qi) __Y);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_extracti_si64 (__m128i __X, unsigned const int __I, unsigned const int __L)
-{
- return (__m128i) __builtin_ia32_extrqi ((__v2di) __X, __I, __L);
-}
-#else
-#define _mm_extracti_si64(X, I, L) \
- ((__m128i) __builtin_ia32_extrqi ((__v2di)(__m128i)(X), \
- (unsigned int)(I), (unsigned int)(L)))
-#endif
-
-extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_insert_si64 (__m128i __X,__m128i __Y)
-{
- return (__m128i) __builtin_ia32_insertq ((__v2di)__X, (__v2di)__Y);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_inserti_si64(__m128i __X, __m128i __Y, unsigned const int __I, unsigned const int __L)
-{
- return (__m128i) __builtin_ia32_insertqi ((__v2di)__X, (__v2di)__Y, __I, __L);
-}
-#else
-#define _mm_inserti_si64(X, Y, I, L) \
- ((__m128i) __builtin_ia32_insertqi ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), \
- (unsigned int)(I), (unsigned int)(L)))
-#endif
-
-#ifdef __DISABLE_SSE4A__
-#undef __DISABLE_SSE4A__
-#pragma GCC pop_options
-#endif /* __DISABLE_SSE4A__ */
-
-#endif /* _AMMINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx2intrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx2intrin.h
deleted file mode 100644
index 82f170a3d6..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx2intrin.h
+++ /dev/null
@@ -1,1908 +0,0 @@
-/* Copyright (C) 2011-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-# error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX2INTRIN_H_INCLUDED
-#define _AVX2INTRIN_H_INCLUDED
-
-#ifndef __AVX2__
-#pragma GCC push_options
-#pragma GCC target("avx2")
-#define __DISABLE_AVX2__
-#endif /* __AVX2__ */
-
-/* Sum absolute 8-bit integer difference of adjacent groups of 4
- byte integers in the first 2 operands. Starting offsets within
- operands are determined by the 3rd mask operand. */
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mpsadbw_epu8 (__m256i __X, __m256i __Y, const int __M)
-{
- return (__m256i) __builtin_ia32_mpsadbw256 ((__v32qi)__X,
- (__v32qi)__Y, __M);
-}
-#else
-#define _mm256_mpsadbw_epu8(X, Y, M) \
- ((__m256i) __builtin_ia32_mpsadbw256 ((__v32qi)(__m256i)(X), \
- (__v32qi)(__m256i)(Y), (int)(M)))
-#endif
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_abs_epi8 (__m256i __A)
-{
- return (__m256i)__builtin_ia32_pabsb256 ((__v32qi)__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_abs_epi16 (__m256i __A)
-{
- return (__m256i)__builtin_ia32_pabsw256 ((__v16hi)__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_abs_epi32 (__m256i __A)
-{
- return (__m256i)__builtin_ia32_pabsd256 ((__v8si)__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_packs_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_packssdw256 ((__v8si)__A, (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_packs_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_packsswb256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_packus_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_packusdw256 ((__v8si)__A, (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_packus_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_packuswb256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_add_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v32qu)__A + (__v32qu)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_add_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v16hu)__A + (__v16hu)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_add_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v8su)__A + (__v8su)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_add_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v4du)__A + (__v4du)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_adds_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_paddsb256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_adds_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_paddsw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_adds_epu8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_paddusb256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_adds_epu16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_paddusw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_alignr_epi8 (__m256i __A, __m256i __B, const int __N)
-{
- return (__m256i) __builtin_ia32_palignr256 ((__v4di)__A,
- (__v4di)__B,
- __N * 8);
-}
-#else
-/* In that case (__N*8) will be in vreg, and insn will not be matched. */
-/* Use define instead */
-#define _mm256_alignr_epi8(A, B, N) \
- ((__m256i) __builtin_ia32_palignr256 ((__v4di)(__m256i)(A), \
- (__v4di)(__m256i)(B), \
- (int)(N) * 8))
-#endif
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_and_si256 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v4du)__A & (__v4du)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_andnot_si256 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_andnotsi256 ((__v4di)__A, (__v4di)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_avg_epu8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pavgb256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_avg_epu16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pavgw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_blendv_epi8 (__m256i __X, __m256i __Y, __m256i __M)
-{
- return (__m256i) __builtin_ia32_pblendvb256 ((__v32qi)__X,
- (__v32qi)__Y,
- (__v32qi)__M);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_blend_epi16 (__m256i __X, __m256i __Y, const int __M)
-{
- return (__m256i) __builtin_ia32_pblendw256 ((__v16hi)__X,
- (__v16hi)__Y,
- __M);
-}
-#else
-#define _mm256_blend_epi16(X, Y, M) \
- ((__m256i) __builtin_ia32_pblendw256 ((__v16hi)(__m256i)(X), \
- (__v16hi)(__m256i)(Y), (int)(M)))
-#endif
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v32qi)__A == (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v16hi)__A == (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v8si)__A == (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v4di)__A == (__v4di)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v32qi)__A > (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v16hi)__A > (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v8si)__A > (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v4di)__A > (__v4di)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hadd_epi16 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_phaddw256 ((__v16hi)__X,
- (__v16hi)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hadd_epi32 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_phaddd256 ((__v8si)__X, (__v8si)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hadds_epi16 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_phaddsw256 ((__v16hi)__X,
- (__v16hi)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hsub_epi16 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_phsubw256 ((__v16hi)__X,
- (__v16hi)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hsub_epi32 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_phsubd256 ((__v8si)__X, (__v8si)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hsubs_epi16 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_phsubsw256 ((__v16hi)__X,
- (__v16hi)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maddubs_epi16 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmaddubsw256 ((__v32qi)__X,
- (__v32qi)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_madd_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmaddwd256 ((__v16hi)__A,
- (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmaxsb256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmaxsw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmaxsd256 ((__v8si)__A, (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_epu8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmaxub256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_epu16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmaxuw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_epu32 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmaxud256 ((__v8si)__A, (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pminsb256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pminsw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pminsd256 ((__v8si)__A, (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_epu8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pminub256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_epu16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pminuw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_epu32 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pminud256 ((__v8si)__A, (__v8si)__B);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movemask_epi8 (__m256i __A)
-{
- return __builtin_ia32_pmovmskb256 ((__v32qi)__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi8_epi16 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovsxbw256 ((__v16qi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi8_epi32 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovsxbd256 ((__v16qi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi8_epi64 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovsxbq256 ((__v16qi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi16_epi32 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovsxwd256 ((__v8hi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi16_epi64 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovsxwq256 ((__v8hi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi32_epi64 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovsxdq256 ((__v4si)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu8_epi16 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovzxbw256 ((__v16qi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu8_epi32 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovzxbd256 ((__v16qi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu8_epi64 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovzxbq256 ((__v16qi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu16_epi32 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovzxwd256 ((__v8hi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu16_epi64 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovzxwq256 ((__v8hi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu32_epi64 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovzxdq256 ((__v4si)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mul_epi32 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmuldq256 ((__v8si)__X, (__v8si)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mulhrs_epi16 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmulhrsw256 ((__v16hi)__X,
- (__v16hi)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mulhi_epu16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmulhuw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mulhi_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmulhw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mullo_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v16hu)__A * (__v16hu)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mullo_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v8su)__A * (__v8su)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mul_epu32 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_pmuludq256 ((__v8si)__A, (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_or_si256 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v4du)__A | (__v4du)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sad_epu8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_psadbw256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shuffle_epi8 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pshufb256 ((__v32qi)__X,
- (__v32qi)__Y);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shuffle_epi32 (__m256i __A, const int __mask)
-{
- return (__m256i)__builtin_ia32_pshufd256 ((__v8si)__A, __mask);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shufflehi_epi16 (__m256i __A, const int __mask)
-{
- return (__m256i)__builtin_ia32_pshufhw256 ((__v16hi)__A, __mask);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shufflelo_epi16 (__m256i __A, const int __mask)
-{
- return (__m256i)__builtin_ia32_pshuflw256 ((__v16hi)__A, __mask);
-}
-#else
-#define _mm256_shuffle_epi32(A, N) \
- ((__m256i)__builtin_ia32_pshufd256 ((__v8si)(__m256i)(A), (int)(N)))
-#define _mm256_shufflehi_epi16(A, N) \
- ((__m256i)__builtin_ia32_pshufhw256 ((__v16hi)(__m256i)(A), (int)(N)))
-#define _mm256_shufflelo_epi16(A, N) \
- ((__m256i)__builtin_ia32_pshuflw256 ((__v16hi)(__m256i)(A), (int)(N)))
-#endif
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sign_epi8 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psignb256 ((__v32qi)__X, (__v32qi)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sign_epi16 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psignw256 ((__v16hi)__X, (__v16hi)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sign_epi32 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psignd256 ((__v8si)__X, (__v8si)__Y);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_bslli_epi128 (__m256i __A, const int __N)
-{
- return (__m256i)__builtin_ia32_pslldqi256 (__A, __N * 8);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_slli_si256 (__m256i __A, const int __N)
-{
- return (__m256i)__builtin_ia32_pslldqi256 (__A, __N * 8);
-}
-#else
-#define _mm256_bslli_epi128(A, N) \
- ((__m256i)__builtin_ia32_pslldqi256 ((__m256i)(A), (int)(N) * 8))
-#define _mm256_slli_si256(A, N) \
- ((__m256i)__builtin_ia32_pslldqi256 ((__m256i)(A), (int)(N) * 8))
-#endif
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_slli_epi16 (__m256i __A, int __B)
-{
- return (__m256i)__builtin_ia32_psllwi256 ((__v16hi)__A, __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sll_epi16 (__m256i __A, __m128i __B)
-{
- return (__m256i)__builtin_ia32_psllw256((__v16hi)__A, (__v8hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_slli_epi32 (__m256i __A, int __B)
-{
- return (__m256i)__builtin_ia32_pslldi256 ((__v8si)__A, __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sll_epi32 (__m256i __A, __m128i __B)
-{
- return (__m256i)__builtin_ia32_pslld256((__v8si)__A, (__v4si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_slli_epi64 (__m256i __A, int __B)
-{
- return (__m256i)__builtin_ia32_psllqi256 ((__v4di)__A, __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sll_epi64 (__m256i __A, __m128i __B)
-{
- return (__m256i)__builtin_ia32_psllq256((__v4di)__A, (__v2di)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srai_epi16 (__m256i __A, int __B)
-{
- return (__m256i)__builtin_ia32_psrawi256 ((__v16hi)__A, __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sra_epi16 (__m256i __A, __m128i __B)
-{
- return (__m256i)__builtin_ia32_psraw256 ((__v16hi)__A, (__v8hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srai_epi32 (__m256i __A, int __B)
-{
- return (__m256i)__builtin_ia32_psradi256 ((__v8si)__A, __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sra_epi32 (__m256i __A, __m128i __B)
-{
- return (__m256i)__builtin_ia32_psrad256 ((__v8si)__A, (__v4si)__B);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_bsrli_epi128 (__m256i __A, const int __N)
-{
- return (__m256i)__builtin_ia32_psrldqi256 (__A, __N * 8);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srli_si256 (__m256i __A, const int __N)
-{
- return (__m256i)__builtin_ia32_psrldqi256 (__A, __N * 8);
-}
-#else
-#define _mm256_bsrli_epi128(A, N) \
- ((__m256i)__builtin_ia32_psrldqi256 ((__m256i)(A), (int)(N) * 8))
-#define _mm256_srli_si256(A, N) \
- ((__m256i)__builtin_ia32_psrldqi256 ((__m256i)(A), (int)(N) * 8))
-#endif
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srli_epi16 (__m256i __A, int __B)
-{
- return (__m256i)__builtin_ia32_psrlwi256 ((__v16hi)__A, __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srl_epi16 (__m256i __A, __m128i __B)
-{
- return (__m256i)__builtin_ia32_psrlw256((__v16hi)__A, (__v8hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srli_epi32 (__m256i __A, int __B)
-{
- return (__m256i)__builtin_ia32_psrldi256 ((__v8si)__A, __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srl_epi32 (__m256i __A, __m128i __B)
-{
- return (__m256i)__builtin_ia32_psrld256((__v8si)__A, (__v4si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srli_epi64 (__m256i __A, int __B)
-{
- return (__m256i)__builtin_ia32_psrlqi256 ((__v4di)__A, __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srl_epi64 (__m256i __A, __m128i __B)
-{
- return (__m256i)__builtin_ia32_psrlq256((__v4di)__A, (__v2di)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sub_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v32qu)__A - (__v32qu)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sub_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v16hu)__A - (__v16hu)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sub_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v8su)__A - (__v8su)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sub_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v4du)__A - (__v4du)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_subs_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_psubsb256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_subs_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_psubsw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_subs_epu8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_psubusb256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_subs_epu16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_psubusw256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpackhi_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_punpckhbw256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpackhi_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_punpckhwd256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpackhi_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_punpckhdq256 ((__v8si)__A, (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpackhi_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_punpckhqdq256 ((__v4di)__A, (__v4di)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpacklo_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_punpcklbw256 ((__v32qi)__A, (__v32qi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpacklo_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_punpcklwd256 ((__v16hi)__A, (__v16hi)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpacklo_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_punpckldq256 ((__v8si)__A, (__v8si)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpacklo_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i)__builtin_ia32_punpcklqdq256 ((__v4di)__A, (__v4di)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_xor_si256 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v4du)__A ^ (__v4du)__B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_stream_load_si256 (__m256i const *__X)
-{
- return (__m256i) __builtin_ia32_movntdqa256 ((__v4di *) __X);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_broadcastss_ps (__m128 __X)
-{
- return (__m128) __builtin_ia32_vbroadcastss_ps ((__v4sf)__X);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcastss_ps (__m128 __X)
-{
- return (__m256) __builtin_ia32_vbroadcastss_ps256 ((__v4sf)__X);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcastsd_pd (__m128d __X)
-{
- return (__m256d) __builtin_ia32_vbroadcastsd_pd256 ((__v2df)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcastsi128_si256 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_vbroadcastsi256 ((__v2di)__X);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_blend_epi32 (__m128i __X, __m128i __Y, const int __M)
-{
- return (__m128i) __builtin_ia32_pblendd128 ((__v4si)__X,
- (__v4si)__Y,
- __M);
-}
-#else
-#define _mm_blend_epi32(X, Y, M) \
- ((__m128i) __builtin_ia32_pblendd128 ((__v4si)(__m128i)(X), \
- (__v4si)(__m128i)(Y), (int)(M)))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_blend_epi32 (__m256i __X, __m256i __Y, const int __M)
-{
- return (__m256i) __builtin_ia32_pblendd256 ((__v8si)__X,
- (__v8si)__Y,
- __M);
-}
-#else
-#define _mm256_blend_epi32(X, Y, M) \
- ((__m256i) __builtin_ia32_pblendd256 ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(M)))
-#endif
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcastb_epi8 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pbroadcastb256 ((__v16qi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcastw_epi16 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pbroadcastw256 ((__v8hi)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcastd_epi32 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pbroadcastd256 ((__v4si)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcastq_epi64 (__m128i __X)
-{
- return (__m256i) __builtin_ia32_pbroadcastq256 ((__v2di)__X);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_broadcastb_epi8 (__m128i __X)
-{
- return (__m128i) __builtin_ia32_pbroadcastb128 ((__v16qi)__X);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_broadcastw_epi16 (__m128i __X)
-{
- return (__m128i) __builtin_ia32_pbroadcastw128 ((__v8hi)__X);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_broadcastd_epi32 (__m128i __X)
-{
- return (__m128i) __builtin_ia32_pbroadcastd128 ((__v4si)__X);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_broadcastq_epi64 (__m128i __X)
-{
- return (__m128i) __builtin_ia32_pbroadcastq128 ((__v2di)__X);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutevar8x32_epi32 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_permvarsi256 ((__v8si)__X, (__v8si)__Y);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permute4x64_pd (__m256d __X, const int __M)
-{
- return (__m256d) __builtin_ia32_permdf256 ((__v4df)__X, __M);
-}
-#else
-#define _mm256_permute4x64_pd(X, M) \
- ((__m256d) __builtin_ia32_permdf256 ((__v4df)(__m256d)(X), (int)(M)))
-#endif
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutevar8x32_ps (__m256 __X, __m256i __Y)
-{
- return (__m256) __builtin_ia32_permvarsf256 ((__v8sf)__X, (__v8si)__Y);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permute4x64_epi64 (__m256i __X, const int __M)
-{
- return (__m256i) __builtin_ia32_permdi256 ((__v4di)__X, __M);
-}
-#else
-#define _mm256_permute4x64_epi64(X, M) \
- ((__m256i) __builtin_ia32_permdi256 ((__v4di)(__m256i)(X), (int)(M)))
-#endif
-
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
-{
- return (__m256i) __builtin_ia32_permti256 ((__v4di)__X, (__v4di)__Y, __M);
-}
-#else
-#define _mm256_permute2x128_si256(X, Y, M) \
- ((__m256i) __builtin_ia32_permti256 ((__v4di)(__m256i)(X), (__v4di)(__m256i)(Y), (int)(M)))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extracti128_si256 (__m256i __X, const int __M)
-{
- return (__m128i) __builtin_ia32_extract128i256 ((__v4di)__X, __M);
-}
-#else
-#define _mm256_extracti128_si256(X, M) \
- ((__m128i) __builtin_ia32_extract128i256 ((__v4di)(__m256i)(X), (int)(M)))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_inserti128_si256 (__m256i __X, __m128i __Y, const int __M)
-{
- return (__m256i) __builtin_ia32_insert128i256 ((__v4di)__X, (__v2di)__Y, __M);
-}
-#else
-#define _mm256_inserti128_si256(X, Y, M) \
- ((__m256i) __builtin_ia32_insert128i256 ((__v4di)(__m256i)(X), \
- (__v2di)(__m128i)(Y), \
- (int)(M)))
-#endif
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskload_epi32 (int const *__X, __m256i __M )
-{
- return (__m256i) __builtin_ia32_maskloadd256 ((const __v8si *)__X,
- (__v8si)__M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskload_epi64 (long long const *__X, __m256i __M )
-{
- return (__m256i) __builtin_ia32_maskloadq256 ((const __v4di *)__X,
- (__v4di)__M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskload_epi32 (int const *__X, __m128i __M )
-{
- return (__m128i) __builtin_ia32_maskloadd ((const __v4si *)__X,
- (__v4si)__M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskload_epi64 (long long const *__X, __m128i __M )
-{
- return (__m128i) __builtin_ia32_maskloadq ((const __v2di *)__X,
- (__v2di)__M);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskstore_epi32 (int *__X, __m256i __M, __m256i __Y )
-{
- __builtin_ia32_maskstored256 ((__v8si *)__X, (__v8si)__M, (__v8si)__Y);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskstore_epi64 (long long *__X, __m256i __M, __m256i __Y )
-{
- __builtin_ia32_maskstoreq256 ((__v4di *)__X, (__v4di)__M, (__v4di)__Y);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskstore_epi32 (int *__X, __m128i __M, __m128i __Y )
-{
- __builtin_ia32_maskstored ((__v4si *)__X, (__v4si)__M, (__v4si)__Y);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskstore_epi64 (long long *__X, __m128i __M, __m128i __Y )
-{
- __builtin_ia32_maskstoreq (( __v2di *)__X, (__v2di)__M, (__v2di)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sllv_epi32 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psllv8si ((__v8si)__X, (__v8si)__Y);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_sllv_epi32 (__m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psllv4si ((__v4si)__X, (__v4si)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sllv_epi64 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psllv4di ((__v4di)__X, (__v4di)__Y);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_sllv_epi64 (__m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psllv2di ((__v2di)__X, (__v2di)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srav_epi32 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psrav8si ((__v8si)__X, (__v8si)__Y);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_srav_epi32 (__m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psrav4si ((__v4si)__X, (__v4si)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srlv_epi32 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psrlv8si ((__v8si)__X, (__v8si)__Y);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_srlv_epi32 (__m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psrlv4si ((__v4si)__X, (__v4si)__Y);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srlv_epi64 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psrlv4di ((__v4di)__X, (__v4di)__Y);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_srlv_epi64 (__m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psrlv2di ((__v2di)__X, (__v2di)__Y);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i32gather_pd (double const *__base, __m128i __index, const int __scale)
-{
- __v2df __zero = _mm_setzero_pd ();
- __v2df __mask = _mm_cmpeq_pd (__zero, __zero);
-
- return (__m128d) __builtin_ia32_gathersiv2df (_mm_undefined_pd (),
- __base,
- (__v4si)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i32gather_pd (__m128d __src, double const *__base, __m128i __index,
- __m128d __mask, const int __scale)
-{
- return (__m128d) __builtin_ia32_gathersiv2df ((__v2df)__src,
- __base,
- (__v4si)__index,
- (__v2df)__mask,
- __scale);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i32gather_pd (double const *__base, __m128i __index, const int __scale)
-{
- __v4df __zero = _mm256_setzero_pd ();
- __v4df __mask = _mm256_cmp_pd (__zero, __zero, _CMP_EQ_OQ);
-
- return (__m256d) __builtin_ia32_gathersiv4df (_mm256_undefined_pd (),
- __base,
- (__v4si)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i32gather_pd (__m256d __src, double const *__base,
- __m128i __index, __m256d __mask, const int __scale)
-{
- return (__m256d) __builtin_ia32_gathersiv4df ((__v4df)__src,
- __base,
- (__v4si)__index,
- (__v4df)__mask,
- __scale);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i64gather_pd (double const *__base, __m128i __index, const int __scale)
-{
- __v2df __src = _mm_setzero_pd ();
- __v2df __mask = _mm_cmpeq_pd (__src, __src);
-
- return (__m128d) __builtin_ia32_gatherdiv2df (__src,
- __base,
- (__v2di)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i64gather_pd (__m128d __src, double const *__base, __m128i __index,
- __m128d __mask, const int __scale)
-{
- return (__m128d) __builtin_ia32_gatherdiv2df ((__v2df)__src,
- __base,
- (__v2di)__index,
- (__v2df)__mask,
- __scale);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i64gather_pd (double const *__base, __m256i __index, const int __scale)
-{
- __v4df __src = _mm256_setzero_pd ();
- __v4df __mask = _mm256_cmp_pd (__src, __src, _CMP_EQ_OQ);
-
- return (__m256d) __builtin_ia32_gatherdiv4df (__src,
- __base,
- (__v4di)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i64gather_pd (__m256d __src, double const *__base,
- __m256i __index, __m256d __mask, const int __scale)
-{
- return (__m256d) __builtin_ia32_gatherdiv4df ((__v4df)__src,
- __base,
- (__v4di)__index,
- (__v4df)__mask,
- __scale);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i32gather_ps (float const *__base, __m128i __index, const int __scale)
-{
- __v4sf __src = _mm_setzero_ps ();
- __v4sf __mask = _mm_cmpeq_ps (__src, __src);
-
- return (__m128) __builtin_ia32_gathersiv4sf (__src,
- __base,
- (__v4si)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i32gather_ps (__m128 __src, float const *__base, __m128i __index,
- __m128 __mask, const int __scale)
-{
- return (__m128) __builtin_ia32_gathersiv4sf ((__v4sf)__src,
- __base,
- (__v4si)__index,
- (__v4sf)__mask,
- __scale);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i32gather_ps (float const *__base, __m256i __index, const int __scale)
-{
- __v8sf __src = _mm256_setzero_ps ();
- __v8sf __mask = _mm256_cmp_ps (__src, __src, _CMP_EQ_OQ);
-
- return (__m256) __builtin_ia32_gathersiv8sf (__src,
- __base,
- (__v8si)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i32gather_ps (__m256 __src, float const *__base,
- __m256i __index, __m256 __mask, const int __scale)
-{
- return (__m256) __builtin_ia32_gathersiv8sf ((__v8sf)__src,
- __base,
- (__v8si)__index,
- (__v8sf)__mask,
- __scale);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i64gather_ps (float const *__base, __m128i __index, const int __scale)
-{
- __v4sf __src = _mm_setzero_ps ();
- __v4sf __mask = _mm_cmpeq_ps (__src, __src);
-
- return (__m128) __builtin_ia32_gatherdiv4sf (__src,
- __base,
- (__v2di)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i64gather_ps (__m128 __src, float const *__base, __m128i __index,
- __m128 __mask, const int __scale)
-{
- return (__m128) __builtin_ia32_gatherdiv4sf ((__v4sf)__src,
- __base,
- (__v2di)__index,
- (__v4sf)__mask,
- __scale);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i64gather_ps (float const *__base, __m256i __index, const int __scale)
-{
- __v4sf __src = _mm_setzero_ps ();
- __v4sf __mask = _mm_cmpeq_ps (__src, __src);
-
- return (__m128) __builtin_ia32_gatherdiv4sf256 (__src,
- __base,
- (__v4di)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i64gather_ps (__m128 __src, float const *__base,
- __m256i __index, __m128 __mask, const int __scale)
-{
- return (__m128) __builtin_ia32_gatherdiv4sf256 ((__v4sf)__src,
- __base,
- (__v4di)__index,
- (__v4sf)__mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i32gather_epi64 (long long int const *__base,
- __m128i __index, const int __scale)
-{
- __v2di __src = __extension__ (__v2di){ 0, 0 };
- __v2di __mask = __extension__ (__v2di){ ~0, ~0 };
-
- return (__m128i) __builtin_ia32_gathersiv2di (__src,
- __base,
- (__v4si)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i32gather_epi64 (__m128i __src, long long int const *__base,
- __m128i __index, __m128i __mask, const int __scale)
-{
- return (__m128i) __builtin_ia32_gathersiv2di ((__v2di)__src,
- __base,
- (__v4si)__index,
- (__v2di)__mask,
- __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i32gather_epi64 (long long int const *__base,
- __m128i __index, const int __scale)
-{
- __v4di __src = __extension__ (__v4di){ 0, 0, 0, 0 };
- __v4di __mask = __extension__ (__v4di){ ~0, ~0, ~0, ~0 };
-
- return (__m256i) __builtin_ia32_gathersiv4di (__src,
- __base,
- (__v4si)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i32gather_epi64 (__m256i __src, long long int const *__base,
- __m128i __index, __m256i __mask,
- const int __scale)
-{
- return (__m256i) __builtin_ia32_gathersiv4di ((__v4di)__src,
- __base,
- (__v4si)__index,
- (__v4di)__mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i64gather_epi64 (long long int const *__base,
- __m128i __index, const int __scale)
-{
- __v2di __src = __extension__ (__v2di){ 0, 0 };
- __v2di __mask = __extension__ (__v2di){ ~0, ~0 };
-
- return (__m128i) __builtin_ia32_gatherdiv2di (__src,
- __base,
- (__v2di)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i64gather_epi64 (__m128i __src, long long int const *__base,
- __m128i __index, __m128i __mask, const int __scale)
-{
- return (__m128i) __builtin_ia32_gatherdiv2di ((__v2di)__src,
- __base,
- (__v2di)__index,
- (__v2di)__mask,
- __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i64gather_epi64 (long long int const *__base,
- __m256i __index, const int __scale)
-{
- __v4di __src = __extension__ (__v4di){ 0, 0, 0, 0 };
- __v4di __mask = __extension__ (__v4di){ ~0, ~0, ~0, ~0 };
-
- return (__m256i) __builtin_ia32_gatherdiv4di (__src,
- __base,
- (__v4di)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i64gather_epi64 (__m256i __src, long long int const *__base,
- __m256i __index, __m256i __mask,
- const int __scale)
-{
- return (__m256i) __builtin_ia32_gatherdiv4di ((__v4di)__src,
- __base,
- (__v4di)__index,
- (__v4di)__mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i32gather_epi32 (int const *__base, __m128i __index, const int __scale)
-{
- __v4si __src = __extension__ (__v4si){ 0, 0, 0, 0 };
- __v4si __mask = __extension__ (__v4si){ ~0, ~0, ~0, ~0 };
-
- return (__m128i) __builtin_ia32_gathersiv4si (__src,
- __base,
- (__v4si)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i32gather_epi32 (__m128i __src, int const *__base, __m128i __index,
- __m128i __mask, const int __scale)
-{
- return (__m128i) __builtin_ia32_gathersiv4si ((__v4si)__src,
- __base,
- (__v4si)__index,
- (__v4si)__mask,
- __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i32gather_epi32 (int const *__base, __m256i __index, const int __scale)
-{
- __v8si __src = __extension__ (__v8si){ 0, 0, 0, 0, 0, 0, 0, 0 };
- __v8si __mask = __extension__ (__v8si){ ~0, ~0, ~0, ~0, ~0, ~0, ~0, ~0 };
-
- return (__m256i) __builtin_ia32_gathersiv8si (__src,
- __base,
- (__v8si)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i32gather_epi32 (__m256i __src, int const *__base,
- __m256i __index, __m256i __mask,
- const int __scale)
-{
- return (__m256i) __builtin_ia32_gathersiv8si ((__v8si)__src,
- __base,
- (__v8si)__index,
- (__v8si)__mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i64gather_epi32 (int const *__base, __m128i __index, const int __scale)
-{
- __v4si __src = __extension__ (__v4si){ 0, 0, 0, 0 };
- __v4si __mask = __extension__ (__v4si){ ~0, ~0, ~0, ~0 };
-
- return (__m128i) __builtin_ia32_gatherdiv4si (__src,
- __base,
- (__v2di)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i64gather_epi32 (__m128i __src, int const *__base, __m128i __index,
- __m128i __mask, const int __scale)
-{
- return (__m128i) __builtin_ia32_gatherdiv4si ((__v4si)__src,
- __base,
- (__v2di)__index,
- (__v4si)__mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i64gather_epi32 (int const *__base, __m256i __index, const int __scale)
-{
- __v4si __src = __extension__ (__v4si){ 0, 0, 0, 0 };
- __v4si __mask = __extension__ (__v4si){ ~0, ~0, ~0, ~0 };
-
- return (__m128i) __builtin_ia32_gatherdiv4si256 (__src,
- __base,
- (__v4di)__index,
- __mask,
- __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i64gather_epi32 (__m128i __src, int const *__base,
- __m256i __index, __m128i __mask,
- const int __scale)
-{
- return (__m128i) __builtin_ia32_gatherdiv4si256 ((__v4si)__src,
- __base,
- (__v4di)__index,
- (__v4si)__mask,
- __scale);
-}
-#else /* __OPTIMIZE__ */
-#define _mm_i32gather_pd(BASE, INDEX, SCALE) \
- (__m128d) __builtin_ia32_gathersiv2df ((__v2df) _mm_setzero_pd (), \
- (double const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v2df)_mm_set1_pd( \
- (double)(long long int) -1), \
- (int)SCALE)
-
-#define _mm_mask_i32gather_pd(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128d) __builtin_ia32_gathersiv2df ((__v2df)(__m128d)SRC, \
- (double const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v2df)(__m128d)MASK, \
- (int)SCALE)
-
-#define _mm256_i32gather_pd(BASE, INDEX, SCALE) \
- (__m256d) __builtin_ia32_gathersiv4df ((__v4df) _mm256_setzero_pd (), \
- (double const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v4df)_mm256_set1_pd( \
- (double)(long long int) -1), \
- (int)SCALE)
-
-#define _mm256_mask_i32gather_pd(SRC, BASE, INDEX, MASK, SCALE) \
- (__m256d) __builtin_ia32_gathersiv4df ((__v4df)(__m256d)SRC, \
- (double const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v4df)(__m256d)MASK, \
- (int)SCALE)
-
-#define _mm_i64gather_pd(BASE, INDEX, SCALE) \
- (__m128d) __builtin_ia32_gatherdiv2df ((__v2df) _mm_setzero_pd (), \
- (double const *)BASE, \
- (__v2di)(__m128i)INDEX, \
- (__v2df)_mm_set1_pd( \
- (double)(long long int) -1), \
- (int)SCALE)
-
-#define _mm_mask_i64gather_pd(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128d) __builtin_ia32_gatherdiv2df ((__v2df)(__m128d)SRC, \
- (double const *)BASE, \
- (__v2di)(__m128i)INDEX, \
- (__v2df)(__m128d)MASK, \
- (int)SCALE)
-
-#define _mm256_i64gather_pd(BASE, INDEX, SCALE) \
- (__m256d) __builtin_ia32_gatherdiv4df ((__v4df) _mm256_setzero_pd (), \
- (double const *)BASE, \
- (__v4di)(__m256i)INDEX, \
- (__v4df)_mm256_set1_pd( \
- (double)(long long int) -1), \
- (int)SCALE)
-
-#define _mm256_mask_i64gather_pd(SRC, BASE, INDEX, MASK, SCALE) \
- (__m256d) __builtin_ia32_gatherdiv4df ((__v4df)(__m256d)SRC, \
- (double const *)BASE, \
- (__v4di)(__m256i)INDEX, \
- (__v4df)(__m256d)MASK, \
- (int)SCALE)
-
-#define _mm_i32gather_ps(BASE, INDEX, SCALE) \
- (__m128) __builtin_ia32_gathersiv4sf ((__v4sf) _mm_setzero_ps (), \
- (float const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- _mm_set1_ps ((float)(int) -1), \
- (int)SCALE)
-
-#define _mm_mask_i32gather_ps(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128) __builtin_ia32_gathersiv4sf ((__v4sf)(__m128d)SRC, \
- (float const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v4sf)(__m128d)MASK, \
- (int)SCALE)
-
-#define _mm256_i32gather_ps(BASE, INDEX, SCALE) \
- (__m256) __builtin_ia32_gathersiv8sf ((__v8sf) _mm256_setzero_ps (), \
- (float const *)BASE, \
- (__v8si)(__m256i)INDEX, \
- (__v8sf)_mm256_set1_ps ( \
- (float)(int) -1), \
- (int)SCALE)
-
-#define _mm256_mask_i32gather_ps(SRC, BASE, INDEX, MASK, SCALE) \
- (__m256) __builtin_ia32_gathersiv8sf ((__v8sf)(__m256)SRC, \
- (float const *)BASE, \
- (__v8si)(__m256i)INDEX, \
- (__v8sf)(__m256d)MASK, \
- (int)SCALE)
-
-#define _mm_i64gather_ps(BASE, INDEX, SCALE) \
- (__m128) __builtin_ia32_gatherdiv4sf ((__v4sf) _mm_setzero_pd (), \
- (float const *)BASE, \
- (__v2di)(__m128i)INDEX, \
- (__v4sf)_mm_set1_ps ( \
- (float)(int) -1), \
- (int)SCALE)
-
-#define _mm_mask_i64gather_ps(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128) __builtin_ia32_gatherdiv4sf ((__v4sf)(__m128)SRC, \
- (float const *)BASE, \
- (__v2di)(__m128i)INDEX, \
- (__v4sf)(__m128d)MASK, \
- (int)SCALE)
-
-#define _mm256_i64gather_ps(BASE, INDEX, SCALE) \
- (__m128) __builtin_ia32_gatherdiv4sf256 ((__v4sf) _mm_setzero_ps (), \
- (float const *)BASE, \
- (__v4di)(__m256i)INDEX, \
- (__v4sf)_mm_set1_ps( \
- (float)(int) -1), \
- (int)SCALE)
-
-#define _mm256_mask_i64gather_ps(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128) __builtin_ia32_gatherdiv4sf256 ((__v4sf)(__m128)SRC, \
- (float const *)BASE, \
- (__v4di)(__m256i)INDEX, \
- (__v4sf)(__m128)MASK, \
- (int)SCALE)
-
-#define _mm_i32gather_epi64(BASE, INDEX, SCALE) \
- (__m128i) __builtin_ia32_gathersiv2di ((__v2di) _mm_setzero_si128 (), \
- (long long const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v2di)_mm_set1_epi64x (-1), \
- (int)SCALE)
-
-#define _mm_mask_i32gather_epi64(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128i) __builtin_ia32_gathersiv2di ((__v2di)(__m128i)SRC, \
- (long long const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v2di)(__m128i)MASK, \
- (int)SCALE)
-
-#define _mm256_i32gather_epi64(BASE, INDEX, SCALE) \
- (__m256i) __builtin_ia32_gathersiv4di ((__v4di) _mm256_setzero_si256 (), \
- (long long const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v4di)_mm256_set1_epi64x (-1), \
- (int)SCALE)
-
-#define _mm256_mask_i32gather_epi64(SRC, BASE, INDEX, MASK, SCALE) \
- (__m256i) __builtin_ia32_gathersiv4di ((__v4di)(__m256i)SRC, \
- (long long const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v4di)(__m256i)MASK, \
- (int)SCALE)
-
-#define _mm_i64gather_epi64(BASE, INDEX, SCALE) \
- (__m128i) __builtin_ia32_gatherdiv2di ((__v2di) _mm_setzero_si128 (), \
- (long long const *)BASE, \
- (__v2di)(__m128i)INDEX, \
- (__v2di)_mm_set1_epi64x (-1), \
- (int)SCALE)
-
-#define _mm_mask_i64gather_epi64(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128i) __builtin_ia32_gatherdiv2di ((__v2di)(__m128i)SRC, \
- (long long const *)BASE, \
- (__v2di)(__m128i)INDEX, \
- (__v2di)(__m128i)MASK, \
- (int)SCALE)
-
-#define _mm256_i64gather_epi64(BASE, INDEX, SCALE) \
- (__m256i) __builtin_ia32_gatherdiv4di ((__v4di) _mm256_setzero_si256 (), \
- (long long const *)BASE, \
- (__v4di)(__m256i)INDEX, \
- (__v4di)_mm256_set1_epi64x (-1), \
- (int)SCALE)
-
-#define _mm256_mask_i64gather_epi64(SRC, BASE, INDEX, MASK, SCALE) \
- (__m256i) __builtin_ia32_gatherdiv4di ((__v4di)(__m256i)SRC, \
- (long long const *)BASE, \
- (__v4di)(__m256i)INDEX, \
- (__v4di)(__m256i)MASK, \
- (int)SCALE)
-
-#define _mm_i32gather_epi32(BASE, INDEX, SCALE) \
- (__m128i) __builtin_ia32_gathersiv4si ((__v4si) _mm_setzero_si128 (), \
- (int const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v4si)_mm_set1_epi32 (-1), \
- (int)SCALE)
-
-#define _mm_mask_i32gather_epi32(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128i) __builtin_ia32_gathersiv4si ((__v4si)(__m128i)SRC, \
- (int const *)BASE, \
- (__v4si)(__m128i)INDEX, \
- (__v4si)(__m128i)MASK, \
- (int)SCALE)
-
-#define _mm256_i32gather_epi32(BASE, INDEX, SCALE) \
- (__m256i) __builtin_ia32_gathersiv8si ((__v8si) _mm256_setzero_si256 (), \
- (int const *)BASE, \
- (__v8si)(__m256i)INDEX, \
- (__v8si)_mm256_set1_epi32 (-1), \
- (int)SCALE)
-
-#define _mm256_mask_i32gather_epi32(SRC, BASE, INDEX, MASK, SCALE) \
- (__m256i) __builtin_ia32_gathersiv8si ((__v8si)(__m256i)SRC, \
- (int const *)BASE, \
- (__v8si)(__m256i)INDEX, \
- (__v8si)(__m256i)MASK, \
- (int)SCALE)
-
-#define _mm_i64gather_epi32(BASE, INDEX, SCALE) \
- (__m128i) __builtin_ia32_gatherdiv4si ((__v4si) _mm_setzero_si128 (), \
- (int const *)BASE, \
- (__v2di)(__m128i)INDEX, \
- (__v4si)_mm_set1_epi32 (-1), \
- (int)SCALE)
-
-#define _mm_mask_i64gather_epi32(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128i) __builtin_ia32_gatherdiv4si ((__v4si)(__m128i)SRC, \
- (int const *)BASE, \
- (__v2di)(__m128i)INDEX, \
- (__v4si)(__m128i)MASK, \
- (int)SCALE)
-
-#define _mm256_i64gather_epi32(BASE, INDEX, SCALE) \
- (__m128i) __builtin_ia32_gatherdiv4si256 ((__v4si) _mm_setzero_si128 (), \
- (int const *)BASE, \
- (__v4di)(__m256i)INDEX, \
- (__v4si)_mm_set1_epi32(-1), \
- (int)SCALE)
-
-#define _mm256_mask_i64gather_epi32(SRC, BASE, INDEX, MASK, SCALE) \
- (__m128i) __builtin_ia32_gatherdiv4si256 ((__v4si)(__m128i)SRC, \
- (int const *)BASE, \
- (__v4di)(__m256i)INDEX, \
- (__v4si)(__m128i)MASK, \
- (int)SCALE)
-#endif /* __OPTIMIZE__ */
-
-#ifdef __DISABLE_AVX2__
-#undef __DISABLE_AVX2__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX2__ */
-
-#endif /* _AVX2INTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx5124fmapsintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx5124fmapsintrin.h
deleted file mode 100644
index 45ac0d4f5d..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx5124fmapsintrin.h
+++ /dev/null
@@ -1,216 +0,0 @@
-/* Copyright (C) 2015-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#if !defined _IMMINTRIN_H_INCLUDED
-# error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX5124FMAPSINTRIN_H_INCLUDED
-#define _AVX5124FMAPSINTRIN_H_INCLUDED
-
-#ifndef __AVX5124FMAPS__
-#pragma GCC push_options
-//#pragma GCC target("avx5124fmaps")
-#define __DISABLE_AVX5124FMAPS__
-#endif /* __AVX5124FMAPS__ */
-
-extern __inline __m512
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_4fmadd_ps (__m512 __A, __m512 __B, __m512 __C,
- __m512 __D, __m512 __E, __m128 *__F)
-{
- return (__m512) __builtin_ia32_4fmaddps ((__v16sf) __B,
- (__v16sf) __C,
- (__v16sf) __D,
- (__v16sf) __E,
- (__v16sf) __A,
- (const __v4sf *) __F);
-}
-
-extern __inline __m512
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_4fmadd_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512 __C, __m512 __D, __m512 __E, __m128 *__F)
-{
- return (__m512) __builtin_ia32_4fmaddps_mask ((__v16sf) __B,
- (__v16sf) __C,
- (__v16sf) __D,
- (__v16sf) __E,
- (__v16sf) __A,
- (const __v4sf *) __F,
- (__v16sf) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_4fmadd_ps (__mmask16 __U,
- __m512 __A, __m512 __B, __m512 __C,
- __m512 __D, __m512 __E, __m128 *__F)
-{
- return (__m512) __builtin_ia32_4fmaddps_mask ((__v16sf) __B,
- (__v16sf) __C,
- (__v16sf) __D,
- (__v16sf) __E,
- (__v16sf) __A,
- (const __v4sf *) __F,
- (__v16sf) _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m128
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_4fmadd_ss (__m128 __A, __m128 __B, __m128 __C,
- __m128 __D, __m128 __E, __m128 *__F)
-{
- return (__m128) __builtin_ia32_4fmaddss ((__v4sf) __B,
- (__v4sf) __C,
- (__v4sf) __D,
- (__v4sf) __E,
- (__v4sf) __A,
- (const __v4sf *) __F);
-}
-
-extern __inline __m128
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_4fmadd_ss (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C,
- __m128 __D, __m128 __E, __m128 *__F)
-{
- return (__m128) __builtin_ia32_4fmaddss_mask ((__v4sf) __B,
- (__v4sf) __C,
- (__v4sf) __D,
- (__v4sf) __E,
- (__v4sf) __A,
- (const __v4sf *) __F,
- (__v4sf) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_4fmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C,
- __m128 __D, __m128 __E, __m128 *__F)
-{
- return (__m128) __builtin_ia32_4fmaddss_mask ((__v4sf) __B,
- (__v4sf) __C,
- (__v4sf) __D,
- (__v4sf) __E,
- (__v4sf) __A,
- (const __v4sf *) __F,
- (__v4sf) _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_4fnmadd_ps (__m512 __A, __m512 __B, __m512 __C,
- __m512 __D, __m512 __E, __m128 *__F)
-{
- return (__m512) __builtin_ia32_4fnmaddps ((__v16sf) __B,
- (__v16sf) __C,
- (__v16sf) __D,
- (__v16sf) __E,
- (__v16sf) __A,
- (const __v4sf *) __F);
-}
-
-extern __inline __m512
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_4fnmadd_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512 __C, __m512 __D, __m512 __E, __m128 *__F)
-{
- return (__m512) __builtin_ia32_4fnmaddps_mask ((__v16sf) __B,
- (__v16sf) __C,
- (__v16sf) __D,
- (__v16sf) __E,
- (__v16sf) __A,
- (const __v4sf *) __F,
- (__v16sf) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_4fnmadd_ps (__mmask16 __U,
- __m512 __A, __m512 __B, __m512 __C,
- __m512 __D, __m512 __E, __m128 *__F)
-{
- return (__m512) __builtin_ia32_4fnmaddps_mask ((__v16sf) __B,
- (__v16sf) __C,
- (__v16sf) __D,
- (__v16sf) __E,
- (__v16sf) __A,
- (const __v4sf *) __F,
- (__v16sf) _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m128
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_4fnmadd_ss (__m128 __A, __m128 __B, __m128 __C,
- __m128 __D, __m128 __E, __m128 *__F)
-{
- return (__m128) __builtin_ia32_4fnmaddss ((__v4sf) __B,
- (__v4sf) __C,
- (__v4sf) __D,
- (__v4sf) __E,
- (__v4sf) __A,
- (const __v4sf *) __F);
-}
-
-extern __inline __m128
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_4fnmadd_ss (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C,
- __m128 __D, __m128 __E, __m128 *__F)
-{
- return (__m128) __builtin_ia32_4fnmaddss_mask ((__v4sf) __B,
- (__v4sf) __C,
- (__v4sf) __D,
- (__v4sf) __E,
- (__v4sf) __A,
- (const __v4sf *) __F,
- (__v4sf) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_4fnmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C,
- __m128 __D, __m128 __E, __m128 *__F)
-{
- return (__m128) __builtin_ia32_4fnmaddss_mask ((__v4sf) __B,
- (__v4sf) __C,
- (__v4sf) __D,
- (__v4sf) __E,
- (__v4sf) __A,
- (const __v4sf *) __F,
- (__v4sf) _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-#ifdef __DISABLE_AVX5124FMAPS__
-#undef __DISABLE_AVX5124FMAPS__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX5124FMAPS__ */
-
-#endif /* _AVX5124FMAPSINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx5124vnniwintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx5124vnniwintrin.h
deleted file mode 100644
index 483096ec26..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx5124vnniwintrin.h
+++ /dev/null
@@ -1,132 +0,0 @@
-/* Copyright (C) 2015-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#if !defined _IMMINTRIN_H_INCLUDED
-# error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX5124VNNIWINTRIN_H_INCLUDED
-#define _AVX5124VNNIWINTRIN_H_INCLUDED
-
-#ifndef __AVX5124VNNIW__
-#pragma GCC push_options
-//#pragma GCC target("avx5124vnniw")
-#define __DISABLE_AVX5124VNNIW__
-#endif /* __AVX5124VNNIW__ */
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_4dpwssd_epi32 (__m512i __A, __m512i __B, __m512i __C,
- __m512i __D, __m512i __E, __m128i *__F)
-{
- return (__m512i) __builtin_ia32_vp4dpwssd ((__v16si) __B,
- (__v16si) __C,
- (__v16si) __D,
- (__v16si) __E,
- (__v16si) __A,
- (const __v4si *) __F);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_4dpwssd_epi32 (__m512i __A, __mmask16 __U, __m512i __B,
- __m512i __C, __m512i __D, __m512i __E,
- __m128i *__F)
-{
- return (__m512i) __builtin_ia32_vp4dpwssd_mask ((__v16si) __B,
- (__v16si) __C,
- (__v16si) __D,
- (__v16si) __E,
- (__v16si) __A,
- (const __v4si *) __F,
- (__v16si) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_4dpwssd_epi32 (__mmask16 __U, __m512i __A, __m512i __B,
- __m512i __C, __m512i __D, __m512i __E,
- __m128i *__F)
-{
- return (__m512i) __builtin_ia32_vp4dpwssd_mask ((__v16si) __B,
- (__v16si) __C,
- (__v16si) __D,
- (__v16si) __E,
- (__v16si) __A,
- (const __v4si *) __F,
- (__v16si) _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_4dpwssds_epi32 (__m512i __A, __m512i __B, __m512i __C,
- __m512i __D, __m512i __E, __m128i *__F)
-{
- return (__m512i) __builtin_ia32_vp4dpwssds ((__v16si) __B,
- (__v16si) __C,
- (__v16si) __D,
- (__v16si) __E,
- (__v16si) __A,
- (const __v4si *) __F);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_4dpwssds_epi32 (__m512i __A, __mmask16 __U, __m512i __B,
- __m512i __C, __m512i __D, __m512i __E,
- __m128i *__F)
-{
- return (__m512i) __builtin_ia32_vp4dpwssds_mask ((__v16si) __B,
- (__v16si) __C,
- (__v16si) __D,
- (__v16si) __E,
- (__v16si) __A,
- (const __v4si *) __F,
- (__v16si) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_4dpwssds_epi32 (__mmask16 __U, __m512i __A, __m512i __B,
- __m512i __C, __m512i __D, __m512i __E,
- __m128i *__F)
-{
- return (__m512i) __builtin_ia32_vp4dpwssds_mask ((__v16si) __B,
- (__v16si) __C,
- (__v16si) __D,
- (__v16si) __E,
- (__v16si) __A,
- (const __v4si *) __F,
- (__v16si) _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-#ifdef __DISABLE_AVX5124VNNIW__
-#undef __DISABLE_AVX5124VNNIW__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX5124VNNIW__ */
-
-#endif /* _AVX5124VNNIWINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512bwintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512bwintrin.h
deleted file mode 100644
index bf316cf48e..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512bwintrin.h
+++ /dev/null
@@ -1,3280 +0,0 @@
-/* Copyright (C) 2014-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512BWINTRIN_H_INCLUDED
-#define _AVX512BWINTRIN_H_INCLUDED
-
-#ifndef __AVX512BW__
-#pragma GCC push_options
-//#pragma GCC target("avx512bw")
-#define __DISABLE_AVX512BW__
-#endif /* __AVX512BW__ */
-
-/* Internal data types for implementing the intrinsics. */
-typedef short __v32hi __attribute__ ((__vector_size__ (64)));
-typedef char __v64qi __attribute__ ((__vector_size__ (64)));
-
-typedef unsigned long long __mmask64;
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktest_mask32_u8 (__mmask32 __A, __mmask32 __B, unsigned char *__CF)
-{
- *__CF = (unsigned char) __builtin_ia32_ktestcsi (__A, __B);
- return (unsigned char) __builtin_ia32_ktestzsi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktest_mask64_u8 (__mmask64 __A, __mmask64 __B, unsigned char *__CF)
-{
- *__CF = (unsigned char) __builtin_ia32_ktestcdi (__A, __B);
- return (unsigned char) __builtin_ia32_ktestzdi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktestz_mask32_u8 (__mmask32 __A, __mmask32 __B)
-{
- return (unsigned char) __builtin_ia32_ktestzsi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktestz_mask64_u8 (__mmask64 __A, __mmask64 __B)
-{
- return (unsigned char) __builtin_ia32_ktestzdi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktestc_mask32_u8 (__mmask32 __A, __mmask32 __B)
-{
- return (unsigned char) __builtin_ia32_ktestcsi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktestc_mask64_u8 (__mmask64 __A, __mmask64 __B)
-{
- return (unsigned char) __builtin_ia32_ktestcdi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortest_mask32_u8 (__mmask32 __A, __mmask32 __B, unsigned char *__CF)
-{
- *__CF = (unsigned char) __builtin_ia32_kortestcsi (__A, __B);
- return (unsigned char) __builtin_ia32_kortestzsi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortest_mask64_u8 (__mmask64 __A, __mmask64 __B, unsigned char *__CF)
-{
- *__CF = (unsigned char) __builtin_ia32_kortestcdi (__A, __B);
- return (unsigned char) __builtin_ia32_kortestzdi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortestz_mask32_u8 (__mmask32 __A, __mmask32 __B)
-{
- return (unsigned char) __builtin_ia32_kortestzsi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortestz_mask64_u8 (__mmask64 __A, __mmask64 __B)
-{
- return (unsigned char) __builtin_ia32_kortestzdi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortestc_mask32_u8 (__mmask32 __A, __mmask32 __B)
-{
- return (unsigned char) __builtin_ia32_kortestcsi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortestc_mask64_u8 (__mmask64 __A, __mmask64 __B)
-{
- return (unsigned char) __builtin_ia32_kortestcdi (__A, __B);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kadd_mask32 (__mmask32 __A, __mmask32 __B)
-{
- return (__mmask32) __builtin_ia32_kaddsi ((__mmask32) __A, (__mmask32) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kadd_mask64 (__mmask64 __A, __mmask64 __B)
-{
- return (__mmask64) __builtin_ia32_kadddi ((__mmask64) __A, (__mmask64) __B);
-}
-
-extern __inline unsigned int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_cvtmask32_u32 (__mmask32 __A)
-{
- return (unsigned int) __builtin_ia32_kmovd ((__mmask32) __A);
-}
-
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_cvtmask64_u64 (__mmask64 __A)
-{
- return (unsigned long long) __builtin_ia32_kmovq ((__mmask64) __A);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_cvtu32_mask32 (unsigned int __A)
-{
- return (__mmask32) __builtin_ia32_kmovd ((__mmask32) __A);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_cvtu64_mask64 (unsigned long long __A)
-{
- return (__mmask64) __builtin_ia32_kmovq ((__mmask64) __A);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_load_mask32 (__mmask32 *__A)
-{
- return (__mmask32) __builtin_ia32_kmovd (*__A);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_load_mask64 (__mmask64 *__A)
-{
- return (__mmask64) __builtin_ia32_kmovq (*(__mmask64 *) __A);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_store_mask32 (__mmask32 *__A, __mmask32 __B)
-{
- *(__mmask32 *) __A = __builtin_ia32_kmovd (__B);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_store_mask64 (__mmask64 *__A, __mmask64 __B)
-{
- *(__mmask64 *) __A = __builtin_ia32_kmovq (__B);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_knot_mask32 (__mmask32 __A)
-{
- return (__mmask32) __builtin_ia32_knotsi ((__mmask32) __A);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_knot_mask64 (__mmask64 __A)
-{
- return (__mmask64) __builtin_ia32_knotdi ((__mmask64) __A);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kor_mask32 (__mmask32 __A, __mmask32 __B)
-{
- return (__mmask32) __builtin_ia32_korsi ((__mmask32) __A, (__mmask32) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kor_mask64 (__mmask64 __A, __mmask64 __B)
-{
- return (__mmask64) __builtin_ia32_kordi ((__mmask64) __A, (__mmask64) __B);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kxnor_mask32 (__mmask32 __A, __mmask32 __B)
-{
- return (__mmask32) __builtin_ia32_kxnorsi ((__mmask32) __A, (__mmask32) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kxnor_mask64 (__mmask64 __A, __mmask64 __B)
-{
- return (__mmask64) __builtin_ia32_kxnordi ((__mmask64) __A, (__mmask64) __B);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kxor_mask32 (__mmask32 __A, __mmask32 __B)
-{
- return (__mmask32) __builtin_ia32_kxorsi ((__mmask32) __A, (__mmask32) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kxor_mask64 (__mmask64 __A, __mmask64 __B)
-{
- return (__mmask64) __builtin_ia32_kxordi ((__mmask64) __A, (__mmask64) __B);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kand_mask32 (__mmask32 __A, __mmask32 __B)
-{
- return (__mmask32) __builtin_ia32_kandsi ((__mmask32) __A, (__mmask32) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kand_mask64 (__mmask64 __A, __mmask64 __B)
-{
- return (__mmask64) __builtin_ia32_kanddi ((__mmask64) __A, (__mmask64) __B);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kandn_mask32 (__mmask32 __A, __mmask32 __B)
-{
- return (__mmask32) __builtin_ia32_kandnsi ((__mmask32) __A, (__mmask32) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kandn_mask64 (__mmask64 __A, __mmask64 __B)
-{
- return (__mmask64) __builtin_ia32_kandndi ((__mmask64) __A, (__mmask64) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mov_epi16 (__m512i __W, __mmask32 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_movdquhi512_mask ((__v32hi) __A,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mov_epi16 (__mmask32 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_movdquhi512_mask ((__v32hi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_loadu_epi16 (__m512i __W, __mmask32 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_loaddquhi512_mask ((const short *) __P,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_loadu_epi16 (__mmask32 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_loaddquhi512_mask ((const short *) __P,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_storeu_epi16 (void *__P, __mmask32 __U, __m512i __A)
-{
- __builtin_ia32_storedquhi512_mask ((short *) __P,
- (__v32hi) __A,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mov_epi8 (__m512i __W, __mmask64 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_movdquqi512_mask ((__v64qi) __A,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mov_epi8 (__mmask64 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_movdquqi512_mask ((__v64qi) __A,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kunpackw (__mmask32 __A, __mmask32 __B)
-{
- return (__mmask32) __builtin_ia32_kunpcksi ((__mmask32) __A,
- (__mmask32) __B);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kunpackw_mask32 (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask32) __builtin_ia32_kunpcksi ((__mmask32) __A,
- (__mmask32) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kunpackd (__mmask64 __A, __mmask64 __B)
-{
- return (__mmask64) __builtin_ia32_kunpckdi ((__mmask64) __A,
- (__mmask64) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kunpackd_mask64 (__mmask32 __A, __mmask32 __B)
-{
- return (__mmask64) __builtin_ia32_kunpckdi ((__mmask64) __A,
- (__mmask64) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_loadu_epi8 (__m512i __W, __mmask64 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_loaddquqi512_mask ((const char *) __P,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_loadu_epi8 (__mmask64 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_loaddquqi512_mask ((const char *) __P,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_storeu_epi8 (void *__P, __mmask64 __U, __m512i __A)
-{
- __builtin_ia32_storedquqi512_mask ((char *) __P,
- (__v64qi) __A,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sad_epu8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psadbw512 ((__v64qi) __A,
- (__v64qi) __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi16_epi8 (__m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A,
- (__v32qi) _mm256_undefined_si256(),
- (__mmask32) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A,
- (__v32qi) __O, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi16_epi8 (__mmask32 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovwb512_mask ((__v32hi) __A,
- (__v32qi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtsepi16_epi8 (__m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A,
- (__v32qi)_mm256_undefined_si256(),
- (__mmask32) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A,
- (__v32qi)__O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtsepi16_epi8 (__mmask32 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovswb512_mask ((__v32hi) __A,
- (__v32qi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtusepi16_epi8 (__m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A,
- (__v32qi)_mm256_undefined_si256(),
- (__mmask32) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi16_epi8 (__m256i __O, __mmask32 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A,
- (__v32qi) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtusepi16_epi8 (__mmask32 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovuswb512_mask ((__v32hi) __A,
- (__v32qi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcastb_epi8 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastb512_mask ((__v16qi) __A,
- (__v64qi)_mm512_undefined_epi32(),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcastb_epi8 (__m512i __O, __mmask64 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastb512_mask ((__v16qi) __A,
- (__v64qi) __O,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcastb_epi8 (__mmask64 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastb512_mask ((__v16qi) __A,
- (__v64qi)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_set1_epi8 (__m512i __O, __mmask64 __M, char __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastb512_gpr_mask (__A,
- (__v64qi) __O,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_set1_epi8 (__mmask64 __M, char __A)
-{
- return (__m512i)
- __builtin_ia32_pbroadcastb512_gpr_mask (__A,
- (__v64qi)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcastw_epi16 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastw512_mask ((__v8hi) __A,
- (__v32hi)_mm512_undefined_epi32(),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcastw_epi16 (__m512i __O, __mmask32 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastw512_mask ((__v8hi) __A,
- (__v32hi) __O,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcastw_epi16 (__mmask32 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastw512_mask ((__v8hi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_set1_epi16 (__m512i __O, __mmask32 __M, short __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastw512_gpr_mask (__A,
- (__v32hi) __O,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_set1_epi16 (__mmask32 __M, short __A)
-{
- return (__m512i)
- __builtin_ia32_pbroadcastw512_gpr_mask (__A,
- (__v32hi)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mulhrs_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulhrsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mulhrs_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulhrsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mulhrs_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulhrsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mulhi_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulhw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mulhi_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulhw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mulhi_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulhw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mulhi_epu16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulhuw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mulhi_epu16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulhuw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mulhi_epu16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulhuw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mullo_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v32hu) __A * (__v32hu) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mullo_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmullw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mullo_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmullw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi8_epi16 (__m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxbw512_mask ((__v32qi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi8_epi16 (__m512i __W, __mmask32 __U, __m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxbw512_mask ((__v32qi) __A,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi8_epi16 (__mmask32 __U, __m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxbw512_mask ((__v32qi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu8_epi16 (__m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxbw512_mask ((__v32qi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu8_epi16 (__m512i __W, __mmask32 __U, __m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxbw512_mask ((__v32qi) __A,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu8_epi16 (__mmask32 __U, __m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxbw512_mask ((__v32qi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutexvar_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_permvarhi512_mask ((__v32hi) __B,
- (__v32hi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutexvar_epi16 (__mmask32 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_permvarhi512_mask ((__v32hi) __B,
- (__v32hi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutexvar_epi16 (__m512i __W, __mmask32 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_permvarhi512_mask ((__v32hi) __B,
- (__v32hi) __A,
- (__v32hi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutex2var_epi16 (__m512i __A, __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2varhi512_mask ((__v32hi) __I
- /* idx */ ,
- (__v32hi) __A,
- (__v32hi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutex2var_epi16 (__m512i __A, __mmask32 __U,
- __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2varhi512_mask ((__v32hi) __I
- /* idx */ ,
- (__v32hi) __A,
- (__v32hi) __B,
- (__mmask32)
- __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask2_permutex2var_epi16 (__m512i __A, __m512i __I,
- __mmask32 __U, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermi2varhi512_mask ((__v32hi) __A,
- (__v32hi) __I
- /* idx */ ,
- (__v32hi) __B,
- (__mmask32)
- __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutex2var_epi16 (__mmask32 __U, __m512i __A,
- __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2varhi512_maskz ((__v32hi) __I
- /* idx */ ,
- (__v32hi) __A,
- (__v32hi) __B,
- (__mmask32)
- __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_avg_epu8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pavgb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_avg_epu8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pavgb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_avg_epu8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pavgb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_add_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v64qu) __A + (__v64qu) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_add_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_add_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sub_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v64qu) __A - (__v64qu) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sub_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sub_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_avg_epu16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pavgw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_avg_epu16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pavgw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_avg_epu16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pavgw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_subs_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_subs_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_subs_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_subs_epu8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubusb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_subs_epu8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubusb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_subs_epu8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubusb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_adds_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_adds_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_adds_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_adds_epu8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddusb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_adds_epu8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddusb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_adds_epu8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddusb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sub_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v32hu) __A - (__v32hu) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sub_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sub_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_subs_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_subs_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_subs_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_subs_epu16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubusw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_subs_epu16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubusw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_subs_epu16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubusw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_add_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v32hu) __A + (__v32hu) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_add_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_add_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_adds_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_adds_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_adds_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_adds_epu16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddusw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_adds_epu16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddusw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_adds_epu16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddusw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srl_epi16 (__m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrlw512_mask ((__v32hi) __A,
- (__v8hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srl_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrlw512_mask ((__v32hi) __A,
- (__v8hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srl_epi16 (__mmask32 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrlw512_mask ((__v32hi) __A,
- (__v8hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_packs_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_packsswb512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sll_epi16 (__m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psllw512_mask ((__v32hi) __A,
- (__v8hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sll_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m128i __B)
-{
- return (__m512i) __builtin_ia32_psllw512_mask ((__v32hi) __A,
- (__v8hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sll_epi16 (__mmask32 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psllw512_mask ((__v32hi) __A,
- (__v8hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maddubs_epi16 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_pmaddubsw512_mask ((__v64qi) __X,
- (__v64qi) __Y,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_maddubs_epi16 (__m512i __W, __mmask32 __U, __m512i __X,
- __m512i __Y)
-{
- return (__m512i) __builtin_ia32_pmaddubsw512_mask ((__v64qi) __X,
- (__v64qi) __Y,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_maddubs_epi16 (__mmask32 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_pmaddubsw512_mask ((__v64qi) __X,
- (__v64qi) __Y,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_madd_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaddwd512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_madd_epi16 (__m512i __W, __mmask16 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaddwd512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_madd_epi16 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaddwd512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpackhi_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhbw512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpackhi_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhbw512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpackhi_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhbw512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpackhi_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhwd512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpackhi_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhwd512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpackhi_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhwd512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpacklo_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpcklbw512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpacklo_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpcklbw512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpacklo_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpcklbw512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpacklo_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpcklwd512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpacklo_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpcklwd512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpacklo_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpcklwd512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpeq_epu8_mask (__m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __A,
- (__v64qi) __B, 0,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpeq_epi8_mask (__m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_pcmpeqb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpeq_epu8_mask (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __A,
- (__v64qi) __B, 0,
- __U);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpeq_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_pcmpeqb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpeq_epu16_mask (__m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __A,
- (__v32hi) __B, 0,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpeq_epi16_mask (__m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_pcmpeqw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpeq_epu16_mask (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __A,
- (__v32hi) __B, 0,
- __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpeq_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_pcmpeqw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- __U);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpgt_epu8_mask (__m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __A,
- (__v64qi) __B, 6,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpgt_epi8_mask (__m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_pcmpgtb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpgt_epu8_mask (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __A,
- (__v64qi) __B, 6,
- __U);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpgt_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_pcmpgtb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpgt_epu16_mask (__m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __A,
- (__v32hi) __B, 6,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpgt_epi16_mask (__m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_pcmpgtw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpgt_epu16_mask (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __A,
- (__v32hi) __B, 6,
- __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpgt_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_pcmpgtw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- __U);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movepi8_mask (__m512i __A)
-{
- return (__mmask64) __builtin_ia32_cvtb2mask512 ((__v64qi) __A);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movepi16_mask (__m512i __A)
-{
- return (__mmask32) __builtin_ia32_cvtw2mask512 ((__v32hi) __A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movm_epi8 (__mmask64 __A)
-{
- return (__m512i) __builtin_ia32_cvtmask2b512 (__A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movm_epi16 (__mmask32 __A)
-{
- return (__m512i) __builtin_ia32_cvtmask2w512 (__A);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_test_epi8_mask (__m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_ptestmb512 ((__v64qi) __A,
- (__v64qi) __B,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_test_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_ptestmb512 ((__v64qi) __A,
- (__v64qi) __B, __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_test_epi16_mask (__m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_ptestmw512 ((__v32hi) __A,
- (__v32hi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_test_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_ptestmw512 ((__v32hi) __A,
- (__v32hi) __B, __U);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_testn_epi8_mask (__m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_ptestnmb512 ((__v64qi) __A,
- (__v64qi) __B,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_testn_epi8_mask (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__mmask64) __builtin_ia32_ptestnmb512 ((__v64qi) __A,
- (__v64qi) __B, __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_testn_epi16_mask (__m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_ptestnmw512 ((__v32hi) __A,
- (__v32hi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_testn_epi16_mask (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__mmask32) __builtin_ia32_ptestnmw512 ((__v32hi) __A,
- (__v32hi) __B, __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shuffle_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pshufb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shuffle_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pshufb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shuffle_epi8 (__mmask64 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pshufb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_epu16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminuw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_epu16 (__mmask32 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminuw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_epu16 (__m512i __W, __mmask32 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminuw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_epi16 (__mmask32 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_epi16 (__m512i __W, __mmask32 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_epu8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxub512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_epu8 (__mmask64 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxub512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_epu8 (__m512i __W, __mmask64 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxub512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_epi8 (__mmask64 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_epi8 (__m512i __W, __mmask64 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_epu8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminub512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_epu8 (__mmask64 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminub512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_epu8 (__m512i __W, __mmask64 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminub512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_epi8 (__mmask64 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_epi8 (__m512i __W, __mmask64 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsb512_mask ((__v64qi) __A,
- (__v64qi) __B,
- (__v64qi) __W,
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_epi16 (__mmask32 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_epi16 (__m512i __W, __mmask32 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_epu16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxuw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_epu16 (__mmask32 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxuw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_epu16 (__m512i __W, __mmask32 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxuw512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sra_epi16 (__m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psraw512_mask ((__v32hi) __A,
- (__v8hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sra_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m128i __B)
-{
- return (__m512i) __builtin_ia32_psraw512_mask ((__v32hi) __A,
- (__v8hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sra_epi16 (__mmask32 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psraw512_mask ((__v32hi) __A,
- (__v8hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srav_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psrav32hi_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srav_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_psrav32hi_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srav_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psrav32hi_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srlv_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psrlv32hi_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srlv_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_psrlv32hi_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srlv_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psrlv32hi_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sllv_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psllv32hi_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sllv_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_psllv32hi_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sllv_epi16 (__mmask32 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psllv32hi_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_packs_epi16 (__m512i __W, __mmask64 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_packsswb512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v64qi) __W,
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_packs_epi16 (__mmask64 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_packsswb512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_packus_epi16 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_packuswb512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_packus_epi16 (__m512i __W, __mmask64 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_packuswb512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v64qi) __W,
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_packus_epi16 (__mmask64 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_packuswb512_mask ((__v32hi) __A,
- (__v32hi) __B,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_abs_epi8 (__m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsb512_mask ((__v64qi) __A,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_abs_epi8 (__m512i __W, __mmask64 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsb512_mask ((__v64qi) __A,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_abs_epi8 (__mmask64 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsb512_mask ((__v64qi) __A,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_abs_epi16 (__m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsw512_mask ((__v32hi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_abs_epi16 (__m512i __W, __mmask32 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsw512_mask ((__v32hi) __A,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_abs_epi16 (__mmask32 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsw512_mask ((__v32hi) __A,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpneq_epu8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 4,
- (__mmask64) __M);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmplt_epu8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 1,
- (__mmask64) __M);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpge_epu8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 5,
- (__mmask64) __M);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmple_epu8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 2,
- (__mmask64) __M);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpneq_epu16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 4,
- (__mmask32) __M);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmplt_epu16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 1,
- (__mmask32) __M);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpge_epu16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 5,
- (__mmask32) __M);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmple_epu16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 2,
- (__mmask32) __M);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpneq_epi8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 4,
- (__mmask64) __M);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmplt_epi8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 1,
- (__mmask64) __M);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpge_epi8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 5,
- (__mmask64) __M);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmple_epi8_mask (__mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 2,
- (__mmask64) __M);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpneq_epi16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 4,
- (__mmask32) __M);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmplt_epi16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 1,
- (__mmask32) __M);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpge_epi16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 5,
- (__mmask32) __M);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmple_epi16_mask (__mmask32 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 2,
- (__mmask32) __M);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpneq_epu8_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 4,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmplt_epu8_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 1,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpge_epu8_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 5,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmple_epu8_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 2,
- (__mmask64) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpneq_epu16_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 4,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmplt_epu16_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 1,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpge_epu16_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 5,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmple_epu16_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 2,
- (__mmask32) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpneq_epi8_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 4,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmplt_epi8_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 1,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpge_epi8_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 5,
- (__mmask64) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmple_epi8_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, 2,
- (__mmask64) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpneq_epi16_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 4,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmplt_epi16_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 1,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpge_epi16_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 5,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmple_epi16_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, 2,
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_packs_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_packssdw512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_packs_epi32 (__mmask32 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_packssdw512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_packs_epi32 (__m512i __W, __mmask32 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_packssdw512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v32hi) __W,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_packus_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_packusdw512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_packus_epi32 (__mmask32 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_packusdw512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_packus_epi32 (__m512i __W, __mmask32 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_packusdw512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v32hi) __W,
- __M);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kshiftli_mask32 (__mmask32 __A, unsigned int __B)
-{
- return (__mmask32) __builtin_ia32_kshiftlisi ((__mmask32) __A,
- (__mmask8) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kshiftli_mask64 (__mmask64 __A, unsigned int __B)
-{
- return (__mmask64) __builtin_ia32_kshiftlidi ((__mmask64) __A,
- (__mmask8) __B);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kshiftri_mask32 (__mmask32 __A, unsigned int __B)
-{
- return (__mmask32) __builtin_ia32_kshiftrisi ((__mmask32) __A,
- (__mmask8) __B);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kshiftri_mask64 (__mmask64 __A, unsigned int __B)
-{
- return (__mmask64) __builtin_ia32_kshiftridi ((__mmask64) __A,
- (__mmask8) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_alignr_epi8 (__m512i __A, __m512i __B, const int __N)
-{
- return (__m512i) __builtin_ia32_palignr512 ((__v8di) __A,
- (__v8di) __B, __N * 8);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_alignr_epi8 (__m512i __W, __mmask64 __U, __m512i __A,
- __m512i __B, const int __N)
-{
- return (__m512i) __builtin_ia32_palignr512_mask ((__v8di) __A,
- (__v8di) __B,
- __N * 8,
- (__v8di) __W,
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_alignr_epi8 (__mmask64 __U, __m512i __A, __m512i __B,
- const int __N)
-{
- return (__m512i) __builtin_ia32_palignr512_mask ((__v8di) __A,
- (__v8di) __B,
- __N * 8,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask64) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_dbsad_epu8 (__m512i __A, __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_dbpsadbw512_mask ((__v64qi) __A,
- (__v64qi) __B,
- __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_dbsad_epu8 (__m512i __W, __mmask32 __U, __m512i __A,
- __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_dbpsadbw512_mask ((__v64qi) __A,
- (__v64qi) __B,
- __imm,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_dbsad_epu8 (__mmask32 __U, __m512i __A, __m512i __B,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_dbpsadbw512_mask ((__v64qi) __A,
- (__v64qi) __B,
- __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srli_epi16 (__m512i __A, const int __imm)
-{
- return (__m512i) __builtin_ia32_psrlwi512_mask ((__v32hi) __A, __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srli_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_psrlwi512_mask ((__v32hi) __A, __imm,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srli_epi16 (__mmask32 __U, __m512i __A, const int __imm)
-{
- return (__m512i) __builtin_ia32_psrlwi512_mask ((__v32hi) __A, __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_slli_epi16 (__m512i __A, const int __B)
-{
- return (__m512i) __builtin_ia32_psllwi512_mask ((__v32hi) __A, __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_slli_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- const int __B)
-{
- return (__m512i) __builtin_ia32_psllwi512_mask ((__v32hi) __A, __B,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_slli_epi16 (__mmask32 __U, __m512i __A, const int __B)
-{
- return (__m512i) __builtin_ia32_psllwi512_mask ((__v32hi) __A, __B,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shufflehi_epi16 (__m512i __A, const int __imm)
-{
- return (__m512i) __builtin_ia32_pshufhw512_mask ((__v32hi) __A,
- __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shufflehi_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_pshufhw512_mask ((__v32hi) __A,
- __imm,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shufflehi_epi16 (__mmask32 __U, __m512i __A,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_pshufhw512_mask ((__v32hi) __A,
- __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shufflelo_epi16 (__m512i __A, const int __imm)
-{
- return (__m512i) __builtin_ia32_pshuflw512_mask ((__v32hi) __A,
- __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shufflelo_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_pshuflw512_mask ((__v32hi) __A,
- __imm,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shufflelo_epi16 (__mmask32 __U, __m512i __A,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_pshuflw512_mask ((__v32hi) __A,
- __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srai_epi16 (__m512i __A, const int __imm)
-{
- return (__m512i) __builtin_ia32_psrawi512_mask ((__v32hi) __A, __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srai_epi16 (__m512i __W, __mmask32 __U, __m512i __A,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_psrawi512_mask ((__v32hi) __A, __imm,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srai_epi16 (__mmask32 __U, __m512i __A, const int __imm)
-{
- return (__m512i) __builtin_ia32_psrawi512_mask ((__v32hi) __A, __imm,
- (__v32hi)
- _mm512_setzero_si512 (),
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_blend_epi16 (__mmask32 __U, __m512i __A, __m512i __W)
-{
- return (__m512i) __builtin_ia32_blendmw_512_mask ((__v32hi) __A,
- (__v32hi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_blend_epi8 (__mmask64 __U, __m512i __A, __m512i __W)
-{
- return (__m512i) __builtin_ia32_blendmb_512_mask ((__v64qi) __A,
- (__v64qi) __W,
- (__mmask64) __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_epi16_mask (__mmask32 __U, __m512i __X, __m512i __Y,
- const int __P)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, __P,
- (__mmask32) __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_epi16_mask (__m512i __X, __m512i __Y, const int __P)
-{
- return (__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, __P,
- (__mmask32) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_epi8_mask (__mmask32 __U, __m512i __X, __m512i __Y,
- const int __P)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, __P,
- (__mmask64) __U);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_epi8_mask (__m512i __X, __m512i __Y, const int __P)
-{
- return (__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, __P,
- (__mmask64) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_epu16_mask (__mmask32 __U, __m512i __X, __m512i __Y,
- const int __P)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, __P,
- (__mmask32) __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_epu16_mask (__m512i __X, __m512i __Y, const int __P)
-{
- return (__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi) __X,
- (__v32hi) __Y, __P,
- (__mmask32) -1);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_epu8_mask (__mmask32 __U, __m512i __X, __m512i __Y,
- const int __P)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, __P,
- (__mmask64) __U);
-}
-
-extern __inline __mmask64
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_epu8_mask (__m512i __X, __m512i __Y, const int __P)
-{
- return (__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi) __X,
- (__v64qi) __Y, __P,
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_bslli_epi128 (__m512i __A, const int __N)
-{
- return (__m512i) __builtin_ia32_pslldq512 (__A, __N * 8);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_bsrli_epi128 (__m512i __A, const int __N)
-{
- return (__m512i) __builtin_ia32_psrldq512 (__A, __N * 8);
-}
-
-#else
-#define _kshiftli_mask32(X, Y) \
- ((__mmask32) __builtin_ia32_kshiftlisi ((__mmask32)(X), (__mmask8)(Y)))
-
-#define _kshiftli_mask64(X, Y) \
- ((__mmask64) __builtin_ia32_kshiftlidi ((__mmask64)(X), (__mmask8)(Y)))
-
-#define _kshiftri_mask32(X, Y) \
- ((__mmask32) __builtin_ia32_kshiftrisi ((__mmask32)(X), (__mmask8)(Y)))
-
-#define _kshiftri_mask64(X, Y) \
- ((__mmask64) __builtin_ia32_kshiftridi ((__mmask64)(X), (__mmask8)(Y)))
-
-#define _mm512_alignr_epi8(X, Y, N) \
- ((__m512i) __builtin_ia32_palignr512 ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), \
- (int)(N * 8)))
-
-#define _mm512_mask_alignr_epi8(W, U, X, Y, N) \
- ((__m512i) __builtin_ia32_palignr512_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(N * 8), \
- (__v8di)(__m512i)(W), (__mmask64)(U)))
-
-#define _mm512_maskz_alignr_epi8(U, X, Y, N) \
- ((__m512i) __builtin_ia32_palignr512_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(N * 8), \
- (__v8di)(__m512i) \
- _mm512_setzero_si512 (), \
- (__mmask64)(U)))
-
-#define _mm512_dbsad_epu8(X, Y, C) \
- ((__m512i) __builtin_ia32_dbpsadbw512_mask ((__v64qi)(__m512i) (X), \
- (__v64qi)(__m512i) (Y), (int) (C), \
- (__v32hi)(__m512i) \
- _mm512_setzero_si512 (), \
- (__mmask32)-1))
-
-#define _mm512_mask_dbsad_epu8(W, U, X, Y, C) \
- ((__m512i) __builtin_ia32_dbpsadbw512_mask ((__v64qi)(__m512i) (X), \
- (__v64qi)(__m512i) (Y), (int) (C), \
- (__v32hi)(__m512i)(W), \
- (__mmask32)(U)))
-
-#define _mm512_maskz_dbsad_epu8(U, X, Y, C) \
- ((__m512i) __builtin_ia32_dbpsadbw512_mask ((__v64qi)(__m512i) (X), \
- (__v64qi)(__m512i) (Y), (int) (C), \
- (__v32hi)(__m512i) \
- _mm512_setzero_si512 (), \
- (__mmask32)(U)))
-
-#define _mm512_srli_epi16(A, B) \
- ((__m512i) __builtin_ia32_psrlwi512_mask ((__v32hi)(__m512i)(A), \
- (int)(B), (__v32hi)_mm512_setzero_si512 (), (__mmask32)-1))
-
-#define _mm512_mask_srli_epi16(W, U, A, B) \
- ((__m512i) __builtin_ia32_psrlwi512_mask ((__v32hi)(__m512i)(A), \
- (int)(B), (__v32hi)(__m512i)(W), (__mmask32)(U)))
-
-#define _mm512_maskz_srli_epi16(U, A, B) \
- ((__m512i) __builtin_ia32_psrlwi512_mask ((__v32hi)(__m512i)(A), \
- (int)(B), (__v32hi)_mm512_setzero_si512 (), (__mmask32)(U)))
-
-#define _mm512_slli_epi16(X, C) \
- ((__m512i)__builtin_ia32_psllwi512_mask ((__v32hi)(__m512i)(X), (int)(C),\
- (__v32hi)(__m512i)_mm512_setzero_si512 (), \
- (__mmask32)-1))
-
-#define _mm512_mask_slli_epi16(W, U, X, C) \
- ((__m512i)__builtin_ia32_psllwi512_mask ((__v32hi)(__m512i)(X), (int)(C),\
- (__v32hi)(__m512i)(W),\
- (__mmask32)(U)))
-
-#define _mm512_maskz_slli_epi16(U, X, C) \
- ((__m512i)__builtin_ia32_psllwi512_mask ((__v32hi)(__m512i)(X), (int)(C),\
- (__v32hi)(__m512i)_mm512_setzero_si512 (), \
- (__mmask32)(U)))
-
-#define _mm512_shufflehi_epi16(A, B) \
- ((__m512i) __builtin_ia32_pshufhw512_mask ((__v32hi)(__m512i)(A), (int)(B), \
- (__v32hi)(__m512i) \
- _mm512_setzero_si512 (), \
- (__mmask32)-1))
-
-#define _mm512_mask_shufflehi_epi16(W, U, A, B) \
- ((__m512i) __builtin_ia32_pshufhw512_mask ((__v32hi)(__m512i)(A), (int)(B), \
- (__v32hi)(__m512i)(W), \
- (__mmask32)(U)))
-
-#define _mm512_maskz_shufflehi_epi16(U, A, B) \
- ((__m512i) __builtin_ia32_pshufhw512_mask ((__v32hi)(__m512i)(A), (int)(B), \
- (__v32hi)(__m512i) \
- _mm512_setzero_si512 (), \
- (__mmask32)(U)))
-
-#define _mm512_shufflelo_epi16(A, B) \
- ((__m512i) __builtin_ia32_pshuflw512_mask ((__v32hi)(__m512i)(A), (int)(B), \
- (__v32hi)(__m512i) \
- _mm512_setzero_si512 (), \
- (__mmask32)-1))
-
-#define _mm512_mask_shufflelo_epi16(W, U, A, B) \
- ((__m512i) __builtin_ia32_pshuflw512_mask ((__v32hi)(__m512i)(A), (int)(B), \
- (__v32hi)(__m512i)(W), \
- (__mmask32)(U)))
-
-#define _mm512_maskz_shufflelo_epi16(U, A, B) \
- ((__m512i) __builtin_ia32_pshuflw512_mask ((__v32hi)(__m512i)(A), (int)(B), \
- (__v32hi)(__m512i) \
- _mm512_setzero_si512 (), \
- (__mmask32)(U)))
-
-#define _mm512_srai_epi16(A, B) \
- ((__m512i) __builtin_ia32_psrawi512_mask ((__v32hi)(__m512i)(A), \
- (int)(B), (__v32hi)_mm512_setzero_si512 (), (__mmask32)-1))
-
-#define _mm512_mask_srai_epi16(W, U, A, B) \
- ((__m512i) __builtin_ia32_psrawi512_mask ((__v32hi)(__m512i)(A), \
- (int)(B), (__v32hi)(__m512i)(W), (__mmask32)(U)))
-
-#define _mm512_maskz_srai_epi16(U, A, B) \
- ((__m512i) __builtin_ia32_psrawi512_mask ((__v32hi)(__m512i)(A), \
- (int)(B), (__v32hi)_mm512_setzero_si512 (), (__mmask32)(U)))
-
-#define _mm512_mask_blend_epi16(__U, __A, __W) \
- ((__m512i) __builtin_ia32_blendmw_512_mask ((__v32hi) (__A), \
- (__v32hi) (__W), \
- (__mmask32) (__U)))
-
-#define _mm512_mask_blend_epi8(__U, __A, __W) \
- ((__m512i) __builtin_ia32_blendmb_512_mask ((__v64qi) (__A), \
- (__v64qi) (__W), \
- (__mmask64) (__U)))
-
-#define _mm512_cmp_epi16_mask(X, Y, P) \
- ((__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi)(__m512i)(X), \
- (__v32hi)(__m512i)(Y), (int)(P),\
- (__mmask32)(-1)))
-
-#define _mm512_cmp_epi8_mask(X, Y, P) \
- ((__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi)(__m512i)(X), \
- (__v64qi)(__m512i)(Y), (int)(P),\
- (__mmask64)(-1)))
-
-#define _mm512_cmp_epu16_mask(X, Y, P) \
- ((__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi)(__m512i)(X), \
- (__v32hi)(__m512i)(Y), (int)(P),\
- (__mmask32)(-1)))
-
-#define _mm512_cmp_epu8_mask(X, Y, P) \
- ((__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi)(__m512i)(X), \
- (__v64qi)(__m512i)(Y), (int)(P),\
- (__mmask64)(-1)))
-
-#define _mm512_mask_cmp_epi16_mask(M, X, Y, P) \
- ((__mmask32) __builtin_ia32_cmpw512_mask ((__v32hi)(__m512i)(X), \
- (__v32hi)(__m512i)(Y), (int)(P),\
- (__mmask32)(M)))
-
-#define _mm512_mask_cmp_epi8_mask(M, X, Y, P) \
- ((__mmask64) __builtin_ia32_cmpb512_mask ((__v64qi)(__m512i)(X), \
- (__v64qi)(__m512i)(Y), (int)(P),\
- (__mmask64)(M)))
-
-#define _mm512_mask_cmp_epu16_mask(M, X, Y, P) \
- ((__mmask32) __builtin_ia32_ucmpw512_mask ((__v32hi)(__m512i)(X), \
- (__v32hi)(__m512i)(Y), (int)(P),\
- (__mmask32)(M)))
-
-#define _mm512_mask_cmp_epu8_mask(M, X, Y, P) \
- ((__mmask64) __builtin_ia32_ucmpb512_mask ((__v64qi)(__m512i)(X), \
- (__v64qi)(__m512i)(Y), (int)(P),\
- (__mmask64)(M)))
-
-#define _mm512_bslli_epi128(A, N) \
- ((__m512i)__builtin_ia32_pslldq512 ((__m512i)(A), (int)(N) * 8))
-
-#define _mm512_bsrli_epi128(A, N) \
- ((__m512i)__builtin_ia32_psrldq512 ((__m512i)(A), (int)(N) * 8))
-
-#endif
-
-#ifdef __DISABLE_AVX512BW__
-#undef __DISABLE_AVX512BW__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512BW__ */
-
-#endif /* _AVX512BWINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512cdintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512cdintrin.h
deleted file mode 100644
index 7fc5851cf1..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512cdintrin.h
+++ /dev/null
@@ -1,184 +0,0 @@
-/* Copyright (C) 2013-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512CDINTRIN_H_INCLUDED
-#define _AVX512CDINTRIN_H_INCLUDED
-
-#ifndef __AVX512CD__
-#pragma GCC push_options
-//#pragma GCC target("avx512cd")
-#define __DISABLE_AVX512CD__
-#endif /* __AVX512CD__ */
-
-/* Internal data types for implementing the intrinsics. */
-typedef long long __v8di __attribute__ ((__vector_size__ (64)));
-typedef int __v16si __attribute__ ((__vector_size__ (64)));
-
-/* The Intel API is flexible enough that we must allow aliasing with other
- vector types, and their scalar components. */
-typedef long long __m512i __attribute__ ((__vector_size__ (64), __may_alias__));
-typedef double __m512d __attribute__ ((__vector_size__ (64), __may_alias__));
-
-typedef unsigned char __mmask8;
-typedef unsigned short __mmask16;
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_conflict_epi32 (__m512i __A)
-{
- return (__m512i)
- __builtin_ia32_vpconflictsi_512_mask ((__v16si) __A,
- (__v16si) _mm512_setzero_si512 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_conflict_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_vpconflictsi_512_mask ((__v16si) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_conflict_epi32 (__mmask16 __U, __m512i __A)
-{
- return (__m512i)
- __builtin_ia32_vpconflictsi_512_mask ((__v16si) __A,
- (__v16si) _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_conflict_epi64 (__m512i __A)
-{
- return (__m512i)
- __builtin_ia32_vpconflictdi_512_mask ((__v8di) __A,
- (__v8di) _mm512_setzero_si512 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_conflict_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_vpconflictdi_512_mask ((__v8di) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_conflict_epi64 (__mmask8 __U, __m512i __A)
-{
- return (__m512i)
- __builtin_ia32_vpconflictdi_512_mask ((__v8di) __A,
- (__v8di) _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_lzcnt_epi64 (__m512i __A)
-{
- return (__m512i)
- __builtin_ia32_vplzcntq_512_mask ((__v8di) __A,
- (__v8di) _mm512_setzero_si512 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_lzcnt_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_vplzcntq_512_mask ((__v8di) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_lzcnt_epi64 (__mmask8 __U, __m512i __A)
-{
- return (__m512i)
- __builtin_ia32_vplzcntq_512_mask ((__v8di) __A,
- (__v8di) _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_lzcnt_epi32 (__m512i __A)
-{
- return (__m512i)
- __builtin_ia32_vplzcntd_512_mask ((__v16si) __A,
- (__v16si) _mm512_setzero_si512 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_lzcnt_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_vplzcntd_512_mask ((__v16si) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_lzcnt_epi32 (__mmask16 __U, __m512i __A)
-{
- return (__m512i)
- __builtin_ia32_vplzcntd_512_mask ((__v16si) __A,
- (__v16si) _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcastmb_epi64 (__mmask8 __A)
-{
- return (__m512i) __builtin_ia32_broadcastmb512 (__A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcastmw_epi32 (__mmask16 __A)
-{
- return (__m512i) __builtin_ia32_broadcastmw512 (__A);
-}
-
-#ifdef __DISABLE_AVX512CD__
-#undef __DISABLE_AVX512CD__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512CD__ */
-
-#endif /* _AVX512CDINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512dqintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512dqintrin.h
deleted file mode 100644
index 8da9478f5f..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512dqintrin.h
+++ /dev/null
@@ -1,2466 +0,0 @@
-/* Copyright (C) 2014-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512DQINTRIN_H_INCLUDED
-#define _AVX512DQINTRIN_H_INCLUDED
-
-#ifndef __AVX512DQ__
-#pragma GCC push_options
-//#pragma GCC target("avx512dq")
-#define __DISABLE_AVX512DQ__
-#endif /* __AVX512DQ__ */
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktest_mask8_u8 (__mmask8 __A, __mmask8 __B, unsigned char *__CF)
-{
- *__CF = (unsigned char) __builtin_ia32_ktestcqi (__A, __B);
- return (unsigned char) __builtin_ia32_ktestzqi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktestz_mask8_u8 (__mmask8 __A, __mmask8 __B)
-{
- return (unsigned char) __builtin_ia32_ktestzqi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktestc_mask8_u8 (__mmask8 __A, __mmask8 __B)
-{
- return (unsigned char) __builtin_ia32_ktestcqi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktest_mask16_u8 (__mmask16 __A, __mmask16 __B, unsigned char *__CF)
-{
- *__CF = (unsigned char) __builtin_ia32_ktestchi (__A, __B);
- return (unsigned char) __builtin_ia32_ktestzhi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktestz_mask16_u8 (__mmask16 __A, __mmask16 __B)
-{
- return (unsigned char) __builtin_ia32_ktestzhi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_ktestc_mask16_u8 (__mmask16 __A, __mmask16 __B)
-{
- return (unsigned char) __builtin_ia32_ktestchi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortest_mask8_u8 (__mmask8 __A, __mmask8 __B, unsigned char *__CF)
-{
- *__CF = (unsigned char) __builtin_ia32_kortestcqi (__A, __B);
- return (unsigned char) __builtin_ia32_kortestzqi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortestz_mask8_u8 (__mmask8 __A, __mmask8 __B)
-{
- return (unsigned char) __builtin_ia32_kortestzqi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortestc_mask8_u8 (__mmask8 __A, __mmask8 __B)
-{
- return (unsigned char) __builtin_ia32_kortestcqi (__A, __B);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kadd_mask8 (__mmask8 __A, __mmask8 __B)
-{
- return (__mmask8) __builtin_ia32_kaddqi ((__mmask8) __A, (__mmask8) __B);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kadd_mask16 (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask16) __builtin_ia32_kaddhi ((__mmask16) __A, (__mmask16) __B);
-}
-
-extern __inline unsigned int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_cvtmask8_u32 (__mmask8 __A)
-{
- return (unsigned int) __builtin_ia32_kmovb ((__mmask8 ) __A);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_cvtu32_mask8 (unsigned int __A)
-{
- return (__mmask8) __builtin_ia32_kmovb ((__mmask8) __A);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_load_mask8 (__mmask8 *__A)
-{
- return (__mmask8) __builtin_ia32_kmovb (*(__mmask8 *) __A);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_store_mask8 (__mmask8 *__A, __mmask8 __B)
-{
- *(__mmask8 *) __A = __builtin_ia32_kmovb (__B);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_knot_mask8 (__mmask8 __A)
-{
- return (__mmask8) __builtin_ia32_knotqi ((__mmask8) __A);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kor_mask8 (__mmask8 __A, __mmask8 __B)
-{
- return (__mmask8) __builtin_ia32_korqi ((__mmask8) __A, (__mmask8) __B);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kxnor_mask8 (__mmask8 __A, __mmask8 __B)
-{
- return (__mmask8) __builtin_ia32_kxnorqi ((__mmask8) __A, (__mmask8) __B);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kxor_mask8 (__mmask8 __A, __mmask8 __B)
-{
- return (__mmask8) __builtin_ia32_kxorqi ((__mmask8) __A, (__mmask8) __B);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kand_mask8 (__mmask8 __A, __mmask8 __B)
-{
- return (__mmask8) __builtin_ia32_kandqi ((__mmask8) __A, (__mmask8) __B);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kandn_mask8 (__mmask8 __A, __mmask8 __B)
-{
- return (__mmask8) __builtin_ia32_kandnqi ((__mmask8) __A, (__mmask8) __B);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_f64x2 (__m128d __A)
-{
- return (__m512d)
- __builtin_ia32_broadcastf64x2_512_mask ((__v2df) __A,
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_f64x2 (__m512d __O, __mmask8 __M, __m128d __A)
-{
- return (__m512d) __builtin_ia32_broadcastf64x2_512_mask ((__v2df)
- __A,
- (__v8df)
- __O, __M);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_f64x2 (__mmask8 __M, __m128d __A)
-{
- return (__m512d) __builtin_ia32_broadcastf64x2_512_mask ((__v2df)
- __A,
- (__v8df)
- _mm512_setzero_ps (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_i64x2 (__m128i __A)
-{
- return (__m512i)
- __builtin_ia32_broadcasti64x2_512_mask ((__v2di) __A,
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_i64x2 (__m512i __O, __mmask8 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti64x2_512_mask ((__v2di)
- __A,
- (__v8di)
- __O, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_i64x2 (__mmask8 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti64x2_512_mask ((__v2di)
- __A,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_f32x2 (__m128 __A)
-{
- return (__m512)
- __builtin_ia32_broadcastf32x2_512_mask ((__v4sf) __A,
- (__v16sf)_mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_f32x2 (__m512 __O, __mmask16 __M, __m128 __A)
-{
- return (__m512) __builtin_ia32_broadcastf32x2_512_mask ((__v4sf) __A,
- (__v16sf)
- __O, __M);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_f32x2 (__mmask16 __M, __m128 __A)
-{
- return (__m512) __builtin_ia32_broadcastf32x2_512_mask ((__v4sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_i32x2 (__m128i __A)
-{
- return (__m512i)
- __builtin_ia32_broadcasti32x2_512_mask ((__v4si) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_i32x2 (__m512i __O, __mmask16 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti32x2_512_mask ((__v4si)
- __A,
- (__v16si)
- __O, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_i32x2 (__mmask16 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti32x2_512_mask ((__v4si)
- __A,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_f32x8 (__m256 __A)
-{
- return (__m512)
- __builtin_ia32_broadcastf32x8_512_mask ((__v8sf) __A,
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_f32x8 (__m512 __O, __mmask16 __M, __m256 __A)
-{
- return (__m512) __builtin_ia32_broadcastf32x8_512_mask ((__v8sf) __A,
- (__v16sf)__O,
- __M);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_f32x8 (__mmask16 __M, __m256 __A)
-{
- return (__m512) __builtin_ia32_broadcastf32x8_512_mask ((__v8sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_i32x8 (__m256i __A)
-{
- return (__m512i)
- __builtin_ia32_broadcasti32x8_512_mask ((__v8si) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_i32x8 (__m512i __O, __mmask16 __M, __m256i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti32x8_512_mask ((__v8si)
- __A,
- (__v16si)__O,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_i32x8 (__mmask16 __M, __m256i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti32x8_512_mask ((__v8si)
- __A,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mullo_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v8du) __A * (__v8du) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mullo_epi64 (__m512i __W, __mmask8 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmullq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mullo_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmullq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_xor_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_xorpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_xor_pd (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B)
-{
- return (__m512d) __builtin_ia32_xorpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_xor_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_xorpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_xor_ps (__m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_xorps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_xor_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_xorps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_xor_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_xorps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_or_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_orpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_or_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_orpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_or_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_orpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_or_ps (__m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_orps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_or_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_orps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_or_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_orps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_and_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_andpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_and_pd (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B)
-{
- return (__m512d) __builtin_ia32_andpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_and_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_andpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_and_ps (__m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_andps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_and_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_andps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_and_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_andps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_andnot_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_andnpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_andnot_pd (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B)
-{
- return (__m512d) __builtin_ia32_andnpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_andnot_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_andnpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_andnot_ps (__m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_andnps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_andnot_ps (__m512 __W, __mmask16 __U, __m512 __A,
- __m512 __B)
-{
- return (__m512) __builtin_ia32_andnps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_andnot_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_andnps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movepi32_mask (__m512i __A)
-{
- return (__mmask16) __builtin_ia32_cvtd2mask512 ((__v16si) __A);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movepi64_mask (__m512i __A)
-{
- return (__mmask8) __builtin_ia32_cvtq2mask512 ((__v8di) __A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movm_epi32 (__mmask16 __A)
-{
- return (__m512i) __builtin_ia32_cvtmask2d512 (__A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movm_epi64 (__mmask8 __A)
-{
- return (__m512i) __builtin_ia32_cvtmask2q512 (__A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvttpd_epi64 (__m512d __A)
-{
- return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvttpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A)
-{
- return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A,
- (__v8di) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvttpd_epi64 (__mmask8 __U, __m512d __A)
-{
- return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvttpd_epu64 (__m512d __A)
-{
- return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvttpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A)
-{
- return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A,
- (__v8di) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvttpd_epu64 (__mmask8 __U, __m512d __A)
-{
- return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvttps_epi64 (__m256 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvttps_epi64 (__m512i __W, __mmask8 __U, __m256 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A,
- (__v8di) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvttps_epi64 (__mmask8 __U, __m256 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvttps_epu64 (__m256 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvttps_epu64 (__m512i __W, __mmask8 __U, __m256 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A,
- (__v8di) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvttps_epu64 (__mmask8 __U, __m256 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtpd_epi64 (__m512d __A)
-{
- return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A)
-{
- return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A,
- (__v8di) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtpd_epi64 (__mmask8 __U, __m512d __A)
-{
- return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtpd_epu64 (__m512d __A)
-{
- return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A)
-{
- return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A,
- (__v8di) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtpd_epu64 (__mmask8 __U, __m512d __A)
-{
- return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtps_epi64 (__m256 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtps_epi64 (__m512i __W, __mmask8 __U, __m256 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A,
- (__v8di) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtps_epi64 (__mmask8 __U, __m256 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtps_epu64 (__m256 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtps_epu64 (__m512i __W, __mmask8 __U, __m256 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A,
- (__v8di) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtps_epu64 (__mmask8 __U, __m256 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi64_ps (__m512i __A)
-{
- return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi64_ps (__m256 __W, __mmask8 __U, __m512i __A)
-{
- return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A,
- (__v8sf) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi64_ps (__mmask8 __U, __m512i __A)
-{
- return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu64_ps (__m512i __A)
-{
- return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu64_ps (__m256 __W, __mmask8 __U, __m512i __A)
-{
- return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A,
- (__v8sf) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu64_ps (__mmask8 __U, __m512i __A)
-{
- return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi64_pd (__m512i __A)
-{
- return (__m512d) __builtin_ia32_cvtqq2pd512_mask ((__v8di) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi64_pd (__m512d __W, __mmask8 __U, __m512i __A)
-{
- return (__m512d) __builtin_ia32_cvtqq2pd512_mask ((__v8di) __A,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi64_pd (__mmask8 __U, __m512i __A)
-{
- return (__m512d) __builtin_ia32_cvtqq2pd512_mask ((__v8di) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu64_pd (__m512i __A)
-{
- return (__m512d) __builtin_ia32_cvtuqq2pd512_mask ((__v8di) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu64_pd (__m512d __W, __mmask8 __U, __m512i __A)
-{
- return (__m512d) __builtin_ia32_cvtuqq2pd512_mask ((__v8di) __A,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu64_pd (__mmask8 __U, __m512i __A)
-{
- return (__m512d) __builtin_ia32_cvtuqq2pd512_mask ((__v8di) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kshiftli_mask8 (__mmask8 __A, unsigned int __B)
-{
- return (__mmask8) __builtin_ia32_kshiftliqi ((__mmask8) __A, (__mmask8) __B);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kshiftri_mask8 (__mmask8 __A, unsigned int __B)
-{
- return (__mmask8) __builtin_ia32_kshiftriqi ((__mmask8) __A, (__mmask8) __B);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_range_pd (__m512d __A, __m512d __B, int __C)
-{
- return (__m512d) __builtin_ia32_rangepd512_mask ((__v8df) __A,
- (__v8df) __B, __C,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_range_pd (__m512d __W, __mmask8 __U,
- __m512d __A, __m512d __B, int __C)
-{
- return (__m512d) __builtin_ia32_rangepd512_mask ((__v8df) __A,
- (__v8df) __B, __C,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_range_pd (__mmask8 __U, __m512d __A, __m512d __B, int __C)
-{
- return (__m512d) __builtin_ia32_rangepd512_mask ((__v8df) __A,
- (__v8df) __B, __C,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_range_ps (__m512 __A, __m512 __B, int __C)
-{
- return (__m512) __builtin_ia32_rangeps512_mask ((__v16sf) __A,
- (__v16sf) __B, __C,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_range_ps (__m512 __W, __mmask16 __U,
- __m512 __A, __m512 __B, int __C)
-{
- return (__m512) __builtin_ia32_rangeps512_mask ((__v16sf) __A,
- (__v16sf) __B, __C,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_range_ps (__mmask16 __U, __m512 __A, __m512 __B, int __C)
-{
- return (__m512) __builtin_ia32_rangeps512_mask ((__v16sf) __A,
- (__v16sf) __B, __C,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_reduce_sd (__m128d __A, __m128d __B, int __C)
-{
- return (__m128d) __builtin_ia32_reducesd ((__v2df) __A,
- (__v2df) __B, __C);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_reduce_ss (__m128 __A, __m128 __B, int __C)
-{
- return (__m128) __builtin_ia32_reducess ((__v4sf) __A,
- (__v4sf) __B, __C);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_range_sd (__m128d __A, __m128d __B, int __C)
-{
- return (__m128d) __builtin_ia32_rangesd128_round ((__v2df) __A,
- (__v2df) __B, __C,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_range_ss (__m128 __A, __m128 __B, int __C)
-{
- return (__m128) __builtin_ia32_rangess128_round ((__v4sf) __A,
- (__v4sf) __B, __C,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_range_round_sd (__m128d __A, __m128d __B, int __C, const int __R)
-{
- return (__m128d) __builtin_ia32_rangesd128_round ((__v2df) __A,
- (__v2df) __B, __C,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_range_round_ss (__m128 __A, __m128 __B, int __C, const int __R)
-{
- return (__m128) __builtin_ia32_rangess128_round ((__v4sf) __A,
- (__v4sf) __B, __C,
- __R);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fpclass_ss_mask (__m128 __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclassss ((__v4sf) __A, __imm);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fpclass_sd_mask (__m128d __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclasssd ((__v2df) __A, __imm);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtt_roundpd_epi64 (__m512d __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtt_roundpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A,
- (__v8di) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtt_roundpd_epi64 (__mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttpd2qq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtt_roundpd_epu64 (__m512d __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtt_roundpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A,
- (__v8di) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtt_roundpd_epu64 (__mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttpd2uqq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtt_roundps_epi64 (__m256 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtt_roundps_epi64 (__m512i __W, __mmask8 __U, __m256 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A,
- (__v8di) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtt_roundps_epi64 (__mmask8 __U, __m256 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2qq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtt_roundps_epu64 (__m256 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtt_roundps_epu64 (__m512i __W, __mmask8 __U, __m256 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A,
- (__v8di) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtt_roundps_epu64 (__mmask8 __U, __m256 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2uqq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundpd_epi64 (__m512d __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundpd_epi64 (__m512i __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A,
- (__v8di) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundpd_epi64 (__mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtpd2qq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundpd_epu64 (__m512d __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundpd_epu64 (__m512i __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A,
- (__v8di) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundpd_epu64 (__mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtpd2uqq512_mask ((__v8df) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundps_epi64 (__m256 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundps_epi64 (__m512i __W, __mmask8 __U, __m256 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A,
- (__v8di) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundps_epi64 (__mmask8 __U, __m256 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2qq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundps_epu64 (__m256 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundps_epu64 (__m512i __W, __mmask8 __U, __m256 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A,
- (__v8di) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundps_epu64 (__mmask8 __U, __m256 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2uqq512_mask ((__v8sf) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundepi64_ps (__m512i __A, const int __R)
-{
- return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundepi64_ps (__m256 __W, __mmask8 __U, __m512i __A,
- const int __R)
-{
- return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A,
- (__v8sf) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundepi64_ps (__mmask8 __U, __m512i __A,
- const int __R)
-{
- return (__m256) __builtin_ia32_cvtqq2ps512_mask ((__v8di) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundepu64_ps (__m512i __A, const int __R)
-{
- return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundepu64_ps (__m256 __W, __mmask8 __U, __m512i __A,
- const int __R)
-{
- return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A,
- (__v8sf) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundepu64_ps (__mmask8 __U, __m512i __A,
- const int __R)
-{
- return (__m256) __builtin_ia32_cvtuqq2ps512_mask ((__v8di) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundepi64_pd (__m512i __A, const int __R)
-{
- return (__m512d) __builtin_ia32_cvtqq2pd512_mask ((__v8di) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundepi64_pd (__m512d __W, __mmask8 __U, __m512i __A,
- const int __R)
-{
- return (__m512d) __builtin_ia32_cvtqq2pd512_mask ((__v8di) __A,
- (__v8df) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundepi64_pd (__mmask8 __U, __m512i __A,
- const int __R)
-{
- return (__m512d) __builtin_ia32_cvtqq2pd512_mask ((__v8di) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundepu64_pd (__m512i __A, const int __R)
-{
- return (__m512d) __builtin_ia32_cvtuqq2pd512_mask ((__v8di) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundepu64_pd (__m512d __W, __mmask8 __U, __m512i __A,
- const int __R)
-{
- return (__m512d) __builtin_ia32_cvtuqq2pd512_mask ((__v8di) __A,
- (__v8df) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundepu64_pd (__mmask8 __U, __m512i __A,
- const int __R)
-{
- return (__m512d) __builtin_ia32_cvtuqq2pd512_mask ((__v8di) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_pd (__m512d __A, int __B)
-{
- return (__m512d) __builtin_ia32_reducepd512_mask ((__v8df) __A, __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_pd (__m512d __W, __mmask8 __U, __m512d __A, int __B)
-{
- return (__m512d) __builtin_ia32_reducepd512_mask ((__v8df) __A, __B,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_reduce_pd (__mmask8 __U, __m512d __A, int __B)
-{
- return (__m512d) __builtin_ia32_reducepd512_mask ((__v8df) __A, __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_ps (__m512 __A, int __B)
-{
- return (__m512) __builtin_ia32_reduceps512_mask ((__v16sf) __A, __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_ps (__m512 __W, __mmask16 __U, __m512 __A, int __B)
-{
- return (__m512) __builtin_ia32_reduceps512_mask ((__v16sf) __A, __B,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_reduce_ps (__mmask16 __U, __m512 __A, int __B)
-{
- return (__m512) __builtin_ia32_reduceps512_mask ((__v16sf) __A, __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_extractf32x8_ps (__m512 __A, const int __imm)
-{
- return (__m256) __builtin_ia32_extractf32x8_mask ((__v16sf) __A,
- __imm,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_extractf32x8_ps (__m256 __W, __mmask8 __U, __m512 __A,
- const int __imm)
-{
- return (__m256) __builtin_ia32_extractf32x8_mask ((__v16sf) __A,
- __imm,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_extractf32x8_ps (__mmask8 __U, __m512 __A,
- const int __imm)
-{
- return (__m256) __builtin_ia32_extractf32x8_mask ((__v16sf) __A,
- __imm,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_extractf64x2_pd (__m512d __A, const int __imm)
-{
- return (__m128d) __builtin_ia32_extractf64x2_512_mask ((__v8df) __A,
- __imm,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_extractf64x2_pd (__m128d __W, __mmask8 __U, __m512d __A,
- const int __imm)
-{
- return (__m128d) __builtin_ia32_extractf64x2_512_mask ((__v8df) __A,
- __imm,
- (__v2df) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_extractf64x2_pd (__mmask8 __U, __m512d __A,
- const int __imm)
-{
- return (__m128d) __builtin_ia32_extractf64x2_512_mask ((__v8df) __A,
- __imm,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_extracti32x8_epi32 (__m512i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_extracti32x8_mask ((__v16si) __A,
- __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_extracti32x8_epi32 (__m256i __W, __mmask8 __U, __m512i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_extracti32x8_mask ((__v16si) __A,
- __imm,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_extracti32x8_epi32 (__mmask8 __U, __m512i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_extracti32x8_mask ((__v16si) __A,
- __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_extracti64x2_epi64 (__m512i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti64x2_512_mask ((__v8di) __A,
- __imm,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_extracti64x2_epi64 (__m128i __W, __mmask8 __U, __m512i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti64x2_512_mask ((__v8di) __A,
- __imm,
- (__v2di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_extracti64x2_epi64 (__mmask8 __U, __m512i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti64x2_512_mask ((__v8di) __A,
- __imm,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_range_round_pd (__m512d __A, __m512d __B, int __C,
- const int __R)
-{
- return (__m512d) __builtin_ia32_rangepd512_mask ((__v8df) __A,
- (__v8df) __B, __C,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_range_round_pd (__m512d __W, __mmask8 __U,
- __m512d __A, __m512d __B, int __C,
- const int __R)
-{
- return (__m512d) __builtin_ia32_rangepd512_mask ((__v8df) __A,
- (__v8df) __B, __C,
- (__v8df) __W,
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_range_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- int __C, const int __R)
-{
- return (__m512d) __builtin_ia32_rangepd512_mask ((__v8df) __A,
- (__v8df) __B, __C,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_range_round_ps (__m512 __A, __m512 __B, int __C, const int __R)
-{
- return (__m512) __builtin_ia32_rangeps512_mask ((__v16sf) __A,
- (__v16sf) __B, __C,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) -1,
- __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_range_round_ps (__m512 __W, __mmask16 __U,
- __m512 __A, __m512 __B, int __C,
- const int __R)
-{
- return (__m512) __builtin_ia32_rangeps512_mask ((__v16sf) __A,
- (__v16sf) __B, __C,
- (__v16sf) __W,
- (__mmask16) __U,
- __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_range_round_ps (__mmask16 __U, __m512 __A, __m512 __B,
- int __C, const int __R)
-{
- return (__m512) __builtin_ia32_rangeps512_mask ((__v16sf) __A,
- (__v16sf) __B, __C,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_inserti32x8 (__m512i __A, __m256i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti32x8_mask ((__v16si) __A,
- (__v8si) __B,
- __imm,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_inserti32x8 (__m512i __W, __mmask16 __U, __m512i __A,
- __m256i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti32x8_mask ((__v16si) __A,
- (__v8si) __B,
- __imm,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_inserti32x8 (__mmask16 __U, __m512i __A, __m256i __B,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti32x8_mask ((__v16si) __A,
- (__v8si) __B,
- __imm,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_insertf32x8 (__m512 __A, __m256 __B, const int __imm)
-{
- return (__m512) __builtin_ia32_insertf32x8_mask ((__v16sf) __A,
- (__v8sf) __B,
- __imm,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_insertf32x8 (__m512 __W, __mmask16 __U, __m512 __A,
- __m256 __B, const int __imm)
-{
- return (__m512) __builtin_ia32_insertf32x8_mask ((__v16sf) __A,
- (__v8sf) __B,
- __imm,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_insertf32x8 (__mmask16 __U, __m512 __A, __m256 __B,
- const int __imm)
-{
- return (__m512) __builtin_ia32_insertf32x8_mask ((__v16sf) __A,
- (__v8sf) __B,
- __imm,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_inserti64x2 (__m512i __A, __m128i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti64x2_512_mask ((__v8di) __A,
- (__v2di) __B,
- __imm,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_inserti64x2 (__m512i __W, __mmask8 __U, __m512i __A,
- __m128i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti64x2_512_mask ((__v8di) __A,
- (__v2di) __B,
- __imm,
- (__v8di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_inserti64x2 (__mmask8 __U, __m512i __A, __m128i __B,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti64x2_512_mask ((__v8di) __A,
- (__v2di) __B,
- __imm,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_insertf64x2 (__m512d __A, __m128d __B, const int __imm)
-{
- return (__m512d) __builtin_ia32_insertf64x2_512_mask ((__v8df) __A,
- (__v2df) __B,
- __imm,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_insertf64x2 (__m512d __W, __mmask8 __U, __m512d __A,
- __m128d __B, const int __imm)
-{
- return (__m512d) __builtin_ia32_insertf64x2_512_mask ((__v8df) __A,
- (__v2df) __B,
- __imm,
- (__v8df) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_insertf64x2 (__mmask8 __U, __m512d __A, __m128d __B,
- const int __imm)
-{
- return (__m512d) __builtin_ia32_insertf64x2_512_mask ((__v8df) __A,
- (__v2df) __B,
- __imm,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8)
- __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fpclass_pd_mask (__mmask8 __U, __m512d __A,
- const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclasspd512_mask ((__v8df) __A,
- __imm, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fpclass_pd_mask (__m512d __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclasspd512_mask ((__v8df) __A,
- __imm,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fpclass_ps_mask (__mmask16 __U, __m512 __A,
- const int __imm)
-{
- return (__mmask16) __builtin_ia32_fpclassps512_mask ((__v16sf) __A,
- __imm, __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fpclass_ps_mask (__m512 __A, const int __imm)
-{
- return (__mmask16) __builtin_ia32_fpclassps512_mask ((__v16sf) __A,
- __imm,
- (__mmask16) -1);
-}
-
-#else
-#define _kshiftli_mask8(X, Y) \
- ((__mmask8) __builtin_ia32_kshiftliqi ((__mmask8)(X), (__mmask8)(Y)))
-
-#define _kshiftri_mask8(X, Y) \
- ((__mmask8) __builtin_ia32_kshiftriqi ((__mmask8)(X), (__mmask8)(Y)))
-
-#define _mm_range_sd(A, B, C) \
- ((__m128d) __builtin_ia32_rangesd128_round ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C), \
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_range_ss(A, B, C) \
- ((__m128) __builtin_ia32_rangess128_round ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(B), (int)(C), \
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_range_round_sd(A, B, C, R) \
- ((__m128d) __builtin_ia32_rangesd128_round ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C), (R)))
-
-#define _mm_range_round_ss(A, B, C, R) \
- ((__m128) __builtin_ia32_rangess128_round ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(B), (int)(C), (R)))
-
-#define _mm512_cvtt_roundpd_epi64(A, B) \
- ((__m512i)__builtin_ia32_cvttpd2qq512_mask ((A), (__v8di) \
- _mm512_setzero_si512 (), \
- -1, (B)))
-
-#define _mm512_mask_cvtt_roundpd_epi64(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvttpd2qq512_mask ((A), (__v8di)(W), (U), (B)))
-
-#define _mm512_maskz_cvtt_roundpd_epi64(U, A, B) \
- ((__m512i)__builtin_ia32_cvttpd2qq512_mask ((A), (__v8di)_mm512_setzero_si512 (), (U), (B)))
-
-#define _mm512_cvtt_roundpd_epu64(A, B) \
- ((__m512i)__builtin_ia32_cvttpd2uqq512_mask ((A), (__v8di)_mm512_setzero_si512 (), -1, (B)))
-
-#define _mm512_mask_cvtt_roundpd_epu64(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvttpd2uqq512_mask ((A), (__v8di)(W), (U), (B)))
-
-#define _mm512_maskz_cvtt_roundpd_epu64(U, A, B) \
- ((__m512i)__builtin_ia32_cvttpd2uqq512_mask ((A), (__v8di)_mm512_setzero_si512 (), (U), (B)))
-
-#define _mm512_cvtt_roundps_epi64(A, B) \
- ((__m512i)__builtin_ia32_cvttps2qq512_mask ((A), (__v8di)_mm512_setzero_si512 (), -1, (B)))
-
-#define _mm512_mask_cvtt_roundps_epi64(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvttps2qq512_mask ((A), (__v8di)(W), (U), (B)))
-
-#define _mm512_maskz_cvtt_roundps_epi64(U, A, B) \
- ((__m512i)__builtin_ia32_cvttps2qq512_mask ((A), (__v8di)_mm512_setzero_si512 (), (U), (B)))
-
-#define _mm512_cvtt_roundps_epu64(A, B) \
- ((__m512i)__builtin_ia32_cvttps2uqq512_mask ((A), (__v8di)_mm512_setzero_si512 (), -1, (B)))
-
-#define _mm512_mask_cvtt_roundps_epu64(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvttps2uqq512_mask ((A), (__v8di)(W), (U), (B)))
-
-#define _mm512_maskz_cvtt_roundps_epu64(U, A, B) \
- ((__m512i)__builtin_ia32_cvttps2uqq512_mask ((A), (__v8di)_mm512_setzero_si512 (), (U), (B)))
-
-#define _mm512_cvt_roundpd_epi64(A, B) \
- ((__m512i)__builtin_ia32_cvtpd2qq512_mask ((A), (__v8di)_mm512_setzero_si512 (), -1, (B)))
-
-#define _mm512_mask_cvt_roundpd_epi64(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvtpd2qq512_mask ((A), (__v8di)(W), (U), (B)))
-
-#define _mm512_maskz_cvt_roundpd_epi64(U, A, B) \
- ((__m512i)__builtin_ia32_cvtpd2qq512_mask ((A), (__v8di)_mm512_setzero_si512 (), (U), (B)))
-
-#define _mm512_cvt_roundpd_epu64(A, B) \
- ((__m512i)__builtin_ia32_cvtpd2uqq512_mask ((A), (__v8di)_mm512_setzero_si512 (), -1, (B)))
-
-#define _mm512_mask_cvt_roundpd_epu64(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvtpd2uqq512_mask ((A), (__v8di)(W), (U), (B)))
-
-#define _mm512_maskz_cvt_roundpd_epu64(U, A, B) \
- ((__m512i)__builtin_ia32_cvtpd2uqq512_mask ((A), (__v8di)_mm512_setzero_si512 (), (U), (B)))
-
-#define _mm512_cvt_roundps_epi64(A, B) \
- ((__m512i)__builtin_ia32_cvtps2qq512_mask ((A), (__v8di)_mm512_setzero_si512 (), -1, (B)))
-
-#define _mm512_mask_cvt_roundps_epi64(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvtps2qq512_mask ((A), (__v8di)(W), (U), (B)))
-
-#define _mm512_maskz_cvt_roundps_epi64(U, A, B) \
- ((__m512i)__builtin_ia32_cvtps2qq512_mask ((A), (__v8di)_mm512_setzero_si512 (), (U), (B)))
-
-#define _mm512_cvt_roundps_epu64(A, B) \
- ((__m512i)__builtin_ia32_cvtps2uqq512_mask ((A), (__v8di)_mm512_setzero_si512 (), -1, (B)))
-
-#define _mm512_mask_cvt_roundps_epu64(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvtps2uqq512_mask ((A), (__v8di)(W), (U), (B)))
-
-#define _mm512_maskz_cvt_roundps_epu64(U, A, B) \
- ((__m512i)__builtin_ia32_cvtps2uqq512_mask ((A), (__v8di)_mm512_setzero_si512 (), (U), (B)))
-
-#define _mm512_cvt_roundepi64_ps(A, B) \
- ((__m256)__builtin_ia32_cvtqq2ps512_mask ((__v8di)(A), (__v8sf)_mm256_setzero_ps (), -1, (B)))
-
-#define _mm512_mask_cvt_roundepi64_ps(W, U, A, B) \
- ((__m256)__builtin_ia32_cvtqq2ps512_mask ((__v8di)(A), (W), (U), (B)))
-
-#define _mm512_maskz_cvt_roundepi64_ps(U, A, B) \
- ((__m256)__builtin_ia32_cvtqq2ps512_mask ((__v8di)(A), (__v8sf)_mm256_setzero_ps (), (U), (B)))
-
-#define _mm512_cvt_roundepu64_ps(A, B) \
- ((__m256)__builtin_ia32_cvtuqq2ps512_mask ((__v8di)(A), (__v8sf)_mm256_setzero_ps (), -1, (B)))
-
-#define _mm512_mask_cvt_roundepu64_ps(W, U, A, B) \
- ((__m256)__builtin_ia32_cvtuqq2ps512_mask ((__v8di)(A), (W), (U), (B)))
-
-#define _mm512_maskz_cvt_roundepu64_ps(U, A, B) \
- ((__m256)__builtin_ia32_cvtuqq2ps512_mask ((__v8di)(A), (__v8sf)_mm256_setzero_ps (), (U), (B)))
-
-#define _mm512_cvt_roundepi64_pd(A, B) \
- ((__m512d)__builtin_ia32_cvtqq2pd512_mask ((__v8di)(A), (__v8df)_mm512_setzero_pd (), -1, (B)))
-
-#define _mm512_mask_cvt_roundepi64_pd(W, U, A, B) \
- ((__m512d)__builtin_ia32_cvtqq2pd512_mask ((__v8di)(A), (W), (U), (B)))
-
-#define _mm512_maskz_cvt_roundepi64_pd(U, A, B) \
- ((__m512d)__builtin_ia32_cvtqq2pd512_mask ((__v8di)(A), (__v8df)_mm512_setzero_pd (), (U), (B)))
-
-#define _mm512_cvt_roundepu64_pd(A, B) \
- ((__m512d)__builtin_ia32_cvtuqq2pd512_mask ((__v8di)(A), (__v8df)_mm512_setzero_pd (), -1, (B)))
-
-#define _mm512_mask_cvt_roundepu64_pd(W, U, A, B) \
- ((__m512d)__builtin_ia32_cvtuqq2pd512_mask ((__v8di)(A), (W), (U), (B)))
-
-#define _mm512_maskz_cvt_roundepu64_pd(U, A, B) \
- ((__m512d)__builtin_ia32_cvtuqq2pd512_mask ((__v8di)(A), (__v8df)_mm512_setzero_pd (), (U), (B)))
-
-#define _mm512_reduce_pd(A, B) \
- ((__m512d) __builtin_ia32_reducepd512_mask ((__v8df)(__m512d)(A), \
- (int)(B), (__v8df)_mm512_setzero_pd (), (__mmask8)-1))
-
-#define _mm512_mask_reduce_pd(W, U, A, B) \
- ((__m512d) __builtin_ia32_reducepd512_mask ((__v8df)(__m512d)(A), \
- (int)(B), (__v8df)(__m512d)(W), (__mmask8)(U)))
-
-#define _mm512_maskz_reduce_pd(U, A, B) \
- ((__m512d) __builtin_ia32_reducepd512_mask ((__v8df)(__m512d)(A), \
- (int)(B), (__v8df)_mm512_setzero_pd (), (__mmask8)(U)))
-
-#define _mm512_reduce_ps(A, B) \
- ((__m512) __builtin_ia32_reduceps512_mask ((__v16sf)(__m512)(A), \
- (int)(B), (__v16sf)_mm512_setzero_ps (), (__mmask16)-1))
-
-#define _mm512_mask_reduce_ps(W, U, A, B) \
- ((__m512) __builtin_ia32_reduceps512_mask ((__v16sf)(__m512)(A), \
- (int)(B), (__v16sf)(__m512)(W), (__mmask16)(U)))
-
-#define _mm512_maskz_reduce_ps(U, A, B) \
- ((__m512) __builtin_ia32_reduceps512_mask ((__v16sf)(__m512)(A), \
- (int)(B), (__v16sf)_mm512_setzero_ps (), (__mmask16)(U)))
-
-#define _mm512_extractf32x8_ps(X, C) \
- ((__m256) __builtin_ia32_extractf32x8_mask ((__v16sf)(__m512) (X), \
- (int) (C), (__v8sf)(__m256) _mm256_setzero_ps (), (__mmask8)-1))
-
-#define _mm512_mask_extractf32x8_ps(W, U, X, C) \
- ((__m256) __builtin_ia32_extractf32x8_mask ((__v16sf)(__m512) (X), \
- (int) (C), (__v8sf)(__m256) (W), (__mmask8) (U)))
-
-#define _mm512_maskz_extractf32x8_ps(U, X, C) \
- ((__m256) __builtin_ia32_extractf32x8_mask ((__v16sf)(__m512) (X), \
- (int) (C), (__v8sf)(__m256) _mm256_setzero_ps (), (__mmask8) (U)))
-
-#define _mm512_extractf64x2_pd(X, C) \
- ((__m128d) __builtin_ia32_extractf64x2_512_mask ((__v8df)(__m512d) (X),\
- (int) (C), (__v2df)(__m128d) _mm_setzero_pd (), (__mmask8)-1))
-
-#define _mm512_mask_extractf64x2_pd(W, U, X, C) \
- ((__m128d) __builtin_ia32_extractf64x2_512_mask ((__v8df)(__m512d) (X),\
- (int) (C), (__v2df)(__m128d) (W), (__mmask8) (U)))
-
-#define _mm512_maskz_extractf64x2_pd(U, X, C) \
- ((__m128d) __builtin_ia32_extractf64x2_512_mask ((__v8df)(__m512d) (X),\
- (int) (C), (__v2df)(__m128d) _mm_setzero_pd (), (__mmask8) (U)))
-
-#define _mm512_extracti32x8_epi32(X, C) \
- ((__m256i) __builtin_ia32_extracti32x8_mask ((__v16si)(__m512i) (X), \
- (int) (C), (__v8si)(__m256i) _mm256_setzero_si256 (), (__mmask8)-1))
-
-#define _mm512_mask_extracti32x8_epi32(W, U, X, C) \
- ((__m256i) __builtin_ia32_extracti32x8_mask ((__v16si)(__m512i) (X), \
- (int) (C), (__v8si)(__m256i) (W), (__mmask8) (U)))
-
-#define _mm512_maskz_extracti32x8_epi32(U, X, C) \
- ((__m256i) __builtin_ia32_extracti32x8_mask ((__v16si)(__m512i) (X), \
- (int) (C), (__v8si)(__m256i) _mm256_setzero_si256 (), (__mmask8) (U)))
-
-#define _mm512_extracti64x2_epi64(X, C) \
- ((__m128i) __builtin_ia32_extracti64x2_512_mask ((__v8di)(__m512i) (X),\
- (int) (C), (__v2di)(__m128i) _mm_setzero_si128 (), (__mmask8)-1))
-
-#define _mm512_mask_extracti64x2_epi64(W, U, X, C) \
- ((__m128i) __builtin_ia32_extracti64x2_512_mask ((__v8di)(__m512i) (X),\
- (int) (C), (__v2di)(__m128i) (W), (__mmask8) (U)))
-
-#define _mm512_maskz_extracti64x2_epi64(U, X, C) \
- ((__m128i) __builtin_ia32_extracti64x2_512_mask ((__v8di)(__m512i) (X),\
- (int) (C), (__v2di)(__m128i) _mm_setzero_si128 (), (__mmask8) (U)))
-
-#define _mm512_range_pd(A, B, C) \
- ((__m512d) __builtin_ia32_rangepd512_mask ((__v8df)(__m512d)(A), \
- (__v8df)(__m512d)(B), (int)(C), \
- (__v8df)_mm512_setzero_pd (), (__mmask8)-1, _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_range_pd(W, U, A, B, C) \
- ((__m512d) __builtin_ia32_rangepd512_mask ((__v8df)(__m512d)(A), \
- (__v8df)(__m512d)(B), (int)(C), \
- (__v8df)(__m512d)(W), (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_maskz_range_pd(U, A, B, C) \
- ((__m512d) __builtin_ia32_rangepd512_mask ((__v8df)(__m512d)(A), \
- (__v8df)(__m512d)(B), (int)(C), \
- (__v8df)_mm512_setzero_pd (), (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_range_ps(A, B, C) \
- ((__m512) __builtin_ia32_rangeps512_mask ((__v16sf)(__m512)(A), \
- (__v16sf)(__m512)(B), (int)(C), \
- (__v16sf)_mm512_setzero_ps (), (__mmask16)-1, _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_range_ps(W, U, A, B, C) \
- ((__m512) __builtin_ia32_rangeps512_mask ((__v16sf)(__m512)(A), \
- (__v16sf)(__m512)(B), (int)(C), \
- (__v16sf)(__m512)(W), (__mmask16)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_maskz_range_ps(U, A, B, C) \
- ((__m512) __builtin_ia32_rangeps512_mask ((__v16sf)(__m512)(A), \
- (__v16sf)(__m512)(B), (int)(C), \
- (__v16sf)_mm512_setzero_ps (), (__mmask16)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_range_round_pd(A, B, C, R) \
- ((__m512d) __builtin_ia32_rangepd512_mask ((__v8df)(__m512d)(A), \
- (__v8df)(__m512d)(B), (int)(C), \
- (__v8df)_mm512_setzero_pd (), (__mmask8)-1, (R)))
-
-#define _mm512_mask_range_round_pd(W, U, A, B, C, R) \
- ((__m512d) __builtin_ia32_rangepd512_mask ((__v8df)(__m512d)(A), \
- (__v8df)(__m512d)(B), (int)(C), \
- (__v8df)(__m512d)(W), (__mmask8)(U), (R)))
-
-#define _mm512_maskz_range_round_pd(U, A, B, C, R) \
- ((__m512d) __builtin_ia32_rangepd512_mask ((__v8df)(__m512d)(A), \
- (__v8df)(__m512d)(B), (int)(C), \
- (__v8df)_mm512_setzero_pd (), (__mmask8)(U), (R)))
-
-#define _mm512_range_round_ps(A, B, C, R) \
- ((__m512) __builtin_ia32_rangeps512_mask ((__v16sf)(__m512)(A), \
- (__v16sf)(__m512)(B), (int)(C), \
- (__v16sf)_mm512_setzero_ps (), (__mmask16)-1, (R)))
-
-#define _mm512_mask_range_round_ps(W, U, A, B, C, R) \
- ((__m512) __builtin_ia32_rangeps512_mask ((__v16sf)(__m512)(A), \
- (__v16sf)(__m512)(B), (int)(C), \
- (__v16sf)(__m512)(W), (__mmask16)(U), (R)))
-
-#define _mm512_maskz_range_round_ps(U, A, B, C, R) \
- ((__m512) __builtin_ia32_rangeps512_mask ((__v16sf)(__m512)(A), \
- (__v16sf)(__m512)(B), (int)(C), \
- (__v16sf)_mm512_setzero_ps (), (__mmask16)(U), (R)))
-
-#define _mm512_insertf64x2(X, Y, C) \
- ((__m512d) __builtin_ia32_insertf64x2_512_mask ((__v8df)(__m512d) (X),\
- (__v2df)(__m128d) (Y), (int) (C), (__v8df)(__m512d) (X), \
- (__mmask8)-1))
-
-#define _mm512_mask_insertf64x2(W, U, X, Y, C) \
- ((__m512d) __builtin_ia32_insertf64x2_512_mask ((__v8df)(__m512d) (X),\
- (__v2df)(__m128d) (Y), (int) (C), (__v8df)(__m512d) (W), \
- (__mmask8) (U)))
-
-#define _mm512_maskz_insertf64x2(U, X, Y, C) \
- ((__m512d) __builtin_ia32_insertf64x2_512_mask ((__v8df)(__m512d) (X),\
- (__v2df)(__m128d) (Y), (int) (C), \
- (__v8df)(__m512d) _mm512_setzero_pd (), (__mmask8) (U)))
-
-#define _mm512_inserti64x2(X, Y, C) \
- ((__m512i) __builtin_ia32_inserti64x2_512_mask ((__v8di)(__m512i) (X),\
- (__v2di)(__m128i) (Y), (int) (C), (__v8di)(__m512i) (X), (__mmask8)-1))
-
-#define _mm512_mask_inserti64x2(W, U, X, Y, C) \
- ((__m512i) __builtin_ia32_inserti64x2_512_mask ((__v8di)(__m512i) (X),\
- (__v2di)(__m128i) (Y), (int) (C), (__v8di)(__m512i) (W), \
- (__mmask8) (U)))
-
-#define _mm512_maskz_inserti64x2(U, X, Y, C) \
- ((__m512i) __builtin_ia32_inserti64x2_512_mask ((__v8di)(__m512i) (X),\
- (__v2di)(__m128i) (Y), (int) (C), \
- (__v8di)(__m512i) _mm512_setzero_si512 (), (__mmask8) (U)))
-
-#define _mm512_insertf32x8(X, Y, C) \
- ((__m512) __builtin_ia32_insertf32x8_mask ((__v16sf)(__m512) (X), \
- (__v8sf)(__m256) (Y), (int) (C),\
- (__v16sf)(__m512)_mm512_setzero_ps (),\
- (__mmask16)-1))
-
-#define _mm512_mask_insertf32x8(W, U, X, Y, C) \
- ((__m512) __builtin_ia32_insertf32x8_mask ((__v16sf)(__m512) (X), \
- (__v8sf)(__m256) (Y), (int) (C),\
- (__v16sf)(__m512)(W),\
- (__mmask16)(U)))
-
-#define _mm512_maskz_insertf32x8(U, X, Y, C) \
- ((__m512) __builtin_ia32_insertf32x8_mask ((__v16sf)(__m512) (X), \
- (__v8sf)(__m256) (Y), (int) (C),\
- (__v16sf)(__m512)_mm512_setzero_ps (),\
- (__mmask16)(U)))
-
-#define _mm512_inserti32x8(X, Y, C) \
- ((__m512i) __builtin_ia32_inserti32x8_mask ((__v16si)(__m512i) (X), \
- (__v8si)(__m256i) (Y), (int) (C),\
- (__v16si)(__m512i)_mm512_setzero_si512 (),\
- (__mmask16)-1))
-
-#define _mm512_mask_inserti32x8(W, U, X, Y, C) \
- ((__m512i) __builtin_ia32_inserti32x8_mask ((__v16si)(__m512i) (X), \
- (__v8si)(__m256i) (Y), (int) (C),\
- (__v16si)(__m512i)(W),\
- (__mmask16)(U)))
-
-#define _mm512_maskz_inserti32x8(U, X, Y, C) \
- ((__m512i) __builtin_ia32_inserti32x8_mask ((__v16si)(__m512i) (X), \
- (__v8si)(__m256i) (Y), (int) (C),\
- (__v16si)(__m512i)_mm512_setzero_si512 (),\
- (__mmask16)(U)))
-
-#define _mm_fpclass_ss_mask(X, C) \
- ((__mmask8) __builtin_ia32_fpclassss ((__v4sf) (__m128) (X), (int) (C))) \
-
-#define _mm_fpclass_sd_mask(X, C) \
- ((__mmask8) __builtin_ia32_fpclasssd ((__v2df) (__m128d) (X), (int) (C))) \
-
-#define _mm512_mask_fpclass_pd_mask(u, X, C) \
- ((__mmask8) __builtin_ia32_fpclasspd512_mask ((__v8df) (__m512d) (X), \
- (int) (C), (__mmask8)(u)))
-
-#define _mm512_mask_fpclass_ps_mask(u, x, c) \
- ((__mmask16) __builtin_ia32_fpclassps512_mask ((__v16sf) (__m512) (x),\
- (int) (c),(__mmask8)(u)))
-
-#define _mm512_fpclass_pd_mask(X, C) \
- ((__mmask8) __builtin_ia32_fpclasspd512_mask ((__v8df) (__m512d) (X), \
- (int) (C), (__mmask8)-1))
-
-#define _mm512_fpclass_ps_mask(x, c) \
- ((__mmask16) __builtin_ia32_fpclassps512_mask ((__v16sf) (__m512) (x),\
- (int) (c),(__mmask8)-1))
-
-#define _mm_reduce_sd(A, B, C) \
- ((__m128d) __builtin_ia32_reducesd ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C))) \
-
-#define _mm_reduce_ss(A, B, C) \
- ((__m128) __builtin_ia32_reducess ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(A), (int)(C))) \
-
-#endif
-
-#ifdef __DISABLE_AVX512DQ__
-#undef __DISABLE_AVX512DQ__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512DQ__ */
-
-#endif /* _AVX512DQINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512erintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512erintrin.h
deleted file mode 100644
index b46ec62aa4..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512erintrin.h
+++ /dev/null
@@ -1,394 +0,0 @@
-/* Copyright (C) 2013-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512ERINTRIN_H_INCLUDED
-#define _AVX512ERINTRIN_H_INCLUDED
-
-#ifndef __AVX512ER__
-//#pragma GCC push_options
-#pragma GCC target("avx512er")
-#define __DISABLE_AVX512ER__
-#endif /* __AVX512ER__ */
-
-/* Internal data types for implementing the intrinsics. */
-typedef double __v8df __attribute__ ((__vector_size__ (64)));
-typedef float __v16sf __attribute__ ((__vector_size__ (64)));
-
-/* The Intel API is flexible enough that we must allow aliasing with other
- vector types, and their scalar components. */
-typedef float __m512 __attribute__ ((__vector_size__ (64), __may_alias__));
-typedef double __m512d __attribute__ ((__vector_size__ (64), __may_alias__));
-
-typedef unsigned char __mmask8;
-typedef unsigned short __mmask16;
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_exp2a23_round_pd (__m512d __A, int __R)
-{
- __m512d __W;
- return (__m512d) __builtin_ia32_exp2pd_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_exp2a23_round_pd (__m512d __W, __mmask8 __U, __m512d __A, int __R)
-{
- return (__m512d) __builtin_ia32_exp2pd_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_exp2a23_round_pd (__mmask8 __U, __m512d __A, int __R)
-{
- return (__m512d) __builtin_ia32_exp2pd_mask ((__v8df) __A,
- (__v8df) _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_exp2a23_round_ps (__m512 __A, int __R)
-{
- __m512 __W;
- return (__m512) __builtin_ia32_exp2ps_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_exp2a23_round_ps (__m512 __W, __mmask16 __U, __m512 __A, int __R)
-{
- return (__m512) __builtin_ia32_exp2ps_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_exp2a23_round_ps (__mmask16 __U, __m512 __A, int __R)
-{
- return (__m512) __builtin_ia32_exp2ps_mask ((__v16sf) __A,
- (__v16sf) _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rcp28_round_pd (__m512d __A, int __R)
-{
- __m512d __W;
- return (__m512d) __builtin_ia32_rcp28pd_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rcp28_round_pd (__m512d __W, __mmask8 __U, __m512d __A, int __R)
-{
- return (__m512d) __builtin_ia32_rcp28pd_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rcp28_round_pd (__mmask8 __U, __m512d __A, int __R)
-{
- return (__m512d) __builtin_ia32_rcp28pd_mask ((__v8df) __A,
- (__v8df) _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rcp28_round_ps (__m512 __A, int __R)
-{
- __m512 __W;
- return (__m512) __builtin_ia32_rcp28ps_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rcp28_round_ps (__m512 __W, __mmask16 __U, __m512 __A, int __R)
-{
- return (__m512) __builtin_ia32_rcp28ps_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rcp28_round_ps (__mmask16 __U, __m512 __A, int __R)
-{
- return (__m512) __builtin_ia32_rcp28ps_mask ((__v16sf) __A,
- (__v16sf) _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rcp28_round_sd (__m128d __A, __m128d __B, int __R)
-{
- return (__m128d) __builtin_ia32_rcp28sd_round ((__v2df) __B,
- (__v2df) __A,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rcp28_round_ss (__m128 __A, __m128 __B, int __R)
-{
- return (__m128) __builtin_ia32_rcp28ss_round ((__v4sf) __B,
- (__v4sf) __A,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rsqrt28_round_pd (__m512d __A, int __R)
-{
- __m512d __W;
- return (__m512d) __builtin_ia32_rsqrt28pd_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rsqrt28_round_pd (__m512d __W, __mmask8 __U, __m512d __A, int __R)
-{
- return (__m512d) __builtin_ia32_rsqrt28pd_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rsqrt28_round_pd (__mmask8 __U, __m512d __A, int __R)
-{
- return (__m512d) __builtin_ia32_rsqrt28pd_mask ((__v8df) __A,
- (__v8df) _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rsqrt28_round_ps (__m512 __A, int __R)
-{
- __m512 __W;
- return (__m512) __builtin_ia32_rsqrt28ps_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rsqrt28_round_ps (__m512 __W, __mmask16 __U, __m512 __A, int __R)
-{
- return (__m512) __builtin_ia32_rsqrt28ps_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rsqrt28_round_ps (__mmask16 __U, __m512 __A, int __R)
-{
- return (__m512) __builtin_ia32_rsqrt28ps_mask ((__v16sf) __A,
- (__v16sf) _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rsqrt28_round_sd (__m128d __A, __m128d __B, int __R)
-{
- return (__m128d) __builtin_ia32_rsqrt28sd_round ((__v2df) __B,
- (__v2df) __A,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rsqrt28_round_ss (__m128 __A, __m128 __B, int __R)
-{
- return (__m128) __builtin_ia32_rsqrt28ss_round ((__v4sf) __B,
- (__v4sf) __A,
- __R);
-}
-
-#else
-#define _mm512_exp2a23_round_pd(A, C) \
- __builtin_ia32_exp2pd_mask(A, (__v8df)_mm512_setzero_pd(), -1, C)
-
-#define _mm512_mask_exp2a23_round_pd(W, U, A, C) \
- __builtin_ia32_exp2pd_mask(A, W, U, C)
-
-#define _mm512_maskz_exp2a23_round_pd(U, A, C) \
- __builtin_ia32_exp2pd_mask(A, (__v8df)_mm512_setzero_pd(), U, C)
-
-#define _mm512_exp2a23_round_ps(A, C) \
- __builtin_ia32_exp2ps_mask(A, (__v16sf)_mm512_setzero_ps(), -1, C)
-
-#define _mm512_mask_exp2a23_round_ps(W, U, A, C) \
- __builtin_ia32_exp2ps_mask(A, W, U, C)
-
-#define _mm512_maskz_exp2a23_round_ps(U, A, C) \
- __builtin_ia32_exp2ps_mask(A, (__v16sf)_mm512_setzero_ps(), U, C)
-
-#define _mm512_rcp28_round_pd(A, C) \
- __builtin_ia32_rcp28pd_mask(A, (__v8df)_mm512_setzero_pd(), -1, C)
-
-#define _mm512_mask_rcp28_round_pd(W, U, A, C) \
- __builtin_ia32_rcp28pd_mask(A, W, U, C)
-
-#define _mm512_maskz_rcp28_round_pd(U, A, C) \
- __builtin_ia32_rcp28pd_mask(A, (__v8df)_mm512_setzero_pd(), U, C)
-
-#define _mm512_rcp28_round_ps(A, C) \
- __builtin_ia32_rcp28ps_mask(A, (__v16sf)_mm512_setzero_ps(), -1, C)
-
-#define _mm512_mask_rcp28_round_ps(W, U, A, C) \
- __builtin_ia32_rcp28ps_mask(A, W, U, C)
-
-#define _mm512_maskz_rcp28_round_ps(U, A, C) \
- __builtin_ia32_rcp28ps_mask(A, (__v16sf)_mm512_setzero_ps(), U, C)
-
-#define _mm512_rsqrt28_round_pd(A, C) \
- __builtin_ia32_rsqrt28pd_mask(A, (__v8df)_mm512_setzero_pd(), -1, C)
-
-#define _mm512_mask_rsqrt28_round_pd(W, U, A, C) \
- __builtin_ia32_rsqrt28pd_mask(A, W, U, C)
-
-#define _mm512_maskz_rsqrt28_round_pd(U, A, C) \
- __builtin_ia32_rsqrt28pd_mask(A, (__v8df)_mm512_setzero_pd(), U, C)
-
-#define _mm512_rsqrt28_round_ps(A, C) \
- __builtin_ia32_rsqrt28ps_mask(A, (__v16sf)_mm512_setzero_ps(), -1, C)
-
-#define _mm512_mask_rsqrt28_round_ps(W, U, A, C) \
- __builtin_ia32_rsqrt28ps_mask(A, W, U, C)
-
-#define _mm512_maskz_rsqrt28_round_ps(U, A, C) \
- __builtin_ia32_rsqrt28ps_mask(A, (__v16sf)_mm512_setzero_ps(), U, C)
-
-#define _mm_rcp28_round_sd(A, B, R) \
- __builtin_ia32_rcp28sd_round(A, B, R)
-
-#define _mm_rcp28_round_ss(A, B, R) \
- __builtin_ia32_rcp28ss_round(A, B, R)
-
-#define _mm_rsqrt28_round_sd(A, B, R) \
- __builtin_ia32_rsqrt28sd_round(A, B, R)
-
-#define _mm_rsqrt28_round_ss(A, B, R) \
- __builtin_ia32_rsqrt28ss_round(A, B, R)
-
-#endif
-
-#define _mm512_exp2a23_pd(A) \
- _mm512_exp2a23_round_pd(A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_mask_exp2a23_pd(W, U, A) \
- _mm512_mask_exp2a23_round_pd(W, U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_maskz_exp2a23_pd(U, A) \
- _mm512_maskz_exp2a23_round_pd(U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_exp2a23_ps(A) \
- _mm512_exp2a23_round_ps(A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_mask_exp2a23_ps(W, U, A) \
- _mm512_mask_exp2a23_round_ps(W, U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_maskz_exp2a23_ps(U, A) \
- _mm512_maskz_exp2a23_round_ps(U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_rcp28_pd(A) \
- _mm512_rcp28_round_pd(A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_mask_rcp28_pd(W, U, A) \
- _mm512_mask_rcp28_round_pd(W, U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_maskz_rcp28_pd(U, A) \
- _mm512_maskz_rcp28_round_pd(U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_rcp28_ps(A) \
- _mm512_rcp28_round_ps(A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_mask_rcp28_ps(W, U, A) \
- _mm512_mask_rcp28_round_ps(W, U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_maskz_rcp28_ps(U, A) \
- _mm512_maskz_rcp28_round_ps(U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_rsqrt28_pd(A) \
- _mm512_rsqrt28_round_pd(A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_mask_rsqrt28_pd(W, U, A) \
- _mm512_mask_rsqrt28_round_pd(W, U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_maskz_rsqrt28_pd(U, A) \
- _mm512_maskz_rsqrt28_round_pd(U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_rsqrt28_ps(A) \
- _mm512_rsqrt28_round_ps(A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_mask_rsqrt28_ps(W, U, A) \
- _mm512_mask_rsqrt28_round_ps(W, U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm512_maskz_rsqrt28_ps(U, A) \
- _mm512_maskz_rsqrt28_round_ps(U, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm_rcp28_sd(A, B) \
- __builtin_ia32_rcp28sd_round(B, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm_rcp28_ss(A, B) \
- __builtin_ia32_rcp28ss_round(B, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm_rsqrt28_sd(A, B) \
- __builtin_ia32_rsqrt28sd_round(B, A, _MM_FROUND_CUR_DIRECTION)
-
-#define _mm_rsqrt28_ss(A, B) \
- __builtin_ia32_rsqrt28ss_round(B, A, _MM_FROUND_CUR_DIRECTION)
-
-#ifdef __DISABLE_AVX512ER__
-#undef __DISABLE_AVX512ER__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512ER__ */
-
-#endif /* _AVX512ERINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512fintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512fintrin.h
deleted file mode 100644
index 15e3b0ba94..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512fintrin.h
+++ /dev/null
@@ -1,13754 +0,0 @@
-/* Copyright (C) 2013-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512FINTRIN_H_INCLUDED
-#define _AVX512FINTRIN_H_INCLUDED
-
-#ifndef __AVX512F__
-#pragma GCC push_options
-//#pragma GCC target("avx512f")
-#define __DISABLE_AVX512F__
-#endif /* __AVX512F__ */
-
-/* Internal data types for implementing the intrinsics. */
-typedef double __v8df __attribute__ ((__vector_size__ (64)));
-typedef float __v16sf __attribute__ ((__vector_size__ (64)));
-typedef long long __v8di __attribute__ ((__vector_size__ (64)));
-typedef unsigned long long __v8du __attribute__ ((__vector_size__ (64)));
-typedef int __v16si __attribute__ ((__vector_size__ (64)));
-typedef unsigned int __v16su __attribute__ ((__vector_size__ (64)));
-typedef short __v32hi __attribute__ ((__vector_size__ (64)));
-typedef unsigned short __v32hu __attribute__ ((__vector_size__ (64)));
-typedef char __v64qi __attribute__ ((__vector_size__ (64)));
-typedef unsigned char __v64qu __attribute__ ((__vector_size__ (64)));
-
-/* The Intel API is flexible enough that we must allow aliasing with other
- vector types, and their scalar components. */
-typedef float __m512 __attribute__ ((__vector_size__ (64), __may_alias__));
-typedef long long __m512i __attribute__ ((__vector_size__ (64), __may_alias__));
-typedef double __m512d __attribute__ ((__vector_size__ (64), __may_alias__));
-
-/* Unaligned version of the same type. */
-typedef float __m512_u __attribute__ ((__vector_size__ (64), __may_alias__, __aligned__ (1)));
-typedef long long __m512i_u __attribute__ ((__vector_size__ (64), __may_alias__, __aligned__ (1)));
-typedef double __m512d_u __attribute__ ((__vector_size__ (64), __may_alias__, __aligned__ (1)));
-
-typedef unsigned char __mmask8;
-typedef unsigned short __mmask16;
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_int2mask (int __M)
-{
- return (__mmask16) __M;
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask2int (__mmask16 __M)
-{
- return (int) __M;
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set_epi64 (long long __A, long long __B, long long __C,
- long long __D, long long __E, long long __F,
- long long __G, long long __H)
-{
- return __extension__ (__m512i) (__v8di)
- { __H, __G, __F, __E, __D, __C, __B, __A };
-}
-
-/* Create the vector [A B C D E F G H I J K L M N O P]. */
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set_epi32 (int __A, int __B, int __C, int __D,
- int __E, int __F, int __G, int __H,
- int __I, int __J, int __K, int __L,
- int __M, int __N, int __O, int __P)
-{
- return __extension__ (__m512i)(__v16si)
- { __P, __O, __N, __M, __L, __K, __J, __I,
- __H, __G, __F, __E, __D, __C, __B, __A };
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set_pd (double __A, double __B, double __C, double __D,
- double __E, double __F, double __G, double __H)
-{
- return __extension__ (__m512d)
- { __H, __G, __F, __E, __D, __C, __B, __A };
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set_ps (float __A, float __B, float __C, float __D,
- float __E, float __F, float __G, float __H,
- float __I, float __J, float __K, float __L,
- float __M, float __N, float __O, float __P)
-{
- return __extension__ (__m512)
- { __P, __O, __N, __M, __L, __K, __J, __I,
- __H, __G, __F, __E, __D, __C, __B, __A };
-}
-
-#define _mm512_setr_epi64(e0,e1,e2,e3,e4,e5,e6,e7) \
- _mm512_set_epi64(e7,e6,e5,e4,e3,e2,e1,e0)
-
-#define _mm512_setr_epi32(e0,e1,e2,e3,e4,e5,e6,e7, \
- e8,e9,e10,e11,e12,e13,e14,e15) \
- _mm512_set_epi32(e15,e14,e13,e12,e11,e10,e9,e8,e7,e6,e5,e4,e3,e2,e1,e0)
-
-#define _mm512_setr_pd(e0,e1,e2,e3,e4,e5,e6,e7) \
- _mm512_set_pd(e7,e6,e5,e4,e3,e2,e1,e0)
-
-#define _mm512_setr_ps(e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15) \
- _mm512_set_ps(e15,e14,e13,e12,e11,e10,e9,e8,e7,e6,e5,e4,e3,e2,e1,e0)
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_undefined_ps (void)
-{
- __m512 __Y = __Y;
- return __Y;
-}
-
-#define _mm512_undefined _mm512_undefined_ps
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_undefined_pd (void)
-{
- __m512d __Y = __Y;
- return __Y;
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_undefined_epi32 (void)
-{
- __m512i __Y = __Y;
- return __Y;
-}
-
-#define _mm512_undefined_si512 _mm512_undefined_epi32
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set1_epi8 (char __A)
-{
- return __extension__ (__m512i)(__v64qi)
- { __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A };
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set1_epi16 (short __A)
-{
- return __extension__ (__m512i)(__v32hi)
- { __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A };
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set1_pd (double __A)
-{
- return (__m512d) __builtin_ia32_broadcastsd512 (__extension__
- (__v2df) { __A, },
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set1_ps (float __A)
-{
- return (__m512) __builtin_ia32_broadcastss512 (__extension__
- (__v4sf) { __A, },
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-/* Create the vector [A B C D A B C D A B C D A B C D]. */
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set4_epi32 (int __A, int __B, int __C, int __D)
-{
- return __extension__ (__m512i)(__v16si)
- { __D, __C, __B, __A, __D, __C, __B, __A,
- __D, __C, __B, __A, __D, __C, __B, __A };
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set4_epi64 (long long __A, long long __B, long long __C,
- long long __D)
-{
- return __extension__ (__m512i) (__v8di)
- { __D, __C, __B, __A, __D, __C, __B, __A };
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set4_pd (double __A, double __B, double __C, double __D)
-{
- return __extension__ (__m512d)
- { __D, __C, __B, __A, __D, __C, __B, __A };
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set4_ps (float __A, float __B, float __C, float __D)
-{
- return __extension__ (__m512)
- { __D, __C, __B, __A, __D, __C, __B, __A,
- __D, __C, __B, __A, __D, __C, __B, __A };
-}
-
-#define _mm512_setr4_epi64(e0,e1,e2,e3) \
- _mm512_set4_epi64(e3,e2,e1,e0)
-
-#define _mm512_setr4_epi32(e0,e1,e2,e3) \
- _mm512_set4_epi32(e3,e2,e1,e0)
-
-#define _mm512_setr4_pd(e0,e1,e2,e3) \
- _mm512_set4_pd(e3,e2,e1,e0)
-
-#define _mm512_setr4_ps(e0,e1,e2,e3) \
- _mm512_set4_ps(e3,e2,e1,e0)
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_setzero_ps (void)
-{
- return __extension__ (__m512){ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
- 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_setzero_pd (void)
-{
- return __extension__ (__m512d) { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_setzero_epi32 (void)
-{
- return __extension__ (__m512i)(__v8di){ 0, 0, 0, 0, 0, 0, 0, 0 };
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_setzero_si512 (void)
-{
- return __extension__ (__m512i)(__v8di){ 0, 0, 0, 0, 0, 0, 0, 0 };
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mov_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_movapd512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mov_pd (__mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_movapd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mov_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_movaps512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mov_ps (__mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_movaps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_load_pd (void const *__P)
-{
- return *(__m512d *) __P;
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_load_pd (__m512d __W, __mmask8 __U, void const *__P)
-{
- return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *) __P,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_load_pd (__mmask8 __U, void const *__P)
-{
- return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *) __P,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_store_pd (void *__P, __m512d __A)
-{
- *(__m512d *) __P = __A;
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_store_pd (void *__P, __mmask8 __U, __m512d __A)
-{
- __builtin_ia32_storeapd512_mask ((__v8df *) __P, (__v8df) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_load_ps (void const *__P)
-{
- return *(__m512 *) __P;
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_load_ps (__m512 __W, __mmask16 __U, void const *__P)
-{
- return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *) __P,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_load_ps (__mmask16 __U, void const *__P)
-{
- return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *) __P,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_store_ps (void *__P, __m512 __A)
-{
- *(__m512 *) __P = __A;
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_store_ps (void *__P, __mmask16 __U, __m512 __A)
-{
- __builtin_ia32_storeaps512_mask ((__v16sf *) __P, (__v16sf) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mov_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_movdqa64_512_mask ((__v8di) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mov_epi64 (__mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_movdqa64_512_mask ((__v8di) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_load_epi64 (void const *__P)
-{
- return *(__m512i *) __P;
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_load_epi64 (__m512i __W, __mmask8 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_load_epi64 (__mmask8 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_store_epi64 (void *__P, __m512i __A)
-{
- *(__m512i *) __P = __A;
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_store_epi64 (void *__P, __mmask8 __U, __m512i __A)
-{
- __builtin_ia32_movdqa64store512_mask ((__v8di *) __P, (__v8di) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mov_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_movdqa32_512_mask ((__v16si) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mov_epi32 (__mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_movdqa32_512_mask ((__v16si) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_load_si512 (void const *__P)
-{
- return *(__m512i *) __P;
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_load_epi32 (void const *__P)
-{
- return *(__m512i *) __P;
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_load_epi32 (__m512i __W, __mmask16 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_load_epi32 (__mmask16 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_store_si512 (void *__P, __m512i __A)
-{
- *(__m512i *) __P = __A;
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_store_epi32 (void *__P, __m512i __A)
-{
- *(__m512i *) __P = __A;
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_store_epi32 (void *__P, __mmask16 __U, __m512i __A)
-{
- __builtin_ia32_movdqa32store512_mask ((__v16si *) __P, (__v16si) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mullo_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v16su) __A * (__v16su) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mullo_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulld512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mullo_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmulld512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sllv_epi32 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psllv16si_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sllv_epi32 (__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psllv16si_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sllv_epi32 (__mmask16 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psllv16si_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srav_epi32 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrav16si_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srav_epi32 (__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrav16si_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srav_epi32 (__mmask16 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrav16si_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srlv_epi32 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrlv16si_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srlv_epi32 (__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrlv16si_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srlv_epi32 (__mmask16 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrlv16si_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_add_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v8du) __A + (__v8du) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_add_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_add_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sub_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v8du) __A - (__v8du) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sub_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sub_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sllv_epi64 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psllv8di_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sllv_epi64 (__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psllv8di_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sllv_epi64 (__mmask8 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psllv8di_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srav_epi64 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srav_epi64 (__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srav_epi64 (__mmask8 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srlv_epi64 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrlv8di_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srlv_epi64 (__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrlv8di_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srlv_epi64 (__mmask8 __U, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_psrlv8di_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_add_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v16su) __A + (__v16su) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_add_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_add_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_paddd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mul_epi32 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_pmuldq512_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mul_epi32 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_pmuldq512_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v8di) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mul_epi32 (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_pmuldq512_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sub_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v16su) __A - (__v16su) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sub_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sub_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_psubd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mul_epu32 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_pmuludq512_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mul_epu32 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_pmuludq512_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v8di) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mul_epu32 (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_pmuludq512_mask ((__v16si) __X,
- (__v16si) __Y,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_slli_epi64 (__m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psllqi512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_slli_epi64 (__m512i __W, __mmask8 __U, __m512i __A,
- unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psllqi512_mask ((__v8di) __A, __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_slli_epi64 (__mmask8 __U, __m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psllqi512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-#else
-#define _mm512_slli_epi64(X, C) \
- ((__m512i) __builtin_ia32_psllqi512_mask ((__v8di)(__m512i)(X), (int)(C),\
- (__v8di)(__m512i)_mm512_undefined_epi32 (),\
- (__mmask8)-1))
-
-#define _mm512_mask_slli_epi64(W, U, X, C) \
- ((__m512i) __builtin_ia32_psllqi512_mask ((__v8di)(__m512i)(X), (int)(C),\
- (__v8di)(__m512i)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_slli_epi64(U, X, C) \
- ((__m512i) __builtin_ia32_psllqi512_mask ((__v8di)(__m512i)(X), (int)(C),\
- (__v8di)(__m512i)_mm512_setzero_si512 (),\
- (__mmask8)(U)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sll_epi64 (__m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psllq512_mask ((__v8di) __A,
- (__v2di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sll_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psllq512_mask ((__v8di) __A,
- (__v2di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sll_epi64 (__mmask8 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psllq512_mask ((__v8di) __A,
- (__v2di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srli_epi64 (__m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psrlqi512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srli_epi64 (__m512i __W, __mmask8 __U,
- __m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psrlqi512_mask ((__v8di) __A, __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srli_epi64 (__mmask8 __U, __m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psrlqi512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-#else
-#define _mm512_srli_epi64(X, C) \
- ((__m512i) __builtin_ia32_psrlqi512_mask ((__v8di)(__m512i)(X), (int)(C),\
- (__v8di)(__m512i)_mm512_undefined_epi32 (),\
- (__mmask8)-1))
-
-#define _mm512_mask_srli_epi64(W, U, X, C) \
- ((__m512i) __builtin_ia32_psrlqi512_mask ((__v8di)(__m512i)(X), (int)(C),\
- (__v8di)(__m512i)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_srli_epi64(U, X, C) \
- ((__m512i) __builtin_ia32_psrlqi512_mask ((__v8di)(__m512i)(X), (int)(C),\
- (__v8di)(__m512i)_mm512_setzero_si512 (),\
- (__mmask8)(U)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srl_epi64 (__m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrlq512_mask ((__v8di) __A,
- (__v2di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srl_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrlq512_mask ((__v8di) __A,
- (__v2di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srl_epi64 (__mmask8 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrlq512_mask ((__v8di) __A,
- (__v2di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srai_epi64 (__m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psraqi512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srai_epi64 (__m512i __W, __mmask8 __U, __m512i __A,
- unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psraqi512_mask ((__v8di) __A, __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srai_epi64 (__mmask8 __U, __m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psraqi512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-#else
-#define _mm512_srai_epi64(X, C) \
- ((__m512i) __builtin_ia32_psraqi512_mask ((__v8di)(__m512i)(X), (int)(C),\
- (__v8di)(__m512i)_mm512_undefined_epi32 (),\
- (__mmask8)-1))
-
-#define _mm512_mask_srai_epi64(W, U, X, C) \
- ((__m512i) __builtin_ia32_psraqi512_mask ((__v8di)(__m512i)(X), (int)(C),\
- (__v8di)(__m512i)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_srai_epi64(U, X, C) \
- ((__m512i) __builtin_ia32_psraqi512_mask ((__v8di)(__m512i)(X), (int)(C),\
- (__v8di)(__m512i)_mm512_setzero_si512 (),\
- (__mmask8)(U)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sra_epi64 (__m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psraq512_mask ((__v8di) __A,
- (__v2di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sra_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psraq512_mask ((__v8di) __A,
- (__v2di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sra_epi64 (__mmask8 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psraq512_mask ((__v8di) __A,
- (__v2di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_slli_epi32 (__m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_pslldi512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_slli_epi32 (__m512i __W, __mmask16 __U, __m512i __A,
- unsigned int __B)
-{
- return (__m512i) __builtin_ia32_pslldi512_mask ((__v16si) __A, __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_slli_epi32 (__mmask16 __U, __m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_pslldi512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-#else
-#define _mm512_slli_epi32(X, C) \
- ((__m512i) __builtin_ia32_pslldi512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)_mm512_undefined_epi32 (),\
- (__mmask16)-1))
-
-#define _mm512_mask_slli_epi32(W, U, X, C) \
- ((__m512i) __builtin_ia32_pslldi512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)(W),\
- (__mmask16)(U)))
-
-#define _mm512_maskz_slli_epi32(U, X, C) \
- ((__m512i) __builtin_ia32_pslldi512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)_mm512_setzero_si512 (),\
- (__mmask16)(U)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sll_epi32 (__m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_pslld512_mask ((__v16si) __A,
- (__v4si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sll_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_pslld512_mask ((__v16si) __A,
- (__v4si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sll_epi32 (__mmask16 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_pslld512_mask ((__v16si) __A,
- (__v4si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srli_epi32 (__m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psrldi512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srli_epi32 (__m512i __W, __mmask16 __U,
- __m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psrldi512_mask ((__v16si) __A, __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srli_epi32 (__mmask16 __U, __m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psrldi512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-#else
-#define _mm512_srli_epi32(X, C) \
- ((__m512i) __builtin_ia32_psrldi512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)_mm512_undefined_epi32 (),\
- (__mmask16)-1))
-
-#define _mm512_mask_srli_epi32(W, U, X, C) \
- ((__m512i) __builtin_ia32_psrldi512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)(W),\
- (__mmask16)(U)))
-
-#define _mm512_maskz_srli_epi32(U, X, C) \
- ((__m512i) __builtin_ia32_psrldi512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)_mm512_setzero_si512 (),\
- (__mmask16)(U)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srl_epi32 (__m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrld512_mask ((__v16si) __A,
- (__v4si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srl_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrld512_mask ((__v16si) __A,
- (__v4si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srl_epi32 (__mmask16 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrld512_mask ((__v16si) __A,
- (__v4si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_srai_epi32 (__m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psradi512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_srai_epi32 (__m512i __W, __mmask16 __U, __m512i __A,
- unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psradi512_mask ((__v16si) __A, __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_srai_epi32 (__mmask16 __U, __m512i __A, unsigned int __B)
-{
- return (__m512i) __builtin_ia32_psradi512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-#else
-#define _mm512_srai_epi32(X, C) \
- ((__m512i) __builtin_ia32_psradi512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)_mm512_undefined_epi32 (),\
- (__mmask16)-1))
-
-#define _mm512_mask_srai_epi32(W, U, X, C) \
- ((__m512i) __builtin_ia32_psradi512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)(W),\
- (__mmask16)(U)))
-
-#define _mm512_maskz_srai_epi32(U, X, C) \
- ((__m512i) __builtin_ia32_psradi512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)_mm512_setzero_si512 (),\
- (__mmask16)(U)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sra_epi32 (__m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrad512_mask ((__v16si) __A,
- (__v4si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sra_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrad512_mask ((__v16si) __A,
- (__v4si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sra_epi32 (__mmask16 __U, __m512i __A, __m128i __B)
-{
- return (__m512i) __builtin_ia32_psrad512_mask ((__v16si) __A,
- (__v4si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_add_round_sd (__m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_addsd_round ((__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_add_round_ss (__m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_addss_round ((__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_sub_round_sd (__m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_subsd_round ((__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_sub_round_ss (__m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_subss_round ((__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-
-#else
-#define _mm_add_round_sd(A, B, C) \
- (__m128d)__builtin_ia32_addsd_round(A, B, C)
-
-#define _mm_add_round_ss(A, B, C) \
- (__m128)__builtin_ia32_addss_round(A, B, C)
-
-#define _mm_sub_round_sd(A, B, C) \
- (__m128d)__builtin_ia32_subsd_round(A, B, C)
-
-#define _mm_sub_round_ss(A, B, C) \
- (__m128)__builtin_ia32_subss_round(A, B, C)
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_ternarylogic_epi64 (__m512i __A, __m512i __B, __m512i __C,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_pternlogq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __C, __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_ternarylogic_epi64 (__m512i __A, __mmask8 __U, __m512i __B,
- __m512i __C, const int __imm)
-{
- return (__m512i) __builtin_ia32_pternlogq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __C, __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_ternarylogic_epi64 (__mmask8 __U, __m512i __A, __m512i __B,
- __m512i __C, const int __imm)
-{
- return (__m512i) __builtin_ia32_pternlogq512_maskz ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __C,
- __imm, (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_ternarylogic_epi32 (__m512i __A, __m512i __B, __m512i __C,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_pternlogd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __C,
- __imm, (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_ternarylogic_epi32 (__m512i __A, __mmask16 __U, __m512i __B,
- __m512i __C, const int __imm)
-{
- return (__m512i) __builtin_ia32_pternlogd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __C,
- __imm, (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_ternarylogic_epi32 (__mmask16 __U, __m512i __A, __m512i __B,
- __m512i __C, const int __imm)
-{
- return (__m512i) __builtin_ia32_pternlogd512_maskz ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __C,
- __imm, (__mmask16) __U);
-}
-#else
-#define _mm512_ternarylogic_epi64(A, B, C, I) \
- ((__m512i) __builtin_ia32_pternlogq512_mask ((__v8di)(__m512i)(A), \
- (__v8di)(__m512i)(B), (__v8di)(__m512i)(C), (int)(I), (__mmask8)-1))
-#define _mm512_mask_ternarylogic_epi64(A, U, B, C, I) \
- ((__m512i) __builtin_ia32_pternlogq512_mask ((__v8di)(__m512i)(A), \
- (__v8di)(__m512i)(B), (__v8di)(__m512i)(C), (int)(I), (__mmask8)(U)))
-#define _mm512_maskz_ternarylogic_epi64(U, A, B, C, I) \
- ((__m512i) __builtin_ia32_pternlogq512_maskz ((__v8di)(__m512i)(A), \
- (__v8di)(__m512i)(B), (__v8di)(__m512i)(C), (int)(I), (__mmask8)(U)))
-#define _mm512_ternarylogic_epi32(A, B, C, I) \
- ((__m512i) __builtin_ia32_pternlogd512_mask ((__v16si)(__m512i)(A), \
- (__v16si)(__m512i)(B), (__v16si)(__m512i)(C), (int)(I), \
- (__mmask16)-1))
-#define _mm512_mask_ternarylogic_epi32(A, U, B, C, I) \
- ((__m512i) __builtin_ia32_pternlogd512_mask ((__v16si)(__m512i)(A), \
- (__v16si)(__m512i)(B), (__v16si)(__m512i)(C), (int)(I), \
- (__mmask16)(U)))
-#define _mm512_maskz_ternarylogic_epi32(U, A, B, C, I) \
- ((__m512i) __builtin_ia32_pternlogd512_maskz ((__v16si)(__m512i)(A), \
- (__v16si)(__m512i)(B), (__v16si)(__m512i)(C), (int)(I), \
- (__mmask16)(U)))
-#endif
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rcp14_pd (__m512d __A)
-{
- return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rcp14_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rcp14_pd (__mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rcp14_ps (__m512 __A)
-{
- return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rcp14_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rcp14_ps (__mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rcp14_sd (__m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_rcp14sd ((__v2df) __B,
- (__v2df) __A);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rcp14_ss (__m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_rcp14ss ((__v4sf) __B,
- (__v4sf) __A);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rsqrt14_pd (__m512d __A)
-{
- return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rsqrt14_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rsqrt14_pd (__mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rsqrt14_ps (__m512 __A)
-{
- return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rsqrt14_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rsqrt14_ps (__mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rsqrt14_sd (__m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_rsqrt14sd ((__v2df) __B,
- (__v2df) __A);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rsqrt14_ss (__m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_rsqrt14ss ((__v4sf) __B,
- (__v4sf) __A);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sqrt_round_pd (__m512d __A, const int __R)
-{
- return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sqrt_round_pd (__m512d __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sqrt_round_pd (__mmask8 __U, __m512d __A, const int __R)
-{
- return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sqrt_round_ps (__m512 __A, const int __R)
-{
- return (__m512) __builtin_ia32_sqrtps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sqrt_round_ps (__m512 __W, __mmask16 __U, __m512 __A, const int __R)
-{
- return (__m512) __builtin_ia32_sqrtps512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sqrt_round_ps (__mmask16 __U, __m512 __A, const int __R)
-{
- return (__m512) __builtin_ia32_sqrtps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_sqrt_round_sd (__m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_sqrtsd_round ((__v2df) __B,
- (__v2df) __A,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_sqrt_round_ss (__m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_sqrtss_round ((__v4sf) __B,
- (__v4sf) __A,
- __R);
-}
-#else
-#define _mm512_sqrt_round_pd(A, C) \
- (__m512d)__builtin_ia32_sqrtpd512_mask(A, (__v8df)_mm512_undefined_pd(), -1, C)
-
-#define _mm512_mask_sqrt_round_pd(W, U, A, C) \
- (__m512d)__builtin_ia32_sqrtpd512_mask(A, W, U, C)
-
-#define _mm512_maskz_sqrt_round_pd(U, A, C) \
- (__m512d)__builtin_ia32_sqrtpd512_mask(A, (__v8df)_mm512_setzero_pd(), U, C)
-
-#define _mm512_sqrt_round_ps(A, C) \
- (__m512)__builtin_ia32_sqrtps512_mask(A, (__v16sf)_mm512_undefined_ps(), -1, C)
-
-#define _mm512_mask_sqrt_round_ps(W, U, A, C) \
- (__m512)__builtin_ia32_sqrtps512_mask(A, W, U, C)
-
-#define _mm512_maskz_sqrt_round_ps(U, A, C) \
- (__m512)__builtin_ia32_sqrtps512_mask(A, (__v16sf)_mm512_setzero_ps(), U, C)
-
-#define _mm_sqrt_round_sd(A, B, C) \
- (__m128d)__builtin_ia32_sqrtsd_round(A, B, C)
-
-#define _mm_sqrt_round_ss(A, B, C) \
- (__m128)__builtin_ia32_sqrtss_round(A, B, C)
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi8_epi32 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxbd512_mask ((__v16qi) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi8_epi32 (__m512i __W, __mmask16 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxbd512_mask ((__v16qi) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi8_epi32 (__mmask16 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxbd512_mask ((__v16qi) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi8_epi64 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxbq512_mask ((__v16qi) __A,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi8_epi64 (__m512i __W, __mmask8 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxbq512_mask ((__v16qi) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi8_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxbq512_mask ((__v16qi) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi16_epi32 (__m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxwd512_mask ((__v16hi) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi16_epi32 (__m512i __W, __mmask16 __U, __m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxwd512_mask ((__v16hi) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi16_epi32 (__mmask16 __U, __m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxwd512_mask ((__v16hi) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi16_epi64 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxwq512_mask ((__v8hi) __A,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi16_epi64 (__m512i __W, __mmask8 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxwq512_mask ((__v8hi) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi16_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovsxwq512_mask ((__v8hi) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi32_epi64 (__m256i __X)
-{
- return (__m512i) __builtin_ia32_pmovsxdq512_mask ((__v8si) __X,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi32_epi64 (__m512i __W, __mmask8 __U, __m256i __X)
-{
- return (__m512i) __builtin_ia32_pmovsxdq512_mask ((__v8si) __X,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi32_epi64 (__mmask8 __U, __m256i __X)
-{
- return (__m512i) __builtin_ia32_pmovsxdq512_mask ((__v8si) __X,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu8_epi32 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxbd512_mask ((__v16qi) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu8_epi32 (__m512i __W, __mmask16 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxbd512_mask ((__v16qi) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu8_epi32 (__mmask16 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxbd512_mask ((__v16qi) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu8_epi64 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxbq512_mask ((__v16qi) __A,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu8_epi64 (__m512i __W, __mmask8 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxbq512_mask ((__v16qi) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxbq512_mask ((__v16qi) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu16_epi32 (__m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxwd512_mask ((__v16hi) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu16_epi32 (__m512i __W, __mmask16 __U, __m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxwd512_mask ((__v16hi) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu16_epi32 (__mmask16 __U, __m256i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxwd512_mask ((__v16hi) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu16_epi64 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxwq512_mask ((__v8hi) __A,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu16_epi64 (__m512i __W, __mmask8 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxwq512_mask ((__v8hi) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu16_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pmovzxwq512_mask ((__v8hi) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu32_epi64 (__m256i __X)
-{
- return (__m512i) __builtin_ia32_pmovzxdq512_mask ((__v8si) __X,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu32_epi64 (__m512i __W, __mmask8 __U, __m256i __X)
-{
- return (__m512i) __builtin_ia32_pmovzxdq512_mask ((__v8si) __X,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu32_epi64 (__mmask8 __U, __m256i __X)
-{
- return (__m512i) __builtin_ia32_pmovzxdq512_mask ((__v8si) __X,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_add_round_pd (__m512d __A, __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_addpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_add_round_pd (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_addpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_add_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- const int __R)
-{
- return (__m512d) __builtin_ia32_addpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_add_round_ps (__m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_addps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_add_round_ps (__m512 __W, __mmask16 __U, __m512 __A,
- __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_addps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_add_round_ps (__mmask16 __U, __m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_addps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sub_round_pd (__m512d __A, __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_subpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sub_round_pd (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_subpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sub_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- const int __R)
-{
- return (__m512d) __builtin_ia32_subpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sub_round_ps (__m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_subps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sub_round_ps (__m512 __W, __mmask16 __U, __m512 __A,
- __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_subps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sub_round_ps (__mmask16 __U, __m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_subps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-#else
-#define _mm512_add_round_pd(A, B, C) \
- (__m512d)__builtin_ia32_addpd512_mask(A, B, (__v8df)_mm512_undefined_pd(), -1, C)
-
-#define _mm512_mask_add_round_pd(W, U, A, B, C) \
- (__m512d)__builtin_ia32_addpd512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_add_round_pd(U, A, B, C) \
- (__m512d)__builtin_ia32_addpd512_mask(A, B, (__v8df)_mm512_setzero_pd(), U, C)
-
-#define _mm512_add_round_ps(A, B, C) \
- (__m512)__builtin_ia32_addps512_mask(A, B, (__v16sf)_mm512_undefined_ps(), -1, C)
-
-#define _mm512_mask_add_round_ps(W, U, A, B, C) \
- (__m512)__builtin_ia32_addps512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_add_round_ps(U, A, B, C) \
- (__m512)__builtin_ia32_addps512_mask(A, B, (__v16sf)_mm512_setzero_ps(), U, C)
-
-#define _mm512_sub_round_pd(A, B, C) \
- (__m512d)__builtin_ia32_subpd512_mask(A, B, (__v8df)_mm512_undefined_pd(), -1, C)
-
-#define _mm512_mask_sub_round_pd(W, U, A, B, C) \
- (__m512d)__builtin_ia32_subpd512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_sub_round_pd(U, A, B, C) \
- (__m512d)__builtin_ia32_subpd512_mask(A, B, (__v8df)_mm512_setzero_pd(), U, C)
-
-#define _mm512_sub_round_ps(A, B, C) \
- (__m512)__builtin_ia32_subps512_mask(A, B, (__v16sf)_mm512_undefined_ps(), -1, C)
-
-#define _mm512_mask_sub_round_ps(W, U, A, B, C) \
- (__m512)__builtin_ia32_subps512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_sub_round_ps(U, A, B, C) \
- (__m512)__builtin_ia32_subps512_mask(A, B, (__v16sf)_mm512_setzero_ps(), U, C)
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mul_round_pd (__m512d __A, __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_mulpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mul_round_pd (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_mulpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mul_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- const int __R)
-{
- return (__m512d) __builtin_ia32_mulpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mul_round_ps (__m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_mulps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mul_round_ps (__m512 __W, __mmask16 __U, __m512 __A,
- __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_mulps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mul_round_ps (__mmask16 __U, __m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_mulps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_div_round_pd (__m512d __M, __m512d __V, const int __R)
-{
- return (__m512d) __builtin_ia32_divpd512_mask ((__v8df) __M,
- (__v8df) __V,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_div_round_pd (__m512d __W, __mmask8 __U, __m512d __M,
- __m512d __V, const int __R)
-{
- return (__m512d) __builtin_ia32_divpd512_mask ((__v8df) __M,
- (__v8df) __V,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_div_round_pd (__mmask8 __U, __m512d __M, __m512d __V,
- const int __R)
-{
- return (__m512d) __builtin_ia32_divpd512_mask ((__v8df) __M,
- (__v8df) __V,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_div_round_ps (__m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_divps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_div_round_ps (__m512 __W, __mmask16 __U, __m512 __A,
- __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_divps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_div_round_ps (__mmask16 __U, __m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_divps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mul_round_sd (__m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_mulsd_round ((__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mul_round_ss (__m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_mulss_round ((__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_div_round_sd (__m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_divsd_round ((__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_div_round_ss (__m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_divss_round ((__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-
-#else
-#define _mm512_mul_round_pd(A, B, C) \
- (__m512d)__builtin_ia32_mulpd512_mask(A, B, (__v8df)_mm512_undefined_pd(), -1, C)
-
-#define _mm512_mask_mul_round_pd(W, U, A, B, C) \
- (__m512d)__builtin_ia32_mulpd512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_mul_round_pd(U, A, B, C) \
- (__m512d)__builtin_ia32_mulpd512_mask(A, B, (__v8df)_mm512_setzero_pd(), U, C)
-
-#define _mm512_mul_round_ps(A, B, C) \
- (__m512)__builtin_ia32_mulps512_mask(A, B, (__v16sf)_mm512_undefined_ps(), -1, C)
-
-#define _mm512_mask_mul_round_ps(W, U, A, B, C) \
- (__m512)__builtin_ia32_mulps512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_mul_round_ps(U, A, B, C) \
- (__m512)__builtin_ia32_mulps512_mask(A, B, (__v16sf)_mm512_setzero_ps(), U, C)
-
-#define _mm512_div_round_pd(A, B, C) \
- (__m512d)__builtin_ia32_divpd512_mask(A, B, (__v8df)_mm512_undefined_pd(), -1, C)
-
-#define _mm512_mask_div_round_pd(W, U, A, B, C) \
- (__m512d)__builtin_ia32_divpd512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_div_round_pd(U, A, B, C) \
- (__m512d)__builtin_ia32_divpd512_mask(A, B, (__v8df)_mm512_setzero_pd(), U, C)
-
-#define _mm512_div_round_ps(A, B, C) \
- (__m512)__builtin_ia32_divps512_mask(A, B, (__v16sf)_mm512_undefined_ps(), -1, C)
-
-#define _mm512_mask_div_round_ps(W, U, A, B, C) \
- (__m512)__builtin_ia32_divps512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_div_round_ps(U, A, B, C) \
- (__m512)__builtin_ia32_divps512_mask(A, B, (__v16sf)_mm512_setzero_ps(), U, C)
-
-#define _mm_mul_round_sd(A, B, C) \
- (__m128d)__builtin_ia32_mulsd_round(A, B, C)
-
-#define _mm_mul_round_ss(A, B, C) \
- (__m128)__builtin_ia32_mulss_round(A, B, C)
-
-#define _mm_div_round_sd(A, B, C) \
- (__m128d)__builtin_ia32_divsd_round(A, B, C)
-
-#define _mm_div_round_ss(A, B, C) \
- (__m128)__builtin_ia32_divss_round(A, B, C)
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_round_pd (__m512d __A, __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_round_pd (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- const int __R)
-{
- return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_round_ps (__m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_round_ps (__m512 __W, __mmask16 __U, __m512 __A,
- __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_round_ps (__mmask16 __U, __m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_round_pd (__m512d __A, __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_round_pd (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- const int __R)
-{
- return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_round_ps (__m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_round_ps (__m512 __W, __mmask16 __U, __m512 __A,
- __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_round_ps (__mmask16 __U, __m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-#else
-#define _mm512_max_round_pd(A, B, R) \
- (__m512d)__builtin_ia32_maxpd512_mask(A, B, (__v8df)_mm512_undefined_pd(), -1, R)
-
-#define _mm512_mask_max_round_pd(W, U, A, B, R) \
- (__m512d)__builtin_ia32_maxpd512_mask(A, B, W, U, R)
-
-#define _mm512_maskz_max_round_pd(U, A, B, R) \
- (__m512d)__builtin_ia32_maxpd512_mask(A, B, (__v8df)_mm512_setzero_pd(), U, R)
-
-#define _mm512_max_round_ps(A, B, R) \
- (__m512)__builtin_ia32_maxps512_mask(A, B, (__v16sf)_mm512_undefined_pd(), -1, R)
-
-#define _mm512_mask_max_round_ps(W, U, A, B, R) \
- (__m512)__builtin_ia32_maxps512_mask(A, B, W, U, R)
-
-#define _mm512_maskz_max_round_ps(U, A, B, R) \
- (__m512)__builtin_ia32_maxps512_mask(A, B, (__v16sf)_mm512_setzero_ps(), U, R)
-
-#define _mm512_min_round_pd(A, B, R) \
- (__m512d)__builtin_ia32_minpd512_mask(A, B, (__v8df)_mm512_undefined_pd(), -1, R)
-
-#define _mm512_mask_min_round_pd(W, U, A, B, R) \
- (__m512d)__builtin_ia32_minpd512_mask(A, B, W, U, R)
-
-#define _mm512_maskz_min_round_pd(U, A, B, R) \
- (__m512d)__builtin_ia32_minpd512_mask(A, B, (__v8df)_mm512_setzero_pd(), U, R)
-
-#define _mm512_min_round_ps(A, B, R) \
- (__m512)__builtin_ia32_minps512_mask(A, B, (__v16sf)_mm512_undefined_ps(), -1, R)
-
-#define _mm512_mask_min_round_ps(W, U, A, B, R) \
- (__m512)__builtin_ia32_minps512_mask(A, B, W, U, R)
-
-#define _mm512_maskz_min_round_ps(U, A, B, R) \
- (__m512)__builtin_ia32_minps512_mask(A, B, (__v16sf)_mm512_setzero_ps(), U, R)
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_scalef_round_pd (__m512d __A, __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_scalef_round_pd (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B, const int __R)
-{
- return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_scalef_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- const int __R)
-{
- return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_scalef_round_ps (__m512 __A, __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_scalef_round_ps (__m512 __W, __mmask16 __U, __m512 __A,
- __m512 __B, const int __R)
-{
- return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_scalef_round_ps (__mmask16 __U, __m512 __A, __m512 __B,
- const int __R)
-{
- return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_scalef_round_sd (__m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_scalefsd_round ((__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_scalef_round_ss (__m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_scalefss_round ((__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-#else
-#define _mm512_scalef_round_pd(A, B, C) \
- (__m512d)__builtin_ia32_scalefpd512_mask(A, B, (__v8df)_mm512_undefined_pd(), -1, C)
-
-#define _mm512_mask_scalef_round_pd(W, U, A, B, C) \
- (__m512d)__builtin_ia32_scalefpd512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_scalef_round_pd(U, A, B, C) \
- (__m512d)__builtin_ia32_scalefpd512_mask(A, B, (__v8df)_mm512_setzero_pd(), U, C)
-
-#define _mm512_scalef_round_ps(A, B, C) \
- (__m512)__builtin_ia32_scalefps512_mask(A, B, (__v16sf)_mm512_undefined_ps(), -1, C)
-
-#define _mm512_mask_scalef_round_ps(W, U, A, B, C) \
- (__m512)__builtin_ia32_scalefps512_mask(A, B, W, U, C)
-
-#define _mm512_maskz_scalef_round_ps(U, A, B, C) \
- (__m512)__builtin_ia32_scalefps512_mask(A, B, (__v16sf)_mm512_setzero_ps(), U, C)
-
-#define _mm_scalef_round_sd(A, B, C) \
- (__m128d)__builtin_ia32_scalefsd_round(A, B, C)
-
-#define _mm_scalef_round_ss(A, B, C) \
- (__m128)__builtin_ia32_scalefss_round(A, B, C)
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmadd_round_pd (__m512d __A, __m512d __B, __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmadd_round_pd (__m512d __A, __mmask8 __U, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmadd_round_pd (__m512d __A, __m512d __B, __m512d __C,
- __mmask8 __U, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmadd_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmadd_round_ps (__m512 __A, __m512 __B, __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmadd_round_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmadd_round_ps (__m512 __A, __m512 __B, __m512 __C,
- __mmask16 __U, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmadd_round_ps (__mmask16 __U, __m512 __A, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmsub_round_pd (__m512d __A, __m512d __B, __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmsub_round_pd (__m512d __A, __mmask8 __U, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmsub_round_pd (__m512d __A, __m512d __B, __m512d __C,
- __mmask8 __U, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmsubpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmsub_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmsub_round_ps (__m512 __A, __m512 __B, __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmsub_round_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmsub_round_ps (__m512 __A, __m512 __B, __m512 __C,
- __mmask16 __U, const int __R)
-{
- return (__m512) __builtin_ia32_vfmsubps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmsub_round_ps (__mmask16 __U, __m512 __A, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmaddsub_round_pd (__m512d __A, __m512d __B, __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmaddsub_round_pd (__m512d __A, __mmask8 __U, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmaddsub_round_pd (__m512d __A, __m512d __B, __m512d __C,
- __mmask8 __U, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmaddsub_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmaddsub_round_ps (__m512 __A, __m512 __B, __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmaddsub_round_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmaddsub_round_ps (__m512 __A, __m512 __B, __m512 __C,
- __mmask16 __U, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmaddsub_round_ps (__mmask16 __U, __m512 __A, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmsubadd_round_pd (__m512d __A, __m512d __B, __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmsubadd_round_pd (__m512d __A, __mmask8 __U, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmsubadd_round_pd (__m512d __A, __m512d __B, __m512d __C,
- __mmask8 __U, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmsubaddpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmsubadd_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmsubadd_round_ps (__m512 __A, __m512 __B, __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmsubadd_round_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmsubadd_round_ps (__m512 __A, __m512 __B, __m512 __C,
- __mmask16 __U, const int __R)
-{
- return (__m512) __builtin_ia32_vfmsubaddps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmsubadd_round_ps (__mmask16 __U, __m512 __A, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fnmadd_round_pd (__m512d __A, __m512d __B, __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask (-(__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fnmadd_round_pd (__m512d __A, __mmask8 __U, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfnmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fnmadd_round_pd (__m512d __A, __m512d __B, __m512d __C,
- __mmask8 __U, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask3 (-(__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fnmadd_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fnmadd_round_ps (__m512 __A, __m512 __B, __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask (-(__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fnmadd_round_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfnmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fnmadd_round_ps (__m512 __A, __m512 __B, __m512 __C,
- __mmask16 __U, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask3 (-(__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fnmadd_round_ps (__mmask16 __U, __m512 __A, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fnmsub_round_pd (__m512d __A, __m512d __B, __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask (-(__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fnmsub_round_pd (__m512d __A, __mmask8 __U, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfnmsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fnmsub_round_pd (__m512d __A, __m512d __B, __m512d __C,
- __mmask8 __U, const int __R)
-{
- return (__m512d) __builtin_ia32_vfnmsubpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fnmsub_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- __m512d __C, const int __R)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fnmsub_round_ps (__m512 __A, __m512 __B, __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask (-(__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fnmsub_round_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfnmsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fnmsub_round_ps (__m512 __A, __m512 __B, __m512 __C,
- __mmask16 __U, const int __R)
-{
- return (__m512) __builtin_ia32_vfnmsubps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fnmsub_round_ps (__mmask16 __U, __m512 __A, __m512 __B,
- __m512 __C, const int __R)
-{
- return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U, __R);
-}
-#else
-#define _mm512_fmadd_round_pd(A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_mask(A, B, C, -1, R)
-
-#define _mm512_mask_fmadd_round_pd(A, U, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_mask(A, B, C, U, R)
-
-#define _mm512_mask3_fmadd_round_pd(A, B, C, U, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fmadd_round_pd(U, A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_maskz(A, B, C, U, R)
-
-#define _mm512_fmadd_round_ps(A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_mask(A, B, C, -1, R)
-
-#define _mm512_mask_fmadd_round_ps(A, U, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_mask(A, B, C, U, R)
-
-#define _mm512_mask3_fmadd_round_ps(A, B, C, U, R) \
- (__m512)__builtin_ia32_vfmaddps512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fmadd_round_ps(U, A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_maskz(A, B, C, U, R)
-
-#define _mm512_fmsub_round_pd(A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_mask(A, B, -(C), -1, R)
-
-#define _mm512_mask_fmsub_round_pd(A, U, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_mask(A, B, -(C), U, R)
-
-#define _mm512_mask3_fmsub_round_pd(A, B, C, U, R) \
- (__m512d)__builtin_ia32_vfmsubpd512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fmsub_round_pd(U, A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_maskz(A, B, -(C), U, R)
-
-#define _mm512_fmsub_round_ps(A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_mask(A, B, -(C), -1, R)
-
-#define _mm512_mask_fmsub_round_ps(A, U, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_mask(A, B, -(C), U, R)
-
-#define _mm512_mask3_fmsub_round_ps(A, B, C, U, R) \
- (__m512)__builtin_ia32_vfmsubps512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fmsub_round_ps(U, A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_maskz(A, B, -(C), U, R)
-
-#define _mm512_fmaddsub_round_pd(A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddsubpd512_mask(A, B, C, -1, R)
-
-#define _mm512_mask_fmaddsub_round_pd(A, U, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_mask(A, B, C, U, R)
-
-#define _mm512_mask3_fmaddsub_round_pd(A, B, C, U, R) \
- (__m512d)__builtin_ia32_vfmaddsubpd512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fmaddsub_round_pd(U, A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddsubpd512_maskz(A, B, C, U, R)
-
-#define _mm512_fmaddsub_round_ps(A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddsubps512_mask(A, B, C, -1, R)
-
-#define _mm512_mask_fmaddsub_round_ps(A, U, B, C, R) \
- (__m512)__builtin_ia32_vfmaddsubps512_mask(A, B, C, U, R)
-
-#define _mm512_mask3_fmaddsub_round_ps(A, B, C, U, R) \
- (__m512)__builtin_ia32_vfmaddsubps512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fmaddsub_round_ps(U, A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddsubps512_maskz(A, B, C, U, R)
-
-#define _mm512_fmsubadd_round_pd(A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddsubpd512_mask(A, B, -(C), -1, R)
-
-#define _mm512_mask_fmsubadd_round_pd(A, U, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddsubpd512_mask(A, B, -(C), U, R)
-
-#define _mm512_mask3_fmsubadd_round_pd(A, B, C, U, R) \
- (__m512d)__builtin_ia32_vfmsubaddpd512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fmsubadd_round_pd(U, A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddsubpd512_maskz(A, B, -(C), U, R)
-
-#define _mm512_fmsubadd_round_ps(A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddsubps512_mask(A, B, -(C), -1, R)
-
-#define _mm512_mask_fmsubadd_round_ps(A, U, B, C, R) \
- (__m512)__builtin_ia32_vfmaddsubps512_mask(A, B, -(C), U, R)
-
-#define _mm512_mask3_fmsubadd_round_ps(A, B, C, U, R) \
- (__m512)__builtin_ia32_vfmsubaddps512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fmsubadd_round_ps(U, A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddsubps512_maskz(A, B, -(C), U, R)
-
-#define _mm512_fnmadd_round_pd(A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_mask(-(A), B, C, -1, R)
-
-#define _mm512_mask_fnmadd_round_pd(A, U, B, C, R) \
- (__m512d)__builtin_ia32_vfnmaddpd512_mask(-(A), B, C, U, R)
-
-#define _mm512_mask3_fnmadd_round_pd(A, B, C, U, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_mask3(-(A), B, C, U, R)
-
-#define _mm512_maskz_fnmadd_round_pd(U, A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_maskz(-(A), B, C, U, R)
-
-#define _mm512_fnmadd_round_ps(A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_mask(-(A), B, C, -1, R)
-
-#define _mm512_mask_fnmadd_round_ps(A, U, B, C, R) \
- (__m512)__builtin_ia32_vfnmaddps512_mask(-(A), B, C, U, R)
-
-#define _mm512_mask3_fnmadd_round_ps(A, B, C, U, R) \
- (__m512)__builtin_ia32_vfmaddps512_mask3(-(A), B, C, U, R)
-
-#define _mm512_maskz_fnmadd_round_ps(U, A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_maskz(-(A), B, C, U, R)
-
-#define _mm512_fnmsub_round_pd(A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_mask(-(A), B, -(C), -1, R)
-
-#define _mm512_mask_fnmsub_round_pd(A, U, B, C, R) \
- (__m512d)__builtin_ia32_vfnmsubpd512_mask(A, B, C, U, R)
-
-#define _mm512_mask3_fnmsub_round_pd(A, B, C, U, R) \
- (__m512d)__builtin_ia32_vfnmsubpd512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fnmsub_round_pd(U, A, B, C, R) \
- (__m512d)__builtin_ia32_vfmaddpd512_maskz(-(A), B, -(C), U, R)
-
-#define _mm512_fnmsub_round_ps(A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_mask(-(A), B, -(C), -1, R)
-
-#define _mm512_mask_fnmsub_round_ps(A, U, B, C, R) \
- (__m512)__builtin_ia32_vfnmsubps512_mask(A, B, C, U, R)
-
-#define _mm512_mask3_fnmsub_round_ps(A, B, C, U, R) \
- (__m512)__builtin_ia32_vfnmsubps512_mask3(A, B, C, U, R)
-
-#define _mm512_maskz_fnmsub_round_ps(U, A, B, C, R) \
- (__m512)__builtin_ia32_vfmaddps512_maskz(-(A), B, -(C), U, R)
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_abs_epi64 (__m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsq512_mask ((__v8di) __A,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_abs_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsq512_mask ((__v8di) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_abs_epi64 (__mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsq512_mask ((__v8di) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_abs_epi32 (__m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsd512_mask ((__v16si) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_abs_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsd512_mask ((__v16si) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_abs_epi32 (__mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_pabsd512_mask ((__v16si) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcastss_ps (__m128 __A)
-{
- return (__m512) __builtin_ia32_broadcastss512 ((__v4sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcastss_ps (__m512 __O, __mmask16 __M, __m128 __A)
-{
- return (__m512) __builtin_ia32_broadcastss512 ((__v4sf) __A,
- (__v16sf) __O, __M);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcastss_ps (__mmask16 __M, __m128 __A)
-{
- return (__m512) __builtin_ia32_broadcastss512 ((__v4sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- __M);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcastsd_pd (__m128d __A)
-{
- return (__m512d) __builtin_ia32_broadcastsd512 ((__v2df) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcastsd_pd (__m512d __O, __mmask8 __M, __m128d __A)
-{
- return (__m512d) __builtin_ia32_broadcastsd512 ((__v2df) __A,
- (__v8df) __O, __M);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A)
-{
- return (__m512d) __builtin_ia32_broadcastsd512 ((__v2df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcastd_epi32 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastd512 ((__v4si) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcastd_epi32 (__m512i __O, __mmask16 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastd512 ((__v4si) __A,
- (__v16si) __O, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcastd_epi32 (__mmask16 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastd512 ((__v4si) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set1_epi32 (int __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastd512_gpr_mask (__A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16)(-1));
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_set1_epi32 (__m512i __O, __mmask16 __M, int __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastd512_gpr_mask (__A, (__v16si) __O,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_set1_epi32 (__mmask16 __M, int __A)
-{
- return (__m512i)
- __builtin_ia32_pbroadcastd512_gpr_mask (__A,
- (__v16si) _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcastq_epi64 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastq512 ((__v2di) __A,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcastq_epi64 (__m512i __O, __mmask8 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastq512 ((__v2di) __A,
- (__v8di) __O, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastq512 ((__v2di) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_set1_epi64 (long long __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastq512_gpr_mask (__A,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8)(-1));
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_set1_epi64 (__m512i __O, __mmask8 __M, long long __A)
-{
- return (__m512i) __builtin_ia32_pbroadcastq512_gpr_mask (__A, (__v8di) __O,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_set1_epi64 (__mmask8 __M, long long __A)
-{
- return (__m512i)
- __builtin_ia32_pbroadcastq512_gpr_mask (__A,
- (__v8di) _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_f32x4 (__m128 __A)
-{
- return (__m512) __builtin_ia32_broadcastf32x4_512 ((__v4sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_f32x4 (__m512 __O, __mmask16 __M, __m128 __A)
-{
- return (__m512) __builtin_ia32_broadcastf32x4_512 ((__v4sf) __A,
- (__v16sf) __O,
- __M);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_f32x4 (__mmask16 __M, __m128 __A)
-{
- return (__m512) __builtin_ia32_broadcastf32x4_512 ((__v4sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_i32x4 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti32x4_512 ((__v4si) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_i32x4 (__m512i __O, __mmask16 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti32x4_512 ((__v4si) __A,
- (__v16si) __O,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_i32x4 (__mmask16 __M, __m128i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti32x4_512 ((__v4si) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_f64x4 (__m256d __A)
-{
- return (__m512d) __builtin_ia32_broadcastf64x4_512 ((__v4df) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_f64x4 (__m512d __O, __mmask8 __M, __m256d __A)
-{
- return (__m512d) __builtin_ia32_broadcastf64x4_512 ((__v4df) __A,
- (__v8df) __O,
- __M);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_f64x4 (__mmask8 __M, __m256d __A)
-{
- return (__m512d) __builtin_ia32_broadcastf64x4_512 ((__v4df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_broadcast_i64x4 (__m256i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti64x4_512 ((__v4di) __A,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_broadcast_i64x4 (__m512i __O, __mmask8 __M, __m256i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti64x4_512 ((__v4di) __A,
- (__v8di) __O,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_broadcast_i64x4 (__mmask8 __M, __m256i __A)
-{
- return (__m512i) __builtin_ia32_broadcasti64x4_512 ((__v4di) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-typedef enum
-{
- _MM_PERM_AAAA = 0x00, _MM_PERM_AAAB = 0x01, _MM_PERM_AAAC = 0x02,
- _MM_PERM_AAAD = 0x03, _MM_PERM_AABA = 0x04, _MM_PERM_AABB = 0x05,
- _MM_PERM_AABC = 0x06, _MM_PERM_AABD = 0x07, _MM_PERM_AACA = 0x08,
- _MM_PERM_AACB = 0x09, _MM_PERM_AACC = 0x0A, _MM_PERM_AACD = 0x0B,
- _MM_PERM_AADA = 0x0C, _MM_PERM_AADB = 0x0D, _MM_PERM_AADC = 0x0E,
- _MM_PERM_AADD = 0x0F, _MM_PERM_ABAA = 0x10, _MM_PERM_ABAB = 0x11,
- _MM_PERM_ABAC = 0x12, _MM_PERM_ABAD = 0x13, _MM_PERM_ABBA = 0x14,
- _MM_PERM_ABBB = 0x15, _MM_PERM_ABBC = 0x16, _MM_PERM_ABBD = 0x17,
- _MM_PERM_ABCA = 0x18, _MM_PERM_ABCB = 0x19, _MM_PERM_ABCC = 0x1A,
- _MM_PERM_ABCD = 0x1B, _MM_PERM_ABDA = 0x1C, _MM_PERM_ABDB = 0x1D,
- _MM_PERM_ABDC = 0x1E, _MM_PERM_ABDD = 0x1F, _MM_PERM_ACAA = 0x20,
- _MM_PERM_ACAB = 0x21, _MM_PERM_ACAC = 0x22, _MM_PERM_ACAD = 0x23,
- _MM_PERM_ACBA = 0x24, _MM_PERM_ACBB = 0x25, _MM_PERM_ACBC = 0x26,
- _MM_PERM_ACBD = 0x27, _MM_PERM_ACCA = 0x28, _MM_PERM_ACCB = 0x29,
- _MM_PERM_ACCC = 0x2A, _MM_PERM_ACCD = 0x2B, _MM_PERM_ACDA = 0x2C,
- _MM_PERM_ACDB = 0x2D, _MM_PERM_ACDC = 0x2E, _MM_PERM_ACDD = 0x2F,
- _MM_PERM_ADAA = 0x30, _MM_PERM_ADAB = 0x31, _MM_PERM_ADAC = 0x32,
- _MM_PERM_ADAD = 0x33, _MM_PERM_ADBA = 0x34, _MM_PERM_ADBB = 0x35,
- _MM_PERM_ADBC = 0x36, _MM_PERM_ADBD = 0x37, _MM_PERM_ADCA = 0x38,
- _MM_PERM_ADCB = 0x39, _MM_PERM_ADCC = 0x3A, _MM_PERM_ADCD = 0x3B,
- _MM_PERM_ADDA = 0x3C, _MM_PERM_ADDB = 0x3D, _MM_PERM_ADDC = 0x3E,
- _MM_PERM_ADDD = 0x3F, _MM_PERM_BAAA = 0x40, _MM_PERM_BAAB = 0x41,
- _MM_PERM_BAAC = 0x42, _MM_PERM_BAAD = 0x43, _MM_PERM_BABA = 0x44,
- _MM_PERM_BABB = 0x45, _MM_PERM_BABC = 0x46, _MM_PERM_BABD = 0x47,
- _MM_PERM_BACA = 0x48, _MM_PERM_BACB = 0x49, _MM_PERM_BACC = 0x4A,
- _MM_PERM_BACD = 0x4B, _MM_PERM_BADA = 0x4C, _MM_PERM_BADB = 0x4D,
- _MM_PERM_BADC = 0x4E, _MM_PERM_BADD = 0x4F, _MM_PERM_BBAA = 0x50,
- _MM_PERM_BBAB = 0x51, _MM_PERM_BBAC = 0x52, _MM_PERM_BBAD = 0x53,
- _MM_PERM_BBBA = 0x54, _MM_PERM_BBBB = 0x55, _MM_PERM_BBBC = 0x56,
- _MM_PERM_BBBD = 0x57, _MM_PERM_BBCA = 0x58, _MM_PERM_BBCB = 0x59,
- _MM_PERM_BBCC = 0x5A, _MM_PERM_BBCD = 0x5B, _MM_PERM_BBDA = 0x5C,
- _MM_PERM_BBDB = 0x5D, _MM_PERM_BBDC = 0x5E, _MM_PERM_BBDD = 0x5F,
- _MM_PERM_BCAA = 0x60, _MM_PERM_BCAB = 0x61, _MM_PERM_BCAC = 0x62,
- _MM_PERM_BCAD = 0x63, _MM_PERM_BCBA = 0x64, _MM_PERM_BCBB = 0x65,
- _MM_PERM_BCBC = 0x66, _MM_PERM_BCBD = 0x67, _MM_PERM_BCCA = 0x68,
- _MM_PERM_BCCB = 0x69, _MM_PERM_BCCC = 0x6A, _MM_PERM_BCCD = 0x6B,
- _MM_PERM_BCDA = 0x6C, _MM_PERM_BCDB = 0x6D, _MM_PERM_BCDC = 0x6E,
- _MM_PERM_BCDD = 0x6F, _MM_PERM_BDAA = 0x70, _MM_PERM_BDAB = 0x71,
- _MM_PERM_BDAC = 0x72, _MM_PERM_BDAD = 0x73, _MM_PERM_BDBA = 0x74,
- _MM_PERM_BDBB = 0x75, _MM_PERM_BDBC = 0x76, _MM_PERM_BDBD = 0x77,
- _MM_PERM_BDCA = 0x78, _MM_PERM_BDCB = 0x79, _MM_PERM_BDCC = 0x7A,
- _MM_PERM_BDCD = 0x7B, _MM_PERM_BDDA = 0x7C, _MM_PERM_BDDB = 0x7D,
- _MM_PERM_BDDC = 0x7E, _MM_PERM_BDDD = 0x7F, _MM_PERM_CAAA = 0x80,
- _MM_PERM_CAAB = 0x81, _MM_PERM_CAAC = 0x82, _MM_PERM_CAAD = 0x83,
- _MM_PERM_CABA = 0x84, _MM_PERM_CABB = 0x85, _MM_PERM_CABC = 0x86,
- _MM_PERM_CABD = 0x87, _MM_PERM_CACA = 0x88, _MM_PERM_CACB = 0x89,
- _MM_PERM_CACC = 0x8A, _MM_PERM_CACD = 0x8B, _MM_PERM_CADA = 0x8C,
- _MM_PERM_CADB = 0x8D, _MM_PERM_CADC = 0x8E, _MM_PERM_CADD = 0x8F,
- _MM_PERM_CBAA = 0x90, _MM_PERM_CBAB = 0x91, _MM_PERM_CBAC = 0x92,
- _MM_PERM_CBAD = 0x93, _MM_PERM_CBBA = 0x94, _MM_PERM_CBBB = 0x95,
- _MM_PERM_CBBC = 0x96, _MM_PERM_CBBD = 0x97, _MM_PERM_CBCA = 0x98,
- _MM_PERM_CBCB = 0x99, _MM_PERM_CBCC = 0x9A, _MM_PERM_CBCD = 0x9B,
- _MM_PERM_CBDA = 0x9C, _MM_PERM_CBDB = 0x9D, _MM_PERM_CBDC = 0x9E,
- _MM_PERM_CBDD = 0x9F, _MM_PERM_CCAA = 0xA0, _MM_PERM_CCAB = 0xA1,
- _MM_PERM_CCAC = 0xA2, _MM_PERM_CCAD = 0xA3, _MM_PERM_CCBA = 0xA4,
- _MM_PERM_CCBB = 0xA5, _MM_PERM_CCBC = 0xA6, _MM_PERM_CCBD = 0xA7,
- _MM_PERM_CCCA = 0xA8, _MM_PERM_CCCB = 0xA9, _MM_PERM_CCCC = 0xAA,
- _MM_PERM_CCCD = 0xAB, _MM_PERM_CCDA = 0xAC, _MM_PERM_CCDB = 0xAD,
- _MM_PERM_CCDC = 0xAE, _MM_PERM_CCDD = 0xAF, _MM_PERM_CDAA = 0xB0,
- _MM_PERM_CDAB = 0xB1, _MM_PERM_CDAC = 0xB2, _MM_PERM_CDAD = 0xB3,
- _MM_PERM_CDBA = 0xB4, _MM_PERM_CDBB = 0xB5, _MM_PERM_CDBC = 0xB6,
- _MM_PERM_CDBD = 0xB7, _MM_PERM_CDCA = 0xB8, _MM_PERM_CDCB = 0xB9,
- _MM_PERM_CDCC = 0xBA, _MM_PERM_CDCD = 0xBB, _MM_PERM_CDDA = 0xBC,
- _MM_PERM_CDDB = 0xBD, _MM_PERM_CDDC = 0xBE, _MM_PERM_CDDD = 0xBF,
- _MM_PERM_DAAA = 0xC0, _MM_PERM_DAAB = 0xC1, _MM_PERM_DAAC = 0xC2,
- _MM_PERM_DAAD = 0xC3, _MM_PERM_DABA = 0xC4, _MM_PERM_DABB = 0xC5,
- _MM_PERM_DABC = 0xC6, _MM_PERM_DABD = 0xC7, _MM_PERM_DACA = 0xC8,
- _MM_PERM_DACB = 0xC9, _MM_PERM_DACC = 0xCA, _MM_PERM_DACD = 0xCB,
- _MM_PERM_DADA = 0xCC, _MM_PERM_DADB = 0xCD, _MM_PERM_DADC = 0xCE,
- _MM_PERM_DADD = 0xCF, _MM_PERM_DBAA = 0xD0, _MM_PERM_DBAB = 0xD1,
- _MM_PERM_DBAC = 0xD2, _MM_PERM_DBAD = 0xD3, _MM_PERM_DBBA = 0xD4,
- _MM_PERM_DBBB = 0xD5, _MM_PERM_DBBC = 0xD6, _MM_PERM_DBBD = 0xD7,
- _MM_PERM_DBCA = 0xD8, _MM_PERM_DBCB = 0xD9, _MM_PERM_DBCC = 0xDA,
- _MM_PERM_DBCD = 0xDB, _MM_PERM_DBDA = 0xDC, _MM_PERM_DBDB = 0xDD,
- _MM_PERM_DBDC = 0xDE, _MM_PERM_DBDD = 0xDF, _MM_PERM_DCAA = 0xE0,
- _MM_PERM_DCAB = 0xE1, _MM_PERM_DCAC = 0xE2, _MM_PERM_DCAD = 0xE3,
- _MM_PERM_DCBA = 0xE4, _MM_PERM_DCBB = 0xE5, _MM_PERM_DCBC = 0xE6,
- _MM_PERM_DCBD = 0xE7, _MM_PERM_DCCA = 0xE8, _MM_PERM_DCCB = 0xE9,
- _MM_PERM_DCCC = 0xEA, _MM_PERM_DCCD = 0xEB, _MM_PERM_DCDA = 0xEC,
- _MM_PERM_DCDB = 0xED, _MM_PERM_DCDC = 0xEE, _MM_PERM_DCDD = 0xEF,
- _MM_PERM_DDAA = 0xF0, _MM_PERM_DDAB = 0xF1, _MM_PERM_DDAC = 0xF2,
- _MM_PERM_DDAD = 0xF3, _MM_PERM_DDBA = 0xF4, _MM_PERM_DDBB = 0xF5,
- _MM_PERM_DDBC = 0xF6, _MM_PERM_DDBD = 0xF7, _MM_PERM_DDCA = 0xF8,
- _MM_PERM_DDCB = 0xF9, _MM_PERM_DDCC = 0xFA, _MM_PERM_DDCD = 0xFB,
- _MM_PERM_DDDA = 0xFC, _MM_PERM_DDDB = 0xFD, _MM_PERM_DDDC = 0xFE,
- _MM_PERM_DDDD = 0xFF
-} _MM_PERM_ENUM;
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shuffle_epi32 (__m512i __A, _MM_PERM_ENUM __mask)
-{
- return (__m512i) __builtin_ia32_pshufd512_mask ((__v16si) __A,
- __mask,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shuffle_epi32 (__m512i __W, __mmask16 __U, __m512i __A,
- _MM_PERM_ENUM __mask)
-{
- return (__m512i) __builtin_ia32_pshufd512_mask ((__v16si) __A,
- __mask,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shuffle_epi32 (__mmask16 __U, __m512i __A, _MM_PERM_ENUM __mask)
-{
- return (__m512i) __builtin_ia32_pshufd512_mask ((__v16si) __A,
- __mask,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shuffle_i64x2 (__m512i __A, __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di) __A,
- (__v8di) __B, __imm,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shuffle_i64x2 (__m512i __W, __mmask8 __U, __m512i __A,
- __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di) __A,
- (__v8di) __B, __imm,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shuffle_i64x2 (__mmask8 __U, __m512i __A, __m512i __B,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di) __A,
- (__v8di) __B, __imm,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shuffle_i32x4 (__m512i __A, __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_shuf_i32x4_mask ((__v16si) __A,
- (__v16si) __B,
- __imm,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shuffle_i32x4 (__m512i __W, __mmask16 __U, __m512i __A,
- __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_shuf_i32x4_mask ((__v16si) __A,
- (__v16si) __B,
- __imm,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shuffle_i32x4 (__mmask16 __U, __m512i __A, __m512i __B,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_shuf_i32x4_mask ((__v16si) __A,
- (__v16si) __B,
- __imm,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shuffle_f64x2 (__m512d __A, __m512d __B, const int __imm)
-{
- return (__m512d) __builtin_ia32_shuf_f64x2_mask ((__v8df) __A,
- (__v8df) __B, __imm,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shuffle_f64x2 (__m512d __W, __mmask8 __U, __m512d __A,
- __m512d __B, const int __imm)
-{
- return (__m512d) __builtin_ia32_shuf_f64x2_mask ((__v8df) __A,
- (__v8df) __B, __imm,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shuffle_f64x2 (__mmask8 __U, __m512d __A, __m512d __B,
- const int __imm)
-{
- return (__m512d) __builtin_ia32_shuf_f64x2_mask ((__v8df) __A,
- (__v8df) __B, __imm,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shuffle_f32x4 (__m512 __A, __m512 __B, const int __imm)
-{
- return (__m512) __builtin_ia32_shuf_f32x4_mask ((__v16sf) __A,
- (__v16sf) __B, __imm,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shuffle_f32x4 (__m512 __W, __mmask16 __U, __m512 __A,
- __m512 __B, const int __imm)
-{
- return (__m512) __builtin_ia32_shuf_f32x4_mask ((__v16sf) __A,
- (__v16sf) __B, __imm,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shuffle_f32x4 (__mmask16 __U, __m512 __A, __m512 __B,
- const int __imm)
-{
- return (__m512) __builtin_ia32_shuf_f32x4_mask ((__v16sf) __A,
- (__v16sf) __B, __imm,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-#else
-#define _mm512_shuffle_epi32(X, C) \
- ((__m512i) __builtin_ia32_pshufd512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)_mm512_undefined_epi32 (),\
- (__mmask16)-1))
-
-#define _mm512_mask_shuffle_epi32(W, U, X, C) \
- ((__m512i) __builtin_ia32_pshufd512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)(W),\
- (__mmask16)(U)))
-
-#define _mm512_maskz_shuffle_epi32(U, X, C) \
- ((__m512i) __builtin_ia32_pshufd512_mask ((__v16si)(__m512i)(X), (int)(C),\
- (__v16si)(__m512i)_mm512_setzero_si512 (),\
- (__mmask16)(U)))
-
-#define _mm512_shuffle_i64x2(X, Y, C) \
- ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(C),\
- (__v8di)(__m512i)_mm512_undefined_epi32 (),\
- (__mmask8)-1))
-
-#define _mm512_mask_shuffle_i64x2(W, U, X, Y, C) \
- ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(C),\
- (__v8di)(__m512i)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_shuffle_i64x2(U, X, Y, C) \
- ((__m512i) __builtin_ia32_shuf_i64x2_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(C),\
- (__v8di)(__m512i)_mm512_setzero_si512 (),\
- (__mmask8)(U)))
-
-#define _mm512_shuffle_i32x4(X, Y, C) \
- ((__m512i) __builtin_ia32_shuf_i32x4_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(C),\
- (__v16si)(__m512i)_mm512_undefined_epi32 (),\
- (__mmask16)-1))
-
-#define _mm512_mask_shuffle_i32x4(W, U, X, Y, C) \
- ((__m512i) __builtin_ia32_shuf_i32x4_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(C),\
- (__v16si)(__m512i)(W),\
- (__mmask16)(U)))
-
-#define _mm512_maskz_shuffle_i32x4(U, X, Y, C) \
- ((__m512i) __builtin_ia32_shuf_i32x4_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(C),\
- (__v16si)(__m512i)_mm512_setzero_si512 (),\
- (__mmask16)(U)))
-
-#define _mm512_shuffle_f64x2(X, Y, C) \
- ((__m512d) __builtin_ia32_shuf_f64x2_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(C),\
- (__v8df)(__m512d)_mm512_undefined_pd(),\
- (__mmask8)-1))
-
-#define _mm512_mask_shuffle_f64x2(W, U, X, Y, C) \
- ((__m512d) __builtin_ia32_shuf_f64x2_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(C),\
- (__v8df)(__m512d)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_shuffle_f64x2(U, X, Y, C) \
- ((__m512d) __builtin_ia32_shuf_f64x2_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(C),\
- (__v8df)(__m512d)_mm512_setzero_pd(),\
- (__mmask8)(U)))
-
-#define _mm512_shuffle_f32x4(X, Y, C) \
- ((__m512) __builtin_ia32_shuf_f32x4_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(C),\
- (__v16sf)(__m512)_mm512_undefined_ps(),\
- (__mmask16)-1))
-
-#define _mm512_mask_shuffle_f32x4(W, U, X, Y, C) \
- ((__m512) __builtin_ia32_shuf_f32x4_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(C),\
- (__v16sf)(__m512)(W),\
- (__mmask16)(U)))
-
-#define _mm512_maskz_shuffle_f32x4(U, X, Y, C) \
- ((__m512) __builtin_ia32_shuf_f32x4_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(C),\
- (__v16sf)(__m512)_mm512_setzero_ps(),\
- (__mmask16)(U)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rolv_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prolvd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rolv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prolvd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rolv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prolvd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rorv_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prorvd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rorv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prorvd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rorv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prorvd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rolv_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prolvq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rolv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prolvq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rolv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prolvq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rorv_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prorvq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rorv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prorvq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rorv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_prorvq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtt_roundpd_epi32 (__m512d __A, const int __R)
-{
- return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtt_roundpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
- (__v8si) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtt_roundpd_epi32 (__mmask8 __U, __m512d __A, const int __R)
-{
- return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtt_roundpd_epu32 (__m512d __A, const int __R)
-{
- return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtt_roundpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
- (__v8si) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtt_roundpd_epu32 (__mmask8 __U, __m512d __A, const int __R)
-{
- return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U, __R);
-}
-#else
-#define _mm512_cvtt_roundpd_epi32(A, B) \
- ((__m256i)__builtin_ia32_cvttpd2dq512_mask(A, (__v8si)_mm256_undefined_si256(), -1, B))
-
-#define _mm512_mask_cvtt_roundpd_epi32(W, U, A, B) \
- ((__m256i)__builtin_ia32_cvttpd2dq512_mask(A, (__v8si)(W), U, B))
-
-#define _mm512_maskz_cvtt_roundpd_epi32(U, A, B) \
- ((__m256i)__builtin_ia32_cvttpd2dq512_mask(A, (__v8si)_mm256_setzero_si256(), U, B))
-
-#define _mm512_cvtt_roundpd_epu32(A, B) \
- ((__m256i)__builtin_ia32_cvttpd2udq512_mask(A, (__v8si)_mm256_undefined_si256(), -1, B))
-
-#define _mm512_mask_cvtt_roundpd_epu32(W, U, A, B) \
- ((__m256i)__builtin_ia32_cvttpd2udq512_mask(A, (__v8si)(W), U, B))
-
-#define _mm512_maskz_cvtt_roundpd_epu32(U, A, B) \
- ((__m256i)__builtin_ia32_cvttpd2udq512_mask(A, (__v8si)_mm256_setzero_si256(), U, B))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundpd_epi32 (__m512d __A, const int __R)
-{
- return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
- (__v8si) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundpd_epi32 (__mmask8 __U, __m512d __A, const int __R)
-{
- return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundpd_epu32 (__m512d __A, const int __R)
-{
- return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
- (__v8si) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundpd_epu32 (__mmask8 __U, __m512d __A, const int __R)
-{
- return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U, __R);
-}
-#else
-#define _mm512_cvt_roundpd_epi32(A, B) \
- ((__m256i)__builtin_ia32_cvtpd2dq512_mask(A, (__v8si)_mm256_undefined_si256(), -1, B))
-
-#define _mm512_mask_cvt_roundpd_epi32(W, U, A, B) \
- ((__m256i)__builtin_ia32_cvtpd2dq512_mask(A, (__v8si)(W), U, B))
-
-#define _mm512_maskz_cvt_roundpd_epi32(U, A, B) \
- ((__m256i)__builtin_ia32_cvtpd2dq512_mask(A, (__v8si)_mm256_setzero_si256(), U, B))
-
-#define _mm512_cvt_roundpd_epu32(A, B) \
- ((__m256i)__builtin_ia32_cvtpd2udq512_mask(A, (__v8si)_mm256_undefined_si256(), -1, B))
-
-#define _mm512_mask_cvt_roundpd_epu32(W, U, A, B) \
- ((__m256i)__builtin_ia32_cvtpd2udq512_mask(A, (__v8si)(W), U, B))
-
-#define _mm512_maskz_cvt_roundpd_epu32(U, A, B) \
- ((__m256i)__builtin_ia32_cvtpd2udq512_mask(A, (__v8si)_mm256_setzero_si256(), U, B))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtt_roundps_epi32 (__m512 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtt_roundps_epi32 (__m512i __W, __mmask16 __U, __m512 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
- (__v16si) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtt_roundps_epi32 (__mmask16 __U, __m512 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtt_roundps_epu32 (__m512 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtt_roundps_epu32 (__m512i __W, __mmask16 __U, __m512 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
- (__v16si) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtt_roundps_epu32 (__mmask16 __U, __m512 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U, __R);
-}
-#else
-#define _mm512_cvtt_roundps_epi32(A, B) \
- ((__m512i)__builtin_ia32_cvttps2dq512_mask(A, (__v16si)_mm512_undefined_epi32 (), -1, B))
-
-#define _mm512_mask_cvtt_roundps_epi32(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvttps2dq512_mask(A, (__v16si)(W), U, B))
-
-#define _mm512_maskz_cvtt_roundps_epi32(U, A, B) \
- ((__m512i)__builtin_ia32_cvttps2dq512_mask(A, (__v16si)_mm512_setzero_si512 (), U, B))
-
-#define _mm512_cvtt_roundps_epu32(A, B) \
- ((__m512i)__builtin_ia32_cvttps2udq512_mask(A, (__v16si)_mm512_undefined_epi32 (), -1, B))
-
-#define _mm512_mask_cvtt_roundps_epu32(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvttps2udq512_mask(A, (__v16si)(W), U, B))
-
-#define _mm512_maskz_cvtt_roundps_epu32(U, A, B) \
- ((__m512i)__builtin_ia32_cvttps2udq512_mask(A, (__v16si)_mm512_setzero_si512 (), U, B))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundps_epi32 (__m512 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundps_epi32 (__m512i __W, __mmask16 __U, __m512 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
- (__v16si) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundps_epi32 (__mmask16 __U, __m512 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundps_epu32 (__m512 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundps_epu32 (__m512i __W, __mmask16 __U, __m512 __A,
- const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
- (__v16si) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundps_epu32 (__mmask16 __U, __m512 __A, const int __R)
-{
- return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U, __R);
-}
-#else
-#define _mm512_cvt_roundps_epi32(A, B) \
- ((__m512i)__builtin_ia32_cvtps2dq512_mask(A, (__v16si)_mm512_undefined_epi32 (), -1, B))
-
-#define _mm512_mask_cvt_roundps_epi32(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvtps2dq512_mask(A, (__v16si)(W), U, B))
-
-#define _mm512_maskz_cvt_roundps_epi32(U, A, B) \
- ((__m512i)__builtin_ia32_cvtps2dq512_mask(A, (__v16si)_mm512_setzero_si512 (), U, B))
-
-#define _mm512_cvt_roundps_epu32(A, B) \
- ((__m512i)__builtin_ia32_cvtps2udq512_mask(A, (__v16si)_mm512_undefined_epi32 (), -1, B))
-
-#define _mm512_mask_cvt_roundps_epu32(W, U, A, B) \
- ((__m512i)__builtin_ia32_cvtps2udq512_mask(A, (__v16si)(W), U, B))
-
-#define _mm512_maskz_cvt_roundps_epu32(U, A, B) \
- ((__m512i)__builtin_ia32_cvtps2udq512_mask(A, (__v16si)_mm512_setzero_si512 (), U, B))
-#endif
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtu32_sd (__m128d __A, unsigned __B)
-{
- return (__m128d) __builtin_ia32_cvtusi2sd32 ((__v2df) __A, __B);
-}
-
-#ifdef __x86_64__
-#ifdef __OPTIMIZE__
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundu64_sd (__m128d __A, unsigned long long __B, const int __R)
-{
- return (__m128d) __builtin_ia32_cvtusi2sd64 ((__v2df) __A, __B, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundi64_sd (__m128d __A, long long __B, const int __R)
-{
- return (__m128d) __builtin_ia32_cvtsi2sd64 ((__v2df) __A, __B, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsi64_sd (__m128d __A, long long __B, const int __R)
-{
- return (__m128d) __builtin_ia32_cvtsi2sd64 ((__v2df) __A, __B, __R);
-}
-#else
-#define _mm_cvt_roundu64_sd(A, B, C) \
- (__m128d)__builtin_ia32_cvtusi2sd64(A, B, C)
-
-#define _mm_cvt_roundi64_sd(A, B, C) \
- (__m128d)__builtin_ia32_cvtsi2sd64(A, B, C)
-
-#define _mm_cvt_roundsi64_sd(A, B, C) \
- (__m128d)__builtin_ia32_cvtsi2sd64(A, B, C)
-#endif
-
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundu32_ss (__m128 __A, unsigned __B, const int __R)
-{
- return (__m128) __builtin_ia32_cvtusi2ss32 ((__v4sf) __A, __B, __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsi32_ss (__m128 __A, int __B, const int __R)
-{
- return (__m128) __builtin_ia32_cvtsi2ss32 ((__v4sf) __A, __B, __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundi32_ss (__m128 __A, int __B, const int __R)
-{
- return (__m128) __builtin_ia32_cvtsi2ss32 ((__v4sf) __A, __B, __R);
-}
-#else
-#define _mm_cvt_roundu32_ss(A, B, C) \
- (__m128)__builtin_ia32_cvtusi2ss32(A, B, C)
-
-#define _mm_cvt_roundi32_ss(A, B, C) \
- (__m128)__builtin_ia32_cvtsi2ss32(A, B, C)
-
-#define _mm_cvt_roundsi32_ss(A, B, C) \
- (__m128)__builtin_ia32_cvtsi2ss32(A, B, C)
-#endif
-
-#ifdef __x86_64__
-#ifdef __OPTIMIZE__
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundu64_ss (__m128 __A, unsigned long long __B, const int __R)
-{
- return (__m128) __builtin_ia32_cvtusi2ss64 ((__v4sf) __A, __B, __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsi64_ss (__m128 __A, long long __B, const int __R)
-{
- return (__m128) __builtin_ia32_cvtsi2ss64 ((__v4sf) __A, __B, __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundi64_ss (__m128 __A, long long __B, const int __R)
-{
- return (__m128) __builtin_ia32_cvtsi2ss64 ((__v4sf) __A, __B, __R);
-}
-#else
-#define _mm_cvt_roundu64_ss(A, B, C) \
- (__m128)__builtin_ia32_cvtusi2ss64(A, B, C)
-
-#define _mm_cvt_roundi64_ss(A, B, C) \
- (__m128)__builtin_ia32_cvtsi2ss64(A, B, C)
-
-#define _mm_cvt_roundsi64_ss(A, B, C) \
- (__m128)__builtin_ia32_cvtsi2ss64(A, B, C)
-#endif
-
-#endif
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi32_epi8 (__m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask16) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A)
-{
- __builtin_ia32_pmovdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi32_epi8 (__mmask16 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtsepi32_epi8 (__m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask16) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A)
-{
- __builtin_ia32_pmovsdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtsepi32_epi8 (__mmask16 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtusepi32_epi8 (__m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask16) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A)
-{
- __builtin_ia32_pmovusdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtusepi32_epi8 (__mmask16 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi32_epi16 (__m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A,
- (__v16hi)
- _mm256_undefined_si256 (),
- (__mmask16) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi32_storeu_epi16 (void * __P, __mmask16 __M, __m512i __A)
-{
- __builtin_ia32_pmovdw512mem_mask ((__v16hi *) __P, (__v16si) __A, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A,
- (__v16hi) __O, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi32_epi16 (__mmask16 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtsepi32_epi16 (__m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A,
- (__v16hi)
- _mm256_undefined_si256 (),
- (__mmask16) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A)
-{
- __builtin_ia32_pmovsdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A,
- (__v16hi) __O, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtsepi32_epi16 (__mmask16 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtusepi32_epi16 (__m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A,
- (__v16hi)
- _mm256_undefined_si256 (),
- (__mmask16) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A)
-{
- __builtin_ia32_pmovusdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A,
- (__v16hi) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtusepi32_epi16 (__mmask16 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi64_epi32 (__m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A)
-{
- __builtin_ia32_pmovqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A,
- (__v8si) __O, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi64_epi32 (__mmask8 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtsepi64_epi32 (__m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi64_storeu_epi32 (void *__P, __mmask8 __M, __m512i __A)
-{
- __builtin_ia32_pmovsqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A,
- (__v8si) __O, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtsepi64_epi32 (__mmask8 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtusepi64_epi32 (__m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A)
-{
- __builtin_ia32_pmovusqd512mem_mask ((__v8si*) __P, (__v8di) __A, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A,
- (__v8si) __O, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtusepi64_epi32 (__mmask8 __M, __m512i __A)
-{
- return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi64_epi16 (__m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
-{
- __builtin_ia32_pmovqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi64_epi16 (__mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtsepi64_epi16 (__m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m512i __A)
-{
- __builtin_ia32_pmovsqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtsepi64_epi16 (__mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtusepi64_epi16 (__m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
-{
- __builtin_ia32_pmovusqw512mem_mask ((__v8hi*) __P, (__v8di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtusepi64_epi16 (__mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi64_epi8 (__m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A)
-{
- __builtin_ia32_pmovqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi64_epi8 (__mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtsepi64_epi8 (__m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A)
-{
- __builtin_ia32_pmovsqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtsepi64_epi8 (__mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtusepi64_epi8 (__m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A)
-{
- __builtin_ia32_pmovusqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtusepi64_epi8 (__mmask8 __M, __m512i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi32_pd (__m256i __A)
-{
- return (__m512d) __builtin_ia32_cvtdq2pd512_mask ((__v8si) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi32_pd (__m512d __W, __mmask8 __U, __m256i __A)
-{
- return (__m512d) __builtin_ia32_cvtdq2pd512_mask ((__v8si) __A,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi32_pd (__mmask8 __U, __m256i __A)
-{
- return (__m512d) __builtin_ia32_cvtdq2pd512_mask ((__v8si) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu32_pd (__m256i __A)
-{
- return (__m512d) __builtin_ia32_cvtudq2pd512_mask ((__v8si) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu32_pd (__m512d __W, __mmask8 __U, __m256i __A)
-{
- return (__m512d) __builtin_ia32_cvtudq2pd512_mask ((__v8si) __A,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu32_pd (__mmask8 __U, __m256i __A)
-{
- return (__m512d) __builtin_ia32_cvtudq2pd512_mask ((__v8si) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundepi32_ps (__m512i __A, const int __R)
-{
- return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundepi32_ps (__m512 __W, __mmask16 __U, __m512i __A,
- const int __R)
-{
- return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundepi32_ps (__mmask16 __U, __m512i __A, const int __R)
-{
- return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundepu32_ps (__m512i __A, const int __R)
-{
- return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundepu32_ps (__m512 __W, __mmask16 __U, __m512i __A,
- const int __R)
-{
- return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundepu32_ps (__mmask16 __U, __m512i __A, const int __R)
-{
- return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-#else
-#define _mm512_cvt_roundepi32_ps(A, B) \
- (__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(A), (__v16sf)_mm512_undefined_ps(), -1, B)
-
-#define _mm512_mask_cvt_roundepi32_ps(W, U, A, B) \
- (__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(A), W, U, B)
-
-#define _mm512_maskz_cvt_roundepi32_ps(U, A, B) \
- (__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(A), (__v16sf)_mm512_setzero_ps(), U, B)
-
-#define _mm512_cvt_roundepu32_ps(A, B) \
- (__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(A), (__v16sf)_mm512_undefined_ps(), -1, B)
-
-#define _mm512_mask_cvt_roundepu32_ps(W, U, A, B) \
- (__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(A), W, U, B)
-
-#define _mm512_maskz_cvt_roundepu32_ps(U, A, B) \
- (__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(A), (__v16sf)_mm512_setzero_ps(), U, B)
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_extractf64x4_pd (__m512d __A, const int __imm)
-{
- return (__m256d) __builtin_ia32_extractf64x4_mask ((__v8df) __A,
- __imm,
- (__v4df)
- _mm256_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_extractf64x4_pd (__m256d __W, __mmask8 __U, __m512d __A,
- const int __imm)
-{
- return (__m256d) __builtin_ia32_extractf64x4_mask ((__v8df) __A,
- __imm,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_extractf64x4_pd (__mmask8 __U, __m512d __A, const int __imm)
-{
- return (__m256d) __builtin_ia32_extractf64x4_mask ((__v8df) __A,
- __imm,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_extractf32x4_ps (__m512 __A, const int __imm)
-{
- return (__m128) __builtin_ia32_extractf32x4_mask ((__v16sf) __A,
- __imm,
- (__v4sf)
- _mm_undefined_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_extractf32x4_ps (__m128 __W, __mmask8 __U, __m512 __A,
- const int __imm)
-{
- return (__m128) __builtin_ia32_extractf32x4_mask ((__v16sf) __A,
- __imm,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_extractf32x4_ps (__mmask8 __U, __m512 __A, const int __imm)
-{
- return (__m128) __builtin_ia32_extractf32x4_mask ((__v16sf) __A,
- __imm,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_extracti64x4_epi64 (__m512i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_extracti64x4_mask ((__v8di) __A,
- __imm,
- (__v4di)
- _mm256_undefined_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_extracti64x4_epi64 (__m256i __W, __mmask8 __U, __m512i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_extracti64x4_mask ((__v8di) __A,
- __imm,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_extracti64x4_epi64 (__mmask8 __U, __m512i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_extracti64x4_mask ((__v8di) __A,
- __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_extracti32x4_epi32 (__m512i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti32x4_mask ((__v16si) __A,
- __imm,
- (__v4si)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_extracti32x4_epi32 (__m128i __W, __mmask8 __U, __m512i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti32x4_mask ((__v16si) __A,
- __imm,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_extracti32x4_epi32 (__mmask8 __U, __m512i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti32x4_mask ((__v16si) __A,
- __imm,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-#else
-
-#define _mm512_extractf64x4_pd(X, C) \
- ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (X), \
- (int) (C),\
- (__v4df)(__m256d)_mm256_undefined_pd(),\
- (__mmask8)-1))
-
-#define _mm512_mask_extractf64x4_pd(W, U, X, C) \
- ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (X), \
- (int) (C),\
- (__v4df)(__m256d)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_extractf64x4_pd(U, X, C) \
- ((__m256d) __builtin_ia32_extractf64x4_mask ((__v8df)(__m512d) (X), \
- (int) (C),\
- (__v4df)(__m256d)_mm256_setzero_pd(),\
- (__mmask8)(U)))
-
-#define _mm512_extractf32x4_ps(X, C) \
- ((__m128) __builtin_ia32_extractf32x4_mask ((__v16sf)(__m512) (X), \
- (int) (C),\
- (__v4sf)(__m128)_mm_undefined_ps(),\
- (__mmask8)-1))
-
-#define _mm512_mask_extractf32x4_ps(W, U, X, C) \
- ((__m128) __builtin_ia32_extractf32x4_mask ((__v16sf)(__m512) (X), \
- (int) (C),\
- (__v4sf)(__m128)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_extractf32x4_ps(U, X, C) \
- ((__m128) __builtin_ia32_extractf32x4_mask ((__v16sf)(__m512) (X), \
- (int) (C),\
- (__v4sf)(__m128)_mm_setzero_ps(),\
- (__mmask8)(U)))
-
-#define _mm512_extracti64x4_epi64(X, C) \
- ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (X), \
- (int) (C),\
- (__v4di)(__m256i)_mm256_undefined_si256 (),\
- (__mmask8)-1))
-
-#define _mm512_mask_extracti64x4_epi64(W, U, X, C) \
- ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (X), \
- (int) (C),\
- (__v4di)(__m256i)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_extracti64x4_epi64(U, X, C) \
- ((__m256i) __builtin_ia32_extracti64x4_mask ((__v8di)(__m512i) (X), \
- (int) (C),\
- (__v4di)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)(U)))
-
-#define _mm512_extracti32x4_epi32(X, C) \
- ((__m128i) __builtin_ia32_extracti32x4_mask ((__v16si)(__m512i) (X), \
- (int) (C),\
- (__v4si)(__m128i)_mm_undefined_si128 (),\
- (__mmask8)-1))
-
-#define _mm512_mask_extracti32x4_epi32(W, U, X, C) \
- ((__m128i) __builtin_ia32_extracti32x4_mask ((__v16si)(__m512i) (X), \
- (int) (C),\
- (__v4si)(__m128i)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_extracti32x4_epi32(U, X, C) \
- ((__m128i) __builtin_ia32_extracti32x4_mask ((__v16si)(__m512i) (X), \
- (int) (C),\
- (__v4si)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_inserti32x4 (__m512i __A, __m128i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti32x4_mask ((__v16si) __A,
- (__v4si) __B,
- __imm,
- (__v16si) __A, -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_insertf32x4 (__m512 __A, __m128 __B, const int __imm)
-{
- return (__m512) __builtin_ia32_insertf32x4_mask ((__v16sf) __A,
- (__v4sf) __B,
- __imm,
- (__v16sf) __A, -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_inserti64x4 (__m512i __A, __m256i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti64x4_mask ((__v8di) __A,
- (__v4di) __B,
- __imm,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_inserti64x4 (__m512i __W, __mmask8 __U, __m512i __A,
- __m256i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti64x4_mask ((__v8di) __A,
- (__v4di) __B,
- __imm,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_inserti64x4 (__mmask8 __U, __m512i __A, __m256i __B,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti64x4_mask ((__v8di) __A,
- (__v4di) __B,
- __imm,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_insertf64x4 (__m512d __A, __m256d __B, const int __imm)
-{
- return (__m512d) __builtin_ia32_insertf64x4_mask ((__v8df) __A,
- (__v4df) __B,
- __imm,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_insertf64x4 (__m512d __W, __mmask8 __U, __m512d __A,
- __m256d __B, const int __imm)
-{
- return (__m512d) __builtin_ia32_insertf64x4_mask ((__v8df) __A,
- (__v4df) __B,
- __imm,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_insertf64x4 (__mmask8 __U, __m512d __A, __m256d __B,
- const int __imm)
-{
- return (__m512d) __builtin_ia32_insertf64x4_mask ((__v8df) __A,
- (__v4df) __B,
- __imm,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-#else
-#define _mm512_insertf32x4(X, Y, C) \
- ((__m512) __builtin_ia32_insertf32x4_mask ((__v16sf)(__m512) (X), \
- (__v4sf)(__m128) (Y), (int) (C), (__v16sf)(__m512) (X), (__mmask16)(-1)))
-
-#define _mm512_inserti32x4(X, Y, C) \
- ((__m512i) __builtin_ia32_inserti32x4_mask ((__v16si)(__m512i) (X), \
- (__v4si)(__m128i) (Y), (int) (C), (__v16si)(__m512i) (X), (__mmask16)(-1)))
-
-#define _mm512_insertf64x4(X, Y, C) \
- ((__m512d) __builtin_ia32_insertf64x4_mask ((__v8df)(__m512d) (X), \
- (__v4df)(__m256d) (Y), (int) (C), \
- (__v8df)(__m512d)_mm512_undefined_pd(), \
- (__mmask8)-1))
-
-#define _mm512_mask_insertf64x4(W, U, X, Y, C) \
- ((__m512d) __builtin_ia32_insertf64x4_mask ((__v8df)(__m512d) (X), \
- (__v4df)(__m256d) (Y), (int) (C), \
- (__v8df)(__m512d)(W), \
- (__mmask8)(U)))
-
-#define _mm512_maskz_insertf64x4(U, X, Y, C) \
- ((__m512d) __builtin_ia32_insertf64x4_mask ((__v8df)(__m512d) (X), \
- (__v4df)(__m256d) (Y), (int) (C), \
- (__v8df)(__m512d)_mm512_setzero_pd(), \
- (__mmask8)(U)))
-
-#define _mm512_inserti64x4(X, Y, C) \
- ((__m512i) __builtin_ia32_inserti64x4_mask ((__v8di)(__m512i) (X), \
- (__v4di)(__m256i) (Y), (int) (C), \
- (__v8di)(__m512i)_mm512_undefined_epi32 (), \
- (__mmask8)-1))
-
-#define _mm512_mask_inserti64x4(W, U, X, Y, C) \
- ((__m512i) __builtin_ia32_inserti64x4_mask ((__v8di)(__m512i) (X), \
- (__v4di)(__m256i) (Y), (int) (C),\
- (__v8di)(__m512i)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_inserti64x4(U, X, Y, C) \
- ((__m512i) __builtin_ia32_inserti64x4_mask ((__v8di)(__m512i) (X), \
- (__v4di)(__m256i) (Y), (int) (C), \
- (__v8di)(__m512i)_mm512_setzero_si512 (), \
- (__mmask8)(U)))
-#endif
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_loadu_pd (void const *__P)
-{
- return *(__m512d_u *)__P;
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_loadu_pd (__m512d __W, __mmask8 __U, void const *__P)
-{
- return (__m512d) __builtin_ia32_loadupd512_mask ((const double *) __P,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_loadu_pd (__mmask8 __U, void const *__P)
-{
- return (__m512d) __builtin_ia32_loadupd512_mask ((const double *) __P,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_storeu_pd (void *__P, __m512d __A)
-{
- *(__m512d_u *)__P = __A;
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_storeu_pd (void *__P, __mmask8 __U, __m512d __A)
-{
- __builtin_ia32_storeupd512_mask ((double *) __P, (__v8df) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_loadu_ps (void const *__P)
-{
- return *(__m512_u *)__P;
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_loadu_ps (__m512 __W, __mmask16 __U, void const *__P)
-{
- return (__m512) __builtin_ia32_loadups512_mask ((const float *) __P,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_loadu_ps (__mmask16 __U, void const *__P)
-{
- return (__m512) __builtin_ia32_loadups512_mask ((const float *) __P,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_storeu_ps (void *__P, __m512 __A)
-{
- *(__m512_u *)__P = __A;
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_storeu_ps (void *__P, __mmask16 __U, __m512 __A)
-{
- __builtin_ia32_storeups512_mask ((float *) __P, (__v16sf) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_loadu_epi64 (__m512i __W, __mmask8 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *) __P,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_loadu_epi64 (__mmask8 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *) __P,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_storeu_epi64 (void *__P, __mmask8 __U, __m512i __A)
-{
- __builtin_ia32_storedqudi512_mask ((long long *) __P, (__v8di) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_loadu_si512 (void const *__P)
-{
- return *(__m512i_u *)__P;
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_loadu_epi32 (__m512i __W, __mmask16 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *) __P,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_loadu_epi32 (__mmask16 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *) __P,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_storeu_si512 (void *__P, __m512i __A)
-{
- *(__m512i_u *)__P = __A;
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_storeu_epi32 (void *__P, __mmask16 __U, __m512i __A)
-{
- __builtin_ia32_storedqusi512_mask ((int *) __P, (__v16si) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutevar_pd (__m512d __A, __m512i __C)
-{
- return (__m512d) __builtin_ia32_vpermilvarpd512_mask ((__v8df) __A,
- (__v8di) __C,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutevar_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512i __C)
-{
- return (__m512d) __builtin_ia32_vpermilvarpd512_mask ((__v8df) __A,
- (__v8di) __C,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutevar_pd (__mmask8 __U, __m512d __A, __m512i __C)
-{
- return (__m512d) __builtin_ia32_vpermilvarpd512_mask ((__v8df) __A,
- (__v8di) __C,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutevar_ps (__m512 __A, __m512i __C)
-{
- return (__m512) __builtin_ia32_vpermilvarps512_mask ((__v16sf) __A,
- (__v16si) __C,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutevar_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512i __C)
-{
- return (__m512) __builtin_ia32_vpermilvarps512_mask ((__v16sf) __A,
- (__v16si) __C,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutevar_ps (__mmask16 __U, __m512 __A, __m512i __C)
-{
- return (__m512) __builtin_ia32_vpermilvarps512_mask ((__v16sf) __A,
- (__v16si) __C,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutex2var_epi64 (__m512i __A, __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2varq512_mask ((__v8di) __I
- /* idx */ ,
- (__v8di) __A,
- (__v8di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutex2var_epi64 (__m512i __A, __mmask8 __U, __m512i __I,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2varq512_mask ((__v8di) __I
- /* idx */ ,
- (__v8di) __A,
- (__v8di) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask2_permutex2var_epi64 (__m512i __A, __m512i __I,
- __mmask8 __U, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermi2varq512_mask ((__v8di) __A,
- (__v8di) __I
- /* idx */ ,
- (__v8di) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutex2var_epi64 (__mmask8 __U, __m512i __A,
- __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2varq512_maskz ((__v8di) __I
- /* idx */ ,
- (__v8di) __A,
- (__v8di) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutex2var_epi32 (__m512i __A, __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2vard512_mask ((__v16si) __I
- /* idx */ ,
- (__v16si) __A,
- (__v16si) __B,
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutex2var_epi32 (__m512i __A, __mmask16 __U,
- __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2vard512_mask ((__v16si) __I
- /* idx */ ,
- (__v16si) __A,
- (__v16si) __B,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask2_permutex2var_epi32 (__m512i __A, __m512i __I,
- __mmask16 __U, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermi2vard512_mask ((__v16si) __A,
- (__v16si) __I
- /* idx */ ,
- (__v16si) __B,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutex2var_epi32 (__mmask16 __U, __m512i __A,
- __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2vard512_maskz ((__v16si) __I
- /* idx */ ,
- (__v16si) __A,
- (__v16si) __B,
- (__mmask16) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutex2var_pd (__m512d __A, __m512i __I, __m512d __B)
-{
- return (__m512d) __builtin_ia32_vpermt2varpd512_mask ((__v8di) __I
- /* idx */ ,
- (__v8df) __A,
- (__v8df) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutex2var_pd (__m512d __A, __mmask8 __U, __m512i __I,
- __m512d __B)
-{
- return (__m512d) __builtin_ia32_vpermt2varpd512_mask ((__v8di) __I
- /* idx */ ,
- (__v8df) __A,
- (__v8df) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask2_permutex2var_pd (__m512d __A, __m512i __I, __mmask8 __U,
- __m512d __B)
-{
- return (__m512d) __builtin_ia32_vpermi2varpd512_mask ((__v8df) __A,
- (__v8di) __I
- /* idx */ ,
- (__v8df) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutex2var_pd (__mmask8 __U, __m512d __A, __m512i __I,
- __m512d __B)
-{
- return (__m512d) __builtin_ia32_vpermt2varpd512_maskz ((__v8di) __I
- /* idx */ ,
- (__v8df) __A,
- (__v8df) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutex2var_ps (__m512 __A, __m512i __I, __m512 __B)
-{
- return (__m512) __builtin_ia32_vpermt2varps512_mask ((__v16si) __I
- /* idx */ ,
- (__v16sf) __A,
- (__v16sf) __B,
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutex2var_ps (__m512 __A, __mmask16 __U, __m512i __I, __m512 __B)
-{
- return (__m512) __builtin_ia32_vpermt2varps512_mask ((__v16si) __I
- /* idx */ ,
- (__v16sf) __A,
- (__v16sf) __B,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask2_permutex2var_ps (__m512 __A, __m512i __I, __mmask16 __U,
- __m512 __B)
-{
- return (__m512) __builtin_ia32_vpermi2varps512_mask ((__v16sf) __A,
- (__v16si) __I
- /* idx */ ,
- (__v16sf) __B,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutex2var_ps (__mmask16 __U, __m512 __A, __m512i __I,
- __m512 __B)
-{
- return (__m512) __builtin_ia32_vpermt2varps512_maskz ((__v16si) __I
- /* idx */ ,
- (__v16sf) __A,
- (__v16sf) __B,
- (__mmask16) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permute_pd (__m512d __X, const int __C)
-{
- return (__m512d) __builtin_ia32_vpermilpd512_mask ((__v8df) __X, __C,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permute_pd (__m512d __W, __mmask8 __U, __m512d __X, const int __C)
-{
- return (__m512d) __builtin_ia32_vpermilpd512_mask ((__v8df) __X, __C,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permute_pd (__mmask8 __U, __m512d __X, const int __C)
-{
- return (__m512d) __builtin_ia32_vpermilpd512_mask ((__v8df) __X, __C,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permute_ps (__m512 __X, const int __C)
-{
- return (__m512) __builtin_ia32_vpermilps512_mask ((__v16sf) __X, __C,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permute_ps (__m512 __W, __mmask16 __U, __m512 __X, const int __C)
-{
- return (__m512) __builtin_ia32_vpermilps512_mask ((__v16sf) __X, __C,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permute_ps (__mmask16 __U, __m512 __X, const int __C)
-{
- return (__m512) __builtin_ia32_vpermilps512_mask ((__v16sf) __X, __C,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-#else
-#define _mm512_permute_pd(X, C) \
- ((__m512d) __builtin_ia32_vpermilpd512_mask ((__v8df)(__m512d)(X), (int)(C), \
- (__v8df)(__m512d)_mm512_undefined_pd(),\
- (__mmask8)(-1)))
-
-#define _mm512_mask_permute_pd(W, U, X, C) \
- ((__m512d) __builtin_ia32_vpermilpd512_mask ((__v8df)(__m512d)(X), (int)(C), \
- (__v8df)(__m512d)(W), \
- (__mmask8)(U)))
-
-#define _mm512_maskz_permute_pd(U, X, C) \
- ((__m512d) __builtin_ia32_vpermilpd512_mask ((__v8df)(__m512d)(X), (int)(C), \
- (__v8df)(__m512d)_mm512_setzero_pd(), \
- (__mmask8)(U)))
-
-#define _mm512_permute_ps(X, C) \
- ((__m512) __builtin_ia32_vpermilps512_mask ((__v16sf)(__m512)(X), (int)(C), \
- (__v16sf)(__m512)_mm512_undefined_ps(),\
- (__mmask16)(-1)))
-
-#define _mm512_mask_permute_ps(W, U, X, C) \
- ((__m512) __builtin_ia32_vpermilps512_mask ((__v16sf)(__m512)(X), (int)(C), \
- (__v16sf)(__m512)(W), \
- (__mmask16)(U)))
-
-#define _mm512_maskz_permute_ps(U, X, C) \
- ((__m512) __builtin_ia32_vpermilps512_mask ((__v16sf)(__m512)(X), (int)(C), \
- (__v16sf)(__m512)_mm512_setzero_ps(), \
- (__mmask16)(U)))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutex_epi64 (__m512i __X, const int __I)
-{
- return (__m512i) __builtin_ia32_permdi512_mask ((__v8di) __X, __I,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) (-1));
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutex_epi64 (__m512i __W, __mmask8 __M,
- __m512i __X, const int __I)
-{
- return (__m512i) __builtin_ia32_permdi512_mask ((__v8di) __X, __I,
- (__v8di) __W,
- (__mmask8) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutex_epi64 (__mmask8 __M, __m512i __X, const int __I)
-{
- return (__m512i) __builtin_ia32_permdi512_mask ((__v8di) __X, __I,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __M);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutex_pd (__m512d __X, const int __M)
-{
- return (__m512d) __builtin_ia32_permdf512_mask ((__v8df) __X, __M,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutex_pd (__m512d __W, __mmask8 __U, __m512d __X, const int __M)
-{
- return (__m512d) __builtin_ia32_permdf512_mask ((__v8df) __X, __M,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutex_pd (__mmask8 __U, __m512d __X, const int __M)
-{
- return (__m512d) __builtin_ia32_permdf512_mask ((__v8df) __X, __M,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-#else
-#define _mm512_permutex_pd(X, M) \
- ((__m512d) __builtin_ia32_permdf512_mask ((__v8df)(__m512d)(X), (int)(M), \
- (__v8df)(__m512d)_mm512_undefined_pd(),\
- (__mmask8)-1))
-
-#define _mm512_mask_permutex_pd(W, U, X, M) \
- ((__m512d) __builtin_ia32_permdf512_mask ((__v8df)(__m512d)(X), (int)(M), \
- (__v8df)(__m512d)(W), (__mmask8)(U)))
-
-#define _mm512_maskz_permutex_pd(U, X, M) \
- ((__m512d) __builtin_ia32_permdf512_mask ((__v8df)(__m512d)(X), (int)(M), \
- (__v8df)(__m512d)_mm512_setzero_pd(),\
- (__mmask8)(U)))
-
-#define _mm512_permutex_epi64(X, I) \
- ((__m512i) __builtin_ia32_permdi512_mask ((__v8di)(__m512i)(X), \
- (int)(I), \
- (__v8di)(__m512i) \
- (_mm512_undefined_epi32 ()),\
- (__mmask8)(-1)))
-
-#define _mm512_maskz_permutex_epi64(M, X, I) \
- ((__m512i) __builtin_ia32_permdi512_mask ((__v8di)(__m512i)(X), \
- (int)(I), \
- (__v8di)(__m512i) \
- (_mm512_setzero_si512 ()),\
- (__mmask8)(M)))
-
-#define _mm512_mask_permutex_epi64(W, M, X, I) \
- ((__m512i) __builtin_ia32_permdi512_mask ((__v8di)(__m512i)(X), \
- (int)(I), \
- (__v8di)(__m512i)(W), \
- (__mmask8)(M)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutexvar_epi64 (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_permvardi512_mask ((__v8di) __Y,
- (__v8di) __X,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutexvar_epi64 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_permvardi512_mask ((__v8di) __Y,
- (__v8di) __X,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutexvar_epi64 (__m512i __W, __mmask8 __M, __m512i __X,
- __m512i __Y)
-{
- return (__m512i) __builtin_ia32_permvardi512_mask ((__v8di) __Y,
- (__v8di) __X,
- (__v8di) __W,
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutexvar_epi32 (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_permvarsi512_mask ((__v16si) __Y,
- (__v16si) __X,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutexvar_epi32 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_permvarsi512_mask ((__v16si) __Y,
- (__v16si) __X,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutexvar_epi32 (__m512i __W, __mmask16 __M, __m512i __X,
- __m512i __Y)
-{
- return (__m512i) __builtin_ia32_permvarsi512_mask ((__v16si) __Y,
- (__v16si) __X,
- (__v16si) __W,
- __M);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutexvar_pd (__m512i __X, __m512d __Y)
-{
- return (__m512d) __builtin_ia32_permvardf512_mask ((__v8df) __Y,
- (__v8di) __X,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutexvar_pd (__m512d __W, __mmask8 __U, __m512i __X, __m512d __Y)
-{
- return (__m512d) __builtin_ia32_permvardf512_mask ((__v8df) __Y,
- (__v8di) __X,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutexvar_pd (__mmask8 __U, __m512i __X, __m512d __Y)
-{
- return (__m512d) __builtin_ia32_permvardf512_mask ((__v8df) __Y,
- (__v8di) __X,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutexvar_ps (__m512i __X, __m512 __Y)
-{
- return (__m512) __builtin_ia32_permvarsf512_mask ((__v16sf) __Y,
- (__v16si) __X,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutexvar_ps (__m512 __W, __mmask16 __U, __m512i __X, __m512 __Y)
-{
- return (__m512) __builtin_ia32_permvarsf512_mask ((__v16sf) __Y,
- (__v16si) __X,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutexvar_ps (__mmask16 __U, __m512i __X, __m512 __Y)
-{
- return (__m512) __builtin_ia32_permvarsf512_mask ((__v16sf) __Y,
- (__v16si) __X,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shuffle_ps (__m512 __M, __m512 __V, const int __imm)
-{
- return (__m512) __builtin_ia32_shufps512_mask ((__v16sf) __M,
- (__v16sf) __V, __imm,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shuffle_ps (__m512 __W, __mmask16 __U, __m512 __M,
- __m512 __V, const int __imm)
-{
- return (__m512) __builtin_ia32_shufps512_mask ((__v16sf) __M,
- (__v16sf) __V, __imm,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shuffle_ps (__mmask16 __U, __m512 __M, __m512 __V, const int __imm)
-{
- return (__m512) __builtin_ia32_shufps512_mask ((__v16sf) __M,
- (__v16sf) __V, __imm,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_shuffle_pd (__m512d __M, __m512d __V, const int __imm)
-{
- return (__m512d) __builtin_ia32_shufpd512_mask ((__v8df) __M,
- (__v8df) __V, __imm,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_shuffle_pd (__m512d __W, __mmask8 __U, __m512d __M,
- __m512d __V, const int __imm)
-{
- return (__m512d) __builtin_ia32_shufpd512_mask ((__v8df) __M,
- (__v8df) __V, __imm,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_shuffle_pd (__mmask8 __U, __m512d __M, __m512d __V,
- const int __imm)
-{
- return (__m512d) __builtin_ia32_shufpd512_mask ((__v8df) __M,
- (__v8df) __V, __imm,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fixupimm_round_pd (__m512d __A, __m512d __B, __m512i __C,
- const int __imm, const int __R)
-{
- return (__m512d) __builtin_ia32_fixupimmpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8di) __C,
- __imm,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fixupimm_round_pd (__m512d __A, __mmask8 __U, __m512d __B,
- __m512i __C, const int __imm, const int __R)
-{
- return (__m512d) __builtin_ia32_fixupimmpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8di) __C,
- __imm,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fixupimm_round_pd (__mmask8 __U, __m512d __A, __m512d __B,
- __m512i __C, const int __imm, const int __R)
-{
- return (__m512d) __builtin_ia32_fixupimmpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- (__v8di) __C,
- __imm,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fixupimm_round_ps (__m512 __A, __m512 __B, __m512i __C,
- const int __imm, const int __R)
-{
- return (__m512) __builtin_ia32_fixupimmps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16si) __C,
- __imm,
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fixupimm_round_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512i __C, const int __imm, const int __R)
-{
- return (__m512) __builtin_ia32_fixupimmps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16si) __C,
- __imm,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fixupimm_round_ps (__mmask16 __U, __m512 __A, __m512 __B,
- __m512i __C, const int __imm, const int __R)
-{
- return (__m512) __builtin_ia32_fixupimmps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- (__v16si) __C,
- __imm,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fixupimm_round_sd (__m128d __A, __m128d __B, __m128i __C,
- const int __imm, const int __R)
-{
- return (__m128d) __builtin_ia32_fixupimmsd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2di) __C, __imm,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fixupimm_round_sd (__m128d __A, __mmask8 __U, __m128d __B,
- __m128i __C, const int __imm, const int __R)
-{
- return (__m128d) __builtin_ia32_fixupimmsd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2di) __C, __imm,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fixupimm_round_sd (__mmask8 __U, __m128d __A, __m128d __B,
- __m128i __C, const int __imm, const int __R)
-{
- return (__m128d) __builtin_ia32_fixupimmsd_maskz ((__v2df) __A,
- (__v2df) __B,
- (__v2di) __C,
- __imm,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fixupimm_round_ss (__m128 __A, __m128 __B, __m128i __C,
- const int __imm, const int __R)
-{
- return (__m128) __builtin_ia32_fixupimmss_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4si) __C, __imm,
- (__mmask8) -1, __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fixupimm_round_ss (__m128 __A, __mmask8 __U, __m128 __B,
- __m128i __C, const int __imm, const int __R)
-{
- return (__m128) __builtin_ia32_fixupimmss_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4si) __C, __imm,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fixupimm_round_ss (__mmask8 __U, __m128 __A, __m128 __B,
- __m128i __C, const int __imm, const int __R)
-{
- return (__m128) __builtin_ia32_fixupimmss_maskz ((__v4sf) __A,
- (__v4sf) __B,
- (__v4si) __C, __imm,
- (__mmask8) __U, __R);
-}
-
-#else
-#define _mm512_shuffle_pd(X, Y, C) \
- ((__m512d)__builtin_ia32_shufpd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(C),\
- (__v8df)(__m512d)_mm512_undefined_pd(),\
- (__mmask8)-1))
-
-#define _mm512_mask_shuffle_pd(W, U, X, Y, C) \
- ((__m512d)__builtin_ia32_shufpd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(C),\
- (__v8df)(__m512d)(W),\
- (__mmask8)(U)))
-
-#define _mm512_maskz_shuffle_pd(U, X, Y, C) \
- ((__m512d)__builtin_ia32_shufpd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(C),\
- (__v8df)(__m512d)_mm512_setzero_pd(),\
- (__mmask8)(U)))
-
-#define _mm512_shuffle_ps(X, Y, C) \
- ((__m512)__builtin_ia32_shufps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(C),\
- (__v16sf)(__m512)_mm512_undefined_ps(),\
- (__mmask16)-1))
-
-#define _mm512_mask_shuffle_ps(W, U, X, Y, C) \
- ((__m512)__builtin_ia32_shufps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(C),\
- (__v16sf)(__m512)(W),\
- (__mmask16)(U)))
-
-#define _mm512_maskz_shuffle_ps(U, X, Y, C) \
- ((__m512)__builtin_ia32_shufps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(C),\
- (__v16sf)(__m512)_mm512_setzero_ps(),\
- (__mmask16)(U)))
-
-#define _mm512_fixupimm_round_pd(X, Y, Z, C, R) \
- ((__m512d)__builtin_ia32_fixupimmpd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (__v8di)(__m512i)(Z), (int)(C), \
- (__mmask8)(-1), (R)))
-
-#define _mm512_mask_fixupimm_round_pd(X, U, Y, Z, C, R) \
- ((__m512d)__builtin_ia32_fixupimmpd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (__v8di)(__m512i)(Z), (int)(C), \
- (__mmask8)(U), (R)))
-
-#define _mm512_maskz_fixupimm_round_pd(U, X, Y, Z, C, R) \
- ((__m512d)__builtin_ia32_fixupimmpd512_maskz ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (__v8di)(__m512i)(Z), (int)(C), \
- (__mmask8)(U), (R)))
-
-#define _mm512_fixupimm_round_ps(X, Y, Z, C, R) \
- ((__m512)__builtin_ia32_fixupimmps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (__v16si)(__m512i)(Z), (int)(C), \
- (__mmask16)(-1), (R)))
-
-#define _mm512_mask_fixupimm_round_ps(X, U, Y, Z, C, R) \
- ((__m512)__builtin_ia32_fixupimmps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (__v16si)(__m512i)(Z), (int)(C), \
- (__mmask16)(U), (R)))
-
-#define _mm512_maskz_fixupimm_round_ps(U, X, Y, Z, C, R) \
- ((__m512)__builtin_ia32_fixupimmps512_maskz ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (__v16si)(__m512i)(Z), (int)(C), \
- (__mmask16)(U), (R)))
-
-#define _mm_fixupimm_round_sd(X, Y, Z, C, R) \
- ((__m128d)__builtin_ia32_fixupimmsd_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (__v2di)(__m128i)(Z), (int)(C), \
- (__mmask8)(-1), (R)))
-
-#define _mm_mask_fixupimm_round_sd(X, U, Y, Z, C, R) \
- ((__m128d)__builtin_ia32_fixupimmsd_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (__v2di)(__m128i)(Z), (int)(C), \
- (__mmask8)(U), (R)))
-
-#define _mm_maskz_fixupimm_round_sd(U, X, Y, Z, C, R) \
- ((__m128d)__builtin_ia32_fixupimmsd_maskz ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (__v2di)(__m128i)(Z), (int)(C), \
- (__mmask8)(U), (R)))
-
-#define _mm_fixupimm_round_ss(X, Y, Z, C, R) \
- ((__m128)__builtin_ia32_fixupimmss_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (__v4si)(__m128i)(Z), (int)(C), \
- (__mmask8)(-1), (R)))
-
-#define _mm_mask_fixupimm_round_ss(X, U, Y, Z, C, R) \
- ((__m128)__builtin_ia32_fixupimmss_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (__v4si)(__m128i)(Z), (int)(C), \
- (__mmask8)(U), (R)))
-
-#define _mm_maskz_fixupimm_round_ss(U, X, Y, Z, C, R) \
- ((__m128)__builtin_ia32_fixupimmss_maskz ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (__v4si)(__m128i)(Z), (int)(C), \
- (__mmask8)(U), (R)))
-#endif
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movehdup_ps (__m512 __A)
-{
- return (__m512) __builtin_ia32_movshdup512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_movehdup_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_movshdup512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_movehdup_ps (__mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_movshdup512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_moveldup_ps (__m512 __A)
-{
- return (__m512) __builtin_ia32_movsldup512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_moveldup_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_movsldup512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_moveldup_ps (__mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_movsldup512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_or_si512 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v16su) __A | (__v16su) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_or_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v16su) __A | (__v16su) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_or_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pord512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_or_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pord512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_or_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v8du) __A | (__v8du) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_or_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_porq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_or_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_porq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_xor_si512 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v16su) __A ^ (__v16su) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_xor_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v16su) __A ^ (__v16su) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_xor_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pxord512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_xor_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pxord512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_xor_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v8du) __A ^ (__v8du) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_xor_epi64 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pxorq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_xor_epi64 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pxorq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rol_epi32 (__m512i __A, const int __B)
-{
- return (__m512i) __builtin_ia32_prold512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rol_epi32 (__m512i __W, __mmask16 __U, __m512i __A, const int __B)
-{
- return (__m512i) __builtin_ia32_prold512_mask ((__v16si) __A, __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rol_epi32 (__mmask16 __U, __m512i __A, const int __B)
-{
- return (__m512i) __builtin_ia32_prold512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_ror_epi32 (__m512i __A, int __B)
-{
- return (__m512i) __builtin_ia32_prord512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_ror_epi32 (__m512i __W, __mmask16 __U, __m512i __A, int __B)
-{
- return (__m512i) __builtin_ia32_prord512_mask ((__v16si) __A, __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_ror_epi32 (__mmask16 __U, __m512i __A, int __B)
-{
- return (__m512i) __builtin_ia32_prord512_mask ((__v16si) __A, __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_rol_epi64 (__m512i __A, const int __B)
-{
- return (__m512i) __builtin_ia32_prolq512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_rol_epi64 (__m512i __W, __mmask8 __U, __m512i __A, const int __B)
-{
- return (__m512i) __builtin_ia32_prolq512_mask ((__v8di) __A, __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_rol_epi64 (__mmask8 __U, __m512i __A, const int __B)
-{
- return (__m512i) __builtin_ia32_prolq512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_ror_epi64 (__m512i __A, int __B)
-{
- return (__m512i) __builtin_ia32_prorq512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_ror_epi64 (__m512i __W, __mmask8 __U, __m512i __A, int __B)
-{
- return (__m512i) __builtin_ia32_prorq512_mask ((__v8di) __A, __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_ror_epi64 (__mmask8 __U, __m512i __A, int __B)
-{
- return (__m512i) __builtin_ia32_prorq512_mask ((__v8di) __A, __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-#else
-#define _mm512_rol_epi32(A, B) \
- ((__m512i)__builtin_ia32_prold512_mask ((__v16si)(__m512i)(A), \
- (int)(B), \
- (__v16si)_mm512_undefined_epi32 (), \
- (__mmask16)(-1)))
-#define _mm512_mask_rol_epi32(W, U, A, B) \
- ((__m512i)__builtin_ia32_prold512_mask ((__v16si)(__m512i)(A), \
- (int)(B), \
- (__v16si)(__m512i)(W), \
- (__mmask16)(U)))
-#define _mm512_maskz_rol_epi32(U, A, B) \
- ((__m512i)__builtin_ia32_prold512_mask ((__v16si)(__m512i)(A), \
- (int)(B), \
- (__v16si)_mm512_setzero_si512 (), \
- (__mmask16)(U)))
-#define _mm512_ror_epi32(A, B) \
- ((__m512i)__builtin_ia32_prord512_mask ((__v16si)(__m512i)(A), \
- (int)(B), \
- (__v16si)_mm512_undefined_epi32 (), \
- (__mmask16)(-1)))
-#define _mm512_mask_ror_epi32(W, U, A, B) \
- ((__m512i)__builtin_ia32_prord512_mask ((__v16si)(__m512i)(A), \
- (int)(B), \
- (__v16si)(__m512i)(W), \
- (__mmask16)(U)))
-#define _mm512_maskz_ror_epi32(U, A, B) \
- ((__m512i)__builtin_ia32_prord512_mask ((__v16si)(__m512i)(A), \
- (int)(B), \
- (__v16si)_mm512_setzero_si512 (), \
- (__mmask16)(U)))
-#define _mm512_rol_epi64(A, B) \
- ((__m512i)__builtin_ia32_prolq512_mask ((__v8di)(__m512i)(A), \
- (int)(B), \
- (__v8di)_mm512_undefined_epi32 (), \
- (__mmask8)(-1)))
-#define _mm512_mask_rol_epi64(W, U, A, B) \
- ((__m512i)__builtin_ia32_prolq512_mask ((__v8di)(__m512i)(A), \
- (int)(B), \
- (__v8di)(__m512i)(W), \
- (__mmask8)(U)))
-#define _mm512_maskz_rol_epi64(U, A, B) \
- ((__m512i)__builtin_ia32_prolq512_mask ((__v8di)(__m512i)(A), \
- (int)(B), \
- (__v8di)_mm512_setzero_si512 (), \
- (__mmask8)(U)))
-
-#define _mm512_ror_epi64(A, B) \
- ((__m512i)__builtin_ia32_prorq512_mask ((__v8di)(__m512i)(A), \
- (int)(B), \
- (__v8di)_mm512_undefined_epi32 (), \
- (__mmask8)(-1)))
-#define _mm512_mask_ror_epi64(W, U, A, B) \
- ((__m512i)__builtin_ia32_prorq512_mask ((__v8di)(__m512i)(A), \
- (int)(B), \
- (__v8di)(__m512i)(W), \
- (__mmask8)(U)))
-#define _mm512_maskz_ror_epi64(U, A, B) \
- ((__m512i)__builtin_ia32_prorq512_mask ((__v8di)(__m512i)(A), \
- (int)(B), \
- (__v8di)_mm512_setzero_si512 (), \
- (__mmask8)(U)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_and_si512 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v16su) __A & (__v16su) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_and_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v16su) __A & (__v16su) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_and_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_and_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_and_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) ((__v8du) __A & (__v8du) __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_and_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W, __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_and_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_pd (),
- __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_andnot_si512 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandnd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_andnot_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandnd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_andnot_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandnd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_andnot_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandnd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_andnot_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandnq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_andnot_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandnq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W, __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_andnot_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pandnq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_pd (),
- __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_test_epi32_mask (__m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_ptestmd512 ((__v16si) __A,
- (__v16si) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_test_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_ptestmd512 ((__v16si) __A,
- (__v16si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_test_epi64_mask (__m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmq512 ((__v8di) __A,
- (__v8di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_test_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmq512 ((__v8di) __A, (__v8di) __B, __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_testn_epi32_mask (__m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_ptestnmd512 ((__v16si) __A,
- (__v16si) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_testn_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_ptestnmd512 ((__v16si) __A,
- (__v16si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_testn_epi64_mask (__m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmq512 ((__v8di) __A,
- (__v8di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_testn_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmq512 ((__v8di) __A,
- (__v8di) __B, __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_abs_ps (__m512 __A)
-{
- return (__m512) _mm512_and_epi32 ((__m512i) __A,
- _mm512_set1_epi32 (0x7fffffff));
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_abs_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) _mm512_mask_and_epi32 ((__m512i) __W, __U, (__m512i) __A,
- _mm512_set1_epi32 (0x7fffffff));
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_abs_pd (__m512 __A)
-{
- return (__m512d) _mm512_and_epi64 ((__m512i) __A,
- _mm512_set1_epi64 (0x7fffffffffffffffLL));
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_abs_pd (__m512d __W, __mmask8 __U, __m512 __A)
-{
- return (__m512d)
- _mm512_mask_and_epi64 ((__m512i) __W, __U, (__m512i) __A,
- _mm512_set1_epi64 (0x7fffffffffffffffLL));
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpackhi_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhdq512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpackhi_epi32 (__m512i __W, __mmask16 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhdq512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpackhi_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhdq512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpackhi_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhqdq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpackhi_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhqdq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpackhi_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckhqdq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpacklo_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckldq512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpacklo_epi32 (__m512i __W, __mmask16 __U, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckldq512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpacklo_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpckldq512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpacklo_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpcklqdq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpacklo_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpcklqdq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpacklo_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_punpcklqdq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-#ifdef __x86_64__
-#ifdef __OPTIMIZE__
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundss_u64 (__m128 __A, const int __R)
-{
- return (unsigned long long) __builtin_ia32_vcvtss2usi64 ((__v4sf) __A, __R);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundss_si64 (__m128 __A, const int __R)
-{
- return (long long) __builtin_ia32_vcvtss2si64 ((__v4sf) __A, __R);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundss_i64 (__m128 __A, const int __R)
-{
- return (long long) __builtin_ia32_vcvtss2si64 ((__v4sf) __A, __R);
-}
-
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundss_u64 (__m128 __A, const int __R)
-{
- return (unsigned long long) __builtin_ia32_vcvttss2usi64 ((__v4sf) __A, __R);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundss_i64 (__m128 __A, const int __R)
-{
- return (long long) __builtin_ia32_vcvttss2si64 ((__v4sf) __A, __R);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundss_si64 (__m128 __A, const int __R)
-{
- return (long long) __builtin_ia32_vcvttss2si64 ((__v4sf) __A, __R);
-}
-#else
-#define _mm_cvt_roundss_u64(A, B) \
- ((unsigned long long)__builtin_ia32_vcvtss2usi64(A, B))
-
-#define _mm_cvt_roundss_si64(A, B) \
- ((long long)__builtin_ia32_vcvtss2si64(A, B))
-
-#define _mm_cvt_roundss_i64(A, B) \
- ((long long)__builtin_ia32_vcvtss2si64(A, B))
-
-#define _mm_cvtt_roundss_u64(A, B) \
- ((unsigned long long)__builtin_ia32_vcvttss2usi64(A, B))
-
-#define _mm_cvtt_roundss_i64(A, B) \
- ((long long)__builtin_ia32_vcvttss2si64(A, B))
-
-#define _mm_cvtt_roundss_si64(A, B) \
- ((long long)__builtin_ia32_vcvttss2si64(A, B))
-#endif
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline unsigned
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundss_u32 (__m128 __A, const int __R)
-{
- return (unsigned) __builtin_ia32_vcvtss2usi32 ((__v4sf) __A, __R);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundss_si32 (__m128 __A, const int __R)
-{
- return (int) __builtin_ia32_vcvtss2si32 ((__v4sf) __A, __R);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundss_i32 (__m128 __A, const int __R)
-{
- return (int) __builtin_ia32_vcvtss2si32 ((__v4sf) __A, __R);
-}
-
-extern __inline unsigned
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundss_u32 (__m128 __A, const int __R)
-{
- return (unsigned) __builtin_ia32_vcvttss2usi32 ((__v4sf) __A, __R);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundss_i32 (__m128 __A, const int __R)
-{
- return (int) __builtin_ia32_vcvttss2si32 ((__v4sf) __A, __R);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundss_si32 (__m128 __A, const int __R)
-{
- return (int) __builtin_ia32_vcvttss2si32 ((__v4sf) __A, __R);
-}
-#else
-#define _mm_cvt_roundss_u32(A, B) \
- ((unsigned)__builtin_ia32_vcvtss2usi32(A, B))
-
-#define _mm_cvt_roundss_si32(A, B) \
- ((int)__builtin_ia32_vcvtss2si32(A, B))
-
-#define _mm_cvt_roundss_i32(A, B) \
- ((int)__builtin_ia32_vcvtss2si32(A, B))
-
-#define _mm_cvtt_roundss_u32(A, B) \
- ((unsigned)__builtin_ia32_vcvttss2usi32(A, B))
-
-#define _mm_cvtt_roundss_si32(A, B) \
- ((int)__builtin_ia32_vcvttss2si32(A, B))
-
-#define _mm_cvtt_roundss_i32(A, B) \
- ((int)__builtin_ia32_vcvttss2si32(A, B))
-#endif
-
-#ifdef __x86_64__
-#ifdef __OPTIMIZE__
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsd_u64 (__m128d __A, const int __R)
-{
- return (unsigned long long) __builtin_ia32_vcvtsd2usi64 ((__v2df) __A, __R);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsd_si64 (__m128d __A, const int __R)
-{
- return (long long) __builtin_ia32_vcvtsd2si64 ((__v2df) __A, __R);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsd_i64 (__m128d __A, const int __R)
-{
- return (long long) __builtin_ia32_vcvtsd2si64 ((__v2df) __A, __R);
-}
-
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundsd_u64 (__m128d __A, const int __R)
-{
- return (unsigned long long) __builtin_ia32_vcvttsd2usi64 ((__v2df) __A, __R);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundsd_si64 (__m128d __A, const int __R)
-{
- return (long long) __builtin_ia32_vcvttsd2si64 ((__v2df) __A, __R);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundsd_i64 (__m128d __A, const int __R)
-{
- return (long long) __builtin_ia32_vcvttsd2si64 ((__v2df) __A, __R);
-}
-#else
-#define _mm_cvt_roundsd_u64(A, B) \
- ((unsigned long long)__builtin_ia32_vcvtsd2usi64(A, B))
-
-#define _mm_cvt_roundsd_si64(A, B) \
- ((long long)__builtin_ia32_vcvtsd2si64(A, B))
-
-#define _mm_cvt_roundsd_i64(A, B) \
- ((long long)__builtin_ia32_vcvtsd2si64(A, B))
-
-#define _mm_cvtt_roundsd_u64(A, B) \
- ((unsigned long long)__builtin_ia32_vcvttsd2usi64(A, B))
-
-#define _mm_cvtt_roundsd_si64(A, B) \
- ((long long)__builtin_ia32_vcvttsd2si64(A, B))
-
-#define _mm_cvtt_roundsd_i64(A, B) \
- ((long long)__builtin_ia32_vcvttsd2si64(A, B))
-#endif
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline unsigned
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsd_u32 (__m128d __A, const int __R)
-{
- return (unsigned) __builtin_ia32_vcvtsd2usi32 ((__v2df) __A, __R);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsd_si32 (__m128d __A, const int __R)
-{
- return (int) __builtin_ia32_vcvtsd2si32 ((__v2df) __A, __R);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsd_i32 (__m128d __A, const int __R)
-{
- return (int) __builtin_ia32_vcvtsd2si32 ((__v2df) __A, __R);
-}
-
-extern __inline unsigned
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundsd_u32 (__m128d __A, const int __R)
-{
- return (unsigned) __builtin_ia32_vcvttsd2usi32 ((__v2df) __A, __R);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundsd_i32 (__m128d __A, const int __R)
-{
- return (int) __builtin_ia32_vcvttsd2si32 ((__v2df) __A, __R);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtt_roundsd_si32 (__m128d __A, const int __R)
-{
- return (int) __builtin_ia32_vcvttsd2si32 ((__v2df) __A, __R);
-}
-#else
-#define _mm_cvt_roundsd_u32(A, B) \
- ((unsigned)__builtin_ia32_vcvtsd2usi32(A, B))
-
-#define _mm_cvt_roundsd_si32(A, B) \
- ((int)__builtin_ia32_vcvtsd2si32(A, B))
-
-#define _mm_cvt_roundsd_i32(A, B) \
- ((int)__builtin_ia32_vcvtsd2si32(A, B))
-
-#define _mm_cvtt_roundsd_u32(A, B) \
- ((unsigned)__builtin_ia32_vcvttsd2usi32(A, B))
-
-#define _mm_cvtt_roundsd_si32(A, B) \
- ((int)__builtin_ia32_vcvttsd2si32(A, B))
-
-#define _mm_cvtt_roundsd_i32(A, B) \
- ((int)__builtin_ia32_vcvttsd2si32(A, B))
-#endif
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_movedup_pd (__m512d __A)
-{
- return (__m512d) __builtin_ia32_movddup512_mask ((__v8df) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_movedup_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_movddup512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_movedup_pd (__mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_movddup512_mask ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpacklo_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_unpcklpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpacklo_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_unpcklpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpacklo_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_unpcklpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpackhi_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_unpckhpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpackhi_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_unpckhpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpackhi_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_unpckhpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpackhi_ps (__m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_unpckhps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpackhi_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_unpckhps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpackhi_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_unpckhps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundps_pd (__m256 __A, const int __R)
-{
- return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundps_pd (__m512d __W, __mmask8 __U, __m256 __A,
- const int __R)
-{
- return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundps_pd (__mmask8 __U, __m256 __A, const int __R)
-{
- return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundph_ps (__m256i __A, const int __R)
-{
- return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundph_ps (__m512 __W, __mmask16 __U, __m256i __A,
- const int __R)
-{
- return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundph_ps (__mmask16 __U, __m256i __A, const int __R)
-{
- return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundps_ph (__m512 __A, const int __I)
-{
- return (__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf) __A,
- __I,
- (__v16hi)
- _mm256_undefined_si256 (),
- -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtps_ph (__m512 __A, const int __I)
-{
- return (__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf) __A,
- __I,
- (__v16hi)
- _mm256_undefined_si256 (),
- -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundps_ph (__m256i __U, __mmask16 __W, __m512 __A,
- const int __I)
-{
- return (__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf) __A,
- __I,
- (__v16hi) __U,
- (__mmask16) __W);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtps_ph (__m256i __U, __mmask16 __W, __m512 __A, const int __I)
-{
- return (__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf) __A,
- __I,
- (__v16hi) __U,
- (__mmask16) __W);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundps_ph (__mmask16 __W, __m512 __A, const int __I)
-{
- return (__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf) __A,
- __I,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __W);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtps_ph (__mmask16 __W, __m512 __A, const int __I)
-{
- return (__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf) __A,
- __I,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __W);
-}
-#else
-#define _mm512_cvt_roundps_pd(A, B) \
- (__m512d)__builtin_ia32_cvtps2pd512_mask(A, (__v8df)_mm512_undefined_pd(), -1, B)
-
-#define _mm512_mask_cvt_roundps_pd(W, U, A, B) \
- (__m512d)__builtin_ia32_cvtps2pd512_mask(A, (__v8df)(W), U, B)
-
-#define _mm512_maskz_cvt_roundps_pd(U, A, B) \
- (__m512d)__builtin_ia32_cvtps2pd512_mask(A, (__v8df)_mm512_setzero_pd(), U, B)
-
-#define _mm512_cvt_roundph_ps(A, B) \
- (__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(A), (__v16sf)_mm512_undefined_ps(), -1, B)
-
-#define _mm512_mask_cvt_roundph_ps(W, U, A, B) \
- (__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(A), (__v16sf)(W), U, B)
-
-#define _mm512_maskz_cvt_roundph_ps(U, A, B) \
- (__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(A), (__v16sf)_mm512_setzero_ps(), U, B)
-
-#define _mm512_cvt_roundps_ph(A, I) \
- ((__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf)(__m512) A, (int) (I),\
- (__v16hi)_mm256_undefined_si256 (), -1))
-#define _mm512_cvtps_ph(A, I) \
- ((__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf)(__m512) A, (int) (I),\
- (__v16hi)_mm256_undefined_si256 (), -1))
-#define _mm512_mask_cvt_roundps_ph(U, W, A, I) \
- ((__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf)(__m512) A, (int) (I),\
- (__v16hi)(__m256i)(U), (__mmask16) (W)))
-#define _mm512_mask_cvtps_ph(U, W, A, I) \
- ((__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf)(__m512) A, (int) (I),\
- (__v16hi)(__m256i)(U), (__mmask16) (W)))
-#define _mm512_maskz_cvt_roundps_ph(W, A, I) \
- ((__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf)(__m512) A, (int) (I),\
- (__v16hi)_mm256_setzero_si256 (), (__mmask16) (W)))
-#define _mm512_maskz_cvtps_ph(W, A, I) \
- ((__m256i) __builtin_ia32_vcvtps2ph512_mask ((__v16sf)(__m512) A, (int) (I),\
- (__v16hi)_mm256_setzero_si256 (), (__mmask16) (W)))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvt_roundpd_ps (__m512d __A, const int __R)
-{
- return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
- (__v8sf)
- _mm256_undefined_ps (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvt_roundpd_ps (__m256 __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
- (__v8sf) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvt_roundpd_ps (__mmask8 __U, __m512d __A, const int __R)
-{
- return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundsd_ss (__m128 __A, __m128d __B, const int __R)
-{
- return (__m128) __builtin_ia32_cvtsd2ss_round ((__v4sf) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvt_roundss_sd (__m128d __A, __m128 __B, const int __R)
-{
- return (__m128d) __builtin_ia32_cvtss2sd_round ((__v2df) __A,
- (__v4sf) __B,
- __R);
-}
-#else
-#define _mm512_cvt_roundpd_ps(A, B) \
- (__m256)__builtin_ia32_cvtpd2ps512_mask(A, (__v8sf)_mm256_undefined_ps(), -1, B)
-
-#define _mm512_mask_cvt_roundpd_ps(W, U, A, B) \
- (__m256)__builtin_ia32_cvtpd2ps512_mask(A, (__v8sf)(W), U, B)
-
-#define _mm512_maskz_cvt_roundpd_ps(U, A, B) \
- (__m256)__builtin_ia32_cvtpd2ps512_mask(A, (__v8sf)_mm256_setzero_ps(), U, B)
-
-#define _mm_cvt_roundsd_ss(A, B, C) \
- (__m128)__builtin_ia32_cvtsd2ss_round(A, B, C)
-
-#define _mm_cvt_roundss_sd(A, B, C) \
- (__m128d)__builtin_ia32_cvtss2sd_round(A, B, C)
-#endif
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_stream_si512 (__m512i * __P, __m512i __A)
-{
- __builtin_ia32_movntdq512 ((__v8di *) __P, (__v8di) __A);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_stream_ps (float *__P, __m512 __A)
-{
- __builtin_ia32_movntps512 (__P, (__v16sf) __A);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_stream_pd (double *__P, __m512d __A)
-{
- __builtin_ia32_movntpd512 (__P, (__v8df) __A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_stream_load_si512 (void *__P)
-{
- return __builtin_ia32_movntdqa512 ((__v8di *)__P);
-}
-
-/* Constants for mantissa extraction */
-typedef enum
-{
- _MM_MANT_NORM_1_2, /* interval [1, 2) */
- _MM_MANT_NORM_p5_2, /* interval [0.5, 2) */
- _MM_MANT_NORM_p5_1, /* interval [0.5, 1) */
- _MM_MANT_NORM_p75_1p5 /* interval [0.75, 1.5) */
-} _MM_MANTISSA_NORM_ENUM;
-
-typedef enum
-{
- _MM_MANT_SIGN_src, /* sign = sign(SRC) */
- _MM_MANT_SIGN_zero, /* sign = 0 */
- _MM_MANT_SIGN_nan /* DEST = NaN if sign(SRC) = 1 */
-} _MM_MANTISSA_SIGN_ENUM;
-
-#ifdef __OPTIMIZE__
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getexp_round_ss (__m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_getexpss128_round ((__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getexp_round_sd (__m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_getexpsd128_round ((__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_getexp_round_ps (__m512 __A, const int __R)
-{
- return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_getexp_round_ps (__m512 __W, __mmask16 __U, __m512 __A,
- const int __R)
-{
- return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_getexp_round_ps (__mmask16 __U, __m512 __A, const int __R)
-{
- return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_getexp_round_pd (__m512d __A, const int __R)
-{
- return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_getexp_round_pd (__m512d __W, __mmask8 __U, __m512d __A,
- const int __R)
-{
- return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_getexp_round_pd (__mmask8 __U, __m512d __A, const int __R)
-{
- return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_getmant_round_pd (__m512d __A, _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C, const int __R)
-{
- return (__m512d) __builtin_ia32_getmantpd512_mask ((__v8df) __A,
- (__C << 2) | __B,
- _mm512_undefined_pd (),
- (__mmask8) -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_getmant_round_pd (__m512d __W, __mmask8 __U, __m512d __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C, const int __R)
-{
- return (__m512d) __builtin_ia32_getmantpd512_mask ((__v8df) __A,
- (__C << 2) | __B,
- (__v8df) __W, __U,
- __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_getmant_round_pd (__mmask8 __U, __m512d __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C, const int __R)
-{
- return (__m512d) __builtin_ia32_getmantpd512_mask ((__v8df) __A,
- (__C << 2) | __B,
- (__v8df)
- _mm512_setzero_pd (),
- __U, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_getmant_round_ps (__m512 __A, _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C, const int __R)
-{
- return (__m512) __builtin_ia32_getmantps512_mask ((__v16sf) __A,
- (__C << 2) | __B,
- _mm512_undefined_ps (),
- (__mmask16) -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_getmant_round_ps (__m512 __W, __mmask16 __U, __m512 __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C, const int __R)
-{
- return (__m512) __builtin_ia32_getmantps512_mask ((__v16sf) __A,
- (__C << 2) | __B,
- (__v16sf) __W, __U,
- __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_getmant_round_ps (__mmask16 __U, __m512 __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C, const int __R)
-{
- return (__m512) __builtin_ia32_getmantps512_mask ((__v16sf) __A,
- (__C << 2) | __B,
- (__v16sf)
- _mm512_setzero_ps (),
- __U, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getmant_round_sd (__m128d __A, __m128d __B,
- _MM_MANTISSA_NORM_ENUM __C,
- _MM_MANTISSA_SIGN_ENUM __D, const int __R)
-{
- return (__m128d) __builtin_ia32_getmantsd_round ((__v2df) __A,
- (__v2df) __B,
- (__D << 2) | __C,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getmant_round_ss (__m128 __A, __m128 __B,
- _MM_MANTISSA_NORM_ENUM __C,
- _MM_MANTISSA_SIGN_ENUM __D, const int __R)
-{
- return (__m128) __builtin_ia32_getmantss_round ((__v4sf) __A,
- (__v4sf) __B,
- (__D << 2) | __C,
- __R);
-}
-
-#else
-#define _mm512_getmant_round_pd(X, B, C, R) \
- ((__m512d)__builtin_ia32_getmantpd512_mask ((__v8df)(__m512d)(X), \
- (int)(((C)<<2) | (B)), \
- (__v8df)(__m512d)_mm512_undefined_pd(), \
- (__mmask8)-1,\
- (R)))
-
-#define _mm512_mask_getmant_round_pd(W, U, X, B, C, R) \
- ((__m512d)__builtin_ia32_getmantpd512_mask ((__v8df)(__m512d)(X), \
- (int)(((C)<<2) | (B)), \
- (__v8df)(__m512d)(W), \
- (__mmask8)(U),\
- (R)))
-
-#define _mm512_maskz_getmant_round_pd(U, X, B, C, R) \
- ((__m512d)__builtin_ia32_getmantpd512_mask ((__v8df)(__m512d)(X), \
- (int)(((C)<<2) | (B)), \
- (__v8df)(__m512d)_mm512_setzero_pd(), \
- (__mmask8)(U),\
- (R)))
-#define _mm512_getmant_round_ps(X, B, C, R) \
- ((__m512)__builtin_ia32_getmantps512_mask ((__v16sf)(__m512)(X), \
- (int)(((C)<<2) | (B)), \
- (__v16sf)(__m512)_mm512_undefined_ps(), \
- (__mmask16)-1,\
- (R)))
-
-#define _mm512_mask_getmant_round_ps(W, U, X, B, C, R) \
- ((__m512)__builtin_ia32_getmantps512_mask ((__v16sf)(__m512)(X), \
- (int)(((C)<<2) | (B)), \
- (__v16sf)(__m512)(W), \
- (__mmask16)(U),\
- (R)))
-
-#define _mm512_maskz_getmant_round_ps(U, X, B, C, R) \
- ((__m512)__builtin_ia32_getmantps512_mask ((__v16sf)(__m512)(X), \
- (int)(((C)<<2) | (B)), \
- (__v16sf)(__m512)_mm512_setzero_ps(), \
- (__mmask16)(U),\
- (R)))
-#define _mm_getmant_round_sd(X, Y, C, D, R) \
- ((__m128d)__builtin_ia32_getmantsd_round ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), \
- (int)(((D)<<2) | (C)), \
- (R)))
-
-#define _mm_getmant_round_ss(X, Y, C, D, R) \
- ((__m128)__builtin_ia32_getmantss_round ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), \
- (int)(((D)<<2) | (C)), \
- (R)))
-
-#define _mm_getexp_round_ss(A, B, R) \
- ((__m128)__builtin_ia32_getexpss128_round((__v4sf)(__m128)(A), (__v4sf)(__m128)(B), R))
-
-#define _mm_getexp_round_sd(A, B, R) \
- ((__m128d)__builtin_ia32_getexpsd128_round((__v2df)(__m128d)(A), (__v2df)(__m128d)(B), R))
-
-#define _mm512_getexp_round_ps(A, R) \
- ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \
- (__v16sf)_mm512_undefined_ps(), (__mmask16)-1, R))
-
-#define _mm512_mask_getexp_round_ps(W, U, A, R) \
- ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \
- (__v16sf)(__m512)(W), (__mmask16)(U), R))
-
-#define _mm512_maskz_getexp_round_ps(U, A, R) \
- ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \
- (__v16sf)_mm512_setzero_ps(), (__mmask16)(U), R))
-
-#define _mm512_getexp_round_pd(A, R) \
- ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \
- (__v8df)_mm512_undefined_pd(), (__mmask8)-1, R))
-
-#define _mm512_mask_getexp_round_pd(W, U, A, R) \
- ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \
- (__v8df)(__m512d)(W), (__mmask8)(U), R))
-
-#define _mm512_maskz_getexp_round_pd(U, A, R) \
- ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \
- (__v8df)_mm512_setzero_pd(), (__mmask8)(U), R))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_roundscale_round_ps (__m512 __A, const int __imm, const int __R)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, __imm,
- (__v16sf)
- _mm512_undefined_ps (),
- -1, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_roundscale_round_ps (__m512 __A, __mmask16 __B, __m512 __C,
- const int __imm, const int __R)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __C, __imm,
- (__v16sf) __A,
- (__mmask16) __B, __R);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_roundscale_round_ps (__mmask16 __A, __m512 __B,
- const int __imm, const int __R)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __B,
- __imm,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __A, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_roundscale_round_pd (__m512d __A, const int __imm, const int __R)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, __imm,
- (__v8df)
- _mm512_undefined_pd (),
- -1, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_roundscale_round_pd (__m512d __A, __mmask8 __B,
- __m512d __C, const int __imm, const int __R)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __C, __imm,
- (__v8df) __A,
- (__mmask8) __B, __R);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_roundscale_round_pd (__mmask8 __A, __m512d __B,
- const int __imm, const int __R)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __B,
- __imm,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __A, __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_roundscale_round_ss (__m128 __A, __m128 __B, const int __imm, const int __R)
-{
- return (__m128) __builtin_ia32_rndscaless_round ((__v4sf) __A,
- (__v4sf) __B, __imm, __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_roundscale_round_sd (__m128d __A, __m128d __B, const int __imm,
- const int __R)
-{
- return (__m128d) __builtin_ia32_rndscalesd_round ((__v2df) __A,
- (__v2df) __B, __imm, __R);
-}
-
-#else
-#define _mm512_roundscale_round_ps(A, B, R) \
- ((__m512) __builtin_ia32_rndscaleps_mask ((__v16sf)(__m512)(A), (int)(B),\
- (__v16sf)_mm512_undefined_ps(), (__mmask16)(-1), R))
-#define _mm512_mask_roundscale_round_ps(A, B, C, D, R) \
- ((__m512) __builtin_ia32_rndscaleps_mask ((__v16sf)(__m512)(C), \
- (int)(D), \
- (__v16sf)(__m512)(A), \
- (__mmask16)(B), R))
-#define _mm512_maskz_roundscale_round_ps(A, B, C, R) \
- ((__m512) __builtin_ia32_rndscaleps_mask ((__v16sf)(__m512)(B), \
- (int)(C), \
- (__v16sf)_mm512_setzero_ps(),\
- (__mmask16)(A), R))
-#define _mm512_roundscale_round_pd(A, B, R) \
- ((__m512d) __builtin_ia32_rndscalepd_mask ((__v8df)(__m512d)(A), (int)(B),\
- (__v8df)_mm512_undefined_pd(), (__mmask8)(-1), R))
-#define _mm512_mask_roundscale_round_pd(A, B, C, D, R) \
- ((__m512d) __builtin_ia32_rndscalepd_mask ((__v8df)(__m512d)(C), \
- (int)(D), \
- (__v8df)(__m512d)(A), \
- (__mmask8)(B), R))
-#define _mm512_maskz_roundscale_round_pd(A, B, C, R) \
- ((__m512d) __builtin_ia32_rndscalepd_mask ((__v8df)(__m512d)(B), \
- (int)(C), \
- (__v8df)_mm512_setzero_pd(),\
- (__mmask8)(A), R))
-#define _mm_roundscale_round_ss(A, B, C, R) \
- ((__m128) __builtin_ia32_rndscaless_round ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(B), (int)(C), R))
-#define _mm_roundscale_round_sd(A, B, C, R) \
- ((__m128d) __builtin_ia32_rndscalesd_round ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C), R))
-#endif
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_floor_ps (__m512 __A)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
- _MM_FROUND_FLOOR,
- (__v16sf) __A, -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_floor_pd (__m512d __A)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
- _MM_FROUND_FLOOR,
- (__v8df) __A, -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_ceil_ps (__m512 __A)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
- _MM_FROUND_CEIL,
- (__v16sf) __A, -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_ceil_pd (__m512d __A)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
- _MM_FROUND_CEIL,
- (__v8df) __A, -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_floor_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
- _MM_FROUND_FLOOR,
- (__v16sf) __W, __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_floor_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
- _MM_FROUND_FLOOR,
- (__v8df) __W, __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_ceil_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
- _MM_FROUND_CEIL,
- (__v16sf) __W, __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_ceil_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
- _MM_FROUND_CEIL,
- (__v8df) __W, __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_alignr_epi32 (__m512i __A, __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_alignd512_mask ((__v16si) __A,
- (__v16si) __B, __imm,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_alignr_epi32 (__m512i __W, __mmask16 __U, __m512i __A,
- __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_alignd512_mask ((__v16si) __A,
- (__v16si) __B, __imm,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_alignr_epi32 (__mmask16 __U, __m512i __A, __m512i __B,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_alignd512_mask ((__v16si) __A,
- (__v16si) __B, __imm,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_alignr_epi64 (__m512i __A, __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_alignq512_mask ((__v8di) __A,
- (__v8di) __B, __imm,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_alignr_epi64 (__m512i __W, __mmask8 __U, __m512i __A,
- __m512i __B, const int __imm)
-{
- return (__m512i) __builtin_ia32_alignq512_mask ((__v8di) __A,
- (__v8di) __B, __imm,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_alignr_epi64 (__mmask8 __U, __m512i __A, __m512i __B,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_alignq512_mask ((__v8di) __A,
- (__v8di) __B, __imm,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-#else
-#define _mm512_alignr_epi32(X, Y, C) \
- ((__m512i)__builtin_ia32_alignd512_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(C), (__v16si)_mm512_undefined_epi32 (),\
- (__mmask16)-1))
-
-#define _mm512_mask_alignr_epi32(W, U, X, Y, C) \
- ((__m512i)__builtin_ia32_alignd512_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(C), (__v16si)(__m512i)(W), \
- (__mmask16)(U)))
-
-#define _mm512_maskz_alignr_epi32(U, X, Y, C) \
- ((__m512i)__builtin_ia32_alignd512_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(C), (__v16si)_mm512_setzero_si512 (),\
- (__mmask16)(U)))
-
-#define _mm512_alignr_epi64(X, Y, C) \
- ((__m512i)__builtin_ia32_alignq512_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(C), (__v8di)_mm512_undefined_epi32 (), \
- (__mmask8)-1))
-
-#define _mm512_mask_alignr_epi64(W, U, X, Y, C) \
- ((__m512i)__builtin_ia32_alignq512_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(C), (__v8di)(__m512i)(W), (__mmask8)(U)))
-
-#define _mm512_maskz_alignr_epi64(U, X, Y, C) \
- ((__m512i)__builtin_ia32_alignq512_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(C), (__v8di)_mm512_setzero_si512 (),\
- (__mmask8)(U)))
-#endif
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpeq_epi32_mask (__m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpeqd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpeq_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpeqd512_mask ((__v16si) __A,
- (__v16si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpeq_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqq512_mask ((__v8di) __A,
- (__v8di) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpeq_epi64_mask (__m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpgt_epi32_mask (__m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpgtd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpgt_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpgtd512_mask ((__v16si) __A,
- (__v16si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpgt_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtq512_mask ((__v8di) __A,
- (__v8di) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpgt_epi64_mask (__m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpge_epi32_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 5,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpge_epi32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 5,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpge_epu32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 5,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpge_epu32_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 5,
- (__mmask16) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpge_epi64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpge_epi64_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpge_epu64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpge_epu64_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmple_epi32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 2,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmple_epi32_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 2,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmple_epu32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 2,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmple_epu32_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 2,
- (__mmask16) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmple_epi64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmple_epi64_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmple_epu64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmple_epu64_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmplt_epi32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 1,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmplt_epi32_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 1,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmplt_epu32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 1,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmplt_epu32_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 1,
- (__mmask16) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmplt_epi64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmplt_epi64_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmplt_epu64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmplt_epu64_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpneq_epi32_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 4,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpneq_epi32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 4,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpneq_epu32_mask (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 4,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpneq_epu32_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, 4,
- (__mmask16) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpneq_epi64_mask (__mmask16 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpneq_epi64_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpneq_epu64_mask (__mmask8 __M, __m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpneq_epu64_mask (__m512i __X, __m512i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, 4,
- (__mmask8) -1);
-}
-
-#define _MM_CMPINT_EQ 0x0
-#define _MM_CMPINT_LT 0x1
-#define _MM_CMPINT_LE 0x2
-#define _MM_CMPINT_UNUSED 0x3
-#define _MM_CMPINT_NE 0x4
-#define _MM_CMPINT_NLT 0x5
-#define _MM_CMPINT_GE 0x5
-#define _MM_CMPINT_NLE 0x6
-#define _MM_CMPINT_GT 0x6
-
-#ifdef __OPTIMIZE__
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kshiftli_mask16 (__mmask16 __A, unsigned int __B)
-{
- return (__mmask16) __builtin_ia32_kshiftlihi ((__mmask16) __A,
- (__mmask8) __B);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kshiftri_mask16 (__mmask16 __A, unsigned int __B)
-{
- return (__mmask16) __builtin_ia32_kshiftrihi ((__mmask16) __A,
- (__mmask8) __B);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_epi64_mask (__m512i __X, __m512i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_epi32_mask (__m512i __X, __m512i __Y, const int __P)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, __P,
- (__mmask16) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_epu64_mask (__m512i __X, __m512i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_epu32_mask (__m512i __X, __m512i __Y, const int __P)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, __P,
- (__mmask16) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_round_pd_mask (__m512d __X, __m512d __Y, const int __P,
- const int __R)
-{
- return (__mmask8) __builtin_ia32_cmppd512_mask ((__v8df) __X,
- (__v8df) __Y, __P,
- (__mmask8) -1, __R);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_round_ps_mask (__m512 __X, __m512 __Y, const int __P, const int __R)
-{
- return (__mmask16) __builtin_ia32_cmpps512_mask ((__v16sf) __X,
- (__v16sf) __Y, __P,
- (__mmask16) -1, __R);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_epi64_mask (__mmask8 __U, __m512i __X, __m512i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpq512_mask ((__v8di) __X,
- (__v8di) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_epi32_mask (__mmask16 __U, __m512i __X, __m512i __Y,
- const int __P)
-{
- return (__mmask16) __builtin_ia32_cmpd512_mask ((__v16si) __X,
- (__v16si) __Y, __P,
- (__mmask16) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_epu64_mask (__mmask8 __U, __m512i __X, __m512i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __X,
- (__v8di) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_epu32_mask (__mmask16 __U, __m512i __X, __m512i __Y,
- const int __P)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __X,
- (__v16si) __Y, __P,
- (__mmask16) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_round_pd_mask (__mmask8 __U, __m512d __X, __m512d __Y,
- const int __P, const int __R)
-{
- return (__mmask8) __builtin_ia32_cmppd512_mask ((__v8df) __X,
- (__v8df) __Y, __P,
- (__mmask8) __U, __R);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_round_ps_mask (__mmask16 __U, __m512 __X, __m512 __Y,
- const int __P, const int __R)
-{
- return (__mmask16) __builtin_ia32_cmpps512_mask ((__v16sf) __X,
- (__v16sf) __Y, __P,
- (__mmask16) __U, __R);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_round_sd_mask (__m128d __X, __m128d __Y, const int __P, const int __R)
-{
- return (__mmask8) __builtin_ia32_cmpsd_mask ((__v2df) __X,
- (__v2df) __Y, __P,
- (__mmask8) -1, __R);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_round_sd_mask (__mmask8 __M, __m128d __X, __m128d __Y,
- const int __P, const int __R)
-{
- return (__mmask8) __builtin_ia32_cmpsd_mask ((__v2df) __X,
- (__v2df) __Y, __P,
- (__mmask8) __M, __R);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_round_ss_mask (__m128 __X, __m128 __Y, const int __P, const int __R)
-{
- return (__mmask8) __builtin_ia32_cmpss_mask ((__v4sf) __X,
- (__v4sf) __Y, __P,
- (__mmask8) -1, __R);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_round_ss_mask (__mmask8 __M, __m128 __X, __m128 __Y,
- const int __P, const int __R)
-{
- return (__mmask8) __builtin_ia32_cmpss_mask ((__v4sf) __X,
- (__v4sf) __Y, __P,
- (__mmask8) __M, __R);
-}
-
-#else
-#define _kshiftli_mask16(X, Y) \
- ((__mmask16) __builtin_ia32_kshiftlihi ((__mmask16)(X), (__mmask8)(Y)))
-
-#define _kshiftri_mask16(X, Y) \
- ((__mmask16) __builtin_ia32_kshiftrihi ((__mmask16)(X), (__mmask8)(Y)))
-
-#define _mm512_cmp_epi64_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpq512_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm512_cmp_epi32_mask(X, Y, P) \
- ((__mmask16) __builtin_ia32_cmpd512_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(P), \
- (__mmask16)-1))
-
-#define _mm512_cmp_epu64_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm512_cmp_epu32_mask(X, Y, P) \
- ((__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(P), \
- (__mmask16)-1))
-
-#define _mm512_cmp_round_pd_mask(X, Y, P, R) \
- ((__mmask8) __builtin_ia32_cmppd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(P),\
- (__mmask8)-1, R))
-
-#define _mm512_cmp_round_ps_mask(X, Y, P, R) \
- ((__mmask16) __builtin_ia32_cmpps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(P),\
- (__mmask16)-1, R))
-
-#define _mm512_mask_cmp_epi64_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpq512_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(P),\
- (__mmask8)M))
-
-#define _mm512_mask_cmp_epi32_mask(M, X, Y, P) \
- ((__mmask16) __builtin_ia32_cmpd512_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(P), \
- (__mmask16)M))
-
-#define _mm512_mask_cmp_epu64_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di)(__m512i)(X), \
- (__v8di)(__m512i)(Y), (int)(P),\
- (__mmask8)M))
-
-#define _mm512_mask_cmp_epu32_mask(M, X, Y, P) \
- ((__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si)(__m512i)(X), \
- (__v16si)(__m512i)(Y), (int)(P), \
- (__mmask16)M))
-
-#define _mm512_mask_cmp_round_pd_mask(M, X, Y, P, R) \
- ((__mmask8) __builtin_ia32_cmppd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(P),\
- (__mmask8)M, R))
-
-#define _mm512_mask_cmp_round_ps_mask(M, X, Y, P, R) \
- ((__mmask16) __builtin_ia32_cmpps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(P),\
- (__mmask16)M, R))
-
-#define _mm_cmp_round_sd_mask(X, Y, P, R) \
- ((__mmask8) __builtin_ia32_cmpsd_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (int)(P),\
- (__mmask8)-1, R))
-
-#define _mm_mask_cmp_round_sd_mask(M, X, Y, P, R) \
- ((__mmask8) __builtin_ia32_cmpsd_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (int)(P),\
- (M), R))
-
-#define _mm_cmp_round_ss_mask(X, Y, P, R) \
- ((__mmask8) __builtin_ia32_cmpss_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (int)(P), \
- (__mmask8)-1, R))
-
-#define _mm_mask_cmp_round_ss_mask(M, X, Y, P, R) \
- ((__mmask8) __builtin_ia32_cmpss_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (int)(P), \
- (M), R))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i32gather_ps (__m512i __index, void const *__addr, int __scale)
-{
- __m512 __v1_old = _mm512_undefined_ps ();
- __mmask16 __mask = 0xFFFF;
-
- return (__m512) __builtin_ia32_gathersiv16sf ((__v16sf) __v1_old,
- __addr,
- (__v16si) __index,
- __mask, __scale);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i32gather_ps (__m512 __v1_old, __mmask16 __mask,
- __m512i __index, void const *__addr, int __scale)
-{
- return (__m512) __builtin_ia32_gathersiv16sf ((__v16sf) __v1_old,
- __addr,
- (__v16si) __index,
- __mask, __scale);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i32gather_pd (__m256i __index, void const *__addr, int __scale)
-{
- __m512d __v1_old = _mm512_undefined_pd ();
- __mmask8 __mask = 0xFF;
-
- return (__m512d) __builtin_ia32_gathersiv8df ((__v8df) __v1_old,
- __addr,
- (__v8si) __index, __mask,
- __scale);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i32gather_pd (__m512d __v1_old, __mmask8 __mask,
- __m256i __index, void const *__addr, int __scale)
-{
- return (__m512d) __builtin_ia32_gathersiv8df ((__v8df) __v1_old,
- __addr,
- (__v8si) __index,
- __mask, __scale);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i64gather_ps (__m512i __index, void const *__addr, int __scale)
-{
- __m256 __v1_old = _mm256_undefined_ps ();
- __mmask8 __mask = 0xFF;
-
- return (__m256) __builtin_ia32_gatherdiv16sf ((__v8sf) __v1_old,
- __addr,
- (__v8di) __index, __mask,
- __scale);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i64gather_ps (__m256 __v1_old, __mmask8 __mask,
- __m512i __index, void const *__addr, int __scale)
-{
- return (__m256) __builtin_ia32_gatherdiv16sf ((__v8sf) __v1_old,
- __addr,
- (__v8di) __index,
- __mask, __scale);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i64gather_pd (__m512i __index, void const *__addr, int __scale)
-{
- __m512d __v1_old = _mm512_undefined_pd ();
- __mmask8 __mask = 0xFF;
-
- return (__m512d) __builtin_ia32_gatherdiv8df ((__v8df) __v1_old,
- __addr,
- (__v8di) __index, __mask,
- __scale);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i64gather_pd (__m512d __v1_old, __mmask8 __mask,
- __m512i __index, void const *__addr, int __scale)
-{
- return (__m512d) __builtin_ia32_gatherdiv8df ((__v8df) __v1_old,
- __addr,
- (__v8di) __index,
- __mask, __scale);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i32gather_epi32 (__m512i __index, void const *__addr, int __scale)
-{
- __m512i __v1_old = _mm512_undefined_epi32 ();
- __mmask16 __mask = 0xFFFF;
-
- return (__m512i) __builtin_ia32_gathersiv16si ((__v16si) __v1_old,
- __addr,
- (__v16si) __index,
- __mask, __scale);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i32gather_epi32 (__m512i __v1_old, __mmask16 __mask,
- __m512i __index, void const *__addr, int __scale)
-{
- return (__m512i) __builtin_ia32_gathersiv16si ((__v16si) __v1_old,
- __addr,
- (__v16si) __index,
- __mask, __scale);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i32gather_epi64 (__m256i __index, void const *__addr, int __scale)
-{
- __m512i __v1_old = _mm512_undefined_epi32 ();
- __mmask8 __mask = 0xFF;
-
- return (__m512i) __builtin_ia32_gathersiv8di ((__v8di) __v1_old,
- __addr,
- (__v8si) __index, __mask,
- __scale);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i32gather_epi64 (__m512i __v1_old, __mmask8 __mask,
- __m256i __index, void const *__addr,
- int __scale)
-{
- return (__m512i) __builtin_ia32_gathersiv8di ((__v8di) __v1_old,
- __addr,
- (__v8si) __index,
- __mask, __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i64gather_epi32 (__m512i __index, void const *__addr, int __scale)
-{
- __m256i __v1_old = _mm256_undefined_si256 ();
- __mmask8 __mask = 0xFF;
-
- return (__m256i) __builtin_ia32_gatherdiv16si ((__v8si) __v1_old,
- __addr,
- (__v8di) __index,
- __mask, __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i64gather_epi32 (__m256i __v1_old, __mmask8 __mask,
- __m512i __index, void const *__addr, int __scale)
-{
- return (__m256i) __builtin_ia32_gatherdiv16si ((__v8si) __v1_old,
- __addr,
- (__v8di) __index,
- __mask, __scale);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i64gather_epi64 (__m512i __index, void const *__addr, int __scale)
-{
- __m512i __v1_old = _mm512_undefined_epi32 ();
- __mmask8 __mask = 0xFF;
-
- return (__m512i) __builtin_ia32_gatherdiv8di ((__v8di) __v1_old,
- __addr,
- (__v8di) __index, __mask,
- __scale);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i64gather_epi64 (__m512i __v1_old, __mmask8 __mask,
- __m512i __index, void const *__addr,
- int __scale)
-{
- return (__m512i) __builtin_ia32_gatherdiv8di ((__v8di) __v1_old,
- __addr,
- (__v8di) __index,
- __mask, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i32scatter_ps (void *__addr, __m512i __index, __m512 __v1, int __scale)
-{
- __builtin_ia32_scattersiv16sf (__addr, (__mmask16) 0xFFFF,
- (__v16si) __index, (__v16sf) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i32scatter_ps (void *__addr, __mmask16 __mask,
- __m512i __index, __m512 __v1, int __scale)
-{
- __builtin_ia32_scattersiv16sf (__addr, __mask, (__v16si) __index,
- (__v16sf) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i32scatter_pd (void *__addr, __m256i __index, __m512d __v1,
- int __scale)
-{
- __builtin_ia32_scattersiv8df (__addr, (__mmask8) 0xFF,
- (__v8si) __index, (__v8df) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i32scatter_pd (void *__addr, __mmask8 __mask,
- __m256i __index, __m512d __v1, int __scale)
-{
- __builtin_ia32_scattersiv8df (__addr, __mask, (__v8si) __index,
- (__v8df) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i64scatter_ps (void *__addr, __m512i __index, __m256 __v1, int __scale)
-{
- __builtin_ia32_scatterdiv16sf (__addr, (__mmask8) 0xFF,
- (__v8di) __index, (__v8sf) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i64scatter_ps (void *__addr, __mmask8 __mask,
- __m512i __index, __m256 __v1, int __scale)
-{
- __builtin_ia32_scatterdiv16sf (__addr, __mask, (__v8di) __index,
- (__v8sf) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i64scatter_pd (void *__addr, __m512i __index, __m512d __v1,
- int __scale)
-{
- __builtin_ia32_scatterdiv8df (__addr, (__mmask8) 0xFF,
- (__v8di) __index, (__v8df) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i64scatter_pd (void *__addr, __mmask8 __mask,
- __m512i __index, __m512d __v1, int __scale)
-{
- __builtin_ia32_scatterdiv8df (__addr, __mask, (__v8di) __index,
- (__v8df) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i32scatter_epi32 (void *__addr, __m512i __index,
- __m512i __v1, int __scale)
-{
- __builtin_ia32_scattersiv16si (__addr, (__mmask16) 0xFFFF,
- (__v16si) __index, (__v16si) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i32scatter_epi32 (void *__addr, __mmask16 __mask,
- __m512i __index, __m512i __v1, int __scale)
-{
- __builtin_ia32_scattersiv16si (__addr, __mask, (__v16si) __index,
- (__v16si) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i32scatter_epi64 (void *__addr, __m256i __index,
- __m512i __v1, int __scale)
-{
- __builtin_ia32_scattersiv8di (__addr, (__mmask8) 0xFF,
- (__v8si) __index, (__v8di) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i32scatter_epi64 (void *__addr, __mmask8 __mask,
- __m256i __index, __m512i __v1, int __scale)
-{
- __builtin_ia32_scattersiv8di (__addr, __mask, (__v8si) __index,
- (__v8di) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i64scatter_epi32 (void *__addr, __m512i __index,
- __m256i __v1, int __scale)
-{
- __builtin_ia32_scatterdiv16si (__addr, (__mmask8) 0xFF,
- (__v8di) __index, (__v8si) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i64scatter_epi32 (void *__addr, __mmask8 __mask,
- __m512i __index, __m256i __v1, int __scale)
-{
- __builtin_ia32_scatterdiv16si (__addr, __mask, (__v8di) __index,
- (__v8si) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_i64scatter_epi64 (void *__addr, __m512i __index,
- __m512i __v1, int __scale)
-{
- __builtin_ia32_scatterdiv8di (__addr, (__mmask8) 0xFF,
- (__v8di) __index, (__v8di) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_i64scatter_epi64 (void *__addr, __mmask8 __mask,
- __m512i __index, __m512i __v1, int __scale)
-{
- __builtin_ia32_scatterdiv8di (__addr, __mask, (__v8di) __index,
- (__v8di) __v1, __scale);
-}
-#else
-#define _mm512_i32gather_ps(INDEX, ADDR, SCALE) \
- (__m512) __builtin_ia32_gathersiv16sf ((__v16sf)_mm512_undefined_ps(),\
- (void const *)ADDR, \
- (__v16si)(__m512i)INDEX, \
- (__mmask16)0xFFFF, (int)SCALE)
-
-#define _mm512_mask_i32gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m512) __builtin_ia32_gathersiv16sf ((__v16sf)(__m512)V1OLD, \
- (void const *)ADDR, \
- (__v16si)(__m512i)INDEX, \
- (__mmask16)MASK, (int)SCALE)
-
-#define _mm512_i32gather_pd(INDEX, ADDR, SCALE) \
- (__m512d) __builtin_ia32_gathersiv8df ((__v8df)_mm512_undefined_pd(), \
- (void const *)ADDR, \
- (__v8si)(__m256i)INDEX, \
- (__mmask8)0xFF, (int)SCALE)
-
-#define _mm512_mask_i32gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m512d) __builtin_ia32_gathersiv8df ((__v8df)(__m512d)V1OLD, \
- (void const *)ADDR, \
- (__v8si)(__m256i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm512_i64gather_ps(INDEX, ADDR, SCALE) \
- (__m256) __builtin_ia32_gatherdiv16sf ((__v8sf)_mm256_undefined_ps(), \
- (void const *)ADDR, \
- (__v8di)(__m512i)INDEX, \
- (__mmask8)0xFF, (int)SCALE)
-
-#define _mm512_mask_i64gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m256) __builtin_ia32_gatherdiv16sf ((__v8sf)(__m256)V1OLD, \
- (void const *)ADDR, \
- (__v8di)(__m512i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm512_i64gather_pd(INDEX, ADDR, SCALE) \
- (__m512d) __builtin_ia32_gatherdiv8df ((__v8df)_mm512_undefined_pd(), \
- (void const *)ADDR, \
- (__v8di)(__m512i)INDEX, \
- (__mmask8)0xFF, (int)SCALE)
-
-#define _mm512_mask_i64gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m512d) __builtin_ia32_gatherdiv8df ((__v8df)(__m512d)V1OLD, \
- (void const *)ADDR, \
- (__v8di)(__m512i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm512_i32gather_epi32(INDEX, ADDR, SCALE) \
- (__m512i) __builtin_ia32_gathersiv16si ((__v16si)_mm512_undefined_epi32 (), \
- (void const *)ADDR, \
- (__v16si)(__m512i)INDEX, \
- (__mmask16)0xFFFF, (int)SCALE)
-
-#define _mm512_mask_i32gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m512i) __builtin_ia32_gathersiv16si ((__v16si)(__m512i)V1OLD, \
- (void const *)ADDR, \
- (__v16si)(__m512i)INDEX, \
- (__mmask16)MASK, (int)SCALE)
-
-#define _mm512_i32gather_epi64(INDEX, ADDR, SCALE) \
- (__m512i) __builtin_ia32_gathersiv8di ((__v8di)_mm512_undefined_epi32 (), \
- (void const *)ADDR, \
- (__v8si)(__m256i)INDEX, \
- (__mmask8)0xFF, (int)SCALE)
-
-#define _mm512_mask_i32gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m512i) __builtin_ia32_gathersiv8di ((__v8di)(__m512i)V1OLD, \
- (void const *)ADDR, \
- (__v8si)(__m256i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm512_i64gather_epi32(INDEX, ADDR, SCALE) \
- (__m256i) __builtin_ia32_gatherdiv16si ((__v8si)_mm256_undefined_si256(), \
- (void const *)ADDR, \
- (__v8di)(__m512i)INDEX, \
- (__mmask8)0xFF, (int)SCALE)
-
-#define _mm512_mask_i64gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m256i) __builtin_ia32_gatherdiv16si ((__v8si)(__m256i)V1OLD, \
- (void const *)ADDR, \
- (__v8di)(__m512i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm512_i64gather_epi64(INDEX, ADDR, SCALE) \
- (__m512i) __builtin_ia32_gatherdiv8di ((__v8di)_mm512_undefined_epi32 (), \
- (void const *)ADDR, \
- (__v8di)(__m512i)INDEX, \
- (__mmask8)0xFF, (int)SCALE)
-
-#define _mm512_mask_i64gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m512i) __builtin_ia32_gatherdiv8di ((__v8di)(__m512i)V1OLD, \
- (void const *)ADDR, \
- (__v8di)(__m512i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm512_i32scatter_ps(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv16sf ((void *)ADDR, (__mmask16)0xFFFF, \
- (__v16si)(__m512i)INDEX, \
- (__v16sf)(__m512)V1, (int)SCALE)
-
-#define _mm512_mask_i32scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv16sf ((void *)ADDR, (__mmask16)MASK, \
- (__v16si)(__m512i)INDEX, \
- (__v16sf)(__m512)V1, (int)SCALE)
-
-#define _mm512_i32scatter_pd(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv8df ((void *)ADDR, (__mmask8)0xFF, \
- (__v8si)(__m256i)INDEX, \
- (__v8df)(__m512d)V1, (int)SCALE)
-
-#define _mm512_mask_i32scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv8df ((void *)ADDR, (__mmask8)MASK, \
- (__v8si)(__m256i)INDEX, \
- (__v8df)(__m512d)V1, (int)SCALE)
-
-#define _mm512_i64scatter_ps(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv16sf ((void *)ADDR, (__mmask8)0xFF, \
- (__v8di)(__m512i)INDEX, \
- (__v8sf)(__m256)V1, (int)SCALE)
-
-#define _mm512_mask_i64scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv16sf ((void *)ADDR, (__mmask16)MASK, \
- (__v8di)(__m512i)INDEX, \
- (__v8sf)(__m256)V1, (int)SCALE)
-
-#define _mm512_i64scatter_pd(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv8df ((void *)ADDR, (__mmask8)0xFF, \
- (__v8di)(__m512i)INDEX, \
- (__v8df)(__m512d)V1, (int)SCALE)
-
-#define _mm512_mask_i64scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv8df ((void *)ADDR, (__mmask8)MASK, \
- (__v8di)(__m512i)INDEX, \
- (__v8df)(__m512d)V1, (int)SCALE)
-
-#define _mm512_i32scatter_epi32(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv16si ((void *)ADDR, (__mmask16)0xFFFF, \
- (__v16si)(__m512i)INDEX, \
- (__v16si)(__m512i)V1, (int)SCALE)
-
-#define _mm512_mask_i32scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv16si ((void *)ADDR, (__mmask16)MASK, \
- (__v16si)(__m512i)INDEX, \
- (__v16si)(__m512i)V1, (int)SCALE)
-
-#define _mm512_i32scatter_epi64(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv8di ((void *)ADDR, (__mmask8)0xFF, \
- (__v8si)(__m256i)INDEX, \
- (__v8di)(__m512i)V1, (int)SCALE)
-
-#define _mm512_mask_i32scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv8di ((void *)ADDR, (__mmask8)MASK, \
- (__v8si)(__m256i)INDEX, \
- (__v8di)(__m512i)V1, (int)SCALE)
-
-#define _mm512_i64scatter_epi32(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv16si ((void *)ADDR, (__mmask8)0xFF, \
- (__v8di)(__m512i)INDEX, \
- (__v8si)(__m256i)V1, (int)SCALE)
-
-#define _mm512_mask_i64scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv16si ((void *)ADDR, (__mmask8)MASK, \
- (__v8di)(__m512i)INDEX, \
- (__v8si)(__m256i)V1, (int)SCALE)
-
-#define _mm512_i64scatter_epi64(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv8di ((void *)ADDR, (__mmask8)0xFF, \
- (__v8di)(__m512i)INDEX, \
- (__v8di)(__m512i)V1, (int)SCALE)
-
-#define _mm512_mask_i64scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv8di ((void *)ADDR, (__mmask8)MASK, \
- (__v8di)(__m512i)INDEX, \
- (__v8di)(__m512i)V1, (int)SCALE)
-#endif
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_compress_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_compress_pd (__mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m512d __A)
-{
- __builtin_ia32_compressstoredf512_mask ((__v8df *) __P, (__v8df) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_compress_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_compress_ps (__mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_compressstoreu_ps (void *__P, __mmask16 __U, __m512 __A)
-{
- __builtin_ia32_compressstoresf512_mask ((__v16sf *) __P, (__v16sf) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_compress_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_compress_epi64 (__mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m512i __A)
-{
- __builtin_ia32_compressstoredi512_mask ((__v8di *) __P, (__v8di) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_compress_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_compress_epi32 (__mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_compressstoreu_epi32 (void *__P, __mmask16 __U, __m512i __A)
-{
- __builtin_ia32_compressstoresi512_mask ((__v16si *) __P, (__v16si) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_expand_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_expand_pd (__mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_expanddf512_maskz ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_expandloadu_pd (__m512d __W, __mmask8 __U, void const *__P)
-{
- return (__m512d) __builtin_ia32_expandloaddf512_mask ((const __v8df *) __P,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_expandloadu_pd (__mmask8 __U, void const *__P)
-{
- return (__m512d) __builtin_ia32_expandloaddf512_maskz ((const __v8df *) __P,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_expand_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_expand_ps (__mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_expandsf512_maskz ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_expandloadu_ps (__m512 __W, __mmask16 __U, void const *__P)
-{
- return (__m512) __builtin_ia32_expandloadsf512_mask ((const __v16sf *) __P,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_expandloadu_ps (__mmask16 __U, void const *__P)
-{
- return (__m512) __builtin_ia32_expandloadsf512_maskz ((const __v16sf *) __P,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_expand_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_expand_epi64 (__mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_expanddi512_maskz ((__v8di) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_expandloadu_epi64 (__m512i __W, __mmask8 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_expandloaddi512_mask ((const __v8di *) __P,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P)
-{
- return (__m512i)
- __builtin_ia32_expandloaddi512_maskz ((const __v8di *) __P,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_expand_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_expand_epi32 (__mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_expandsi512_maskz ((__v16si) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_expandloadu_epi32 (__m512i __W, __mmask16 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_expandloadsi512_mask ((const __v16si *) __P,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_expandloadu_epi32 (__mmask16 __U, void const *__P)
-{
- return (__m512i) __builtin_ia32_expandloadsi512_maskz ((const __v16si *) __P,
- (__v16si)
- _mm512_setzero_si512
- (), (__mmask16) __U);
-}
-
-/* Mask arithmetic operations */
-#define _kand_mask16 _mm512_kand
-#define _kandn_mask16 _mm512_kandn
-#define _knot_mask16 _mm512_knot
-#define _kor_mask16 _mm512_kor
-#define _kxnor_mask16 _mm512_kxnor
-#define _kxor_mask16 _mm512_kxor
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortest_mask16_u8 (__mmask16 __A, __mmask16 __B, unsigned char *__CF)
-{
- *__CF = (unsigned char) __builtin_ia32_kortestchi (__A, __B);
- return (unsigned char) __builtin_ia32_kortestzhi (__A, __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortestz_mask16_u8 (__mmask16 __A, __mmask16 __B)
-{
- return (unsigned char) __builtin_ia32_kortestzhi ((__mmask16) __A,
- (__mmask16) __B);
-}
-
-extern __inline unsigned char
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kortestc_mask16_u8 (__mmask16 __A, __mmask16 __B)
-{
- return (unsigned char) __builtin_ia32_kortestchi ((__mmask16) __A,
- (__mmask16) __B);
-}
-
-extern __inline unsigned int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_cvtmask16_u32 (__mmask16 __A)
-{
- return (unsigned int) __builtin_ia32_kmovw ((__mmask16 ) __A);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_cvtu32_mask16 (unsigned int __A)
-{
- return (__mmask16) __builtin_ia32_kmovw ((__mmask16 ) __A);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_load_mask16 (__mmask16 *__A)
-{
- return (__mmask16) __builtin_ia32_kmovw (*(__mmask16 *) __A);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_store_mask16 (__mmask16 *__A, __mmask16 __B)
-{
- *(__mmask16 *) __A = __builtin_ia32_kmovw (__B);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kand (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask16) __builtin_ia32_kandhi ((__mmask16) __A, (__mmask16) __B);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kandn (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask16) __builtin_ia32_kandnhi ((__mmask16) __A,
- (__mmask16) __B);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kor (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask16) __builtin_ia32_korhi ((__mmask16) __A, (__mmask16) __B);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kortestz (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask16) __builtin_ia32_kortestzhi ((__mmask16) __A,
- (__mmask16) __B);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kortestc (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask16) __builtin_ia32_kortestchi ((__mmask16) __A,
- (__mmask16) __B);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kxnor (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask16) __builtin_ia32_kxnorhi ((__mmask16) __A, (__mmask16) __B);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kxor (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask16) __builtin_ia32_kxorhi ((__mmask16) __A, (__mmask16) __B);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_knot (__mmask16 __A)
-{
- return (__mmask16) __builtin_ia32_knothi ((__mmask16) __A);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kunpackb (__mmask16 __A, __mmask16 __B)
-{
- return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_kunpackb_mask16 (__mmask8 __A, __mmask8 __B)
-{
- return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_inserti32x4 (__mmask16 __B, __m512i __C, __m128i __D,
- const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti32x4_mask ((__v16si) __C,
- (__v4si) __D,
- __imm,
- (__v16si)
- _mm512_setzero_si512 (),
- __B);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_insertf32x4 (__mmask16 __B, __m512 __C, __m128 __D,
- const int __imm)
-{
- return (__m512) __builtin_ia32_insertf32x4_mask ((__v16sf) __C,
- (__v4sf) __D,
- __imm,
- (__v16sf)
- _mm512_setzero_ps (), __B);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_inserti32x4 (__m512i __A, __mmask16 __B, __m512i __C,
- __m128i __D, const int __imm)
-{
- return (__m512i) __builtin_ia32_inserti32x4_mask ((__v16si) __C,
- (__v4si) __D,
- __imm,
- (__v16si) __A,
- __B);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_insertf32x4 (__m512 __A, __mmask16 __B, __m512 __C,
- __m128 __D, const int __imm)
-{
- return (__m512) __builtin_ia32_insertf32x4_mask ((__v16sf) __C,
- (__v4sf) __D,
- __imm,
- (__v16sf) __A, __B);
-}
-#else
-#define _mm512_maskz_insertf32x4(A, X, Y, C) \
- ((__m512) __builtin_ia32_insertf32x4_mask ((__v16sf)(__m512) (X), \
- (__v4sf)(__m128) (Y), (int) (C), (__v16sf)_mm512_setzero_ps(), \
- (__mmask8)(A)))
-
-#define _mm512_maskz_inserti32x4(A, X, Y, C) \
- ((__m512i) __builtin_ia32_inserti32x4_mask ((__v16si)(__m512i) (X), \
- (__v4si)(__m128i) (Y), (int) (C), (__v16si)_mm512_setzero_si512 (), \
- (__mmask8)(A)))
-
-#define _mm512_mask_insertf32x4(A, B, X, Y, C) \
- ((__m512) __builtin_ia32_insertf32x4_mask ((__v16sf)(__m512) (X), \
- (__v4sf)(__m128) (Y), (int) (C), (__v16sf)(__m512) (A), \
- (__mmask8)(B)))
-
-#define _mm512_mask_inserti32x4(A, B, X, Y, C) \
- ((__m512i) __builtin_ia32_inserti32x4_mask ((__v16si)(__m512i) (X), \
- (__v4si)(__m128i) (Y), (int) (C), (__v16si)(__m512i) (A), \
- (__mmask8)(B)))
-#endif
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_epi64 (__mmask8 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_epi64 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_epi64 (__mmask8 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_epu64 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxuq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxuq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxuq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_epu64 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminuq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_undefined_epi32 (),
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminuq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminuq512_mask ((__v8di) __A,
- (__v8di) __B,
- (__v8di)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxsd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_epi32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminsd512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_epu32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxud512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_epu32 (__mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxud512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pmaxud512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W, __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_epu32 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminud512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_epu32 (__mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminud512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si)
- _mm512_setzero_si512 (),
- __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_pminud512_mask ((__v16si) __A,
- (__v16si) __B,
- (__v16si) __W, __M);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_unpacklo_ps (__m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_unpcklps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_unpacklo_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_unpcklps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_unpacklo_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_unpcklps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_max_round_sd (__m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_maxsd_round ((__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_max_round_ss (__m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_maxss_round ((__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_min_round_sd (__m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_minsd_round ((__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_min_round_ss (__m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_minss_round ((__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-
-#else
-#define _mm_max_round_sd(A, B, C) \
- (__m128d)__builtin_ia32_addsd_round(A, B, C)
-
-#define _mm_max_round_ss(A, B, C) \
- (__m128)__builtin_ia32_addss_round(A, B, C)
-
-#define _mm_min_round_sd(A, B, C) \
- (__m128d)__builtin_ia32_subsd_round(A, B, C)
-
-#define _mm_min_round_ss(A, B, C) \
- (__m128)__builtin_ia32_subss_round(A, B, C)
-#endif
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_blend_pd (__mmask8 __U, __m512d __A, __m512d __W)
-{
- return (__m512d) __builtin_ia32_blendmpd_512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_blend_ps (__mmask16 __U, __m512 __A, __m512 __W)
-{
- return (__m512) __builtin_ia32_blendmps_512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_blend_epi64 (__mmask8 __U, __m512i __A, __m512i __W)
-{
- return (__m512i) __builtin_ia32_blendmq_512_mask ((__v8di) __A,
- (__v8di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_blend_epi32 (__mmask16 __U, __m512i __A, __m512i __W)
-{
- return (__m512i) __builtin_ia32_blendmd_512_mask ((__v16si) __A,
- (__v16si) __W,
- (__mmask16) __U);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fmadd_round_sd (__m128d __W, __m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_vfmaddsd3_round ((__v2df) __W,
- (__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fmadd_round_ss (__m128 __W, __m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_vfmaddss3_round ((__v4sf) __W,
- (__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fmsub_round_sd (__m128d __W, __m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_vfmaddsd3_round ((__v2df) __W,
- (__v2df) __A,
- -(__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fmsub_round_ss (__m128 __W, __m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_vfmaddss3_round ((__v4sf) __W,
- (__v4sf) __A,
- -(__v4sf) __B,
- __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fnmadd_round_sd (__m128d __W, __m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_vfmaddsd3_round ((__v2df) __W,
- -(__v2df) __A,
- (__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fnmadd_round_ss (__m128 __W, __m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_vfmaddss3_round ((__v4sf) __W,
- -(__v4sf) __A,
- (__v4sf) __B,
- __R);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fnmsub_round_sd (__m128d __W, __m128d __A, __m128d __B, const int __R)
-{
- return (__m128d) __builtin_ia32_vfmaddsd3_round ((__v2df) __W,
- -(__v2df) __A,
- -(__v2df) __B,
- __R);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fnmsub_round_ss (__m128 __W, __m128 __A, __m128 __B, const int __R)
-{
- return (__m128) __builtin_ia32_vfmaddss3_round ((__v4sf) __W,
- -(__v4sf) __A,
- -(__v4sf) __B,
- __R);
-}
-#else
-#define _mm_fmadd_round_sd(A, B, C, R) \
- (__m128d)__builtin_ia32_vfmaddsd3_round(A, B, C, R)
-
-#define _mm_fmadd_round_ss(A, B, C, R) \
- (__m128)__builtin_ia32_vfmaddss3_round(A, B, C, R)
-
-#define _mm_fmsub_round_sd(A, B, C, R) \
- (__m128d)__builtin_ia32_vfmaddsd3_round(A, B, -(C), R)
-
-#define _mm_fmsub_round_ss(A, B, C, R) \
- (__m128)__builtin_ia32_vfmaddss3_round(A, B, -(C), R)
-
-#define _mm_fnmadd_round_sd(A, B, C, R) \
- (__m128d)__builtin_ia32_vfmaddsd3_round(A, -(B), C, R)
-
-#define _mm_fnmadd_round_ss(A, B, C, R) \
- (__m128)__builtin_ia32_vfmaddss3_round(A, -(B), C, R)
-
-#define _mm_fnmsub_round_sd(A, B, C, R) \
- (__m128d)__builtin_ia32_vfmaddsd3_round(A, -(B), -(C), R)
-
-#define _mm_fnmsub_round_ss(A, B, C, R) \
- (__m128)__builtin_ia32_vfmaddss3_round(A, -(B), -(C), R)
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_comi_round_ss (__m128 __A, __m128 __B, const int __P, const int __R)
-{
- return __builtin_ia32_vcomiss ((__v4sf) __A, (__v4sf) __B, __P, __R);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_comi_round_sd (__m128d __A, __m128d __B, const int __P, const int __R)
-{
- return __builtin_ia32_vcomisd ((__v2df) __A, (__v2df) __B, __P, __R);
-}
-#else
-#define _mm_comi_round_ss(A, B, C, D)\
-__builtin_ia32_vcomiss(A, B, C, D)
-#define _mm_comi_round_sd(A, B, C, D)\
-__builtin_ia32_vcomisd(A, B, C, D)
-#endif
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sqrt_pd (__m512d __A)
-{
- return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sqrt_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sqrt_pd (__mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sqrt_ps (__m512 __A)
-{
- return (__m512) __builtin_ia32_sqrtps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sqrt_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_sqrtps512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sqrt_ps (__mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_sqrtps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_add_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) ((__v8df)__A + (__v8df)__B);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_add_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_addpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_add_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_addpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_add_ps (__m512 __A, __m512 __B)
-{
- return (__m512) ((__v16sf)__A + (__v16sf)__B);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_add_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_addps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_add_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_addps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sub_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) ((__v8df)__A - (__v8df)__B);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sub_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_subpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sub_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_subpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_sub_ps (__m512 __A, __m512 __B)
-{
- return (__m512) ((__v16sf)__A - (__v16sf)__B);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_sub_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_subps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_sub_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_subps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mul_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) ((__v8df)__A * (__v8df)__B);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mul_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_mulpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mul_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_mulpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mul_ps (__m512 __A, __m512 __B)
-{
- return (__m512) ((__v16sf)__A * (__v16sf)__B);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_mul_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_mulps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_mul_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_mulps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_div_pd (__m512d __M, __m512d __V)
-{
- return (__m512d) ((__v8df)__M / (__v8df)__V);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_div_pd (__m512d __W, __mmask8 __U, __m512d __M, __m512d __V)
-{
- return (__m512d) __builtin_ia32_divpd512_mask ((__v8df) __M,
- (__v8df) __V,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_div_pd (__mmask8 __U, __m512d __M, __m512d __V)
-{
- return (__m512d) __builtin_ia32_divpd512_mask ((__v8df) __M,
- (__v8df) __V,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_div_ps (__m512 __A, __m512 __B)
-{
- return (__m512) ((__v16sf)__A / (__v16sf)__B);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_div_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_divps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_div_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_divps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_max_ps (__m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_max_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_max_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_min_ps (__m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_min_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_min_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_scalef_pd (__m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_scalef_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_scalef_pd (__mmask8 __U, __m512d __A, __m512d __B)
-{
- return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_scalef_ps (__m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_scalef_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_scalef_ps (__mmask16 __U, __m512 __A, __m512 __B)
-{
- return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_scalef_sd (__m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_scalefsd_round ((__v2df) __A,
- (__v2df) __B,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_scalef_ss (__m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_scalefss_round ((__v4sf) __A,
- (__v4sf) __B,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmadd_pd (__m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmadd_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmadd_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmadd_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmadd_ps (__m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmadd_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmadd_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmadd_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmsub_pd (__m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmsub_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmsub_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
-{
- return (__m512d) __builtin_ia32_vfmsubpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmsub_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmsub_ps (__m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmsub_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmsub_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
-{
- return (__m512) __builtin_ia32_vfmsubps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmsub_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmaddsub_pd (__m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmaddsub_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmaddsub_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmaddsub_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmaddsub_ps (__m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmaddsub_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmaddsub_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmaddsub_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmsubadd_pd (__m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmsubadd_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmsubadd_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
-{
- return (__m512d) __builtin_ia32_vfmsubaddpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmsubadd_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fmsubadd_ps (__m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fmsubadd_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fmsubadd_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
-{
- return (__m512) __builtin_ia32_vfmsubaddps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fmsubadd_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fnmadd_pd (__m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask (-(__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fnmadd_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfnmaddpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fnmadd_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask3 (-(__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fnmadd_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fnmadd_ps (__m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask (-(__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fnmadd_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfnmaddps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fnmadd_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask3 (-(__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fnmadd_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fnmsub_pd (__m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_mask (-(__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fnmsub_pd (__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfnmsubpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fnmsub_pd (__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
-{
- return (__m512d) __builtin_ia32_vfnmsubpd512_mask3 ((__v8df) __A,
- (__v8df) __B,
- (__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fnmsub_pd (__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
-{
- return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A,
- (__v8df) __B,
- -(__v8df) __C,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fnmsub_ps (__m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_mask (-(__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fnmsub_ps (__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfnmsubps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask3_fnmsub_ps (__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
-{
- return (__m512) __builtin_ia32_vfnmsubps512_mask3 ((__v16sf) __A,
- (__v16sf) __B,
- (__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fnmsub_ps (__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
-{
- return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A,
- (__v16sf) __B,
- -(__v16sf) __C,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvttpd_epi32 (__m512d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvttpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
- (__v8si) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvttpd_epi32 (__mmask8 __U, __m512d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvttpd_epu32 (__m512d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvttpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
- (__v8si) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvttpd_epu32 (__mmask8 __U, __m512d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtpd_epi32 (__m512d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
- (__v8si) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtpd_epi32 (__mmask8 __U, __m512d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtpd_epu32 (__m512d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_undefined_si256 (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
- (__v8si) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtpd_epu32 (__mmask8 __U, __m512d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvttps_epi32 (__m512 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvttps_epi32 (__m512i __W, __mmask16 __U, __m512 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
- (__v16si) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvttps_epi32 (__mmask16 __U, __m512 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvttps_epu32 (__m512 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvttps_epu32 (__m512i __W, __mmask16 __U, __m512 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
- (__v16si) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvttps_epu32 (__mmask16 __U, __m512 __A)
-{
- return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtps_epi32 (__m512 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtps_epi32 (__m512i __W, __mmask16 __U, __m512 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
- (__v16si) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtps_epi32 (__mmask16 __U, __m512 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtps_epu32 (__m512 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_undefined_epi32 (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtps_epu32 (__m512i __W, __mmask16 __U, __m512 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
- (__v16si) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtps_epu32 (__mmask16 __U, __m512 __A)
-{
- return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtsd_f64 (__m512d __A)
-{
- return __A[0];
-}
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtss_f32 (__m512 __A)
-{
- return __A[0];
-}
-
-#ifdef __x86_64__
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtu64_ss (__m128 __A, unsigned long long __B)
-{
- return (__m128) __builtin_ia32_cvtusi2ss64 ((__v4sf) __A, __B,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtu64_sd (__m128d __A, unsigned long long __B)
-{
- return (__m128d) __builtin_ia32_cvtusi2sd64 ((__v2df) __A, __B,
- _MM_FROUND_CUR_DIRECTION);
-}
-#endif
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtu32_ss (__m128 __A, unsigned __B)
-{
- return (__m128) __builtin_ia32_cvtusi2ss32 ((__v4sf) __A, __B,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepi32_ps (__m512i __A)
-{
- return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepi32_ps (__m512 __W, __mmask16 __U, __m512i __A)
-{
- return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepi32_ps (__mmask16 __U, __m512i __A)
-{
- return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtepu32_ps (__m512i __A)
-{
- return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtepu32_ps (__m512 __W, __mmask16 __U, __m512i __A)
-{
- return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtepu32_ps (__mmask16 __U, __m512i __A)
-{
- return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fixupimm_pd (__m512d __A, __m512d __B, __m512i __C, const int __imm)
-{
- return (__m512d) __builtin_ia32_fixupimmpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8di) __C,
- __imm,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fixupimm_pd (__m512d __A, __mmask8 __U, __m512d __B,
- __m512i __C, const int __imm)
-{
- return (__m512d) __builtin_ia32_fixupimmpd512_mask ((__v8df) __A,
- (__v8df) __B,
- (__v8di) __C,
- __imm,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fixupimm_pd (__mmask8 __U, __m512d __A, __m512d __B,
- __m512i __C, const int __imm)
-{
- return (__m512d) __builtin_ia32_fixupimmpd512_maskz ((__v8df) __A,
- (__v8df) __B,
- (__v8di) __C,
- __imm,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_fixupimm_ps (__m512 __A, __m512 __B, __m512i __C, const int __imm)
-{
- return (__m512) __builtin_ia32_fixupimmps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16si) __C,
- __imm,
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_fixupimm_ps (__m512 __A, __mmask16 __U, __m512 __B,
- __m512i __C, const int __imm)
-{
- return (__m512) __builtin_ia32_fixupimmps512_mask ((__v16sf) __A,
- (__v16sf) __B,
- (__v16si) __C,
- __imm,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_fixupimm_ps (__mmask16 __U, __m512 __A, __m512 __B,
- __m512i __C, const int __imm)
-{
- return (__m512) __builtin_ia32_fixupimmps512_maskz ((__v16sf) __A,
- (__v16sf) __B,
- (__v16si) __C,
- __imm,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fixupimm_sd (__m128d __A, __m128d __B, __m128i __C, const int __imm)
-{
- return (__m128d) __builtin_ia32_fixupimmsd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2di) __C, __imm,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fixupimm_sd (__m128d __A, __mmask8 __U, __m128d __B,
- __m128i __C, const int __imm)
-{
- return (__m128d) __builtin_ia32_fixupimmsd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2di) __C, __imm,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fixupimm_sd (__mmask8 __U, __m128d __A, __m128d __B,
- __m128i __C, const int __imm)
-{
- return (__m128d) __builtin_ia32_fixupimmsd_maskz ((__v2df) __A,
- (__v2df) __B,
- (__v2di) __C,
- __imm,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fixupimm_ss (__m128 __A, __m128 __B, __m128i __C, const int __imm)
-{
- return (__m128) __builtin_ia32_fixupimmss_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4si) __C, __imm,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fixupimm_ss (__m128 __A, __mmask8 __U, __m128 __B,
- __m128i __C, const int __imm)
-{
- return (__m128) __builtin_ia32_fixupimmss_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4si) __C, __imm,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fixupimm_ss (__mmask8 __U, __m128 __A, __m128 __B,
- __m128i __C, const int __imm)
-{
- return (__m128) __builtin_ia32_fixupimmss_maskz ((__v4sf) __A,
- (__v4sf) __B,
- (__v4si) __C, __imm,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-#else
-#define _mm512_fixupimm_pd(X, Y, Z, C) \
- ((__m512d)__builtin_ia32_fixupimmpd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (__v8di)(__m512i)(Z), (int)(C), \
- (__mmask8)(-1), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_fixupimm_pd(X, U, Y, Z, C) \
- ((__m512d)__builtin_ia32_fixupimmpd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (__v8di)(__m512i)(Z), (int)(C), \
- (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_maskz_fixupimm_pd(U, X, Y, Z, C) \
- ((__m512d)__builtin_ia32_fixupimmpd512_maskz ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (__v8di)(__m512i)(Z), (int)(C), \
- (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_fixupimm_ps(X, Y, Z, C) \
- ((__m512)__builtin_ia32_fixupimmps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (__v16si)(__m512i)(Z), (int)(C), \
- (__mmask16)(-1), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_fixupimm_ps(X, U, Y, Z, C) \
- ((__m512)__builtin_ia32_fixupimmps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (__v16si)(__m512i)(Z), (int)(C), \
- (__mmask16)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_maskz_fixupimm_ps(U, X, Y, Z, C) \
- ((__m512)__builtin_ia32_fixupimmps512_maskz ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (__v16si)(__m512i)(Z), (int)(C), \
- (__mmask16)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_fixupimm_sd(X, Y, Z, C) \
- ((__m128d)__builtin_ia32_fixupimmsd_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (__v2di)(__m128i)(Z), (int)(C), \
- (__mmask8)(-1), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_mask_fixupimm_sd(X, U, Y, Z, C) \
- ((__m128d)__builtin_ia32_fixupimmsd_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (__v2di)(__m128i)(Z), (int)(C), \
- (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_maskz_fixupimm_sd(U, X, Y, Z, C) \
- ((__m128d)__builtin_ia32_fixupimmsd_maskz ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (__v2di)(__m128i)(Z), (int)(C), \
- (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_fixupimm_ss(X, Y, Z, C) \
- ((__m128)__builtin_ia32_fixupimmss_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (__v4si)(__m128i)(Z), (int)(C), \
- (__mmask8)(-1), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_mask_fixupimm_ss(X, U, Y, Z, C) \
- ((__m128)__builtin_ia32_fixupimmss_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (__v4si)(__m128i)(Z), (int)(C), \
- (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_maskz_fixupimm_ss(U, X, Y, Z, C) \
- ((__m128)__builtin_ia32_fixupimmss_maskz ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (__v4si)(__m128i)(Z), (int)(C), \
- (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-#endif
-
-#ifdef __x86_64__
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtss_u64 (__m128 __A)
-{
- return (unsigned long long) __builtin_ia32_vcvtss2usi64 ((__v4sf)
- __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttss_u64 (__m128 __A)
-{
- return (unsigned long long) __builtin_ia32_vcvttss2usi64 ((__v4sf)
- __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttss_i64 (__m128 __A)
-{
- return (long long) __builtin_ia32_vcvttss2si64 ((__v4sf) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-#endif /* __x86_64__ */
-
-extern __inline unsigned
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtss_u32 (__m128 __A)
-{
- return (unsigned) __builtin_ia32_vcvtss2usi32 ((__v4sf) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline unsigned
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttss_u32 (__m128 __A)
-{
- return (unsigned) __builtin_ia32_vcvttss2usi32 ((__v4sf) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttss_i32 (__m128 __A)
-{
- return (int) __builtin_ia32_vcvttss2si32 ((__v4sf) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-#ifdef __x86_64__
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtsd_u64 (__m128d __A)
-{
- return (unsigned long long) __builtin_ia32_vcvtsd2usi64 ((__v2df)
- __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttsd_u64 (__m128d __A)
-{
- return (unsigned long long) __builtin_ia32_vcvttsd2usi64 ((__v2df)
- __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttsd_i64 (__m128d __A)
-{
- return (long long) __builtin_ia32_vcvttsd2si64 ((__v2df) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-#endif /* __x86_64__ */
-
-extern __inline unsigned
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtsd_u32 (__m128d __A)
-{
- return (unsigned) __builtin_ia32_vcvtsd2usi32 ((__v2df) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline unsigned
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttsd_u32 (__m128d __A)
-{
- return (unsigned) __builtin_ia32_vcvttsd2usi32 ((__v2df) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttsd_i32 (__m128d __A)
-{
- return (int) __builtin_ia32_vcvttsd2si32 ((__v2df) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtps_pd (__m256 __A)
-{
- return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtps_pd (__m512d __W, __mmask8 __U, __m256 __A)
-{
- return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtps_pd (__mmask8 __U, __m256 __A)
-{
- return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtph_ps (__m256i __A)
-{
- return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtph_ps (__m512 __W, __mmask16 __U, __m256i __A)
-{
- return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtph_ps (__mmask16 __U, __m256i __A)
-{
- return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cvtpd_ps (__m512d __A)
-{
- return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
- (__v8sf)
- _mm256_undefined_ps (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cvtpd_ps (__m256 __W, __mmask8 __U, __m512d __A)
-{
- return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
- (__v8sf) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_cvtpd_ps (__mmask8 __U, __m512d __A)
-{
- return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_getexp_ps (__m512 __A)
-{
- return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_undefined_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_getexp_ps (__m512 __W, __mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A,
- (__v16sf) __W,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_getexp_ps (__mmask16 __U, __m512 __A)
-{
- return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_getexp_pd (__m512d __A)
-{
- return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_undefined_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_getexp_pd (__m512d __W, __mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A,
- (__v8df) __W,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_getexp_pd (__mmask8 __U, __m512d __A)
-{
- return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getexp_ss (__m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_getexpss128_round ((__v4sf) __A,
- (__v4sf) __B,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getexp_sd (__m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_getexpsd128_round ((__v2df) __A,
- (__v2df) __B,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_getmant_pd (__m512d __A, _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m512d) __builtin_ia32_getmantpd512_mask ((__v8df) __A,
- (__C << 2) | __B,
- _mm512_undefined_pd (),
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_getmant_pd (__m512d __W, __mmask8 __U, __m512d __A,
- _MM_MANTISSA_NORM_ENUM __B, _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m512d) __builtin_ia32_getmantpd512_mask ((__v8df) __A,
- (__C << 2) | __B,
- (__v8df) __W, __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_getmant_pd (__mmask8 __U, __m512d __A,
- _MM_MANTISSA_NORM_ENUM __B, _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m512d) __builtin_ia32_getmantpd512_mask ((__v8df) __A,
- (__C << 2) | __B,
- (__v8df)
- _mm512_setzero_pd (),
- __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_getmant_ps (__m512 __A, _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m512) __builtin_ia32_getmantps512_mask ((__v16sf) __A,
- (__C << 2) | __B,
- _mm512_undefined_ps (),
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_getmant_ps (__m512 __W, __mmask16 __U, __m512 __A,
- _MM_MANTISSA_NORM_ENUM __B, _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m512) __builtin_ia32_getmantps512_mask ((__v16sf) __A,
- (__C << 2) | __B,
- (__v16sf) __W, __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_getmant_ps (__mmask16 __U, __m512 __A,
- _MM_MANTISSA_NORM_ENUM __B, _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m512) __builtin_ia32_getmantps512_mask ((__v16sf) __A,
- (__C << 2) | __B,
- (__v16sf)
- _mm512_setzero_ps (),
- __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getmant_sd (__m128d __A, __m128d __B, _MM_MANTISSA_NORM_ENUM __C,
- _MM_MANTISSA_SIGN_ENUM __D)
-{
- return (__m128d) __builtin_ia32_getmantsd_round ((__v2df) __A,
- (__v2df) __B,
- (__D << 2) | __C,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getmant_ss (__m128 __A, __m128 __B, _MM_MANTISSA_NORM_ENUM __C,
- _MM_MANTISSA_SIGN_ENUM __D)
-{
- return (__m128) __builtin_ia32_getmantss_round ((__v4sf) __A,
- (__v4sf) __B,
- (__D << 2) | __C,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-#else
-#define _mm512_getmant_pd(X, B, C) \
- ((__m512d)__builtin_ia32_getmantpd512_mask ((__v8df)(__m512d)(X), \
- (int)(((C)<<2) | (B)), \
- (__v8df)_mm512_undefined_pd(), \
- (__mmask8)-1,\
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_getmant_pd(W, U, X, B, C) \
- ((__m512d)__builtin_ia32_getmantpd512_mask ((__v8df)(__m512d)(X), \
- (int)(((C)<<2) | (B)), \
- (__v8df)(__m512d)(W), \
- (__mmask8)(U),\
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_maskz_getmant_pd(U, X, B, C) \
- ((__m512d)__builtin_ia32_getmantpd512_mask ((__v8df)(__m512d)(X), \
- (int)(((C)<<2) | (B)), \
- (__v8df)_mm512_setzero_pd(), \
- (__mmask8)(U),\
- _MM_FROUND_CUR_DIRECTION))
-#define _mm512_getmant_ps(X, B, C) \
- ((__m512)__builtin_ia32_getmantps512_mask ((__v16sf)(__m512)(X), \
- (int)(((C)<<2) | (B)), \
- (__v16sf)_mm512_undefined_ps(), \
- (__mmask16)-1,\
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_getmant_ps(W, U, X, B, C) \
- ((__m512)__builtin_ia32_getmantps512_mask ((__v16sf)(__m512)(X), \
- (int)(((C)<<2) | (B)), \
- (__v16sf)(__m512)(W), \
- (__mmask16)(U),\
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_maskz_getmant_ps(U, X, B, C) \
- ((__m512)__builtin_ia32_getmantps512_mask ((__v16sf)(__m512)(X), \
- (int)(((C)<<2) | (B)), \
- (__v16sf)_mm512_setzero_ps(), \
- (__mmask16)(U),\
- _MM_FROUND_CUR_DIRECTION))
-#define _mm_getmant_sd(X, Y, C, D) \
- ((__m128d)__builtin_ia32_getmantsd_round ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), \
- (int)(((D)<<2) | (C)), \
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_getmant_ss(X, Y, C, D) \
- ((__m128)__builtin_ia32_getmantss_round ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), \
- (int)(((D)<<2) | (C)), \
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_getexp_ss(A, B) \
- ((__m128)__builtin_ia32_getexpss128_mask((__v4sf)(__m128)(A), (__v4sf)(__m128)(B), \
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm_getexp_sd(A, B) \
- ((__m128d)__builtin_ia32_getexpsd128_mask((__v2df)(__m128d)(A), (__v2df)(__m128d)(B),\
- _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_getexp_ps(A) \
- ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \
- (__v16sf)_mm512_undefined_ps(), (__mmask16)-1, _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_getexp_ps(W, U, A) \
- ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \
- (__v16sf)(__m512)(W), (__mmask16)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_maskz_getexp_ps(U, A) \
- ((__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \
- (__v16sf)_mm512_setzero_ps(), (__mmask16)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_getexp_pd(A) \
- ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \
- (__v8df)_mm512_undefined_pd(), (__mmask8)-1, _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_getexp_pd(W, U, A) \
- ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \
- (__v8df)(__m512d)(W), (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_maskz_getexp_pd(U, A) \
- ((__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \
- (__v8df)_mm512_setzero_pd(), (__mmask8)(U), _MM_FROUND_CUR_DIRECTION))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_roundscale_ps (__m512 __A, const int __imm)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A, __imm,
- (__v16sf)
- _mm512_undefined_ps (),
- -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_roundscale_ps (__m512 __A, __mmask16 __B, __m512 __C,
- const int __imm)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __C, __imm,
- (__v16sf) __A,
- (__mmask16) __B,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_roundscale_ps (__mmask16 __A, __m512 __B, const int __imm)
-{
- return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __B,
- __imm,
- (__v16sf)
- _mm512_setzero_ps (),
- (__mmask16) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_roundscale_pd (__m512d __A, const int __imm)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A, __imm,
- (__v8df)
- _mm512_undefined_pd (),
- -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_roundscale_pd (__m512d __A, __mmask8 __B, __m512d __C,
- const int __imm)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __C, __imm,
- (__v8df) __A,
- (__mmask8) __B,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_roundscale_pd (__mmask8 __A, __m512d __B, const int __imm)
-{
- return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __B,
- __imm,
- (__v8df)
- _mm512_setzero_pd (),
- (__mmask8) __A,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_roundscale_ss (__m128 __A, __m128 __B, const int __imm)
-{
- return (__m128) __builtin_ia32_rndscaless_round ((__v4sf) __A,
- (__v4sf) __B, __imm,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_roundscale_sd (__m128d __A, __m128d __B, const int __imm)
-{
- return (__m128d) __builtin_ia32_rndscalesd_round ((__v2df) __A,
- (__v2df) __B, __imm,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-#else
-#define _mm512_roundscale_ps(A, B) \
- ((__m512) __builtin_ia32_rndscaleps_mask ((__v16sf)(__m512)(A), (int)(B),\
- (__v16sf)_mm512_undefined_ps(), (__mmask16)(-1), _MM_FROUND_CUR_DIRECTION))
-#define _mm512_mask_roundscale_ps(A, B, C, D) \
- ((__m512) __builtin_ia32_rndscaleps_mask ((__v16sf)(__m512)(C), \
- (int)(D), \
- (__v16sf)(__m512)(A), \
- (__mmask16)(B), _MM_FROUND_CUR_DIRECTION))
-#define _mm512_maskz_roundscale_ps(A, B, C) \
- ((__m512) __builtin_ia32_rndscaleps_mask ((__v16sf)(__m512)(B), \
- (int)(C), \
- (__v16sf)_mm512_setzero_ps(),\
- (__mmask16)(A), _MM_FROUND_CUR_DIRECTION))
-#define _mm512_roundscale_pd(A, B) \
- ((__m512d) __builtin_ia32_rndscalepd_mask ((__v8df)(__m512d)(A), (int)(B),\
- (__v8df)_mm512_undefined_pd(), (__mmask8)(-1), _MM_FROUND_CUR_DIRECTION))
-#define _mm512_mask_roundscale_pd(A, B, C, D) \
- ((__m512d) __builtin_ia32_rndscalepd_mask ((__v8df)(__m512d)(C), \
- (int)(D), \
- (__v8df)(__m512d)(A), \
- (__mmask8)(B), _MM_FROUND_CUR_DIRECTION))
-#define _mm512_maskz_roundscale_pd(A, B, C) \
- ((__m512d) __builtin_ia32_rndscalepd_mask ((__v8df)(__m512d)(B), \
- (int)(C), \
- (__v8df)_mm512_setzero_pd(),\
- (__mmask8)(A), _MM_FROUND_CUR_DIRECTION))
-#define _mm_roundscale_ss(A, B, C) \
- ((__m128) __builtin_ia32_rndscaless_round ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(B), (int)(C), _MM_FROUND_CUR_DIRECTION))
-#define _mm_roundscale_sd(A, B, C) \
- ((__m128d) __builtin_ia32_rndscalesd_round ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C), _MM_FROUND_CUR_DIRECTION))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_pd_mask (__m512d __X, __m512d __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmppd512_mask ((__v8df) __X,
- (__v8df) __Y, __P,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmp_ps_mask (__m512 __X, __m512 __Y, const int __P)
-{
- return (__mmask16) __builtin_ia32_cmpps512_mask ((__v16sf) __X,
- (__v16sf) __Y, __P,
- (__mmask16) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_ps_mask (__mmask16 __U, __m512 __X, __m512 __Y, const int __P)
-{
- return (__mmask16) __builtin_ia32_cmpps512_mask ((__v16sf) __X,
- (__v16sf) __Y, __P,
- (__mmask16) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmp_pd_mask (__mmask8 __U, __m512d __X, __m512d __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmppd512_mask ((__v8df) __X,
- (__v8df) __Y, __P,
- (__mmask8) __U,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_sd_mask (__m128d __X, __m128d __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpsd_mask ((__v2df) __X,
- (__v2df) __Y, __P,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_sd_mask (__mmask8 __M, __m128d __X, __m128d __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpsd_mask ((__v2df) __X,
- (__v2df) __Y, __P,
- (__mmask8) __M,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_ss_mask (__m128 __X, __m128 __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpss_mask ((__v4sf) __X,
- (__v4sf) __Y, __P,
- (__mmask8) -1,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_ss_mask (__mmask8 __M, __m128 __X, __m128 __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpss_mask ((__v4sf) __X,
- (__v4sf) __Y, __P,
- (__mmask8) __M,
- _MM_FROUND_CUR_DIRECTION);
-}
-
-#else
-#define _mm512_cmp_pd_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmppd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(P),\
- (__mmask8)-1,_MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_cmp_ps_mask(X, Y, P) \
- ((__mmask16) __builtin_ia32_cmpps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(P),\
- (__mmask16)-1,_MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_cmp_pd_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmppd512_mask ((__v8df)(__m512d)(X), \
- (__v8df)(__m512d)(Y), (int)(P),\
- (__mmask8)M, _MM_FROUND_CUR_DIRECTION))
-
-#define _mm512_mask_cmp_ps_mask(M, X, Y, P) \
- ((__mmask16) __builtin_ia32_cmpps512_mask ((__v16sf)(__m512)(X), \
- (__v16sf)(__m512)(Y), (int)(P),\
- (__mmask16)M,_MM_FROUND_CUR_DIRECTION))
-
-#define _mm_cmp_sd_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpsd_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (int)(P),\
- (__mmask8)-1,_MM_FROUND_CUR_DIRECTION))
-
-#define _mm_mask_cmp_sd_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpsd_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (int)(P),\
- M,_MM_FROUND_CUR_DIRECTION))
-
-#define _mm_cmp_ss_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpss_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (int)(P), \
- (__mmask8)-1,_MM_FROUND_CUR_DIRECTION))
-
-#define _mm_mask_cmp_ss_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpss_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (int)(P), \
- M,_MM_FROUND_CUR_DIRECTION))
-#endif
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_kmov (__mmask16 __A)
-{
- return __builtin_ia32_kmovw (__A);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castpd_ps (__m512d __A)
-{
- return (__m512) (__A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castpd_si512 (__m512d __A)
-{
- return (__m512i) (__A);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castps_pd (__m512 __A)
-{
- return (__m512d) (__A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castps_si512 (__m512 __A)
-{
- return (__m512i) (__A);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castsi512_ps (__m512i __A)
-{
- return (__m512) (__A);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castsi512_pd (__m512i __A)
-{
- return (__m512d) (__A);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castpd512_pd128 (__m512d __A)
-{
- return (__m128d)_mm512_extractf32x4_ps((__m512)__A, 0);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castps512_ps128 (__m512 __A)
-{
- return _mm512_extractf32x4_ps(__A, 0);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castsi512_si128 (__m512i __A)
-{
- return (__m128i)_mm512_extracti32x4_epi32((__m512i)__A, 0);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castpd512_pd256 (__m512d __A)
-{
- return _mm512_extractf64x4_pd(__A, 0);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castps512_ps256 (__m512 __A)
-{
- return (__m256)_mm512_extractf64x4_pd((__m512d)__A, 0);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castsi512_si256 (__m512i __A)
-{
- return (__m256i)_mm512_extractf64x4_pd((__m512d)__A, 0);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castpd128_pd512 (__m128d __A)
-{
- return (__m512d) __builtin_ia32_pd512_pd((__m128d)__A);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castps128_ps512 (__m128 __A)
-{
- return (__m512) __builtin_ia32_ps512_ps((__m128)__A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castsi128_si512 (__m128i __A)
-{
- return (__m512i) __builtin_ia32_si512_si((__v4si)__A);
-}
-
-extern __inline __m512d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castpd256_pd512 (__m256d __A)
-{
- return __builtin_ia32_pd512_256pd (__A);
-}
-
-extern __inline __m512
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castps256_ps512 (__m256 __A)
-{
- return __builtin_ia32_ps512_256ps (__A);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_castsi256_si512 (__m256i __A)
-{
- return (__m512i)__builtin_ia32_si512_256si ((__v8si)__A);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpeq_epu32_mask (__m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __A,
- (__v16si) __B, 0,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpeq_epu32_mask (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __A,
- (__v16si) __B, 0, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpeq_epu64_mask (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __A,
- (__v8di) __B, 0, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpeq_epu64_mask (__m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __A,
- (__v8di) __B, 0,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpgt_epu32_mask (__m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __A,
- (__v16si) __B, 6,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpgt_epu32_mask (__mmask16 __U, __m512i __A, __m512i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpd512_mask ((__v16si) __A,
- (__v16si) __B, 6, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_cmpgt_epu64_mask (__mmask8 __U, __m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __A,
- (__v8di) __B, 6, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_cmpgt_epu64_mask (__m512i __A, __m512i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq512_mask ((__v8di) __A,
- (__v8di) __B, 6,
- (__mmask8) -1);
-}
-
-#undef __MM512_REDUCE_OP
-#define __MM512_REDUCE_OP(op) \
- __v8si __T1 = (__v8si) _mm512_extracti64x4_epi64 (__A, 1); \
- __v8si __T2 = (__v8si) _mm512_extracti64x4_epi64 (__A, 0); \
- __m256i __T3 = (__m256i) (__T1 op __T2); \
- __v4si __T4 = (__v4si) _mm256_extracti128_si256 (__T3, 1); \
- __v4si __T5 = (__v4si) _mm256_extracti128_si256 (__T3, 0); \
- __v4si __T6 = __T4 op __T5; \
- __v4si __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); \
- __v4si __T8 = __T6 op __T7; \
- return __T8[0] op __T8[1]
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_add_epi32 (__m512i __A)
-{
- __MM512_REDUCE_OP (+);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_mul_epi32 (__m512i __A)
-{
- __MM512_REDUCE_OP (*);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_and_epi32 (__m512i __A)
-{
- __MM512_REDUCE_OP (&);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_or_epi32 (__m512i __A)
-{
- __MM512_REDUCE_OP (|);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_add_epi32 (__mmask16 __U, __m512i __A)
-{
- __A = _mm512_maskz_mov_epi32 (__U, __A);
- __MM512_REDUCE_OP (+);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_mul_epi32 (__mmask16 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (1), __U, __A);
- __MM512_REDUCE_OP (*);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_and_epi32 (__mmask16 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (~0), __U, __A);
- __MM512_REDUCE_OP (&);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_or_epi32 (__mmask16 __U, __m512i __A)
-{
- __A = _mm512_maskz_mov_epi32 (__U, __A);
- __MM512_REDUCE_OP (|);
-}
-
-#undef __MM512_REDUCE_OP
-#define __MM512_REDUCE_OP(op) \
- __m256i __T1 = (__m256i) _mm512_extracti64x4_epi64 (__A, 1); \
- __m256i __T2 = (__m256i) _mm512_extracti64x4_epi64 (__A, 0); \
- __m256i __T3 = _mm256_##op (__T1, __T2); \
- __m128i __T4 = (__m128i) _mm256_extracti128_si256 (__T3, 1); \
- __m128i __T5 = (__m128i) _mm256_extracti128_si256 (__T3, 0); \
- __m128i __T6 = _mm_##op (__T4, __T5); \
- __m128i __T7 = (__m128i) __builtin_shuffle ((__v4si) __T6, \
- (__v4si) { 2, 3, 0, 1 }); \
- __m128i __T8 = _mm_##op (__T6, __T7); \
- __m128i __T9 = (__m128i) __builtin_shuffle ((__v4si) __T8, \
- (__v4si) { 1, 0, 1, 0 }); \
- __v4si __T10 = (__v4si) _mm_##op (__T8, __T9); \
- return __T10[0]
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_min_epi32 (__m512i __A)
-{
- __MM512_REDUCE_OP (min_epi32);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_max_epi32 (__m512i __A)
-{
- __MM512_REDUCE_OP (max_epi32);
-}
-
-extern __inline unsigned int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_min_epu32 (__m512i __A)
-{
- __MM512_REDUCE_OP (min_epu32);
-}
-
-extern __inline unsigned int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_max_epu32 (__m512i __A)
-{
- __MM512_REDUCE_OP (max_epu32);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_min_epi32 (__mmask16 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (__INT_MAX__), __U, __A);
- __MM512_REDUCE_OP (min_epi32);
-}
-
-extern __inline int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_max_epi32 (__mmask16 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (-__INT_MAX__ - 1), __U, __A);
- __MM512_REDUCE_OP (max_epi32);
-}
-
-extern __inline unsigned int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_min_epu32 (__mmask16 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi32 (_mm512_set1_epi32 (~0), __U, __A);
- __MM512_REDUCE_OP (min_epu32);
-}
-
-extern __inline unsigned int
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_max_epu32 (__mmask16 __U, __m512i __A)
-{
- __A = _mm512_maskz_mov_epi32 (__U, __A);
- __MM512_REDUCE_OP (max_epu32);
-}
-
-#undef __MM512_REDUCE_OP
-#define __MM512_REDUCE_OP(op) \
- __m256 __T1 = (__m256) _mm512_extractf64x4_pd ((__m512d) __A, 1); \
- __m256 __T2 = (__m256) _mm512_extractf64x4_pd ((__m512d) __A, 0); \
- __m256 __T3 = __T1 op __T2; \
- __m128 __T4 = _mm256_extractf128_ps (__T3, 1); \
- __m128 __T5 = _mm256_extractf128_ps (__T3, 0); \
- __m128 __T6 = __T4 op __T5; \
- __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); \
- __m128 __T8 = __T6 op __T7; \
- return __T8[0] op __T8[1]
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_add_ps (__m512 __A)
-{
- __MM512_REDUCE_OP (+);
-}
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_mul_ps (__m512 __A)
-{
- __MM512_REDUCE_OP (*);
-}
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_add_ps (__mmask16 __U, __m512 __A)
-{
- __A = _mm512_maskz_mov_ps (__U, __A);
- __MM512_REDUCE_OP (+);
-}
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_mul_ps (__mmask16 __U, __m512 __A)
-{
- __A = _mm512_mask_mov_ps (_mm512_set1_ps (1.0f), __U, __A);
- __MM512_REDUCE_OP (*);
-}
-
-#undef __MM512_REDUCE_OP
-#define __MM512_REDUCE_OP(op) \
- __m256 __T1 = (__m256) _mm512_extractf64x4_pd ((__m512d) __A, 1); \
- __m256 __T2 = (__m256) _mm512_extractf64x4_pd ((__m512d) __A, 0); \
- __m256 __T3 = _mm256_##op (__T1, __T2); \
- __m128 __T4 = _mm256_extractf128_ps (__T3, 1); \
- __m128 __T5 = _mm256_extractf128_ps (__T3, 0); \
- __m128 __T6 = _mm_##op (__T4, __T5); \
- __m128 __T7 = __builtin_shuffle (__T6, (__v4si) { 2, 3, 0, 1 }); \
- __m128 __T8 = _mm_##op (__T6, __T7); \
- __m128 __T9 = __builtin_shuffle (__T8, (__v4si) { 1, 0, 1, 0 }); \
- __m128 __T10 = _mm_##op (__T8, __T9); \
- return __T10[0]
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_min_ps (__m512 __A)
-{
- __MM512_REDUCE_OP (min_ps);
-}
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_max_ps (__m512 __A)
-{
- __MM512_REDUCE_OP (max_ps);
-}
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_min_ps (__mmask16 __U, __m512 __A)
-{
- __A = _mm512_mask_mov_ps (_mm512_set1_ps (__builtin_inff ()), __U, __A);
- __MM512_REDUCE_OP (min_ps);
-}
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_max_ps (__mmask16 __U, __m512 __A)
-{
- __A = _mm512_mask_mov_ps (_mm512_set1_ps (-__builtin_inff ()), __U, __A);
- __MM512_REDUCE_OP (max_ps);
-}
-
-#undef __MM512_REDUCE_OP
-#define __MM512_REDUCE_OP(op) \
- __v4di __T1 = (__v4di) _mm512_extracti64x4_epi64 (__A, 1); \
- __v4di __T2 = (__v4di) _mm512_extracti64x4_epi64 (__A, 0); \
- __m256i __T3 = (__m256i) (__T1 op __T2); \
- __v2di __T4 = (__v2di) _mm256_extracti128_si256 (__T3, 1); \
- __v2di __T5 = (__v2di) _mm256_extracti128_si256 (__T3, 0); \
- __v2di __T6 = __T4 op __T5; \
- return __T6[0] op __T6[1]
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_add_epi64 (__m512i __A)
-{
- __MM512_REDUCE_OP (+);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_mul_epi64 (__m512i __A)
-{
- __MM512_REDUCE_OP (*);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_and_epi64 (__m512i __A)
-{
- __MM512_REDUCE_OP (&);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_or_epi64 (__m512i __A)
-{
- __MM512_REDUCE_OP (|);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_add_epi64 (__mmask8 __U, __m512i __A)
-{
- __A = _mm512_maskz_mov_epi64 (__U, __A);
- __MM512_REDUCE_OP (+);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_mul_epi64 (__mmask8 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (1LL), __U, __A);
- __MM512_REDUCE_OP (*);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_and_epi64 (__mmask8 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (~0LL), __U, __A);
- __MM512_REDUCE_OP (&);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_or_epi64 (__mmask8 __U, __m512i __A)
-{
- __A = _mm512_maskz_mov_epi64 (__U, __A);
- __MM512_REDUCE_OP (|);
-}
-
-#undef __MM512_REDUCE_OP
-#define __MM512_REDUCE_OP(op) \
- __m512i __T1 = _mm512_shuffle_i64x2 (__A, __A, 0x4e); \
- __m512i __T2 = _mm512_##op (__A, __T1); \
- __m512i __T3 \
- = (__m512i) __builtin_shuffle ((__v8di) __T2, \
- (__v8di) { 2, 3, 0, 1, 6, 7, 4, 5 });\
- __m512i __T4 = _mm512_##op (__T2, __T3); \
- __m512i __T5 \
- = (__m512i) __builtin_shuffle ((__v8di) __T4, \
- (__v8di) { 1, 0, 3, 2, 5, 4, 7, 6 });\
- __v8di __T6 = (__v8di) _mm512_##op (__T4, __T5); \
- return __T6[0]
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_min_epi64 (__m512i __A)
-{
- __MM512_REDUCE_OP (min_epi64);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_max_epi64 (__m512i __A)
-{
- __MM512_REDUCE_OP (max_epi64);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_min_epi64 (__mmask8 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (__LONG_LONG_MAX__),
- __U, __A);
- __MM512_REDUCE_OP (min_epi64);
-}
-
-extern __inline long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_max_epi64 (__mmask8 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (-__LONG_LONG_MAX__ - 1),
- __U, __A);
- __MM512_REDUCE_OP (max_epi64);
-}
-
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_min_epu64 (__m512i __A)
-{
- __MM512_REDUCE_OP (min_epu64);
-}
-
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_max_epu64 (__m512i __A)
-{
- __MM512_REDUCE_OP (max_epu64);
-}
-
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_min_epu64 (__mmask8 __U, __m512i __A)
-{
- __A = _mm512_mask_mov_epi64 (_mm512_set1_epi64 (~0LL), __U, __A);
- __MM512_REDUCE_OP (min_epu64);
-}
-
-extern __inline unsigned long long
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_max_epu64 (__mmask8 __U, __m512i __A)
-{
- __A = _mm512_maskz_mov_epi64 (__U, __A);
- __MM512_REDUCE_OP (max_epu64);
-}
-
-#undef __MM512_REDUCE_OP
-#define __MM512_REDUCE_OP(op) \
- __m256d __T1 = (__m256d) _mm512_extractf64x4_pd (__A, 1); \
- __m256d __T2 = (__m256d) _mm512_extractf64x4_pd (__A, 0); \
- __m256d __T3 = __T1 op __T2; \
- __m128d __T4 = _mm256_extractf128_pd (__T3, 1); \
- __m128d __T5 = _mm256_extractf128_pd (__T3, 0); \
- __m128d __T6 = __T4 op __T5; \
- return __T6[0] op __T6[1]
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_add_pd (__m512d __A)
-{
- __MM512_REDUCE_OP (+);
-}
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_mul_pd (__m512d __A)
-{
- __MM512_REDUCE_OP (*);
-}
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_add_pd (__mmask8 __U, __m512d __A)
-{
- __A = _mm512_maskz_mov_pd (__U, __A);
- __MM512_REDUCE_OP (+);
-}
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_mul_pd (__mmask8 __U, __m512d __A)
-{
- __A = _mm512_mask_mov_pd (_mm512_set1_pd (1.0), __U, __A);
- __MM512_REDUCE_OP (*);
-}
-
-#undef __MM512_REDUCE_OP
-#define __MM512_REDUCE_OP(op) \
- __m256d __T1 = (__m256d) _mm512_extractf64x4_pd (__A, 1); \
- __m256d __T2 = (__m256d) _mm512_extractf64x4_pd (__A, 0); \
- __m256d __T3 = _mm256_##op (__T1, __T2); \
- __m128d __T4 = _mm256_extractf128_pd (__T3, 1); \
- __m128d __T5 = _mm256_extractf128_pd (__T3, 0); \
- __m128d __T6 = _mm_##op (__T4, __T5); \
- __m128d __T7 = (__m128d) __builtin_shuffle (__T6, (__v2di) { 1, 0 }); \
- __m128d __T8 = _mm_##op (__T6, __T7); \
- return __T8[0]
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_min_pd (__m512d __A)
-{
- __MM512_REDUCE_OP (min_pd);
-}
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_max_pd (__m512d __A)
-{
- __MM512_REDUCE_OP (max_pd);
-}
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_min_pd (__mmask8 __U, __m512d __A)
-{
- __A = _mm512_mask_mov_pd (_mm512_set1_pd (__builtin_inf ()), __U, __A);
- __MM512_REDUCE_OP (min_pd);
-}
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_reduce_max_pd (__mmask8 __U, __m512d __A)
-{
- __A = _mm512_mask_mov_pd (_mm512_set1_pd (-__builtin_inf ()), __U, __A);
- __MM512_REDUCE_OP (max_pd);
-}
-
-#undef __MM512_REDUCE_OP
-
-#ifdef __DISABLE_AVX512F__
-#undef __DISABLE_AVX512F__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512F__ */
-
-#endif /* _AVX512FINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512ifmaintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512ifmaintrin.h
deleted file mode 100644
index 56502d29ba..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512ifmaintrin.h
+++ /dev/null
@@ -1,104 +0,0 @@
-/* Copyright (C) 2013-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512IFMAINTRIN_H_INCLUDED
-#define _AVX512IFMAINTRIN_H_INCLUDED
-
-#ifndef __AVX512IFMA__
-#pragma GCC push_options
-//#pragma GCC target("avx512ifma")
-#define __DISABLE_AVX512IFMA__
-#endif /* __AVX512IFMA__ */
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_madd52lo_epu64 (__m512i __X, __m512i __Y, __m512i __Z)
-{
- return (__m512i) __builtin_ia32_vpmadd52luq512_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di) __Z,
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_madd52hi_epu64 (__m512i __X, __m512i __Y, __m512i __Z)
-{
- return (__m512i) __builtin_ia32_vpmadd52huq512_mask ((__v8di) __X,
- (__v8di) __Y,
- (__v8di) __Z,
- (__mmask8) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_madd52lo_epu64 (__m512i __W, __mmask8 __M, __m512i __X,
- __m512i __Y)
-{
- return (__m512i) __builtin_ia32_vpmadd52luq512_mask ((__v8di) __W,
- (__v8di) __X,
- (__v8di) __Y,
- (__mmask8) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_madd52hi_epu64 (__m512i __W, __mmask8 __M, __m512i __X,
- __m512i __Y)
-{
- return (__m512i) __builtin_ia32_vpmadd52huq512_mask ((__v8di) __W,
- (__v8di) __X,
- (__v8di) __Y,
- (__mmask8) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_madd52lo_epu64 (__mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z)
-{
- return (__m512i) __builtin_ia32_vpmadd52luq512_maskz ((__v8di) __X,
- (__v8di) __Y,
- (__v8di) __Z,
- (__mmask8) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_madd52hi_epu64 (__mmask8 __M, __m512i __X, __m512i __Y, __m512i __Z)
-{
- return (__m512i) __builtin_ia32_vpmadd52huq512_maskz ((__v8di) __X,
- (__v8di) __Y,
- (__v8di) __Z,
- (__mmask8) __M);
-}
-
-#ifdef __DISABLE_AVX512IFMA__
-#undef __DISABLE_AVX512IFMA__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512IFMA__ */
-
-#endif /* _AVX512IFMAINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512ifmavlintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512ifmavlintrin.h
deleted file mode 100644
index 2522dd054f..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512ifmavlintrin.h
+++ /dev/null
@@ -1,164 +0,0 @@
-/* Copyright (C) 2013-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512IFMAVLINTRIN_H_INCLUDED
-#define _AVX512IFMAVLINTRIN_H_INCLUDED
-
-#if !defined(__AVX512VL__) || !defined(__AVX512IFMA__)
-#pragma GCC push_options
-//#pragma GCC target("avx512ifma,avx512vl")
-#define __DISABLE_AVX512IFMAVL__
-#endif /* __AVX512IFMAVL__ */
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_madd52lo_epu64 (__m128i __X, __m128i __Y, __m128i __Z)
-{
- return (__m128i) __builtin_ia32_vpmadd52luq128_mask ((__v2di) __X,
- (__v2di) __Y,
- (__v2di) __Z,
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_madd52hi_epu64 (__m128i __X, __m128i __Y, __m128i __Z)
-{
- return (__m128i) __builtin_ia32_vpmadd52huq128_mask ((__v2di) __X,
- (__v2di) __Y,
- (__v2di) __Z,
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_madd52lo_epu64 (__m256i __X, __m256i __Y, __m256i __Z)
-{
- return (__m256i) __builtin_ia32_vpmadd52luq256_mask ((__v4di) __X,
- (__v4di) __Y,
- (__v4di) __Z,
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_madd52hi_epu64 (__m256i __X, __m256i __Y, __m256i __Z)
-{
- return (__m256i) __builtin_ia32_vpmadd52huq256_mask ((__v4di) __X,
- (__v4di) __Y,
- (__v4di) __Z,
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_madd52lo_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_vpmadd52luq128_mask ((__v2di) __W,
- (__v2di) __X,
- (__v2di) __Y,
- (__mmask8) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_madd52hi_epu64 (__m128i __W, __mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_vpmadd52huq128_mask ((__v2di) __W,
- (__v2di) __X,
- (__v2di) __Y,
- (__mmask8) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_madd52lo_epu64 (__m256i __W, __mmask8 __M, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_vpmadd52luq256_mask ((__v4di) __W,
- (__v4di) __X,
- (__v4di) __Y,
- (__mmask8) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_madd52hi_epu64 (__m256i __W, __mmask8 __M, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_vpmadd52huq256_mask ((__v4di) __W,
- (__v4di) __X,
- (__v4di) __Y,
- (__mmask8) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_madd52lo_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z)
-{
- return (__m128i) __builtin_ia32_vpmadd52luq128_maskz ((__v2di) __X,
- (__v2di) __Y,
- (__v2di) __Z,
- (__mmask8) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_madd52hi_epu64 (__mmask8 __M, __m128i __X, __m128i __Y, __m128i __Z)
-{
- return (__m128i) __builtin_ia32_vpmadd52huq128_maskz ((__v2di) __X,
- (__v2di) __Y,
- (__v2di) __Z,
- (__mmask8) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_madd52lo_epu64 (__mmask8 __M, __m256i __X, __m256i __Y, __m256i __Z)
-{
- return (__m256i) __builtin_ia32_vpmadd52luq256_maskz ((__v4di) __X,
- (__v4di) __Y,
- (__v4di) __Z,
- (__mmask8) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_madd52hi_epu64 (__mmask8 __M, __m256i __X, __m256i __Y, __m256i __Z)
-{
- return (__m256i) __builtin_ia32_vpmadd52huq256_maskz ((__v4di) __X,
- (__v4di) __Y,
- (__v4di) __Z,
- (__mmask8) __M);
-}
-
-#ifdef __DISABLE_AVX512IFMAVL__
-#undef __DISABLE_AVX512IFMAVL__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512IFMAVL__ */
-
-#endif /* _AVX512IFMAVLINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512pfintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512pfintrin.h
deleted file mode 100644
index 6e988954de..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512pfintrin.h
+++ /dev/null
@@ -1,264 +0,0 @@
-/* Copyright (C) 2013-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512PFINTRIN_H_INCLUDED
-#define _AVX512PFINTRIN_H_INCLUDED
-
-#ifndef __AVX512PF__
-#pragma GCC push_options
-//#pragma GCC target("avx512pf")
-#define __DISABLE_AVX512PF__
-#endif /* __AVX512PF__ */
-
-/* Internal data types for implementing the intrinsics. */
-typedef long long __v8di __attribute__ ((__vector_size__ (64)));
-typedef int __v16si __attribute__ ((__vector_size__ (64)));
-
-/* The Intel API is flexible enough that we must allow aliasing with other
- vector types, and their scalar components. */
-typedef long long __m512i __attribute__ ((__vector_size__ (64), __may_alias__));
-
-typedef unsigned char __mmask8;
-typedef unsigned short __mmask16;
-
-#ifdef __OPTIMIZE__
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_prefetch_i32gather_pd (__m256i __index, void const *__addr,
- int __scale, int __hint)
-{
- __builtin_ia32_gatherpfdpd ((__mmask8) 0xFF, (__v8si) __index, __addr,
- __scale, __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_prefetch_i32gather_ps (__m512i __index, void const *__addr,
- int __scale, int __hint)
-{
- __builtin_ia32_gatherpfdps ((__mmask16) 0xFFFF, (__v16si) __index, __addr,
- __scale, __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_prefetch_i32gather_pd (__m256i __index, __mmask8 __mask,
- void const *__addr, int __scale, int __hint)
-{
- __builtin_ia32_gatherpfdpd (__mask, (__v8si) __index, __addr, __scale,
- __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_prefetch_i32gather_ps (__m512i __index, __mmask16 __mask,
- void const *__addr, int __scale, int __hint)
-{
- __builtin_ia32_gatherpfdps (__mask, (__v16si) __index, __addr, __scale,
- __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_prefetch_i64gather_pd (__m512i __index, void const *__addr,
- int __scale, int __hint)
-{
- __builtin_ia32_gatherpfqpd ((__mmask8) 0xFF, (__v8di) __index, __addr,
- __scale, __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_prefetch_i64gather_ps (__m512i __index, void const *__addr,
- int __scale, int __hint)
-{
- __builtin_ia32_gatherpfqps ((__mmask8) 0xFF, (__v8di) __index, __addr,
- __scale, __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_prefetch_i64gather_pd (__m512i __index, __mmask8 __mask,
- void const *__addr, int __scale, int __hint)
-{
- __builtin_ia32_gatherpfqpd (__mask, (__v8di) __index, __addr, __scale,
- __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_prefetch_i64gather_ps (__m512i __index, __mmask8 __mask,
- void const *__addr, int __scale, int __hint)
-{
- __builtin_ia32_gatherpfqps (__mask, (__v8di) __index, __addr, __scale,
- __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_prefetch_i32scatter_pd (void *__addr, __m256i __index, int __scale,
- int __hint)
-{
- __builtin_ia32_scatterpfdpd ((__mmask8) 0xFF, (__v8si) __index, __addr,
- __scale, __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_prefetch_i32scatter_ps (void *__addr, __m512i __index, int __scale,
- int __hint)
-{
- __builtin_ia32_scatterpfdps ((__mmask16) 0xFFFF, (__v16si) __index, __addr,
- __scale, __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_prefetch_i32scatter_pd (void *__addr, __mmask8 __mask,
- __m256i __index, int __scale, int __hint)
-{
- __builtin_ia32_scatterpfdpd (__mask, (__v8si) __index, __addr, __scale,
- __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_prefetch_i32scatter_ps (void *__addr, __mmask16 __mask,
- __m512i __index, int __scale, int __hint)
-{
- __builtin_ia32_scatterpfdps (__mask, (__v16si) __index, __addr, __scale,
- __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_prefetch_i64scatter_pd (void *__addr, __m512i __index, int __scale,
- int __hint)
-{
- __builtin_ia32_scatterpfqpd ((__mmask8) 0xFF, (__v8di) __index,__addr,
- __scale, __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_prefetch_i64scatter_ps (void *__addr, __m512i __index, int __scale,
- int __hint)
-{
- __builtin_ia32_scatterpfqps ((__mmask8) 0xFF, (__v8di) __index, __addr,
- __scale, __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_prefetch_i64scatter_pd (void *__addr, __mmask16 __mask,
- __m512i __index, int __scale, int __hint)
-{
- __builtin_ia32_scatterpfqpd (__mask, (__v8di) __index, __addr, __scale,
- __hint);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_prefetch_i64scatter_ps (void *__addr, __mmask16 __mask,
- __m512i __index, int __scale, int __hint)
-{
- __builtin_ia32_scatterpfqps (__mask, (__v8di) __index, __addr, __scale,
- __hint);
-}
-
-#else
-#define _mm512_prefetch_i32gather_pd(INDEX, ADDR, SCALE, HINT) \
- __builtin_ia32_gatherpfdpd ((__mmask8)0xFF, (__v8si)(__m256i)INDEX, \
- (void const *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_prefetch_i32gather_ps(INDEX, ADDR, SCALE, HINT) \
- __builtin_ia32_gatherpfdps ((__mmask16)0xFFFF, (__v16si)(__m512i)INDEX, \
- (void const *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_mask_prefetch_i32gather_pd(INDEX, MASK, ADDR, SCALE, HINT) \
- __builtin_ia32_gatherpfdpd ((__mmask8)MASK, (__v8si)(__m256i)INDEX, \
- (void const *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_mask_prefetch_i32gather_ps(INDEX, MASK, ADDR, SCALE, HINT) \
- __builtin_ia32_gatherpfdps ((__mmask16)MASK, (__v16si)(__m512i)INDEX, \
- (void const *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_prefetch_i64gather_pd(INDEX, ADDR, SCALE, HINT) \
- __builtin_ia32_gatherpfqpd ((__mmask8)0xFF, (__v8di)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_prefetch_i64gather_ps(INDEX, ADDR, SCALE, HINT) \
- __builtin_ia32_gatherpfqps ((__mmask8)0xFF, (__v8di)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_mask_prefetch_i64gather_pd(INDEX, MASK, ADDR, SCALE, HINT) \
- __builtin_ia32_gatherpfqpd ((__mmask8)MASK, (__v8di)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_mask_prefetch_i64gather_ps(INDEX, MASK, ADDR, SCALE, HINT) \
- __builtin_ia32_gatherpfqps ((__mmask8)MASK, (__v8di)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_prefetch_i32scatter_pd(ADDR, INDEX, SCALE, HINT) \
- __builtin_ia32_scatterpfdpd ((__mmask8)0xFF, (__v8si)(__m256i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_prefetch_i32scatter_ps(ADDR, INDEX, SCALE, HINT) \
- __builtin_ia32_scatterpfdps ((__mmask16)0xFFFF, (__v16si)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_mask_prefetch_i32scatter_pd(ADDR, MASK, INDEX, SCALE, HINT) \
- __builtin_ia32_scatterpfdpd ((__mmask8)MASK, (__v8si)(__m256i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_mask_prefetch_i32scatter_ps(ADDR, MASK, INDEX, SCALE, HINT) \
- __builtin_ia32_scatterpfdps ((__mmask16)MASK, (__v16si)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_prefetch_i64scatter_pd(ADDR, INDEX, SCALE, HINT) \
- __builtin_ia32_scatterpfqpd ((__mmask8)0xFF, (__v8di)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_prefetch_i64scatter_ps(ADDR, INDEX, SCALE, HINT) \
- __builtin_ia32_scatterpfqps ((__mmask8)0xFF, (__v8di)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_mask_prefetch_i64scatter_pd(ADDR, MASK, INDEX, SCALE, HINT) \
- __builtin_ia32_scatterpfqpd ((__mmask8)MASK, (__v8di)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-
-#define _mm512_mask_prefetch_i64scatter_ps(ADDR, MASK, INDEX, SCALE, HINT) \
- __builtin_ia32_scatterpfqps ((__mmask8)MASK, (__v8di)(__m512i)INDEX, \
- (void *)ADDR, (int)SCALE, (int)HINT)
-#endif
-
-#ifdef __DISABLE_AVX512PF__
-#undef __DISABLE_AVX512PF__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512PF__ */
-
-#endif /* _AVX512PFINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vbmiintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vbmiintrin.h
deleted file mode 100644
index bb6d383a7c..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vbmiintrin.h
+++ /dev/null
@@ -1,158 +0,0 @@
-/* Copyright (C) 2013-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512VBMIINTRIN_H_INCLUDED
-#define _AVX512VBMIINTRIN_H_INCLUDED
-
-#ifndef __AVX512VBMI__
-#pragma GCC push_options
-//#pragma GCC target("avx512vbmi")
-#define __DISABLE_AVX512VBMI__
-#endif /* __AVX512VBMI__ */
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_multishift_epi64_epi8 (__m512i __W, __mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_vpmultishiftqb512_mask ((__v64qi) __X,
- (__v64qi) __Y,
- (__v64qi) __W,
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_multishift_epi64_epi8 (__mmask64 __M, __m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_vpmultishiftqb512_mask ((__v64qi) __X,
- (__v64qi) __Y,
- (__v64qi)
- _mm512_setzero_si512 (),
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_multishift_epi64_epi8 (__m512i __X, __m512i __Y)
-{
- return (__m512i) __builtin_ia32_vpmultishiftqb512_mask ((__v64qi) __X,
- (__v64qi) __Y,
- (__v64qi)
- _mm512_undefined_epi32 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutexvar_epi8 (__m512i __A, __m512i __B)
-{
- return (__m512i) __builtin_ia32_permvarqi512_mask ((__v64qi) __B,
- (__v64qi) __A,
- (__v64qi)
- _mm512_undefined_epi32 (),
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutexvar_epi8 (__mmask64 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_permvarqi512_mask ((__v64qi) __B,
- (__v64qi) __A,
- (__v64qi)
- _mm512_setzero_si512(),
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutexvar_epi8 (__m512i __W, __mmask64 __M, __m512i __A,
- __m512i __B)
-{
- return (__m512i) __builtin_ia32_permvarqi512_mask ((__v64qi) __B,
- (__v64qi) __A,
- (__v64qi) __W,
- (__mmask64) __M);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_permutex2var_epi8 (__m512i __A, __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2varqi512_mask ((__v64qi) __I
- /* idx */ ,
- (__v64qi) __A,
- (__v64qi) __B,
- (__mmask64) -1);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_permutex2var_epi8 (__m512i __A, __mmask64 __U,
- __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2varqi512_mask ((__v64qi) __I
- /* idx */ ,
- (__v64qi) __A,
- (__v64qi) __B,
- (__mmask64)
- __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask2_permutex2var_epi8 (__m512i __A, __m512i __I,
- __mmask64 __U, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermi2varqi512_mask ((__v64qi) __A,
- (__v64qi) __I
- /* idx */ ,
- (__v64qi) __B,
- (__mmask64)
- __U);
-}
-
-extern __inline __m512i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_permutex2var_epi8 (__mmask64 __U, __m512i __A,
- __m512i __I, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpermt2varqi512_maskz ((__v64qi) __I
- /* idx */ ,
- (__v64qi) __A,
- (__v64qi) __B,
- (__mmask64)
- __U);
-}
-
-#ifdef __DISABLE_AVX512VBMI__
-#undef __DISABLE_AVX512VBMI__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512VBMI__ */
-
-#endif /* _AVX512VBMIINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vbmivlintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vbmivlintrin.h
deleted file mode 100644
index 58f0cb26f2..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vbmivlintrin.h
+++ /dev/null
@@ -1,273 +0,0 @@
-/* Copyright (C) 2013-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512VBMIVLINTRIN_H_INCLUDED
-#define _AVX512VBMIVLINTRIN_H_INCLUDED
-
-#if !defined(__AVX512VL__) || !defined(__AVX512VBMI__)
-#pragma GCC push_options
-//#pragma GCC target("avx512vbmi,avx512vl")
-#define __DISABLE_AVX512VBMIVL__
-#endif /* __AVX512VBMIVL__ */
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_multishift_epi64_epi8 (__m256i __W, __mmask32 __M, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_vpmultishiftqb256_mask ((__v32qi) __X,
- (__v32qi) __Y,
- (__v32qi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_multishift_epi64_epi8 (__mmask32 __M, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_vpmultishiftqb256_mask ((__v32qi) __X,
- (__v32qi) __Y,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_multishift_epi64_epi8 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_vpmultishiftqb256_mask ((__v32qi) __X,
- (__v32qi) __Y,
- (__v32qi)
- _mm256_undefined_si256 (),
- (__mmask32) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_multishift_epi64_epi8 (__m128i __W, __mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_vpmultishiftqb128_mask ((__v16qi) __X,
- (__v16qi) __Y,
- (__v16qi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_multishift_epi64_epi8 (__mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_vpmultishiftqb128_mask ((__v16qi) __X,
- (__v16qi) __Y,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_multishift_epi64_epi8 (__m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_vpmultishiftqb128_mask ((__v16qi) __X,
- (__v16qi) __Y,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask16) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutexvar_epi8 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_permvarqi256_mask ((__v32qi) __B,
- (__v32qi) __A,
- (__v32qi)
- _mm256_undefined_si256 (),
- (__mmask32) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutexvar_epi8 (__mmask32 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_permvarqi256_mask ((__v32qi) __B,
- (__v32qi) __A,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutexvar_epi8 (__m256i __W, __mmask32 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_permvarqi256_mask ((__v32qi) __B,
- (__v32qi) __A,
- (__v32qi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutexvar_epi8 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_permvarqi128_mask ((__v16qi) __B,
- (__v16qi) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask16) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutexvar_epi8 (__mmask16 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_permvarqi128_mask ((__v16qi) __B,
- (__v16qi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutexvar_epi8 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_permvarqi128_mask ((__v16qi) __B,
- (__v16qi) __A,
- (__v16qi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutex2var_epi8 (__m256i __A, __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2varqi256_mask ((__v32qi) __I
- /* idx */ ,
- (__v32qi) __A,
- (__v32qi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutex2var_epi8 (__m256i __A, __mmask32 __U,
- __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2varqi256_mask ((__v32qi) __I
- /* idx */ ,
- (__v32qi) __A,
- (__v32qi) __B,
- (__mmask32)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask2_permutex2var_epi8 (__m256i __A, __m256i __I,
- __mmask32 __U, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermi2varqi256_mask ((__v32qi) __A,
- (__v32qi) __I
- /* idx */ ,
- (__v32qi) __B,
- (__mmask32)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutex2var_epi8 (__mmask32 __U, __m256i __A,
- __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2varqi256_maskz ((__v32qi) __I
- /* idx */ ,
- (__v32qi) __A,
- (__v32qi) __B,
- (__mmask32)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutex2var_epi8 (__m128i __A, __m128i __I, __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2varqi128_mask ((__v16qi) __I
- /* idx */ ,
- (__v16qi) __A,
- (__v16qi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutex2var_epi8 (__m128i __A, __mmask16 __U, __m128i __I,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2varqi128_mask ((__v16qi) __I
- /* idx */ ,
- (__v16qi) __A,
- (__v16qi) __B,
- (__mmask16)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask2_permutex2var_epi8 (__m128i __A, __m128i __I, __mmask16 __U,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermi2varqi128_mask ((__v16qi) __A,
- (__v16qi) __I
- /* idx */ ,
- (__v16qi) __B,
- (__mmask16)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutex2var_epi8 (__mmask16 __U, __m128i __A, __m128i __I,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2varqi128_maskz ((__v16qi) __I
- /* idx */ ,
- (__v16qi) __A,
- (__v16qi) __B,
- (__mmask16)
- __U);
-}
-
-#ifdef __DISABLE_AVX512VBMIVL__
-#undef __DISABLE_AVX512VBMIVL__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512VBMIVL__ */
-
-#endif /* _AVX512VBMIVLINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vlbwintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vlbwintrin.h
deleted file mode 100644
index 6836814ff3..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vlbwintrin.h
+++ /dev/null
@@ -1,4651 +0,0 @@
-/* Copyright (C) 2014-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512VLBWINTRIN_H_INCLUDED
-#define _AVX512VLBWINTRIN_H_INCLUDED
-
-#if !defined(__AVX512VL__) || !defined(__AVX512BW__)
-#pragma GCC push_options
-//#pragma GCC target("avx512vl,avx512bw")
-#define __DISABLE_AVX512VLBW__
-#endif /* __AVX512VLBW__ */
-
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mov_epi8 (__m256i __W, __mmask32 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_movdquqi256_mask ((__v32qi) __A,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mov_epi8 (__mmask32 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_movdquqi256_mask ((__v32qi) __A,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mov_epi8 (__m128i __W, __mmask16 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_movdquqi128_mask ((__v16qi) __A,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mov_epi8 (__mmask16 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_movdquqi128_mask ((__v16qi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_storeu_epi8 (void *__P, __mmask32 __U, __m256i __A)
-{
- __builtin_ia32_storedquqi256_mask ((char *) __P,
- (__v32qi) __A,
- (__mmask32) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_storeu_epi8 (void *__P, __mmask16 __U, __m128i __A)
-{
- __builtin_ia32_storedquqi128_mask ((char *) __P,
- (__v16qi) __A,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_loadu_epi16 (__m256i __W, __mmask16 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_loaddquhi256_mask ((const short *) __P,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_loadu_epi16 (__mmask16 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_loaddquhi256_mask ((const short *) __P,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_loadu_epi16 (__m128i __W, __mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_loaddquhi128_mask ((const short *) __P,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_loadu_epi16 (__mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_loaddquhi128_mask ((const short *) __P,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mov_epi16 (__m256i __W, __mmask16 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_movdquhi256_mask ((__v16hi) __A,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mov_epi16 (__mmask16 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_movdquhi256_mask ((__v16hi) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mov_epi16 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_movdquhi128_mask ((__v8hi) __A,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mov_epi16 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_movdquhi128_mask ((__v8hi) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_loadu_epi8 (__m256i __W, __mmask32 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_loaddquqi256_mask ((const char *) __P,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_loadu_epi8 (__mmask32 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_loaddquqi256_mask ((const char *) __P,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_loadu_epi8 (__m128i __W, __mmask16 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_loaddquqi128_mask ((const char *) __P,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_loadu_epi8 (__mmask16 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_loaddquqi128_mask ((const char *) __P,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi16_epi8 (__m256i __A)
-{
-
- return (__m128i) __builtin_ia32_pmovwb256_mask ((__v16hi) __A,
- (__v16qi)_mm_undefined_si128(),
- (__mmask16) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovwb256_mask ((__v16hi) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi16_epi8 (__mmask16 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovwb256_mask ((__v16hi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtsepi16_epi8 (__m128i __A)
-{
-
- return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A,
- (__v16qi)_mm_undefined_si128(),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtsepi16_epi8 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtsepi16_epi8 (__m256i __A)
-{
-
- return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A,
- (__v16qi)_mm_undefined_si128(),
- (__mmask16) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtsepi16_epi8 (__mmask16 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtusepi16_epi8 (__m128i __A)
-{
-
- return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A,
- (__v16qi)_mm_undefined_si128(),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtusepi16_epi8 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtusepi16_epi8 (__m256i __A)
-{
-
- return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A,
- (__v16qi)_mm_undefined_si128(),
- (__mmask16) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtusepi16_epi8 (__mmask16 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcastb_epi8 (__m256i __O, __mmask32 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastb256_mask ((__v16qi) __A,
- (__v32qi) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcastb_epi8 (__mmask32 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastb256_mask ((__v16qi) __A,
- (__v32qi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_set1_epi8 (__m256i __O, __mmask32 __M, char __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastb256_gpr_mask (__A,
- (__v32qi) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_set1_epi8 (__mmask32 __M, char __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastb256_gpr_mask (__A,
- (__v32qi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_broadcastb_epi8 (__m128i __O, __mmask16 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastb128_mask ((__v16qi) __A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_broadcastb_epi8 (__mmask16 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastb128_mask ((__v16qi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_set1_epi8 (__m128i __O, __mmask16 __M, char __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastb128_gpr_mask (__A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_set1_epi8 (__mmask16 __M, char __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastb128_gpr_mask (__A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcastw_epi16 (__m256i __O, __mmask16 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastw256_mask ((__v8hi) __A,
- (__v16hi) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcastw_epi16 (__mmask16 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastw256_mask ((__v8hi) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_set1_epi16 (__m256i __O, __mmask16 __M, short __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastw256_gpr_mask (__A,
- (__v16hi) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_set1_epi16 (__mmask16 __M, short __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastw256_gpr_mask (__A,
- (__v16hi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_broadcastw_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastw128_mask ((__v8hi) __A,
- (__v8hi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_broadcastw_epi16 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastw128_mask ((__v8hi) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_set1_epi16 (__m128i __O, __mmask8 __M, short __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastw128_gpr_mask (__A,
- (__v8hi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_set1_epi16 (__mmask8 __M, short __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastw128_gpr_mask (__A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutexvar_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_permvarhi256_mask ((__v16hi) __B,
- (__v16hi) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutexvar_epi16 (__mmask16 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_permvarhi256_mask ((__v16hi) __B,
- (__v16hi) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutexvar_epi16 (__m256i __W, __mmask16 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_permvarhi256_mask ((__v16hi) __B,
- (__v16hi) __A,
- (__v16hi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutexvar_epi16 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_permvarhi128_mask ((__v8hi) __B,
- (__v8hi) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutexvar_epi16 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_permvarhi128_mask ((__v8hi) __B,
- (__v8hi) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutexvar_epi16 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_permvarhi128_mask ((__v8hi) __B,
- (__v8hi) __A,
- (__v8hi) __W,
- (__mmask8) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutex2var_epi16 (__m256i __A, __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2varhi256_mask ((__v16hi) __I
- /* idx */ ,
- (__v16hi) __A,
- (__v16hi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutex2var_epi16 (__m256i __A, __mmask16 __U,
- __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2varhi256_mask ((__v16hi) __I
- /* idx */ ,
- (__v16hi) __A,
- (__v16hi) __B,
- (__mmask16)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask2_permutex2var_epi16 (__m256i __A, __m256i __I,
- __mmask16 __U, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermi2varhi256_mask ((__v16hi) __A,
- (__v16hi) __I
- /* idx */ ,
- (__v16hi) __B,
- (__mmask16)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutex2var_epi16 (__mmask16 __U, __m256i __A,
- __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2varhi256_maskz ((__v16hi) __I
- /* idx */ ,
- (__v16hi) __A,
- (__v16hi) __B,
- (__mmask16)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutex2var_epi16 (__m128i __A, __m128i __I, __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2varhi128_mask ((__v8hi) __I
- /* idx */ ,
- (__v8hi) __A,
- (__v8hi) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutex2var_epi16 (__m128i __A, __mmask8 __U, __m128i __I,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2varhi128_mask ((__v8hi) __I
- /* idx */ ,
- (__v8hi) __A,
- (__v8hi) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask2_permutex2var_epi16 (__m128i __A, __m128i __I, __mmask8 __U,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermi2varhi128_mask ((__v8hi) __A,
- (__v8hi) __I
- /* idx */ ,
- (__v8hi) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutex2var_epi16 (__mmask8 __U, __m128i __A, __m128i __I,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2varhi128_maskz ((__v8hi) __I
- /* idx */ ,
- (__v8hi) __A,
- (__v8hi) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_maddubs_epi16 (__m256i __W, __mmask16 __U, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmaddubsw256_mask ((__v32qi) __X,
- (__v32qi) __Y,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_maddubs_epi16 (__mmask16 __U, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmaddubsw256_mask ((__v32qi) __X,
- (__v32qi) __Y,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_maddubs_epi16 (__m128i __W, __mmask8 __U, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_pmaddubsw128_mask ((__v16qi) __X,
- (__v16qi) __Y,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_maddubs_epi16 (__mmask8 __U, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_pmaddubsw128_mask ((__v16qi) __X,
- (__v16qi) __Y,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_madd_epi16 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaddwd256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_madd_epi16 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaddwd256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_madd_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaddwd128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_madd_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaddwd128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_movepi8_mask (__m128i __A)
-{
- return (__mmask16) __builtin_ia32_cvtb2mask128 ((__v16qi) __A);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movepi8_mask (__m256i __A)
-{
- return (__mmask32) __builtin_ia32_cvtb2mask256 ((__v32qi) __A);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_movepi16_mask (__m128i __A)
-{
- return (__mmask8) __builtin_ia32_cvtw2mask128 ((__v8hi) __A);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movepi16_mask (__m256i __A)
-{
- return (__mmask16) __builtin_ia32_cvtw2mask256 ((__v16hi) __A);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_movm_epi8 (__mmask16 __A)
-{
- return (__m128i) __builtin_ia32_cvtmask2b128 (__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movm_epi8 (__mmask32 __A)
-{
- return (__m256i) __builtin_ia32_cvtmask2b256 (__A);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_movm_epi16 (__mmask8 __A)
-{
- return (__m128i) __builtin_ia32_cvtmask2w128 (__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movm_epi16 (__mmask16 __A)
-{
- return (__m256i) __builtin_ia32_cvtmask2w256 (__A);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_test_epi8_mask (__m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_ptestmb128 ((__v16qi) __A,
- (__v16qi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_test_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_ptestmb128 ((__v16qi) __A,
- (__v16qi) __B, __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_test_epi8_mask (__m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_ptestmb256 ((__v32qi) __A,
- (__v32qi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_test_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_ptestmb256 ((__v32qi) __A,
- (__v32qi) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_test_epi16_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmw128 ((__v8hi) __A,
- (__v8hi) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_test_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmw128 ((__v8hi) __A,
- (__v8hi) __B, __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_test_epi16_mask (__m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_ptestmw256 ((__v16hi) __A,
- (__v16hi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_test_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_ptestmw256 ((__v16hi) __A,
- (__v16hi) __B, __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_epu16 (__mmask16 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminuw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_epu16 (__m256i __W, __mmask16 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminuw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_epu16 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminuw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_epu16 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminuw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_epi16 (__mmask16 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminsw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_epi16 (__m256i __W, __mmask16 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminsw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_epu8 (__mmask32 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxub256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_epu8 (__m256i __W, __mmask32 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxub256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_epu8 (__mmask16 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxub128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_epu8 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxub128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_epi8 (__mmask32 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxsb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_epi8 (__m256i __W, __mmask32 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxsb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_epi8 (__mmask16 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxsb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_epi8 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxsb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_epu8 (__mmask32 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminub256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_epu8 (__m256i __W, __mmask32 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminub256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_epu8 (__mmask16 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminub128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_epu8 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminub128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_epi8 (__mmask32 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminsb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_epi8 (__m256i __W, __mmask32 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminsb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_epi8 (__mmask16 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminsb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_epi8 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminsb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_epi16 (__mmask16 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxsw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_epi16 (__m256i __W, __mmask16 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxsw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_epi16 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxsw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_epi16 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxsw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_epu16 (__mmask16 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxuw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_epu16 (__m256i __W, __mmask16 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxuw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_epu16 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxuw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_epu16 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxuw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_epi16 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminsw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_epi16 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminsw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __M);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_alignr_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B, const int __N)
-{
- return (__m256i) __builtin_ia32_palignr256_mask ((__v4di) __A,
- (__v4di) __B,
- __N * 8,
- (__v4di) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_alignr_epi8 (__mmask32 __U, __m256i __A, __m256i __B,
- const int __N)
-{
- return (__m256i) __builtin_ia32_palignr256_mask ((__v4di) __A,
- (__v4di) __B,
- __N * 8,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_alignr_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B, const int __N)
-{
- return (__m128i) __builtin_ia32_palignr128_mask ((__v2di) __A,
- (__v2di) __B,
- __N * 8,
- (__v2di) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_alignr_epi8 (__mmask16 __U, __m128i __A, __m128i __B,
- const int __N)
-{
- return (__m128i) __builtin_ia32_palignr128_mask ((__v2di) __A,
- (__v2di) __B,
- __N * 8,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_dbsad_epu8 (__m256i __A, __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_dbpsadbw256_mask ((__v32qi) __A,
- (__v32qi) __B,
- __imm,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_dbsad_epu8 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_dbpsadbw256_mask ((__v32qi) __A,
- (__v32qi) __B,
- __imm,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_dbsad_epu8 (__mmask16 __U, __m256i __A, __m256i __B,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_dbpsadbw256_mask ((__v32qi) __A,
- (__v32qi) __B,
- __imm,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_dbsad_epu8 (__m128i __A, __m128i __B, const int __imm)
-{
- return (__m128i) __builtin_ia32_dbpsadbw128_mask ((__v16qi) __A,
- (__v16qi) __B,
- __imm,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_dbsad_epu8 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B, const int __imm)
-{
- return (__m128i) __builtin_ia32_dbpsadbw128_mask ((__v16qi) __A,
- (__v16qi) __B,
- __imm,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_dbsad_epu8 (__mmask8 __U, __m128i __A, __m128i __B,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_dbpsadbw128_mask ((__v16qi) __A,
- (__v16qi) __B,
- __imm,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_blend_epi16 (__mmask8 __U, __m128i __A, __m128i __W)
-{
- return (__m128i) __builtin_ia32_blendmw_128_mask ((__v8hi) __A,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_blend_epi8 (__mmask16 __U, __m128i __A, __m128i __W)
-{
- return (__m128i) __builtin_ia32_blendmb_128_mask ((__v16qi) __A,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_blend_epi16 (__mmask16 __U, __m256i __A, __m256i __W)
-{
- return (__m256i) __builtin_ia32_blendmw_256_mask ((__v16hi) __A,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_blend_epi8 (__mmask32 __U, __m256i __A, __m256i __W)
-{
- return (__m256i) __builtin_ia32_blendmb_256_mask ((__v32qi) __A,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epi16_mask (__mmask8 __U, __m128i __X, __m128i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_epi16_mask (__m128i __X, __m128i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epi16_mask (__mmask16 __U, __m256i __X, __m256i __Y,
- const int __P)
-{
- return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, __P,
- (__mmask16) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_epi16_mask (__m256i __X, __m256i __Y, const int __P)
-{
- return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, __P,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epi8_mask (__mmask8 __U, __m128i __X, __m128i __Y,
- const int __P)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, __P,
- (__mmask16) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_epi8_mask (__m128i __X, __m128i __Y, const int __P)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, __P,
- (__mmask16) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epi8_mask (__mmask16 __U, __m256i __X, __m256i __Y,
- const int __P)
-{
- return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, __P,
- (__mmask32) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_epi8_mask (__m256i __X, __m256i __Y, const int __P)
-{
- return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, __P,
- (__mmask32) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epu16_mask (__mmask8 __U, __m128i __X, __m128i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_epu16_mask (__m128i __X, __m128i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epu16_mask (__mmask16 __U, __m256i __X, __m256i __Y,
- const int __P)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, __P,
- (__mmask16) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_epu16_mask (__m256i __X, __m256i __Y, const int __P)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, __P,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epu8_mask (__mmask8 __U, __m128i __X, __m128i __Y,
- const int __P)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, __P,
- (__mmask16) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_epu8_mask (__m128i __X, __m128i __Y, const int __P)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, __P,
- (__mmask16) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epu8_mask (__mmask16 __U, __m256i __X, __m256i __Y,
- const int __P)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, __P,
- (__mmask32) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_epu8_mask (__m256i __X, __m256i __Y, const int __P)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, __P,
- (__mmask32) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srli_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_psrlwi256_mask ((__v16hi) __A, __imm,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srli_epi16 (__mmask16 __U, __m256i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_psrlwi256_mask ((__v16hi) __A, __imm,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srli_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_psrlwi128_mask ((__v8hi) __A, __imm,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srli_epi16 (__mmask8 __U, __m128i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_psrlwi128_mask ((__v8hi) __A, __imm,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shufflehi_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pshufhw256_mask ((__v16hi) __A,
- __imm,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shufflehi_epi16 (__mmask16 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pshufhw256_mask ((__v16hi) __A,
- __imm,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_shufflehi_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_pshufhw128_mask ((__v8hi) __A, __imm,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_shufflehi_epi16 (__mmask8 __U, __m128i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_pshufhw128_mask ((__v8hi) __A, __imm,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shufflelo_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pshuflw256_mask ((__v16hi) __A,
- __imm,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shufflelo_epi16 (__mmask16 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pshuflw256_mask ((__v16hi) __A,
- __imm,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_shufflelo_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_pshuflw128_mask ((__v8hi) __A, __imm,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_shufflelo_epi16 (__mmask8 __U, __m128i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_pshuflw128_mask ((__v8hi) __A, __imm,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srai_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_psrawi256_mask ((__v16hi) __A, __imm,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srai_epi16 (__mmask16 __U, __m256i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_psrawi256_mask ((__v16hi) __A, __imm,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srai_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_psrawi128_mask ((__v8hi) __A, __imm,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srai_epi16 (__mmask8 __U, __m128i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_psrawi128_mask ((__v8hi) __A, __imm,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_slli_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- int __B)
-{
- return (__m256i) __builtin_ia32_psllwi256_mask ((__v16hi) __A, __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_slli_epi16 (__mmask16 __U, __m256i __A, int __B)
-{
- return (__m256i) __builtin_ia32_psllwi256_mask ((__v16hi) __A, __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_slli_epi16 (__m128i __W, __mmask8 __U, __m128i __A, int __B)
-{
- return (__m128i) __builtin_ia32_psllwi128_mask ((__v8hi) __A, __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_slli_epi16 (__mmask8 __U, __m128i __A, int __B)
-{
- return (__m128i) __builtin_ia32_psllwi128_mask ((__v8hi) __A, __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-#else
-#define _mm256_mask_alignr_epi8(W, U, X, Y, N) \
- ((__m256i) __builtin_ia32_palignr256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(N * 8), \
- (__v4di)(__m256i)(X), (__mmask32)(U)))
-
-#define _mm256_mask_srli_epi16(W, U, A, B) \
- ((__m256i) __builtin_ia32_psrlwi256_mask ((__v16hi)(__m256i)(A), \
- (int)(B), (__v16hi)(__m256i)(W), (__mmask16)(U)))
-
-#define _mm256_maskz_srli_epi16(U, A, B) \
- ((__m256i) __builtin_ia32_psrlwi256_mask ((__v16hi)(__m256i)(A), \
- (int)(B), (__v16hi)_mm256_setzero_si256 (), (__mmask16)(U)))
-
-#define _mm_mask_srli_epi16(W, U, A, B) \
- ((__m128i) __builtin_ia32_psrlwi128_mask ((__v8hi)(__m128i)(A), \
- (int)(B), (__v8hi)(__m128i)(W), (__mmask8)(U)))
-
-#define _mm_maskz_srli_epi16(U, A, B) \
- ((__m128i) __builtin_ia32_psrlwi128_mask ((__v8hi)(__m128i)(A), \
- (int)(B), (__v8hi)_mm_setzero_si128(), (__mmask8)(U)))
-
-#define _mm256_mask_srai_epi16(W, U, A, B) \
- ((__m256i) __builtin_ia32_psrawi256_mask ((__v16hi)(__m256i)(A), \
- (int)(B), (__v16hi)(__m256i)(W), (__mmask16)(U)))
-
-#define _mm256_maskz_srai_epi16(U, A, B) \
- ((__m256i) __builtin_ia32_psrawi256_mask ((__v16hi)(__m256i)(A), \
- (int)(B), (__v16hi)_mm256_setzero_si256 (), (__mmask16)(U)))
-
-#define _mm_mask_srai_epi16(W, U, A, B) \
- ((__m128i) __builtin_ia32_psrawi128_mask ((__v8hi)(__m128i)(A), \
- (int)(B), (__v8hi)(__m128i)(W), (__mmask8)(U)))
-
-#define _mm_maskz_srai_epi16(U, A, B) \
- ((__m128i) __builtin_ia32_psrawi128_mask ((__v8hi)(__m128i)(A), \
- (int)(B), (__v8hi)_mm_setzero_si128(), (__mmask8)(U)))
-
-#define _mm256_mask_shufflehi_epi16(W, U, A, B) \
- ((__m256i) __builtin_ia32_pshufhw256_mask ((__v16hi)(__m256i)(A), (int)(B), \
- (__v16hi)(__m256i)(W), \
- (__mmask16)(U)))
-
-#define _mm256_maskz_shufflehi_epi16(U, A, B) \
- ((__m256i) __builtin_ia32_pshufhw256_mask ((__v16hi)(__m256i)(A), (int)(B), \
- (__v16hi)(__m256i)_mm256_setzero_si256 (), \
- (__mmask16)(U)))
-
-#define _mm_mask_shufflehi_epi16(W, U, A, B) \
- ((__m128i) __builtin_ia32_pshufhw128_mask ((__v8hi)(__m128i)(A), (int)(B), \
- (__v8hi)(__m128i)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_shufflehi_epi16(U, A, B) \
- ((__m128i) __builtin_ia32_pshufhw128_mask ((__v8hi)(__m128i)(A), (int)(B), \
- (__v8hi)(__m128i)_mm_setzero_si128 (), \
- (__mmask8)(U)))
-
-#define _mm256_mask_shufflelo_epi16(W, U, A, B) \
- ((__m256i) __builtin_ia32_pshuflw256_mask ((__v16hi)(__m256i)(A), (int)(B), \
- (__v16hi)(__m256i)(W), \
- (__mmask16)(U)))
-
-#define _mm256_maskz_shufflelo_epi16(U, A, B) \
- ((__m256i) __builtin_ia32_pshuflw256_mask ((__v16hi)(__m256i)(A), (int)(B), \
- (__v16hi)(__m256i)_mm256_setzero_si256 (), \
- (__mmask16)(U)))
-
-#define _mm_mask_shufflelo_epi16(W, U, A, B) \
- ((__m128i) __builtin_ia32_pshuflw128_mask ((__v8hi)(__m128i)(A), (int)(B), \
- (__v8hi)(__m128i)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_shufflelo_epi16(U, A, B) \
- ((__m128i) __builtin_ia32_pshuflw128_mask ((__v8hi)(__m128i)(A), (int)(B), \
- (__v8hi)(__m128i)_mm_setzero_si128 (), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_alignr_epi8(U, X, Y, N) \
- ((__m256i) __builtin_ia32_palignr256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(N * 8), \
- (__v4di)(__m256i)_mm256_setzero_si256 (), \
- (__mmask32)(U)))
-
-#define _mm_mask_alignr_epi8(W, U, X, Y, N) \
- ((__m128i) __builtin_ia32_palignr128_mask ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), (int)(N * 8), \
- (__v2di)(__m128i)(X), (__mmask16)(U)))
-
-#define _mm_maskz_alignr_epi8(U, X, Y, N) \
- ((__m128i) __builtin_ia32_palignr128_mask ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), (int)(N * 8), \
- (__v2di)(__m128i)_mm_setzero_si128 (), \
- (__mmask16)(U)))
-
-#define _mm_mask_slli_epi16(W, U, X, C) \
- ((__m128i)__builtin_ia32_psllwi128_mask ((__v8hi)(__m128i)(X), (int)(C),\
- (__v8hi)(__m128i)(W),\
- (__mmask8)(U)))
-
-#define _mm_maskz_slli_epi16(U, X, C) \
- ((__m128i)__builtin_ia32_psllwi128_mask ((__v8hi)(__m128i)(X), (int)(C),\
- (__v8hi)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-
-#define _mm256_dbsad_epu8(X, Y, C) \
- ((__m256i) __builtin_ia32_dbpsadbw256_mask ((__v32qi)(__m256i) (X), \
- (__v32qi)(__m256i) (Y), (int) (C), \
- (__v16hi)(__m256i)_mm256_setzero_si256(),\
- (__mmask16)-1))
-
-#define _mm256_mask_slli_epi16(W, U, X, C) \
- ((__m256i)__builtin_ia32_psllwi256_mask ((__v16hi)(__m256i)(X), (int)(C),\
- (__v16hi)(__m256i)(W),\
- (__mmask16)(U)))
-
-#define _mm256_maskz_slli_epi16(U, X, C) \
- ((__m256i)__builtin_ia32_psllwi256_mask ((__v16hi)(__m256i)(X), (int)(C),\
- (__v16hi)(__m256i)_mm256_setzero_si256 (),\
- (__mmask16)(U)))
-
-#define _mm256_mask_dbsad_epu8(W, U, X, Y, C) \
- ((__m256i) __builtin_ia32_dbpsadbw256_mask ((__v32qi)(__m256i) (X), \
- (__v32qi)(__m256i) (Y), (int) (C), \
- (__v16hi)(__m256i)(W), \
- (__mmask16)(U)))
-
-#define _mm256_maskz_dbsad_epu8(U, X, Y, C) \
- ((__m256i) __builtin_ia32_dbpsadbw256_mask ((__v32qi)(__m256i) (X), \
- (__v32qi)(__m256i) (Y), (int) (C), \
- (__v16hi)(__m256i)_mm256_setzero_si256(),\
- (__mmask16)(U)))
-
-#define _mm_dbsad_epu8(X, Y, C) \
- ((__m128i) __builtin_ia32_dbpsadbw128_mask ((__v16qi)(__m128i) (X), \
- (__v16qi)(__m128i) (Y), (int) (C), \
- (__v8hi)(__m128i)_mm_setzero_si128(), \
- (__mmask8)-1))
-
-#define _mm_mask_dbsad_epu8(W, U, X, Y, C) \
- ((__m128i) __builtin_ia32_dbpsadbw128_mask ((__v16qi)(__m128i) (X), \
- (__v16qi)(__m128i) (Y), (int) (C), \
- (__v8hi)(__m128i)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_dbsad_epu8(U, X, Y, C) \
- ((__m128i) __builtin_ia32_dbpsadbw128_mask ((__v16qi)(__m128i) (X), \
- (__v16qi)(__m128i) (Y), (int) (C), \
- (__v8hi)(__m128i)_mm_setzero_si128(), \
- (__mmask8)(U)))
-
-#define _mm_mask_blend_epi16(__U, __A, __W) \
- ((__m128i) __builtin_ia32_blendmw_128_mask ((__v8hi) (__A), \
- (__v8hi) (__W), \
- (__mmask8) (__U)))
-
-#define _mm_mask_blend_epi8(__U, __A, __W) \
- ((__m128i) __builtin_ia32_blendmb_128_mask ((__v16qi) (__A), \
- (__v16qi) (__W), \
- (__mmask16) (__U)))
-
-#define _mm256_mask_blend_epi16(__U, __A, __W) \
- ((__m256i) __builtin_ia32_blendmw_256_mask ((__v16hi) (__A), \
- (__v16hi) (__W), \
- (__mmask16) (__U)))
-
-#define _mm256_mask_blend_epi8(__U, __A, __W) \
- ((__m256i) __builtin_ia32_blendmb_256_mask ((__v32qi) (__A), \
- (__v32qi) (__W), \
- (__mmask32) (__U)))
-
-#define _mm_cmp_epi16_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi)(__m128i)(X), \
- (__v8hi)(__m128i)(Y), (int)(P),\
- (__mmask8)(-1)))
-
-#define _mm_cmp_epi8_mask(X, Y, P) \
- ((__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi)(__m128i)(X), \
- (__v16qi)(__m128i)(Y), (int)(P),\
- (__mmask16)(-1)))
-
-#define _mm256_cmp_epi16_mask(X, Y, P) \
- ((__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi)(__m256i)(X), \
- (__v16hi)(__m256i)(Y), (int)(P),\
- (__mmask16)(-1)))
-
-#define _mm256_cmp_epi8_mask(X, Y, P) \
- ((__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi)(__m256i)(X), \
- (__v32qi)(__m256i)(Y), (int)(P),\
- (__mmask32)(-1)))
-
-#define _mm_cmp_epu16_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi)(__m128i)(X), \
- (__v8hi)(__m128i)(Y), (int)(P),\
- (__mmask8)(-1)))
-
-#define _mm_cmp_epu8_mask(X, Y, P) \
- ((__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi)(__m128i)(X), \
- (__v16qi)(__m128i)(Y), (int)(P),\
- (__mmask16)(-1)))
-
-#define _mm256_cmp_epu16_mask(X, Y, P) \
- ((__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi)(__m256i)(X), \
- (__v16hi)(__m256i)(Y), (int)(P),\
- (__mmask16)(-1)))
-
-#define _mm256_cmp_epu8_mask(X, Y, P) \
- ((__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi)(__m256i)(X), \
- (__v32qi)(__m256i)(Y), (int)(P),\
- (__mmask32)-1))
-
-#define _mm_mask_cmp_epi16_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi)(__m128i)(X), \
- (__v8hi)(__m128i)(Y), (int)(P),\
- (__mmask16)(M)))
-
-#define _mm_mask_cmp_epi8_mask(M, X, Y, P) \
- ((__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi)(__m128i)(X), \
- (__v16qi)(__m128i)(Y), (int)(P),\
- (__mmask16)(M)))
-
-#define _mm256_mask_cmp_epi16_mask(M, X, Y, P) \
- ((__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi)(__m256i)(X), \
- (__v16hi)(__m256i)(Y), (int)(P),\
- (__mmask16)(M)))
-
-#define _mm256_mask_cmp_epi8_mask(M, X, Y, P) \
- ((__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi)(__m256i)(X), \
- (__v32qi)(__m256i)(Y), (int)(P),\
- (__mmask32)(M)))
-
-#define _mm_mask_cmp_epu16_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi)(__m128i)(X), \
- (__v8hi)(__m128i)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm_mask_cmp_epu8_mask(M, X, Y, P) \
- ((__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi)(__m128i)(X), \
- (__v16qi)(__m128i)(Y), (int)(P),\
- (__mmask16)(M)))
-
-#define _mm256_mask_cmp_epu16_mask(M, X, Y, P) \
- ((__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi)(__m256i)(X), \
- (__v16hi)(__m256i)(Y), (int)(P),\
- (__mmask16)(M)))
-
-#define _mm256_mask_cmp_epu8_mask(M, X, Y, P) \
- ((__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi)(__m256i)(X), \
- (__v32qi)(__m256i)(Y), (int)(P),\
- (__mmask32)M))
-#endif
-
-extern __inline __mmask32
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpneq_epi8_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 4,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmplt_epi8_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 1,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpge_epi8_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 5,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmple_epi8_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 2,
- (__mmask32) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpneq_epi16_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 4,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmplt_epi16_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 1,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpge_epi16_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 5,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmple_epi16_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 2,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpneq_epu8_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 4,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmplt_epu8_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 1,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpge_epu8_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 5,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmple_epu8_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 2,
- (__mmask16) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpneq_epu16_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmplt_epu16_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpge_epu16_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmple_epu16_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpneq_epi8_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 4,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmplt_epi8_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 1,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpge_epi8_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 5,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmple_epi8_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 2,
- (__mmask16) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpneq_epi16_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmplt_epi16_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpge_epi16_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmple_epi16_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mulhrs_epi16 (__m256i __W, __mmask16 __U, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmulhrsw256_mask ((__v16hi) __X,
- (__v16hi) __Y,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mulhrs_epi16 (__mmask16 __U, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmulhrsw256_mask ((__v16hi) __X,
- (__v16hi) __Y,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mulhi_epu16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmulhuw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mulhi_epu16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmulhuw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mulhi_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmulhw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mulhi_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmulhw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mulhi_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmulhw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mulhi_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmulhw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mulhi_epu16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmulhuw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mulhi_epu16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmulhuw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mulhrs_epi16 (__m128i __W, __mmask8 __U, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_pmulhrsw128_mask ((__v8hi) __X,
- (__v8hi) __Y,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mulhrs_epi16 (__mmask8 __U, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_pmulhrsw128_mask ((__v8hi) __X,
- (__v8hi) __Y,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mullo_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmullw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mullo_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmullw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mullo_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmullw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mullo_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmullw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi8_epi16 (__m256i __W, __mmask32 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxbw256_mask ((__v16qi) __A,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi8_epi16 (__mmask16 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxbw256_mask ((__v16qi) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi8_epi16 (__m128i __W, __mmask32 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxbw128_mask ((__v16qi) __A,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi8_epi16 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxbw128_mask ((__v16qi) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu8_epi16 (__m256i __W, __mmask32 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxbw256_mask ((__v16qi) __A,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu8_epi16 (__mmask16 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxbw256_mask ((__v16qi) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu8_epi16 (__m128i __W, __mmask32 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxbw128_mask ((__v16qi) __A,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu8_epi16 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxbw128_mask ((__v16qi) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_avg_epu8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pavgb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_avg_epu8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pavgb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_avg_epu8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pavgb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_avg_epu8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pavgb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_avg_epu16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pavgw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_avg_epu16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pavgw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_avg_epu16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pavgw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_avg_epu16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pavgw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_add_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_add_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_add_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_add_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_adds_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddsb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_adds_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddsb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_adds_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddsw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_adds_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddsw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_adds_epu8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddusb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_adds_epu8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddusb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_adds_epu16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddusw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_adds_epu16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddusw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sub_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sub_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sub_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sub_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_subs_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubsb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_subs_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubsb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_subs_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubsw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_subs_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubsw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_subs_epu8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubusb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_subs_epu8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubusb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_subs_epu16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubusw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_subs_epu16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubusw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_add_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_add_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_add_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_add_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpackhi_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckhbw256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpackhi_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckhbw256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpackhi_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckhbw128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpackhi_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckhbw128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpackhi_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckhwd256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpackhi_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckhwd256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpackhi_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckhwd128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpackhi_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckhwd128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpacklo_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpcklbw256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpacklo_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpcklbw256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpacklo_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpcklbw128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpacklo_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpcklbw128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpacklo_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpcklwd256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpacklo_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpcklwd256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpacklo_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpcklwd128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpacklo_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpcklwd128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpeq_epi8_mask (__m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpeqb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpeq_epu8_mask (__m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __A,
- (__v16qi) __B, 0,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpeq_epu8_mask (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __A,
- (__v16qi) __B, 0,
- __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpeq_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpeqb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epu8_mask (__m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __A,
- (__v32qi) __B, 0,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epi8_mask (__m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_pcmpeqb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpeq_epu8_mask (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __A,
- (__v32qi) __B, 0,
- __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpeq_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_pcmpeqb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpeq_epu16_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __A,
- (__v8hi) __B, 0,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpeq_epi16_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpeq_epu16_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __A,
- (__v8hi) __B, 0, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpeq_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqw128_mask ((__v8hi) __A,
- (__v8hi) __B, __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epu16_mask (__m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __A,
- (__v16hi) __B, 0,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epi16_mask (__m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpeqw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpeq_epu16_mask (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __A,
- (__v16hi) __B, 0,
- __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpeq_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpeqw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpgt_epu8_mask (__m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __A,
- (__v16qi) __B, 6,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpgt_epi8_mask (__m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpgtb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpgt_epu8_mask (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __A,
- (__v16qi) __B, 6,
- __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpgt_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpgtb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epu8_mask (__m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __A,
- (__v32qi) __B, 6,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epi8_mask (__m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_pcmpgtb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpgt_epu8_mask (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __A,
- (__v32qi) __B, 6,
- __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpgt_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_pcmpgtb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpgt_epu16_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __A,
- (__v8hi) __B, 6,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpgt_epi16_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpgt_epu16_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __A,
- (__v8hi) __B, 6, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpgt_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtw128_mask ((__v8hi) __A,
- (__v8hi) __B, __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epu16_mask (__m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __A,
- (__v16hi) __B, 6,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epi16_mask (__m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpgtw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpgt_epu16_mask (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __A,
- (__v16hi) __B, 6,
- __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpgt_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_pcmpgtw256_mask ((__v16hi) __A,
- (__v16hi) __B,
- __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testn_epi8_mask (__m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_ptestnmb128 ((__v16qi) __A,
- (__v16qi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_testn_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__mmask16) __builtin_ia32_ptestnmb128 ((__v16qi) __A,
- (__v16qi) __B, __U);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testn_epi8_mask (__m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_ptestnmb256 ((__v32qi) __A,
- (__v32qi) __B,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_testn_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__mmask32) __builtin_ia32_ptestnmb256 ((__v32qi) __A,
- (__v32qi) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testn_epi16_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmw128 ((__v8hi) __A,
- (__v8hi) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_testn_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmw128 ((__v8hi) __A,
- (__v8hi) __B, __U);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testn_epi16_mask (__m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_ptestnmw256 ((__v16hi) __A,
- (__v16hi) __B,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_testn_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__mmask16) __builtin_ia32_ptestnmw256 ((__v16hi) __A,
- (__v16hi) __B, __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shuffle_epi8 (__m256i __W, __mmask32 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pshufb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shuffle_epi8 (__mmask32 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pshufb256_mask ((__v32qi) __A,
- (__v32qi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_shuffle_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pshufb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_shuffle_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pshufb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_packs_epi16 (__mmask32 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_packsswb256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_packs_epi16 (__m256i __W, __mmask32 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_packsswb256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v32qi) __W,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_packs_epi16 (__mmask16 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_packsswb128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_packs_epi16 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_packsswb128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v16qi) __W,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_packus_epi16 (__mmask32 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_packuswb256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v32qi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_packus_epi16 (__m256i __W, __mmask32 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_packuswb256_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v32qi) __W,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_packus_epi16 (__mmask16 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_packuswb128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_packus_epi16 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_packuswb128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v16qi) __W,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_abs_epi8 (__m256i __W, __mmask32 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_pabsb256_mask ((__v32qi) __A,
- (__v32qi) __W,
- (__mmask32) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_abs_epi8 (__mmask32 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_pabsb256_mask ((__v32qi) __A,
- (__v32qi)
- _mm256_setzero_si256 (),
- (__mmask32) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_abs_epi8 (__m128i __W, __mmask16 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pabsb128_mask ((__v16qi) __A,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_abs_epi8 (__mmask16 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pabsb128_mask ((__v16qi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_abs_epi16 (__m256i __W, __mmask16 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_pabsw256_mask ((__v16hi) __A,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_abs_epi16 (__mmask16 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_pabsw256_mask ((__v16hi) __A,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_abs_epi16 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pabsw128_mask ((__v8hi) __A,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_abs_epi16 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pabsw128_mask ((__v8hi) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __mmask32
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpneq_epu8_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 4,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmplt_epu8_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 1,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpge_epu8_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 5,
- (__mmask32) -1);
-}
-
-extern __inline __mmask32
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmple_epu8_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 2,
- (__mmask32) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpneq_epu16_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 4,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmplt_epu16_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 1,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpge_epu16_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 5,
- (__mmask16) -1);
-}
-
-extern __inline __mmask16
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmple_epu16_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 2,
- (__mmask16) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_storeu_epi16 (void *__P, __mmask16 __U, __m256i __A)
-{
- __builtin_ia32_storedquhi256_mask ((short *) __P,
- (__v16hi) __A,
- (__mmask16) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_storeu_epi16 (void *__P, __mmask8 __U, __m128i __A)
-{
- __builtin_ia32_storedquhi128_mask ((short *) __P,
- (__v8hi) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_adds_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddsw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_subs_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubsb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_subs_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubsb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_subs_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubsw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_subs_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubsw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_subs_epu8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubusb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_subs_epu8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubusb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_subs_epu16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubusw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_subs_epu16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubusw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srl_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m128i __B)
-{
- return (__m256i) __builtin_ia32_psrlw256_mask ((__v16hi) __A,
- (__v8hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srl_epi16 (__mmask16 __U, __m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_psrlw256_mask ((__v16hi) __A,
- (__v8hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srl_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrlw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srl_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrlw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sra_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m128i __B)
-{
- return (__m256i) __builtin_ia32_psraw256_mask ((__v16hi) __A,
- (__v8hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sra_epi16 (__mmask16 __U, __m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_psraw256_mask ((__v16hi) __A,
- (__v8hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sra_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psraw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sra_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psraw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_adds_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddsw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_adds_epu8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddusb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_adds_epu8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddusb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_adds_epu16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddusw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_adds_epu16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddusw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sub_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sub_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sub_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sub_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_adds_epi8 (__m128i __W, __mmask16 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddsb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_adds_epi8 (__mmask16 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddsb128_mask ((__v16qi) __A,
- (__v16qi) __B,
- (__v16qi)
- _mm_setzero_si128 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepi16_epi8 (__m128i __A)
-{
-
- return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A,
- (__v16qi)_mm_undefined_si128(),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi16_epi8 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srav_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psrav16hi_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srav_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psrav16hi_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srav_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psrav16hi_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_srav_epi16 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrav8hi_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srav_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrav8hi_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srav_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrav8hi_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srlv_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psrlv16hi_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srlv_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psrlv16hi_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srlv_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psrlv16hi_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_srlv_epi16 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrlv8hi_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srlv_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrlv8hi_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srlv_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrlv8hi_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sllv_epi16 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psllv16hi_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sllv_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psllv16hi_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sllv_epi16 (__mmask16 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psllv16hi_mask ((__v16hi) __A,
- (__v16hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_sllv_epi16 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psllv8hi_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sllv_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psllv8hi_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sllv_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psllv8hi_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sll_epi16 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psllw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sll_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psllw128_mask ((__v8hi) __A,
- (__v8hi) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sll_epi16 (__m256i __W, __mmask16 __U, __m256i __A,
- __m128i __B)
-{
- return (__m256i) __builtin_ia32_psllw256_mask ((__v16hi) __A,
- (__v8hi) __B,
- (__v16hi) __W,
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sll_epi16 (__mmask16 __U, __m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_psllw256_mask ((__v16hi) __A,
- (__v8hi) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- (__mmask16) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_packus_epi32 (__mmask16 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_packusdw256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_packus_epi32 (__m256i __W, __mmask16 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_packusdw256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v16hi) __W,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_packus_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_packusdw128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_packus_epi32 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_packusdw128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v8hi) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_packs_epi32 (__mmask16 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_packssdw256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v16hi)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_packs_epi32 (__m256i __W, __mmask16 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_packssdw256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v16hi) __W,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_packs_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_packssdw128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_packs_epi32 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_packssdw128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v8hi) __W, __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpneq_epu8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 4,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmplt_epu8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 1,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpge_epu8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 5,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmple_epu8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 2,
- (__mmask16) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpneq_epu16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmplt_epu16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpge_epu16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmple_epu16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpneq_epi8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 4,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmplt_epi8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 1,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpge_epi8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 5,
- (__mmask16) __M);
-}
-
-extern __inline __mmask16
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmple_epi8_mask (__mmask16 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
- (__v16qi) __Y, 2,
- (__mmask16) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpneq_epi16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmplt_epi16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpge_epi16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmple_epi16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
- (__v8hi) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epu8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epu8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epu8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epu8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epu16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epu16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epu16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epu16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epi8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epi8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epi8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epi8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
- (__v32qi) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epi16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epi16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epi16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epi16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
- (__v16hi) __Y, 2,
- (__mmask8) __M);
-}
-
-#ifdef __DISABLE_AVX512VLBW__
-#undef __DISABLE_AVX512VLBW__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512VLBW__ */
-
-#endif /* _AVX512VLBWINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vldqintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vldqintrin.h
deleted file mode 100644
index dee74e4f4a..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vldqintrin.h
+++ /dev/null
@@ -1,2016 +0,0 @@
-/* Copyright (C) 2014-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512VLDQINTRIN_H_INCLUDED
-#define _AVX512VLDQINTRIN_H_INCLUDED
-
-#if !defined(__AVX512VL__) || !defined(__AVX512DQ__)
-#pragma GCC push_options
-//#pragma GCC target("avx512vl,avx512dq")
-#define __DISABLE_AVX512VLDQ__
-#endif /* __AVX512VLDQ__ */
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvttpd_epi64 (__m256d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvttpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvttpd_epi64 (__mmask8 __U, __m256d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttpd_epi64 (__m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvttpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvttpd_epi64 (__mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvttpd_epu64 (__m256d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvttpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvttpd_epu64 (__mmask8 __U, __m256d __A)
-{
- return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttpd_epu64 (__m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvttpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvttpd_epu64 (__mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtpd_epi64 (__m256d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtpd_epi64 (__mmask8 __U, __m256d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtpd_epi64 (__m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtpd_epi64 (__mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtpd_epu64 (__m256d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtpd_epu64 (__mmask8 __U, __m256d __A)
-{
- return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtpd_epu64 (__m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtpd_epu64 (__mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvttps_epi64 (__m128 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvttps_epi64 (__m256i __W, __mmask8 __U, __m128 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttps_epi64 (__m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvttps_epi64 (__m128i __W, __mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvttps_epu64 (__m128 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvttps_epu64 (__m256i __W, __mmask8 __U, __m128 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttps_epu64 (__m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvttps_epu64 (__m128i __W, __mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_f64x2 (__m128d __A)
-{
- return (__m256d) __builtin_ia32_broadcastf64x2_256_mask ((__v2df)
- __A,
- (__v4df)_mm256_undefined_pd(),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcast_f64x2 (__m256d __O, __mmask8 __M, __m128d __A)
-{
- return (__m256d) __builtin_ia32_broadcastf64x2_256_mask ((__v2df)
- __A,
- (__v4df)
- __O, __M);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcast_f64x2 (__mmask8 __M, __m128d __A)
-{
- return (__m256d) __builtin_ia32_broadcastf64x2_256_mask ((__v2df)
- __A,
- (__v4df)
- _mm256_setzero_ps (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_i64x2 (__m128i __A)
-{
- return (__m256i) __builtin_ia32_broadcasti64x2_256_mask ((__v2di)
- __A,
- (__v4di)_mm256_undefined_si256(),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcast_i64x2 (__m256i __O, __mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_broadcasti64x2_256_mask ((__v2di)
- __A,
- (__v4di)
- __O, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcast_i64x2 (__mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_broadcasti64x2_256_mask ((__v2di)
- __A,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_f32x2 (__m128 __A)
-{
- return (__m256) __builtin_ia32_broadcastf32x2_256_mask ((__v4sf) __A,
- (__v8sf)_mm256_undefined_ps(),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcast_f32x2 (__m256 __O, __mmask8 __M, __m128 __A)
-{
- return (__m256) __builtin_ia32_broadcastf32x2_256_mask ((__v4sf) __A,
- (__v8sf) __O,
- __M);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcast_f32x2 (__mmask8 __M, __m128 __A)
-{
- return (__m256) __builtin_ia32_broadcastf32x2_256_mask ((__v4sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_i32x2 (__m128i __A)
-{
- return (__m256i) __builtin_ia32_broadcasti32x2_256_mask ((__v4si)
- __A,
- (__v8si)_mm256_undefined_si256(),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcast_i32x2 (__m256i __O, __mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_broadcasti32x2_256_mask ((__v4si)
- __A,
- (__v8si)
- __O, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_broadcasti32x2_256_mask ((__v4si)
- __A,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_broadcast_i32x2 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_broadcasti32x2_128_mask ((__v4si)
- __A,
- (__v4si)_mm_undefined_si128(),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_broadcast_i32x2 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_broadcasti32x2_128_mask ((__v4si)
- __A,
- (__v4si)
- __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_broadcasti32x2_128_mask ((__v4si)
- __A,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mullo_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i) ((__v4du) __A * (__v4du) __B);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mullo_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmullq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mullo_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmullq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mullo_epi64 (__m128i __A, __m128i __B)
-{
- return (__m128i) ((__v2du) __A * (__v2du) __B);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mullo_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmullq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mullo_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmullq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_andnot_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_andnpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_andnot_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_andnpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_andnot_pd (__m128d __W, __mmask8 __U, __m128d __A,
- __m128d __B)
-{
- return (__m128d) __builtin_ia32_andnpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_andnot_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_andnpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_andnot_ps (__m256 __W, __mmask8 __U, __m256 __A,
- __m256 __B)
-{
- return (__m256) __builtin_ia32_andnps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_andnot_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_andnps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_andnot_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_andnps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_andnot_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_andnps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtps_epi64 (__m128 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtps_epi64 (__m256i __W, __mmask8 __U, __m128 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtps_epi64 (__m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtps_epi64 (__m128i __W, __mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtps_epu64 (__m128 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtps_epu64 (__m256i __W, __mmask8 __U, __m128 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtps_epu64 (__m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtps_epu64 (__m128i __W, __mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi64_ps (__m256i __A)
-{
- return (__m128) __builtin_ia32_cvtqq2ps256_mask ((__v4di) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m256i __A)
-{
- return (__m128) __builtin_ia32_cvtqq2ps256_mask ((__v4di) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi64_ps (__mmask8 __U, __m256i __A)
-{
- return (__m128) __builtin_ia32_cvtqq2ps256_mask ((__v4di) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepi64_ps (__m128i __A)
-{
- return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi64_ps (__mmask8 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu64_ps (__m256i __A)
-{
- return (__m128) __builtin_ia32_cvtuqq2ps256_mask ((__v4di) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m256i __A)
-{
- return (__m128) __builtin_ia32_cvtuqq2ps256_mask ((__v4di) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu64_ps (__mmask8 __U, __m256i __A)
-{
- return (__m128) __builtin_ia32_cvtuqq2ps256_mask ((__v4di) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepu64_ps (__m128i __A)
-{
- return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu64_ps (__mmask8 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi64_pd (__m256i __A)
-{
- return (__m256d) __builtin_ia32_cvtqq2pd256_mask ((__v4di) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi64_pd (__m256d __W, __mmask8 __U, __m256i __A)
-{
- return (__m256d) __builtin_ia32_cvtqq2pd256_mask ((__v4di) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi64_pd (__mmask8 __U, __m256i __A)
-{
- return (__m256d) __builtin_ia32_cvtqq2pd256_mask ((__v4di) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepi64_pd (__m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtqq2pd128_mask ((__v2di) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi64_pd (__m128d __W, __mmask8 __U, __m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtqq2pd128_mask ((__v2di) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi64_pd (__mmask8 __U, __m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtqq2pd128_mask ((__v2di) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu64_pd (__m256i __A)
-{
- return (__m256d) __builtin_ia32_cvtuqq2pd256_mask ((__v4di) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu64_pd (__m256d __W, __mmask8 __U, __m256i __A)
-{
- return (__m256d) __builtin_ia32_cvtuqq2pd256_mask ((__v4di) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu64_pd (__mmask8 __U, __m256i __A)
-{
- return (__m256d) __builtin_ia32_cvtuqq2pd256_mask ((__v4di) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_and_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_andpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_and_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_andpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_and_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_andpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_and_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_andpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_and_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_andps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_and_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_andps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_and_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_andps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_and_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_andps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepu64_pd (__m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtuqq2pd128_mask ((__v2di) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu64_pd (__m128d __W, __mmask8 __U, __m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtuqq2pd128_mask ((__v2di) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu64_pd (__mmask8 __U, __m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtuqq2pd128_mask ((__v2di) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_xor_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_xorpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_xor_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_xorpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_xor_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_xorpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_xor_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_xorpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_xor_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_xorps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_xor_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_xorps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_xor_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_xorps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_xor_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_xorps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_or_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_orpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_or_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_orpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_or_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_orpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_or_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_orpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_or_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_orps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_or_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_orps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_or_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_orps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_or_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_orps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_movm_epi32 (__mmask8 __A)
-{
- return (__m128i) __builtin_ia32_cvtmask2d128 (__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movm_epi32 (__mmask8 __A)
-{
- return (__m256i) __builtin_ia32_cvtmask2d256 (__A);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_movm_epi64 (__mmask8 __A)
-{
- return (__m128i) __builtin_ia32_cvtmask2q128 (__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movm_epi64 (__mmask8 __A)
-{
- return (__m256i) __builtin_ia32_cvtmask2q256 (__A);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_movepi32_mask (__m128i __A)
-{
- return (__mmask8) __builtin_ia32_cvtd2mask128 ((__v4si) __A);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movepi32_mask (__m256i __A)
-{
- return (__mmask8) __builtin_ia32_cvtd2mask256 ((__v8si) __A);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_movepi64_mask (__m128i __A)
-{
- return (__mmask8) __builtin_ia32_cvtq2mask128 ((__v2di) __A);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movepi64_mask (__m256i __A)
-{
- return (__mmask8) __builtin_ia32_cvtq2mask256 ((__v4di) __A);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extractf64x2_pd (__m256d __A, const int __imm)
-{
- return (__m128d) __builtin_ia32_extractf64x2_256_mask ((__v4df) __A,
- __imm,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_extractf64x2_pd (__m128d __W, __mmask8 __U, __m256d __A,
- const int __imm)
-{
- return (__m128d) __builtin_ia32_extractf64x2_256_mask ((__v4df) __A,
- __imm,
- (__v2df) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_extractf64x2_pd (__mmask8 __U, __m256d __A,
- const int __imm)
-{
- return (__m128d) __builtin_ia32_extractf64x2_256_mask ((__v4df) __A,
- __imm,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extracti64x2_epi64 (__m256i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti64x2_256_mask ((__v4di) __A,
- __imm,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_extracti64x2_epi64 (__m128i __W, __mmask8 __U, __m256i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti64x2_256_mask ((__v4di) __A,
- __imm,
- (__v2di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_extracti64x2_epi64 (__mmask8 __U, __m256i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti64x2_256_mask ((__v4di) __A,
- __imm,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_reduce_pd (__m256d __A, int __B)
-{
- return (__m256d) __builtin_ia32_reducepd256_mask ((__v4df) __A, __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_reduce_pd (__m256d __W, __mmask8 __U, __m256d __A, int __B)
-{
- return (__m256d) __builtin_ia32_reducepd256_mask ((__v4df) __A, __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_reduce_pd (__mmask8 __U, __m256d __A, int __B)
-{
- return (__m256d) __builtin_ia32_reducepd256_mask ((__v4df) __A, __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_reduce_pd (__m128d __A, int __B)
-{
- return (__m128d) __builtin_ia32_reducepd128_mask ((__v2df) __A, __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_reduce_pd (__m128d __W, __mmask8 __U, __m128d __A, int __B)
-{
- return (__m128d) __builtin_ia32_reducepd128_mask ((__v2df) __A, __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_reduce_pd (__mmask8 __U, __m128d __A, int __B)
-{
- return (__m128d) __builtin_ia32_reducepd128_mask ((__v2df) __A, __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_reduce_ps (__m256 __A, int __B)
-{
- return (__m256) __builtin_ia32_reduceps256_mask ((__v8sf) __A, __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_reduce_ps (__m256 __W, __mmask8 __U, __m256 __A, int __B)
-{
- return (__m256) __builtin_ia32_reduceps256_mask ((__v8sf) __A, __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_reduce_ps (__mmask8 __U, __m256 __A, int __B)
-{
- return (__m256) __builtin_ia32_reduceps256_mask ((__v8sf) __A, __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_reduce_ps (__m128 __A, int __B)
-{
- return (__m128) __builtin_ia32_reduceps128_mask ((__v4sf) __A, __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_reduce_ps (__m128 __W, __mmask8 __U, __m128 __A, int __B)
-{
- return (__m128) __builtin_ia32_reduceps128_mask ((__v4sf) __A, __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_reduce_ps (__mmask8 __U, __m128 __A, int __B)
-{
- return (__m128) __builtin_ia32_reduceps128_mask ((__v4sf) __A, __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_range_pd (__m256d __A, __m256d __B, int __C)
-{
- return (__m256d) __builtin_ia32_rangepd256_mask ((__v4df) __A,
- (__v4df) __B, __C,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_range_pd (__m256d __W, __mmask8 __U,
- __m256d __A, __m256d __B, int __C)
-{
- return (__m256d) __builtin_ia32_rangepd256_mask ((__v4df) __A,
- (__v4df) __B, __C,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_range_pd (__mmask8 __U, __m256d __A, __m256d __B, int __C)
-{
- return (__m256d) __builtin_ia32_rangepd256_mask ((__v4df) __A,
- (__v4df) __B, __C,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_range_pd (__m128d __A, __m128d __B, int __C)
-{
- return (__m128d) __builtin_ia32_rangepd128_mask ((__v2df) __A,
- (__v2df) __B, __C,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_range_pd (__m128d __W, __mmask8 __U,
- __m128d __A, __m128d __B, int __C)
-{
- return (__m128d) __builtin_ia32_rangepd128_mask ((__v2df) __A,
- (__v2df) __B, __C,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_range_pd (__mmask8 __U, __m128d __A, __m128d __B, int __C)
-{
- return (__m128d) __builtin_ia32_rangepd128_mask ((__v2df) __A,
- (__v2df) __B, __C,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_range_ps (__m256 __A, __m256 __B, int __C)
-{
- return (__m256) __builtin_ia32_rangeps256_mask ((__v8sf) __A,
- (__v8sf) __B, __C,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_range_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B,
- int __C)
-{
- return (__m256) __builtin_ia32_rangeps256_mask ((__v8sf) __A,
- (__v8sf) __B, __C,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_range_ps (__mmask8 __U, __m256 __A, __m256 __B, int __C)
-{
- return (__m256) __builtin_ia32_rangeps256_mask ((__v8sf) __A,
- (__v8sf) __B, __C,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_range_ps (__m128 __A, __m128 __B, int __C)
-{
- return (__m128) __builtin_ia32_rangeps128_mask ((__v4sf) __A,
- (__v4sf) __B, __C,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_range_ps (__m128 __W, __mmask8 __U,
- __m128 __A, __m128 __B, int __C)
-{
- return (__m128) __builtin_ia32_rangeps128_mask ((__v4sf) __A,
- (__v4sf) __B, __C,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_range_ps (__mmask8 __U, __m128 __A, __m128 __B, int __C)
-{
- return (__m128) __builtin_ia32_rangeps128_mask ((__v4sf) __A,
- (__v4sf) __B, __C,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fpclass_pd_mask (__mmask8 __U, __m256d __A,
- const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclasspd256_mask ((__v4df) __A,
- __imm, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_fpclass_pd_mask (__m256d __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclasspd256_mask ((__v4df) __A,
- __imm,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fpclass_ps_mask (__mmask8 __U, __m256 __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclassps256_mask ((__v8sf) __A,
- __imm, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_fpclass_ps_mask (__m256 __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclassps256_mask ((__v8sf) __A,
- __imm,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fpclass_pd_mask (__mmask8 __U, __m128d __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclasspd128_mask ((__v2df) __A,
- __imm, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fpclass_pd_mask (__m128d __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclasspd128_mask ((__v2df) __A,
- __imm,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fpclass_ps_mask (__mmask8 __U, __m128 __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclassps128_mask ((__v4sf) __A,
- __imm, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fpclass_ps_mask (__m128 __A, const int __imm)
-{
- return (__mmask8) __builtin_ia32_fpclassps128_mask ((__v4sf) __A,
- __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_inserti64x2 (__m256i __A, __m128i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_inserti64x2_256_mask ((__v4di) __A,
- (__v2di) __B,
- __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_inserti64x2 (__m256i __W, __mmask8 __U, __m256i __A,
- __m128i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_inserti64x2_256_mask ((__v4di) __A,
- (__v2di) __B,
- __imm,
- (__v4di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_inserti64x2 (__mmask8 __U, __m256i __A, __m128i __B,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_inserti64x2_256_mask ((__v4di) __A,
- (__v2di) __B,
- __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_insertf64x2 (__m256d __A, __m128d __B, const int __imm)
-{
- return (__m256d) __builtin_ia32_insertf64x2_256_mask ((__v4df) __A,
- (__v2df) __B,
- __imm,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_insertf64x2 (__m256d __W, __mmask8 __U, __m256d __A,
- __m128d __B, const int __imm)
-{
- return (__m256d) __builtin_ia32_insertf64x2_256_mask ((__v4df) __A,
- (__v2df) __B,
- __imm,
- (__v4df) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_insertf64x2 (__mmask8 __U, __m256d __A, __m128d __B,
- const int __imm)
-{
- return (__m256d) __builtin_ia32_insertf64x2_256_mask ((__v4df) __A,
- (__v2df) __B,
- __imm,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8)
- __U);
-}
-
-#else
-#define _mm256_insertf64x2(X, Y, C) \
- ((__m256d) __builtin_ia32_insertf64x2_256_mask ((__v4df)(__m256d) (X),\
- (__v2df)(__m128d) (Y), (int) (C), \
- (__v4df)(__m256d)_mm256_setzero_pd(), \
- (__mmask8)-1))
-
-#define _mm256_mask_insertf64x2(W, U, X, Y, C) \
- ((__m256d) __builtin_ia32_insertf64x2_256_mask ((__v4df)(__m256d) (X),\
- (__v2df)(__m128d) (Y), (int) (C), \
- (__v4df)(__m256d)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_insertf64x2(U, X, Y, C) \
- ((__m256d) __builtin_ia32_insertf64x2_256_mask ((__v4df)(__m256d) (X),\
- (__v2df)(__m128d) (Y), (int) (C), \
- (__v4df)(__m256d)_mm256_setzero_pd(), \
- (__mmask8)(U)))
-
-#define _mm256_inserti64x2(X, Y, C) \
- ((__m256i) __builtin_ia32_inserti64x2_256_mask ((__v4di)(__m256i) (X),\
- (__v2di)(__m128i) (Y), (int) (C), \
- (__v4di)(__m256i)_mm256_setzero_si256 (), \
- (__mmask8)-1))
-
-#define _mm256_mask_inserti64x2(W, U, X, Y, C) \
- ((__m256i) __builtin_ia32_inserti64x2_256_mask ((__v4di)(__m256i) (X),\
- (__v2di)(__m128i) (Y), (int) (C), \
- (__v4di)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_inserti64x2(U, X, Y, C) \
- ((__m256i) __builtin_ia32_inserti64x2_256_mask ((__v4di)(__m256i) (X),\
- (__v2di)(__m128i) (Y), (int) (C), \
- (__v4di)(__m256i)_mm256_setzero_si256 (), \
- (__mmask8)(U)))
-
-#define _mm256_extractf64x2_pd(X, C) \
- ((__m128d) __builtin_ia32_extractf64x2_256_mask ((__v4df)(__m256d) (X),\
- (int) (C), (__v2df)(__m128d) _mm_setzero_pd(), (__mmask8)-1))
-
-#define _mm256_mask_extractf64x2_pd(W, U, X, C) \
- ((__m128d) __builtin_ia32_extractf64x2_256_mask ((__v4df)(__m256d) (X),\
- (int) (C), (__v2df)(__m128d) (W), (__mmask8) (U)))
-
-#define _mm256_maskz_extractf64x2_pd(U, X, C) \
- ((__m128d) __builtin_ia32_extractf64x2_256_mask ((__v4df)(__m256d) (X),\
- (int) (C), (__v2df)(__m128d) _mm_setzero_pd(), (__mmask8) (U)))
-
-#define _mm256_extracti64x2_epi64(X, C) \
- ((__m128i) __builtin_ia32_extracti64x2_256_mask ((__v4di)(__m256i) (X),\
- (int) (C), (__v2di)(__m128i) _mm_setzero_si128 (), (__mmask8)-1))
-
-#define _mm256_mask_extracti64x2_epi64(W, U, X, C) \
- ((__m128i) __builtin_ia32_extracti64x2_256_mask ((__v4di)(__m256i) (X),\
- (int) (C), (__v2di)(__m128i) (W), (__mmask8) (U)))
-
-#define _mm256_maskz_extracti64x2_epi64(U, X, C) \
- ((__m128i) __builtin_ia32_extracti64x2_256_mask ((__v4di)(__m256i) (X),\
- (int) (C), (__v2di)(__m128i) _mm_setzero_si128 (), (__mmask8) (U)))
-
-#define _mm256_reduce_pd(A, B) \
- ((__m256d) __builtin_ia32_reducepd256_mask ((__v4df)(__m256d)(A), \
- (int)(B), (__v4df)_mm256_setzero_pd(), (__mmask8)-1))
-
-#define _mm256_mask_reduce_pd(W, U, A, B) \
- ((__m256d) __builtin_ia32_reducepd256_mask ((__v4df)(__m256d)(A), \
- (int)(B), (__v4df)(__m256d)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_reduce_pd(U, A, B) \
- ((__m256d) __builtin_ia32_reducepd256_mask ((__v4df)(__m256d)(A), \
- (int)(B), (__v4df)_mm256_setzero_pd(), (__mmask8)(U)))
-
-#define _mm_reduce_pd(A, B) \
- ((__m128d) __builtin_ia32_reducepd128_mask ((__v2df)(__m128d)(A), \
- (int)(B), (__v2df)_mm_setzero_pd(), (__mmask8)-1))
-
-#define _mm_mask_reduce_pd(W, U, A, B) \
- ((__m128d) __builtin_ia32_reducepd128_mask ((__v2df)(__m128d)(A), \
- (int)(B), (__v2df)(__m128d)(W), (__mmask8)(U)))
-
-#define _mm_maskz_reduce_pd(U, A, B) \
- ((__m128d) __builtin_ia32_reducepd128_mask ((__v2df)(__m128d)(A), \
- (int)(B), (__v2df)_mm_setzero_pd(), (__mmask8)(U)))
-
-#define _mm256_reduce_ps(A, B) \
- ((__m256) __builtin_ia32_reduceps256_mask ((__v8sf)(__m256)(A), \
- (int)(B), (__v8sf)_mm256_setzero_ps(), (__mmask8)-1))
-
-#define _mm256_mask_reduce_ps(W, U, A, B) \
- ((__m256) __builtin_ia32_reduceps256_mask ((__v8sf)(__m256)(A), \
- (int)(B), (__v8sf)(__m256)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_reduce_ps(U, A, B) \
- ((__m256) __builtin_ia32_reduceps256_mask ((__v8sf)(__m256)(A), \
- (int)(B), (__v8sf)_mm256_setzero_ps(), (__mmask8)(U)))
-
-#define _mm_reduce_ps(A, B) \
- ((__m128) __builtin_ia32_reduceps128_mask ((__v4sf)(__m128)(A), \
- (int)(B), (__v4sf)_mm_setzero_ps(), (__mmask8)-1))
-
-#define _mm_mask_reduce_ps(W, U, A, B) \
- ((__m128) __builtin_ia32_reduceps128_mask ((__v4sf)(__m128)(A), \
- (int)(B), (__v4sf)(__m128)(W), (__mmask8)(U)))
-
-#define _mm_maskz_reduce_ps(U, A, B) \
- ((__m128) __builtin_ia32_reduceps128_mask ((__v4sf)(__m128)(A), \
- (int)(B), (__v4sf)_mm_setzero_ps(), (__mmask8)(U)))
-
-#define _mm256_range_pd(A, B, C) \
- ((__m256d) __builtin_ia32_rangepd256_mask ((__v4df)(__m256d)(A), \
- (__v4df)(__m256d)(B), (int)(C), \
- (__v4df)_mm256_setzero_pd(), (__mmask8)-1))
-
-#define _mm256_maskz_range_pd(U, A, B, C) \
- ((__m256d) __builtin_ia32_rangepd256_mask ((__v4df)(__m256d)(A), \
- (__v4df)(__m256d)(B), (int)(C), \
- (__v4df)_mm256_setzero_pd(), (__mmask8)(U)))
-
-#define _mm_range_pd(A, B, C) \
- ((__m128d) __builtin_ia32_rangepd128_mask ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C), \
- (__v2df)_mm_setzero_pd(), (__mmask8)-1))
-
-#define _mm256_range_ps(A, B, C) \
- ((__m256) __builtin_ia32_rangeps256_mask ((__v8sf)(__m256)(A), \
- (__v8sf)(__m256)(B), (int)(C), \
- (__v8sf)_mm256_setzero_ps(), (__mmask8)-1))
-
-#define _mm256_mask_range_ps(W, U, A, B, C) \
- ((__m256) __builtin_ia32_rangeps256_mask ((__v8sf)(__m256)(A), \
- (__v8sf)(__m256)(B), (int)(C), \
- (__v8sf)(__m256)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_range_ps(U, A, B, C) \
- ((__m256) __builtin_ia32_rangeps256_mask ((__v8sf)(__m256)(A), \
- (__v8sf)(__m256)(B), (int)(C), \
- (__v8sf)_mm256_setzero_ps(), (__mmask8)(U)))
-
-#define _mm_range_ps(A, B, C) \
- ((__m128) __builtin_ia32_rangeps128_mask ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(B), (int)(C), \
- (__v4sf)_mm_setzero_ps(), (__mmask8)-1))
-
-#define _mm_mask_range_ps(W, U, A, B, C) \
- ((__m128) __builtin_ia32_rangeps128_mask ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(B), (int)(C), \
- (__v4sf)(__m128)(W), (__mmask8)(U)))
-
-#define _mm_maskz_range_ps(U, A, B, C) \
- ((__m128) __builtin_ia32_rangeps128_mask ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(B), (int)(C), \
- (__v4sf)_mm_setzero_ps(), (__mmask8)(U)))
-
-#define _mm256_mask_range_pd(W, U, A, B, C) \
- ((__m256d) __builtin_ia32_rangepd256_mask ((__v4df)(__m256d)(A), \
- (__v4df)(__m256d)(B), (int)(C), \
- (__v4df)(__m256d)(W), (__mmask8)(U)))
-
-#define _mm_mask_range_pd(W, U, A, B, C) \
- ((__m128d) __builtin_ia32_rangepd128_mask ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C), \
- (__v2df)(__m128d)(W), (__mmask8)(U)))
-
-#define _mm_maskz_range_pd(U, A, B, C) \
- ((__m128d) __builtin_ia32_rangepd128_mask ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C), \
- (__v2df)_mm_setzero_pd(), (__mmask8)(U)))
-
-#define _mm256_mask_fpclass_pd_mask(u, X, C) \
- ((__mmask8) __builtin_ia32_fpclasspd256_mask ((__v4df) (__m256d) (X), \
- (int) (C),(__mmask8)(u)))
-
-#define _mm256_mask_fpclass_ps_mask(u, X, C) \
- ((__mmask8) __builtin_ia32_fpclassps256_mask ((__v8sf) (__m256) (X), \
- (int) (C),(__mmask8)(u)))
-
-#define _mm_mask_fpclass_pd_mask(u, X, C) \
- ((__mmask8) __builtin_ia32_fpclasspd128_mask ((__v2df) (__m128d) (X), \
- (int) (C),(__mmask8)(u)))
-
-#define _mm_mask_fpclass_ps_mask(u, X, C) \
- ((__mmask8) __builtin_ia32_fpclassps128_mask ((__v4sf) (__m128) (X), \
- (int) (C),(__mmask8)(u)))
-
-#define _mm256_fpclass_pd_mask(X, C) \
- ((__mmask8) __builtin_ia32_fpclasspd256_mask ((__v4df) (__m256d) (X), \
- (int) (C),(__mmask8)-1))
-
-#define _mm256_fpclass_ps_mask(X, C) \
- ((__mmask8) __builtin_ia32_fpclassps256_mask ((__v8sf) (__m256) (X), \
- (int) (C),(__mmask8)-1))
-
-#define _mm_fpclass_pd_mask(X, C) \
- ((__mmask8) __builtin_ia32_fpclasspd128_mask ((__v2df) (__m128d) (X), \
- (int) (C),(__mmask8)-1))
-
-#define _mm_fpclass_ps_mask(X, C) \
- ((__mmask8) __builtin_ia32_fpclassps128_mask ((__v4sf) (__m128) (X), \
- (int) (C),(__mmask8)-1))
-
-#endif
-
-#ifdef __DISABLE_AVX512VLDQ__
-#undef __DISABLE_AVX512VLDQ__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512VLDQ__ */
-
-#endif /* _AVX512VLDQINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vlintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vlintrin.h
deleted file mode 100644
index c9df31839a..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vlintrin.h
+++ /dev/null
@@ -1,13606 +0,0 @@
-/* Copyright (C) 2014-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-#error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512VLINTRIN_H_INCLUDED
-#define _AVX512VLINTRIN_H_INCLUDED
-
-#ifndef __AVX512VL__
-#pragma GCC push_options
-//#pragma GCC target("avx512vl")
-#define __DISABLE_AVX512VL__
-#endif /* __AVX512VL__ */
-
-/* Internal data types for implementing the intrinsics. */
-typedef unsigned int __mmask32;
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mov_pd (__m256d __W, __mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_movapd256_mask ((__v4df) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mov_pd (__mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_movapd256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mov_pd (__m128d __W, __mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_movapd128_mask ((__v2df) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mov_pd (__mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_movapd128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_load_pd (__m256d __W, __mmask8 __U, void const *__P)
-{
- return (__m256d) __builtin_ia32_loadapd256_mask ((__v4df *) __P,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_load_pd (__mmask8 __U, void const *__P)
-{
- return (__m256d) __builtin_ia32_loadapd256_mask ((__v4df *) __P,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_load_pd (__m128d __W, __mmask8 __U, void const *__P)
-{
- return (__m128d) __builtin_ia32_loadapd128_mask ((__v2df *) __P,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_load_pd (__mmask8 __U, void const *__P)
-{
- return (__m128d) __builtin_ia32_loadapd128_mask ((__v2df *) __P,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_store_pd (void *__P, __mmask8 __U, __m256d __A)
-{
- __builtin_ia32_storeapd256_mask ((__v4df *) __P,
- (__v4df) __A,
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_store_pd (void *__P, __mmask8 __U, __m128d __A)
-{
- __builtin_ia32_storeapd128_mask ((__v2df *) __P,
- (__v2df) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mov_ps (__m256 __W, __mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_movaps256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mov_ps (__mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_movaps256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mov_ps (__m128 __W, __mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_movaps128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mov_ps (__mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_movaps128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_load_ps (__m256 __W, __mmask8 __U, void const *__P)
-{
- return (__m256) __builtin_ia32_loadaps256_mask ((__v8sf *) __P,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_load_ps (__mmask8 __U, void const *__P)
-{
- return (__m256) __builtin_ia32_loadaps256_mask ((__v8sf *) __P,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_load_ps (__m128 __W, __mmask8 __U, void const *__P)
-{
- return (__m128) __builtin_ia32_loadaps128_mask ((__v4sf *) __P,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_load_ps (__mmask8 __U, void const *__P)
-{
- return (__m128) __builtin_ia32_loadaps128_mask ((__v4sf *) __P,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_store_ps (void *__P, __mmask8 __U, __m256 __A)
-{
- __builtin_ia32_storeaps256_mask ((__v8sf *) __P,
- (__v8sf) __A,
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_store_ps (void *__P, __mmask8 __U, __m128 __A)
-{
- __builtin_ia32_storeaps128_mask ((__v4sf *) __P,
- (__v4sf) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mov_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_movdqa64_256_mask ((__v4di) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mov_epi64 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_movdqa64_256_mask ((__v4di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mov_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_movdqa64_128_mask ((__v2di) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mov_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_movdqa64_128_mask ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_load_epi64 (__m256i __W, __mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_movdqa64load256_mask ((__v4di *) __P,
- (__v4di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_load_epi64 (__mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_movdqa64load256_mask ((__v4di *) __P,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_load_epi64 (__m128i __W, __mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_movdqa64load128_mask ((__v2di *) __P,
- (__v2di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_load_epi64 (__mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_movdqa64load128_mask ((__v2di *) __P,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8)
- __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_store_epi64 (void *__P, __mmask8 __U, __m256i __A)
-{
- __builtin_ia32_movdqa64store256_mask ((__v4di *) __P,
- (__v4di) __A,
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_store_epi64 (void *__P, __mmask8 __U, __m128i __A)
-{
- __builtin_ia32_movdqa64store128_mask ((__v2di *) __P,
- (__v2di) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mov_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_movdqa32_256_mask ((__v8si) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mov_epi32 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_movdqa32_256_mask ((__v8si) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mov_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_movdqa32_128_mask ((__v4si) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mov_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_movdqa32_128_mask ((__v4si) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_load_epi32 (__m256i __W, __mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_movdqa32load256_mask ((__v8si *) __P,
- (__v8si) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_load_epi32 (__mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_movdqa32load256_mask ((__v8si *) __P,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_load_epi32 (__m128i __W, __mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_movdqa32load128_mask ((__v4si *) __P,
- (__v4si) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_load_epi32 (__mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_movdqa32load128_mask ((__v4si *) __P,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8)
- __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_store_epi32 (void *__P, __mmask8 __U, __m256i __A)
-{
- __builtin_ia32_movdqa32store256_mask ((__v8si *) __P,
- (__v8si) __A,
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_store_epi32 (void *__P, __mmask8 __U, __m128i __A)
-{
- __builtin_ia32_movdqa32store128_mask ((__v4si *) __P,
- (__v4si) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_add_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_addpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_add_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_addpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_add_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_addpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_add_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_addpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_add_ps (__m128 __W, __mmask16 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_addps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_add_ps (__mmask16 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_addps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_add_ps (__m256 __W, __mmask16 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_addps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_add_ps (__mmask16 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_addps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sub_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_subpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sub_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_subpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sub_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_subpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sub_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_subpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sub_ps (__m128 __W, __mmask16 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_subps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sub_ps (__mmask16 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_subps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sub_ps (__m256 __W, __mmask16 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_subps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sub_ps (__mmask16 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_subps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_store_epi64 (void *__P, __m256i __A)
-{
- *(__m256i *) __P = __A;
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_store_epi64 (void *__P, __m128i __A)
-{
- *(__m128i *) __P = __A;
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_loadu_pd (__m256d __W, __mmask8 __U, void const *__P)
-{
- return (__m256d) __builtin_ia32_loadupd256_mask ((const double *) __P,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_loadu_pd (__mmask8 __U, void const *__P)
-{
- return (__m256d) __builtin_ia32_loadupd256_mask ((const double *) __P,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_loadu_pd (__m128d __W, __mmask8 __U, void const *__P)
-{
- return (__m128d) __builtin_ia32_loadupd128_mask ((const double *) __P,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_loadu_pd (__mmask8 __U, void const *__P)
-{
- return (__m128d) __builtin_ia32_loadupd128_mask ((const double *) __P,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_storeu_pd (void *__P, __mmask8 __U, __m256d __A)
-{
- __builtin_ia32_storeupd256_mask ((double *) __P,
- (__v4df) __A,
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_storeu_pd (void *__P, __mmask8 __U, __m128d __A)
-{
- __builtin_ia32_storeupd128_mask ((double *) __P,
- (__v2df) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_loadu_ps (__m256 __W, __mmask8 __U, void const *__P)
-{
- return (__m256) __builtin_ia32_loadups256_mask ((const float *) __P,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_loadu_ps (__mmask8 __U, void const *__P)
-{
- return (__m256) __builtin_ia32_loadups256_mask ((const float *) __P,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_loadu_ps (__m128 __W, __mmask8 __U, void const *__P)
-{
- return (__m128) __builtin_ia32_loadups128_mask ((const float *) __P,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_loadu_ps (__mmask8 __U, void const *__P)
-{
- return (__m128) __builtin_ia32_loadups128_mask ((const float *) __P,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_storeu_ps (void *__P, __mmask8 __U, __m256 __A)
-{
- __builtin_ia32_storeups256_mask ((float *) __P,
- (__v8sf) __A,
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_storeu_ps (void *__P, __mmask8 __U, __m128 __A)
-{
- __builtin_ia32_storeups128_mask ((float *) __P,
- (__v4sf) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_loadu_epi64 (__m256i __W, __mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_loaddqudi256_mask ((const long long *) __P,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_loadu_epi64 (__mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_loaddqudi256_mask ((const long long *) __P,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_loadu_epi64 (__m128i __W, __mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_loaddqudi128_mask ((const long long *) __P,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_loadu_epi64 (__mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_loaddqudi128_mask ((const long long *) __P,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_storeu_epi64 (void *__P, __mmask8 __U, __m256i __A)
-{
- __builtin_ia32_storedqudi256_mask ((long long *) __P,
- (__v4di) __A,
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_storeu_epi64 (void *__P, __mmask8 __U, __m128i __A)
-{
- __builtin_ia32_storedqudi128_mask ((long long *) __P,
- (__v2di) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_loadu_epi32 (__m256i __W, __mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_loaddqusi256_mask ((const int *) __P,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_loadu_epi32 (__mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_loaddqusi256_mask ((const int *) __P,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_loadu_epi32 (__m128i __W, __mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_loaddqusi128_mask ((const int *) __P,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_loadu_epi32 (__mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_loaddqusi128_mask ((const int *) __P,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_storeu_epi32 (void *__P, __mmask8 __U, __m256i __A)
-{
- __builtin_ia32_storedqusi256_mask ((int *) __P,
- (__v8si) __A,
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_storeu_epi32 (void *__P, __mmask8 __U, __m128i __A)
-{
- __builtin_ia32_storedqusi128_mask ((int *) __P,
- (__v4si) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_abs_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_pabsd256_mask ((__v8si) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_abs_epi32 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_pabsd256_mask ((__v8si) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_abs_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pabsd128_mask ((__v4si) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_abs_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pabsd128_mask ((__v4si) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_abs_epi64 (__m256i __A)
-{
- return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_abs_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_abs_epi64 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_abs_epi64 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_abs_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_abs_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtpd_epu32 (__m256d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtpd_epu32 (__mmask8 __U, __m256d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtpd_epu32 (__m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtpd_epu32 (__mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvttps_epi32 (__m256i __W, __mmask8 __U, __m256 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2dq256_mask ((__v8sf) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvttps_epi32 (__mmask8 __U, __m256 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2dq256_mask ((__v8sf) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvttps_epi32 (__m128i __W, __mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2dq128_mask ((__v4sf) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvttps_epi32 (__mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2dq128_mask ((__v4sf) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvttps_epu32 (__m256 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvttps_epu32 (__m256i __W, __mmask8 __U, __m256 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvttps_epu32 (__mmask8 __U, __m256 __A)
-{
- return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttps_epu32 (__m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvttps_epu32 (__m128i __W, __mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvttps_epu32 (__mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2dq256_mask ((__v4df) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvttpd_epi32 (__mmask8 __U, __m256d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2dq256_mask ((__v4df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvttpd_epi32 (__mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvttpd_epu32 (__m256d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvttpd_epu32 (__mmask8 __U, __m256d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvttpd_epu32 (__m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvttpd_epu32 (__mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2dq256_mask ((__v4df) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtpd_epi32 (__mmask8 __U, __m256d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2dq256_mask ((__v4df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtpd_epi32 (__mmask8 __U, __m128d __A)
-{
- return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi32_pd (__m256d __W, __mmask8 __U, __m128i __A)
-{
- return (__m256d) __builtin_ia32_cvtdq2pd256_mask ((__v4si) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A)
-{
- return (__m256d) __builtin_ia32_cvtdq2pd256_mask ((__v4si) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi32_pd (__m128d __W, __mmask8 __U, __m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtdq2pd128_mask ((__v4si) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtdq2pd128_mask ((__v4si) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu32_pd (__m128i __A)
-{
- return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu32_pd (__m256d __W, __mmask8 __U, __m128i __A)
-{
- return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A)
-{
- return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepu32_pd (__m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu32_pd (__m128d __W, __mmask8 __U, __m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A)
-{
- return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi32_ps (__m256 __W, __mmask8 __U, __m256i __A)
-{
- return (__m256) __builtin_ia32_cvtdq2ps256_mask ((__v8si) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi32_ps (__mmask16 __U, __m256i __A)
-{
- return (__m256) __builtin_ia32_cvtdq2ps256_mask ((__v8si) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi32_ps (__m128 __W, __mmask8 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_cvtdq2ps128_mask ((__v4si) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi32_ps (__mmask16 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_cvtdq2ps128_mask ((__v4si) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepu32_ps (__m256i __A)
-{
- return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu32_ps (__m256 __W, __mmask8 __U, __m256i __A)
-{
- return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu32_ps (__mmask8 __U, __m256i __A)
-{
- return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepu32_ps (__m128i __A)
-{
- return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu32_ps (__m128 __W, __mmask8 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu32_ps (__mmask8 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtps_pd (__m256d __W, __mmask8 __U, __m128 __A)
-{
- return (__m256d) __builtin_ia32_cvtps2pd256_mask ((__v4sf) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtps_pd (__mmask8 __U, __m128 __A)
-{
- return (__m256d) __builtin_ia32_cvtps2pd256_mask ((__v4sf) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtps_pd (__m128d __W, __mmask8 __U, __m128 __A)
-{
- return (__m128d) __builtin_ia32_cvtps2pd128_mask ((__v4sf) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtps_pd (__mmask8 __U, __m128 __A)
-{
- return (__m128d) __builtin_ia32_cvtps2pd128_mask ((__v4sf) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepi32_epi8 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi32_epi8 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi32_epi8 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi32_epi8 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtsepi32_epi8 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovsdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtsepi32_epi8 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtsepi32_epi8 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovsdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtsepi32_epi8 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtusepi32_epi8 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovusdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtusepi32_epi8 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtusepi32_epi8 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovusdb256mem_mask ((__v16qi*) __P, (__v8si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtusepi32_epi8 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepi32_epi16 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi32_epi16 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi32_epi16 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi32_epi16 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtsepi32_epi16 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovsdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A,
- (__v8hi)__O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtsepi32_epi16 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtsepi32_epi16 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovsdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtsepi32_epi16 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtusepi32_epi16 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovusdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtusepi32_epi16 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtusepi32_epi16 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovusdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtusepi32_epi16 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepi64_epi8 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi64_epi8 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi64_epi8 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi64_epi8 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtsepi64_epi8 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovsqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtsepi64_epi8 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtsepi64_epi8 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovsqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A,
- (__v16qi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtsepi64_epi8 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtusepi64_epi8 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovusqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtusepi64_epi8 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtusepi64_epi8 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A,
- (__v16qi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovusqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A,
- (__v16qi) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtusepi64_epi8 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A,
- (__v16qi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepi64_epi16 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A,
- (__v8hi)__O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi64_epi16 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi64_epi16 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi64_epi16 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtsepi64_epi16 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovsqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtsepi64_epi16 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtsepi64_epi16 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovsqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtsepi64_epi16 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtusepi64_epi16 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovusqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtusepi64_epi16 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtusepi64_epi16 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A,
- (__v8hi)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovusqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A,
- (__v8hi) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtusepi64_epi16 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A,
- (__v8hi)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtepi64_epi32 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A,
- (__v4si)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A,
- (__v4si) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi64_epi32 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi64_epi32 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovqd256_mask ((__v4di) __A,
- (__v4si)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovqd256_mask ((__v4di) __A,
- (__v4si) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi64_epi32 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovqd256_mask ((__v4di) __A,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtsepi64_epi32 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A,
- (__v4si)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovsqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A,
- (__v4si) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtsepi64_epi32 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtsepi64_epi32 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A,
- (__v4si)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovsqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A,
- (__v4si)__O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtsepi64_epi32 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtusepi64_epi32 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A,
- (__v4si)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A)
-{
- __builtin_ia32_pmovusqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A,
- (__v4si) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtusepi64_epi32 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtusepi64_epi32 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A,
- (__v4si)
- _mm_undefined_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A)
-{
- __builtin_ia32_pmovusqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A,
- (__v4si) __O, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtusepi64_epi32 (__mmask8 __M, __m256i __A)
-{
- return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcastss_ps (__m256 __O, __mmask8 __M, __m128 __A)
-{
- return (__m256) __builtin_ia32_broadcastss256_mask ((__v4sf) __A,
- (__v8sf) __O,
- __M);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcastss_ps (__mmask8 __M, __m128 __A)
-{
- return (__m256) __builtin_ia32_broadcastss256_mask ((__v4sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- __M);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_broadcastss_ps (__m128 __O, __mmask8 __M, __m128 __A)
-{
- return (__m128) __builtin_ia32_broadcastss128_mask ((__v4sf) __A,
- (__v4sf) __O,
- __M);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_broadcastss_ps (__mmask8 __M, __m128 __A)
-{
- return (__m128) __builtin_ia32_broadcastss128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- __M);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcastsd_pd (__m256d __O, __mmask8 __M, __m128d __A)
-{
- return (__m256d) __builtin_ia32_broadcastsd256_mask ((__v2df) __A,
- (__v4df) __O,
- __M);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A)
-{
- return (__m256d) __builtin_ia32_broadcastsd256_mask ((__v2df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcastd_epi32 (__m256i __O, __mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastd256_mask ((__v4si) __A,
- (__v8si) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastd256_mask ((__v4si) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_set1_epi32 (__m256i __O, __mmask8 __M, int __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastd256_gpr_mask (__A, (__v8si) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_set1_epi32 (__mmask8 __M, int __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastd256_gpr_mask (__A,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_broadcastd_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastd128_mask ((__v4si) __A,
- (__v4si) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastd128_mask ((__v4si) __A,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_set1_epi32 (__m128i __O, __mmask8 __M, int __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastd128_gpr_mask (__A, (__v4si) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_set1_epi32 (__mmask8 __M, int __A)
-{
- return (__m128i)
- __builtin_ia32_pbroadcastd128_gpr_mask (__A,
- (__v4si) _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcastq_epi64 (__m256i __O, __mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastq256_mask ((__v2di) __A,
- (__v4di) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastq256_mask ((__v2di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_set1_epi64 (__m256i __O, __mmask8 __M, long long __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastq256_gpr_mask (__A, (__v4di) __O,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_set1_epi64 (__mmask8 __M, long long __A)
-{
- return (__m256i) __builtin_ia32_pbroadcastq256_gpr_mask (__A,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_broadcastq_epi64 (__m128i __O, __mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastq128_mask ((__v2di) __A,
- (__v2di) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastq128_mask ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_set1_epi64 (__m128i __O, __mmask8 __M, long long __A)
-{
- return (__m128i) __builtin_ia32_pbroadcastq128_gpr_mask (__A, (__v2di) __O,
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_set1_epi64 (__mmask8 __M, long long __A)
-{
- return (__m128i)
- __builtin_ia32_pbroadcastq128_gpr_mask (__A,
- (__v2di) _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_f32x4 (__m128 __A)
-{
- return (__m256) __builtin_ia32_broadcastf32x4_256_mask ((__v4sf) __A,
- (__v8sf)_mm256_undefined_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcast_f32x4 (__m256 __O, __mmask8 __M, __m128 __A)
-{
- return (__m256) __builtin_ia32_broadcastf32x4_256_mask ((__v4sf) __A,
- (__v8sf) __O,
- __M);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcast_f32x4 (__mmask8 __M, __m128 __A)
-{
- return (__m256) __builtin_ia32_broadcastf32x4_256_mask ((__v4sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_i32x4 (__m128i __A)
-{
- return (__m256i) __builtin_ia32_broadcasti32x4_256_mask ((__v4si)
- __A,
- (__v8si)_mm256_undefined_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_broadcast_i32x4 (__m256i __O, __mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_broadcasti32x4_256_mask ((__v4si)
- __A,
- (__v8si)
- __O, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_broadcast_i32x4 (__mmask8 __M, __m128i __A)
-{
- return (__m256i) __builtin_ia32_broadcasti32x4_256_mask ((__v4si)
- __A,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi8_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxbd256_mask ((__v16qi) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi8_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxbd256_mask ((__v16qi) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi8_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxbd128_mask ((__v16qi) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi8_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxbd128_mask ((__v16qi) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi8_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxbq256_mask ((__v16qi) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi8_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxbq256_mask ((__v16qi) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi8_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxbq128_mask ((__v16qi) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi8_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxbq128_mask ((__v16qi) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi16_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxwd256_mask ((__v8hi) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi16_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxwd256_mask ((__v8hi) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi16_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxwd128_mask ((__v8hi) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi16_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxwd128_mask ((__v8hi) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi16_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxwq256_mask ((__v8hi) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi16_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovsxwq256_mask ((__v8hi) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi16_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxwq128_mask ((__v8hi) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi16_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovsxwq128_mask ((__v8hi) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi32_epi64 (__m256i __W, __mmask8 __U, __m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovsxdq256_mask ((__v4si) __X,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepi32_epi64 (__mmask8 __U, __m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovsxdq256_mask ((__v4si) __X,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi32_epi64 (__m128i __W, __mmask8 __U, __m128i __X)
-{
- return (__m128i) __builtin_ia32_pmovsxdq128_mask ((__v4si) __X,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepi32_epi64 (__mmask8 __U, __m128i __X)
-{
- return (__m128i) __builtin_ia32_pmovsxdq128_mask ((__v4si) __X,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu8_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxbd256_mask ((__v16qi) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu8_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxbd256_mask ((__v16qi) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu8_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxbd128_mask ((__v16qi) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu8_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxbd128_mask ((__v16qi) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu8_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxbq256_mask ((__v16qi) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxbq256_mask ((__v16qi) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu8_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxbq128_mask ((__v16qi) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxbq128_mask ((__v16qi) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu16_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxwd256_mask ((__v8hi) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu16_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxwd256_mask ((__v8hi) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu16_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxwd128_mask ((__v8hi) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu16_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxwd128_mask ((__v8hi) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu16_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxwq256_mask ((__v8hi) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu16_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m256i) __builtin_ia32_pmovzxwq256_mask ((__v8hi) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu16_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxwq128_mask ((__v8hi) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu16_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_pmovzxwq128_mask ((__v8hi) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu32_epi64 (__m256i __W, __mmask8 __U, __m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovzxdq256_mask ((__v4si) __X,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtepu32_epi64 (__mmask8 __U, __m128i __X)
-{
- return (__m256i) __builtin_ia32_pmovzxdq256_mask ((__v4si) __X,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu32_epi64 (__m128i __W, __mmask8 __U, __m128i __X)
-{
- return (__m128i) __builtin_ia32_pmovzxdq128_mask ((__v4si) __X,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtepu32_epi64 (__mmask8 __U, __m128i __X)
-{
- return (__m128i) __builtin_ia32_pmovzxdq128_mask ((__v4si) __X,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rcp14_pd (__m256d __A)
-{
- return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rcp14_pd (__m256d __W, __mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rcp14_pd (__mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rcp14_pd (__m128d __A)
-{
- return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rcp14_pd (__m128d __W, __mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rcp14_pd (__mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rcp14_ps (__m256 __A)
-{
- return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rcp14_ps (__m256 __W, __mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rcp14_ps (__mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rcp14_ps (__m128 __A)
-{
- return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rcp14_ps (__m128 __W, __mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rcp14_ps (__mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rsqrt14_pd (__m256d __A)
-{
- return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rsqrt14_pd (__m256d __W, __mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rsqrt14_pd (__mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rsqrt14_pd (__m128d __A)
-{
- return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rsqrt14_pd (__m128d __W, __mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rsqrt14_pd (__mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rsqrt14_ps (__m256 __A)
-{
- return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rsqrt14_ps (__m256 __W, __mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rsqrt14_ps (__mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rsqrt14_ps (__m128 __A)
-{
- return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rsqrt14_ps (__m128 __W, __mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rsqrt14_ps (__mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sqrt_pd (__m256d __W, __mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_sqrtpd256_mask ((__v4df) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sqrt_pd (__mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_sqrtpd256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sqrt_pd (__m128d __W, __mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_sqrtpd128_mask ((__v2df) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sqrt_pd (__mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_sqrtpd128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sqrt_ps (__m256 __W, __mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_sqrtps256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sqrt_ps (__mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_sqrtps256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sqrt_ps (__m128 __W, __mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_sqrtps128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sqrt_ps (__mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_sqrtps128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_add_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_add_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_add_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_add_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_paddq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sub_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sub_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sub_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sub_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_psubq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_add_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_add_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_add_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_add_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_paddq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sub_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sub_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sub_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sub_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psubq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_getexp_ps (__m256 __A)
-{
- return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_getexp_ps (__m256 __W, __mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_getexp_ps (__mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_getexp_pd (__m256d __A)
-{
- return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_getexp_pd (__m256d __W, __mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_getexp_pd (__mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getexp_ps (__m128 __A)
-{
- return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_getexp_ps (__m128 __W, __mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_getexp_ps (__mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getexp_pd (__m128d __A)
-{
- return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_getexp_pd (__m128d __W, __mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_getexp_pd (__mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srl_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m128i __B)
-{
- return (__m256i) __builtin_ia32_psrld256_mask ((__v8si) __A,
- (__v4si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srl_epi32 (__mmask8 __U, __m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_psrld256_mask ((__v8si) __A,
- (__v4si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srl_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrld128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srl_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrld128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srl_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m128i __B)
-{
- return (__m256i) __builtin_ia32_psrlq256_mask ((__v4di) __A,
- (__v2di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srl_epi64 (__mmask8 __U, __m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_psrlq256_mask ((__v4di) __A,
- (__v2di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srl_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrlq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srl_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrlq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_and_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pandd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_and_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pandd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_scalef_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_scalef_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_scalef_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_scalef_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_scalef_ps (__m256 __W, __mmask8 __U, __m256 __A,
- __m256 __B)
-{
- return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_scalef_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_scalef_pd (__m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_scalef_pd (__m128d __W, __mmask8 __U, __m128d __A,
- __m128d __B)
-{
- return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_scalef_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_scalef_ps (__m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_scalef_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_scalef_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fmadd_pd (__m256d __A, __mmask8 __U, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fmadd_pd (__m256d __A, __m256d __B, __m256d __C,
- __mmask8 __U)
-{
- return (__m256d) __builtin_ia32_vfmaddpd256_mask3 ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fmadd_pd (__mmask8 __U, __m256d __A, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddpd256_maskz ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fmadd_pd (__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fmadd_pd (__m128d __A, __m128d __B, __m128d __C,
- __mmask8 __U)
-{
- return (__m128d) __builtin_ia32_vfmaddpd128_mask3 ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fmadd_pd (__mmask8 __U, __m128d __A, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddpd128_maskz ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fmadd_ps (__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fmadd_ps (__m256 __A, __m256 __B, __m256 __C,
- __mmask8 __U)
-{
- return (__m256) __builtin_ia32_vfmaddps256_mask3 ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fmadd_ps (__mmask8 __U, __m256 __A, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddps256_maskz ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fmadd_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fmadd_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
-{
- return (__m128) __builtin_ia32_vfmaddps128_mask3 ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fmadd_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddps128_maskz ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fmsub_pd (__m256d __A, __mmask8 __U, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddpd256_mask ((__v4df) __A,
- (__v4df) __B,
- -(__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fmsub_pd (__m256d __A, __m256d __B, __m256d __C,
- __mmask8 __U)
-{
- return (__m256d) __builtin_ia32_vfmsubpd256_mask3 ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fmsub_pd (__mmask8 __U, __m256d __A, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddpd256_maskz ((__v4df) __A,
- (__v4df) __B,
- -(__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fmsub_pd (__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddpd128_mask ((__v2df) __A,
- (__v2df) __B,
- -(__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fmsub_pd (__m128d __A, __m128d __B, __m128d __C,
- __mmask8 __U)
-{
- return (__m128d) __builtin_ia32_vfmsubpd128_mask3 ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fmsub_pd (__mmask8 __U, __m128d __A, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddpd128_maskz ((__v2df) __A,
- (__v2df) __B,
- -(__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fmsub_ps (__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- -(__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fmsub_ps (__m256 __A, __m256 __B, __m256 __C,
- __mmask8 __U)
-{
- return (__m256) __builtin_ia32_vfmsubps256_mask3 ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fmsub_ps (__mmask8 __U, __m256 __A, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddps256_maskz ((__v8sf) __A,
- (__v8sf) __B,
- -(__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fmsub_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- -(__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fmsub_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
-{
- return (__m128) __builtin_ia32_vfmsubps128_mask3 ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fmsub_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddps128_maskz ((__v4sf) __A,
- (__v4sf) __B,
- -(__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fmaddsub_pd (__m256d __A, __mmask8 __U, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddsubpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fmaddsub_pd (__m256d __A, __m256d __B, __m256d __C,
- __mmask8 __U)
-{
- return (__m256d) __builtin_ia32_vfmaddsubpd256_mask3 ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fmaddsub_pd (__mmask8 __U, __m256d __A, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddsubpd256_maskz ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fmaddsub_pd (__m128d __A, __mmask8 __U, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddsubpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fmaddsub_pd (__m128d __A, __m128d __B, __m128d __C,
- __mmask8 __U)
-{
- return (__m128d) __builtin_ia32_vfmaddsubpd128_mask3 ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fmaddsub_pd (__mmask8 __U, __m128d __A, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddsubpd128_maskz ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fmaddsub_ps (__m256 __A, __mmask8 __U, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddsubps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fmaddsub_ps (__m256 __A, __m256 __B, __m256 __C,
- __mmask8 __U)
-{
- return (__m256) __builtin_ia32_vfmaddsubps256_mask3 ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fmaddsub_ps (__mmask8 __U, __m256 __A, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddsubps256_maskz ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fmaddsub_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddsubps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fmaddsub_ps (__m128 __A, __m128 __B, __m128 __C,
- __mmask8 __U)
-{
- return (__m128) __builtin_ia32_vfmaddsubps128_mask3 ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fmaddsub_ps (__mmask8 __U, __m128 __A, __m128 __B,
- __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddsubps128_maskz ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fmsubadd_pd (__m256d __A, __mmask8 __U, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddsubpd256_mask ((__v4df) __A,
- (__v4df) __B,
- -(__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fmsubadd_pd (__m256d __A, __m256d __B, __m256d __C,
- __mmask8 __U)
-{
- return (__m256d) __builtin_ia32_vfmsubaddpd256_mask3 ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fmsubadd_pd (__mmask8 __U, __m256d __A, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddsubpd256_maskz ((__v4df) __A,
- (__v4df) __B,
- -(__v4df) __C,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fmsubadd_pd (__m128d __A, __mmask8 __U, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddsubpd128_mask ((__v2df) __A,
- (__v2df) __B,
- -(__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fmsubadd_pd (__m128d __A, __m128d __B, __m128d __C,
- __mmask8 __U)
-{
- return (__m128d) __builtin_ia32_vfmsubaddpd128_mask3 ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fmsubadd_pd (__mmask8 __U, __m128d __A, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddsubpd128_maskz ((__v2df) __A,
- (__v2df) __B,
- -(__v2df) __C,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fmsubadd_ps (__m256 __A, __mmask8 __U, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddsubps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- -(__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fmsubadd_ps (__m256 __A, __m256 __B, __m256 __C,
- __mmask8 __U)
-{
- return (__m256) __builtin_ia32_vfmsubaddps256_mask3 ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fmsubadd_ps (__mmask8 __U, __m256 __A, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddsubps256_maskz ((__v8sf) __A,
- (__v8sf) __B,
- -(__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fmsubadd_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddsubps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- -(__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fmsubadd_ps (__m128 __A, __m128 __B, __m128 __C,
- __mmask8 __U)
-{
- return (__m128) __builtin_ia32_vfmsubaddps128_mask3 ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fmsubadd_ps (__mmask8 __U, __m128 __A, __m128 __B,
- __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddsubps128_maskz ((__v4sf) __A,
- (__v4sf) __B,
- -(__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fnmadd_pd (__m256d __A, __mmask8 __U, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfnmaddpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fnmadd_pd (__m256d __A, __m256d __B, __m256d __C,
- __mmask8 __U)
-{
- return (__m256d) __builtin_ia32_vfmaddpd256_mask3 (-(__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fnmadd_pd (__mmask8 __U, __m256d __A, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddpd256_maskz (-(__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fnmadd_pd (__m128d __A, __mmask8 __U, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfnmaddpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fnmadd_pd (__m128d __A, __m128d __B, __m128d __C,
- __mmask8 __U)
-{
- return (__m128d) __builtin_ia32_vfmaddpd128_mask3 (-(__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fnmadd_pd (__mmask8 __U, __m128d __A, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddpd128_maskz (-(__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fnmadd_ps (__m256 __A, __mmask8 __U, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfnmaddps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fnmadd_ps (__m256 __A, __m256 __B, __m256 __C,
- __mmask8 __U)
-{
- return (__m256) __builtin_ia32_vfmaddps256_mask3 (-(__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fnmadd_ps (__mmask8 __U, __m256 __A, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddps256_maskz (-(__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fnmadd_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfnmaddps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fnmadd_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
-{
- return (__m128) __builtin_ia32_vfmaddps128_mask3 (-(__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fnmadd_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddps128_maskz (-(__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fnmsub_pd (__m256d __A, __mmask8 __U, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfnmsubpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fnmsub_pd (__m256d __A, __m256d __B, __m256d __C,
- __mmask8 __U)
-{
- return (__m256d) __builtin_ia32_vfnmsubpd256_mask3 ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fnmsub_pd (__mmask8 __U, __m256d __A, __m256d __B,
- __m256d __C)
-{
- return (__m256d) __builtin_ia32_vfmaddpd256_maskz (-(__v4df) __A,
- (__v4df) __B,
- -(__v4df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fnmsub_pd (__m128d __A, __mmask8 __U, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfnmsubpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fnmsub_pd (__m128d __A, __m128d __B, __m128d __C,
- __mmask8 __U)
-{
- return (__m128d) __builtin_ia32_vfnmsubpd128_mask3 ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fnmsub_pd (__mmask8 __U, __m128d __A, __m128d __B,
- __m128d __C)
-{
- return (__m128d) __builtin_ia32_vfmaddpd128_maskz (-(__v2df) __A,
- (__v2df) __B,
- -(__v2df) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fnmsub_ps (__m256 __A, __mmask8 __U, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfnmsubps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask3_fnmsub_ps (__m256 __A, __m256 __B, __m256 __C,
- __mmask8 __U)
-{
- return (__m256) __builtin_ia32_vfnmsubps256_mask3 ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fnmsub_ps (__mmask8 __U, __m256 __A, __m256 __B,
- __m256 __C)
-{
- return (__m256) __builtin_ia32_vfmaddps256_maskz (-(__v8sf) __A,
- (__v8sf) __B,
- -(__v8sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fnmsub_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfnmsubps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask3_fnmsub_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
-{
- return (__m128) __builtin_ia32_vfnmsubps128_mask3 ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fnmsub_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
-{
- return (__m128) __builtin_ia32_vfmaddps128_maskz (-(__v4sf) __A,
- (__v4sf) __B,
- -(__v4sf) __C,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_and_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pandd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_and_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pandd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_andnot_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pandnd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_andnot_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pandnd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_andnot_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pandnd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_andnot_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pandnd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_or_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pord256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_or_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pord256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_or_epi32 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pord128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_or_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pord128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_xor_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pxord256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_xor_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pxord256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_xor_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pxord128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_xor_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pxord128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m128d __A)
-{
- return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtpd_ps (__mmask8 __U, __m128d __A)
-{
- return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m256d __A)
-{
- return (__m128) __builtin_ia32_cvtpd2ps256_mask ((__v4df) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtpd_ps (__mmask8 __U, __m256d __A)
-{
- return (__m128) __builtin_ia32_cvtpd2ps256_mask ((__v4df) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtps_epi32 (__m256i __W, __mmask8 __U, __m256 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2dq256_mask ((__v8sf) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtps_epi32 (__mmask8 __U, __m256 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2dq256_mask ((__v8sf) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtps_epi32 (__m128i __W, __mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2dq128_mask ((__v4sf) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtps_epi32 (__mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2dq128_mask ((__v4sf) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtps_epu32 (__m256 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtps_epu32 (__m256i __W, __mmask8 __U, __m256 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtps_epu32 (__mmask8 __U, __m256 __A)
-{
- return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cvtps_epu32 (__m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtps_epu32 (__m128i __W, __mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtps_epu32 (__mmask8 __U, __m128 __A)
-{
- return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_movedup_pd (__m256d __W, __mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_movddup256_mask ((__v4df) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_movedup_pd (__mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_movddup256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_movedup_pd (__m128d __W, __mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_movddup128_mask ((__v2df) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_movedup_pd (__mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_movddup128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_movehdup_ps (__m256 __W, __mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_movshdup256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_movehdup_ps (__mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_movshdup256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_movehdup_ps (__m128 __W, __mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_movshdup128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_movehdup_ps (__mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_movshdup128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_moveldup_ps (__m256 __W, __mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_movsldup256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_moveldup_ps (__mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_movsldup256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_moveldup_ps (__m128 __W, __mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_movsldup128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_moveldup_ps (__mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_movsldup128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpackhi_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckhdq128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpackhi_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckhdq128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpackhi_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckhdq256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpackhi_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckhdq256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpackhi_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckhqdq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpackhi_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckhqdq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpackhi_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckhqdq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpackhi_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckhqdq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpacklo_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckldq128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpacklo_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpckldq128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpacklo_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckldq256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpacklo_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpckldq256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpacklo_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpcklqdq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpacklo_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_punpcklqdq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpacklo_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpcklqdq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpacklo_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_punpcklqdq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpeq_epu32_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __A,
- (__v4si) __B, 0,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpeq_epi32_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpeq_epu32_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __A,
- (__v4si) __B, 0, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpeq_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqd128_mask ((__v4si) __A,
- (__v4si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epu32_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __A,
- (__v8si) __B, 0,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epi32_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpeq_epu32_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __A,
- (__v8si) __B, 0, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpeq_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqd256_mask ((__v8si) __A,
- (__v8si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpeq_epu64_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __A,
- (__v2di) __B, 0,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpeq_epi64_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpeq_epu64_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __A,
- (__v2di) __B, 0, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpeq_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqq128_mask ((__v2di) __A,
- (__v2di) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epu64_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __A,
- (__v4di) __B, 0,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpeq_epi64_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpeq_epu64_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __A,
- (__v4di) __B, 0, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpeq_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpeqq256_mask ((__v4di) __A,
- (__v4di) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpgt_epu32_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __A,
- (__v4si) __B, 6,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpgt_epi32_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpgt_epu32_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __A,
- (__v4si) __B, 6, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpgt_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtd128_mask ((__v4si) __A,
- (__v4si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epu32_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __A,
- (__v8si) __B, 6,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epi32_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpgt_epu32_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __A,
- (__v8si) __B, 6, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpgt_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtd256_mask ((__v8si) __A,
- (__v8si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpgt_epu64_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __A,
- (__v2di) __B, 6,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpgt_epi64_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpgt_epu64_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __A,
- (__v2di) __B, 6, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpgt_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtq128_mask ((__v2di) __A,
- (__v2di) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epu64_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __A,
- (__v4di) __B, 6,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpgt_epi64_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpgt_epu64_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __A,
- (__v4di) __B, 6, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpgt_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_pcmpgtq256_mask ((__v4di) __A,
- (__v4di) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_test_epi32_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmd128 ((__v4si) __A,
- (__v4si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_test_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmd128 ((__v4si) __A,
- (__v4si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_test_epi32_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmd256 ((__v8si) __A,
- (__v8si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_test_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmd256 ((__v8si) __A,
- (__v8si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_test_epi64_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmq128 ((__v2di) __A,
- (__v2di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_test_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmq128 ((__v2di) __A,
- (__v2di) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_test_epi64_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmq256 ((__v4di) __A,
- (__v4di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_test_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ptestmq256 ((__v4di) __A,
- (__v4di) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testn_epi32_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmd128 ((__v4si) __A,
- (__v4si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_testn_epi32_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmd128 ((__v4si) __A,
- (__v4si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testn_epi32_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmd256 ((__v8si) __A,
- (__v8si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_testn_epi32_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmd256 ((__v8si) __A,
- (__v8si) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testn_epi64_mask (__m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmq128 ((__v2di) __A,
- (__v2di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_testn_epi64_mask (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmq128 ((__v2di) __A,
- (__v2di) __B, __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testn_epi64_mask (__m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmq256 ((__v4di) __A,
- (__v4di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_testn_epi64_mask (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__mmask8) __builtin_ia32_ptestnmq256 ((__v4di) __A,
- (__v4di) __B, __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_compress_pd (__m256d __W, __mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_compress_pd (__mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m256d __A)
-{
- __builtin_ia32_compressstoredf256_mask ((__v4df *) __P,
- (__v4df) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_compress_pd (__m128d __W, __mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_compress_pd (__mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m128d __A)
-{
- __builtin_ia32_compressstoredf128_mask ((__v2df *) __P,
- (__v2df) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_compress_ps (__m256 __W, __mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_compress_ps (__mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m256 __A)
-{
- __builtin_ia32_compressstoresf256_mask ((__v8sf *) __P,
- (__v8sf) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_compress_ps (__m128 __W, __mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_compress_ps (__mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m128 __A)
-{
- __builtin_ia32_compressstoresf128_mask ((__v4sf *) __P,
- (__v4sf) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_compress_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_compress_epi64 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m256i __A)
-{
- __builtin_ia32_compressstoredi256_mask ((__v4di *) __P,
- (__v4di) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_compress_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_compress_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m128i __A)
-{
- __builtin_ia32_compressstoredi128_mask ((__v2di *) __P,
- (__v2di) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_compress_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_compress_epi32 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m256i __A)
-{
- __builtin_ia32_compressstoresi256_mask ((__v8si *) __P,
- (__v8si) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_compress_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_compress_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m128i __A)
-{
- __builtin_ia32_compressstoresi128_mask ((__v4si *) __P,
- (__v4si) __A,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_expand_pd (__m256d __W, __mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_expanddf256_mask ((__v4df) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_expand_pd (__mmask8 __U, __m256d __A)
-{
- return (__m256d) __builtin_ia32_expanddf256_maskz ((__v4df) __A,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_expandloadu_pd (__m256d __W, __mmask8 __U, void const *__P)
-{
- return (__m256d) __builtin_ia32_expandloaddf256_mask ((__v4df *) __P,
- (__v4df) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_expandloadu_pd (__mmask8 __U, void const *__P)
-{
- return (__m256d) __builtin_ia32_expandloaddf256_maskz ((__v4df *) __P,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_expand_pd (__m128d __W, __mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_expanddf128_mask ((__v2df) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_expand_pd (__mmask8 __U, __m128d __A)
-{
- return (__m128d) __builtin_ia32_expanddf128_maskz ((__v2df) __A,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_expandloadu_pd (__m128d __W, __mmask8 __U, void const *__P)
-{
- return (__m128d) __builtin_ia32_expandloaddf128_mask ((__v2df *) __P,
- (__v2df) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_expandloadu_pd (__mmask8 __U, void const *__P)
-{
- return (__m128d) __builtin_ia32_expandloaddf128_maskz ((__v2df *) __P,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_expand_ps (__m256 __W, __mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_expandsf256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_expand_ps (__mmask8 __U, __m256 __A)
-{
- return (__m256) __builtin_ia32_expandsf256_maskz ((__v8sf) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_expandloadu_ps (__m256 __W, __mmask8 __U, void const *__P)
-{
- return (__m256) __builtin_ia32_expandloadsf256_mask ((__v8sf *) __P,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_expandloadu_ps (__mmask8 __U, void const *__P)
-{
- return (__m256) __builtin_ia32_expandloadsf256_maskz ((__v8sf *) __P,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_expand_ps (__m128 __W, __mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_expandsf128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_expand_ps (__mmask8 __U, __m128 __A)
-{
- return (__m128) __builtin_ia32_expandsf128_maskz ((__v4sf) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_expandloadu_ps (__m128 __W, __mmask8 __U, void const *__P)
-{
- return (__m128) __builtin_ia32_expandloadsf128_mask ((__v4sf *) __P,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_expandloadu_ps (__mmask8 __U, void const *__P)
-{
- return (__m128) __builtin_ia32_expandloadsf128_maskz ((__v4sf *) __P,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_expand_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_expanddi256_mask ((__v4di) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_expand_epi64 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_expanddi256_maskz ((__v4di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_expandloadu_epi64 (__m256i __W, __mmask8 __U,
- void const *__P)
-{
- return (__m256i) __builtin_ia32_expandloaddi256_mask ((__v4di *) __P,
- (__v4di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_expandloaddi256_maskz ((__v4di *) __P,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_expand_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_expanddi128_mask ((__v2di) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_expand_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_expanddi128_maskz ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_expandloadu_epi64 (__m128i __W, __mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_expandloaddi128_mask ((__v2di *) __P,
- (__v2di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_expandloaddi128_maskz ((__v2di *) __P,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_expand_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_expandsi256_mask ((__v8si) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_expand_epi32 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_expandsi256_maskz ((__v8si) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_expandloadu_epi32 (__m256i __W, __mmask8 __U,
- void const *__P)
-{
- return (__m256i) __builtin_ia32_expandloadsi256_mask ((__v8si *) __P,
- (__v8si) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P)
-{
- return (__m256i) __builtin_ia32_expandloadsi256_maskz ((__v8si *) __P,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_expand_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_expandsi128_mask ((__v4si) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_expand_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_expandsi128_maskz ((__v4si) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_expandloadu_epi32 (__m128i __W, __mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_expandloadsi128_mask ((__v4si *) __P,
- (__v4si) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P)
-{
- return (__m128i) __builtin_ia32_expandloadsi128_maskz ((__v4si *) __P,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutex2var_pd (__m256d __A, __m256i __I, __m256d __B)
-{
- return (__m256d) __builtin_ia32_vpermt2varpd256_mask ((__v4di) __I
- /* idx */ ,
- (__v4df) __A,
- (__v4df) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutex2var_pd (__m256d __A, __mmask8 __U, __m256i __I,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_vpermt2varpd256_mask ((__v4di) __I
- /* idx */ ,
- (__v4df) __A,
- (__v4df) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask2_permutex2var_pd (__m256d __A, __m256i __I, __mmask8 __U,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_vpermi2varpd256_mask ((__v4df) __A,
- (__v4di) __I
- /* idx */ ,
- (__v4df) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutex2var_pd (__mmask8 __U, __m256d __A, __m256i __I,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_vpermt2varpd256_maskz ((__v4di) __I
- /* idx */ ,
- (__v4df) __A,
- (__v4df) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutex2var_ps (__m256 __A, __m256i __I, __m256 __B)
-{
- return (__m256) __builtin_ia32_vpermt2varps256_mask ((__v8si) __I
- /* idx */ ,
- (__v8sf) __A,
- (__v8sf) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutex2var_ps (__m256 __A, __mmask8 __U, __m256i __I,
- __m256 __B)
-{
- return (__m256) __builtin_ia32_vpermt2varps256_mask ((__v8si) __I
- /* idx */ ,
- (__v8sf) __A,
- (__v8sf) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask2_permutex2var_ps (__m256 __A, __m256i __I, __mmask8 __U,
- __m256 __B)
-{
- return (__m256) __builtin_ia32_vpermi2varps256_mask ((__v8sf) __A,
- (__v8si) __I
- /* idx */ ,
- (__v8sf) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutex2var_ps (__mmask8 __U, __m256 __A, __m256i __I,
- __m256 __B)
-{
- return (__m256) __builtin_ia32_vpermt2varps256_maskz ((__v8si) __I
- /* idx */ ,
- (__v8sf) __A,
- (__v8sf) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutex2var_epi64 (__m128i __A, __m128i __I, __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2varq128_mask ((__v2di) __I
- /* idx */ ,
- (__v2di) __A,
- (__v2di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutex2var_epi64 (__m128i __A, __mmask8 __U, __m128i __I,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2varq128_mask ((__v2di) __I
- /* idx */ ,
- (__v2di) __A,
- (__v2di) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask2_permutex2var_epi64 (__m128i __A, __m128i __I, __mmask8 __U,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermi2varq128_mask ((__v2di) __A,
- (__v2di) __I
- /* idx */ ,
- (__v2di) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutex2var_epi64 (__mmask8 __U, __m128i __A, __m128i __I,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2varq128_maskz ((__v2di) __I
- /* idx */ ,
- (__v2di) __A,
- (__v2di) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutex2var_epi32 (__m128i __A, __m128i __I, __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2vard128_mask ((__v4si) __I
- /* idx */ ,
- (__v4si) __A,
- (__v4si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutex2var_epi32 (__m128i __A, __mmask8 __U, __m128i __I,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2vard128_mask ((__v4si) __I
- /* idx */ ,
- (__v4si) __A,
- (__v4si) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask2_permutex2var_epi32 (__m128i __A, __m128i __I, __mmask8 __U,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermi2vard128_mask ((__v4si) __A,
- (__v4si) __I
- /* idx */ ,
- (__v4si) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutex2var_epi32 (__mmask8 __U, __m128i __A, __m128i __I,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_vpermt2vard128_maskz ((__v4si) __I
- /* idx */ ,
- (__v4si) __A,
- (__v4si) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutex2var_epi64 (__m256i __A, __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2varq256_mask ((__v4di) __I
- /* idx */ ,
- (__v4di) __A,
- (__v4di) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutex2var_epi64 (__m256i __A, __mmask8 __U, __m256i __I,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2varq256_mask ((__v4di) __I
- /* idx */ ,
- (__v4di) __A,
- (__v4di) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask2_permutex2var_epi64 (__m256i __A, __m256i __I,
- __mmask8 __U, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermi2varq256_mask ((__v4di) __A,
- (__v4di) __I
- /* idx */ ,
- (__v4di) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutex2var_epi64 (__mmask8 __U, __m256i __A,
- __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2varq256_maskz ((__v4di) __I
- /* idx */ ,
- (__v4di) __A,
- (__v4di) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutex2var_epi32 (__m256i __A, __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2vard256_mask ((__v8si) __I
- /* idx */ ,
- (__v8si) __A,
- (__v8si) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutex2var_epi32 (__m256i __A, __mmask8 __U, __m256i __I,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2vard256_mask ((__v8si) __I
- /* idx */ ,
- (__v8si) __A,
- (__v8si) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask2_permutex2var_epi32 (__m256i __A, __m256i __I,
- __mmask8 __U, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermi2vard256_mask ((__v8si) __A,
- (__v8si) __I
- /* idx */ ,
- (__v8si) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutex2var_epi32 (__mmask8 __U, __m256i __A,
- __m256i __I, __m256i __B)
-{
- return (__m256i) __builtin_ia32_vpermt2vard256_maskz ((__v8si) __I
- /* idx */ ,
- (__v8si) __A,
- (__v8si) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutex2var_pd (__m128d __A, __m128i __I, __m128d __B)
-{
- return (__m128d) __builtin_ia32_vpermt2varpd128_mask ((__v2di) __I
- /* idx */ ,
- (__v2df) __A,
- (__v2df) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutex2var_pd (__m128d __A, __mmask8 __U, __m128i __I,
- __m128d __B)
-{
- return (__m128d) __builtin_ia32_vpermt2varpd128_mask ((__v2di) __I
- /* idx */ ,
- (__v2df) __A,
- (__v2df) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask2_permutex2var_pd (__m128d __A, __m128i __I, __mmask8 __U,
- __m128d __B)
-{
- return (__m128d) __builtin_ia32_vpermi2varpd128_mask ((__v2df) __A,
- (__v2di) __I
- /* idx */ ,
- (__v2df) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutex2var_pd (__mmask8 __U, __m128d __A, __m128i __I,
- __m128d __B)
-{
- return (__m128d) __builtin_ia32_vpermt2varpd128_maskz ((__v2di) __I
- /* idx */ ,
- (__v2df) __A,
- (__v2df) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutex2var_ps (__m128 __A, __m128i __I, __m128 __B)
-{
- return (__m128) __builtin_ia32_vpermt2varps128_mask ((__v4si) __I
- /* idx */ ,
- (__v4sf) __A,
- (__v4sf) __B,
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutex2var_ps (__m128 __A, __mmask8 __U, __m128i __I,
- __m128 __B)
-{
- return (__m128) __builtin_ia32_vpermt2varps128_mask ((__v4si) __I
- /* idx */ ,
- (__v4sf) __A,
- (__v4sf) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask2_permutex2var_ps (__m128 __A, __m128i __I, __mmask8 __U,
- __m128 __B)
-{
- return (__m128) __builtin_ia32_vpermi2varps128_mask ((__v4sf) __A,
- (__v4si) __I
- /* idx */ ,
- (__v4sf) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutex2var_ps (__mmask8 __U, __m128 __A, __m128i __I,
- __m128 __B)
-{
- return (__m128) __builtin_ia32_vpermt2varps128_maskz ((__v4si) __I
- /* idx */ ,
- (__v4sf) __A,
- (__v4sf) __B,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_srav_epi64 (__m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psravq128_mask ((__v2di) __X,
- (__v2di) __Y,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srav_epi64 (__m128i __W, __mmask8 __U, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psravq128_mask ((__v2di) __X,
- (__v2di) __Y,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srav_epi64 (__mmask8 __U, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psravq128_mask ((__v2di) __X,
- (__v2di) __Y,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sllv_epi32 (__m256i __W, __mmask8 __U, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psllv8si_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sllv_epi32 (__mmask8 __U, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psllv8si_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sllv_epi32 (__m128i __W, __mmask8 __U, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psllv4si_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sllv_epi32 (__mmask8 __U, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psllv4si_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sllv_epi64 (__m256i __W, __mmask8 __U, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psllv4di_mask ((__v4di) __X,
- (__v4di) __Y,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sllv_epi64 (__mmask8 __U, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psllv4di_mask ((__v4di) __X,
- (__v4di) __Y,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sllv_epi64 (__m128i __W, __mmask8 __U, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psllv2di_mask ((__v2di) __X,
- (__v2di) __Y,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sllv_epi64 (__mmask8 __U, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psllv2di_mask ((__v2di) __X,
- (__v2di) __Y,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srav_epi32 (__m256i __W, __mmask8 __U, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psrav8si_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srav_epi32 (__mmask8 __U, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psrav8si_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srav_epi32 (__m128i __W, __mmask8 __U, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psrav4si_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srav_epi32 (__mmask8 __U, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psrav4si_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srlv_epi32 (__m256i __W, __mmask8 __U, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psrlv8si_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srlv_epi32 (__mmask8 __U, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psrlv8si_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srlv_epi32 (__m128i __W, __mmask8 __U, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psrlv4si_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srlv_epi32 (__mmask8 __U, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psrlv4si_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srlv_epi64 (__m256i __W, __mmask8 __U, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psrlv4di_mask ((__v4di) __X,
- (__v4di) __Y,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srlv_epi64 (__mmask8 __U, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psrlv4di_mask ((__v4di) __X,
- (__v4di) __Y,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srlv_epi64 (__m128i __W, __mmask8 __U, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psrlv2di_mask ((__v2di) __X,
- (__v2di) __Y,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srlv_epi64 (__mmask8 __U, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_psrlv2di_mask ((__v2di) __X,
- (__v2di) __Y,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rolv_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_prolvd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rolv_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_prolvd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rolv_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_prolvd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rolv_epi32 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_prolvd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rolv_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_prolvd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rolv_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_prolvd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rorv_epi32 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_prorvd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rorv_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_prorvd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rorv_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_prorvd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rorv_epi32 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_prorvd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rorv_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_prorvd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rorv_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_prorvd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rolv_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_prolvq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rolv_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_prolvq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rolv_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_prolvq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rolv_epi64 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_prolvq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rolv_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_prolvq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rolv_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_prolvq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rorv_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_prorvq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rorv_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_prorvq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rorv_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_prorvq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rorv_epi64 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_prorvq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rorv_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_prorvq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rorv_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_prorvq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srav_epi64 (__m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psravq256_mask ((__v4di) __X,
- (__v4di) __Y,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srav_epi64 (__m256i __W, __mmask8 __U, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psravq256_mask ((__v4di) __X,
- (__v4di) __Y,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srav_epi64 (__mmask8 __U, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_psravq256_mask ((__v4di) __X,
- (__v4di) __Y,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_and_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pandq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W, __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_and_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pandq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_pd (),
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_and_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pandq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W, __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_and_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pandq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_pd (),
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_andnot_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pandnq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W, __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_andnot_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pandnq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_pd (),
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_andnot_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pandnq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W, __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_andnot_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pandnq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_pd (),
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_or_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_porq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_or_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_porq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_or_epi64 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_porq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_or_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_porq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_xor_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pxorq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_xor_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pxorq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_xor_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pxorq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_xor_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pxorq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_maxpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_maxpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_maxps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_maxps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_div_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_divps_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_div_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_divps_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_div_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_divpd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_div_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_divpd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_minpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_div_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_divpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_minpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_minps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_div_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_divpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_div_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_divps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_minps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_div_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_divps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_minps_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mul_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_mulps_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_minps_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mul_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_mulps_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_maxps_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_maxps_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_minpd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_minpd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_maxpd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_maxpd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mul_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_mulpd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mul_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_mulpd_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mul_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_mulps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mul_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_mulps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mul_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_mulpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mul_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_mulpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_epi64 (__mmask8 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxsq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_epi64 (__m256i __W, __mmask8 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxsq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminsq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_epi64 (__m256i __W, __mmask8 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminsq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_epi64 (__mmask8 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminsq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_epu64 (__mmask8 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxuq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_epi64 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxsq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_epu64 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxuq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_epu64 (__m256i __W, __mmask8 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxuq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_epu64 (__m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminuq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_epu64 (__m256i __W, __mmask8 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminuq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_epu64 (__mmask8 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminuq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_epi32 (__mmask8 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxsd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_epi32 (__m256i __W, __mmask8 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxsd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_epi32 (__mmask8 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminsd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_epi32 (__m256i __W, __mmask8 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminsd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_max_epu32 (__mmask8 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxud256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_max_epu32 (__m256i __W, __mmask8 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmaxud256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_min_epu32 (__mmask8 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminud256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_min_epu32 (__m256i __W, __mmask8 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pminud256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_epi64 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxsq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_epi64 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxsq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_min_epi64 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminsq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_epi64 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminsq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_epi64 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminsq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_epu64 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxuq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_max_epi64 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxsq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_max_epu64 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxuq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_epu64 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxuq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_min_epu64 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminuq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_epu64 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminuq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_epu64 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminuq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxsd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxsd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminsd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminsd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_max_epu32 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxud128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_max_epu32 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmaxud128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_min_epu32 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminud128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_min_epu32 (__m128i __W, __mmask8 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pminud128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W, __M);
-}
-
-#ifndef __AVX512CD__
-#pragma GCC push_options
-#pragma GCC target("avx512vl,avx512cd")
-#define __DISABLE_AVX512VLCD__
-#endif
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_broadcastmb_epi64 (__mmask8 __A)
-{
- return (__m128i) __builtin_ia32_broadcastmb128 (__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcastmb_epi64 (__mmask8 __A)
-{
- return (__m256i) __builtin_ia32_broadcastmb256 (__A);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_broadcastmw_epi32 (__mmask16 __A)
-{
- return (__m128i) __builtin_ia32_broadcastmw128 (__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcastmw_epi32 (__mmask16 __A)
-{
- return (__m256i) __builtin_ia32_broadcastmw256 (__A);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_lzcnt_epi32 (__m256i __A)
-{
- return (__m256i) __builtin_ia32_vplzcntd_256_mask ((__v8si) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_lzcnt_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_vplzcntd_256_mask ((__v8si) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_lzcnt_epi32 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_vplzcntd_256_mask ((__v8si) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_lzcnt_epi64 (__m256i __A)
-{
- return (__m256i) __builtin_ia32_vplzcntq_256_mask ((__v4di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_lzcnt_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_vplzcntq_256_mask ((__v4di) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_lzcnt_epi64 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_vplzcntq_256_mask ((__v4di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_conflict_epi64 (__m256i __A)
-{
- return (__m256i) __builtin_ia32_vpconflictdi_256_mask ((__v4di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_conflict_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_vpconflictdi_256_mask ((__v4di) __A,
- (__v4di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_conflict_epi64 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_vpconflictdi_256_mask ((__v4di) __A,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_conflict_epi32 (__m256i __A)
-{
- return (__m256i) __builtin_ia32_vpconflictsi_256_mask ((__v8si) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_conflict_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_vpconflictsi_256_mask ((__v8si) __A,
- (__v8si) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_conflict_epi32 (__mmask8 __U, __m256i __A)
-{
- return (__m256i) __builtin_ia32_vpconflictsi_256_mask ((__v8si) __A,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_lzcnt_epi32 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_vplzcntd_128_mask ((__v4si) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_lzcnt_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_vplzcntd_128_mask ((__v4si) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_lzcnt_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_vplzcntd_128_mask ((__v4si) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_lzcnt_epi64 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_vplzcntq_128_mask ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_lzcnt_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_vplzcntq_128_mask ((__v2di) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_lzcnt_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_vplzcntq_128_mask ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_conflict_epi64 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_vpconflictdi_128_mask ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_conflict_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_vpconflictdi_128_mask ((__v2di) __A,
- (__v2di) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_conflict_epi64 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_vpconflictdi_128_mask ((__v2di) __A,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_conflict_epi32 (__m128i __A)
-{
- return (__m128i) __builtin_ia32_vpconflictsi_128_mask ((__v4si) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_conflict_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_vpconflictsi_128_mask ((__v4si) __A,
- (__v4si) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_conflict_epi32 (__mmask8 __U, __m128i __A)
-{
- return (__m128i) __builtin_ia32_vpconflictsi_128_mask ((__v4si) __A,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8)
- __U);
-}
-
-#ifdef __DISABLE_AVX512VLCD__
-#pragma GCC pop_options
-#endif
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpacklo_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_unpcklpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpacklo_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_unpcklpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpacklo_pd (__m128d __W, __mmask8 __U, __m128d __A,
- __m128d __B)
-{
- return (__m128d) __builtin_ia32_unpcklpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpacklo_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_unpcklpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpacklo_ps (__m256 __W, __mmask8 __U, __m256 __A,
- __m256 __B)
-{
- return (__m256) __builtin_ia32_unpcklps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpackhi_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B)
-{
- return (__m256d) __builtin_ia32_unpckhpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpackhi_pd (__mmask8 __U, __m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_unpckhpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpackhi_pd (__m128d __W, __mmask8 __U, __m128d __A,
- __m128d __B)
-{
- return (__m128d) __builtin_ia32_unpckhpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpackhi_pd (__mmask8 __U, __m128d __A, __m128d __B)
-{
- return (__m128d) __builtin_ia32_unpckhpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_unpackhi_ps (__m256 __W, __mmask8 __U, __m256 __A,
- __m256 __B)
-{
- return (__m256) __builtin_ia32_unpckhps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpackhi_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_unpckhps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpackhi_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_unpckhps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpackhi_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_unpckhps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtph_ps (__m128 __W, __mmask8 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_vcvtph2ps_mask ((__v8hi) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtph_ps (__mmask8 __U, __m128i __A)
-{
- return (__m128) __builtin_ia32_vcvtph2ps_mask ((__v8hi) __A,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_unpacklo_ps (__mmask8 __U, __m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_unpcklps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtph_ps (__m256 __W, __mmask8 __U, __m128i __A)
-{
- return (__m256) __builtin_ia32_vcvtph2ps256_mask ((__v8hi) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtph_ps (__mmask8 __U, __m128i __A)
-{
- return (__m256) __builtin_ia32_vcvtph2ps256_mask ((__v8hi) __A,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_unpacklo_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_unpcklps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_unpacklo_ps (__mmask8 __U, __m128 __A, __m128 __B)
-{
- return (__m128) __builtin_ia32_unpcklps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sra_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m128i __B)
-{
- return (__m256i) __builtin_ia32_psrad256_mask ((__v8si) __A,
- (__v4si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sra_epi32 (__mmask8 __U, __m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_psrad256_mask ((__v8si) __A,
- (__v4si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sra_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrad128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sra_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psrad128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sra_epi64 (__m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_psraq256_mask ((__v4di) __A,
- (__v2di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sra_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m128i __B)
-{
- return (__m256i) __builtin_ia32_psraq256_mask ((__v4di) __A,
- (__v2di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sra_epi64 (__mmask8 __U, __m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_psraq256_mask ((__v4di) __A,
- (__v2di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_sra_epi64 (__m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psraq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sra_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psraq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sra_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psraq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sll_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pslld128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sll_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pslld128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_sll_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_psllq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_sll_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_psllq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sll_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m128i __B)
-{
- return (__m256i) __builtin_ia32_pslld256_mask ((__v8si) __A,
- (__v4si) __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sll_epi32 (__mmask8 __U, __m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_pslld256_mask ((__v8si) __A,
- (__v4si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_sll_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m128i __B)
-{
- return (__m256i) __builtin_ia32_psllq256_mask ((__v4di) __A,
- (__v2di) __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_sll_epi64 (__mmask8 __U, __m256i __A, __m128i __B)
-{
- return (__m256i) __builtin_ia32_psllq256_mask ((__v4di) __A,
- (__v2di) __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutexvar_ps (__m256 __W, __mmask8 __U, __m256i __X,
- __m256 __Y)
-{
- return (__m256) __builtin_ia32_permvarsf256_mask ((__v8sf) __Y,
- (__v8si) __X,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutexvar_ps (__mmask8 __U, __m256i __X, __m256 __Y)
-{
- return (__m256) __builtin_ia32_permvarsf256_mask ((__v8sf) __Y,
- (__v8si) __X,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutexvar_pd (__m256i __X, __m256d __Y)
-{
- return (__m256d) __builtin_ia32_permvardf256_mask ((__v4df) __Y,
- (__v4di) __X,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutexvar_pd (__m256d __W, __mmask8 __U, __m256i __X,
- __m256d __Y)
-{
- return (__m256d) __builtin_ia32_permvardf256_mask ((__v4df) __Y,
- (__v4di) __X,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutexvar_pd (__mmask8 __U, __m256i __X, __m256d __Y)
-{
- return (__m256d) __builtin_ia32_permvardf256_mask ((__v4df) __Y,
- (__v4di) __X,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutevar_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256i __C)
-{
- return (__m256d) __builtin_ia32_vpermilvarpd256_mask ((__v4df) __A,
- (__v4di) __C,
- (__v4df) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutevar_pd (__mmask8 __U, __m256d __A, __m256i __C)
-{
- return (__m256d) __builtin_ia32_vpermilvarpd256_mask ((__v4df) __A,
- (__v4di) __C,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutevar_ps (__m256 __W, __mmask8 __U, __m256 __A,
- __m256i __C)
-{
- return (__m256) __builtin_ia32_vpermilvarps256_mask ((__v8sf) __A,
- (__v8si) __C,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutevar_ps (__mmask8 __U, __m256 __A, __m256i __C)
-{
- return (__m256) __builtin_ia32_vpermilvarps256_mask ((__v8sf) __A,
- (__v8si) __C,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutevar_pd (__m128d __W, __mmask8 __U, __m128d __A,
- __m128i __C)
-{
- return (__m128d) __builtin_ia32_vpermilvarpd_mask ((__v2df) __A,
- (__v2di) __C,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutevar_pd (__mmask8 __U, __m128d __A, __m128i __C)
-{
- return (__m128d) __builtin_ia32_vpermilvarpd_mask ((__v2df) __A,
- (__v2di) __C,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permutevar_ps (__m128 __W, __mmask8 __U, __m128 __A,
- __m128i __C)
-{
- return (__m128) __builtin_ia32_vpermilvarps_mask ((__v4sf) __A,
- (__v4si) __C,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permutevar_ps (__mmask8 __U, __m128 __A, __m128i __C)
-{
- return (__m128) __builtin_ia32_vpermilvarps_mask ((__v4sf) __A,
- (__v4si) __C,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mullo_epi32 (__mmask8 __M, __m256i __A, __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmulld256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutexvar_epi64 (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_permvardi256_mask ((__v4di) __Y,
- (__v4di) __X,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mullo_epi32 (__m256i __W, __mmask8 __M, __m256i __A,
- __m256i __B)
-{
- return (__m256i) __builtin_ia32_pmulld256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mullo_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmulld128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mullo_epi32 (__m128i __W, __mmask16 __M, __m128i __A,
- __m128i __B)
-{
- return (__m128i) __builtin_ia32_pmulld128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mul_epi32 (__m256i __W, __mmask8 __M, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmuldq256_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v4di) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mul_epi32 (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmuldq256_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mul_epi32 (__m128i __W, __mmask8 __M, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_pmuldq128_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v2di) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mul_epi32 (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_pmuldq128_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v2di)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutexvar_epi64 (__m256i __W, __mmask8 __M, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_permvardi256_mask ((__v4di) __Y,
- (__v4di) __X,
- (__v4di) __W,
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mul_epu32 (__m256i __W, __mmask8 __M, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmuludq256_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v4di) __W, __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutexvar_epi32 (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_permvarsi256_mask ((__v8si) __Y,
- (__v8si) __X,
- (__v8si)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mul_epu32 (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__m256i) __builtin_ia32_pmuludq256_mask ((__v8si) __X,
- (__v8si) __Y,
- (__v4di)
- _mm256_setzero_si256 (),
- __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_mul_epu32 (__m128i __W, __mmask8 __M, __m128i __X,
- __m128i __Y)
-{
- return (__m128i) __builtin_ia32_pmuludq128_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v2di) __W, __M);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_mul_epu32 (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__m128i) __builtin_ia32_pmuludq128_mask ((__v4si) __X,
- (__v4si) __Y,
- (__v2di)
- _mm_setzero_si128 (),
- __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutexvar_epi32 (__m256i __W, __mmask8 __M, __m256i __X,
- __m256i __Y)
-{
- return (__m256i) __builtin_ia32_permvarsi256_mask ((__v8si) __Y,
- (__v8si) __X,
- (__v8si) __W,
- __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epu32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpneq_epu32_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epu32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmplt_epu32_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epu32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpge_epu32_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epu32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmple_epu32_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epu64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpneq_epu64_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epu64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmplt_epu64_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epu64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpge_epu64_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epu64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmple_epu64_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epi32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpneq_epi32_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epi32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmplt_epi32_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epi32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpge_epi32_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epi32_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmple_epi32_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epi64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpneq_epi64_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epi64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmplt_epi64_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epi64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmpge_epi64_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epi64_mask (__mmask8 __M, __m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmple_epi64_mask (__m256i __X, __m256i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpneq_epu32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpneq_epu32_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmplt_epu32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmplt_epu32_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpge_epu32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpge_epu32_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmple_epu32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmple_epu32_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpneq_epu64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpneq_epu64_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmplt_epu64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmplt_epu64_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpge_epu64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpge_epu64_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmple_epu64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmple_epu64_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpneq_epi32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpneq_epi32_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmplt_epi32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmplt_epi32_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpge_epi32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpge_epi32_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmple_epi32_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmple_epi32_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, 2,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpneq_epi64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 4,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpneq_epi64_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 4,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmplt_epi64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 1,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmplt_epi64_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 1,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmpge_epi64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 5,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmpge_epi64_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 5,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmple_epi64_mask (__mmask8 __M, __m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 2,
- (__mmask8) __M);
-}
-
-extern __inline __mmask8
- __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmple_epi64_mask (__m128i __X, __m128i __Y)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, 2,
- (__mmask8) -1);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutex_epi64 (__m256i __W, __mmask8 __M,
- __m256i __X, const int __I)
-{
- return (__m256i) __builtin_ia32_permdi256_mask ((__v4di) __X,
- __I,
- (__v4di) __W,
- (__mmask8) __M);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutex_epi64 (__mmask8 __M, __m256i __X, const int __I)
-{
- return (__m256i) __builtin_ia32_permdi256_mask ((__v4di) __X,
- __I,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __M);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shuffle_pd (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B, const int __imm)
-{
- return (__m256d) __builtin_ia32_shufpd256_mask ((__v4df) __A,
- (__v4df) __B, __imm,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shuffle_pd (__mmask8 __U, __m256d __A, __m256d __B,
- const int __imm)
-{
- return (__m256d) __builtin_ia32_shufpd256_mask ((__v4df) __A,
- (__v4df) __B, __imm,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_shuffle_pd (__m128d __W, __mmask8 __U, __m128d __A,
- __m128d __B, const int __imm)
-{
- return (__m128d) __builtin_ia32_shufpd128_mask ((__v2df) __A,
- (__v2df) __B, __imm,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_shuffle_pd (__mmask8 __U, __m128d __A, __m128d __B,
- const int __imm)
-{
- return (__m128d) __builtin_ia32_shufpd128_mask ((__v2df) __A,
- (__v2df) __B, __imm,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shuffle_ps (__m256 __W, __mmask8 __U, __m256 __A,
- __m256 __B, const int __imm)
-{
- return (__m256) __builtin_ia32_shufps256_mask ((__v8sf) __A,
- (__v8sf) __B, __imm,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shuffle_ps (__mmask8 __U, __m256 __A, __m256 __B,
- const int __imm)
-{
- return (__m256) __builtin_ia32_shufps256_mask ((__v8sf) __A,
- (__v8sf) __B, __imm,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_shuffle_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B,
- const int __imm)
-{
- return (__m128) __builtin_ia32_shufps128_mask ((__v4sf) __A,
- (__v4sf) __B, __imm,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_shuffle_ps (__mmask8 __U, __m128 __A, __m128 __B,
- const int __imm)
-{
- return (__m128) __builtin_ia32_shufps128_mask ((__v4sf) __A,
- (__v4sf) __B, __imm,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_inserti32x4 (__m256i __A, __m128i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_inserti32x4_256_mask ((__v8si) __A,
- (__v4si) __B,
- __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_inserti32x4 (__m256i __W, __mmask8 __U, __m256i __A,
- __m128i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_inserti32x4_256_mask ((__v8si) __A,
- (__v4si) __B,
- __imm,
- (__v8si) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_inserti32x4 (__mmask8 __U, __m256i __A, __m128i __B,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_inserti32x4_256_mask ((__v8si) __A,
- (__v4si) __B,
- __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_insertf32x4 (__m256 __A, __m128 __B, const int __imm)
-{
- return (__m256) __builtin_ia32_insertf32x4_256_mask ((__v8sf) __A,
- (__v4sf) __B,
- __imm,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_insertf32x4 (__m256 __W, __mmask8 __U, __m256 __A,
- __m128 __B, const int __imm)
-{
- return (__m256) __builtin_ia32_insertf32x4_256_mask ((__v8sf) __A,
- (__v4sf) __B,
- __imm,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_insertf32x4 (__mmask8 __U, __m256 __A, __m128 __B,
- const int __imm)
-{
- return (__m256) __builtin_ia32_insertf32x4_256_mask ((__v8sf) __A,
- (__v4sf) __B,
- __imm,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extracti32x4_epi32 (__m256i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti32x4_256_mask ((__v8si) __A,
- __imm,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_extracti32x4_epi32 (__m128i __W, __mmask8 __U, __m256i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti32x4_256_mask ((__v8si) __A,
- __imm,
- (__v4si) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_extracti32x4_epi32 (__mmask8 __U, __m256i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_extracti32x4_256_mask ((__v8si) __A,
- __imm,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extractf32x4_ps (__m256 __A, const int __imm)
-{
- return (__m128) __builtin_ia32_extractf32x4_256_mask ((__v8sf) __A,
- __imm,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_extractf32x4_ps (__m128 __W, __mmask8 __U, __m256 __A,
- const int __imm)
-{
- return (__m128) __builtin_ia32_extractf32x4_256_mask ((__v8sf) __A,
- __imm,
- (__v4sf) __W,
- (__mmask8)
- __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_extractf32x4_ps (__mmask8 __U, __m256 __A,
- const int __imm)
-{
- return (__m128) __builtin_ia32_extractf32x4_256_mask ((__v8sf) __A,
- __imm,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8)
- __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shuffle_i64x2 (__m256i __A, __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_shuf_i64x2_256_mask ((__v4di) __A,
- (__v4di) __B,
- __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shuffle_i64x2 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_shuf_i64x2_256_mask ((__v4di) __A,
- (__v4di) __B,
- __imm,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shuffle_i64x2 (__mmask8 __U, __m256i __A, __m256i __B,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_shuf_i64x2_256_mask ((__v4di) __A,
- (__v4di) __B,
- __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shuffle_i32x4 (__m256i __A, __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_shuf_i32x4_256_mask ((__v8si) __A,
- (__v8si) __B,
- __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shuffle_i32x4 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_shuf_i32x4_256_mask ((__v8si) __A,
- (__v8si) __B,
- __imm,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shuffle_i32x4 (__mmask8 __U, __m256i __A, __m256i __B,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_shuf_i32x4_256_mask ((__v8si) __A,
- (__v8si) __B,
- __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shuffle_f64x2 (__m256d __A, __m256d __B, const int __imm)
-{
- return (__m256d) __builtin_ia32_shuf_f64x2_256_mask ((__v4df) __A,
- (__v4df) __B,
- __imm,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shuffle_f64x2 (__m256d __W, __mmask8 __U, __m256d __A,
- __m256d __B, const int __imm)
-{
- return (__m256d) __builtin_ia32_shuf_f64x2_256_mask ((__v4df) __A,
- (__v4df) __B,
- __imm,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shuffle_f64x2 (__mmask8 __U, __m256d __A, __m256d __B,
- const int __imm)
-{
- return (__m256d) __builtin_ia32_shuf_f64x2_256_mask ((__v4df) __A,
- (__v4df) __B,
- __imm,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shuffle_f32x4 (__m256 __A, __m256 __B, const int __imm)
-{
- return (__m256) __builtin_ia32_shuf_f32x4_256_mask ((__v8sf) __A,
- (__v8sf) __B,
- __imm,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shuffle_f32x4 (__m256 __W, __mmask8 __U, __m256 __A,
- __m256 __B, const int __imm)
-{
- return (__m256) __builtin_ia32_shuf_f32x4_256_mask ((__v8sf) __A,
- (__v8sf) __B,
- __imm,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shuffle_f32x4 (__mmask8 __U, __m256 __A, __m256 __B,
- const int __imm)
-{
- return (__m256) __builtin_ia32_shuf_f32x4_256_mask ((__v8sf) __A,
- (__v8sf) __B,
- __imm,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_fixupimm_pd (__m256d __A, __m256d __B, __m256i __C,
- const int __imm)
-{
- return (__m256d) __builtin_ia32_fixupimmpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4di) __C,
- __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fixupimm_pd (__m256d __A, __mmask8 __U, __m256d __B,
- __m256i __C, const int __imm)
-{
- return (__m256d) __builtin_ia32_fixupimmpd256_mask ((__v4df) __A,
- (__v4df) __B,
- (__v4di) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fixupimm_pd (__mmask8 __U, __m256d __A, __m256d __B,
- __m256i __C, const int __imm)
-{
- return (__m256d) __builtin_ia32_fixupimmpd256_maskz ((__v4df) __A,
- (__v4df) __B,
- (__v4di) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_fixupimm_ps (__m256 __A, __m256 __B, __m256i __C,
- const int __imm)
-{
- return (__m256) __builtin_ia32_fixupimmps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8si) __C,
- __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_fixupimm_ps (__m256 __A, __mmask8 __U, __m256 __B,
- __m256i __C, const int __imm)
-{
- return (__m256) __builtin_ia32_fixupimmps256_mask ((__v8sf) __A,
- (__v8sf) __B,
- (__v8si) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_fixupimm_ps (__mmask8 __U, __m256 __A, __m256 __B,
- __m256i __C, const int __imm)
-{
- return (__m256) __builtin_ia32_fixupimmps256_maskz ((__v8sf) __A,
- (__v8sf) __B,
- (__v8si) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fixupimm_pd (__m128d __A, __m128d __B, __m128i __C,
- const int __imm)
-{
- return (__m128d) __builtin_ia32_fixupimmpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2di) __C,
- __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fixupimm_pd (__m128d __A, __mmask8 __U, __m128d __B,
- __m128i __C, const int __imm)
-{
- return (__m128d) __builtin_ia32_fixupimmpd128_mask ((__v2df) __A,
- (__v2df) __B,
- (__v2di) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fixupimm_pd (__mmask8 __U, __m128d __A, __m128d __B,
- __m128i __C, const int __imm)
-{
- return (__m128d) __builtin_ia32_fixupimmpd128_maskz ((__v2df) __A,
- (__v2df) __B,
- (__v2di) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_fixupimm_ps (__m128 __A, __m128 __B, __m128i __C, const int __imm)
-{
- return (__m128) __builtin_ia32_fixupimmps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4si) __C,
- __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_fixupimm_ps (__m128 __A, __mmask8 __U, __m128 __B,
- __m128i __C, const int __imm)
-{
- return (__m128) __builtin_ia32_fixupimmps128_mask ((__v4sf) __A,
- (__v4sf) __B,
- (__v4si) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_fixupimm_ps (__mmask8 __U, __m128 __A, __m128 __B,
- __m128i __C, const int __imm)
-{
- return (__m128) __builtin_ia32_fixupimmps128_maskz ((__v4sf) __A,
- (__v4sf) __B,
- (__v4si) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srli_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_psrldi256_mask ((__v8si) __A, __imm,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srli_epi32 (__mmask8 __U, __m256i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_psrldi256_mask ((__v8si) __A, __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srli_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_psrldi128_mask ((__v4si) __A, __imm,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srli_epi32 (__mmask8 __U, __m128i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_psrldi128_mask ((__v4si) __A, __imm,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srli_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_psrlqi256_mask ((__v4di) __A, __imm,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srli_epi64 (__mmask8 __U, __m256i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_psrlqi256_mask ((__v4di) __A, __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srli_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_psrlqi128_mask ((__v2di) __A, __imm,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srli_epi64 (__mmask8 __U, __m128i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_psrlqi128_mask ((__v2di) __A, __imm,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_ternarylogic_epi64 (__m256i __A, __m256i __B, __m256i __C,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pternlogq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __C, __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_ternarylogic_epi64 (__m256i __A, __mmask8 __U,
- __m256i __B, __m256i __C,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pternlogq256_mask ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __C, __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_ternarylogic_epi64 (__mmask8 __U, __m256i __A,
- __m256i __B, __m256i __C,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pternlogq256_maskz ((__v4di) __A,
- (__v4di) __B,
- (__v4di) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_ternarylogic_epi32 (__m256i __A, __m256i __B, __m256i __C,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pternlogd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __C, __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_ternarylogic_epi32 (__m256i __A, __mmask8 __U,
- __m256i __B, __m256i __C,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pternlogd256_mask ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __C, __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_ternarylogic_epi32 (__mmask8 __U, __m256i __A,
- __m256i __B, __m256i __C,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_pternlogd256_maskz ((__v8si) __A,
- (__v8si) __B,
- (__v8si) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_ternarylogic_epi64 (__m128i __A, __m128i __B, __m128i __C,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_pternlogq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __C, __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_ternarylogic_epi64 (__m128i __A, __mmask8 __U,
- __m128i __B, __m128i __C, const int __imm)
-{
- return (__m128i) __builtin_ia32_pternlogq128_mask ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __C, __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_ternarylogic_epi64 (__mmask8 __U, __m128i __A,
- __m128i __B, __m128i __C, const int __imm)
-{
- return (__m128i) __builtin_ia32_pternlogq128_maskz ((__v2di) __A,
- (__v2di) __B,
- (__v2di) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_ternarylogic_epi32 (__m128i __A, __m128i __B, __m128i __C,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_pternlogd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __C, __imm,
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_ternarylogic_epi32 (__m128i __A, __mmask8 __U,
- __m128i __B, __m128i __C, const int __imm)
-{
- return (__m128i) __builtin_ia32_pternlogd128_mask ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __C, __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_ternarylogic_epi32 (__mmask8 __U, __m128i __A,
- __m128i __B, __m128i __C, const int __imm)
-{
- return (__m128i) __builtin_ia32_pternlogd128_maskz ((__v4si) __A,
- (__v4si) __B,
- (__v4si) __C,
- __imm,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_roundscale_ps (__m256 __A, const int __imm)
-{
- return (__m256) __builtin_ia32_rndscaleps_256_mask ((__v8sf) __A,
- __imm,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_roundscale_ps (__m256 __W, __mmask8 __U, __m256 __A,
- const int __imm)
-{
- return (__m256) __builtin_ia32_rndscaleps_256_mask ((__v8sf) __A,
- __imm,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_roundscale_ps (__mmask8 __U, __m256 __A, const int __imm)
-{
- return (__m256) __builtin_ia32_rndscaleps_256_mask ((__v8sf) __A,
- __imm,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_roundscale_pd (__m256d __A, const int __imm)
-{
- return (__m256d) __builtin_ia32_rndscalepd_256_mask ((__v4df) __A,
- __imm,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_roundscale_pd (__m256d __W, __mmask8 __U, __m256d __A,
- const int __imm)
-{
- return (__m256d) __builtin_ia32_rndscalepd_256_mask ((__v4df) __A,
- __imm,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_roundscale_pd (__mmask8 __U, __m256d __A, const int __imm)
-{
- return (__m256d) __builtin_ia32_rndscalepd_256_mask ((__v4df) __A,
- __imm,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_roundscale_ps (__m128 __A, const int __imm)
-{
- return (__m128) __builtin_ia32_rndscaleps_128_mask ((__v4sf) __A,
- __imm,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_roundscale_ps (__m128 __W, __mmask8 __U, __m128 __A,
- const int __imm)
-{
- return (__m128) __builtin_ia32_rndscaleps_128_mask ((__v4sf) __A,
- __imm,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_roundscale_ps (__mmask8 __U, __m128 __A, const int __imm)
-{
- return (__m128) __builtin_ia32_rndscaleps_128_mask ((__v4sf) __A,
- __imm,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_roundscale_pd (__m128d __A, const int __imm)
-{
- return (__m128d) __builtin_ia32_rndscalepd_128_mask ((__v2df) __A,
- __imm,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_roundscale_pd (__m128d __W, __mmask8 __U, __m128d __A,
- const int __imm)
-{
- return (__m128d) __builtin_ia32_rndscalepd_128_mask ((__v2df) __A,
- __imm,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_roundscale_pd (__mmask8 __U, __m128d __A, const int __imm)
-{
- return (__m128d) __builtin_ia32_rndscalepd_128_mask ((__v2df) __A,
- __imm,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_getmant_ps (__m256 __A, _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m256) __builtin_ia32_getmantps256_mask ((__v8sf) __A,
- (__C << 2) | __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_getmant_ps (__m256 __W, __mmask8 __U, __m256 __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m256) __builtin_ia32_getmantps256_mask ((__v8sf) __A,
- (__C << 2) | __B,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_getmant_ps (__mmask8 __U, __m256 __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m256) __builtin_ia32_getmantps256_mask ((__v8sf) __A,
- (__C << 2) | __B,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getmant_ps (__m128 __A, _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m128) __builtin_ia32_getmantps128_mask ((__v4sf) __A,
- (__C << 2) | __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) -1);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_getmant_ps (__m128 __W, __mmask8 __U, __m128 __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m128) __builtin_ia32_getmantps128_mask ((__v4sf) __A,
- (__C << 2) | __B,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_getmant_ps (__mmask8 __U, __m128 __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m128) __builtin_ia32_getmantps128_mask ((__v4sf) __A,
- (__C << 2) | __B,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_getmant_pd (__m256d __A, _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m256d) __builtin_ia32_getmantpd256_mask ((__v4df) __A,
- (__C << 2) | __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_getmant_pd (__m256d __W, __mmask8 __U, __m256d __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m256d) __builtin_ia32_getmantpd256_mask ((__v4df) __A,
- (__C << 2) | __B,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_getmant_pd (__mmask8 __U, __m256d __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m256d) __builtin_ia32_getmantpd256_mask ((__v4df) __A,
- (__C << 2) | __B,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_getmant_pd (__m128d __A, _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m128d) __builtin_ia32_getmantpd128_mask ((__v2df) __A,
- (__C << 2) | __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) -1);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_getmant_pd (__m128d __W, __mmask8 __U, __m128d __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m128d) __builtin_ia32_getmantpd128_mask ((__v2df) __A,
- (__C << 2) | __B,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_getmant_pd (__mmask8 __U, __m128d __A,
- _MM_MANTISSA_NORM_ENUM __B,
- _MM_MANTISSA_SIGN_ENUM __C)
-{
- return (__m128d) __builtin_ia32_getmantpd128_mask ((__v2df) __A,
- (__C << 2) | __B,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mmask_i32gather_ps (__m256 __v1_old, __mmask8 __mask,
- __m256i __index, void const *__addr,
- int __scale)
-{
- return (__m256) __builtin_ia32_gather3siv8sf ((__v8sf) __v1_old,
- __addr,
- (__v8si) __index,
- __mask, __scale);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mmask_i32gather_ps (__m128 __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m128) __builtin_ia32_gather3siv4sf ((__v4sf) __v1_old,
- __addr,
- (__v4si) __index,
- __mask, __scale);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mmask_i32gather_pd (__m256d __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m256d) __builtin_ia32_gather3siv4df ((__v4df) __v1_old,
- __addr,
- (__v4si) __index,
- __mask, __scale);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mmask_i32gather_pd (__m128d __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m128d) __builtin_ia32_gather3siv2df ((__v2df) __v1_old,
- __addr,
- (__v4si) __index,
- __mask, __scale);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mmask_i64gather_ps (__m128 __v1_old, __mmask8 __mask,
- __m256i __index, void const *__addr,
- int __scale)
-{
- return (__m128) __builtin_ia32_gather3div8sf ((__v4sf) __v1_old,
- __addr,
- (__v4di) __index,
- __mask, __scale);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mmask_i64gather_ps (__m128 __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m128) __builtin_ia32_gather3div4sf ((__v4sf) __v1_old,
- __addr,
- (__v2di) __index,
- __mask, __scale);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mmask_i64gather_pd (__m256d __v1_old, __mmask8 __mask,
- __m256i __index, void const *__addr,
- int __scale)
-{
- return (__m256d) __builtin_ia32_gather3div4df ((__v4df) __v1_old,
- __addr,
- (__v4di) __index,
- __mask, __scale);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mmask_i64gather_pd (__m128d __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m128d) __builtin_ia32_gather3div2df ((__v2df) __v1_old,
- __addr,
- (__v2di) __index,
- __mask, __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mmask_i32gather_epi32 (__m256i __v1_old, __mmask8 __mask,
- __m256i __index, void const *__addr,
- int __scale)
-{
- return (__m256i) __builtin_ia32_gather3siv8si ((__v8si) __v1_old,
- __addr,
- (__v8si) __index,
- __mask, __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mmask_i32gather_epi32 (__m128i __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m128i) __builtin_ia32_gather3siv4si ((__v4si) __v1_old,
- __addr,
- (__v4si) __index,
- __mask, __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mmask_i32gather_epi64 (__m256i __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m256i) __builtin_ia32_gather3siv4di ((__v4di) __v1_old,
- __addr,
- (__v4si) __index,
- __mask, __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mmask_i32gather_epi64 (__m128i __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m128i) __builtin_ia32_gather3siv2di ((__v2di) __v1_old,
- __addr,
- (__v4si) __index,
- __mask, __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mmask_i64gather_epi32 (__m128i __v1_old, __mmask8 __mask,
- __m256i __index, void const *__addr,
- int __scale)
-{
- return (__m128i) __builtin_ia32_gather3div8si ((__v4si) __v1_old,
- __addr,
- (__v4di) __index,
- __mask, __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mmask_i64gather_epi32 (__m128i __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m128i) __builtin_ia32_gather3div4si ((__v4si) __v1_old,
- __addr,
- (__v2di) __index,
- __mask, __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mmask_i64gather_epi64 (__m256i __v1_old, __mmask8 __mask,
- __m256i __index, void const *__addr,
- int __scale)
-{
- return (__m256i) __builtin_ia32_gather3div4di ((__v4di) __v1_old,
- __addr,
- (__v4di) __index,
- __mask, __scale);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mmask_i64gather_epi64 (__m128i __v1_old, __mmask8 __mask,
- __m128i __index, void const *__addr,
- int __scale)
-{
- return (__m128i) __builtin_ia32_gather3div2di ((__v2di) __v1_old,
- __addr,
- (__v2di) __index,
- __mask, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i32scatter_ps (void *__addr, __m256i __index,
- __m256 __v1, const int __scale)
-{
- __builtin_ia32_scattersiv8sf (__addr, (__mmask8) 0xFF,
- (__v8si) __index, (__v8sf) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i32scatter_ps (void *__addr, __mmask8 __mask,
- __m256i __index, __m256 __v1,
- const int __scale)
-{
- __builtin_ia32_scattersiv8sf (__addr, __mask, (__v8si) __index,
- (__v8sf) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i32scatter_ps (void *__addr, __m128i __index, __m128 __v1,
- const int __scale)
-{
- __builtin_ia32_scattersiv4sf (__addr, (__mmask8) 0xFF,
- (__v4si) __index, (__v4sf) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i32scatter_ps (void *__addr, __mmask8 __mask,
- __m128i __index, __m128 __v1,
- const int __scale)
-{
- __builtin_ia32_scattersiv4sf (__addr, __mask, (__v4si) __index,
- (__v4sf) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i32scatter_pd (void *__addr, __m128i __index,
- __m256d __v1, const int __scale)
-{
- __builtin_ia32_scattersiv4df (__addr, (__mmask8) 0xFF,
- (__v4si) __index, (__v4df) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i32scatter_pd (void *__addr, __mmask8 __mask,
- __m128i __index, __m256d __v1,
- const int __scale)
-{
- __builtin_ia32_scattersiv4df (__addr, __mask, (__v4si) __index,
- (__v4df) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i32scatter_pd (void *__addr, __m128i __index,
- __m128d __v1, const int __scale)
-{
- __builtin_ia32_scattersiv2df (__addr, (__mmask8) 0xFF,
- (__v4si) __index, (__v2df) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i32scatter_pd (void *__addr, __mmask8 __mask,
- __m128i __index, __m128d __v1,
- const int __scale)
-{
- __builtin_ia32_scattersiv2df (__addr, __mask, (__v4si) __index,
- (__v2df) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i64scatter_ps (void *__addr, __m256i __index,
- __m128 __v1, const int __scale)
-{
- __builtin_ia32_scatterdiv8sf (__addr, (__mmask8) 0xFF,
- (__v4di) __index, (__v4sf) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i64scatter_ps (void *__addr, __mmask8 __mask,
- __m256i __index, __m128 __v1,
- const int __scale)
-{
- __builtin_ia32_scatterdiv8sf (__addr, __mask, (__v4di) __index,
- (__v4sf) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i64scatter_ps (void *__addr, __m128i __index, __m128 __v1,
- const int __scale)
-{
- __builtin_ia32_scatterdiv4sf (__addr, (__mmask8) 0xFF,
- (__v2di) __index, (__v4sf) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i64scatter_ps (void *__addr, __mmask8 __mask,
- __m128i __index, __m128 __v1,
- const int __scale)
-{
- __builtin_ia32_scatterdiv4sf (__addr, __mask, (__v2di) __index,
- (__v4sf) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i64scatter_pd (void *__addr, __m256i __index,
- __m256d __v1, const int __scale)
-{
- __builtin_ia32_scatterdiv4df (__addr, (__mmask8) 0xFF,
- (__v4di) __index, (__v4df) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i64scatter_pd (void *__addr, __mmask8 __mask,
- __m256i __index, __m256d __v1,
- const int __scale)
-{
- __builtin_ia32_scatterdiv4df (__addr, __mask, (__v4di) __index,
- (__v4df) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i64scatter_pd (void *__addr, __m128i __index,
- __m128d __v1, const int __scale)
-{
- __builtin_ia32_scatterdiv2df (__addr, (__mmask8) 0xFF,
- (__v2di) __index, (__v2df) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i64scatter_pd (void *__addr, __mmask8 __mask,
- __m128i __index, __m128d __v1,
- const int __scale)
-{
- __builtin_ia32_scatterdiv2df (__addr, __mask, (__v2di) __index,
- (__v2df) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i32scatter_epi32 (void *__addr, __m256i __index,
- __m256i __v1, const int __scale)
-{
- __builtin_ia32_scattersiv8si (__addr, (__mmask8) 0xFF,
- (__v8si) __index, (__v8si) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i32scatter_epi32 (void *__addr, __mmask8 __mask,
- __m256i __index, __m256i __v1,
- const int __scale)
-{
- __builtin_ia32_scattersiv8si (__addr, __mask, (__v8si) __index,
- (__v8si) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i32scatter_epi32 (void *__addr, __m128i __index,
- __m128i __v1, const int __scale)
-{
- __builtin_ia32_scattersiv4si (__addr, (__mmask8) 0xFF,
- (__v4si) __index, (__v4si) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i32scatter_epi32 (void *__addr, __mmask8 __mask,
- __m128i __index, __m128i __v1,
- const int __scale)
-{
- __builtin_ia32_scattersiv4si (__addr, __mask, (__v4si) __index,
- (__v4si) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i32scatter_epi64 (void *__addr, __m128i __index,
- __m256i __v1, const int __scale)
-{
- __builtin_ia32_scattersiv4di (__addr, (__mmask8) 0xFF,
- (__v4si) __index, (__v4di) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i32scatter_epi64 (void *__addr, __mmask8 __mask,
- __m128i __index, __m256i __v1,
- const int __scale)
-{
- __builtin_ia32_scattersiv4di (__addr, __mask, (__v4si) __index,
- (__v4di) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i32scatter_epi64 (void *__addr, __m128i __index,
- __m128i __v1, const int __scale)
-{
- __builtin_ia32_scattersiv2di (__addr, (__mmask8) 0xFF,
- (__v4si) __index, (__v2di) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i32scatter_epi64 (void *__addr, __mmask8 __mask,
- __m128i __index, __m128i __v1,
- const int __scale)
-{
- __builtin_ia32_scattersiv2di (__addr, __mask, (__v4si) __index,
- (__v2di) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i64scatter_epi32 (void *__addr, __m256i __index,
- __m128i __v1, const int __scale)
-{
- __builtin_ia32_scatterdiv8si (__addr, (__mmask8) 0xFF,
- (__v4di) __index, (__v4si) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i64scatter_epi32 (void *__addr, __mmask8 __mask,
- __m256i __index, __m128i __v1,
- const int __scale)
-{
- __builtin_ia32_scatterdiv8si (__addr, __mask, (__v4di) __index,
- (__v4si) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i64scatter_epi32 (void *__addr, __m128i __index,
- __m128i __v1, const int __scale)
-{
- __builtin_ia32_scatterdiv4si (__addr, (__mmask8) 0xFF,
- (__v2di) __index, (__v4si) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i64scatter_epi32 (void *__addr, __mmask8 __mask,
- __m128i __index, __m128i __v1,
- const int __scale)
-{
- __builtin_ia32_scatterdiv4si (__addr, __mask, (__v2di) __index,
- (__v4si) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_i64scatter_epi64 (void *__addr, __m256i __index,
- __m256i __v1, const int __scale)
-{
- __builtin_ia32_scatterdiv4di (__addr, (__mmask8) 0xFF,
- (__v4di) __index, (__v4di) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_i64scatter_epi64 (void *__addr, __mmask8 __mask,
- __m256i __index, __m256i __v1,
- const int __scale)
-{
- __builtin_ia32_scatterdiv4di (__addr, __mask, (__v4di) __index,
- (__v4di) __v1, __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_i64scatter_epi64 (void *__addr, __m128i __index,
- __m128i __v1, const int __scale)
-{
- __builtin_ia32_scatterdiv2di (__addr, (__mmask8) 0xFF,
- (__v2di) __index, (__v2di) __v1,
- __scale);
-}
-
-extern __inline void
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_i64scatter_epi64 (void *__addr, __mmask8 __mask,
- __m128i __index, __m128i __v1,
- const int __scale)
-{
- __builtin_ia32_scatterdiv2di (__addr, __mask, (__v2di) __index,
- (__v2di) __v1, __scale);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_shuffle_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- _MM_PERM_ENUM __mask)
-{
- return (__m256i) __builtin_ia32_pshufd256_mask ((__v8si) __A, __mask,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_shuffle_epi32 (__mmask8 __U, __m256i __A,
- _MM_PERM_ENUM __mask)
-{
- return (__m256i) __builtin_ia32_pshufd256_mask ((__v8si) __A, __mask,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_shuffle_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- _MM_PERM_ENUM __mask)
-{
- return (__m128i) __builtin_ia32_pshufd128_mask ((__v4si) __A, __mask,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_shuffle_epi32 (__mmask8 __U, __m128i __A,
- _MM_PERM_ENUM __mask)
-{
- return (__m128i) __builtin_ia32_pshufd128_mask ((__v4si) __A, __mask,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rol_epi32 (__m256i __A, const int __B)
-{
- return (__m256i) __builtin_ia32_prold256_mask ((__v8si) __A, __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rol_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- const int __B)
-{
- return (__m256i) __builtin_ia32_prold256_mask ((__v8si) __A, __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rol_epi32 (__mmask8 __U, __m256i __A, const int __B)
-{
- return (__m256i) __builtin_ia32_prold256_mask ((__v8si) __A, __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rol_epi32 (__m128i __A, const int __B)
-{
- return (__m128i) __builtin_ia32_prold128_mask ((__v4si) __A, __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rol_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __B)
-{
- return (__m128i) __builtin_ia32_prold128_mask ((__v4si) __A, __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rol_epi32 (__mmask8 __U, __m128i __A, const int __B)
-{
- return (__m128i) __builtin_ia32_prold128_mask ((__v4si) __A, __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_ror_epi32 (__m256i __A, const int __B)
-{
- return (__m256i) __builtin_ia32_prord256_mask ((__v8si) __A, __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_ror_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- const int __B)
-{
- return (__m256i) __builtin_ia32_prord256_mask ((__v8si) __A, __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_ror_epi32 (__mmask8 __U, __m256i __A, const int __B)
-{
- return (__m256i) __builtin_ia32_prord256_mask ((__v8si) __A, __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_ror_epi32 (__m128i __A, const int __B)
-{
- return (__m128i) __builtin_ia32_prord128_mask ((__v4si) __A, __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_ror_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __B)
-{
- return (__m128i) __builtin_ia32_prord128_mask ((__v4si) __A, __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_ror_epi32 (__mmask8 __U, __m128i __A, const int __B)
-{
- return (__m128i) __builtin_ia32_prord128_mask ((__v4si) __A, __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rol_epi64 (__m256i __A, const int __B)
-{
- return (__m256i) __builtin_ia32_prolq256_mask ((__v4di) __A, __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_rol_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- const int __B)
-{
- return (__m256i) __builtin_ia32_prolq256_mask ((__v4di) __A, __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_rol_epi64 (__mmask8 __U, __m256i __A, const int __B)
-{
- return (__m256i) __builtin_ia32_prolq256_mask ((__v4di) __A, __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_rol_epi64 (__m128i __A, const int __B)
-{
- return (__m128i) __builtin_ia32_prolq128_mask ((__v2di) __A, __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_rol_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __B)
-{
- return (__m128i) __builtin_ia32_prolq128_mask ((__v2di) __A, __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_rol_epi64 (__mmask8 __U, __m128i __A, const int __B)
-{
- return (__m128i) __builtin_ia32_prolq128_mask ((__v2di) __A, __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_ror_epi64 (__m256i __A, const int __B)
-{
- return (__m256i) __builtin_ia32_prorq256_mask ((__v4di) __A, __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_ror_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- const int __B)
-{
- return (__m256i) __builtin_ia32_prorq256_mask ((__v4di) __A, __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_ror_epi64 (__mmask8 __U, __m256i __A, const int __B)
-{
- return (__m256i) __builtin_ia32_prorq256_mask ((__v4di) __A, __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_ror_epi64 (__m128i __A, const int __B)
-{
- return (__m128i) __builtin_ia32_prorq128_mask ((__v2di) __A, __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_ror_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __B)
-{
- return (__m128i) __builtin_ia32_prorq128_mask ((__v2di) __A, __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_ror_epi64 (__mmask8 __U, __m128i __A, const int __B)
-{
- return (__m128i) __builtin_ia32_prorq128_mask ((__v2di) __A, __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_alignr_epi32 (__m128i __A, __m128i __B, const int __imm)
-{
- return (__m128i) __builtin_ia32_alignd128_mask ((__v4si) __A,
- (__v4si) __B, __imm,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_alignr_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B, const int __imm)
-{
- return (__m128i) __builtin_ia32_alignd128_mask ((__v4si) __A,
- (__v4si) __B, __imm,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_alignr_epi32 (__mmask8 __U, __m128i __A, __m128i __B,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_alignd128_mask ((__v4si) __A,
- (__v4si) __B, __imm,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_alignr_epi64 (__m128i __A, __m128i __B, const int __imm)
-{
- return (__m128i) __builtin_ia32_alignq128_mask ((__v2di) __A,
- (__v2di) __B, __imm,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_alignr_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- __m128i __B, const int __imm)
-{
- return (__m128i) __builtin_ia32_alignq128_mask ((__v2di) __A,
- (__v2di) __B, __imm,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_alignr_epi64 (__mmask8 __U, __m128i __A, __m128i __B,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_alignq128_mask ((__v2di) __A,
- (__v2di) __B, __imm,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_alignr_epi32 (__m256i __A, __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_alignd256_mask ((__v8si) __A,
- (__v8si) __B, __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_alignr_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_alignd256_mask ((__v8si) __A,
- (__v8si) __B, __imm,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_alignr_epi32 (__mmask8 __U, __m256i __A, __m256i __B,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_alignd256_mask ((__v8si) __A,
- (__v8si) __B, __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_alignr_epi64 (__m256i __A, __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_alignq256_mask ((__v4di) __A,
- (__v4di) __B, __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_alignr_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- __m256i __B, const int __imm)
-{
- return (__m256i) __builtin_ia32_alignq256_mask ((__v4di) __A,
- (__v4di) __B, __imm,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_alignr_epi64 (__mmask8 __U, __m256i __A, __m256i __B,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_alignq256_mask ((__v4di) __A,
- (__v4di) __B, __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtps_ph (__m128i __W, __mmask8 __U, __m128 __A,
- const int __I)
-{
- return (__m128i) __builtin_ia32_vcvtps2ph_mask ((__v4sf) __A, __I,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_cvtps_ph (__mmask8 __U, __m128 __A, const int __I)
-{
- return (__m128i) __builtin_ia32_vcvtps2ph_mask ((__v4sf) __A, __I,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtps_ph (__m128i __W, __mmask8 __U, __m256 __A,
- const int __I)
-{
- return (__m128i) __builtin_ia32_vcvtps2ph256_mask ((__v8sf) __A, __I,
- (__v8hi) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_cvtps_ph (__mmask8 __U, __m256 __A, const int __I)
-{
- return (__m128i) __builtin_ia32_vcvtps2ph256_mask ((__v8sf) __A, __I,
- (__v8hi)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srai_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_psradi256_mask ((__v8si) __A, __imm,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srai_epi32 (__mmask8 __U, __m256i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_psradi256_mask ((__v8si) __A, __imm,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srai_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_psradi128_mask ((__v4si) __A, __imm,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srai_epi32 (__mmask8 __U, __m128i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_psradi128_mask ((__v4si) __A, __imm,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_srai_epi64 (__m256i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_psraqi256_mask ((__v4di) __A, __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) -1);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_srai_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- const int __imm)
-{
- return (__m256i) __builtin_ia32_psraqi256_mask ((__v4di) __A, __imm,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_srai_epi64 (__mmask8 __U, __m256i __A, const int __imm)
-{
- return (__m256i) __builtin_ia32_psraqi256_mask ((__v4di) __A, __imm,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_srai_epi64 (__m128i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_psraqi128_mask ((__v2di) __A, __imm,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) -1);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_srai_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
- const int __imm)
-{
- return (__m128i) __builtin_ia32_psraqi128_mask ((__v2di) __A, __imm,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_srai_epi64 (__mmask8 __U, __m128i __A, const int __imm)
-{
- return (__m128i) __builtin_ia32_psraqi128_mask ((__v2di) __A, __imm,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_slli_epi32 (__m128i __W, __mmask8 __U, __m128i __A, int __B)
-{
- return (__m128i) __builtin_ia32_pslldi128_mask ((__v4si) __A, __B,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_slli_epi32 (__mmask8 __U, __m128i __A, int __B)
-{
- return (__m128i) __builtin_ia32_pslldi128_mask ((__v4si) __A, __B,
- (__v4si)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_slli_epi64 (__m128i __W, __mmask8 __U, __m128i __A, int __B)
-{
- return (__m128i) __builtin_ia32_psllqi128_mask ((__v2di) __A, __B,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_slli_epi64 (__mmask8 __U, __m128i __A, int __B)
-{
- return (__m128i) __builtin_ia32_psllqi128_mask ((__v2di) __A, __B,
- (__v2di)
- _mm_setzero_si128 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_slli_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
- int __B)
-{
- return (__m256i) __builtin_ia32_pslldi256_mask ((__v8si) __A, __B,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_slli_epi32 (__mmask8 __U, __m256i __A, int __B)
-{
- return (__m256i) __builtin_ia32_pslldi256_mask ((__v8si) __A, __B,
- (__v8si)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_slli_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
- int __B)
-{
- return (__m256i) __builtin_ia32_psllqi256_mask ((__v4di) __A, __B,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_slli_epi64 (__mmask8 __U, __m256i __A, int __B)
-{
- return (__m256i) __builtin_ia32_psllqi256_mask ((__v4di) __A, __B,
- (__v4di)
- _mm256_setzero_si256 (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permutex_pd (__m256d __W, __mmask8 __U, __m256d __X,
- const int __imm)
-{
- return (__m256d) __builtin_ia32_permdf256_mask ((__v4df) __X, __imm,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permutex_pd (__mmask8 __U, __m256d __X, const int __imm)
-{
- return (__m256d) __builtin_ia32_permdf256_mask ((__v4df) __X, __imm,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permute_pd (__m256d __W, __mmask8 __U, __m256d __X,
- const int __C)
-{
- return (__m256d) __builtin_ia32_vpermilpd256_mask ((__v4df) __X, __C,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permute_pd (__mmask8 __U, __m256d __X, const int __C)
-{
- return (__m256d) __builtin_ia32_vpermilpd256_mask ((__v4df) __X, __C,
- (__v4df)
- _mm256_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permute_pd (__m128d __W, __mmask8 __U, __m128d __X,
- const int __C)
-{
- return (__m128d) __builtin_ia32_vpermilpd_mask ((__v2df) __X, __C,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permute_pd (__mmask8 __U, __m128d __X, const int __C)
-{
- return (__m128d) __builtin_ia32_vpermilpd_mask ((__v2df) __X, __C,
- (__v2df)
- _mm_setzero_pd (),
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_permute_ps (__m256 __W, __mmask8 __U, __m256 __X,
- const int __C)
-{
- return (__m256) __builtin_ia32_vpermilps256_mask ((__v8sf) __X, __C,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_permute_ps (__mmask8 __U, __m256 __X, const int __C)
-{
- return (__m256) __builtin_ia32_vpermilps256_mask ((__v8sf) __X, __C,
- (__v8sf)
- _mm256_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_permute_ps (__m128 __W, __mmask8 __U, __m128 __X,
- const int __C)
-{
- return (__m128) __builtin_ia32_vpermilps_mask ((__v4sf) __X, __C,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_permute_ps (__mmask8 __U, __m128 __X, const int __C)
-{
- return (__m128) __builtin_ia32_vpermilps_mask ((__v4sf) __X, __C,
- (__v4sf)
- _mm_setzero_ps (),
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_blend_pd (__mmask8 __U, __m256d __A, __m256d __W)
-{
- return (__m256d) __builtin_ia32_blendmpd_256_mask ((__v4df) __A,
- (__v4df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_blend_ps (__mmask8 __U, __m256 __A, __m256 __W)
-{
- return (__m256) __builtin_ia32_blendmps_256_mask ((__v8sf) __A,
- (__v8sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_blend_epi64 (__mmask8 __U, __m256i __A, __m256i __W)
-{
- return (__m256i) __builtin_ia32_blendmq_256_mask ((__v4di) __A,
- (__v4di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m256i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_blend_epi32 (__mmask8 __U, __m256i __A, __m256i __W)
-{
- return (__m256i) __builtin_ia32_blendmd_256_mask ((__v8si) __A,
- (__v8si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_blend_pd (__mmask8 __U, __m128d __A, __m128d __W)
-{
- return (__m128d) __builtin_ia32_blendmpd_128_mask ((__v2df) __A,
- (__v2df) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_blend_ps (__mmask8 __U, __m128 __A, __m128 __W)
-{
- return (__m128) __builtin_ia32_blendmps_128_mask ((__v4sf) __A,
- (__v4sf) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_blend_epi64 (__mmask8 __U, __m128i __A, __m128i __W)
-{
- return (__m128i) __builtin_ia32_blendmq_128_mask ((__v2di) __A,
- (__v2di) __W,
- (__mmask8) __U);
-}
-
-extern __inline __m128i
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_blend_epi32 (__mmask8 __U, __m128i __A, __m128i __W)
-{
- return (__m128i) __builtin_ia32_blendmd_128_mask ((__v4si) __A,
- (__v4si) __W,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_epi64_mask (__m256i __X, __m256i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_epi32_mask (__m256i __X, __m256i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_epu64_mask (__m256i __X, __m256i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_epu32_mask (__m256i __X, __m256i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_pd_mask (__m256d __X, __m256d __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmppd256_mask ((__v4df) __X,
- (__v4df) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_ps_mask (__m256 __X, __m256 __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpps256_mask ((__v8sf) __X,
- (__v8sf) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epi64_mask (__mmask8 __U, __m256i __X, __m256i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpq256_mask ((__v4di) __X,
- (__v4di) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epi32_mask (__mmask8 __U, __m256i __X, __m256i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpd256_mask ((__v8si) __X,
- (__v8si) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epu64_mask (__mmask8 __U, __m256i __X, __m256i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di) __X,
- (__v4di) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epu32_mask (__mmask8 __U, __m256i __X, __m256i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si) __X,
- (__v8si) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_pd_mask (__mmask8 __U, __m256d __X, __m256d __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmppd256_mask ((__v4df) __X,
- (__v4df) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_ps_mask (__mmask8 __U, __m256 __X, __m256 __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpps256_mask ((__v8sf) __X,
- (__v8sf) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_epi64_mask (__m128i __X, __m128i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_epi32_mask (__m128i __X, __m128i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_epu64_mask (__m128i __X, __m128i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_epu32_mask (__m128i __X, __m128i __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_pd_mask (__m128d __X, __m128d __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmppd128_mask ((__v2df) __X,
- (__v2df) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_ps_mask (__m128 __X, __m128 __Y, const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpps128_mask ((__v4sf) __X,
- (__v4sf) __Y, __P,
- (__mmask8) -1);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epi64_mask (__mmask8 __U, __m128i __X, __m128i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpq128_mask ((__v2di) __X,
- (__v2di) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epi32_mask (__mmask8 __U, __m128i __X, __m128i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpd128_mask ((__v4si) __X,
- (__v4si) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epu64_mask (__mmask8 __U, __m128i __X, __m128i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di) __X,
- (__v2di) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epu32_mask (__mmask8 __U, __m128i __X, __m128i __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si) __X,
- (__v4si) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_pd_mask (__mmask8 __U, __m128d __X, __m128d __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmppd128_mask ((__v2df) __X,
- (__v2df) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __mmask8
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_ps_mask (__mmask8 __U, __m128 __X, __m128 __Y,
- const int __P)
-{
- return (__mmask8) __builtin_ia32_cmpps128_mask ((__v4sf) __X,
- (__v4sf) __Y, __P,
- (__mmask8) __U);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutex_pd (__m256d __X, const int __M)
-{
- return (__m256d) __builtin_ia32_permdf256_mask ((__v4df) __X, __M,
- (__v4df)
- _mm256_undefined_pd (),
- (__mmask8) -1);
-}
-
-#else
-#define _mm256_permutex_pd(X, M) \
- ((__m256d) __builtin_ia32_permdf256_mask ((__v4df)(__m256d)(X), (int)(M), \
- (__v4df)(__m256d) \
- _mm256_undefined_pd (), \
- (__mmask8)-1))
-
-#define _mm256_maskz_permutex_epi64(M, X, I) \
- ((__m256i) __builtin_ia32_permdi256_mask ((__v4di)(__m256i)(X), \
- (int)(I), \
- (__v4di)(__m256i) \
- (_mm256_setzero_si256 ()),\
- (__mmask8)(M)))
-
-#define _mm256_mask_permutex_epi64(W, M, X, I) \
- ((__m256i) __builtin_ia32_permdi256_mask ((__v4di)(__m256i)(X), \
- (int)(I), \
- (__v4di)(__m256i)(W), \
- (__mmask8)(M)))
-
-#define _mm256_insertf32x4(X, Y, C) \
- ((__m256) __builtin_ia32_insertf32x4_256_mask ((__v8sf)(__m256) (X), \
- (__v4sf)(__m128) (Y), (int) (C), \
- (__v8sf)(__m256)_mm256_setzero_ps (), \
- (__mmask8)-1))
-
-#define _mm256_mask_insertf32x4(W, U, X, Y, C) \
- ((__m256) __builtin_ia32_insertf32x4_256_mask ((__v8sf)(__m256) (X), \
- (__v4sf)(__m128) (Y), (int) (C), \
- (__v8sf)(__m256)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_insertf32x4(U, X, Y, C) \
- ((__m256) __builtin_ia32_insertf32x4_256_mask ((__v8sf)(__m256) (X), \
- (__v4sf)(__m128) (Y), (int) (C), \
- (__v8sf)(__m256)_mm256_setzero_ps (), \
- (__mmask8)(U)))
-
-#define _mm256_inserti32x4(X, Y, C) \
- ((__m256i) __builtin_ia32_inserti32x4_256_mask ((__v8si)(__m256i) (X),\
- (__v4si)(__m128i) (Y), (int) (C), \
- (__v8si)(__m256i)_mm256_setzero_si256 (), \
- (__mmask8)-1))
-
-#define _mm256_mask_inserti32x4(W, U, X, Y, C) \
- ((__m256i) __builtin_ia32_inserti32x4_256_mask ((__v8si)(__m256i) (X),\
- (__v4si)(__m128i) (Y), (int) (C), \
- (__v8si)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_inserti32x4(U, X, Y, C) \
- ((__m256i) __builtin_ia32_inserti32x4_256_mask ((__v8si)(__m256i) (X),\
- (__v4si)(__m128i) (Y), (int) (C), \
- (__v8si)(__m256i)_mm256_setzero_si256 (), \
- (__mmask8)(U)))
-
-#define _mm256_extractf32x4_ps(X, C) \
- ((__m128) __builtin_ia32_extractf32x4_256_mask ((__v8sf)(__m256) (X), \
- (int) (C), \
- (__v4sf)(__m128)_mm_setzero_ps (), \
- (__mmask8)-1))
-
-#define _mm256_mask_extractf32x4_ps(W, U, X, C) \
- ((__m128) __builtin_ia32_extractf32x4_256_mask ((__v8sf)(__m256) (X), \
- (int) (C), \
- (__v4sf)(__m128)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_extractf32x4_ps(U, X, C) \
- ((__m128) __builtin_ia32_extractf32x4_256_mask ((__v8sf)(__m256) (X), \
- (int) (C), \
- (__v4sf)(__m128)_mm_setzero_ps (), \
- (__mmask8)(U)))
-
-#define _mm256_extracti32x4_epi32(X, C) \
- ((__m128i) __builtin_ia32_extracti32x4_256_mask ((__v8si)(__m256i) (X),\
- (int) (C), (__v4si)(__m128i)_mm_setzero_si128 (), (__mmask8)-1))
-
-#define _mm256_mask_extracti32x4_epi32(W, U, X, C) \
- ((__m128i) __builtin_ia32_extracti32x4_256_mask ((__v8si)(__m256i) (X),\
- (int) (C), (__v4si)(__m128i)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_extracti32x4_epi32(U, X, C) \
- ((__m128i) __builtin_ia32_extracti32x4_256_mask ((__v8si)(__m256i) (X),\
- (int) (C), (__v4si)(__m128i)_mm_setzero_si128 (), (__mmask8)(U)))
-
-#define _mm256_shuffle_i64x2(X, Y, C) \
- ((__m256i) __builtin_ia32_shuf_i64x2_256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(C), \
- (__v4di)(__m256i)_mm256_setzero_si256 (), \
- (__mmask8)-1))
-
-#define _mm256_mask_shuffle_i64x2(W, U, X, Y, C) \
- ((__m256i) __builtin_ia32_shuf_i64x2_256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(C), \
- (__v4di)(__m256i)(W),\
- (__mmask8)(U)))
-
-#define _mm256_maskz_shuffle_i64x2(U, X, Y, C) \
- ((__m256i) __builtin_ia32_shuf_i64x2_256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(C), \
- (__v4di)(__m256i)_mm256_setzero_si256 (), \
- (__mmask8)(U)))
-
-#define _mm256_shuffle_i32x4(X, Y, C) \
- ((__m256i) __builtin_ia32_shuf_i32x4_256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(C), \
- (__v8si)(__m256i) \
- _mm256_setzero_si256 (), \
- (__mmask8)-1))
-
-#define _mm256_mask_shuffle_i32x4(W, U, X, Y, C) \
- ((__m256i) __builtin_ia32_shuf_i32x4_256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(C), \
- (__v8si)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_shuffle_i32x4(U, X, Y, C) \
- ((__m256i) __builtin_ia32_shuf_i32x4_256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(C), \
- (__v8si)(__m256i) \
- _mm256_setzero_si256 (), \
- (__mmask8)(U)))
-
-#define _mm256_shuffle_f64x2(X, Y, C) \
- ((__m256d) __builtin_ia32_shuf_f64x2_256_mask ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), (int)(C), \
- (__v4df)(__m256d)_mm256_setzero_pd (),\
- (__mmask8)-1))
-
-#define _mm256_mask_shuffle_f64x2(W, U, X, Y, C) \
- ((__m256d) __builtin_ia32_shuf_f64x2_256_mask ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), (int)(C), \
- (__v4df)(__m256d)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_shuffle_f64x2(U, X, Y, C) \
- ((__m256d) __builtin_ia32_shuf_f64x2_256_mask ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), (int)(C), \
- (__v4df)(__m256d)_mm256_setzero_pd( ),\
- (__mmask8)(U)))
-
-#define _mm256_shuffle_f32x4(X, Y, C) \
- ((__m256) __builtin_ia32_shuf_f32x4_256_mask ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), (int)(C), \
- (__v8sf)(__m256)_mm256_setzero_ps (), \
- (__mmask8)-1))
-
-#define _mm256_mask_shuffle_f32x4(W, U, X, Y, C) \
- ((__m256) __builtin_ia32_shuf_f32x4_256_mask ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), (int)(C), \
- (__v8sf)(__m256)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_shuffle_f32x4(U, X, Y, C) \
- ((__m256) __builtin_ia32_shuf_f32x4_256_mask ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), (int)(C), \
- (__v8sf)(__m256)_mm256_setzero_ps (), \
- (__mmask8)(U)))
-
-#define _mm256_mask_shuffle_pd(W, U, A, B, C) \
- ((__m256d)__builtin_ia32_shufpd256_mask ((__v4df)(__m256d)(A), \
- (__v4df)(__m256d)(B), (int)(C), \
- (__v4df)(__m256d)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_shuffle_pd(U, A, B, C) \
- ((__m256d)__builtin_ia32_shufpd256_mask ((__v4df)(__m256d)(A), \
- (__v4df)(__m256d)(B), (int)(C), \
- (__v4df)(__m256d) \
- _mm256_setzero_pd (), \
- (__mmask8)(U)))
-
-#define _mm_mask_shuffle_pd(W, U, A, B, C) \
- ((__m128d)__builtin_ia32_shufpd128_mask ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C), \
- (__v2df)(__m128d)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_shuffle_pd(U, A, B, C) \
- ((__m128d)__builtin_ia32_shufpd128_mask ((__v2df)(__m128d)(A), \
- (__v2df)(__m128d)(B), (int)(C), \
- (__v2df)(__m128d)_mm_setzero_pd (), \
- (__mmask8)(U)))
-
-#define _mm256_mask_shuffle_ps(W, U, A, B, C) \
- ((__m256) __builtin_ia32_shufps256_mask ((__v8sf)(__m256)(A), \
- (__v8sf)(__m256)(B), (int)(C), \
- (__v8sf)(__m256)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_shuffle_ps(U, A, B, C) \
- ((__m256) __builtin_ia32_shufps256_mask ((__v8sf)(__m256)(A), \
- (__v8sf)(__m256)(B), (int)(C), \
- (__v8sf)(__m256)_mm256_setzero_ps (),\
- (__mmask8)(U)))
-
-#define _mm_mask_shuffle_ps(W, U, A, B, C) \
- ((__m128) __builtin_ia32_shufps128_mask ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(B), (int)(C), \
- (__v4sf)(__m128)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_shuffle_ps(U, A, B, C) \
- ((__m128) __builtin_ia32_shufps128_mask ((__v4sf)(__m128)(A), \
- (__v4sf)(__m128)(B), (int)(C), \
- (__v4sf)(__m128)_mm_setzero_ps (), \
- (__mmask8)(U)))
-
-#define _mm256_fixupimm_pd(X, Y, Z, C) \
- ((__m256d)__builtin_ia32_fixupimmpd256_mask ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), \
- (__v4di)(__m256i)(Z), (int)(C), \
- (__mmask8)(-1)))
-
-#define _mm256_mask_fixupimm_pd(X, U, Y, Z, C) \
- ((__m256d)__builtin_ia32_fixupimmpd256_mask ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), \
- (__v4di)(__m256i)(Z), (int)(C), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_fixupimm_pd(U, X, Y, Z, C) \
- ((__m256d)__builtin_ia32_fixupimmpd256_maskz ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), \
- (__v4di)(__m256i)(Z), (int)(C),\
- (__mmask8)(U)))
-
-#define _mm256_fixupimm_ps(X, Y, Z, C) \
- ((__m256)__builtin_ia32_fixupimmps256_mask ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), \
- (__v8si)(__m256i)(Z), (int)(C), \
- (__mmask8)(-1)))
-
-
-#define _mm256_mask_fixupimm_ps(X, U, Y, Z, C) \
- ((__m256)__builtin_ia32_fixupimmps256_mask ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), \
- (__v8si)(__m256i)(Z), (int)(C), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_fixupimm_ps(U, X, Y, Z, C) \
- ((__m256)__builtin_ia32_fixupimmps256_maskz ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), \
- (__v8si)(__m256i)(Z), (int)(C),\
- (__mmask8)(U)))
-
-#define _mm_fixupimm_pd(X, Y, Z, C) \
- ((__m128d)__builtin_ia32_fixupimmpd128_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), \
- (__v2di)(__m128i)(Z), (int)(C), \
- (__mmask8)(-1)))
-
-
-#define _mm_mask_fixupimm_pd(X, U, Y, Z, C) \
- ((__m128d)__builtin_ia32_fixupimmpd128_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), \
- (__v2di)(__m128i)(Z), (int)(C), \
- (__mmask8)(U)))
-
-#define _mm_maskz_fixupimm_pd(U, X, Y, Z, C) \
- ((__m128d)__builtin_ia32_fixupimmpd128_maskz ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), \
- (__v2di)(__m128i)(Z), (int)(C),\
- (__mmask8)(U)))
-
-#define _mm_fixupimm_ps(X, Y, Z, C) \
- ((__m128)__builtin_ia32_fixupimmps128_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), \
- (__v4si)(__m128i)(Z), (int)(C), \
- (__mmask8)(-1)))
-
-#define _mm_mask_fixupimm_ps(X, U, Y, Z, C) \
- ((__m128)__builtin_ia32_fixupimmps128_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), \
- (__v4si)(__m128i)(Z), (int)(C),\
- (__mmask8)(U)))
-
-#define _mm_maskz_fixupimm_ps(U, X, Y, Z, C) \
- ((__m128)__builtin_ia32_fixupimmps128_maskz ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), \
- (__v4si)(__m128i)(Z), (int)(C),\
- (__mmask8)(U)))
-
-#define _mm256_mask_srli_epi32(W, U, A, B) \
- ((__m256i) __builtin_ia32_psrldi256_mask ((__v8si)(__m256i)(A), \
- (int)(B), (__v8si)(__m256i)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_srli_epi32(U, A, B) \
- ((__m256i) __builtin_ia32_psrldi256_mask ((__v8si)(__m256i)(A), \
- (int)(B), (__v8si)_mm256_setzero_si256 (), (__mmask8)(U)))
-
-#define _mm_mask_srli_epi32(W, U, A, B) \
- ((__m128i) __builtin_ia32_psrldi128_mask ((__v4si)(__m128i)(A), \
- (int)(B), (__v4si)(__m128i)(W), (__mmask8)(U)))
-
-#define _mm_maskz_srli_epi32(U, A, B) \
- ((__m128i) __builtin_ia32_psrldi128_mask ((__v4si)(__m128i)(A), \
- (int)(B), (__v4si)_mm_setzero_si128 (), (__mmask8)(U)))
-
-#define _mm256_mask_srli_epi64(W, U, A, B) \
- ((__m256i) __builtin_ia32_psrlqi256_mask ((__v4di)(__m256i)(A), \
- (int)(B), (__v4di)(__m256i)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_srli_epi64(U, A, B) \
- ((__m256i) __builtin_ia32_psrlqi256_mask ((__v4di)(__m256i)(A), \
- (int)(B), (__v4di)_mm256_setzero_si256 (), (__mmask8)(U)))
-
-#define _mm_mask_srli_epi64(W, U, A, B) \
- ((__m128i) __builtin_ia32_psrlqi128_mask ((__v2di)(__m128i)(A), \
- (int)(B), (__v2di)(__m128i)(W), (__mmask8)(U)))
-
-#define _mm_maskz_srli_epi64(U, A, B) \
- ((__m128i) __builtin_ia32_psrlqi128_mask ((__v2di)(__m128i)(A), \
- (int)(B), (__v2di)_mm_setzero_si128 (), (__mmask8)(U)))
-
-#define _mm256_mask_slli_epi32(W, U, X, C) \
- ((__m256i)__builtin_ia32_pslldi256_mask ((__v8si)(__m256i)(X), (int)(C),\
- (__v8si)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_slli_epi32(U, X, C) \
- ((__m256i)__builtin_ia32_pslldi256_mask ((__v8si)(__m256i)(X), (int)(C),\
- (__v8si)(__m256i)_mm256_setzero_si256 (), \
- (__mmask8)(U)))
-
-#define _mm256_mask_slli_epi64(W, U, X, C) \
- ((__m256i)__builtin_ia32_psllqi256_mask ((__v4di)(__m256i)(X), (int)(C),\
- (__v4di)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_slli_epi64(U, X, C) \
- ((__m256i)__builtin_ia32_psllqi256_mask ((__v4di)(__m256i)(X), (int)(C),\
- (__v4di)(__m256i)_mm256_setzero_si256 (), \
- (__mmask8)(U)))
-
-#define _mm_mask_slli_epi32(W, U, X, C) \
- ((__m128i)__builtin_ia32_pslldi128_mask ((__v4si)(__m128i)(X), (int)(C),\
- (__v4si)(__m128i)(W),\
- (__mmask8)(U)))
-
-#define _mm_maskz_slli_epi32(U, X, C) \
- ((__m128i)__builtin_ia32_pslldi128_mask ((__v4si)(__m128i)(X), (int)(C),\
- (__v4si)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-
-#define _mm_mask_slli_epi64(W, U, X, C) \
- ((__m128i)__builtin_ia32_psllqi128_mask ((__v2di)(__m128i)(X), (int)(C),\
- (__v2di)(__m128i)(W),\
- (__mmask8)(U)))
-
-#define _mm_maskz_slli_epi64(U, X, C) \
- ((__m128i)__builtin_ia32_psllqi128_mask ((__v2di)(__m128i)(X), (int)(C),\
- (__v2di)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-
-#define _mm256_ternarylogic_epi64(A, B, C, I) \
- ((__m256i) __builtin_ia32_pternlogq256_mask ((__v4di)(__m256i)(A), \
- (__v4di)(__m256i)(B), (__v4di)(__m256i)(C), (int)(I), (__mmask8)-1))
-
-#define _mm256_mask_ternarylogic_epi64(A, U, B, C, I) \
- ((__m256i) __builtin_ia32_pternlogq256_mask ((__v4di)(__m256i)(A), \
- (__v4di)(__m256i)(B), (__v4di)(__m256i)(C), (int)(I), (__mmask8)(U)))
-
-#define _mm256_maskz_ternarylogic_epi64(U, A, B, C, I) \
- ((__m256i) __builtin_ia32_pternlogq256_maskz ((__v4di)(__m256i)(A), \
- (__v4di)(__m256i)(B), (__v4di)(__m256i)(C), (int)(I), (__mmask8)(U)))
-
-#define _mm256_ternarylogic_epi32(A, B, C, I) \
- ((__m256i) __builtin_ia32_pternlogd256_mask ((__v8si)(__m256i)(A), \
- (__v8si)(__m256i)(B), (__v8si)(__m256i)(C), (int)(I), (__mmask8)-1))
-
-#define _mm256_mask_ternarylogic_epi32(A, U, B, C, I) \
- ((__m256i) __builtin_ia32_pternlogd256_mask ((__v8si)(__m256i)(A), \
- (__v8si)(__m256i)(B), (__v8si)(__m256i)(C), (int)(I), (__mmask8)(U)))
-
-#define _mm256_maskz_ternarylogic_epi32(U, A, B, C, I) \
- ((__m256i) __builtin_ia32_pternlogd256_maskz ((__v8si)(__m256i)(A), \
- (__v8si)(__m256i)(B), (__v8si)(__m256i)(C), (int)(I), (__mmask8)(U)))
-
-#define _mm_ternarylogic_epi64(A, B, C, I) \
- ((__m128i) __builtin_ia32_pternlogq128_mask ((__v2di)(__m128i)(A), \
- (__v2di)(__m128i)(B), (__v2di)(__m128i)(C), (int)(I), (__mmask8)-1))
-
-#define _mm_mask_ternarylogic_epi64(A, U, B, C, I) \
- ((__m128i) __builtin_ia32_pternlogq128_mask ((__v2di)(__m128i)(A), \
- (__v2di)(__m128i)(B), (__v2di)(__m128i)(C), (int)(I), (__mmask8)(U)))
-
-#define _mm_maskz_ternarylogic_epi64(U, A, B, C, I) \
- ((__m128i) __builtin_ia32_pternlogq128_maskz ((__v2di)(__m128i)(A), \
- (__v2di)(__m128i)(B), (__v2di)(__m128i)(C), (int)(I), (__mmask8)(U)))
-
-#define _mm_ternarylogic_epi32(A, B, C, I) \
- ((__m128i) __builtin_ia32_pternlogd128_mask ((__v4si)(__m128i)(A), \
- (__v4si)(__m128i)(B), (__v4si)(__m128i)(C), (int)(I), (__mmask8)-1))
-
-#define _mm_mask_ternarylogic_epi32(A, U, B, C, I) \
- ((__m128i) __builtin_ia32_pternlogd128_mask ((__v4si)(__m128i)(A), \
- (__v4si)(__m128i)(B), (__v4si)(__m128i)(C), (int)(I), (__mmask8)(U)))
-
-#define _mm_maskz_ternarylogic_epi32(U, A, B, C, I) \
- ((__m128i) __builtin_ia32_pternlogd128_maskz ((__v4si)(__m128i)(A), \
- (__v4si)(__m128i)(B), (__v4si)(__m128i)(C), (int)(I), (__mmask8)(U)))
-
-#define _mm256_roundscale_ps(A, B) \
- ((__m256) __builtin_ia32_rndscaleps_256_mask ((__v8sf)(__m256)(A), \
- (int)(B), (__v8sf)(__m256)_mm256_setzero_ps (), (__mmask8)-1))
-
-#define _mm256_mask_roundscale_ps(W, U, A, B) \
- ((__m256) __builtin_ia32_rndscaleps_256_mask ((__v8sf)(__m256)(A), \
- (int)(B), (__v8sf)(__m256)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_roundscale_ps(U, A, B) \
- ((__m256) __builtin_ia32_rndscaleps_256_mask ((__v8sf)(__m256)(A), \
- (int)(B), (__v8sf)(__m256)_mm256_setzero_ps (), (__mmask8)(U)))
-
-#define _mm256_roundscale_pd(A, B) \
- ((__m256d) __builtin_ia32_rndscalepd_256_mask ((__v4df)(__m256d)(A), \
- (int)(B), (__v4df)(__m256d)_mm256_setzero_pd (), (__mmask8)-1))
-
-#define _mm256_mask_roundscale_pd(W, U, A, B) \
- ((__m256d) __builtin_ia32_rndscalepd_256_mask ((__v4df)(__m256d)(A), \
- (int)(B), (__v4df)(__m256d)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_roundscale_pd(U, A, B) \
- ((__m256d) __builtin_ia32_rndscalepd_256_mask ((__v4df)(__m256d)(A), \
- (int)(B), (__v4df)(__m256d)_mm256_setzero_pd (), (__mmask8)(U)))
-
-#define _mm_roundscale_ps(A, B) \
- ((__m128) __builtin_ia32_rndscaleps_128_mask ((__v4sf)(__m128)(A), \
- (int)(B), (__v4sf)(__m128)_mm_setzero_ps (), (__mmask8)-1))
-
-#define _mm_mask_roundscale_ps(W, U, A, B) \
- ((__m128) __builtin_ia32_rndscaleps_128_mask ((__v4sf)(__m128)(A), \
- (int)(B), (__v4sf)(__m128)(W), (__mmask8)(U)))
-
-#define _mm_maskz_roundscale_ps(U, A, B) \
- ((__m128) __builtin_ia32_rndscaleps_128_mask ((__v4sf)(__m128)(A), \
- (int)(B), (__v4sf)(__m128)_mm_setzero_ps (), (__mmask8)(U)))
-
-#define _mm_roundscale_pd(A, B) \
- ((__m128d) __builtin_ia32_rndscalepd_128_mask ((__v2df)(__m128d)(A), \
- (int)(B), (__v2df)(__m128d)_mm_setzero_pd (), (__mmask8)-1))
-
-#define _mm_mask_roundscale_pd(W, U, A, B) \
- ((__m128d) __builtin_ia32_rndscalepd_128_mask ((__v2df)(__m128d)(A), \
- (int)(B), (__v2df)(__m128d)(W), (__mmask8)(U)))
-
-#define _mm_maskz_roundscale_pd(U, A, B) \
- ((__m128d) __builtin_ia32_rndscalepd_128_mask ((__v2df)(__m128d)(A), \
- (int)(B), (__v2df)(__m128d)_mm_setzero_pd (), (__mmask8)(U)))
-
-#define _mm256_getmant_ps(X, B, C) \
- ((__m256) __builtin_ia32_getmantps256_mask ((__v8sf)(__m256) (X), \
- (int)(((C)<<2) | (B)), \
- (__v8sf)(__m256)_mm256_setzero_ps (), \
- (__mmask8)-1))
-
-#define _mm256_mask_getmant_ps(W, U, X, B, C) \
- ((__m256) __builtin_ia32_getmantps256_mask ((__v8sf)(__m256) (X), \
- (int)(((C)<<2) | (B)), \
- (__v8sf)(__m256)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_getmant_ps(U, X, B, C) \
- ((__m256) __builtin_ia32_getmantps256_mask ((__v8sf)(__m256) (X), \
- (int)(((C)<<2) | (B)), \
- (__v8sf)(__m256)_mm256_setzero_ps (), \
- (__mmask8)(U)))
-
-#define _mm_getmant_ps(X, B, C) \
- ((__m128) __builtin_ia32_getmantps128_mask ((__v4sf)(__m128) (X), \
- (int)(((C)<<2) | (B)), \
- (__v4sf)(__m128)_mm_setzero_ps (), \
- (__mmask8)-1))
-
-#define _mm_mask_getmant_ps(W, U, X, B, C) \
- ((__m128) __builtin_ia32_getmantps128_mask ((__v4sf)(__m128) (X), \
- (int)(((C)<<2) | (B)), \
- (__v4sf)(__m128)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_getmant_ps(U, X, B, C) \
- ((__m128) __builtin_ia32_getmantps128_mask ((__v4sf)(__m128) (X), \
- (int)(((C)<<2) | (B)), \
- (__v4sf)(__m128)_mm_setzero_ps (), \
- (__mmask8)(U)))
-
-#define _mm256_getmant_pd(X, B, C) \
- ((__m256d) __builtin_ia32_getmantpd256_mask ((__v4df)(__m256d) (X), \
- (int)(((C)<<2) | (B)), \
- (__v4df)(__m256d)_mm256_setzero_pd (),\
- (__mmask8)-1))
-
-#define _mm256_mask_getmant_pd(W, U, X, B, C) \
- ((__m256d) __builtin_ia32_getmantpd256_mask ((__v4df)(__m256d) (X), \
- (int)(((C)<<2) | (B)), \
- (__v4df)(__m256d)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_getmant_pd(U, X, B, C) \
- ((__m256d) __builtin_ia32_getmantpd256_mask ((__v4df)(__m256d) (X), \
- (int)(((C)<<2) | (B)), \
- (__v4df)(__m256d)_mm256_setzero_pd (),\
- (__mmask8)(U)))
-
-#define _mm_getmant_pd(X, B, C) \
- ((__m128d) __builtin_ia32_getmantpd128_mask ((__v2df)(__m128d) (X), \
- (int)(((C)<<2) | (B)), \
- (__v2df)(__m128d)_mm_setzero_pd (), \
- (__mmask8)-1))
-
-#define _mm_mask_getmant_pd(W, U, X, B, C) \
- ((__m128d) __builtin_ia32_getmantpd128_mask ((__v2df)(__m128d) (X), \
- (int)(((C)<<2) | (B)), \
- (__v2df)(__m128d)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_getmant_pd(U, X, B, C) \
- ((__m128d) __builtin_ia32_getmantpd128_mask ((__v2df)(__m128d) (X), \
- (int)(((C)<<2) | (B)), \
- (__v2df)(__m128d)_mm_setzero_pd (), \
- (__mmask8)(U)))
-
-#define _mm256_mmask_i32gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m256) __builtin_ia32_gather3siv8sf ((__v8sf)(__m256)V1OLD, \
- (void const *)ADDR, \
- (__v8si)(__m256i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm_mmask_i32gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128) __builtin_ia32_gather3siv4sf ((__v4sf)(__m128)V1OLD, \
- (void const *)ADDR, \
- (__v4si)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm256_mmask_i32gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m256d) __builtin_ia32_gather3siv4df ((__v4df)(__m256d)V1OLD, \
- (void const *)ADDR, \
- (__v4si)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm_mmask_i32gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128d) __builtin_ia32_gather3siv2df ((__v2df)(__m128d)V1OLD, \
- (void const *)ADDR, \
- (__v4si)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm256_mmask_i64gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128) __builtin_ia32_gather3div8sf ((__v4sf)(__m128)V1OLD, \
- (void const *)ADDR, \
- (__v4di)(__m256i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm_mmask_i64gather_ps(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128) __builtin_ia32_gather3div4sf ((__v4sf)(__m128)V1OLD, \
- (void const *)ADDR, \
- (__v2di)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm256_mmask_i64gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m256d) __builtin_ia32_gather3div4df ((__v4df)(__m256d)V1OLD, \
- (void const *)ADDR, \
- (__v4di)(__m256i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm_mmask_i64gather_pd(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128d) __builtin_ia32_gather3div2df ((__v2df)(__m128d)V1OLD, \
- (void const *)ADDR, \
- (__v2di)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm256_mmask_i32gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m256i) __builtin_ia32_gather3siv8si ((__v8si)(__m256i)V1OLD, \
- (void const *)ADDR, \
- (__v8si)(__m256i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm_mmask_i32gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128i) __builtin_ia32_gather3siv4si ((__v4si)(__m128i)V1OLD, \
- (void const *)ADDR, \
- (__v4si)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm256_mmask_i32gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m256i) __builtin_ia32_gather3siv4di ((__v4di)(__m256i)V1OLD, \
- (void const *)ADDR, \
- (__v4si)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm_mmask_i32gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128i) __builtin_ia32_gather3siv2di ((__v2di)(__m128i)V1OLD, \
- (void const *)ADDR, \
- (__v4si)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm256_mmask_i64gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128i) __builtin_ia32_gather3div8si ((__v4si)(__m128i)V1OLD, \
- (void const *)ADDR, \
- (__v4di)(__m256i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm_mmask_i64gather_epi32(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128i) __builtin_ia32_gather3div4si ((__v4si)(__m128i)V1OLD, \
- (void const *)ADDR, \
- (__v2di)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm256_mmask_i64gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m256i) __builtin_ia32_gather3div4di ((__v4di)(__m256i)V1OLD, \
- (void const *)ADDR, \
- (__v4di)(__m256i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm_mmask_i64gather_epi64(V1OLD, MASK, INDEX, ADDR, SCALE) \
- (__m128i) __builtin_ia32_gather3div2di ((__v2di)(__m128i)V1OLD, \
- (void const *)ADDR, \
- (__v2di)(__m128i)INDEX, \
- (__mmask8)MASK, (int)SCALE)
-
-#define _mm256_i32scatter_ps(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv8sf ((void *)ADDR, (__mmask8)0xFF, \
- (__v8si)(__m256i)INDEX, \
- (__v8sf)(__m256)V1, (int)SCALE)
-
-#define _mm256_mask_i32scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv8sf ((void *)ADDR, (__mmask8)MASK, \
- (__v8si)(__m256i)INDEX, \
- (__v8sf)(__m256)V1, (int)SCALE)
-
-#define _mm_i32scatter_ps(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv4sf ((void *)ADDR, (__mmask8)0xFF, \
- (__v4si)(__m128i)INDEX, \
- (__v4sf)(__m128)V1, (int)SCALE)
-
-#define _mm_mask_i32scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv4sf ((void *)ADDR, (__mmask8)MASK, \
- (__v4si)(__m128i)INDEX, \
- (__v4sf)(__m128)V1, (int)SCALE)
-
-#define _mm256_i32scatter_pd(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv4df ((void *)ADDR, (__mmask8)0xFF, \
- (__v4si)(__m128i)INDEX, \
- (__v4df)(__m256d)V1, (int)SCALE)
-
-#define _mm256_mask_i32scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv4df ((void *)ADDR, (__mmask8)MASK, \
- (__v4si)(__m128i)INDEX, \
- (__v4df)(__m256d)V1, (int)SCALE)
-
-#define _mm_i32scatter_pd(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv2df ((void *)ADDR, (__mmask8)0xFF, \
- (__v4si)(__m128i)INDEX, \
- (__v2df)(__m128d)V1, (int)SCALE)
-
-#define _mm_mask_i32scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv2df ((void *)ADDR, (__mmask8)MASK, \
- (__v4si)(__m128i)INDEX, \
- (__v2df)(__m128d)V1, (int)SCALE)
-
-#define _mm256_i64scatter_ps(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv8sf ((void *)ADDR, (__mmask8)0xFF, \
- (__v4di)(__m256i)INDEX, \
- (__v4sf)(__m128)V1, (int)SCALE)
-
-#define _mm256_mask_i64scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv8sf ((void *)ADDR, (__mmask8)MASK, \
- (__v4di)(__m256i)INDEX, \
- (__v4sf)(__m128)V1, (int)SCALE)
-
-#define _mm_i64scatter_ps(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv4sf ((void *)ADDR, (__mmask8)0xFF, \
- (__v2di)(__m128i)INDEX, \
- (__v4sf)(__m128)V1, (int)SCALE)
-
-#define _mm_mask_i64scatter_ps(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv4sf ((void *)ADDR, (__mmask8)MASK, \
- (__v2di)(__m128i)INDEX, \
- (__v4sf)(__m128)V1, (int)SCALE)
-
-#define _mm256_i64scatter_pd(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv4df ((void *)ADDR, (__mmask8)0xFF, \
- (__v4di)(__m256i)INDEX, \
- (__v4df)(__m256d)V1, (int)SCALE)
-
-#define _mm256_mask_i64scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv4df ((void *)ADDR, (__mmask8)MASK, \
- (__v4di)(__m256i)INDEX, \
- (__v4df)(__m256d)V1, (int)SCALE)
-
-#define _mm_i64scatter_pd(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv2df ((void *)ADDR, (__mmask8)0xFF, \
- (__v2di)(__m128i)INDEX, \
- (__v2df)(__m128d)V1, (int)SCALE)
-
-#define _mm_mask_i64scatter_pd(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv2df ((void *)ADDR, (__mmask8)MASK, \
- (__v2di)(__m128i)INDEX, \
- (__v2df)(__m128d)V1, (int)SCALE)
-
-#define _mm256_i32scatter_epi32(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv8si ((void *)ADDR, (__mmask8)0xFF, \
- (__v8si)(__m256i)INDEX, \
- (__v8si)(__m256i)V1, (int)SCALE)
-
-#define _mm256_mask_i32scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv8si ((void *)ADDR, (__mmask8)MASK, \
- (__v8si)(__m256i)INDEX, \
- (__v8si)(__m256i)V1, (int)SCALE)
-
-#define _mm_i32scatter_epi32(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv4si ((void *)ADDR, (__mmask8)0xFF, \
- (__v4si)(__m128i)INDEX, \
- (__v4si)(__m128i)V1, (int)SCALE)
-
-#define _mm_mask_i32scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv4si ((void *)ADDR, (__mmask8)MASK, \
- (__v4si)(__m128i)INDEX, \
- (__v4si)(__m128i)V1, (int)SCALE)
-
-#define _mm256_i32scatter_epi64(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv4di ((void *)ADDR, (__mmask8)0xFF, \
- (__v4si)(__m128i)INDEX, \
- (__v4di)(__m256i)V1, (int)SCALE)
-
-#define _mm256_mask_i32scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv4di ((void *)ADDR, (__mmask8)MASK, \
- (__v4si)(__m128i)INDEX, \
- (__v4di)(__m256i)V1, (int)SCALE)
-
-#define _mm_i32scatter_epi64(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv2di ((void *)ADDR, (__mmask8)0xFF, \
- (__v4si)(__m128i)INDEX, \
- (__v2di)(__m128i)V1, (int)SCALE)
-
-#define _mm_mask_i32scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scattersiv2di ((void *)ADDR, (__mmask8)MASK, \
- (__v4si)(__m128i)INDEX, \
- (__v2di)(__m128i)V1, (int)SCALE)
-
-#define _mm256_i64scatter_epi32(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv8si ((void *)ADDR, (__mmask8)0xFF, \
- (__v4di)(__m256i)INDEX, \
- (__v4si)(__m128i)V1, (int)SCALE)
-
-#define _mm256_mask_i64scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv8si ((void *)ADDR, (__mmask8)MASK, \
- (__v4di)(__m256i)INDEX, \
- (__v4si)(__m128i)V1, (int)SCALE)
-
-#define _mm_i64scatter_epi32(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv4si ((void *)ADDR, (__mmask8)0xFF, \
- (__v2di)(__m128i)INDEX, \
- (__v4si)(__m128i)V1, (int)SCALE)
-
-#define _mm_mask_i64scatter_epi32(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv4si ((void *)ADDR, (__mmask8)MASK, \
- (__v2di)(__m128i)INDEX, \
- (__v4si)(__m128i)V1, (int)SCALE)
-
-#define _mm256_i64scatter_epi64(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv4di ((void *)ADDR, (__mmask8)0xFF, \
- (__v4di)(__m256i)INDEX, \
- (__v4di)(__m256i)V1, (int)SCALE)
-
-#define _mm256_mask_i64scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv4di ((void *)ADDR, (__mmask8)MASK, \
- (__v4di)(__m256i)INDEX, \
- (__v4di)(__m256i)V1, (int)SCALE)
-
-#define _mm_i64scatter_epi64(ADDR, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv2di ((void *)ADDR, (__mmask8)0xFF, \
- (__v2di)(__m128i)INDEX, \
- (__v2di)(__m128i)V1, (int)SCALE)
-
-#define _mm_mask_i64scatter_epi64(ADDR, MASK, INDEX, V1, SCALE) \
- __builtin_ia32_scatterdiv2di ((void *)ADDR, (__mmask8)MASK, \
- (__v2di)(__m128i)INDEX, \
- (__v2di)(__m128i)V1, (int)SCALE)
-
-#define _mm256_mask_shuffle_epi32(W, U, X, C) \
- ((__m256i) __builtin_ia32_pshufd256_mask ((__v8si)(__m256i)(X), (int)(C), \
- (__v8si)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_shuffle_epi32(U, X, C) \
- ((__m256i) __builtin_ia32_pshufd256_mask ((__v8si)(__m256i)(X), (int)(C), \
- (__v8si)(__m256i) \
- _mm256_setzero_si256 (), \
- (__mmask8)(U)))
-
-#define _mm_mask_shuffle_epi32(W, U, X, C) \
- ((__m128i) __builtin_ia32_pshufd128_mask ((__v4si)(__m128i)(X), (int)(C), \
- (__v4si)(__m128i)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_shuffle_epi32(U, X, C) \
- ((__m128i) __builtin_ia32_pshufd128_mask ((__v4si)(__m128i)(X), (int)(C), \
- (__v4si)(__m128i)_mm_setzero_si128 (), \
- (__mmask8)(U)))
-
-#define _mm256_rol_epi64(A, B) \
- ((__m256i)__builtin_ia32_prolq256_mask ((__v4di)(__m256i)(A), (int)(B), \
- (__v4di)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)-1))
-
-#define _mm256_mask_rol_epi64(W, U, A, B) \
- ((__m256i)__builtin_ia32_prolq256_mask ((__v4di)(__m256i)(A), (int)(B), \
- (__v4di)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_rol_epi64(U, A, B) \
- ((__m256i)__builtin_ia32_prolq256_mask ((__v4di)(__m256i)(A), (int)(B), \
- (__v4di)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)(U)))
-
-#define _mm_rol_epi64(A, B) \
- ((__m128i)__builtin_ia32_prolq128_mask ((__v2di)(__m128i)(A), (int)(B), \
- (__v2di)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)-1))
-
-#define _mm_mask_rol_epi64(W, U, A, B) \
- ((__m128i)__builtin_ia32_prolq128_mask ((__v2di)(__m128i)(A), (int)(B), \
- (__v2di)(__m128i)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_rol_epi64(U, A, B) \
- ((__m128i)__builtin_ia32_prolq128_mask ((__v2di)(__m128i)(A), (int)(B), \
- (__v2di)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-
-#define _mm256_ror_epi64(A, B) \
- ((__m256i)__builtin_ia32_prorq256_mask ((__v4di)(__m256i)(A), (int)(B), \
- (__v4di)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)-1))
-
-#define _mm256_mask_ror_epi64(W, U, A, B) \
- ((__m256i)__builtin_ia32_prorq256_mask ((__v4di)(__m256i)(A), (int)(B), \
- (__v4di)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_ror_epi64(U, A, B) \
- ((__m256i)__builtin_ia32_prorq256_mask ((__v4di)(__m256i)(A), (int)(B), \
- (__v4di)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)(U)))
-
-#define _mm_ror_epi64(A, B) \
- ((__m128i)__builtin_ia32_prorq128_mask ((__v2di)(__m128i)(A), (int)(B), \
- (__v2di)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)-1))
-
-#define _mm_mask_ror_epi64(W, U, A, B) \
- ((__m128i)__builtin_ia32_prorq128_mask ((__v2di)(__m128i)(A), (int)(B), \
- (__v2di)(__m128i)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_ror_epi64(U, A, B) \
- ((__m128i)__builtin_ia32_prorq128_mask ((__v2di)(__m128i)(A), (int)(B), \
- (__v2di)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-
-#define _mm256_rol_epi32(A, B) \
- ((__m256i)__builtin_ia32_prold256_mask ((__v8si)(__m256i)(A), (int)(B), \
- (__v8si)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)-1))
-
-#define _mm256_mask_rol_epi32(W, U, A, B) \
- ((__m256i)__builtin_ia32_prold256_mask ((__v8si)(__m256i)(A), (int)(B), \
- (__v8si)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_rol_epi32(U, A, B) \
- ((__m256i)__builtin_ia32_prold256_mask ((__v8si)(__m256i)(A), (int)(B), \
- (__v8si)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)(U)))
-
-#define _mm_rol_epi32(A, B) \
- ((__m128i)__builtin_ia32_prold128_mask ((__v4si)(__m128i)(A), (int)(B), \
- (__v4si)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)-1))
-
-#define _mm_mask_rol_epi32(W, U, A, B) \
- ((__m128i)__builtin_ia32_prold128_mask ((__v4si)(__m128i)(A), (int)(B), \
- (__v4si)(__m128i)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_rol_epi32(U, A, B) \
- ((__m128i)__builtin_ia32_prold128_mask ((__v4si)(__m128i)(A), (int)(B), \
- (__v4si)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-
-#define _mm256_ror_epi32(A, B) \
- ((__m256i)__builtin_ia32_prord256_mask ((__v8si)(__m256i)(A), (int)(B), \
- (__v8si)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)-1))
-
-#define _mm256_mask_ror_epi32(W, U, A, B) \
- ((__m256i)__builtin_ia32_prord256_mask ((__v8si)(__m256i)(A), (int)(B), \
- (__v8si)(__m256i)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_ror_epi32(U, A, B) \
- ((__m256i)__builtin_ia32_prord256_mask ((__v8si)(__m256i)(A), (int)(B), \
- (__v8si)(__m256i) \
- _mm256_setzero_si256 (), \
- (__mmask8)(U)))
-
-#define _mm_ror_epi32(A, B) \
- ((__m128i)__builtin_ia32_prord128_mask ((__v4si)(__m128i)(A), (int)(B), \
- (__v4si)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)-1))
-
-#define _mm_mask_ror_epi32(W, U, A, B) \
- ((__m128i)__builtin_ia32_prord128_mask ((__v4si)(__m128i)(A), (int)(B), \
- (__v4si)(__m128i)(W), \
- (__mmask8)(U)))
-
-#define _mm_maskz_ror_epi32(U, A, B) \
- ((__m128i)__builtin_ia32_prord128_mask ((__v4si)(__m128i)(A), (int)(B), \
- (__v4si)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-
-#define _mm256_alignr_epi32(X, Y, C) \
- ((__m256i)__builtin_ia32_alignd256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(C), (__v8si)(__m256i)(X), (__mmask8)-1))
-
-#define _mm256_mask_alignr_epi32(W, U, X, Y, C) \
- ((__m256i)__builtin_ia32_alignd256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(C), (__v8si)(__m256i)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_alignr_epi32(U, X, Y, C) \
- ((__m256i)__builtin_ia32_alignd256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(C), (__v8si)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)(U)))
-
-#define _mm256_alignr_epi64(X, Y, C) \
- ((__m256i)__builtin_ia32_alignq256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(C), (__v4di)(__m256i)(X), (__mmask8)-1))
-
-#define _mm256_mask_alignr_epi64(W, U, X, Y, C) \
- ((__m256i)__builtin_ia32_alignq256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(C), (__v4di)(__m256i)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_alignr_epi64(U, X, Y, C) \
- ((__m256i)__builtin_ia32_alignq256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(C), (__v4di)(__m256i)_mm256_setzero_si256 (),\
- (__mmask8)(U)))
-
-#define _mm_alignr_epi32(X, Y, C) \
- ((__m128i)__builtin_ia32_alignd128_mask ((__v4si)(__m128i)(X), \
- (__v4si)(__m128i)(Y), (int)(C), (__v4si)(__m128i)(X), (__mmask8)-1))
-
-#define _mm_mask_alignr_epi32(W, U, X, Y, C) \
- ((__m128i)__builtin_ia32_alignd128_mask ((__v4si)(__m128i)(X), \
- (__v4si)(__m128i)(Y), (int)(C), (__v4si)(__m128i)(W), (__mmask8)(U)))
-
-#define _mm_maskz_alignr_epi32(U, X, Y, C) \
- ((__m128i)__builtin_ia32_alignd128_mask ((__v4si)(__m128i)(X), \
- (__v4si)(__m128i)(Y), (int)(C), (__v4si)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-
-#define _mm_alignr_epi64(X, Y, C) \
- ((__m128i)__builtin_ia32_alignq128_mask ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), (int)(C), (__v2di)(__m128i)(X), (__mmask8)-1))
-
-#define _mm_mask_alignr_epi64(W, U, X, Y, C) \
- ((__m128i)__builtin_ia32_alignq128_mask ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), (int)(C), (__v2di)(__m128i)(X), (__mmask8)-1))
-
-#define _mm_maskz_alignr_epi64(U, X, Y, C) \
- ((__m128i)__builtin_ia32_alignq128_mask ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), (int)(C), (__v2di)(__m128i)_mm_setzero_si128 (),\
- (__mmask8)(U)))
-
-#define _mm_mask_cvtps_ph(W, U, A, I) \
- ((__m128i) __builtin_ia32_vcvtps2ph_mask ((__v4sf)(__m128) A, (int) (I), \
- (__v8hi)(__m128i) (W), (__mmask8) (U)))
-
-#define _mm_maskz_cvtps_ph(U, A, I) \
- ((__m128i) __builtin_ia32_vcvtps2ph_mask ((__v4sf)(__m128) A, (int) (I), \
- (__v8hi)(__m128i) _mm_setzero_si128 (), (__mmask8) (U)))
-
-#define _mm256_mask_cvtps_ph(W, U, A, I) \
- ((__m128i) __builtin_ia32_vcvtps2ph256_mask ((__v8sf)(__m256) A, (int) (I), \
- (__v8hi)(__m128i) (W), (__mmask8) (U)))
-
-#define _mm256_maskz_cvtps_ph(U, A, I) \
- ((__m128i) __builtin_ia32_vcvtps2ph256_mask ((__v8sf)(__m256) A, (int) (I), \
- (__v8hi)(__m128i) _mm_setzero_si128 (), (__mmask8) (U)))
-
-#define _mm256_mask_srai_epi32(W, U, A, B) \
- ((__m256i) __builtin_ia32_psradi256_mask ((__v8si)(__m256i)(A), \
- (int)(B), (__v8si)(__m256i)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_srai_epi32(U, A, B) \
- ((__m256i) __builtin_ia32_psradi256_mask ((__v8si)(__m256i)(A), \
- (int)(B), (__v8si)_mm256_setzero_si256 (), (__mmask8)(U)))
-
-#define _mm_mask_srai_epi32(W, U, A, B) \
- ((__m128i) __builtin_ia32_psradi128_mask ((__v4si)(__m128i)(A), \
- (int)(B), (__v4si)(__m128i)(W), (__mmask8)(U)))
-
-#define _mm_maskz_srai_epi32(U, A, B) \
- ((__m128i) __builtin_ia32_psradi128_mask ((__v4si)(__m128i)(A), \
- (int)(B), (__v4si)_mm_setzero_si128 (), (__mmask8)(U)))
-
-#define _mm256_srai_epi64(A, B) \
- ((__m256i) __builtin_ia32_psraqi256_mask ((__v4di)(__m256i)(A), \
- (int)(B), (__v4di)_mm256_setzero_si256 (), (__mmask8)-1))
-
-#define _mm256_mask_srai_epi64(W, U, A, B) \
- ((__m256i) __builtin_ia32_psraqi256_mask ((__v4di)(__m256i)(A), \
- (int)(B), (__v4di)(__m256i)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_srai_epi64(U, A, B) \
- ((__m256i) __builtin_ia32_psraqi256_mask ((__v4di)(__m256i)(A), \
- (int)(B), (__v4di)_mm256_setzero_si256 (), (__mmask8)(U)))
-
-#define _mm_srai_epi64(A, B) \
- ((__m128i) __builtin_ia32_psraqi128_mask ((__v2di)(__m128i)(A), \
- (int)(B), (__v2di)_mm_setzero_si128 (), (__mmask8)-1))
-
-#define _mm_mask_srai_epi64(W, U, A, B) \
- ((__m128i) __builtin_ia32_psraqi128_mask ((__v2di)(__m128i)(A), \
- (int)(B), (__v2di)(__m128i)(W), (__mmask8)(U)))
-
-#define _mm_maskz_srai_epi64(U, A, B) \
- ((__m128i) __builtin_ia32_psraqi128_mask ((__v2di)(__m128i)(A), \
- (int)(B), (__v2di)_mm_setzero_si128 (), (__mmask8)(U)))
-
-#define _mm256_mask_permutex_pd(W, U, A, B) \
- ((__m256d) __builtin_ia32_permdf256_mask ((__v4df)(__m256d)(A), \
- (int)(B), (__v4df)(__m256d)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_permutex_pd(U, A, B) \
- ((__m256d) __builtin_ia32_permdf256_mask ((__v4df)(__m256d)(A), \
- (int)(B), (__v4df)(__m256d)_mm256_setzero_pd (), (__mmask8)(U)))
-
-#define _mm256_mask_permute_pd(W, U, X, C) \
- ((__m256d) __builtin_ia32_vpermilpd256_mask ((__v4df)(__m256d)(X), (int)(C), \
- (__v4df)(__m256d)(W), \
- (__mmask8)(U)))
-
-#define _mm256_maskz_permute_pd(U, X, C) \
- ((__m256d) __builtin_ia32_vpermilpd256_mask ((__v4df)(__m256d)(X), (int)(C), \
- (__v4df)(__m256d)_mm256_setzero_pd (),\
- (__mmask8)(U)))
-
-#define _mm256_mask_permute_ps(W, U, X, C) \
- ((__m256) __builtin_ia32_vpermilps256_mask ((__v8sf)(__m256)(X), (int)(C), \
- (__v8sf)(__m256)(W), (__mmask8)(U)))
-
-#define _mm256_maskz_permute_ps(U, X, C) \
- ((__m256) __builtin_ia32_vpermilps256_mask ((__v8sf)(__m256)(X), (int)(C), \
- (__v8sf)(__m256)_mm256_setzero_ps (), \
- (__mmask8)(U)))
-
-#define _mm_mask_permute_pd(W, U, X, C) \
- ((__m128d) __builtin_ia32_vpermilpd_mask ((__v2df)(__m128d)(X), (int)(C), \
- (__v2df)(__m128d)(W), (__mmask8)(U)))
-
-#define _mm_maskz_permute_pd(U, X, C) \
- ((__m128d) __builtin_ia32_vpermilpd_mask ((__v2df)(__m128d)(X), (int)(C), \
- (__v2df)(__m128d)_mm_setzero_pd (), \
- (__mmask8)(U)))
-
-#define _mm_mask_permute_ps(W, U, X, C) \
- ((__m128) __builtin_ia32_vpermilps_mask ((__v4sf)(__m128)(X), (int)(C), \
- (__v4sf)(__m128)(W), (__mmask8)(U)))
-
-#define _mm_maskz_permute_ps(U, X, C) \
- ((__m128) __builtin_ia32_vpermilps_mask ((__v4sf)(__m128)(X), (int)(C), \
- (__v4sf)(__m128)_mm_setzero_ps (), \
- (__mmask8)(U)))
-
-#define _mm256_mask_blend_pd(__U, __A, __W) \
- ((__m256d) __builtin_ia32_blendmpd_256_mask ((__v4df) (__A), \
- (__v4df) (__W), \
- (__mmask8) (__U)))
-
-#define _mm256_mask_blend_ps(__U, __A, __W) \
- ((__m256) __builtin_ia32_blendmps_256_mask ((__v8sf) (__A), \
- (__v8sf) (__W), \
- (__mmask8) (__U)))
-
-#define _mm256_mask_blend_epi64(__U, __A, __W) \
- ((__m256i) __builtin_ia32_blendmq_256_mask ((__v4di) (__A), \
- (__v4di) (__W), \
- (__mmask8) (__U)))
-
-#define _mm256_mask_blend_epi32(__U, __A, __W) \
- ((__m256i) __builtin_ia32_blendmd_256_mask ((__v8si) (__A), \
- (__v8si) (__W), \
- (__mmask8) (__U)))
-
-#define _mm_mask_blend_pd(__U, __A, __W) \
- ((__m128d) __builtin_ia32_blendmpd_128_mask ((__v2df) (__A), \
- (__v2df) (__W), \
- (__mmask8) (__U)))
-
-#define _mm_mask_blend_ps(__U, __A, __W) \
- ((__m128) __builtin_ia32_blendmps_128_mask ((__v4sf) (__A), \
- (__v4sf) (__W), \
- (__mmask8) (__U)))
-
-#define _mm_mask_blend_epi64(__U, __A, __W) \
- ((__m128i) __builtin_ia32_blendmq_128_mask ((__v2di) (__A), \
- (__v2di) (__W), \
- (__mmask8) (__U)))
-
-#define _mm_mask_blend_epi32(__U, __A, __W) \
- ((__m128i) __builtin_ia32_blendmd_128_mask ((__v4si) (__A), \
- (__v4si) (__W), \
- (__mmask8) (__U)))
-
-#define _mm256_cmp_epu32_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm256_cmp_epi64_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpq256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm256_cmp_epi32_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpd256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm256_cmp_epu64_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm256_cmp_pd_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmppd256_mask ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm256_cmp_ps_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpps256_mask ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm256_mask_cmp_epi64_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpq256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm256_mask_cmp_epi32_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpd256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm256_mask_cmp_epu64_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpq256_mask ((__v4di)(__m256i)(X), \
- (__v4di)(__m256i)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm256_mask_cmp_epu32_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpd256_mask ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm256_mask_cmp_pd_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmppd256_mask ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm256_mask_cmp_ps_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpps256_mask ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm_cmp_epi64_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpq128_mask ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm_cmp_epi32_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpd128_mask ((__v4si)(__m128i)(X), \
- (__v4si)(__m128i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm_cmp_epu64_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm_cmp_epu32_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si)(__m128i)(X), \
- (__v4si)(__m128i)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm_cmp_pd_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmppd128_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm_cmp_ps_mask(X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpps128_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (int)(P),\
- (__mmask8)-1))
-
-#define _mm_mask_cmp_epi64_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpq128_mask ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm_mask_cmp_epi32_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpd128_mask ((__v4si)(__m128i)(X), \
- (__v4si)(__m128i)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm_mask_cmp_epu64_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpq128_mask ((__v2di)(__m128i)(X), \
- (__v2di)(__m128i)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm_mask_cmp_epu32_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_ucmpd128_mask ((__v4si)(__m128i)(X), \
- (__v4si)(__m128i)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm_mask_cmp_pd_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmppd128_mask ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#define _mm_mask_cmp_ps_mask(M, X, Y, P) \
- ((__mmask8) __builtin_ia32_cmpps128_mask ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (int)(P),\
- (__mmask8)(M)))
-
-#endif
-
-#define _mm256_permutexvar_ps(A, B) _mm256_permutevar8x32_ps ((B), (A))
-
-#ifdef __DISABLE_AVX512VL__
-#undef __DISABLE_AVX512VL__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512VL__ */
-
-#endif /* _AVX512VLINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vpopcntdqintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vpopcntdqintrin.h
deleted file mode 100644
index 969a23785c..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avx512vpopcntdqintrin.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/* Copyright (C) 2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#if !defined _IMMINTRIN_H_INCLUDED
-# error "Never use directly; include instead."
-#endif
-
-#ifndef _AVX512VPOPCNTDQINTRIN_H_INCLUDED
-#define _AVX512VPOPCNTDQINTRIN_H_INCLUDED
-
-#ifndef __AVX512VPOPCNTDQ__
-#pragma GCC push_options
-//#pragma GCC target("avx512vpopcntdq")
-#define __DISABLE_AVX512VPOPCNTDQ__
-#endif /* __AVX512VPOPCNTDQ__ */
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_popcnt_epi32 (__m512i __A)
-{
- return (__m512i) __builtin_ia32_vpopcountd_v16si ((__v16si) __A);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_popcnt_epi32 (__m512i __A, __mmask16 __U, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpopcountd_v16si_mask ((__v16si) __A,
- (__v16si) __B,
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_popcnt_epi32 (__mmask16 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_vpopcountd_v16si_mask ((__v16si) __A,
- (__v16si)
- _mm512_setzero_si512 (),
- (__mmask16) __U);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_popcnt_epi64 (__m512i __A)
-{
- return (__m512i) __builtin_ia32_vpopcountq_v8di ((__v8di) __A);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_popcnt_epi64 (__m512i __A, __mmask8 __U, __m512i __B)
-{
- return (__m512i) __builtin_ia32_vpopcountq_v8di_mask ((__v8di) __A,
- (__v8di) __B,
- (__mmask8) __U);
-}
-
-extern __inline __m512i
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_popcnt_epi64 (__mmask8 __U, __m512i __A)
-{
- return (__m512i) __builtin_ia32_vpopcountq_v8di_mask ((__v8di) __A,
- (__v8di)
- _mm512_setzero_si512 (),
- (__mmask8) __U);
-}
-
-#ifdef __DISABLE_AVX512VPOPCNTDQ__
-#undef __DISABLE_AVX512VPOPCNTDQ__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX512VPOPCNTDQ__ */
-
-#endif /* _AVX512VPOPCNTDQINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avxintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avxintrin.h
deleted file mode 100644
index 20c5a078a9..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/avxintrin.h
+++ /dev/null
@@ -1,1492 +0,0 @@
-/* Copyright (C) 2008-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-/* Implemented from the specification included in the Intel C++ Compiler
- User Guide and Reference, version 11.0. */
-
-#ifndef _IMMINTRIN_H_INCLUDED
-# error "Never use directly; include instead."
-#endif
-
-#ifndef _AVXINTRIN_H_INCLUDED
-#define _AVXINTRIN_H_INCLUDED
-
-#ifndef __AVX__
-#pragma GCC push_options
-#pragma GCC target("avx")
-#define __DISABLE_AVX__
-#endif /* __AVX__ */
-
-/* Internal data types for implementing the intrinsics. */
-typedef double __v4df __attribute__ ((__vector_size__ (32)));
-typedef float __v8sf __attribute__ ((__vector_size__ (32)));
-typedef long long __v4di __attribute__ ((__vector_size__ (32)));
-typedef unsigned long long __v4du __attribute__ ((__vector_size__ (32)));
-typedef int __v8si __attribute__ ((__vector_size__ (32)));
-typedef unsigned int __v8su __attribute__ ((__vector_size__ (32)));
-typedef short __v16hi __attribute__ ((__vector_size__ (32)));
-typedef unsigned short __v16hu __attribute__ ((__vector_size__ (32)));
-typedef char __v32qi __attribute__ ((__vector_size__ (32)));
-typedef unsigned char __v32qu __attribute__ ((__vector_size__ (32)));
-
-/* The Intel API is flexible enough that we must allow aliasing with other
- vector types, and their scalar components. */
-typedef float __m256 __attribute__ ((__vector_size__ (32),
- __may_alias__));
-typedef long long __m256i __attribute__ ((__vector_size__ (32),
- __may_alias__));
-typedef double __m256d __attribute__ ((__vector_size__ (32),
- __may_alias__));
-
-/* Unaligned version of the same types. */
-typedef float __m256_u __attribute__ ((__vector_size__ (32),
- __may_alias__,
- __aligned__ (1)));
-typedef long long __m256i_u __attribute__ ((__vector_size__ (32),
- __may_alias__,
- __aligned__ (1)));
-typedef double __m256d_u __attribute__ ((__vector_size__ (32),
- __may_alias__,
- __aligned__ (1)));
-
-/* Compare predicates for scalar and packed compare intrinsics. */
-
-/* Equal (ordered, non-signaling) */
-#define _CMP_EQ_OQ 0x00
-/* Less-than (ordered, signaling) */
-#define _CMP_LT_OS 0x01
-/* Less-than-or-equal (ordered, signaling) */
-#define _CMP_LE_OS 0x02
-/* Unordered (non-signaling) */
-#define _CMP_UNORD_Q 0x03
-/* Not-equal (unordered, non-signaling) */
-#define _CMP_NEQ_UQ 0x04
-/* Not-less-than (unordered, signaling) */
-#define _CMP_NLT_US 0x05
-/* Not-less-than-or-equal (unordered, signaling) */
-#define _CMP_NLE_US 0x06
-/* Ordered (nonsignaling) */
-#define _CMP_ORD_Q 0x07
-/* Equal (unordered, non-signaling) */
-#define _CMP_EQ_UQ 0x08
-/* Not-greater-than-or-equal (unordered, signaling) */
-#define _CMP_NGE_US 0x09
-/* Not-greater-than (unordered, signaling) */
-#define _CMP_NGT_US 0x0a
-/* False (ordered, non-signaling) */
-#define _CMP_FALSE_OQ 0x0b
-/* Not-equal (ordered, non-signaling) */
-#define _CMP_NEQ_OQ 0x0c
-/* Greater-than-or-equal (ordered, signaling) */
-#define _CMP_GE_OS 0x0d
-/* Greater-than (ordered, signaling) */
-#define _CMP_GT_OS 0x0e
-/* True (unordered, non-signaling) */
-#define _CMP_TRUE_UQ 0x0f
-/* Equal (ordered, signaling) */
-#define _CMP_EQ_OS 0x10
-/* Less-than (ordered, non-signaling) */
-#define _CMP_LT_OQ 0x11
-/* Less-than-or-equal (ordered, non-signaling) */
-#define _CMP_LE_OQ 0x12
-/* Unordered (signaling) */
-#define _CMP_UNORD_S 0x13
-/* Not-equal (unordered, signaling) */
-#define _CMP_NEQ_US 0x14
-/* Not-less-than (unordered, non-signaling) */
-#define _CMP_NLT_UQ 0x15
-/* Not-less-than-or-equal (unordered, non-signaling) */
-#define _CMP_NLE_UQ 0x16
-/* Ordered (signaling) */
-#define _CMP_ORD_S 0x17
-/* Equal (unordered, signaling) */
-#define _CMP_EQ_US 0x18
-/* Not-greater-than-or-equal (unordered, non-signaling) */
-#define _CMP_NGE_UQ 0x19
-/* Not-greater-than (unordered, non-signaling) */
-#define _CMP_NGT_UQ 0x1a
-/* False (ordered, signaling) */
-#define _CMP_FALSE_OS 0x1b
-/* Not-equal (ordered, signaling) */
-#define _CMP_NEQ_OS 0x1c
-/* Greater-than-or-equal (ordered, non-signaling) */
-#define _CMP_GE_OQ 0x1d
-/* Greater-than (ordered, non-signaling) */
-#define _CMP_GT_OQ 0x1e
-/* True (unordered, signaling) */
-#define _CMP_TRUE_US 0x1f
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_add_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) ((__v4df)__A + (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_add_ps (__m256 __A, __m256 __B)
-{
- return (__m256) ((__v8sf)__A + (__v8sf)__B);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_addsub_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_addsubpd256 ((__v4df)__A, (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_addsub_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_addsubps256 ((__v8sf)__A, (__v8sf)__B);
-}
-
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_and_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_andpd256 ((__v4df)__A, (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_and_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_andps256 ((__v8sf)__A, (__v8sf)__B);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_andnot_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_andnpd256 ((__v4df)__A, (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_andnot_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_andnps256 ((__v8sf)__A, (__v8sf)__B);
-}
-
-/* Double/single precision floating point blend instructions - select
- data from 2 sources using constant/variable mask. */
-
-#ifdef __OPTIMIZE__
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_blend_pd (__m256d __X, __m256d __Y, const int __M)
-{
- return (__m256d) __builtin_ia32_blendpd256 ((__v4df)__X,
- (__v4df)__Y,
- __M);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_blend_ps (__m256 __X, __m256 __Y, const int __M)
-{
- return (__m256) __builtin_ia32_blendps256 ((__v8sf)__X,
- (__v8sf)__Y,
- __M);
-}
-#else
-#define _mm256_blend_pd(X, Y, M) \
- ((__m256d) __builtin_ia32_blendpd256 ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), (int)(M)))
-
-#define _mm256_blend_ps(X, Y, M) \
- ((__m256) __builtin_ia32_blendps256 ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), (int)(M)))
-#endif
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_blendv_pd (__m256d __X, __m256d __Y, __m256d __M)
-{
- return (__m256d) __builtin_ia32_blendvpd256 ((__v4df)__X,
- (__v4df)__Y,
- (__v4df)__M);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_blendv_ps (__m256 __X, __m256 __Y, __m256 __M)
-{
- return (__m256) __builtin_ia32_blendvps256 ((__v8sf)__X,
- (__v8sf)__Y,
- (__v8sf)__M);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_div_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) ((__v4df)__A / (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_div_ps (__m256 __A, __m256 __B)
-{
- return (__m256) ((__v8sf)__A / (__v8sf)__B);
-}
-
-/* Dot product instructions with mask-defined summing and zeroing parts
- of result. */
-
-#ifdef __OPTIMIZE__
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_dp_ps (__m256 __X, __m256 __Y, const int __M)
-{
- return (__m256) __builtin_ia32_dpps256 ((__v8sf)__X,
- (__v8sf)__Y,
- __M);
-}
-#else
-#define _mm256_dp_ps(X, Y, M) \
- ((__m256) __builtin_ia32_dpps256 ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), (int)(M)))
-#endif
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hadd_pd (__m256d __X, __m256d __Y)
-{
- return (__m256d) __builtin_ia32_haddpd256 ((__v4df)__X, (__v4df)__Y);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hadd_ps (__m256 __X, __m256 __Y)
-{
- return (__m256) __builtin_ia32_haddps256 ((__v8sf)__X, (__v8sf)__Y);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hsub_pd (__m256d __X, __m256d __Y)
-{
- return (__m256d) __builtin_ia32_hsubpd256 ((__v4df)__X, (__v4df)__Y);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_hsub_ps (__m256 __X, __m256 __Y)
-{
- return (__m256) __builtin_ia32_hsubps256 ((__v8sf)__X, (__v8sf)__Y);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_maxpd256 ((__v4df)__A, (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_max_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_maxps256 ((__v8sf)__A, (__v8sf)__B);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_minpd256 ((__v4df)__A, (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_min_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_minps256 ((__v8sf)__A, (__v8sf)__B);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mul_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) ((__v4df)__A * (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mul_ps (__m256 __A, __m256 __B)
-{
- return (__m256) ((__v8sf)__A * (__v8sf)__B);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_or_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_orpd256 ((__v4df)__A, (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_or_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_orps256 ((__v8sf)__A, (__v8sf)__B);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shuffle_pd (__m256d __A, __m256d __B, const int __mask)
-{
- return (__m256d) __builtin_ia32_shufpd256 ((__v4df)__A, (__v4df)__B,
- __mask);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_shuffle_ps (__m256 __A, __m256 __B, const int __mask)
-{
- return (__m256) __builtin_ia32_shufps256 ((__v8sf)__A, (__v8sf)__B,
- __mask);
-}
-#else
-#define _mm256_shuffle_pd(A, B, N) \
- ((__m256d)__builtin_ia32_shufpd256 ((__v4df)(__m256d)(A), \
- (__v4df)(__m256d)(B), (int)(N)))
-
-#define _mm256_shuffle_ps(A, B, N) \
- ((__m256) __builtin_ia32_shufps256 ((__v8sf)(__m256)(A), \
- (__v8sf)(__m256)(B), (int)(N)))
-#endif
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sub_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) ((__v4df)__A - (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sub_ps (__m256 __A, __m256 __B)
-{
- return (__m256) ((__v8sf)__A - (__v8sf)__B);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_xor_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_xorpd256 ((__v4df)__A, (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_xor_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_xorps256 ((__v8sf)__A, (__v8sf)__B);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_pd (__m128d __X, __m128d __Y, const int __P)
-{
- return (__m128d) __builtin_ia32_cmppd ((__v2df)__X, (__v2df)__Y, __P);
-}
-
-extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_ps (__m128 __X, __m128 __Y, const int __P)
-{
- return (__m128) __builtin_ia32_cmpps ((__v4sf)__X, (__v4sf)__Y, __P);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_pd (__m256d __X, __m256d __Y, const int __P)
-{
- return (__m256d) __builtin_ia32_cmppd256 ((__v4df)__X, (__v4df)__Y,
- __P);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cmp_ps (__m256 __X, __m256 __Y, const int __P)
-{
- return (__m256) __builtin_ia32_cmpps256 ((__v8sf)__X, (__v8sf)__Y,
- __P);
-}
-
-extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_sd (__m128d __X, __m128d __Y, const int __P)
-{
- return (__m128d) __builtin_ia32_cmpsd ((__v2df)__X, (__v2df)__Y, __P);
-}
-
-extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_cmp_ss (__m128 __X, __m128 __Y, const int __P)
-{
- return (__m128) __builtin_ia32_cmpss ((__v4sf)__X, (__v4sf)__Y, __P);
-}
-#else
-#define _mm_cmp_pd(X, Y, P) \
- ((__m128d) __builtin_ia32_cmppd ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (int)(P)))
-
-#define _mm_cmp_ps(X, Y, P) \
- ((__m128) __builtin_ia32_cmpps ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (int)(P)))
-
-#define _mm256_cmp_pd(X, Y, P) \
- ((__m256d) __builtin_ia32_cmppd256 ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), (int)(P)))
-
-#define _mm256_cmp_ps(X, Y, P) \
- ((__m256) __builtin_ia32_cmpps256 ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), (int)(P)))
-
-#define _mm_cmp_sd(X, Y, P) \
- ((__m128d) __builtin_ia32_cmpsd ((__v2df)(__m128d)(X), \
- (__v2df)(__m128d)(Y), (int)(P)))
-
-#define _mm_cmp_ss(X, Y, P) \
- ((__m128) __builtin_ia32_cmpss ((__v4sf)(__m128)(X), \
- (__v4sf)(__m128)(Y), (int)(P)))
-#endif
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi32_pd (__m128i __A)
-{
- return (__m256d)__builtin_ia32_cvtdq2pd256 ((__v4si) __A);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtepi32_ps (__m256i __A)
-{
- return (__m256)__builtin_ia32_cvtdq2ps256 ((__v8si) __A);
-}
-
-extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtpd_ps (__m256d __A)
-{
- return (__m128)__builtin_ia32_cvtpd2ps256 ((__v4df) __A);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtps_epi32 (__m256 __A)
-{
- return (__m256i)__builtin_ia32_cvtps2dq256 ((__v8sf) __A);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtps_pd (__m128 __A)
-{
- return (__m256d)__builtin_ia32_cvtps2pd256 ((__v4sf) __A);
-}
-
-extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvttpd_epi32 (__m256d __A)
-{
- return (__m128i)__builtin_ia32_cvttpd2dq256 ((__v4df) __A);
-}
-
-extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtpd_epi32 (__m256d __A)
-{
- return (__m128i)__builtin_ia32_cvtpd2dq256 ((__v4df) __A);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvttps_epi32 (__m256 __A)
-{
- return (__m256i)__builtin_ia32_cvttps2dq256 ((__v8sf) __A);
-}
-
-extern __inline double
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtsd_f64 (__m256d __A)
-{
- return __A[0];
-}
-
-extern __inline float
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_cvtss_f32 (__m256 __A)
-{
- return __A[0];
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extractf128_pd (__m256d __X, const int __N)
-{
- return (__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)__X, __N);
-}
-
-extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extractf128_ps (__m256 __X, const int __N)
-{
- return (__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)__X, __N);
-}
-
-extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extractf128_si256 (__m256i __X, const int __N)
-{
- return (__m128i) __builtin_ia32_vextractf128_si256 ((__v8si)__X, __N);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extract_epi32 (__m256i __X, int const __N)
-{
- __m128i __Y = _mm256_extractf128_si256 (__X, __N >> 2);
- return _mm_extract_epi32 (__Y, __N % 4);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extract_epi16 (__m256i __X, int const __N)
-{
- __m128i __Y = _mm256_extractf128_si256 (__X, __N >> 3);
- return _mm_extract_epi16 (__Y, __N % 8);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extract_epi8 (__m256i __X, int const __N)
-{
- __m128i __Y = _mm256_extractf128_si256 (__X, __N >> 4);
- return _mm_extract_epi8 (__Y, __N % 16);
-}
-
-#ifdef __x86_64__
-extern __inline long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_extract_epi64 (__m256i __X, const int __N)
-{
- __m128i __Y = _mm256_extractf128_si256 (__X, __N >> 1);
- return _mm_extract_epi64 (__Y, __N % 2);
-}
-#endif
-#else
-#define _mm256_extractf128_pd(X, N) \
- ((__m128d) __builtin_ia32_vextractf128_pd256 ((__v4df)(__m256d)(X), \
- (int)(N)))
-
-#define _mm256_extractf128_ps(X, N) \
- ((__m128) __builtin_ia32_vextractf128_ps256 ((__v8sf)(__m256)(X), \
- (int)(N)))
-
-#define _mm256_extractf128_si256(X, N) \
- ((__m128i) __builtin_ia32_vextractf128_si256 ((__v8si)(__m256i)(X), \
- (int)(N)))
-
-#define _mm256_extract_epi32(X, N) \
- (__extension__ \
- ({ \
- __m128i __Y = _mm256_extractf128_si256 ((X), (N) >> 2); \
- _mm_extract_epi32 (__Y, (N) % 4); \
- }))
-
-#define _mm256_extract_epi16(X, N) \
- (__extension__ \
- ({ \
- __m128i __Y = _mm256_extractf128_si256 ((X), (N) >> 3); \
- _mm_extract_epi16 (__Y, (N) % 8); \
- }))
-
-#define _mm256_extract_epi8(X, N) \
- (__extension__ \
- ({ \
- __m128i __Y = _mm256_extractf128_si256 ((X), (N) >> 4); \
- _mm_extract_epi8 (__Y, (N) % 16); \
- }))
-
-#ifdef __x86_64__
-#define _mm256_extract_epi64(X, N) \
- (__extension__ \
- ({ \
- __m128i __Y = _mm256_extractf128_si256 ((X), (N) >> 1); \
- _mm_extract_epi64 (__Y, (N) % 2); \
- }))
-#endif
-#endif
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_zeroall (void)
-{
- __builtin_ia32_vzeroall ();
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_zeroupper (void)
-{
- __builtin_ia32_vzeroupper ();
-}
-
-extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutevar_pd (__m128d __A, __m128i __C)
-{
- return (__m128d) __builtin_ia32_vpermilvarpd ((__v2df)__A,
- (__v2di)__C);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutevar_pd (__m256d __A, __m256i __C)
-{
- return (__m256d) __builtin_ia32_vpermilvarpd256 ((__v4df)__A,
- (__v4di)__C);
-}
-
-extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permutevar_ps (__m128 __A, __m128i __C)
-{
- return (__m128) __builtin_ia32_vpermilvarps ((__v4sf)__A,
- (__v4si)__C);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permutevar_ps (__m256 __A, __m256i __C)
-{
- return (__m256) __builtin_ia32_vpermilvarps256 ((__v8sf)__A,
- (__v8si)__C);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permute_pd (__m128d __X, const int __C)
-{
- return (__m128d) __builtin_ia32_vpermilpd ((__v2df)__X, __C);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permute_pd (__m256d __X, const int __C)
-{
- return (__m256d) __builtin_ia32_vpermilpd256 ((__v4df)__X, __C);
-}
-
-extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_permute_ps (__m128 __X, const int __C)
-{
- return (__m128) __builtin_ia32_vpermilps ((__v4sf)__X, __C);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permute_ps (__m256 __X, const int __C)
-{
- return (__m256) __builtin_ia32_vpermilps256 ((__v8sf)__X, __C);
-}
-#else
-#define _mm_permute_pd(X, C) \
- ((__m128d) __builtin_ia32_vpermilpd ((__v2df)(__m128d)(X), (int)(C)))
-
-#define _mm256_permute_pd(X, C) \
- ((__m256d) __builtin_ia32_vpermilpd256 ((__v4df)(__m256d)(X), (int)(C)))
-
-#define _mm_permute_ps(X, C) \
- ((__m128) __builtin_ia32_vpermilps ((__v4sf)(__m128)(X), (int)(C)))
-
-#define _mm256_permute_ps(X, C) \
- ((__m256) __builtin_ia32_vpermilps256 ((__v8sf)(__m256)(X), (int)(C)))
-#endif
-
-#ifdef __OPTIMIZE__
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permute2f128_pd (__m256d __X, __m256d __Y, const int __C)
-{
- return (__m256d) __builtin_ia32_vperm2f128_pd256 ((__v4df)__X,
- (__v4df)__Y,
- __C);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permute2f128_ps (__m256 __X, __m256 __Y, const int __C)
-{
- return (__m256) __builtin_ia32_vperm2f128_ps256 ((__v8sf)__X,
- (__v8sf)__Y,
- __C);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_permute2f128_si256 (__m256i __X, __m256i __Y, const int __C)
-{
- return (__m256i) __builtin_ia32_vperm2f128_si256 ((__v8si)__X,
- (__v8si)__Y,
- __C);
-}
-#else
-#define _mm256_permute2f128_pd(X, Y, C) \
- ((__m256d) __builtin_ia32_vperm2f128_pd256 ((__v4df)(__m256d)(X), \
- (__v4df)(__m256d)(Y), \
- (int)(C)))
-
-#define _mm256_permute2f128_ps(X, Y, C) \
- ((__m256) __builtin_ia32_vperm2f128_ps256 ((__v8sf)(__m256)(X), \
- (__v8sf)(__m256)(Y), \
- (int)(C)))
-
-#define _mm256_permute2f128_si256(X, Y, C) \
- ((__m256i) __builtin_ia32_vperm2f128_si256 ((__v8si)(__m256i)(X), \
- (__v8si)(__m256i)(Y), \
- (int)(C)))
-#endif
-
-extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_broadcast_ss (float const *__X)
-{
- return (__m128) __builtin_ia32_vbroadcastss (__X);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_sd (double const *__X)
-{
- return (__m256d) __builtin_ia32_vbroadcastsd256 (__X);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_ss (float const *__X)
-{
- return (__m256) __builtin_ia32_vbroadcastss256 (__X);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_pd (__m128d const *__X)
-{
- return (__m256d) __builtin_ia32_vbroadcastf128_pd256 (__X);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_broadcast_ps (__m128 const *__X)
-{
- return (__m256) __builtin_ia32_vbroadcastf128_ps256 (__X);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_insertf128_pd (__m256d __X, __m128d __Y, const int __O)
-{
- return (__m256d) __builtin_ia32_vinsertf128_pd256 ((__v4df)__X,
- (__v2df)__Y,
- __O);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_insertf128_ps (__m256 __X, __m128 __Y, const int __O)
-{
- return (__m256) __builtin_ia32_vinsertf128_ps256 ((__v8sf)__X,
- (__v4sf)__Y,
- __O);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_insertf128_si256 (__m256i __X, __m128i __Y, const int __O)
-{
- return (__m256i) __builtin_ia32_vinsertf128_si256 ((__v8si)__X,
- (__v4si)__Y,
- __O);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_insert_epi32 (__m256i __X, int __D, int const __N)
-{
- __m128i __Y = _mm256_extractf128_si256 (__X, __N >> 2);
- __Y = _mm_insert_epi32 (__Y, __D, __N % 4);
- return _mm256_insertf128_si256 (__X, __Y, __N >> 2);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_insert_epi16 (__m256i __X, int __D, int const __N)
-{
- __m128i __Y = _mm256_extractf128_si256 (__X, __N >> 3);
- __Y = _mm_insert_epi16 (__Y, __D, __N % 8);
- return _mm256_insertf128_si256 (__X, __Y, __N >> 3);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_insert_epi8 (__m256i __X, int __D, int const __N)
-{
- __m128i __Y = _mm256_extractf128_si256 (__X, __N >> 4);
- __Y = _mm_insert_epi8 (__Y, __D, __N % 16);
- return _mm256_insertf128_si256 (__X, __Y, __N >> 4);
-}
-
-#ifdef __x86_64__
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_insert_epi64 (__m256i __X, long long __D, int const __N)
-{
- __m128i __Y = _mm256_extractf128_si256 (__X, __N >> 1);
- __Y = _mm_insert_epi64 (__Y, __D, __N % 2);
- return _mm256_insertf128_si256 (__X, __Y, __N >> 1);
-}
-#endif
-#else
-#define _mm256_insertf128_pd(X, Y, O) \
- ((__m256d) __builtin_ia32_vinsertf128_pd256 ((__v4df)(__m256d)(X), \
- (__v2df)(__m128d)(Y), \
- (int)(O)))
-
-#define _mm256_insertf128_ps(X, Y, O) \
- ((__m256) __builtin_ia32_vinsertf128_ps256 ((__v8sf)(__m256)(X), \
- (__v4sf)(__m128)(Y), \
- (int)(O)))
-
-#define _mm256_insertf128_si256(X, Y, O) \
- ((__m256i) __builtin_ia32_vinsertf128_si256 ((__v8si)(__m256i)(X), \
- (__v4si)(__m128i)(Y), \
- (int)(O)))
-
-#define _mm256_insert_epi32(X, D, N) \
- (__extension__ \
- ({ \
- __m128i __Y = _mm256_extractf128_si256 ((X), (N) >> 2); \
- __Y = _mm_insert_epi32 (__Y, (D), (N) % 4); \
- _mm256_insertf128_si256 ((X), __Y, (N) >> 2); \
- }))
-
-#define _mm256_insert_epi16(X, D, N) \
- (__extension__ \
- ({ \
- __m128i __Y = _mm256_extractf128_si256 ((X), (N) >> 3); \
- __Y = _mm_insert_epi16 (__Y, (D), (N) % 8); \
- _mm256_insertf128_si256 ((X), __Y, (N) >> 3); \
- }))
-
-#define _mm256_insert_epi8(X, D, N) \
- (__extension__ \
- ({ \
- __m128i __Y = _mm256_extractf128_si256 ((X), (N) >> 4); \
- __Y = _mm_insert_epi8 (__Y, (D), (N) % 16); \
- _mm256_insertf128_si256 ((X), __Y, (N) >> 4); \
- }))
-
-#ifdef __x86_64__
-#define _mm256_insert_epi64(X, D, N) \
- (__extension__ \
- ({ \
- __m128i __Y = _mm256_extractf128_si256 ((X), (N) >> 1); \
- __Y = _mm_insert_epi64 (__Y, (D), (N) % 2); \
- _mm256_insertf128_si256 ((X), __Y, (N) >> 1); \
- }))
-#endif
-#endif
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_load_pd (double const *__P)
-{
- return *(__m256d *)__P;
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_store_pd (double *__P, __m256d __A)
-{
- *(__m256d *)__P = __A;
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_load_ps (float const *__P)
-{
- return *(__m256 *)__P;
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_store_ps (float *__P, __m256 __A)
-{
- *(__m256 *)__P = __A;
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_loadu_pd (double const *__P)
-{
- return *(__m256d_u *)__P;
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_storeu_pd (double *__P, __m256d __A)
-{
- *(__m256d_u *)__P = __A;
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_loadu_ps (float const *__P)
-{
- return *(__m256_u *)__P;
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_storeu_ps (float *__P, __m256 __A)
-{
- *(__m256_u *)__P = __A;
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_load_si256 (__m256i const *__P)
-{
- return *__P;
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_store_si256 (__m256i *__P, __m256i __A)
-{
- *__P = __A;
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_loadu_si256 (__m256i_u const *__P)
-{
- return *__P;
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
-{
- *__P = __A;
-}
-
-extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskload_pd (double const *__P, __m128i __M)
-{
- return (__m128d) __builtin_ia32_maskloadpd ((const __v2df *)__P,
- (__v2di)__M);
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskstore_pd (double *__P, __m128i __M, __m128d __A)
-{
- __builtin_ia32_maskstorepd ((__v2df *)__P, (__v2di)__M, (__v2df)__A);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskload_pd (double const *__P, __m256i __M)
-{
- return (__m256d) __builtin_ia32_maskloadpd256 ((const __v4df *)__P,
- (__v4di)__M);
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskstore_pd (double *__P, __m256i __M, __m256d __A)
-{
- __builtin_ia32_maskstorepd256 ((__v4df *)__P, (__v4di)__M, (__v4df)__A);
-}
-
-extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskload_ps (float const *__P, __m128i __M)
-{
- return (__m128) __builtin_ia32_maskloadps ((const __v4sf *)__P,
- (__v4si)__M);
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskstore_ps (float *__P, __m128i __M, __m128 __A)
-{
- __builtin_ia32_maskstoreps ((__v4sf *)__P, (__v4si)__M, (__v4sf)__A);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskload_ps (float const *__P, __m256i __M)
-{
- return (__m256) __builtin_ia32_maskloadps256 ((const __v8sf *)__P,
- (__v8si)__M);
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskstore_ps (float *__P, __m256i __M, __m256 __A)
-{
- __builtin_ia32_maskstoreps256 ((__v8sf *)__P, (__v8si)__M, (__v8sf)__A);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movehdup_ps (__m256 __X)
-{
- return (__m256) __builtin_ia32_movshdup256 ((__v8sf)__X);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_moveldup_ps (__m256 __X)
-{
- return (__m256) __builtin_ia32_movsldup256 ((__v8sf)__X);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movedup_pd (__m256d __X)
-{
- return (__m256d) __builtin_ia32_movddup256 ((__v4df)__X);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_lddqu_si256 (__m256i const *__P)
-{
- return (__m256i) __builtin_ia32_lddqu256 ((char const *)__P);
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_stream_si256 (__m256i *__A, __m256i __B)
-{
- __builtin_ia32_movntdq256 ((__v4di *)__A, (__v4di)__B);
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_stream_pd (double *__A, __m256d __B)
-{
- __builtin_ia32_movntpd256 (__A, (__v4df)__B);
-}
-
-extern __inline void __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_stream_ps (float *__P, __m256 __A)
-{
- __builtin_ia32_movntps256 (__P, (__v8sf)__A);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rcp_ps (__m256 __A)
-{
- return (__m256) __builtin_ia32_rcpps256 ((__v8sf)__A);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_rsqrt_ps (__m256 __A)
-{
- return (__m256) __builtin_ia32_rsqrtps256 ((__v8sf)__A);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sqrt_pd (__m256d __A)
-{
- return (__m256d) __builtin_ia32_sqrtpd256 ((__v4df)__A);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_sqrt_ps (__m256 __A)
-{
- return (__m256) __builtin_ia32_sqrtps256 ((__v8sf)__A);
-}
-
-#ifdef __OPTIMIZE__
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_round_pd (__m256d __V, const int __M)
-{
- return (__m256d) __builtin_ia32_roundpd256 ((__v4df)__V, __M);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_round_ps (__m256 __V, const int __M)
-{
- return (__m256) __builtin_ia32_roundps256 ((__v8sf)__V, __M);
-}
-#else
-#define _mm256_round_pd(V, M) \
- ((__m256d) __builtin_ia32_roundpd256 ((__v4df)(__m256d)(V), (int)(M)))
-
-#define _mm256_round_ps(V, M) \
- ((__m256) __builtin_ia32_roundps256 ((__v8sf)(__m256)(V), (int)(M)))
-#endif
-
-#define _mm256_ceil_pd(V) _mm256_round_pd ((V), _MM_FROUND_CEIL)
-#define _mm256_floor_pd(V) _mm256_round_pd ((V), _MM_FROUND_FLOOR)
-#define _mm256_ceil_ps(V) _mm256_round_ps ((V), _MM_FROUND_CEIL)
-#define _mm256_floor_ps(V) _mm256_round_ps ((V), _MM_FROUND_FLOOR)
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpackhi_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_unpckhpd256 ((__v4df)__A, (__v4df)__B);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpacklo_pd (__m256d __A, __m256d __B)
-{
- return (__m256d) __builtin_ia32_unpcklpd256 ((__v4df)__A, (__v4df)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpackhi_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_unpckhps256 ((__v8sf)__A, (__v8sf)__B);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_unpacklo_ps (__m256 __A, __m256 __B)
-{
- return (__m256) __builtin_ia32_unpcklps256 ((__v8sf)__A, (__v8sf)__B);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testz_pd (__m128d __M, __m128d __V)
-{
- return __builtin_ia32_vtestzpd ((__v2df)__M, (__v2df)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testc_pd (__m128d __M, __m128d __V)
-{
- return __builtin_ia32_vtestcpd ((__v2df)__M, (__v2df)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testnzc_pd (__m128d __M, __m128d __V)
-{
- return __builtin_ia32_vtestnzcpd ((__v2df)__M, (__v2df)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testz_ps (__m128 __M, __m128 __V)
-{
- return __builtin_ia32_vtestzps ((__v4sf)__M, (__v4sf)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testc_ps (__m128 __M, __m128 __V)
-{
- return __builtin_ia32_vtestcps ((__v4sf)__M, (__v4sf)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm_testnzc_ps (__m128 __M, __m128 __V)
-{
- return __builtin_ia32_vtestnzcps ((__v4sf)__M, (__v4sf)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testz_pd (__m256d __M, __m256d __V)
-{
- return __builtin_ia32_vtestzpd256 ((__v4df)__M, (__v4df)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testc_pd (__m256d __M, __m256d __V)
-{
- return __builtin_ia32_vtestcpd256 ((__v4df)__M, (__v4df)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testnzc_pd (__m256d __M, __m256d __V)
-{
- return __builtin_ia32_vtestnzcpd256 ((__v4df)__M, (__v4df)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testz_ps (__m256 __M, __m256 __V)
-{
- return __builtin_ia32_vtestzps256 ((__v8sf)__M, (__v8sf)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testc_ps (__m256 __M, __m256 __V)
-{
- return __builtin_ia32_vtestcps256 ((__v8sf)__M, (__v8sf)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testnzc_ps (__m256 __M, __m256 __V)
-{
- return __builtin_ia32_vtestnzcps256 ((__v8sf)__M, (__v8sf)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testz_si256 (__m256i __M, __m256i __V)
-{
- return __builtin_ia32_ptestz256 ((__v4di)__M, (__v4di)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testc_si256 (__m256i __M, __m256i __V)
-{
- return __builtin_ia32_ptestc256 ((__v4di)__M, (__v4di)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_testnzc_si256 (__m256i __M, __m256i __V)
-{
- return __builtin_ia32_ptestnzc256 ((__v4di)__M, (__v4di)__V);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movemask_pd (__m256d __A)
-{
- return __builtin_ia32_movmskpd256 ((__v4df)__A);
-}
-
-extern __inline int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_movemask_ps (__m256 __A)
-{
- return __builtin_ia32_movmskps256 ((__v8sf)__A);
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_undefined_pd (void)
-{
- __m256d __Y = __Y;
- return __Y;
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_undefined_ps (void)
-{
- __m256 __Y = __Y;
- return __Y;
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_undefined_si256 (void)
-{
- __m256i __Y = __Y;
- return __Y;
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_setzero_pd (void)
-{
- return __extension__ (__m256d){ 0.0, 0.0, 0.0, 0.0 };
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_setzero_ps (void)
-{
- return __extension__ (__m256){ 0.0, 0.0, 0.0, 0.0,
- 0.0, 0.0, 0.0, 0.0 };
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_setzero_si256 (void)
-{
- return __extension__ (__m256i)(__v4di){ 0, 0, 0, 0 };
-}
-
-/* Create the vector [A B C D]. */
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set_pd (double __A, double __B, double __C, double __D)
-{
- return __extension__ (__m256d){ __D, __C, __B, __A };
-}
-
-/* Create the vector [A B C D E F G H]. */
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set_ps (float __A, float __B, float __C, float __D,
- float __E, float __F, float __G, float __H)
-{
- return __extension__ (__m256){ __H, __G, __F, __E,
- __D, __C, __B, __A };
-}
-
-/* Create the vector [A B C D E F G H]. */
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set_epi32 (int __A, int __B, int __C, int __D,
- int __E, int __F, int __G, int __H)
-{
- return __extension__ (__m256i)(__v8si){ __H, __G, __F, __E,
- __D, __C, __B, __A };
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set_epi16 (short __q15, short __q14, short __q13, short __q12,
- short __q11, short __q10, short __q09, short __q08,
- short __q07, short __q06, short __q05, short __q04,
- short __q03, short __q02, short __q01, short __q00)
-{
- return __extension__ (__m256i)(__v16hi){
- __q00, __q01, __q02, __q03, __q04, __q05, __q06, __q07,
- __q08, __q09, __q10, __q11, __q12, __q13, __q14, __q15
- };
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set_epi8 (char __q31, char __q30, char __q29, char __q28,
- char __q27, char __q26, char __q25, char __q24,
- char __q23, char __q22, char __q21, char __q20,
- char __q19, char __q18, char __q17, char __q16,
- char __q15, char __q14, char __q13, char __q12,
- char __q11, char __q10, char __q09, char __q08,
- char __q07, char __q06, char __q05, char __q04,
- char __q03, char __q02, char __q01, char __q00)
-{
- return __extension__ (__m256i)(__v32qi){
- __q00, __q01, __q02, __q03, __q04, __q05, __q06, __q07,
- __q08, __q09, __q10, __q11, __q12, __q13, __q14, __q15,
- __q16, __q17, __q18, __q19, __q20, __q21, __q22, __q23,
- __q24, __q25, __q26, __q27, __q28, __q29, __q30, __q31
- };
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set_epi64x (long long __A, long long __B, long long __C,
- long long __D)
-{
- return __extension__ (__m256i)(__v4di){ __D, __C, __B, __A };
-}
-
-/* Create a vector with all elements equal to A. */
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set1_pd (double __A)
-{
- return __extension__ (__m256d){ __A, __A, __A, __A };
-}
-
-/* Create a vector with all elements equal to A. */
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set1_ps (float __A)
-{
- return __extension__ (__m256){ __A, __A, __A, __A,
- __A, __A, __A, __A };
-}
-
-/* Create a vector with all elements equal to A. */
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set1_epi32 (int __A)
-{
- return __extension__ (__m256i)(__v8si){ __A, __A, __A, __A,
- __A, __A, __A, __A };
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set1_epi16 (short __A)
-{
- return _mm256_set_epi16 (__A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set1_epi8 (char __A)
-{
- return _mm256_set_epi8 (__A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A,
- __A, __A, __A, __A, __A, __A, __A, __A);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_set1_epi64x (long long __A)
-{
- return __extension__ (__m256i)(__v4di){ __A, __A, __A, __A };
-}
-
-/* Create vectors of elements in the reversed order from the
- _mm256_set_XXX functions. */
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_setr_pd (double __A, double __B, double __C, double __D)
-{
- return _mm256_set_pd (__D, __C, __B, __A);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_setr_ps (float __A, float __B, float __C, float __D,
- float __E, float __F, float __G, float __H)
-{
- return _mm256_set_ps (__H, __G, __F, __E, __D, __C, __B, __A);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_setr_epi32 (int __A, int __B, int __C, int __D,
- int __E, int __F, int __G, int __H)
-{
- return _mm256_set_epi32 (__H, __G, __F, __E, __D, __C, __B, __A);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_setr_epi16 (short __q15, short __q14, short __q13, short __q12,
- short __q11, short __q10, short __q09, short __q08,
- short __q07, short __q06, short __q05, short __q04,
- short __q03, short __q02, short __q01, short __q00)
-{
- return _mm256_set_epi16 (__q00, __q01, __q02, __q03,
- __q04, __q05, __q06, __q07,
- __q08, __q09, __q10, __q11,
- __q12, __q13, __q14, __q15);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_setr_epi8 (char __q31, char __q30, char __q29, char __q28,
- char __q27, char __q26, char __q25, char __q24,
- char __q23, char __q22, char __q21, char __q20,
- char __q19, char __q18, char __q17, char __q16,
- char __q15, char __q14, char __q13, char __q12,
- char __q11, char __q10, char __q09, char __q08,
- char __q07, char __q06, char __q05, char __q04,
- char __q03, char __q02, char __q01, char __q00)
-{
- return _mm256_set_epi8 (__q00, __q01, __q02, __q03,
- __q04, __q05, __q06, __q07,
- __q08, __q09, __q10, __q11,
- __q12, __q13, __q14, __q15,
- __q16, __q17, __q18, __q19,
- __q20, __q21, __q22, __q23,
- __q24, __q25, __q26, __q27,
- __q28, __q29, __q30, __q31);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_setr_epi64x (long long __A, long long __B, long long __C,
- long long __D)
-{
- return _mm256_set_epi64x (__D, __C, __B, __A);
-}
-
-/* Casts between various SP, DP, INT vector types. Note that these do no
- conversion of values, they just change the type. */
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castpd_ps (__m256d __A)
-{
- return (__m256) __A;
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castpd_si256 (__m256d __A)
-{
- return (__m256i) __A;
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castps_pd (__m256 __A)
-{
- return (__m256d) __A;
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castps_si256(__m256 __A)
-{
- return (__m256i) __A;
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castsi256_ps (__m256i __A)
-{
- return (__m256) __A;
-}
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castsi256_pd (__m256i __A)
-{
- return (__m256d) __A;
-}
-
-extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castpd256_pd128 (__m256d __A)
-{
- return (__m128d) __builtin_ia32_pd_pd256 ((__v4df)__A);
-}
-
-extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castps256_ps128 (__m256 __A)
-{
- return (__m128) __builtin_ia32_ps_ps256 ((__v8sf)__A);
-}
-
-extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castsi256_si128 (__m256i __A)
-{
- return (__m128i) __builtin_ia32_si_si256 ((__v8si)__A);
-}
-
-/* When cast is done from a 128 to 256-bit type, the low 128 bits of
- the 256-bit result contain source parameter value and the upper 128
- bits of the result are undefined. Those intrinsics shouldn't
- generate any extra moves. */
-
-extern __inline __m256d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castpd128_pd256 (__m128d __A)
-{
- return (__m256d) __builtin_ia32_pd256_pd ((__v2df)__A);
-}
-
-extern __inline __m256 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castps128_ps256 (__m128 __A)
-{
- return (__m256) __builtin_ia32_ps256_ps ((__v4sf)__A);
-}
-
-extern __inline __m256i __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_castsi128_si256 (__m128i __A)
-{
- return (__m256i) __builtin_ia32_si256_si ((__v4si)__A);
-}
-
-#ifdef __DISABLE_AVX__
-#undef __DISABLE_AVX__
-#pragma GCC pop_options
-#endif /* __DISABLE_AVX__ */
-
-#endif /* _AVXINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/bmi2intrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/bmi2intrin.h
deleted file mode 100644
index 29569ae8de..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/bmi2intrin.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/* Copyright (C) 2011-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#if !defined _X86INTRIN_H_INCLUDED && !defined _IMMINTRIN_H_INCLUDED
-# error "Never use directly; include instead."
-#endif
-
-#ifndef _BMI2INTRIN_H_INCLUDED
-#define _BMI2INTRIN_H_INCLUDED
-
-#ifndef __BMI2__
-#pragma GCC push_options
-#pragma GCC target("bmi2")
-#define __DISABLE_BMI2__
-#endif /* __BMI2__ */
-
-extern __inline unsigned int
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_bzhi_u32 (unsigned int __X, unsigned int __Y)
-{
- return __builtin_ia32_bzhi_si (__X, __Y);
-}
-
-extern __inline unsigned int
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_pdep_u32 (unsigned int __X, unsigned int __Y)
-{
- return __builtin_ia32_pdep_si (__X, __Y);
-}
-
-extern __inline unsigned int
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_pext_u32 (unsigned int __X, unsigned int __Y)
-{
- return __builtin_ia32_pext_si (__X, __Y);
-}
-
-#ifdef __x86_64__
-
-extern __inline unsigned long long
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_bzhi_u64 (unsigned long long __X, unsigned long long __Y)
-{
- return __builtin_ia32_bzhi_di (__X, __Y);
-}
-
-extern __inline unsigned long long
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_pdep_u64 (unsigned long long __X, unsigned long long __Y)
-{
- return __builtin_ia32_pdep_di (__X, __Y);
-}
-
-extern __inline unsigned long long
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_pext_u64 (unsigned long long __X, unsigned long long __Y)
-{
- return __builtin_ia32_pext_di (__X, __Y);
-}
-
-extern __inline unsigned long long
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mulx_u64 (unsigned long long __X, unsigned long long __Y,
- unsigned long long *__P)
-{
- unsigned __int128 __res = (unsigned __int128) __X * __Y;
- *__P = (unsigned long long) (__res >> 64);
- return (unsigned long long) __res;
-}
-
-#else /* !__x86_64__ */
-
-extern __inline unsigned int
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_mulx_u32 (unsigned int __X, unsigned int __Y, unsigned int *__P)
-{
- unsigned long long __res = (unsigned long long) __X * __Y;
- *__P = (unsigned int) (__res >> 32);
- return (unsigned int) __res;
-}
-
-#endif /* !__x86_64__ */
-
-#ifdef __DISABLE_BMI2__
-#undef __DISABLE_BMI2__
-#pragma GCC pop_options
-#endif /* __DISABLE_BMI2__ */
-
-#endif /* _BMI2INTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/bmiintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/bmiintrin.h
deleted file mode 100644
index 55c6219e97..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/bmiintrin.h
+++ /dev/null
@@ -1,184 +0,0 @@
-/* Copyright (C) 2010-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#if !defined _X86INTRIN_H_INCLUDED && !defined _IMMINTRIN_H_INCLUDED
-# error "Never use directly; include instead."
-#endif
-
-#ifndef _BMIINTRIN_H_INCLUDED
-#define _BMIINTRIN_H_INCLUDED
-
-#ifndef __BMI__
-#pragma GCC push_options
-#pragma GCC target("bmi")
-#define __DISABLE_BMI__
-#endif /* __BMI__ */
-
-extern __inline unsigned short __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__tzcnt_u16 (unsigned short __X)
-{
- return __builtin_ia32_tzcnt_u16 (__X);
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__andn_u32 (unsigned int __X, unsigned int __Y)
-{
- return ~__X & __Y;
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__bextr_u32 (unsigned int __X, unsigned int __Y)
-{
- return __builtin_ia32_bextr_u32 (__X, __Y);
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_bextr_u32 (unsigned int __X, unsigned int __Y, unsigned __Z)
-{
- return __builtin_ia32_bextr_u32 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__blsi_u32 (unsigned int __X)
-{
- return __X & -__X;
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_blsi_u32 (unsigned int __X)
-{
- return __blsi_u32 (__X);
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__blsmsk_u32 (unsigned int __X)
-{
- return __X ^ (__X - 1);
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_blsmsk_u32 (unsigned int __X)
-{
- return __blsmsk_u32 (__X);
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__blsr_u32 (unsigned int __X)
-{
- return __X & (__X - 1);
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_blsr_u32 (unsigned int __X)
-{
- return __blsr_u32 (__X);
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__tzcnt_u32 (unsigned int __X)
-{
- return __builtin_ia32_tzcnt_u32 (__X);
-}
-
-extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_tzcnt_u32 (unsigned int __X)
-{
- return __builtin_ia32_tzcnt_u32 (__X);
-}
-
-
-#ifdef __x86_64__
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__andn_u64 (unsigned long long __X, unsigned long long __Y)
-{
- return ~__X & __Y;
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__bextr_u64 (unsigned long long __X, unsigned long long __Y)
-{
- return __builtin_ia32_bextr_u64 (__X, __Y);
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_bextr_u64 (unsigned long long __X, unsigned int __Y, unsigned int __Z)
-{
- return __builtin_ia32_bextr_u64 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__blsi_u64 (unsigned long long __X)
-{
- return __X & -__X;
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_blsi_u64 (unsigned long long __X)
-{
- return __blsi_u64 (__X);
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__blsmsk_u64 (unsigned long long __X)
-{
- return __X ^ (__X - 1);
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_blsmsk_u64 (unsigned long long __X)
-{
- return __blsmsk_u64 (__X);
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__blsr_u64 (unsigned long long __X)
-{
- return __X & (__X - 1);
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_blsr_u64 (unsigned long long __X)
-{
- return __blsr_u64 (__X);
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-__tzcnt_u64 (unsigned long long __X)
-{
- return __builtin_ia32_tzcnt_u64 (__X);
-}
-
-extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_tzcnt_u64 (unsigned long long __X)
-{
- return __builtin_ia32_tzcnt_u64 (__X);
-}
-
-#endif /* __x86_64__ */
-
-#ifdef __DISABLE_BMI__
-#undef __DISABLE_BMI__
-#pragma GCC pop_options
-#endif /* __DISABLE_BMI__ */
-
-#endif /* _BMIINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/bmmintrin.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/bmmintrin.h
deleted file mode 100644
index f460393508..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/bmmintrin.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright (C) 2007-2017 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
-
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- . */
-
-#ifndef _BMMINTRIN_H_INCLUDED
-#define _BMMINTRIN_H_INCLUDED
-
-# error "SSE5 instruction set removed from compiler"
-
-#endif /* _BMMINTRIN_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk.h
deleted file mode 100644
index 86038ac1ad..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/* cilk.h -*-C++-*-
- *
- * Copyright (C) 2010-2016, Intel Corporation
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Intel Corporation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
- * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * *********************************************************************
- *
- * PLEASE NOTE: This file is a downstream copy of a file mainitained in
- * a repository at cilkplus.org. Changes made to this file that are not
- * submitted through the contribution process detailed at
- * http://www.cilkplus.org/submit-cilk-contribution will be lost the next
- * time that a new version is released. Changes only submitted to the
- * GNU compiler collection or posted to the git repository at
- * https://bitbucket.org/intelcilkruntime/intel-cilk-runtime.git are
- * not tracked.
- *
- * We welcome your contributions to this open source project. Thank you
- * for your assistance in helping us improve Cilk Plus.
- */
-
-/** @file cilk.h
- *
- * @brief Provides convenient aliases for Intel(R) Cilk(TM) language keywords.
- *
- * @details
- * Since Intel Cilk Plus is a nonstandard extension to both C and C++, the Intel
- * Cilk language keywords all begin with "`_Cilk_`", which guarantees that they
- * will not conflict with user-defined identifiers in properly written
- * programs. This way, a Cilk-enabled C or C++ compiler can safely compile
- * "standard" C and C++ programs.
- *
- * However, this means that the keywords _look_ like something grafted on to
- * the base language. Therefore, you can include this header:
- *
- * #include "cilk/cilk.h"
- *
- * and then write the Intel Cilk keywords with a "`cilk_`" prefix instead of
- * "`_Cilk_`".
- *
- * @ingroup language
- */
-
-
-/** @defgroup language Language Keywords
- * Definitions for the Intel Cilk language.
- * @{
- */
-
-#ifndef cilk_spawn
-# define cilk_spawn _Cilk_spawn ///< Spawn a task that can execute in parallel.
-# define cilk_sync _Cilk_sync ///< Wait for spawned tasks to complete.
-# define cilk_for _Cilk_for ///< Execute iterations of a `for` loop in parallel.
-#endif
-
-/// @}
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_api.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_api.h
deleted file mode 100644
index 6cc62c994b..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_api.h
+++ /dev/null
@@ -1,436 +0,0 @@
-/* cilk_api.h
- *
- * Copyright (C) 2009-2016, Intel Corporation
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Intel Corporation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
- * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * *********************************************************************
- *
- * PLEASE NOTE: This file is a downstream copy of a file mainitained in
- * a repository at cilkplus.org. Changes made to this file that are not
- * submitted through the contribution process detailed at
- * http://www.cilkplus.org/submit-cilk-contribution will be lost the next
- * time that a new version is released. Changes only submitted to the
- * GNU compiler collection or posted to the git repository at
- * https://bitbucket.org/intelcilkruntime/intel-cilk-runtime.git are
- * not tracked.
- *
- * We welcome your contributions to this open source project. Thank you
- * for your assistance in helping us improve Cilk Plus.
- */
-
-/** @file cilk_api.h
- *
- * @brief Defines the Intel(R) Cilk(TM) Plus API for use by applications.
- *
- * @ingroup api
- */
-
-#ifndef INCLUDED_CILK_API_H
-#define INCLUDED_CILK_API_H
-
-
-/** @defgroup api Runtime API
-* API to interact with the Intel Cilk Plus runtime.
-* @{
-*/
-
-#ifndef CILK_STUB /* Real (non-stub) definitions */
-
-#if ! defined(__cilk) && ! defined(USE_CILK_API)
-# ifdef _WIN32
-# error Cilk API is being used with non-Cilk compiler (or Cilk is disabled)
-# else
-# warning Cilk API is being used with non-Cilk compiler (or Cilk is disabled)
-# endif
-#endif
-
-#include
-
-#ifdef __cplusplus
-# include /* Defines size_t */
-#else
-# include /* Defines size_t */
-#endif
-
-#ifdef _WIN32
-# ifndef IN_CILK_RUNTIME
-/* Ensure the library is brought if any of these functions are being called. */
-# pragma comment(lib, "cilkrts")
-# endif
-
-# ifndef __cplusplus
-# include
-# endif
-#endif /* _WIN32 */
-
-__CILKRTS_BEGIN_EXTERN_C
-
-/** Return values from `__cilkrts_set_param()` and `__cilkrts_set_param_w()`
- */
-enum __cilkrts_set_param_status {
- __CILKRTS_SET_PARAM_SUCCESS = 0, /**< Success - parameter set */
- __CILKRTS_SET_PARAM_UNIMP = 1, /**< Unimplemented parameter */
- __CILKRTS_SET_PARAM_XRANGE = 2, /**< Parameter value out of range */
- __CILKRTS_SET_PARAM_INVALID = 3, /**< Invalid parameter value */
- __CILKRTS_SET_PARAM_LATE = 4 /**< Too late to change parameter value */
-};
-
-/** Sets user controllable runtime parameters
- *
- * Call this function to set runtime parameters that control the behavior
- * of the Intel Cilk Plus scheduler.
- *
- * @param param A string specifying the parameter to be set. One of:
- * - `"nworkers"`
- * - `"force reduce"`
- * @param value A string specifying the parameter value.
- * @returns A value from the @ref __cilkrts_set_param_status
- * enumeration indicating the result of the operation.
- *
- * @par The "nworkers" parameter
- *
- * This parameter specifies the number of worker threads to be created by the
- * Intel Cilk Plus runtime. @a Value must be a string of digits to be parsed by
- * `strtol()` as a decimal number.
- *
- * The number of worker threads is:
- * 1. the value set with `__cilkrts_set_param("nworkers")`, if it is
- * positive; otherwise,
- * 2. the value of the CILK_NWORKERS environment variable, if it is
- * defined; otherwise
- * 3. the number of cores available, as reported by the operating system.
- *
- * @note
- * Technically, Intel Cilk Plus distinguishes between the _user thread_ (the thread
- * that the user code was executing on when the Intel Cilk Plus runtime started),
- * and _worker threads_ (new threads created by the Intel Cilk Plus runtime to
- * support Intel Cilk Plus parallelism). `nworkers` actually includes both the user
- * thread and the worker threads; that is, it is one greater than the number of
- * true "worker threads".
- *
- * @note
- * Setting `nworkers = 1` produces serial behavior. Intel Cilk Plus spawns and syncs
- * will be executed, but with only one worker, continuations will never be
- * stolen, so all code will execute in serial.
- *
- * @warning
- * The number of worker threads can only be set *before* the runtime has
- * started. Attempting to set it when the runtime is running will have no
- * effect, and will return an error code. You can call __cilkrts_end_cilk()
- * to shut down the runtime to change the number of workers.
- *
- * @warning
- * The default Intel Cilk scheduler behavior is usually pretty good. The
- * ability to override `nworkers` can be useful for experimentation, but it
- * won't usually be necessary for getting good performance.
- *
- * @par The "force reduce" parameter
- *
- * This parameter controls whether the runtime should allocate a new view
- * for a reducer for every parallel strand that it is accessed on. (See
- * @ref pagereducers.) @a Value must be `"1"` or `"true"` to enable the
- * "force reduce" behavior, or `"0"` or `"false"` to disable it.
- *
- * "Force reduce" behavior will also be enabled if
- * `__cilkrts_set_param("force reduce")` is not called, but the
- * `CILK_FORCE_REDUCE` environment variable is defined.
- *
- * @warning
- * When this option is enabled, `nworkers` should be set to `1`. Using "force
- * reduce" with more than one worker may result in runtime errors.
- *
- * @warning
- * Enabling this option can significantly reduce performance. Use it
- * _only_ as a debugging tool.
- */
-CILK_API(int) __cilkrts_set_param(const char *param, const char *value);
-
-#ifdef _WIN32
-/**
- * Sets user controllable parameters using wide strings
- *
- * @note This variant of __cilkrts_set_param() is only available
- * on Windows.
- *
- * @copydetails __cilkrts_set_param
- */
-CILK_API(int) __cilkrts_set_param_w(const wchar_t *param, const wchar_t *value);
-#endif
-
-/** Shuts down and deallocates all Intel Cilk Plus states. If Intel Cilk Plus is still in
- * use by the calling thread, the runtime aborts the application. Otherwise, the
- * runtime waits for all other threads using Intel Cilk Plus to exit.
- */
-CILK_API(void) __cilkrts_end_cilk(void);
-
-/** Initializes Intel Cilk Plus data structures and start the runtime.
- */
-CILK_API(void) __cilkrts_init(void);
-
-/** Returns the runtime `nworkers` parameter. (See the discussion of `nworkers`
- * in the documentation for __cilkrts_set_param().)
- */
-CILK_API(int) __cilkrts_get_nworkers(void);
-
-/** Returns the number of thread data structures.
- *
- * This function returns the number of data structures that have been allocated
- * by the runtime to hold information about user and worker threads.
- *
- * If you don't already know what this is good for, then you probably don't
- * need it. :)
- */
-CILK_API(int) __cilkrts_get_total_workers(void);
-
-/** Returns a small integer identifying the current thread.
- *
- * What thread is the function running on? Each worker thread
- * started by the Intel Cilk Plus runtime library has a unique worker number in the
- * range `1 .. nworkers - 1`.
- *
- * All _user_ threads (threads started by the user, or by other libraries) are
- * identified as worker number 0. Therefore, the worker number is not unique
- * across multiple user threads.
- */
-CILK_API(int) __cilkrts_get_worker_number(void);
-
-/** Tests whether "force reduce" behavior is enabled.
- *
- * @return Non-zero if force-reduce mode is on, zero if it is off.
- */
-CILK_API(int) __cilkrts_get_force_reduce(void);
-
-/** Interacts with tools
- */
-CILK_API(void)
- __cilkrts_metacall(unsigned int tool, unsigned int code, void *data);
-
-#ifdef _WIN32
-/// Windows exception description record.
-typedef struct _EXCEPTION_RECORD _EXCEPTION_RECORD;
-
-/** Function signature for Windows exception notification callbacks.
- */
-typedef void (*__cilkrts_pfn_seh_callback)(const _EXCEPTION_RECORD *exception);
-
-/** Specifies a function to call when a non-C++ exception is caught.
- *
- * Intel Cilk Plus parallelism plays nicely with C++ exception handling, but
- * the Intel Cilk Plus runtime has no way to unwind the stack across a strand
- * boundary for Microsoft SEH ("Structured Exception Handling") exceptions.
- * Therefore, when the runtime catches such an exception, it must abort the
- * application.
- *
- * If an SEH callback has been set, the runtime will call it before aborting.
- *
- * @param pfn A pointer to a callback function to be called before the
- * runtime aborts the program because of an SEH exception.
- */
-CILK_API(int) __cilkrts_set_seh_callback(__cilkrts_pfn_seh_callback pfn);
-#endif /* _WIN32 */
-
-#if __CILKRTS_ABI_VERSION >= 1
-/* Pedigree API is available only for compilers that use ABI version >= 1. */
-
-
-/** @name Pedigrees
- */
-//@{
-
-// @cond internal
-
-/** Support for __cilkrts_get_pedigree.
- */
-CILK_API(__cilkrts_pedigree)
-__cilkrts_get_pedigree_internal(__cilkrts_worker *w);
-
-/** Support for __cilkrts_bump_worker_rank.
- */
-CILK_API(int)
-__cilkrts_bump_worker_rank_internal(__cilkrts_worker* w);
-
-/// @endcond
-
-
-/** Gets the current pedigree in a linked list representation.
- *
- * This routine returns a copy of the last node in the pedigree list.
- * For example, if the current pedigree (in order) is <1, 2, 3, 4>,
- * then this method returns a node with rank == 4, and whose parent
- * field points to the node with rank of 3. In summary, following the
- * nodes in the chain visits the terms of the pedigree in reverse.
- *
- * The returned node is guaranteed to be valid only until the caller
- * of this routine has returned.
- */
-__CILKRTS_INLINE
-__cilkrts_pedigree __cilkrts_get_pedigree(void)
-{
- return __cilkrts_get_pedigree_internal(__cilkrts_get_tls_worker());
-}
-
-/** Context used by __cilkrts_get_pedigree_info.
- *
- * @deprecated
- * This data structure is only used by the deprecated
- * __cilkrts_get_pedigree_info function.
- *
- * Callers should initialize the `data` array to NULL and set the `size`
- * field to `sizeof(__cilkrts_pedigree_context_t)` before the first call
- * to `__cilkrts_get_pedigree_info()`. Also, callers should not examine or
- * modify `data` thereafter.
- */
-typedef struct
-{
- __STDNS size_t size; /**< Size of the struct in bytes */
- void *data[3]; /**< Opaque context data */
-} __cilkrts_pedigree_context_t;
-
-/** Gets pedigree information.
- *
- * @deprecated
- * Use __cilkrts_get_pedigree() instead.
- *
- * This routine allows code to walk up the stack of Intel Cilk Plus frames to gather
- * the pedigree.
- *
- * Initialize the pedigree walk by filling the pedigree context with NULLs
- * and setting the size field to `sizeof(__cilkrts_pedigree_context)`.
- * Other than initialization to NULL to start the walk, user coder should
- * consider the pedigree context data opaque and should not examine or
- * modify it.
- *
- * @returns 0 - Success - birthrank is valid
- * @returns >0 - End of pedigree walk
- * @returns -1 - Failure - No worker bound to thread
- * @returns -2 - Failure - Sanity check failed,
- * @returns -3 - Failure - Invalid context size
- * @returns -4 - Failure - Internal error - walked off end of chain of frames
- */
-CILK_API(int)
-__cilkrts_get_pedigree_info(/* In/Out */ __cilkrts_pedigree_context_t *context,
- /* Out */ uint64_t *sf_birthrank);
-
-/** Gets the rank of the currently executing worker.
- *
- * @deprecated
- * Use `__cilkrts_get_pedigree().rank` instead.
- *
- * @returns 0 - Success - *rank is valid
- * @returns <0 - Failure - *rank is not changed
- */
-CILK_EXPORT_AND_INLINE
-int __cilkrts_get_worker_rank(uint64_t *rank)
-{
- *rank = __cilkrts_get_pedigree().rank;
- return 0;
-}
-
-/** Increments the pedigree rank of the currently executing worker.
- *
- * @returns 0 - Success - rank was incremented
- * @returns -1 - Failure
- */
-CILK_EXPORT_AND_INLINE
-int __cilkrts_bump_worker_rank(void)
-{
- return __cilkrts_bump_worker_rank_internal(__cilkrts_get_tls_worker());
-}
-
-/** Increments the pedigree rank for a `cilk_for` loop.
- * Obsolete.
- *
- * @deprecated
- * This function was provided to allow the user to manipulate the pedigree
- * rank of a `cilk_for` loop. The compiler now generates code to do that
- * manipulation automatically, so this function is now unnecessary. It may
- * be called, but will have no effect.
- */
-CILK_EXPORT_AND_INLINE
-int __cilkrts_bump_loop_rank(void)
-{
- return 0;
-}
-
-//@}
-
-#endif /* __CILKRTS_ABI_VERSION >= 1 */
-
-__CILKRTS_END_EXTERN_C
-
-#else /* CILK_STUB */
-
-// Programs compiled with CILK_STUB are not linked with the Intel Cilk Plus runtime
-// library, so they should not have external references to runtime functions.
-// Therefore, the functions are replaced with stubs.
-
-#ifdef _WIN32
-#define __cilkrts_set_param_w(name,value) ((value), 0)
-#define __cilkrts_set_seh_callback(pfn) (0)
-#endif
-#define __cilkrts_set_param(name,value) ((value), 0)
-#define __cilkrts_end_cilk() ((void) 0)
-#define __cilkrts_init() ((void) 0)
-#define __cilkrts_get_nworkers() (1)
-#define __cilkrts_get_total_workers() (1)
-#define __cilkrts_get_worker_number() (0)
-#define __cilkrts_get_force_reduce() (0)
-#define __cilkrts_metacall(tool,code,data) ((tool), (code), (data), 0)
-
-#if __CILKRTS_ABI_VERSION >= 1
-/* Pedigree stubs */
-#define __cilkrts_get_pedigree_info(context, sf_birthrank) (-1)
-#define __cilkrts_get_worker_rank(rank) (*(rank) = 0)
-#define __cilkrts_bump_worker_rank() (-1)
-#define __cilkrts_bump_loop_rank() (-1)
-
-/*
- * A stub method for __cilkrts_get_pedigree.
- * Returns an empty __cilkrts_pedigree.
- */
-__CILKRTS_INLINE
-__cilkrts_pedigree __cilkrts_get_pedigree_stub(void)
-{
- __cilkrts_pedigree ans;
- ans.rank = 0;
- ans.parent = NULL;
- return ans;
-}
-
-/* Renamed to an actual stub method. */
-#define __cilkrts_get_pedigree() __cilkrts_get_pedigree_stub()
-
-#endif /* __CILKRTS_ABI_VERSION >= 1 */
-
-#endif /* CILK_STUB */
-
-//@}
-
-#endif /* INCLUDED_CILK_API_H */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_api_linux.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_api_linux.h
deleted file mode 100644
index 0ebd57cba2..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_api_linux.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright (C) 2009-2016, Intel Corporation
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Intel Corporation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
- * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * *********************************************************************
- *
- * PLEASE NOTE: This file is a downstream copy of a file mainitained in
- * a repository at cilkplus.org. Changes made to this file that are not
- * submitted through the contribution process detailed at
- * http://www.cilkplus.org/submit-cilk-contribution will be lost the next
- * time that a new version is released. Changes only submitted to the
- * GNU compiler collection or posted to the git repository at
- * https://bitbucket.org/intelcilkruntime/intel-cilk-runtime.git are
- * not tracked.
- *
- * We welcome your contributions to this open source project. Thank you
- * for your assistance in helping us improve Cilk Plus.
- *
- */
-
-/* THIS FILE IS DEPRECATED. USE cilk_api.h INSTEAD. */
-#include
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_stub.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_stub.h
deleted file mode 100644
index b4a54f37c9..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_stub.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/* cilk_stub.h -*-C++-*-
- *
- * Copyright (C) 2009-2016, Intel Corporation
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Intel Corporation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
- * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * *********************************************************************
- *
- * PLEASE NOTE: This file is a downstream copy of a file mainitained in
- * a repository at cilkplus.org. Changes made to this file that are not
- * submitted through the contribution process detailed at
- * http://www.cilkplus.org/submit-cilk-contribution will be lost the next
- * time that a new version is released. Changes only submitted to the
- * GNU compiler collection or posted to the git repository at
- * https://bitbucket.org/intelcilkruntime/intel-cilk-runtime.git are
- * not tracked.
- *
- * We welcome your contributions to this open source project. Thank you
- * for your assistance in helping us improve Cilk Plus.
- *
- */
-
-#ifndef INCLUDED_CILK_STUB_DOT_H
-#define INCLUDED_CILK_STUB_DOT_H
-
-/* Definitions for creating a serialization from an Intel(R) Cilk(TM) Plus program.
- * These definitions are suitable for use by a compiler that is not
- * Cilk-enabled.
- */
-
-/* Pretend we are a non-Cilk compiler */
-#undef __cilk
-#define CILK_STUB
-
-/* Replace Intel Cilk keywords with serial equivalents */
-#define _Cilk_spawn
-#define _Cilk_sync
-#define _Cilk_for for
-
-/* Replace simd-loop keywords with serial equivalents */
-#define _Simd
-#define _Safelen(...)
-#define _Reduction(...)
-
-#endif /* ! defined(INCLUDED_CILK_STUB_DOT_H) */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_undocumented.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_undocumented.h
deleted file mode 100644
index 71a51ec52d..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/cilk_undocumented.h
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Copyright (C) 2009-2016, Intel Corporation
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Intel Corporation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
- * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * *********************************************************************
- *
- * PLEASE NOTE: This file is a downstream copy of a file mainitained in
- * a repository at cilkplus.org. Changes made to this file that are not
- * submitted through the contribution process detailed at
- * http://www.cilkplus.org/submit-cilk-contribution will be lost the next
- * time that a new version is released. Changes only submitted to the
- * GNU compiler collection or posted to the git repository at
- * https://bitbucket.org/intelcilkruntime/intel-cilk-runtime.git are
- * not tracked.
- *
- * We welcome your contributions to this open source project. Thank you
- * for your assistance in helping us improve Cilk Plus.
- *
- ******************************************************************************
- *
- * cilk_undocumented.h
- *
- * This file defines exported functions that are not included in the standard
- * documentation.
- */
-
-#ifndef INCLUDED_CILK_UNDOCUMENTED_H
-#define INCLUDED_CILK_UNDOCUMENTED_H
-
-#include
-
-#ifndef CILK_STUB
-
-__CILKRTS_BEGIN_EXTERN_C
-
-/*
- * __cilkrts_synched
- *
- * Allows an application to determine if there are any outstanding children at
- * this instant. This function will examine the current full frame to
- * determine this. This function will return a valid result only when called
- * within a spawn continuation, within the stack frame of the continuation
- * itself.
- */
-
-CILK_EXPORT __CILKRTS_NOTHROW
-int __cilkrts_synched(void);
-
-/*
- * __cilkrts_cilkscreen_puts
- *
- * Allows an application to write a string to the Cilkscreen log.
- * The standard error stream will be flushed after the write.
- */
-
-CILK_EXPORT __CILKRTS_NOTHROW
-void __cilkrts_cilkscreen_puts(const char *);
-
-/*
- * __cilkrts_get_sf
- *
- * A debugging aid that allows an application to get the __cilkrts_stack_frame
- * for the current function. Only compiled into the DLL in debug builds.
- */
-
-CILK_EXPORT __CILKRTS_NOTHROW
-void *__cilkrts_get_sf(void);
-
-/**
- * Returns the size of stacks created by Intel(R) Cilk(TM) Plus.
- */
-CILK_EXPORT __CILKRTS_NOTHROW
-size_t __cilkrts_get_stack_size(void);
-
-/**
- * Dumps runtime statistics to stderr.
- * Undocumented API for debugging.
- */
-CILK_EXPORT __CILKRTS_NOTHROW
-void __cilkrts_dump_stats(void);
-
-struct __cilk_tbb_unwatch_thunk;
-struct __cilk_tbb_stack_op_thunk;
-
-CILK_EXPORT __CILKRTS_NOTHROW
-int __cilkrts_watch_stack(struct __cilk_tbb_unwatch_thunk *u,
- struct __cilk_tbb_stack_op_thunk o);
-
-#ifndef IN_CILK_RUNTIME
-#ifdef _WIN32
-/* Do not use CILK_API because __cilkrts_worker_stub must be __stdcall */
-CILK_EXPORT unsigned __CILKRTS_NOTHROW __stdcall
-__cilkrts_worker_stub(void *arg);
-#else
-/* Do not use CILK_API because __cilkrts_worker_stub have default visibility */
-CILK_EXPORT void* __CILKRTS_NOTHROW
-__cilkrts_worker_stub(void *arg);
-#endif /* _WIN32 */
-#endif /* IN_CILK_RUNTIME */
-
-__CILKRTS_END_EXTERN_C
-
-#else /* CILK_STUB */
-
-/* Stubs for the api functions */
-
-#define __cilkrts_get_stack_size() (0)
-#define __cilkrts_synched() (1)
-
-#endif /* CILK_STUB */
-
-#endif /* INCLUDED_CILK_UNDOCUMENTED_H */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/common.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/common.h
deleted file mode 100644
index 91b2928e7e..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/common.h
+++ /dev/null
@@ -1,385 +0,0 @@
-/** common.h
- *
- * Copyright (C) 2010-2016, Intel Corporation
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Intel Corporation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
- * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * *********************************************************************
- *
- * PLEASE NOTE: This file is a downstream copy of a file mainitained in
- * a repository at cilkplus.org. Changes made to this file that are not
- * submitted through the contribution process detailed at
- * http://www.cilkplus.org/submit-cilk-contribution will be lost the next
- * time that a new version is released. Changes only submitted to the
- * GNU compiler collection or posted to the git repository at
- * https://bitbucket.org/intelcilkruntime/intel-cilk-runtime.git are
- * not tracked.
- *
- * We welcome your contributions to this open source project. Thank you
- * for your assistance in helping us improve Cilk Plus.
- */
-
-/** @file common.h
- *
- * @brief Defines common macros and structures used by the Intel(R) Cilk(TM) Plus runtime.
- *
- * @ingroup common
- */
-
-/** @defgroup common Common Definitions
- * Definitions for runtime macros, structures, and classes.
- * @{
- */
-
-#ifndef INCLUDED_CILK_COMMON
-#define INCLUDED_CILK_COMMON
-
-#ifdef __cplusplus
-/** Namespace for all Intel Cilk Plus definitions that can be included in user code.
- */
-namespace cilk {
-
- /** Namespace for definitions re-used in other Intel Cilk Plus definitions.
- */
- namespace internal {}
-}
-#endif
-
-/** Intel Cilk Plus library version = 1.02
- */
-#define CILK_LIBRARY_VERSION 102
-
-#ifdef __cplusplus
-# include
-#else
-# include
-#endif
-
-/**
- * Prefix standard library function and type names with __STDNS to
- * get correct lookup in both C and C++.
- */
-#ifdef __cplusplus
-# define __STDNS std::
-#else
-# define __STDNS
-#endif
-
-/**
- * @def CILK_EXPORT
- * Define export of runtime functions from shared library.
- * Should be exported only from cilkrts*.dll/cilkrts*.so
- * @def CILK_EXPORT_DATA
- * Define export of runtime data from shared library.
- */
-#ifdef _WIN32
-# ifdef IN_CILK_RUNTIME
-# define CILK_EXPORT __declspec(dllexport)
-# define CILK_EXPORT_DATA __declspec(dllexport)
-# else
-# define CILK_EXPORT __declspec(dllimport)
-# define CILK_EXPORT_DATA __declspec(dllimport)
-# endif /* IN_CILK_RUNTIME */
-#elif defined(__CYGWIN__) || defined(__APPLE__) || defined(_DARWIN_C_SOURCE)
-# define CILK_EXPORT /* nothing */
-# define CILK_EXPORT_DATA /* nothing */
-#else /* Unix/gcc */
-# if defined(IN_CILK_RUNTIME) && defined(HAVE_ATTRIBUTE_VISIBILITY)
-# define CILK_EXPORT __attribute__((visibility("protected")))
-# define CILK_EXPORT_DATA __attribute__((visibility("protected")))
-# else
-# define CILK_EXPORT /* nothing */
-# define CILK_EXPORT_DATA /* nothing */
-# endif /* IN_CILK_RUNTIME */
-#endif /* Unix/gcc */
-
-/**
- * @def __CILKRTS_BEGIN_EXTERN_C
- * Macro to denote the start of a section in which all names have "C" linkage.
- * That is, none of the names are to be mangled.
- * @see __CILKRTS_END_EXTERN_C
- * @see __CILKRTS_EXTERN_C
- *
- * @def __CILKRTS_END_EXTERN_C
- * Macro to denote the end of a section in which all names have "C" linkage.
- * That is, none of the names are to be mangled.
- * @see __CILKRTS_BEGIN_EXTERN_C
- * @see __CILKRTS_EXTERN_C
- *
- * @def __CILKRTS_EXTERN_C
- * Macro to prefix a single definition which has "C" linkage.
- * That is, the defined name is not to be mangled.
- * @see __CILKRTS_BEGIN_EXTERN_C
- * @see __CILKRTS_END_EXTERN_C
- */
-#ifdef __cplusplus
-# define __CILKRTS_BEGIN_EXTERN_C extern "C" {
-# define __CILKRTS_END_EXTERN_C }
-# define __CILKRTS_EXTERN_C extern "C"
-#else
-# define __CILKRTS_BEGIN_EXTERN_C
-# define __CILKRTS_END_EXTERN_C
-# define __CILKRTS_EXTERN_C
-#endif
-
-/**
- * OS-independent macro to specify a function which is known to not throw
- * an exception.
- */
-#ifdef __cplusplus
-# ifdef _WIN32
-# define __CILKRTS_NOTHROW __declspec(nothrow)
-# else /* Unix/gcc */
-# define __CILKRTS_NOTHROW __attribute__((nothrow))
-# endif /* Unix/gcc */
-#else
-# define __CILKRTS_NOTHROW /* nothing */
-#endif /* __cplusplus */
-
-/** Cache alignment. (Good enough for most architectures.)
- */
-#define __CILKRTS_CACHE_LINE__ 64
-
-/**
- * Macro to specify alignment of a data member in a structure.
- * Because of the way that gcc's alignment attribute is defined, @a n must
- * be a numeric literal, not just a compile-time constant expression.
- */
-#ifdef _WIN32
-# define CILK_ALIGNAS(n) __declspec(align(n))
-#else /* Unix/gcc */
-# define CILK_ALIGNAS(n) __attribute__((__aligned__(n)))
-#endif
-
-/**
- * Macro to specify cache-line alignment of a data member in a structure.
- */
-#define __CILKRTS_CACHE_ALIGN CILK_ALIGNAS(__CILKRTS_CACHE_LINE__)
-
-/**
- * Macro to specify a class as being at least as strictly aligned as some
- * type on Windows. gcc does not provide a way of doing this, so on Unix,
- * this just specifies the largest natural type alignment. Put the macro
- * between the `class` keyword and the class name:
- *
- * class CILK_ALIGNAS_TYPE(foo) bar { ... };
- */
-#ifdef _WIN32
-# define CILK_ALIGNAS_TYPE(t) __declspec(align(__alignof(t)))
-#else /* Unix/gcc */
-# define CILK_ALIGNAS_TYPE(t) __attribute__((__aligned__))
-#endif
-
-/**
- * @def CILK_API(RET_TYPE)
- * A function called explicitly by the programmer.
- * @def CILK_ABI(RET_TYPE)
- * A function called by compiler-generated code.
- * @def CILK_ABI_THROWS(RET_TYPE)
- * An ABI function that may throw an exception
- *
- * Even when these are the same definitions, they should be separate macros so
- * that they can be easily found in the code.
- */
-
-#ifdef _WIN32
-# define CILK_API(RET_TYPE) CILK_EXPORT RET_TYPE __CILKRTS_NOTHROW __cdecl
-# define CILK_ABI(RET_TYPE) CILK_EXPORT RET_TYPE __CILKRTS_NOTHROW __cdecl
-# define CILK_ABI_THROWS(RET_TYPE) CILK_EXPORT RET_TYPE __cdecl
-#else
-# define CILK_API(RET_TYPE) CILK_EXPORT RET_TYPE __CILKRTS_NOTHROW
-# define CILK_ABI(RET_TYPE) CILK_EXPORT RET_TYPE __CILKRTS_NOTHROW
-# define CILK_ABI_THROWS(RET_TYPE) CILK_EXPORT RET_TYPE
-#endif
-
-/**
- * __CILKRTS_ASSERT should be defined for debugging only, otherwise it
- * interferes with vectorization. Since NDEBUG is not reliable (it must be
- * set by the user), we must use a platform-specific detection of debug mode.
- */
-#if defined(_WIN32) && defined(_DEBUG)
- /* Windows debug */
-# define __CILKRTS_ASSERT(e) assert(e)
-#elif (! defined(_WIN32)) && ! defined(__OPTIMIZE__)
- /* Unix non-optimized */
-# define __CILKRTS_ASSERT(e) assert(e)
-#elif defined __cplusplus
- /* C++ non-debug */
-# define __CILKRTS_ASSERT(e) static_cast(0)
-#else
- /* C non-debug */
-# define __CILKRTS_ASSERT(e) ((void) 0)
-#endif
-
-/**
- * OS-independent macro to specify a function that should be inlined
- */
-#ifdef __cplusplus
- // C++
-# define __CILKRTS_INLINE inline
-#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
- // C99
-# define __CILKRTS_INLINE static inline
-#elif defined(_MSC_VER)
- // C89 on Windows
-# define __CILKRTS_INLINE __inline
-#else
- // C89 on GCC-compatible systems
-# define __CILKRTS_INLINE extern __inline__
-#endif
-
-/**
- * Functions marked as CILK_EXPORT_AND_INLINE have both
- * inline versions defined in the Intel Cilk Plus API, as well as
- * non-inlined versions that are exported (for
- * compatibility with previous versions that did not
- * inline the functions).
- */
-#ifdef COMPILING_CILK_API_FUNCTIONS
-# define CILK_EXPORT_AND_INLINE CILK_EXPORT
-#else
-# define CILK_EXPORT_AND_INLINE __CILKRTS_INLINE
-#endif
-
-/**
- * Try to determine if compiler supports rvalue references.
- */
-#if defined(__cplusplus) && !defined(__CILKRTS_RVALUE_REFERENCES)
-# if __cplusplus >= 201103L // C++11
-# define __CILKRTS_RVALUE_REFERENCES 1
-# elif defined(__GXX_EXPERIMENTAL_CXX0X__)
-# define __CILKRTS_RVALUE_REFERENCES 1
-# elif __cplusplus >= 199711L && __cplusplus < 201103L
- // Compiler recognizes a language version prior to C++11
-# elif __INTEL_COMPILER == 1200 && defined(__STDC_HOSTED__)
- // Intel compiler version 12.0
- // __cplusplus has a non-standard definition. In the absence of a
- // proper definition, look for the C++0x macro, __STDC_HOSTED__.
-# define __CILKRTS_RVALUE_REFERENCES 1
-# elif __INTEL_COMPILER > 1200 && defined(CHAR16T)
- // Intel compiler version >= 12.1
- // __cplusplus has a non-standard definition. In the absence of a
- // proper definition, look for the Intel macro, CHAR16T
-# define __CILKRTS_RVALUE_REFERENCES 1
-# endif
-#endif
-
-/*
- * Include stdint.h to define the standard integer types.
- *
- * Unfortunately Microsoft doesn't provide stdint.h until Visual Studio 2010,
- * so use our own definitions until those are available
- */
-
-#if ! defined(_MSC_VER) || (_MSC_VER >= 1600)
-# include
-#else
-# ifndef __MS_STDINT_TYPES_DEFINED__
-# define __MS_STDINT_TYPES_DEFINED__
- typedef signed char int8_t;
- typedef short int16_t;
- typedef int int32_t;
- typedef __int64 int64_t;
-
- typedef unsigned char uint8_t;
- typedef unsigned short uint16_t;
- typedef unsigned int uint32_t;
- typedef unsigned __int64 uint64_t;
-# endif /* __MS_STDINT_TYPES_DEFINED__ */
-#endif /* ! defined(_MSC_VER) || (_MSC_VER >= 1600) */
-
-/**
- * @brief Application Binary Interface (ABI) version of the Intel Cilk Plus runtime
- * library.
- *
- * The compiler determines the ABI version used for compilation. Object files
- * compiled with higher ABI versions are not compatible with libraries compiled
- * with lower ABI versions. However, an object file compiled with a lower ABI
- * version can be used with a library compiled with a higher ABI version
- * (unless otherwise stated.)
- */
-#ifndef __CILKRTS_ABI_VERSION
-# ifdef IN_CILK_RUNTIME
-# define __CILKRTS_ABI_VERSION 1
-# elif defined(__INTEL_COMPILER) && (__INTEL_COMPILER <= 1200)
- // Intel compilers prior to version 12.1 support only ABI 0
-# define __CILKRTS_ABI_VERSION 0
-# else
- // Non-Intel compiler or Intel compiler after version 12.0.
-# define __CILKRTS_ABI_VERSION 1
-# endif
-#endif
-
-// These structs are exported because the inlining of
-// the internal version of API methods require a worker
-// structure as parameter.
-__CILKRTS_BEGIN_EXTERN_C
- /// Worker struct, exported for inlined API methods
- /// @ingroup api
- struct __cilkrts_worker;
-
- /// Worker struct, exported for inlined API methods
- /// @ingroup api
- typedef struct __cilkrts_worker __cilkrts_worker;
-
- /// Worker struct pointer, exported for inlined API methods
- /// @ingroup api
- typedef struct __cilkrts_worker *__cilkrts_worker_ptr;
-
-
- /// Fetch the worker out of TLS.
- CILK_ABI(__cilkrts_worker_ptr) __cilkrts_get_tls_worker(void);
-
- /// void *, defined to work around complaints from the compiler
- /// about using __declspec(nothrow) after the "void *" return type
- typedef void * __cilkrts_void_ptr;
-
-__CILKRTS_END_EXTERN_C
-
-
-#if __CILKRTS_ABI_VERSION >= 1
-// Pedigree API is available only for compilers that use ABI version >= 1.
-
-/** Pedigree information kept in the worker and stack frame.
- * @ingroup api
- */
-typedef struct __cilkrts_pedigree
-{
- /** Rank at start of spawn helper. Saved rank for spawning functions */
- uint64_t rank;
-
- /** Link to next in chain */
- const struct __cilkrts_pedigree *parent;
-} __cilkrts_pedigree;
-
-#endif // __CILKRTS_ABI_VERSION >= 1
-
-/// @}
-
-#endif /* INCLUDED_CILK_COMMON */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/holder.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/holder.h
deleted file mode 100644
index 66899a25bc..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/holder.h
+++ /dev/null
@@ -1,1011 +0,0 @@
-/*
- * Copyright (C) 2011-2016, Intel Corporation
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Intel Corporation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
- * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * *********************************************************************
- *
- * PLEASE NOTE: This file is a downstream copy of a file mainitained in
- * a repository at cilkplus.org. Changes made to this file that are not
- * submitted through the contribution process detailed at
- * http://www.cilkplus.org/submit-cilk-contribution will be lost the next
- * time that a new version is released. Changes only submitted to the
- * GNU compiler collection or posted to the git repository at
- * https://bitbucket.org/intelcilkruntime/intel-cilk-runtime.git are
- * not tracked.
- *
- * We welcome your contributions to this open source project. Thank you
- * for your assistance in helping us improve Cilk Plus.
- *
- */
-
-/*
- * holder.h
- *
- * Purpose: hyperobject to provide different views of an object to each
- * parallel strand.
- */
-
-#ifndef HOLDER_H_INCLUDED
-#define HOLDER_H_INCLUDED
-
-#include
-#include
-#include
-
-#ifdef __cplusplus
-
-/* C++ Interface
- *
- * Classes: holder
- *
- * Description:
- * ============
- * This component provides a hyperobject that isolates a parallel uses of a
- * common variable where it is not necessary to preserve changes from
- * different parallel strands. In effect, a holder acts a bit like
- * thread-local storage, but has qualities that work better with the
- * fork-join structure of Intel(R) Cilk(TM) Plus. In particular, a holder has the
- * following qualities:
- *
- * - The view of a holder before the first spawn within a function is the same
- * as the view after each sync (as in the case of a reducer).
- * - The view of a holder within the first spawned child of a function (or the
- * first child spawned after a sync) is the same as the view on entry to the
- * function.
- * - The view of a holder before entering a _Cilk_for loop is the same as the
- * view during the first iteration of the loop and the view at the end of
- * the loop.
- * - The view of a holder in the continuation of a spawn or in an arbitrary
- * iteration of a _Cilk_for loop is *non-deterministic*. It is generally
- * recommended that the holder be explicitly put into a known state in these
- * situations.
- *
- * A holder can be used as an alternative to parameter-passing. They are most
- * useful for replacing non-local variables without massive refactoring. A
- * holder takes advantage of the fact that, most of the time, a holder view
- * does not change after a spawn or from one iteration of a parallel for loop
- * to the next (i.e., stealing is the exception, not the rule). When the
- * holder view is a large object that is expensive to construct, this
- * optimization can save significant time versus creating a separate local
- * object for each view. In addition, a holder using the "keep last" policy
- * will have the same value after a sync as the serialization of the same
- * program. The last quality will often allow the program to avoid
- * recomputing a value.
- *
- * Usage Example:
- * ==============
- * Function 'compute()' is a complex function that computes a value using a
- * memoized algorithm, storing intermediate results in a hash table. Compute
- * calls several other functions, each of which calls several other functions,
- * all of which share a global hash table. In all, there are over a dozen
- * functions with a total of about 60 references to the hash table.
- *..
- * hash_table memos;
- *
- * void h(const X& x); // Uses memos
- *
- * double compute(const X& x)
- * {
- * memos.clear();
- * // ...
- * memos[i] = x;
- * ...
- * g(i); // Uses memos
- * // ...
- * std::for_each(c.begin(), c.end(), h); // Call h for each element of c
- * }
- *
- * int main()
- * {
- * const std::size_t ARRAY_SIZE = 1000000;
- * extern X myArray[ARRAY_SIZE];
- *
- * for (std::size_t i = 0; i < ARRAY_SIZE; ++i)
- * {
- * compute(myArray[i]);
- * }
- * }
- *..
- * We would like to replace the 'for' loop in 'main' with a 'cilk_for'.
- * Although the hash table is cleared on entry to each call to 'compute()',
- * and although the values stored in the hash table are no longer used after
- * 'compute()' returns, the use of the hash table as a global variable
- * prevents 'compute()' from being called safely in parallel. One way to do
- * this would be to make 'memos' a private variable within the cilk_for loop
- * and pass it down to the actual computation, so that each loop iteration has
- * its own private copy:
- *..
- * cilk_for (std::size_t i = 0; i < ARRAY_SIZE; ++i)
- * {
- * hash_table memos;
- * compute(myArray[i], memos);
- * }
- *..
- * The problem with this approach is that it requires changing the signature
- * of 'compute', 'h', 'g', and every one of the dozen or so functions that
- * reference 'memos' as well as any function that calls those functions. This
- * may break the abstraction of 'compute' and other functions, exposing an
- * implementation detail that was not part of the interface. In addition, the
- * function 'h' is called through a templated algorithm, 'for_each', which
- * requires a fixed interface. Finally, there is constructor and destructor
- * overhead for 'hash_table' each time through the loop.
- *
- * The alternative approach is to replace 'memos' with a holder. The holder
- * would be available to all of the functions involved, but would not cause a
- * race between parallel loop iterations. In order to make this work, each
- * use of the 'memos' variable must be (mechanically) replaced by a use of the
- * holder:
- *..
- * cilk::holder > memos_h;
- *
- * void h(const X& x); // Uses memos_h
- *
- * double compute(const X& x)
- * {
- * memos_h().clear(); // operator() used to "dereference" the holder
- * // ...
- * memos_h()[i] = x; // operator() used to "dereference" the holder
- * ...
- * g(i); // Uses memos_h
- * // ...
- * std::for_each(c.begin(), c.end(), h); // Call h for each element of c
- * }
- *..
- * Note that each reference to the holder must be modified with an empty pair
- * of parenthesis. This syntax is needed because there is no facility in C++
- * for a "smart reference" that would allow 'memos_h' to be a perfect
- * replacement for 'memos'. One way that a user can avoid this syntax change
- * is to wrap the holder in a class that has the same inteface as
- * 'hash_table' but redirects all calls to the holder:
- *..
- * template
- * class hash_table_holder
- * {
- * private:
- * cilk::holder > m_holder;
- * public:
- * void clear() { m_holder().clear(); }
- * V& operator[](const K& x) { return m_holder()[x]; }
- * std::size_t size() const { return m_holder().size(); }
- * // etc. ...
- * };
- *..
- * Using the above wrapper, the original code can be left unchanged except for
- * replacing 'hash_table' with 'hash_table_holder' and replacing 'for' with
- * 'cilk_for':
- *..
- * hash_table_holder memos;
- *
- * void h(const X& x); // Uses memos
- *
- * double compute(const X& x)
- * {
- * memos.clear(); // Calls hash_table_holder::clear().
- * // ...
- * }
- *..
- * The above changes have no benefit over the use of thread-local storage.
- * What if one of the functions has a 'cilk_spawn', however?
- *..
- * void h(const X& x)
- * {
- * Y y = x.nested();
- * double d, w;
- * if (y)
- * {
- * w = cilk_spawn compute_width(y); // May use 'memos'
- * d = compute_depth(y); // Does not use 'memos'
- * cilk_sync;
- * compute(y); // recursive call. Uses 'memos'.
- * }
- * }
- *..
- * In the above example, the view of the holder within 'compute_width' is the
- * same as the view on entry to 'h'. More importantly, the view of the holder
- * within the recursive call to 'compute' is the same as the view on entry to
- * 'h', even if a different worker is executing the recursive call. Thus, the
- * holder view within a Intel Cilk Plus program has useful qualities not found in
- * thread-local storage.
- */
-
-namespace cilk {
-
- /**
- * After a sync, the value stored in a holder matches the most recent
- * value stored into the holder by one of the starnds entering the sync.
- * The holder policy used to instantiate the holder determines which of
- * the entering strands determines the final value of the holder. A policy
- * of 'holder_keep_indeterminate' (the default) is the most efficient, and
- * results in an indeterminate value depending on the runtime schedule
- * (see below for more specifics). An indeterminate value after a sync is
- * often acceptable, especially if the value of the holder is not reused
- * after the sync. All of the remaining policies retain the value of the
- * last strand that would be executed in the serialization of the program.
- * They differ in the mechanism used to move the value from one view to
- * another. A policy of 'holder_keep_last_copy' moves values by
- * copy-assignment. A policy of 'holder_keep_last_swap' moves values by
- * calling 'swap'. A policy of 'holder_keep_last_move' is available only
- * for compilers that support C++0x rvalue references and moves values by
- * move-assignment. A policy of 'holder_keep_last' attempts to choose the
- * most efficient mechanism: member-function 'swap' if the view type
- * supports it, otherwise move-assignment if supported, otherwise
- * copy-assignment. (The swap member function for a class that provides
- * one is almost always as fast or faster than move-assignment or
- * copy-assignment.)
- *
- * The behavior of 'holder_keep_indeterminate', while indeterminate, is
- * not random and can be used for advanced programming or debugging. With
- * a policy of 'holder_keep_intermediate', values are never copied or
- * moved between views. The value of the view after a sync is the same as
- * the value set in the last spawned child before a steal occurs or the
- * last value set in the continuation if no steal occurs. Using this
- * knowledge, a programmer can use a holder to detect the earliest steal
- * in a piece of code. An indeterminate holder is also useful for keeping
- * cached data similar to the way some applications might use thread-local
- * storage.
- */
- enum holder_policy {
- holder_keep_indeterminate,
- holder_keep_last,
- holder_keep_last_copy,
- holder_keep_last_swap,
-#ifdef __CILKRTS_RVALUE_REFERENCES
- holder_keep_last_move
-#endif
- };
-
- namespace internal {
-
- // Private special-case holder policy using the swap member-function
- const holder_policy holder_keep_last_member_swap =
- (holder_policy) (holder_keep_last_swap | 0x10);
-
- /* The constant, 'has_member_swap::value', will be 'true' if 'T'
- * has a non-static member function with prototype 'void swap(T&)'.
- * The mechanism used to detect 'swap' is the most portable among
- * present-day compilers, but is not the most robust. Specifically,
- * the prototype for 'swap' must exactly match 'void swap(T&)'.
- * Near-matches like a 'swap' function that returns 'int' instead of
- * 'void' will not be detected. Detection will also fail if 'T'
- * inherits 'swap' from a base class.
- */
- template
- class has_member_swap
- {
- // This technique for detecting member functions was described by
- // Rani Sharoni in comp.lang.c++.moderated:
- // http://groups.google.com/group/comp.lang.c++.moderated/msg/2b06b2432fddfb60
-
- // sizeof(notchar) is guaranteed larger than 1
- struct notchar { char x[2]; };
-
- // Instantiationg Q will fail unless U contains a
- // non-static member with prototype 'void swap(U&)'.
- template struct Q { };
-
- // First 'test' is preferred overload if U::swap exists with the
- // correct prototype. Second 'test' is preferred overload
- // otherwise.
- template static char test(Q*);
- template static notchar test(...);
-
- public:
- /// 'value' will be true if T has a non-static member function
- /// with prototype 'void swap(T&)'.
- static const bool value = (1 == sizeof(test(0)));
- };
-
- template const bool has_member_swap::value;
-
- /**
- * @brief Utility class for exception safety.
- *
- * The constuctor for this class takes a pointer and an allocator and
- * holds on to them. The destructor deallocates the pointed-to
- * object, without calling its destructor, typically to recover memory
- * in case an exception is thrown. The release member clears the
- * pointer so that the deallocation is prevented, i.e., when the
- * exception danger has passed. The behavior of this class is similar
- * to auto_ptr and unique_ptr.
- */
- template >
- class auto_deallocator
- {
- Allocator m_alloc;
- Type* m_ptr;
-
- // Non-copiable
- auto_deallocator(const auto_deallocator&);
- auto_deallocator& operator=(const auto_deallocator&);
-
- public:
- /// Constructor
- explicit auto_deallocator(Type* p, const Allocator& a = Allocator())
- : m_alloc(a), m_ptr(p) { }
-
- /// Destructor - free allocated resources
- ~auto_deallocator() { if (m_ptr) m_alloc.deallocate(m_ptr, 1); }
-
- /// Remove reference to resource
- void release() { m_ptr = 0; }
- };
-
- /**
- * Pure-abstract base class to initialize holder views
- */
- template
- class init_base
- {
- public:
- virtual ~init_base() { }
- virtual init_base* clone_self(Allocator& a) const = 0;
- virtual void delete_self(Allocator& a) = 0;
- virtual void construct_view(Type* p, Allocator& a) const = 0;
- };
-
- /**
- * Class to default-initialize a holder view
- */
- template
- class default_init : public init_base
- {
- typedef init_base base;
-
- /// Private constructor (called from static make() function).
- default_init() { }
-
- // Non-copiable
- default_init(const default_init&);
- default_init& operator=(const default_init&);
-
- public:
- // Static factory function
- static default_init* make(Allocator& a);
-
- // Virtual function overrides
- virtual ~default_init();
- virtual base* clone_self(Allocator& a) const;
- virtual void delete_self(Allocator& a);
- virtual void construct_view(Type* p, Allocator& a) const;
- };
-
- template
- default_init*
- default_init::make(Allocator&)
- {
- // Return a pointer to a singleton. All instances of this class
- // are identical, so we need only one.
- static default_init self;
- return &self;
- }
-
- template
- default_init::~default_init()
- {
- }
-
- template
- init_base*
- default_init::clone_self(Allocator& a) const
- {
- return make(a);
- }
-
- template
- void default_init::delete_self(Allocator&)
- {
- // Since make() returned a shared singleton, there is nothing to
- // delete here.
- }
-
- template
- void
- default_init::construct_view(Type* p,
- Allocator&) const
- {
- ::new((void*) p) Type();
- // TBD: In a C++0x library, this should be rewritten
- // std::allocator_traits::construct(a, p);
- }
-
- /**
- * Class to copy-construct a view from a stored exemplar.
- */
- template
- class exemplar_init : public init_base
- {
- typedef init_base base;
-
- Type* m_exemplar;
-
- // Private constructors (called from make() functions).
- exemplar_init(const Type& val, Allocator& a);
-#ifdef __CILKRTS_RVALUE_REFERENCES
- exemplar_init(Type&& val, Allocator& a);
-#endif
-
- // Non-copyiable
- exemplar_init(const exemplar_init&);
- exemplar_init& operator=(const exemplar_init&);
-
- public:
- // Static factory functions
- static exemplar_init* make(const Type& val,
- Allocator& a = Allocator());
-#ifdef __CILKRTS_RVALUE_REFERENCES
- static exemplar_init* make(Type&& val,
- Allocator& a = Allocator());
-#endif
-
- // Virtual function overrides
- virtual ~exemplar_init();
- virtual base* clone_self(Allocator& a) const;
- virtual void delete_self(Allocator& a);
- virtual void construct_view(Type* p, Allocator& a) const;
- };
-
- template
- exemplar_init::exemplar_init(const Type& val,
- Allocator& a)
- {
- m_exemplar = a.allocate(1);
- auto_deallocator guard(m_exemplar, a);
- a.construct(m_exemplar, val);
- guard.release();
- }
-
-#ifdef __CILKRTS_RVALUE_REFERENCES
- template
- exemplar_init::exemplar_init(Type&& val,
- Allocator& a)
- {
- m_exemplar = a.allocate(1);
- auto_deallocator guard(m_exemplar, a);
- a.construct(m_exemplar, std::forward(val));
- guard.release();
- }
-#endif
-
- template
- exemplar_init*
- exemplar_init::make(const Type& val,
- Allocator& a)
- {
- typedef typename Allocator::template rebind::other
- self_alloc_t;
- self_alloc_t alloc(a);
-
- exemplar_init *self = alloc.allocate(1);
- auto_deallocator guard(self, alloc);
-
- // Don't use allocator to construct self. Allocator should be
- // used only on elements of type 'Type'.
- ::new((void*) self) exemplar_init(val, a);
-
- guard.release();
-
- return self;
- }
-
-#ifdef __CILKRTS_RVALUE_REFERENCES
- template
- exemplar_init*
- exemplar_init::make(Type&& val,
- Allocator& a)
- {
- typedef typename Allocator::template rebind::other
- self_alloc_t;
- self_alloc_t alloc(a);
-
- exemplar_init *self = alloc.allocate(1);
- auto_deallocator guard(self, alloc);
-
- // Don't use allocator to construct self. Allocator should be
- // used only on elements of type 'Type'.
- ::new((void*) self) exemplar_init(std::forward(val), a);
-
- guard.release();
-
- return self;
- }
-#endif
-
- template
- exemplar_init::~exemplar_init()
- {
- // Called only by delete_self, which deleted the exemplar using an
- // allocator.
- __CILKRTS_ASSERT(0 == m_exemplar);
- }
-
- template
- init_base*
- exemplar_init::clone_self(Allocator& a) const
- {
- return make(*m_exemplar, a);
- }
-
- template
- void exemplar_init::delete_self(Allocator& a)
- {
- typename Allocator::template rebind::other alloc(a);
-
- a.destroy(m_exemplar);
- a.deallocate(m_exemplar, 1);
- m_exemplar = 0;
-
- this->~exemplar_init();
- alloc.deallocate(this, 1);
- }
-
- template
- void
- exemplar_init::construct_view(Type* p,
- Allocator& a) const
- {
- a.construct(p, *m_exemplar);
- // TBD: In a C++0x library, this should be rewritten
- // std::allocator_traits::construct(a, p, *m_exemplar);
- }
-
- /**
- * Class to construct a view using a stored functor. The functor,
- * 'f', must be be invokable using the expression 'Type x = f()'.
- */
- template
- class functor_init :
- public init_base
- {
- typedef typename Allocator::value_type value_type;
- typedef init_base base;
- typedef typename Allocator::template rebind::other f_alloc;
-
- Func *m_functor;
-
- /// Private constructors (called from make() functions
- functor_init(const Func& f, Allocator& a);
-#ifdef __CILKRTS_RVALUE_REFERENCES
- functor_init(Func&& f, Allocator& a);
-#endif
-
- // Non-copiable
- functor_init(const functor_init&);
- functor_init& operator=(const functor_init&);
-
- public:
- // Static factory functions
- static functor_init* make(const Func& val,
- Allocator& a = Allocator());
-#ifdef __CILKRTS_RVALUE_REFERENCES
- static functor_init* make(Func&& val,
- Allocator& a = Allocator());
-#endif
-
- // Virtual function overrides
- virtual ~functor_init();
- virtual base* clone_self(Allocator& a) const;
- virtual void delete_self(Allocator& a);
- virtual void
- construct_view(value_type* p, Allocator& a) const;
- };
-
- /// Specialization to strip off reference from 'Func&'.
- template
- struct functor_init
- : functor_init { };
-
- /// Specialization to strip off reference and cvq from 'const Func&'.
- template
- struct functor_init
- : functor_init { };
-
- template
- functor_init::functor_init(const Func& f,
- Allocator& a)
- {
- f_alloc alloc(a);
-
- m_functor = alloc.allocate(1);
- auto_deallocator guard(m_functor, alloc);
- alloc.construct(m_functor, f);
- guard.release();
- }
-
-#ifdef __CILKRTS_RVALUE_REFERENCES
- template
- functor_init::functor_init(Func&& f,
- Allocator& a)
- {
- f_alloc alloc(a);
-
- m_functor = alloc.allocate(1);
- auto_deallocator guard(m_functor, alloc);
- alloc.construct(m_functor, std::forward(f));
- guard.release();
- }
-#endif
-
- template
- functor_init*
- functor_init::make(const Func& f, Allocator& a)
- {
- typedef typename Allocator::template rebind::other
- self_alloc_t;
- self_alloc_t alloc(a);
-
- functor_init *self = alloc.allocate(1);
- auto_deallocator guard(self, alloc);
-
- // Don't use allocator to construct self. Allocator should be
- // used only on elements of type 'Func'.
- ::new((void*) self) functor_init(f, a);
-
- guard.release();
-
- return self;
- }
-
-#ifdef __CILKRTS_RVALUE_REFERENCES
- template
- functor_init*
- functor_init::make(Func&& f, Allocator& a)
- {
- typedef typename Allocator::template rebind::other
- self_alloc_t;
- self_alloc_t alloc(a);
-
- functor_init *self = alloc.allocate(1);
- auto_deallocator guard(self, alloc);
-
- // Don't use allocator to construct self. Allocator should be
- // used only on elements of type 'Func'.
- ::new((void*) self) functor_init(std::forward(f), a);
-
- guard.release();
-
- return self;
- }
-#endif
-
- template
- functor_init::~functor_init()
- {
- // Called only by delete_self, which deleted the functor using an
- // allocator.
- __CILKRTS_ASSERT(0 == m_functor);
- }
-
- template
- init_base*
- functor_init::clone_self(Allocator& a) const
- {
- return make(*m_functor, a);
- }
-
- template
- inline
- void functor_init::delete_self(Allocator& a)
- {
- typename Allocator::template rebind::other alloc(a);
- f_alloc fa(a);
-
- fa.destroy(m_functor);
- fa.deallocate(m_functor, 1);
- m_functor = 0;
-
- this->~functor_init();
- alloc.deallocate(this, 1);
- }
-
- template
- void functor_init::construct_view(value_type* p,
- Allocator& a) const
- {
- a.construct(p, (*m_functor)());
- // In C++0x, the above should be written
- // std::allocator_traits::construct(a, p, m_functor());
- }
-
- /**
- * Functor called to reduce a holder
- */
- template
- struct holder_reduce_functor;
-
- /**
- * Specialization to keep the left (first) value.
- */
- template
- struct holder_reduce_functor
- {
- void operator()(Type* left, Type* right) const { }
- };
-
- /**
- * Specialization to copy-assign from the right (last) value.
- */
- template
- struct holder_reduce_functor
- {
- void operator()(Type* left, Type* right) const {
- *left = *right;
- }
- };
-
- /*
- * Specialization to keep the right (last) value via swap.
- */
- template
- struct holder_reduce_functor
- {
- void operator()(Type* left, Type* right) const {
- using std::swap;
- swap(*left, *right);
- }
- };
-
-#ifdef __CILKRTS_RVALUE_REFERENCES
- /*
- * Specialization to move-assign from the right (last) value.
- */
- template
- struct holder_reduce_functor
- {
- void operator()(Type* left, Type* right) const {
- *left = std::move(*right);
- }
- };
-#endif
-
- /*
- * Specialization to keep the right (last) value via the swap member
- * function.
- */
- template
- struct holder_reduce_functor
- {
- void operator()(Type* left, Type* right) const {
- left->swap(*right);
- }
- };
-
- /*
- * Specialization to keep the right (last) value by the most efficient
- * means detectable.
- */
- template
- struct holder_reduce_functor :
- holder_reduce_functor::value ?
- holder_keep_last_member_swap :
-#ifdef __CILKRTS_RVALUE_REFERENCES
- holder_keep_last_move
-#else
- holder_keep_last_copy
-#endif
- )>
- {
- };
- } // end namespace internal
-
- /**
- * Monoid for holders.
- * Allocator type is required to be thread-safe.
- */
- template >
- class holder_monoid : public monoid_base
- {
- // Allocator is mutable because the copy of the monoid inside the
- // reducer is const (to avoid races on the shared state). However,
- // the allocator is required to be thread-safe, so it is ok (and
- // necessary) to modify.
- mutable Allocator m_allocator;
- internal::init_base *m_initializer;
-
- public:
- /// This constructor uses default-initialization for both the leftmost
- /// view and each identity view.
- holder_monoid(const Allocator& a = Allocator())
- : m_allocator(a)
- , m_initializer(
- internal::default_init::make(m_allocator))
- { }
-
- /// These constructors use 'val' as an exemplar to copy-construct both
- /// the leftmost view and each identity view.
- holder_monoid(const Type& val, const Allocator& a = Allocator())
- : m_allocator(a)
- , m_initializer(internal::exemplar_init::make(
- val, m_allocator)) { }
- /// This constructor uses 'f' as a functor to construct both
- /// the leftmost view and each identity view.
- template
- holder_monoid(const Func& f, const Allocator& a = Allocator())
- : m_allocator(a)
- , m_initializer(
- internal::functor_init::make(f,m_allocator))
- { }
-
- /// Copy constructor
- holder_monoid(const holder_monoid& rhs)
- : m_allocator(rhs.m_allocator)
- , m_initializer(rhs.m_initializer->clone_self(m_allocator)) { }
-
- /// "Extended" copy constructor with allocator
- holder_monoid(const holder_monoid& rhs, const Allocator& a)
- : m_allocator(a)
- , m_initializer(rhs.m_initializer->clone_self(m_allocator)) { }
-
-#ifdef __CILKRTS_RVALUE_REFERENCES
- /// Move constructor
- holder_monoid(holder_monoid&& rhs)
- : m_allocator(rhs.m_allocator)
- , m_initializer(rhs.m_initializer) {
- rhs.m_initializer =
- internal::default_init::make(m_allocator);
- }
-
- /// "Extended" move constructor with allocator
- holder_monoid(holder_monoid&& rhs, const Allocator& a)
- : m_allocator(a)
- , m_initializer(0) {
- if (a != rhs.m_allocator)
- m_initializer = rhs.m_initializer->clone_self(a);
- else {
- m_initializer = rhs.m_initializer;
- rhs.m_initializer =
- internal::default_init::make(m_allocator);
- }
- }
-#endif
- /// Destructor
- ~holder_monoid() { m_initializer->delete_self(m_allocator); }
-
- holder_monoid& operator=(const holder_monoid& rhs) {
- if (this == &rhs) return *this;
- m_initializer->delete_self(m_allocator);
- m_initializer = rhs.m_initializer->clone_self(m_allocator);
- }
-
-#ifdef __CILKRTS_RVALUE_REFERENCES
- holder_monoid& operator=(holder_monoid&& rhs) {
- if (m_allocator != rhs.m_allocator)
- // Delegate to copy-assignment on unequal allocators
- return operator=(static_cast(rhs));
- std::swap(m_initializer, rhs.m_initializer);
- return *this;
- }
-#endif
-
- /// Constructs IDENTITY value into the uninitilized '*p'
- void identity(Type* p) const
- { m_initializer->construct_view(p, m_allocator); }
-
- /// Calls the destructor on the object pointed-to by 'p'
- void destroy(Type* p) const
- { m_allocator.destroy(p); }
-
- /// Return a pointer to size bytes of raw memory
- void* allocate(std::size_t s) const {
- __CILKRTS_ASSERT(sizeof(Type) == s);
- return m_allocator.allocate(1);
- }
-
- /// Deallocate the raw memory at p
- void deallocate(void* p) const {
- m_allocator.deallocate(static_cast(p), sizeof(Type));
- }
-
- void reduce(Type* left, Type* right) const {
- internal::holder_reduce_functor()(left, right);
- }
-
- void swap(holder_monoid& other) {
- __CILKRTS_ASSERT(m_allocator == other.m_allocator);
- std::swap(m_initializer, other.m_initializer);
- }
-
- Allocator get_allocator() const {
- return m_allocator;
- }
- };
-
- // Namespace-scope swap
- template
- inline void swap(holder_monoid& a,
- holder_monoid& b)
- {
- a.swap(b);
- }
-
- /**
- * Hyperobject to provide different views of an object to each
- * parallel strand.
- */
- template >
- class holder : public reducer >
- {
- typedef holder_monoid monoid_type;
- typedef reducer imp;
-
- // Return a value of Type constructed using the functor Func.
- template
- Type make_value(const Func& f) const {
- struct obj {
- union {
- char buf[sizeof(Type)];
- void* align1;
- double align2;
- };
-
- obj(const Func& f) { f(static_cast(buf)); }
- ~obj() { static_cast(buf)->~Type(); }
-
- operator Type&() { return *static_cast(buf); }
- };
-
- return obj(f);
- }
-
- public:
- /// Default constructor uses default-initialization for both the
- /// leftmost view and each identity view.
- holder(const Allocator& alloc = Allocator())
- : imp(monoid_type(alloc)) { }
-
- /// Construct from an exemplar that is used to initialize both the
- /// leftmost view and each identity view.
- holder(const Type& v, const Allocator& alloc = Allocator())
- // Alas, cannot use an rvalue reference for 'v' because it is used
- // twice in the same expression for initializing imp.
- : imp(monoid_type(v, alloc), v) { }
-
- /// Construct from a functor that is used to initialize both the
- /// leftmost view and each identity view. The functor, 'f', must be be
- /// invokable using the expression 'Type x = f()'.
- template
- holder(const Func& f, const Allocator& alloc = Allocator())
- // Alas, cannot use an rvalue for 'f' because it is used twice in
- // the same expression for initializing imp.
- : imp(monoid_type(f, alloc), make_value(f)) { }
- };
-
-} // end namespace cilk
-
-#else /* C */
-# error Holders are currently available only for C++
-#endif /* __cplusplus */
-
-#endif /* HOLDER_H_INCLUDED */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/hyperobject_base.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/hyperobject_base.h
deleted file mode 100644
index dd7ccfd902..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/hyperobject_base.h
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * Copyright (C) 2009-2016, Intel Corporation
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Intel Corporation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
- * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * *********************************************************************
- *
- * PLEASE NOTE: This file is a downstream copy of a file mainitained in
- * a repository at cilkplus.org. Changes made to this file that are not
- * submitted through the contribution process detailed at
- * http://www.cilkplus.org/submit-cilk-contribution will be lost the next
- * time that a new version is released. Changes only submitted to the
- * GNU compiler collection or posted to the git repository at
- * https://bitbucket.org/intelcilkruntime/intel-cilk-runtime.git are
- * not tracked.
- *
- * We welcome your contributions to this open source project. Thank you
- * for your assistance in helping us improve Cilk Plus.
- *
- */
-
-#ifndef INCLUDED_CILK_HYPEROBJECT_BASE
-#define INCLUDED_CILK_HYPEROBJECT_BASE
-
-#ifdef __cplusplus
-# include
-# include
-#else
-# include
-# include
-#endif
-
-#include
-
-#if defined _WIN32 || defined _WIN64
-# if !defined CILK_STUB && !defined IN_CILK_RUNTIME
- /* bring in the Intel(R) Cilk(TM) Plus library, which has definitions for some of these
- * functions. */
-# pragma comment(lib, "cilkrts")
-# endif
-#endif
-
-/* The __CILKRTS_STRAND_PURE attribute tells the compiler that the value
- * returned by 'func' for a given argument to 'func' will remain valid until
- * the next strand boundary (spawn or sync) or until the next call to a
- * function with the __CILKRTS_STRAND_STALE attribute using the same function
- * argument.
- */
-#if 0 && defined __cilk && (defined __GNUC__ && !defined _WIN32) && defined __cilkartsrev
-# define __CILKRTS_STRAND_PURE(func) \
- func __attribute__((__cilk_hyper__("lookup")))
-# define __CILKRTS_STRAND_STALE(func) \
- func __attribute__((__cilk_hyper__("flush")))
-#else
-# define __CILKRTS_STRAND_PURE(func) func
-# define __CILKRTS_STRAND_STALE(func) func
-#endif
-
-/*****************************************************************************
- * C runtime interface to the hyperobject subsystem
- *****************************************************************************/
-
-__CILKRTS_BEGIN_EXTERN_C
-
-/* Callback function signatures. The 'r' argument always points to the
- * reducer itself and is commonly ignored. */
-typedef void (*cilk_c_reducer_reduce_fn_t)(void* r, void* lhs, void* rhs);
-typedef void (*cilk_c_reducer_identity_fn_t)(void* r, void* view);
-typedef void (*cilk_c_reducer_destroy_fn_t)(void* r, void* view);
-typedef void* (*cilk_c_reducer_allocate_fn_t)(void* r, __STDNS size_t bytes);
-typedef void (*cilk_c_reducer_deallocate_fn_t)(void* r, void* view);
-
-/** Representation of the monoid */
-typedef struct cilk_c_monoid {
- cilk_c_reducer_reduce_fn_t reduce_fn;
- cilk_c_reducer_identity_fn_t identity_fn;
- cilk_c_reducer_destroy_fn_t destroy_fn;
- cilk_c_reducer_allocate_fn_t allocate_fn;
- cilk_c_reducer_deallocate_fn_t deallocate_fn;
-} cilk_c_monoid;
-
-/** Base of the hyperobject */
-typedef struct __cilkrts_hyperobject_base
-{
- cilk_c_monoid __c_monoid;
- unsigned long long __flags;
- __STDNS ptrdiff_t __view_offset; /* offset (in bytes) to leftmost view */
- __STDNS size_t __view_size; /* Size of each view */
-} __cilkrts_hyperobject_base;
-
-
-#ifndef CILK_STUB
-
-/* Library functions. */
-CILK_EXPORT
- void __cilkrts_hyper_create(__cilkrts_hyperobject_base *key);
-CILK_EXPORT void __CILKRTS_STRAND_STALE(
- __cilkrts_hyper_destroy(__cilkrts_hyperobject_base *key));
-CILK_EXPORT void* __CILKRTS_STRAND_PURE(
- __cilkrts_hyper_lookup(__cilkrts_hyperobject_base *key));
-
-CILK_EXPORT
- void* __cilkrts_hyperobject_alloc(void* ignore, __STDNS size_t bytes);
-CILK_EXPORT
- void __cilkrts_hyperobject_dealloc(void* ignore, void* view);
-
-/* No-op destroy function */
-CILK_EXPORT
- void __cilkrts_hyperobject_noop_destroy(void* ignore, void* ignore2);
-
-
-#else // CILK_STUB
-
-// Programs compiled with CILK_STUB are not linked with the Intel Cilk Plus runtime
-// library, so they should not have external references to cilkrts functions.
-// Furthermore, they don't need the hyperobject functionality, so the
-// functions can be stubbed.
-
-#define __cilkrts_hyperobject_create __cilkrts_hyperobject_create__stub
-__CILKRTS_INLINE
- void __cilkrts_hyper_create(__cilkrts_hyperobject_base *key)
- {}
-
-#define __cilkrts_hyperobject_destroy __cilkrts_hyperobject_destroy__stub
-__CILKRTS_INLINE
- void __cilkrts_hyper_destroy(__cilkrts_hyperobject_base *key)
- {}
-
-#define __cilkrts_hyperobject_lookup __cilkrts_hyperobject_lookup__stub
-__CILKRTS_INLINE
- void* __cilkrts_hyper_lookup(__cilkrts_hyperobject_base *key)
- { return (char*)(key) + key->__view_offset; }
-
-// Pointers to these functions are stored into monoids, so real functions
-// are needed.
-
-#define __cilkrts_hyperobject_alloc __cilkrts_hyperobject_alloc__stub
-__CILKRTS_INLINE
- void* __cilkrts_hyperobject_alloc(void* ignore, __STDNS size_t bytes)
- { assert(0); return __STDNS malloc(bytes); }
-
-#define __cilkrts_hyperobject_dealloc __cilkrts_hyperobject_dealloc__stub
-__CILKRTS_INLINE
- void __cilkrts_hyperobject_dealloc(void* ignore, void* view)
- { assert(0); __STDNS free(view); }
-
-#define __cilkrts_hyperobject_noop_destroy \
- __cilkrts_hyperobject_noop_destroy__stub
-__CILKRTS_INLINE
- void __cilkrts_hyperobject_noop_destroy(void* ignore, void* ignore2)
- {}
-
-#endif
-
-__CILKRTS_END_EXTERN_C
-
-#endif /* INCLUDED_CILK_HYPEROBJECT_BASE */
diff --git a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/metaprogramming.h b/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/metaprogramming.h
deleted file mode 100644
index 2df7cf6467..0000000000
--- a/openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_tools/include/cilk/metaprogramming.h
+++ /dev/null
@@ -1,621 +0,0 @@
-/* metaprogramming.h -*- C++ -*-
- *
- * Copyright (C) 2012-2016, Intel Corporation
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * * Neither the name of Intel Corporation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
- * WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * *********************************************************************
- *
- * PLEASE NOTE: This file is a downstream copy of a file mainitained in
- * a repository at cilkplus.org. Changes made to this file that are not
- * submitted through the contribution process detailed at
- * http://www.cilkplus.org/submit-cilk-contribution will be lost the next
- * time that a new version is released. Changes only submitted to the
- * GNU compiler collection or posted to the git repository at
- * https://bitbucket.org/intelcilkruntime/intel-cilk-runtime.git are
- * not tracked.
- *
- * We welcome your contributions to this open source project. Thank you
- * for your assistance in helping us improve Cilk Plus.
- */
-
-/** @file metaprogramming.h
- *
- * @brief Defines metaprogramming utility classes used in the Intel(R) Cilk(TM) Plus library.
- *
- * @ingroup common
- */
-
-#ifndef METAPROGRAMMING_H_INCLUDED
-#define METAPROGRAMMING_H_INCLUDED
-
-#ifdef __cplusplus
-
-#include
-#include
-#include
-#ifdef _WIN32
-#include
-#endif
-#include
-
-namespace cilk {
-
-namespace internal {
-
-/** Test if a class is empty.
- *
- * If @a Class is an empty (and therefore necessarily stateless) class, then
- * the "empty base-class optimization" guarantees that
- * `sizeof(check_for_empty_class) == sizeof(char)`. Conversely, if
- * `sizeof(check_for_empty_class) > sizeof(char)`, then @a Class is not
- * empty, and we must discriminate distinct instances of @a Class.
- *
- * Typical usage:
- *
- * // General definition of A for non-empty B:
- * template ::value> >
- * class A { ... };
- *
- * // Specialized definition of A for empty B:
- * template
- * class A { ... };
- *
- * @tparam Class The class to be tested for emptiness.
- *
- * @result The `value` member will be `true` if @a Class is empty,
- * `false` otherwise.
- *
- * @ingroup common
- */
-template
-class class_is_empty {
- class check_for_empty_class : public Class
- {
- char m_data;
- public:
- // Declared but not defined
- check_for_empty_class();
- check_for_empty_class(const check_for_empty_class&);
- check_for_empty_class& operator=(const check_for_empty_class&);
- ~check_for_empty_class();
- };
-public:
-
- /** Constant is true if and only if @a Class is empty.
- */
- static const bool value = (sizeof(check_for_empty_class) == sizeof(char));
-};
-
-
-/** Get the alignment of a type.
- *
- * For example:
- *
- * align_of::value == 8
- *
- * @tparam Tp The type whose alignment is to be computed.
- *
- * @result The `value` member of an instantiation of this class template
- * will hold the integral alignment requirement of @a Tp.
- *
- * @pre @a Tp shall be a complete type.
- *
- * @ingroup common
- */
-template
-struct align_of
-{
-private:
- struct imp {
- char m_padding;
- Tp m_val;
-
- // The following declarations exist to suppress compiler-generated
- // definitions, in case @a Tp does not have a public default
- // constructor, copy constructor, or destructor.
- imp(const imp&); // Declared but not defined
- ~imp(); // Declared but not defined
- };
-
-public:
- /// The integral alignment requirement of @a Tp.
- static const std::size_t value = (sizeof(imp) - sizeof(Tp));
-};
-
-
-/** A class containing raw bytes with a specified alignment and size.
- *
- * An object of type `aligned_storage` will have alignment `A` and
- * size at least `S`. Its contents will be uninitialized bytes.
- *
- * @tparam Size The required minimum size of the resulting class.
- * @tparam Alignment The required alignment of the resulting class.
- *
- * @pre @a Alignment shall be a power of 2 no greater than 64.
- *
- * @note This is implemented using the `CILK_ALIGNAS` macro, which uses
- * the non-standard, implementation-specific features
- * `__declspec(align(N))` on Windows, and
- * `__attribute__((__aligned__(N)))` on Unix. The `gcc` implementation
- * of `__attribute__((__aligned__(N)))` requires a numeric literal `N`
- * (_not_ an arbitrary compile-time constant expression). Therefore,
- * this class is implemented using specialization on the required
- * alignment.
- *
- * @note The template class is specialized only for the supported
- * alignments. An attempt to instantiate it for an unsupported
- * alignment will result in a compilation error.
- */
-template
-struct aligned_storage;
-
-/// @cond
-template class aligned_storage
- { CILK_ALIGNAS( 1) char m_bytes[Size]; };
-template class aligned_storage
- { CILK_ALIGNAS( 2) char m_bytes[Size]; };
-template class aligned_storage
- { CILK_ALIGNAS( 4) char m_bytes[Size]; };
-template class aligned_storage
- { CILK_ALIGNAS( 8) char m_bytes[Size]; };
-template class aligned_storage
- { CILK_ALIGNAS(16) char m_bytes[Size]; };
-template class aligned_storage
- { CILK_ALIGNAS(32) char m_bytes[Size]; };
-template class aligned_storage
- { CILK_ALIGNAS(64) char m_bytes[Size]; };
-/// @endcond
-
-/** A buffer of uninitialized bytes with the same size and alignment as a
- * specified type.
- *
- * The class `storage_for_object` will have the same size and alignment
- * properties as `Type`, but it will contain only raw (uninitialized) bytes.
- * This allows the definition of a data member which can contain a `Type`
- * object which is initialized explicitly under program control, rather
- * than implicitly as part of the initialization of the containing class.
- * For example:
- *
- * class C {
- * storage_for_object _member;
- * public:
- * C() ... // Does NOT initialize _member
- * void initialize(args)
- * { new (_member.pointer()) MemberClass(args); }
- * const MemberClass& member() const { return _member.object(); }
- * MemberClass& member() { return _member.object(); }
- *
- * @tparam Type The type whose size and alignment are to be reflected
- * by this class.
- */
-template
-class storage_for_object :
- aligned_storage< sizeof(Type), align_of::value >
-{
-public:
- /// Return a typed reference to the buffer.
- const Type& object() const { return *reinterpret_cast(this); }
- /// Return a typed reference to the buffer.
- Type& object() { return *reinterpret_cast(this); }
-};
-
-
-/** Get the functor class corresponding to a binary function type.
- *
- * The `binary_functor` template class can be instantiated with a binary
- * functor class or with a real binary function, and will yield an equivalent
- * binary functor class in either case.
- *
- * @tparam F A binary functor class, a binary function type, or a pointer to
- * binary function type.
- *
- * @result `binary_functor::%type` will be the same as @a F if @a F is
- * a class. It will be a `std::pointer_to_binary_function` wrapper
- * if @a F is a binary function or binary function pointer type.
- * (It will _not_ necessarily be an `Adaptable Binary Function`
- * class, since @a F might be a non-adaptable binary functor
- * class.)
- *
- * @ingroup common
- */
-template
-struct binary_functor {
- /// The binary functor class equivalent to @a F.
- typedef F type;
-};
-
-/// @copydoc binary_functor
-/// Specialization for binary function.
-template
-struct binary_functor {
- /// The binary functor class equivalent to @a F.
- typedef std::pointer_to_binary_function type;
-};
-
-/// @copydoc binary_functor
-/// Specialization for pointer to binary function.
-template
-struct binary_functor {
- /// The binary functor class equivalent to @a F.
- typedef std::pointer_to_binary_function type;
-};
-
-
-/** Indirect binary function class with specified types.
- *
- * `typed_indirect_binary_function` is an `Adaptable Binary Function` class
- * based on an existing binary functor class or binary function type @a F. If
- * @a F is a stateless class, then this class will be empty, and its
- * `operator()` will invoke @a F's `operator()`. Otherwise, an object of this
- * class will hold a pointer to an object of type @a F, and will refer its
- * `operator()` calls to the pointed-to @a F object.
- *
- * That is, suppose that we have the declarations:
- *
- * F *p;
- * typed_indirect_binary_function ibf(p);
- *
- * Then:
- *
- * - `ibf(x, y) == (*p)(x, y)`.
- * - `ibf(x, y)` will not do a pointer dereference if `F` is an empty class.
- *
- * @note Just to repeat: if `F` is an empty class, then
- * `typed_indirect_binary_function\' is also an empty class.
- * This is critical for its use in the
- * @ref cilk::cilk_lib_1_1::min_max_internal::view_base
- * "min/max reducer view classes", where it allows the view to
- * call a comparison functor in the monoid without actually
- * having to allocate a pointer in the view class when the
- * comparison class is empty.
- *
- * @note If you have an `Adaptable Binary Function` class or a binary
- * function type, then you can use the
- * @ref indirect_binary_function class, which derives the
- * argument and result types parameter type instead of requiring
- * you to specify them as template arguments.
- *
- * @tparam F A binary functor class, a binary function type, or a pointer to
- * binary function type.
- * @param A1 The first argument type.
- * @param A2 The second argument type.
- * @param R The result type.
- *
- * @see min_max::comparator_base
- * @see indirect_binary_function
- *
- * @ingroup common
- */
-template < typename F
- , typename A1
- , typename A2
- , typename R
- , typename Functor = typename binary_functor::type
- , bool FunctorIsEmpty = class_is_empty