From 225ab040e078b923ece75b7a49ae0cef980c226f Mon Sep 17 00:00:00 2001 From: Rasmus Munk Larsen Date: Thu, 7 May 2020 17:14:26 -0700 Subject: Remove unused packet op "palign". Clean up a compiler warning in c++03 mode in AVX512/Complex.h. --- Eigen/src/Core/arch/NEON/PacketMath.h | 157 ---------------------------------- 1 file changed, 157 deletions(-) (limited to 'Eigen/src/Core/arch/NEON/PacketMath.h') diff --git a/Eigen/src/Core/arch/NEON/PacketMath.h b/Eigen/src/Core/arch/NEON/PacketMath.h index 3d24f00ce..5937433f5 100644 --- a/Eigen/src/Core/arch/NEON/PacketMath.h +++ b/Eigen/src/Core/arch/NEON/PacketMath.h @@ -2708,147 +2708,6 @@ template<> EIGEN_STRONG_INLINE bool predux_any(const Packet4f& x) return vget_lane_u32(vpmax_u32(tmp, tmp), 0); } -// this PALIGN_NEON business is to work around a bug in LLVM Clang 3.0 causing incorrect compilation errors, -// see bug 347 and this LLVM bug: http://llvm.org/bugs/show_bug.cgi?id=11074 -#define PALIGN_NEON(Offset,Type,Command) \ -template<>\ -struct palign_impl\ -{\ - EIGEN_STRONG_INLINE static void run(Type& first, const Type& second)\ - {\ - if (Offset!=0)\ - first = Command(first, second, Offset);\ - }\ -};\ - -template -EIGEN_STRONG_INLINE T palign_4c(const T& first, const T &second, const int n) -{ - return static_cast((static_cast(second) << (32 - n * 8)) | (static_cast(first) >> (n * 8))); -} - -PALIGN_NEON(0, Packet2f, vext_f32) -PALIGN_NEON(1, Packet2f, vext_f32) - -PALIGN_NEON(0, Packet4f, vextq_f32) -PALIGN_NEON(1, Packet4f, vextq_f32) -PALIGN_NEON(2, Packet4f, vextq_f32) -PALIGN_NEON(3, Packet4f, vextq_f32) - -PALIGN_NEON(0, Packet4c, palign_4c) -PALIGN_NEON(1, Packet4c, palign_4c) -PALIGN_NEON(2, Packet4c, palign_4c) -PALIGN_NEON(3, Packet4c, palign_4c) - -PALIGN_NEON(0, Packet8c, vext_s8) -PALIGN_NEON(1, Packet8c, vext_s8) -PALIGN_NEON(2, Packet8c, vext_s8) -PALIGN_NEON(3, Packet8c, vext_s8) -PALIGN_NEON(4, Packet8c, vext_s8) -PALIGN_NEON(5, Packet8c, vext_s8) -PALIGN_NEON(6, Packet8c, vext_s8) -PALIGN_NEON(7, Packet8c, vext_s8) - -PALIGN_NEON(0, Packet16c, vextq_s8) -PALIGN_NEON(1, Packet16c, vextq_s8) -PALIGN_NEON(2, Packet16c, vextq_s8) -PALIGN_NEON(3, Packet16c, vextq_s8) -PALIGN_NEON(4, Packet16c, vextq_s8) -PALIGN_NEON(5, Packet16c, vextq_s8) -PALIGN_NEON(6, Packet16c, vextq_s8) -PALIGN_NEON(7, Packet16c, vextq_s8) -PALIGN_NEON(8, Packet16c, vextq_s8) -PALIGN_NEON(9, Packet16c, vextq_s8) -PALIGN_NEON(10, Packet16c, vextq_s8) -PALIGN_NEON(11, Packet16c, vextq_s8) -PALIGN_NEON(12, Packet16c, vextq_s8) -PALIGN_NEON(13, Packet16c, vextq_s8) -PALIGN_NEON(14, Packet16c, vextq_s8) -PALIGN_NEON(15, Packet16c, vextq_s8) - -PALIGN_NEON(0, Packet4uc, palign_4c) -PALIGN_NEON(1, Packet4uc, palign_4c) -PALIGN_NEON(2, Packet4uc, palign_4c) -PALIGN_NEON(3, Packet4uc, palign_4c) - -PALIGN_NEON(0, Packet8uc, vext_u8) -PALIGN_NEON(1, Packet8uc, vext_u8) -PALIGN_NEON(2, Packet8uc, vext_u8) -PALIGN_NEON(3, Packet8uc, vext_u8) -PALIGN_NEON(4, Packet8uc, vext_u8) -PALIGN_NEON(5, Packet8uc, vext_u8) -PALIGN_NEON(6, Packet8uc, vext_u8) -PALIGN_NEON(7, Packet8uc, vext_u8) - -PALIGN_NEON(0, Packet16uc, vextq_u8) -PALIGN_NEON(1, Packet16uc, vextq_u8) -PALIGN_NEON(2, Packet16uc, vextq_u8) -PALIGN_NEON(3, Packet16uc, vextq_u8) -PALIGN_NEON(4, Packet16uc, vextq_u8) -PALIGN_NEON(5, Packet16uc, vextq_u8) -PALIGN_NEON(6, Packet16uc, vextq_u8) -PALIGN_NEON(7, Packet16uc, vextq_u8) -PALIGN_NEON(8, Packet16uc, vextq_u8) -PALIGN_NEON(9, Packet16uc, vextq_u8) -PALIGN_NEON(10, Packet16uc, vextq_u8) -PALIGN_NEON(11, Packet16uc, vextq_u8) -PALIGN_NEON(12, Packet16uc, vextq_u8) -PALIGN_NEON(13, Packet16uc, vextq_u8) -PALIGN_NEON(14, Packet16uc, vextq_u8) -PALIGN_NEON(15, Packet16uc, vextq_u8) - -PALIGN_NEON(0, Packet4s, vext_s16) -PALIGN_NEON(1, Packet4s, vext_s16) -PALIGN_NEON(2, Packet4s, vext_s16) -PALIGN_NEON(3, Packet4s, vext_s16) - -PALIGN_NEON(0, Packet8s, vextq_s16) -PALIGN_NEON(1, Packet8s, vextq_s16) -PALIGN_NEON(2, Packet8s, vextq_s16) -PALIGN_NEON(3, Packet8s, vextq_s16) -PALIGN_NEON(4, Packet8s, vextq_s16) -PALIGN_NEON(5, Packet8s, vextq_s16) -PALIGN_NEON(6, Packet8s, vextq_s16) -PALIGN_NEON(7, Packet8s, vextq_s16) - -PALIGN_NEON(0, Packet4us, vext_u16) -PALIGN_NEON(1, Packet4us, vext_u16) -PALIGN_NEON(2, Packet4us, vext_u16) -PALIGN_NEON(3, Packet4us, vext_u16) - -PALIGN_NEON(0, Packet8us, vextq_u16) -PALIGN_NEON(1, Packet8us, vextq_u16) -PALIGN_NEON(2, Packet8us, vextq_u16) -PALIGN_NEON(3, Packet8us, vextq_u16) -PALIGN_NEON(4, Packet8us, vextq_u16) -PALIGN_NEON(5, Packet8us, vextq_u16) -PALIGN_NEON(6, Packet8us, vextq_u16) -PALIGN_NEON(7, Packet8us, vextq_u16) - -PALIGN_NEON(0, Packet2i, vext_s32) -PALIGN_NEON(1, Packet2i, vext_s32) - -PALIGN_NEON(0, Packet4i, vextq_s32) -PALIGN_NEON(1, Packet4i, vextq_s32) -PALIGN_NEON(2, Packet4i, vextq_s32) -PALIGN_NEON(3, Packet4i, vextq_s32) - -PALIGN_NEON(0, Packet2ui, vext_u32) -PALIGN_NEON(1, Packet2ui, vext_u32) - -PALIGN_NEON(0, Packet4ui, vextq_u32) -PALIGN_NEON(1, Packet4ui, vextq_u32) -PALIGN_NEON(2, Packet4ui, vextq_u32) -PALIGN_NEON(3, Packet4ui, vextq_u32) - -PALIGN_NEON(0, Packet2l, vextq_s64) -PALIGN_NEON(1, Packet2l, vextq_s64) - -PALIGN_NEON(0, Packet2ul, vextq_u64) -PALIGN_NEON(1, Packet2ul, vextq_u64) - -#undef PALIGN_NEON - EIGEN_DEVICE_FUNC inline void ptranspose(PacketBlock& kernel) { const float32x2x2_t z = vzip_f32(kernel.packet[0], kernel.packet[1]); @@ -3563,22 +3422,6 @@ template<> EIGEN_STRONG_INLINE double predux_min(const Packet2d& a) template<> EIGEN_STRONG_INLINE double predux_max(const Packet2d& a) { return vgetq_lane_f64(vpmaxq_f64(a,a), 0); } -// this PALIGN_NEON business is to work around a bug in LLVM Clang 3.0 causing incorrect compilation errors, -// see bug 347 and this LLVM bug: http://llvm.org/bugs/show_bug.cgi?id=11074 -#define PALIGN_NEON(Offset,Type,Command) \ -template<>\ -struct palign_impl\ -{\ - EIGEN_STRONG_INLINE static void run(Type& first, const Type& second)\ - {\ - if (Offset!=0)\ - first = Command(first, second, Offset);\ - }\ -};\ - -PALIGN_NEON(0, Packet2d, vextq_f64) -PALIGN_NEON(1, Packet2d, vextq_f64) -#undef PALIGN_NEON EIGEN_DEVICE_FUNC inline void ptranspose(PacketBlock& kernel) -- cgit v1.2.3