diff options
author | Rasmus Munk Larsen <rmlarsen@google.com> | 2020-10-09 20:05:49 +0000 |
---|---|---|
committer | Rasmus Munk Larsen <rmlarsen@google.com> | 2020-10-09 20:05:49 +0000 |
commit | 4e4d3f32d168ed9ce09d950f099a60ddcd11240f (patch) | |
tree | 3e52ae5b43c238679f69f3caf4d908d4afb16f13 /Eigen/src/Core/arch/AVX/PacketMath.h | |
parent | 7a8d3d5b81cb528f7f084b63686ffb20494053f6 (diff) |
Clean up packetmath tests and fix various bugs to make bfloat16 pass (almost) all packetmath tests with SSE, AVX, and AVX512.
Diffstat (limited to 'Eigen/src/Core/arch/AVX/PacketMath.h')
-rw-r--r-- | Eigen/src/Core/arch/AVX/PacketMath.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/Eigen/src/Core/arch/AVX/PacketMath.h b/Eigen/src/Core/arch/AVX/PacketMath.h index cf7146cbc..d5dc6a174 100644 --- a/Eigen/src/Core/arch/AVX/PacketMath.h +++ b/Eigen/src/Core/arch/AVX/PacketMath.h @@ -1205,6 +1205,11 @@ EIGEN_STRONG_INLINE Packet8bf pmax<Packet8bf>(const Packet8bf& a, return F32ToBf16(pmax<Packet8f>(Bf16ToF32(a), Bf16ToF32(b))); } +template <> +EIGEN_STRONG_INLINE Packet8bf plset<Packet8bf>(const bfloat16& a) { + return F32ToBf16(plset<Packet8f>(static_cast<float>(a))); +} + template<> EIGEN_STRONG_INLINE Packet8bf por(const Packet8bf& a,const Packet8bf& b) { return _mm_or_si128(a,b); } |