diff options
author | Rasmus Larsen <rmlarsen@google.com> | 2016-04-07 20:23:03 -0700 |
---|---|---|
committer | Rasmus Larsen <rmlarsen@google.com> | 2016-04-07 20:23:03 -0700 |
commit | c34e55c62ba2749a50165ea77edd6da2b37e74ac (patch) | |
tree | d09c06218dbc43956a704bc9ef9abdfe3dc9d337 /Eigen/Core | |
parent | 283c51cd5edd5d706635b0bd05593f84cb8d618a (diff) | |
parent | 7d5b17087f6a54fab94decaaa9046ff21fa4683a (diff) |
Merged eigen/eigen into default
Diffstat (limited to 'Eigen/Core')
-rw-r--r-- | Eigen/Core | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Eigen/Core b/Eigen/Core index d8c5619d9..8c707618c 100644 --- a/Eigen/Core +++ b/Eigen/Core @@ -197,9 +197,18 @@ #define EIGEN_VECTORIZE #define EIGEN_VECTORIZE_NEON #include <arm_neon.h> + #elif (defined __s390x__ && defined __VEC__) + #define EIGEN_VECTORIZE + #define EIGEN_VECTORIZE_ZVECTOR + #include <vecintrin.h> #endif #endif +#if defined(__F16C__) + // We can use the optimized fp16 to float and float to fp16 conversion routines + #define EIGEN_HAS_FP16_C +#endif + #if defined __CUDACC__ #define EIGEN_VECTORIZE_CUDA #include <vector_types.h> @@ -270,6 +279,8 @@ inline static const char *SimdInstructionSetsInUse(void) { return "VSX"; #elif defined(EIGEN_VECTORIZE_NEON) return "ARM NEON"; +#elif defined(EIGEN_VECTORIZE_ZVECTOR) + return "S390X ZVECTOR"; #else return "None"; #endif @@ -332,6 +343,10 @@ using std::ptrdiff_t; #include "src/Core/arch/NEON/PacketMath.h" #include "src/Core/arch/NEON/MathFunctions.h" #include "src/Core/arch/NEON/Complex.h" +#elif defined EIGEN_VECTORIZE_ZVECTOR + #include "src/Core/arch/ZVector/PacketMath.h" + #include "src/Core/arch/ZVector/MathFunctions.h" + #include "src/Core/arch/ZVector/Complex.h" #endif #include "src/Core/arch/CUDA/Half.h" |