aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/arch/AltiVec/PacketMath.h
diff options
context:
space:
mode:
authorGravatar Rasmus Munk Larsen <rmlarsen@google.com>2020-04-23 18:17:14 +0000
committerGravatar Rasmus Munk Larsen <rmlarsen@google.com>2020-04-23 18:17:14 +0000
commite80ec24357aaaa1e205cda3be466206e7830fcda (patch)
tree6b3d585938c9927fce763caccbf5987a1f67217b /Eigen/src/Core/arch/AltiVec/PacketMath.h
parent0aebe19aca58d78434cf724ef954a8383b2bf7c9 (diff)
Remove unused packet op "preduxp".
Diffstat (limited to 'Eigen/src/Core/arch/AltiVec/PacketMath.h')
-rwxr-xr-xEigen/src/Core/arch/AltiVec/PacketMath.h142
1 files changed, 0 insertions, 142 deletions
diff --git a/Eigen/src/Core/arch/AltiVec/PacketMath.h b/Eigen/src/Core/arch/AltiVec/PacketMath.h
index 451e1396c..3000c32d8 100755
--- a/Eigen/src/Core/arch/AltiVec/PacketMath.h
+++ b/Eigen/src/Core/arch/AltiVec/PacketMath.h
@@ -929,106 +929,6 @@ template<> EIGEN_STRONG_INLINE float predux<Packet4f>(const Packet4f& a)
return pfirst(sum);
}
-template<> EIGEN_STRONG_INLINE Packet4f preduxp<Packet4f>(const Packet4f* vecs)
-{
- Packet4f v[4], sum[4];
-
- // It's easier and faster to transpose then add as columns
- // Check: http://www.freevec.org/function/matrix_4x4_transpose_floats for explanation
- // Do the transpose, first set of moves
- v[0] = vec_mergeh(vecs[0], vecs[2]);
- v[1] = vec_mergel(vecs[0], vecs[2]);
- v[2] = vec_mergeh(vecs[1], vecs[3]);
- v[3] = vec_mergel(vecs[1], vecs[3]);
- // Get the resulting vectors
- sum[0] = vec_mergeh(v[0], v[2]);
- sum[1] = vec_mergel(v[0], v[2]);
- sum[2] = vec_mergeh(v[1], v[3]);
- sum[3] = vec_mergel(v[1], v[3]);
-
- // Now do the summation:
- // Lines 0+1
- sum[0] = sum[0] + sum[1];
- // Lines 2+3
- sum[1] = sum[2] + sum[3];
- // Add the results
- sum[0] = sum[0] + sum[1];
-
- return sum[0];
-}
-
-template<> EIGEN_STRONG_INLINE Packet8s preduxp<Packet8s>(const Packet8s* vecs)
-{
- Packet8s step1[8], step2[8], step3[8];
-
- step1[0] = vec_mergeh(vecs[0], vecs[4]);
- step1[1] = vec_mergel(vecs[0], vecs[4]);
- step1[2] = vec_mergeh(vecs[1], vecs[5]);
- step1[3] = vec_mergel(vecs[1], vecs[5]);
- step1[4] = vec_mergeh(vecs[2], vecs[6]);
- step1[5] = vec_mergel(vecs[2], vecs[6]);
- step1[6] = vec_mergeh(vecs[3], vecs[7]);
- step1[7] = vec_mergel(vecs[3], vecs[7]);
-
- step2[0] = vec_mergeh(step1[0], step1[4]);
- step2[1] = vec_mergel(step1[0], step1[4]);
- step2[2] = vec_mergeh(step1[1], step1[5]);
- step2[3] = vec_mergel(step1[1], step1[5]);
- step2[4] = vec_mergeh(step1[2], step1[6]);
- step2[5] = vec_mergel(step1[2], step1[6]);
- step2[6] = vec_mergeh(step1[3], step1[7]);
- step2[7] = vec_mergel(step1[3], step1[7]);
-
- step3[0] = vec_mergeh(step2[0], step2[4]);
- step3[1] = vec_mergel(step2[0], step2[4]);
- step3[2] = vec_mergeh(step2[1], step2[5]);
- step3[3] = vec_mergel(step2[1], step2[5]);
- step3[4] = vec_mergeh(step2[2], step2[6]);
- step3[5] = vec_mergel(step2[2], step2[6]);
- step3[6] = vec_mergeh(step2[3], step2[7]);
- step3[7] = vec_mergel(step2[3], step2[7]);
-
- step3[0] += step3[1] + step3[2] + step3[3] + step3[4] + step3[5] + step3[6] + step3[7];
-
- return step3[0];
-}
-
-template<> EIGEN_STRONG_INLINE Packet8us preduxp<Packet8us>(const Packet8us* vecs)
-{
- Packet8us step1[8], step2[8], step3[8];
-
- step1[0] = vec_mergeh(vecs[0], vecs[4]);
- step1[1] = vec_mergel(vecs[0], vecs[4]);
- step1[2] = vec_mergeh(vecs[1], vecs[5]);
- step1[3] = vec_mergel(vecs[1], vecs[5]);
- step1[4] = vec_mergeh(vecs[2], vecs[6]);
- step1[5] = vec_mergel(vecs[2], vecs[6]);
- step1[6] = vec_mergeh(vecs[3], vecs[7]);
- step1[7] = vec_mergel(vecs[3], vecs[7]);
-
- step2[0] = vec_mergeh(step1[0], step1[4]);
- step2[1] = vec_mergel(step1[0], step1[4]);
- step2[2] = vec_mergeh(step1[1], step1[5]);
- step2[3] = vec_mergel(step1[1], step1[5]);
- step2[4] = vec_mergeh(step1[2], step1[6]);
- step2[5] = vec_mergel(step1[2], step1[6]);
- step2[6] = vec_mergeh(step1[3], step1[7]);
- step2[7] = vec_mergel(step1[3], step1[7]);
-
- step3[0] = vec_mergeh(step2[0], step2[4]);
- step3[1] = vec_mergel(step2[0], step2[4]);
- step3[2] = vec_mergeh(step2[1], step2[5]);
- step3[3] = vec_mergel(step2[1], step2[5]);
- step3[4] = vec_mergeh(step2[2], step2[6]);
- step3[5] = vec_mergel(step2[2], step2[6]);
- step3[6] = vec_mergeh(step2[3], step2[7]);
- step3[7] = vec_mergel(step2[3], step2[7]);
-
- step3[0] += step3[1] + step3[2] + step3[3] + step3[4] + step3[5] + step3[6] + step3[7];
-
- return step3[0];
-}
-
template<> EIGEN_STRONG_INLINE int predux<Packet4i>(const Packet4i& a)
{
Packet4i sum;
@@ -1074,34 +974,6 @@ template<> EIGEN_STRONG_INLINE unsigned short int predux<Packet8us>(const Packet
return static_cast<unsigned short int>(predux(first_half) + predux(second_half));
}
-template<> EIGEN_STRONG_INLINE Packet4i preduxp<Packet4i>(const Packet4i* vecs)
-{
- Packet4i v[4], sum[4];
-
- // It's easier and faster to transpose then add as columns
- // Check: http://www.freevec.org/function/matrix_4x4_transpose_floats for explanation
- // Do the transpose, first set of moves
- v[0] = vec_mergeh(vecs[0], vecs[2]);
- v[1] = vec_mergel(vecs[0], vecs[2]);
- v[2] = vec_mergeh(vecs[1], vecs[3]);
- v[3] = vec_mergel(vecs[1], vecs[3]);
- // Get the resulting vectors
- sum[0] = vec_mergeh(v[0], v[2]);
- sum[1] = vec_mergel(v[0], v[2]);
- sum[2] = vec_mergeh(v[1], v[3]);
- sum[3] = vec_mergel(v[1], v[3]);
-
- // Now do the summation:
- // Lines 0+1
- sum[0] = sum[0] + sum[1];
- // Lines 2+3
- sum[1] = sum[2] + sum[3];
- // Add the results
- sum[0] = sum[0] + sum[1];
-
- return sum[0];
-}
-
// Other reduction functions:
// mul
template<> EIGEN_STRONG_INLINE float predux_mul<Packet4f>(const Packet4f& a)
@@ -1835,20 +1707,6 @@ template<> EIGEN_STRONG_INLINE double predux<Packet2d>(const Packet2d& a)
return pfirst<Packet2d>(sum);
}
-template<> EIGEN_STRONG_INLINE Packet2d preduxp<Packet2d>(const Packet2d* vecs)
-{
- Packet2d v[2], sum;
- v[0] = vecs[0] + reinterpret_cast<Packet2d>(vec_sld(reinterpret_cast<Packet4f>(vecs[0]), reinterpret_cast<Packet4f>(vecs[0]), 8));
- v[1] = vecs[1] + reinterpret_cast<Packet2d>(vec_sld(reinterpret_cast<Packet4f>(vecs[1]), reinterpret_cast<Packet4f>(vecs[1]), 8));
-
-#ifdef _BIG_ENDIAN
- sum = reinterpret_cast<Packet2d>(vec_sld(reinterpret_cast<Packet4f>(v[0]), reinterpret_cast<Packet4f>(v[1]), 8));
-#else
- sum = reinterpret_cast<Packet2d>(vec_sld(reinterpret_cast<Packet4f>(v[1]), reinterpret_cast<Packet4f>(v[0]), 8));
-#endif
-
- return sum;
-}
// Other reduction functions:
// mul
template<> EIGEN_STRONG_INLINE double predux_mul<Packet2d>(const Packet2d& a)