mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-08-12 11:49:02 +08:00
Fix compilation with GCC/AVX (workaround __m128 and __m256 being the same type with default ABI)
This commit is contained in:
parent
9daf8eba6f
commit
91ab2489dd
@ -474,7 +474,7 @@ ptranspose(PacketBlock<Packet2cf,2>& kernel) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<> EIGEN_STRONG_INLINE Packet2cf pblend(const Selector<2>& ifPacket, const Packet2cf& thenPacket, const Packet2cf& elsePacket) {
|
template<> EIGEN_STRONG_INLINE Packet2cf pblend(const Selector<2>& ifPacket, const Packet2cf& thenPacket, const Packet2cf& elsePacket) {
|
||||||
__m128d result = pblend(ifPacket, _mm_castps_pd(thenPacket.v), _mm_castps_pd(elsePacket.v));
|
__m128d result = pblend<Packet2d>(ifPacket, _mm_castps_pd(thenPacket.v), _mm_castps_pd(elsePacket.v));
|
||||||
return Packet2cf(_mm_castpd_ps(result));
|
return Packet2cf(_mm_castpd_ps(result));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ namespace internal {
|
|||||||
// One solution is to increase ABI version using -fabi-version=4 (or greater).
|
// One solution is to increase ABI version using -fabi-version=4 (or greater).
|
||||||
// To workaround this inconvenince, we rather wrap 128bit types into the following helper
|
// To workaround this inconvenince, we rather wrap 128bit types into the following helper
|
||||||
// structure:
|
// structure:
|
||||||
// TODO disable this wrapper if abi-versio>=4, but to detect that without asking the user to define a macro?
|
// TODO disable this wrapper if abi-versio>=4, but how to detect that without asking the user to define a macro?
|
||||||
template<typename T>
|
template<typename T>
|
||||||
struct eigen_packet_wrapper
|
struct eigen_packet_wrapper
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user