diff options
author | Gael Guennebaud <g.gael@free.fr> | 2010-09-08 14:10:01 +0200 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2010-09-08 14:10:01 +0200 |
commit | 91e9344be9e408751a750f08067d1798a6c2c7fd (patch) | |
tree | bf6a6a04f54609679e8bb51d1e05fd1f8e1cdf72 /Eigen/src/Geometry/arch | |
parent | f9123df7722272b9d2fba8f9652d62ec83bd1ef7 (diff) |
fix vectorization logic and code of cross3 which was never enabled..
Diffstat (limited to 'Eigen/src/Geometry/arch')
-rw-r--r-- | Eigen/src/Geometry/arch/Geometry_SSE.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Eigen/src/Geometry/arch/Geometry_SSE.h b/Eigen/src/Geometry/arch/Geometry_SSE.h index 798d81c91..7d82be694 100644 --- a/Eigen/src/Geometry/arch/Geometry_SSE.h +++ b/Eigen/src/Geometry/arch/Geometry_SSE.h @@ -54,8 +54,8 @@ struct ei_cross3_impl<Architecture::SSE,VectorLhs,VectorRhs,float,true> inline static typename ei_plain_matrix_type<VectorLhs>::type run(const VectorLhs& lhs, const VectorRhs& rhs) { - __m128 a = lhs.coeffs().packet<VectorLhs::Flags&AlignedBit ? Aligned : Unaligned>(0); - __m128 b = rhs.coeffs().packet<VectorRhs::Flags&AlignedBit ? Aligned : Unaligned>(0); + __m128 a = lhs.template packet<VectorLhs::Flags&AlignedBit ? Aligned : Unaligned>(0); + __m128 b = rhs.template packet<VectorRhs::Flags&AlignedBit ? Aligned : Unaligned>(0); __m128 mul1=_mm_mul_ps(ei_vec4f_swizzle1(a,1,2,0,3),ei_vec4f_swizzle1(b,2,0,1,3)); __m128 mul2=_mm_mul_ps(ei_vec4f_swizzle1(a,2,0,1,3),ei_vec4f_swizzle1(b,1,2,0,3)); typename ei_plain_matrix_type<VectorLhs>::type res; |