mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Remove now-unused protate PacketMath func
This commit is contained in:
@@ -278,35 +278,6 @@ template<> EIGEN_DEVICE_FUNC inline double predux_mul<double2>(const double2& a)
|
||||
return a.x * a.y;
|
||||
}
|
||||
|
||||
template<size_t offset>
|
||||
struct protate_impl<offset, float4>
|
||||
{
|
||||
static float4 run(const float4& a) {
|
||||
if (offset == 0) {
|
||||
return make_float4(a.x, a.y, a.z, a.w);
|
||||
}
|
||||
if (offset == 1) {
|
||||
return make_float4(a.w, a.x, a.y, a.z);
|
||||
}
|
||||
if (offset == 2) {
|
||||
return make_float4(a.z, a.w, a.x, a.y);
|
||||
}
|
||||
return make_float4(a.y, a.z, a.w, a.x);
|
||||
}
|
||||
};
|
||||
|
||||
template<size_t offset>
|
||||
struct protate_impl<offset, double2>
|
||||
{
|
||||
static double2 run(const double2& a) {
|
||||
if (offset == 0) {
|
||||
return make_double2(a.x, a.y);
|
||||
}
|
||||
return make_double2(a.y, a.x);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
template<> EIGEN_DEVICE_FUNC inline float4 pabs<float4>(const float4& a) {
|
||||
return make_float4(fabsf(a.x), fabsf(a.y), fabsf(a.z), fabsf(a.w));
|
||||
}
|
||||
|
||||
@@ -334,22 +334,6 @@ template<> EIGEN_STRONG_INLINE Packet4i preverse(const Packet4i& a) {
|
||||
return vcombine_s32(a_hi, a_lo);
|
||||
}
|
||||
|
||||
template<size_t offset>
|
||||
struct protate_impl<offset, Packet4f>
|
||||
{
|
||||
static Packet4f run(const Packet4f& a) {
|
||||
return vextq_f32(a, a, offset);
|
||||
}
|
||||
};
|
||||
|
||||
template<size_t offset>
|
||||
struct protate_impl<offset, Packet4i>
|
||||
{
|
||||
static Packet4i run(const Packet4i& a) {
|
||||
return vextq_s32(a, a, offset);
|
||||
}
|
||||
};
|
||||
|
||||
template<> EIGEN_STRONG_INLINE Packet4f pabs(const Packet4f& a) { return vabsq_f32(a); }
|
||||
template<> EIGEN_STRONG_INLINE Packet4i pabs(const Packet4i& a) { return vabsq_s32(a); }
|
||||
|
||||
@@ -679,14 +663,6 @@ template<> EIGEN_STRONG_INLINE double pfirst<Packet2d>(const Packet2d& a) { retu
|
||||
|
||||
template<> EIGEN_STRONG_INLINE Packet2d preverse(const Packet2d& a) { return vcombine_f64(vget_high_f64(a), vget_low_f64(a)); }
|
||||
|
||||
template<size_t offset>
|
||||
struct protate_impl<offset, Packet2d>
|
||||
{
|
||||
static Packet2d run(const Packet2d& a) {
|
||||
return vextq_f64(a, a, offset);
|
||||
}
|
||||
};
|
||||
|
||||
template<> EIGEN_STRONG_INLINE Packet2d pabs(const Packet2d& a) { return vabsq_f64(a); }
|
||||
|
||||
#if EIGEN_COMP_CLANG && defined(__apple_build_version__)
|
||||
|
||||
@@ -434,30 +434,6 @@ template<> EIGEN_STRONG_INLINE Packet2d preverse(const Packet2d& a)
|
||||
template<> EIGEN_STRONG_INLINE Packet4i preverse(const Packet4i& a)
|
||||
{ return _mm_shuffle_epi32(a,0x1B); }
|
||||
|
||||
template<size_t offset>
|
||||
struct protate_impl<offset, Packet4f>
|
||||
{
|
||||
static Packet4f run(const Packet4f& a) {
|
||||
return vec4f_swizzle1(a, offset, (offset + 1) % 4, (offset + 2) % 4, (offset + 3) % 4);
|
||||
}
|
||||
};
|
||||
|
||||
template<size_t offset>
|
||||
struct protate_impl<offset, Packet4i>
|
||||
{
|
||||
static Packet4i run(const Packet4i& a) {
|
||||
return vec4i_swizzle1(a, offset, (offset + 1) % 4, (offset + 2) % 4, (offset + 3) % 4);
|
||||
}
|
||||
};
|
||||
|
||||
template<size_t offset>
|
||||
struct protate_impl<offset, Packet2d>
|
||||
{
|
||||
static Packet2d run(const Packet2d& a) {
|
||||
return vec2d_swizzle1(a, offset, (offset + 1) % 2);
|
||||
}
|
||||
};
|
||||
|
||||
template<> EIGEN_STRONG_INLINE Packet4f pabs(const Packet4f& a)
|
||||
{
|
||||
const Packet4f mask = _mm_castsi128_ps(_mm_setr_epi32(0x7FFFFFFF,0x7FFFFFFF,0x7FFFFFFF,0x7FFFFFFF));
|
||||
|
||||
Reference in New Issue
Block a user