From 1414e2212c3cd36e2653bca0e11c653ece8f4d04 Mon Sep 17 00:00:00 2001 From: Chip Kerchner Date: Thu, 28 Jan 2021 18:36:40 +0000 Subject: Fix clang compilation for AltiVec from previous check-in --- Eigen/src/Core/arch/AltiVec/PacketMath.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'Eigen/src/Core/arch/AltiVec') diff --git a/Eigen/src/Core/arch/AltiVec/PacketMath.h b/Eigen/src/Core/arch/AltiVec/PacketMath.h index f191057a1..6d7842021 100755 --- a/Eigen/src/Core/arch/AltiVec/PacketMath.h +++ b/Eigen/src/Core/arch/AltiVec/PacketMath.h @@ -2459,8 +2459,11 @@ template<> EIGEN_STRONG_INLINE Packet2d pldexp(const Packet2d& a, cons } template<> EIGEN_STRONG_INLINE Packet2d pfrexp (const Packet2d& a, Packet2d& exponent) { - Packet2d ret = { pfrexp(a[0], exponent[0]), pfrexp(a[1], exponent[1]) }; - return ret; + double exp[2] = { exponent[0], exponent[1] }; + Packet2d ret = { pfrexp(a[0], exp[0]), pfrexp(a[1], exp[1]) }; + exponent[0] = exp[0]; + exponent[1] = exp[1]; + return ret; // This doesn't currently work (no integer_packet for Packet2d - but adding it causes other problems) // return pfrexp_double(a, exponent); } -- cgit v1.2.3