aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h
diff options
context:
space:
mode:
authorGravatar Luke Iwanski <luke@codeplay.com>2017-01-04 22:18:44 +0000
committerGravatar Luke Iwanski <luke@codeplay.com>2017-01-04 22:18:44 +0000
commit90c5bc8d64146ff704b9d61f612919b351e15071 (patch)
treed47e0dcea3c8dede9fe25fe5a458849a83b99b9a /unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h
parent3eda02d78d7ab367730fb50f5a669725966a53b9 (diff)
Fixes auto appearance in functor template argument for reduction.
Diffstat (limited to 'unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h')
-rw-r--r--unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h b/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h
index c9912d9d4..319417687 100644
--- a/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h
+++ b/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h
@@ -74,8 +74,8 @@ struct FullReducer<Self, Op, const Eigen::SyclDevice, Vectorizable> {
static void run(const Self& self, Op& reducer, const Eigen::SyclDevice& dev, CoeffReturnType* output) {
typedef const typename Self::ChildType HostExpr; /// this is the child of reduction
- auto functors = TensorSycl::internal::extractFunctors(self.impl());
- typedef decltype(functors) FunctorExpr;
+ typedef decltype(TensorSycl::internal::extractFunctors(self.impl())) FunctorExpr;
+ FunctorExpr functors = TensorSycl::internal::extractFunctors(self.impl());
int red_factor =256; /// initial reduction. If the size is less than red_factor we only creates one thread.
size_t inputSize =self.impl().dimensions().TotalSize();
size_t rng = inputSize/red_factor; // the total number of thread initially is half the size of the input
@@ -136,8 +136,8 @@ struct InnerReducer<Self, Op, const Eigen::SyclDevice> {
static bool run(const Self& self, Op& reducer, const Eigen::SyclDevice& dev, CoeffReturnType* output, typename Self::Index , typename Self::Index num_coeffs_to_preserve) {
typedef const typename Self::ChildType HostExpr; /// this is the child of reduction
- auto functors = TensorSycl::internal::extractFunctors(self.impl());
- typedef decltype(functors) FunctorExpr;
+ typedef decltype(TensorSycl::internal::extractFunctors(self.impl())) FunctorExpr;
+ FunctorExpr functors = TensorSycl::internal::extractFunctors(self.impl());
typename Self::Index range, GRange, tileSize;
typedef typename Eigen::internal::remove_all<decltype(self.xprDims())>::type Dims;