mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
AVX512f includes FMA but GCC does not define __FMA__ with -mavx512f only
This commit is contained in:
@@ -22,7 +22,7 @@ namespace internal {
|
|||||||
#define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS (2*sizeof(void*))
|
#define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS (2*sizeof(void*))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __FMA__
|
#ifdef EIGEN_VECTORIZE_FMA
|
||||||
#ifndef EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
#ifndef EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
||||||
#define EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
#define EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ namespace internal {
|
|||||||
#define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS (2*sizeof(void*))
|
#define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS (2*sizeof(void*))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __FMA__
|
#ifdef EIGEN_VECTORIZE_FMA
|
||||||
#ifndef EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
#ifndef EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
||||||
#define EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
#define EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
||||||
#endif
|
#endif
|
||||||
@@ -223,7 +223,7 @@ EIGEN_STRONG_INLINE Packet8d pdiv<Packet8d>(const Packet8d& a,
|
|||||||
return _mm512_div_pd(a, b);
|
return _mm512_div_pd(a, b);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __FMA__
|
#ifdef EIGEN_VECTORIZE_FMA
|
||||||
template <>
|
template <>
|
||||||
EIGEN_STRONG_INLINE Packet16f pmadd(const Packet16f& a, const Packet16f& b,
|
EIGEN_STRONG_INLINE Packet16f pmadd(const Packet16f& a, const Packet16f& b,
|
||||||
const Packet16f& c) {
|
const Packet16f& c) {
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ namespace internal {
|
|||||||
#define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS (2*sizeof(void*))
|
#define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS (2*sizeof(void*))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __FMA__
|
#ifdef EIGEN_VECTORIZE_FMA
|
||||||
#ifndef EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
#ifndef EIGEN_HAS_SINGLE_INSTRUCTION_MADD
|
||||||
#define EIGEN_HAS_SINGLE_INSTRUCTION_MADD 1
|
#define EIGEN_HAS_SINGLE_INSTRUCTION_MADD 1
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user