diff options
author | Konstantinos Margaritis <markos@freevec.org> | 2017-10-11 09:40:45 -0400 |
---|---|---|
committer | Konstantinos Margaritis <markos@freevec.org> | 2017-10-11 09:40:45 -0400 |
commit | 3dcae2a27ffca563ef0a5b78d9d9d27cb05216a8 (patch) | |
tree | 0d7fdf938da95c69ed1979018b33a4b9e532291b /Eigen/src/Core/arch | |
parent | c2a224648919acb27bc208dcc24797345e3a1353 (diff) |
initial pexp() for 32-bit floats, commented out due to vec_cts()
Diffstat (limited to 'Eigen/src/Core/arch')
-rwxr-xr-x | Eigen/src/Core/arch/ZVector/PacketMath.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Eigen/src/Core/arch/ZVector/PacketMath.h b/Eigen/src/Core/arch/ZVector/PacketMath.h index 21612ba91..a72aea851 100755 --- a/Eigen/src/Core/arch/ZVector/PacketMath.h +++ b/Eigen/src/Core/arch/ZVector/PacketMath.h @@ -103,6 +103,12 @@ static Packet2d p2d_ZERO_ = { -0.0, -0.0 }; #define _EIGEN_DECLARE_CONST_FAST_Packet4f(NAME,X) \ Packet4f p4f_##NAME = reinterpret_cast<Packet4f>(vec_splat_s32(X)) +#define _EIGEN_DECLARE_CONST_Packet4f(NAME,X) \ + Packet4f p4f_##NAME = pset1<Packet4f>(X) + +#define _EIGEN_DECLARE_CONST_Packet4f_FROM_INT(NAME,X) \ + const Packet4f p4f_##NAME = reinterpret_cast<Packet4f>(pset1<Packet4i>(X)) + static _EIGEN_DECLARE_CONST_FAST_Packet4f(ZERO, 0); //{ 0.0, 0.0, 0.0, 0.0} static _EIGEN_DECLARE_CONST_FAST_Packet4i(MINUS1,-1); //{ -1, -1, -1, -1} static Packet4f p4f_MZERO = { 0x80000000, 0x80000000, 0x80000000, 0x80000000}; @@ -187,7 +193,11 @@ template<> struct packet_traits<float> : default_packet_traits HasSin = 0, HasCos = 0, HasLog = 0, +#if !defined(__ARCH__) || (defined(__ARCH__) && __ARCH__ >= 12) + HasExp = 0, +#else HasExp = 1, +#endif HasSqrt = 1, HasRsqrt = 1, HasRound = 1, |