diff options
Diffstat (limited to 'Eigen/src/Core/arch/MSA')
-rw-r--r-- | Eigen/src/Core/arch/MSA/Complex.h | 18 | ||||
-rw-r--r-- | Eigen/src/Core/arch/MSA/PacketMath.h | 32 |
2 files changed, 0 insertions, 50 deletions
diff --git a/Eigen/src/Core/arch/MSA/Complex.h b/Eigen/src/Core/arch/MSA/Complex.h index 7baa25e33..4877a95a8 100644 --- a/Eigen/src/Core/arch/MSA/Complex.h +++ b/Eigen/src/Core/arch/MSA/Complex.h @@ -305,15 +305,6 @@ EIGEN_STRONG_INLINE std::complex<float> predux_mul<Packet2cf>(const Packet2cf& a (a.v[0] * a.v[3]) + (a.v[1] * a.v[2])); } -template <int Offset> -struct palign_impl<Offset, Packet2cf> { - EIGEN_STRONG_INLINE static void run(Packet2cf& first, const Packet2cf& second) { - if (Offset == 1) { - first.v = (Packet4f)__builtin_msa_sldi_b((v16i8)second.v, (v16i8)first.v, Offset * 8); - } - } -}; - template <> struct conj_helper<Packet2cf, Packet2cf, false, true> { EIGEN_STRONG_INLINE Packet2cf pmadd(const Packet2cf& x, const Packet2cf& y, @@ -653,15 +644,6 @@ EIGEN_STRONG_INLINE std::complex<double> predux_mul<Packet1cd>(const Packet1cd& return pfirst(a); } -template <int Offset> -struct palign_impl<Offset, Packet1cd> { - static EIGEN_STRONG_INLINE void run(Packet1cd& /*first*/, const Packet1cd& /*second*/) { - // FIXME is it sure we never have to align a Packet1cd? - // Even though a std::complex<double> has 16 bytes, it is not necessarily aligned on a 16 bytes - // boundary... - } -}; - template <> struct conj_helper<Packet1cd, Packet1cd, false, true> { EIGEN_STRONG_INLINE Packet1cd pmadd(const Packet1cd& x, const Packet1cd& y, diff --git a/Eigen/src/Core/arch/MSA/PacketMath.h b/Eigen/src/Core/arch/MSA/PacketMath.h index ff4e1d5f1..f03cf61ff 100644 --- a/Eigen/src/Core/arch/MSA/PacketMath.h +++ b/Eigen/src/Core/arch/MSA/PacketMath.h @@ -675,25 +675,6 @@ EIGEN_STRONG_INLINE int32_t predux_max<Packet4i>(const Packet4i& a) { return m[0]; } -#define PALIGN_MSA(Offset, Type, Command) \ - template <> \ - struct palign_impl<Offset, Type> { \ - EIGEN_STRONG_INLINE static void run(Type& first, const Type& second) { \ - if (Offset != 0) first = (Type)(Command((v16i8)second, (v16i8)first, Offset * 4)); \ - } \ - }; - -PALIGN_MSA(0, Packet4f, __builtin_msa_sldi_b) -PALIGN_MSA(1, Packet4f, __builtin_msa_sldi_b) -PALIGN_MSA(2, Packet4f, __builtin_msa_sldi_b) -PALIGN_MSA(3, Packet4f, __builtin_msa_sldi_b) -PALIGN_MSA(0, Packet4i, __builtin_msa_sldi_b) -PALIGN_MSA(1, Packet4i, __builtin_msa_sldi_b) -PALIGN_MSA(2, Packet4i, __builtin_msa_sldi_b) -PALIGN_MSA(3, Packet4i, __builtin_msa_sldi_b) - -#undef PALIGN_MSA - inline std::ostream& operator<<(std::ostream& os, const PacketBlock<Packet4f, 4>& value) { os << "[ " << value.packet[0] << "," << std::endl << " " << value.packet[1] << "," << std::endl @@ -1168,19 +1149,6 @@ EIGEN_STRONG_INLINE Packet2d prsqrt(const Packet2d& a) { #endif } -#define PALIGN_MSA(Offset, Type, Command) \ - template <> \ - struct palign_impl<Offset, Type> { \ - EIGEN_STRONG_INLINE static void run(Type& first, const Type& second) { \ - if (Offset != 0) first = (Type)(Command((v16i8)second, (v16i8)first, Offset * 8)); \ - } \ - }; - -PALIGN_MSA(0, Packet2d, __builtin_msa_sldi_b) -PALIGN_MSA(1, Packet2d, __builtin_msa_sldi_b) - -#undef PALIGN_MSA - inline std::ostream& operator<<(std::ostream& os, const PacketBlock<Packet2d, 2>& value) { os << "[ " << value.packet[0] << "," << std::endl << " " << value.packet[1] << " ]"; return os; |