From 1a6597b8e44e2f828e6da017d1aef1e1be3d5f81 Mon Sep 17 00:00:00 2001 From: Hauke Heibel Date: Sat, 12 Feb 2011 21:29:16 +0100 Subject: [PATCH] MSVC does not like using uninitialized SSE variables, so we have to pass all zeros. --- Eigen/src/Core/arch/SSE/PacketMath.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Eigen/src/Core/arch/SSE/PacketMath.h b/Eigen/src/Core/arch/SSE/PacketMath.h index 0872a04f4..bbe784523 100644 --- a/Eigen/src/Core/arch/SSE/PacketMath.h +++ b/Eigen/src/Core/arch/SSE/PacketMath.h @@ -229,7 +229,7 @@ template<> EIGEN_STRONG_INLINE Packet4i pload(const int* from) { E // (i.e., it does not generate an unaligned load!! // TODO On most architectures this version should also be faster than a single _mm_loadu_ps // so we could also enable it for MSVC08 but first we have to make this later does not generate crap when doing so... - __m128 res = _mm_loadl_pi(res, (const __m64*)(from)); + __m128 res = _mm_loadl_pi(_mm_set1_ps(0.0f), (const __m64*)(from)); res = _mm_loadh_pi(res, (const __m64*)(from+2)); return res; #else