From 657407227e473d215269e07eabec939723156f20 Mon Sep 17 00:00:00 2001 From: Doug Kwan Date: Wed, 11 Mar 2015 15:13:37 -0700 Subject: [PATCH] Fix bug in pdiv which swaps 32-bit halves of a pair of doubles instead of swapping the doubles. --- Eigen/src/Core/arch/AltiVec/Complex.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Eigen/src/Core/arch/AltiVec/Complex.h b/Eigen/src/Core/arch/AltiVec/Complex.h index 565d2ece0..1f00e27d8 100644 --- a/Eigen/src/Core/arch/AltiVec/Complex.h +++ b/Eigen/src/Core/arch/AltiVec/Complex.h @@ -408,7 +408,7 @@ template<> EIGEN_STRONG_INLINE Packet1cd pdiv(const Packet1cd& a, con // TODO optimize it for AltiVec Packet1cd res = conj_helper().pmul(a,b); Packet2d s = vec_madd(b.v, b.v, p2d_ZERO_); - return Packet1cd(pdiv(res.v, vec_add(s,vec_perm(s, s, p16uc_COMPLEX32_REV)))); + return Packet1cd(pdiv(res.v, vec_add(s,vec_perm(s, s, p16uc_REVERSE64)))); } EIGEN_STRONG_INLINE Packet1cd pcplxflip/**/(const Packet1cd& x)