diff options
Diffstat (limited to 'Eigen/src')
-rw-r--r-- | Eigen/src/Core/arch/AVX/PacketMath.h | 8 | ||||
-rw-r--r-- | Eigen/src/Core/arch/AVX512/PacketMath.h | 4 | ||||
-rw-r--r-- | Eigen/src/Core/arch/Default/Half.h | 2 | ||||
-rw-r--r-- | Eigen/src/Core/arch/NEON/PacketMath.h | 13 |
4 files changed, 20 insertions, 7 deletions
diff --git a/Eigen/src/Core/arch/AVX/PacketMath.h b/Eigen/src/Core/arch/AVX/PacketMath.h index 50db0e5c0..f5c18f63f 100644 --- a/Eigen/src/Core/arch/AVX/PacketMath.h +++ b/Eigen/src/Core/arch/AVX/PacketMath.h @@ -147,7 +147,9 @@ struct packet_traits<Eigen::half> : default_packet_traits { HasRound = 1, HasFloor = 1, HasCeil = 1, - HasRint = 1 + HasRint = 1, + HasBessel = 1, + HasNdtri = 1, }; }; @@ -189,7 +191,9 @@ struct packet_traits<bfloat16> : default_packet_traits { HasRound = 1, HasFloor = 1, HasCeil = 1, - HasRint = 1 + HasRint = 1, + HasBessel = 1, + HasNdtri = 1, }; }; #endif diff --git a/Eigen/src/Core/arch/AVX512/PacketMath.h b/Eigen/src/Core/arch/AVX512/PacketMath.h index 2bbcd802c..a001fb186 100644 --- a/Eigen/src/Core/arch/AVX512/PacketMath.h +++ b/Eigen/src/Core/arch/AVX512/PacketMath.h @@ -86,7 +86,9 @@ struct packet_traits<half> : default_packet_traits { HasRound = 1, HasFloor = 1, HasCeil = 1, - HasRint = 1 + HasRint = 1, + HasBessel = 1, + HasNdtri = 1, }; }; diff --git a/Eigen/src/Core/arch/Default/Half.h b/Eigen/src/Core/arch/Default/Half.h index b9a8a46aa..76156c416 100644 --- a/Eigen/src/Core/arch/Default/Half.h +++ b/Eigen/src/Core/arch/Default/Half.h @@ -58,7 +58,7 @@ #define F16_PACKET_FUNCTION(PACKET_F, PACKET_F16, METHOD) \ template <> \ - EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED \ + EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC EIGEN_UNUSED \ PACKET_F16 METHOD<PACKET_F16>(const PACKET_F16& _x) { \ return float2half(METHOD<PACKET_F>(half2float(_x))); \ } diff --git a/Eigen/src/Core/arch/NEON/PacketMath.h b/Eigen/src/Core/arch/NEON/PacketMath.h index fd6b4f137..b60f4143f 100644 --- a/Eigen/src/Core/arch/NEON/PacketMath.h +++ b/Eigen/src/Core/arch/NEON/PacketMath.h @@ -192,7 +192,9 @@ struct packet_traits<float> : default_packet_traits HasExp = 1, HasSqrt = 1, HasTanh = EIGEN_FAST_MATH, - HasErf = EIGEN_FAST_MATH + HasErf = EIGEN_FAST_MATH, + HasBessel = 0, // Issues with accuracy. + HasNdtri = 0 }; }; @@ -3321,7 +3323,9 @@ template<> struct packet_traits<bfloat16> : default_packet_traits HasExp = 1, HasSqrt = 0, HasTanh = EIGEN_FAST_MATH, - HasErf = EIGEN_FAST_MATH + HasErf = EIGEN_FAST_MATH, + HasBessel = 0, // Issues with accuracy. + HasNdtri = 0, }; }; @@ -3887,7 +3891,10 @@ struct packet_traits<Eigen::half> : default_packet_traits { HasCos = 0, HasLog = 0, HasExp = 0, - HasSqrt = 1 + HasSqrt = 1, + HasErf = EIGEN_FAST_MATH, + HasBessel = 0, // Issues with accuracy. + HasNdtri = 0, }; }; |