diff options
| author | Pengfei Wang <pengfei.wang@intel.com> | 2019-08-29 06:18:34 +0000 |
|---|---|---|
| committer | Pengfei Wang <pengfei.wang@intel.com> | 2019-08-29 06:18:34 +0000 |
| commit | caac097fbf4e0883a675feb2ee38407def08b5a6 (patch) | |
| tree | 101ecff5d8a8bd009e4a6c735c7af1a5e0db8666 /clang/lib | |
| parent | 231e628d6902df075a60fe3e199c3425a26d2ef4 (diff) | |
| download | bcm5719-llvm-caac097fbf4e0883a675feb2ee38407def08b5a6.tar.gz bcm5719-llvm-caac097fbf4e0883a675feb2ee38407def08b5a6.zip | |
[x86] Adding support for some missing intrinsics: _mm512_cvtsi512_si32
Summary:
Adding support for some missing intrinsics:
_mm512_cvtsi512_si32
Reviewers: craig.topper, pengfei, LuoYuanke, spatel, RKSimon
Reviewed By: craig.topper
Subscribers: llvm-commits
Patch by Bing Yu (yubing)
Differential Revision: https://reviews.llvm.org/D66785
llvm-svn: 370297
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Headers/avx512fintrin.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/clang/lib/Headers/avx512fintrin.h b/clang/lib/Headers/avx512fintrin.h index 132761f9ef5..5748c1ea6e5 100644 --- a/clang/lib/Headers/avx512fintrin.h +++ b/clang/lib/Headers/avx512fintrin.h @@ -9659,6 +9659,23 @@ _mm512_mask_reduce_min_ps(__mmask16 __M, __m512 __V) { } #undef _mm512_mask_reduce_operator +/// Moves the least significant 32 bits of a vector of [16 x i32] to a +/// 32-bit signed integer value. +/// +/// \headerfile <x86intrin.h> +/// +/// This intrinsic corresponds to the <c> VMOVD / MOVD </c> instruction. +/// +/// \param __A +/// A vector of [16 x i32]. The least significant 32 bits are moved to the +/// destination. +/// \returns A 32-bit signed integer containing the moved value. +static __inline__ int __DEFAULT_FN_ATTRS512 +_mm512_cvtsi512_si32(__m512i __A) { + __v16si __b = (__v16si)__A; + return __b[0]; +} + #undef __DEFAULT_FN_ATTRS512 #undef __DEFAULT_FN_ATTRS128 #undef __DEFAULT_FN_ATTRS |

