diff options
author | Benoit Jacob <benoitjacob@google.com> | 2016-12-19 13:44:46 -0500 |
---|---|---|
committer | Benoit Jacob <benoitjacob@google.com> | 2016-12-19 13:44:46 -0500 |
commit | 751e097c57e84d368d782c4a18b960ed2350c2f0 (patch) | |
tree | 2d3b6ae7be25107af050dff158b3621dbfc0bfb0 /Eigen/src/Core/arch/NEON/PacketMath.h | |
parent | fb1d0138ece3206cd67c04893e2a9d6a71594816 (diff) |
Use 32 registers on ARM64
Diffstat (limited to 'Eigen/src/Core/arch/NEON/PacketMath.h')
-rw-r--r-- | Eigen/src/Core/arch/NEON/PacketMath.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Eigen/src/Core/arch/NEON/PacketMath.h b/Eigen/src/Core/arch/NEON/PacketMath.h index 2a8f58d74..d392bf3ff 100644 --- a/Eigen/src/Core/arch/NEON/PacketMath.h +++ b/Eigen/src/Core/arch/NEON/PacketMath.h @@ -28,11 +28,13 @@ namespace internal { #define EIGEN_HAS_SINGLE_INSTRUCTION_CJMADD #endif -// FIXME NEON has 16 quad registers, but since the current register allocator -// is so bad, it is much better to reduce it to 8 #ifndef EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS +#if EIGEN_ARCH_ARM64 +#define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS 32 +#else #define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS 16 #endif +#endif typedef float32x2_t Packet2f; typedef float32x4_t Packet4f; |