mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-08-12 03:39:01 +08:00
Add and enable Packet int divide for Power10.
This commit is contained in:
parent
54459214a1
commit
e797974689
@ -255,7 +255,11 @@ struct packet_traits<int> : default_packet_traits {
|
||||
HasSub = 1,
|
||||
HasShift = 1,
|
||||
HasMul = 1,
|
||||
#ifdef _ARCH_PWR10
|
||||
HasDiv = 1,
|
||||
#else
|
||||
HasDiv = 0,
|
||||
#endif
|
||||
HasBlend = 1,
|
||||
HasCmp = 1
|
||||
};
|
||||
@ -1043,9 +1047,16 @@ template<> EIGEN_STRONG_INLINE Packet4f pdiv<Packet4f>(const Packet4f& a, const
|
||||
#endif
|
||||
}
|
||||
|
||||
template<> EIGEN_STRONG_INLINE Packet4i pdiv<Packet4i>(const Packet4i& /*a*/, const Packet4i& /*b*/)
|
||||
{ eigen_assert(false && "packet integer division are not supported by AltiVec");
|
||||
template<> EIGEN_STRONG_INLINE Packet4i pdiv<Packet4i>(const Packet4i& a, const Packet4i& b)
|
||||
{
|
||||
#ifdef _ARCH_PWR10
|
||||
return vec_div(a, b);
|
||||
#else
|
||||
EIGEN_UNUSED_VARIABLE(a);
|
||||
EIGEN_UNUSED_VARIABLE(b);
|
||||
eigen_assert(false && "packet integer division are not supported by AltiVec");
|
||||
return pset1<Packet4i>(0);
|
||||
#endif
|
||||
}
|
||||
|
||||
// for some weird raisons, it has to be overloaded for packet of integers
|
||||
|
Loading…
x
Reference in New Issue
Block a user