aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party/eigen3
diff options
context:
space:
mode:
authorGravatar Jonathan Hseu <jhseu@google.com>2016-12-22 15:38:30 -0800
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2016-12-22 15:48:41 -0800
commitbed8383c27a0a7225e6fc7ff59a2cd6388fb4d09 (patch)
treeb70cfc88f95f318195f8610ffb960e98604348d1 /third_party/eigen3
parent1e5bd8cdd62033d1f7ea928fcbec521bb48bb1f5 (diff)
Merge changes from github.
Change: 142805270
Diffstat (limited to 'third_party/eigen3')
-rw-r--r--third_party/eigen3/unsupported/Eigen/CXX11/FixedPoint9
-rw-r--r--third_party/eigen3/unsupported/Eigen/CXX11/src/FixedPoint/PacketMathAVX2.h2
2 files changed, 10 insertions, 1 deletions
diff --git a/third_party/eigen3/unsupported/Eigen/CXX11/FixedPoint b/third_party/eigen3/unsupported/Eigen/CXX11/FixedPoint
index 9d6b9c3f01..8e55a1f3e8 100644
--- a/third_party/eigen3/unsupported/Eigen/CXX11/FixedPoint
+++ b/third_party/eigen3/unsupported/Eigen/CXX11/FixedPoint
@@ -31,8 +31,15 @@
#include "src/FixedPoint/FixedPointTypes.h"
// Use optimized implementations whenever available
-#ifdef EIGEN_VECTORIZE_AVX2
+#ifdef EIGEN_VECTORIZE_AVX512
+#include "src/Tensor/TensorContractionThreadPool.h"
+#include "src/FixedPoint/PacketMathAVX512.h"
+#include "src/FixedPoint/TypeCastingAVX512.h"
+
+#elif defined EIGEN_VECTORIZE_AVX2
#define EIGEN_USE_OPTIMIZED_INT8_UINT8_MAT_MAT_PRODUCT
+#define EIGEN_USE_OPTIMIZED_INT16_INT16_MAT_MAT_PRODUCT
+#include "src/Tensor/TensorContractionThreadPool.h"
#include "src/FixedPoint/PacketMathAVX2.h"
#include "src/FixedPoint/MatMatProductAVX2.h"
#include "src/FixedPoint/TypeCastingAVX2.h"
diff --git a/third_party/eigen3/unsupported/Eigen/CXX11/src/FixedPoint/PacketMathAVX2.h b/third_party/eigen3/unsupported/Eigen/CXX11/src/FixedPoint/PacketMathAVX2.h
index e71c2d8aea..98deb1742e 100644
--- a/third_party/eigen3/unsupported/Eigen/CXX11/src/FixedPoint/PacketMathAVX2.h
+++ b/third_party/eigen3/unsupported/Eigen/CXX11/src/FixedPoint/PacketMathAVX2.h
@@ -46,6 +46,7 @@ typedef struct Packet4q32i {
Packet4q32i(__m128i val) : val(val) {}
} Packet4q32i;
+#ifndef EIGEN_VECTORIZE_AVX512
template <>
struct packet_traits<QInt8> : default_packet_traits {
typedef Packet32q8i type;
@@ -112,6 +113,7 @@ struct packet_traits<QInt32> : default_packet_traits {
HasSetLinear = 0
};
};
+#endif
template <>
struct unpacket_traits<Packet32q8i> {