diff --git a/Eigen/src/Core/arch/SSE/Complex.h b/Eigen/src/Core/arch/SSE/Complex.h index 8c0fd9a7f..036b72d3e 100644 --- a/Eigen/src/Core/arch/SSE/Complex.h +++ b/Eigen/src/Core/arch/SSE/Complex.h @@ -309,12 +309,9 @@ template<> EIGEN_STRONG_INLINE void ei_prefetch >(const std template<> EIGEN_STRONG_INLINE std::complex ei_pfirst(const Packet1cd& a) { -// EIGEN_ALIGN16 double res[2]; -// _mm_store_pd(res, a.v); -// return *(std::complex*)res; - EIGEN_ALIGN16 std::complex res; - ei_pstore(&res, a); - return res; + EIGEN_ALIGN16 double res[2]; + _mm_store_pd(res, a.v); + return *(std::complex*)res; } template<> EIGEN_STRONG_INLINE Packet1cd ei_preverse(const Packet1cd& a) { return a; }