disable the vectorization of div for AltiVec

This commit is contained in:
Gael Guennebaud 2008-08-21 14:03:17 +00:00
parent f729fc1d70
commit 67813e01bf
2 changed files with 5 additions and 1 deletions

View File

@ -141,8 +141,10 @@ struct ei_functor_traits<ei_scalar_quotient_op<Scalar> > {
enum { enum {
Cost = 2 * NumTraits<Scalar>::MulCost, Cost = 2 * NumTraits<Scalar>::MulCost,
PacketAccess = ei_packet_traits<Scalar>::size>1 PacketAccess = ei_packet_traits<Scalar>::size>1
#ifdef EIGEN_VECTORIZE_SSE #if (defined EIGEN_VECTORIZE_SSE)
&& NumTraits<Scalar>::HasFloatingPoint && NumTraits<Scalar>::HasFloatingPoint
#elif (defined EIGEN_VECTORIZE_ALTIVEC)
&& 0
#endif #endif
}; };
}; };

View File

@ -108,8 +108,10 @@ template<typename Scalar> void packetmath()
CHECK_CWISE(REF_ADD, ei_padd); CHECK_CWISE(REF_ADD, ei_padd);
CHECK_CWISE(REF_SUB, ei_psub); CHECK_CWISE(REF_SUB, ei_psub);
CHECK_CWISE(REF_MUL, ei_pmul); CHECK_CWISE(REF_MUL, ei_pmul);
#ifndef EIGEN_VECTORIZE_ALTIVEC
if (!ei_is_same_type<Scalar,int>::ret) if (!ei_is_same_type<Scalar,int>::ret)
CHECK_CWISE(REF_DIV, ei_pdiv); CHECK_CWISE(REF_DIV, ei_pdiv);
#endif
CHECK_CWISE(std::min, ei_pmin); CHECK_CWISE(std::min, ei_pmin);
CHECK_CWISE(std::max, ei_pmax); CHECK_CWISE(std::max, ei_pmax);