aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Geometry/arch
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2010-09-08 14:10:01 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2010-09-08 14:10:01 +0200
commit91e9344be9e408751a750f08067d1798a6c2c7fd (patch)
treebf6a6a04f54609679e8bb51d1e05fd1f8e1cdf72 /Eigen/src/Geometry/arch
parentf9123df7722272b9d2fba8f9652d62ec83bd1ef7 (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.h4
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;