From 6de5ed08d88239080b9381f60f75e5abea731d75 Mon Sep 17 00:00:00 2001 From: Rasmus Munk Larsen Date: Thu, 19 Sep 2019 12:48:30 -0700 Subject: Add generic PacketMath implementation of the Error Function (erf). --- Eigen/src/Core/arch/AVX512/MathFunctions.h | 12 ++++++++++++ Eigen/src/Core/arch/AVX512/PacketMath.h | 4 +++- 2 files changed, 15 insertions(+), 1 deletion(-) (limited to 'Eigen/src/Core/arch/AVX512') diff --git a/Eigen/src/Core/arch/AVX512/MathFunctions.h b/Eigen/src/Core/arch/AVX512/MathFunctions.h index 9e37a720b..66581964c 100644 --- a/Eigen/src/Core/arch/AVX512/MathFunctions.h +++ b/Eigen/src/Core/arch/AVX512/MathFunctions.h @@ -405,6 +405,18 @@ Packet16f pexpm1(const Packet16f& _x) { } #endif +template <> +EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet16f +ptanh(const Packet16f& _x) { + return internal::generic_fast_tanh_float(_x); +} + +template <> +EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED Packet16f +perf(const Packet16f& _x) { + return internal::generic_fast_erf_float(_x); +} + } // end namespace internal } // end namespace Eigen diff --git a/Eigen/src/Core/arch/AVX512/PacketMath.h b/Eigen/src/Core/arch/AVX512/PacketMath.h index 589ccbb7a..19c03cfe2 100644 --- a/Eigen/src/Core/arch/AVX512/PacketMath.h +++ b/Eigen/src/Core/arch/AVX512/PacketMath.h @@ -98,11 +98,13 @@ template<> struct packet_traits : default_packet_traits HasLog1p = 1, HasExpm1 = 1, HasNdtri = 1, -#endif HasBessel = 1, +#endif HasExp = 1, HasSqrt = EIGEN_FAST_MATH, HasRsqrt = EIGEN_FAST_MATH, + HasTanh = EIGEN_FAST_MATH, + HasErf = EIGEN_FAST_MATH, #endif HasDiv = 1 }; -- cgit v1.2.3