mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-05-02 00:34:14 +08:00
Enable NEON pcmp, plset, and complex psqrt
This commit is contained in:
parent
dbf7ae6f9b
commit
311cc0f9cc
@ -66,6 +66,7 @@ template<> struct packet_traits<std::complex<float> > : default_packet_traits
|
||||
HasMul = 1,
|
||||
HasDiv = 1,
|
||||
HasNegate = 1,
|
||||
HasSqrt = 1,
|
||||
HasAbs = 0,
|
||||
HasAbs2 = 0,
|
||||
HasMin = 0,
|
||||
@ -406,6 +407,7 @@ template<> struct packet_traits<std::complex<double> > : default_packet_traits
|
||||
HasMul = 1,
|
||||
HasDiv = 1,
|
||||
HasNegate = 1,
|
||||
HasSqrt = 1,
|
||||
HasAbs = 0,
|
||||
HasAbs2 = 0,
|
||||
HasMin = 0,
|
||||
|
@ -216,7 +216,7 @@ struct gebp_traits <half,half,false,false,Architecture::NEON>
|
||||
EIGEN_STRONG_INLINE void updateRhs(const RhsScalar*, RhsPacketx4&) const
|
||||
{}
|
||||
|
||||
EIGEN_STRONG_INLINE void loadRhsQuad(const RhsScalar* b, RhsPacket& dest) const
|
||||
EIGEN_STRONG_INLINE void loadRhsQuad(const RhsScalar*, RhsPacket&) const
|
||||
{
|
||||
// If LHS is a Packet8h, we cannot correctly mimic a ploadquad of the RHS
|
||||
// using a single scalar value.
|
||||
|
@ -176,6 +176,7 @@ struct packet_traits<float> : default_packet_traits
|
||||
size = 4,
|
||||
HasHalfPacket = 1,
|
||||
|
||||
HasCmp = 1,
|
||||
HasAdd = 1,
|
||||
HasSub = 1,
|
||||
HasShift = 1,
|
||||
@ -188,7 +189,7 @@ struct packet_traits<float> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0,
|
||||
|
||||
HasDiv = 1,
|
||||
@ -237,7 +238,7 @@ struct packet_traits<int8_t> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0
|
||||
};
|
||||
};
|
||||
@ -267,7 +268,7 @@ struct packet_traits<uint8_t> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0,
|
||||
|
||||
HasSqrt = 1
|
||||
@ -286,6 +287,7 @@ struct packet_traits<int16_t> : default_packet_traits
|
||||
size = 8,
|
||||
HasHalfPacket = 1,
|
||||
|
||||
HasCmp = 1,
|
||||
HasAdd = 1,
|
||||
HasSub = 1,
|
||||
HasShift = 1,
|
||||
@ -298,7 +300,7 @@ struct packet_traits<int16_t> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0
|
||||
};
|
||||
};
|
||||
@ -315,6 +317,7 @@ struct packet_traits<uint16_t> : default_packet_traits
|
||||
size = 8,
|
||||
HasHalfPacket = 1,
|
||||
|
||||
HasCmp = 1,
|
||||
HasAdd = 1,
|
||||
HasSub = 1,
|
||||
HasShift = 1,
|
||||
@ -327,7 +330,7 @@ struct packet_traits<uint16_t> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0,
|
||||
HasSqrt = 1
|
||||
};
|
||||
@ -345,6 +348,7 @@ struct packet_traits<int32_t> : default_packet_traits
|
||||
size = 4,
|
||||
HasHalfPacket = 1,
|
||||
|
||||
HasCmp = 1,
|
||||
HasAdd = 1,
|
||||
HasSub = 1,
|
||||
HasShift = 1,
|
||||
@ -357,7 +361,7 @@ struct packet_traits<int32_t> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0
|
||||
};
|
||||
};
|
||||
@ -374,6 +378,7 @@ struct packet_traits<uint32_t> : default_packet_traits
|
||||
size = 4,
|
||||
HasHalfPacket = 1,
|
||||
|
||||
HasCmp = 1,
|
||||
HasAdd = 1,
|
||||
HasSub = 1,
|
||||
HasShift = 1,
|
||||
@ -386,7 +391,7 @@ struct packet_traits<uint32_t> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0,
|
||||
|
||||
HasSqrt = 1
|
||||
@ -418,7 +423,7 @@ struct packet_traits<int64_t> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0
|
||||
};
|
||||
};
|
||||
@ -448,7 +453,7 @@ struct packet_traits<uint64_t> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0
|
||||
};
|
||||
};
|
||||
@ -3406,7 +3411,7 @@ template<> struct packet_traits<bfloat16> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0,
|
||||
HasDiv = 1,
|
||||
HasFloor = 1,
|
||||
@ -3763,7 +3768,7 @@ template<> struct packet_traits<double> : default_packet_traits
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0,
|
||||
|
||||
HasDiv = 1,
|
||||
@ -4007,7 +4012,7 @@ struct packet_traits<Eigen::half> : default_packet_traits {
|
||||
HasMin = 1,
|
||||
HasMax = 1,
|
||||
HasConj = 1,
|
||||
HasSetLinear = 0,
|
||||
HasSetLinear = 1,
|
||||
HasBlend = 0,
|
||||
HasInsert = 1,
|
||||
HasReduxp = 1,
|
||||
|
Loading…
x
Reference in New Issue
Block a user