diff options
author | Adam Nemet <anemet@apple.com> | 2014-07-31 04:00:39 +0000 |
---|---|---|
committer | Adam Nemet <anemet@apple.com> | 2014-07-31 04:00:39 +0000 |
commit | da82bcc4dd55d6da68b348e5f79ddb704bb665c3 (patch) | |
tree | d91c0309871010d2c7e0f90844819bc26d035788 /clang/lib | |
parent | f55771388bbaa3588d14a10d6ba9de9e25fbe918 (diff) | |
download | bcm5719-llvm-da82bcc4dd55d6da68b348e5f79ddb704bb665c3.tar.gz bcm5719-llvm-da82bcc4dd55d6da68b348e5f79ddb704bb665c3.zip |
[AVX512] Add unaligned FP load intrinsics
Part of <rdar://problem/17688758>
llvm-svn: 214380
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Headers/avx512fintrin.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/clang/lib/Headers/avx512fintrin.h b/clang/lib/Headers/avx512fintrin.h index 690638ae553..c205662c164 100644 --- a/clang/lib/Headers/avx512fintrin.h +++ b/clang/lib/Headers/avx512fintrin.h @@ -791,6 +791,24 @@ _mm512_maskz_loadu_pd(__mmask8 __U, void const *__P) (__mmask8) __U); } +static __inline __m512d __attribute__((__always_inline__, __nodebug__)) +_mm512_loadu_pd(double const *__p) +{ + struct __loadu_pd { + __m512d __v; + } __attribute__((packed, may_alias)); + return ((struct __loadu_pd*)__p)->__v; +} + +static __inline __m512 __attribute__((__always_inline__, __nodebug__)) +_mm512_loadu_ps(float const *__p) +{ + struct __loadu_ps { + __m512 __v; + } __attribute__((packed, may_alias)); + return ((struct __loadu_ps*)__p)->__v; +} + /* SIMD store ops */ static __inline void __attribute__ ((__always_inline__, __nodebug__)) |