aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h
diff options
context:
space:
mode:
authorGravatar Benoit Steiner <benoit.steiner.goog@gmail.com>2015-11-12 20:10:52 -0800
committerGravatar Benoit Steiner <benoit.steiner.goog@gmail.com>2015-11-12 20:10:52 -0800
commit10a91930cc90cf0c8f3053d74bd101e92d08a331 (patch)
tree3236cd0d7928f0d6162eebc66ce6ba14763082b1 /unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h
parented4b37de0250412516841cf2ded3f90037d6b6d6 (diff)
Fixed a compilation warning triggered by nvcc
Diffstat (limited to 'unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h')
-rw-r--r--unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h15
1 files changed, 8 insertions, 7 deletions
diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h b/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h
index ee3bf7fe3..d4f9a725d 100644
--- a/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h
+++ b/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h
@@ -216,9 +216,10 @@ struct TensorEvaluator<const TensorTupleReducerOp<ReduceOp, Dims, ArgType>, Devi
: m_orig_impl(op.expression(), device),
m_impl(op.expression().index_tuples().reduce(op.reduce_dims(), op.reduce_op()), device),
m_return_dim(op.return_dim()),
- m_strides(gen_strides(m_orig_impl.dimensions())),
m_stride_mod(gen_stride_mod(m_orig_impl.dimensions())),
- m_stride_div(gen_stride_div()) { }
+ m_stride_div(gen_stride_div()) {
+ gen_strides(m_orig_impl.dimensions(), m_strides);
+ }
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Dimensions& dimensions() const {
return m_impl.dimensions();
@@ -240,9 +241,10 @@ struct TensorEvaluator<const TensorTupleReducerOp<ReduceOp, Dims, ArgType>, Devi
EIGEN_DEVICE_FUNC Scalar* data() const { return NULL; }
private:
- EIGEN_DEVICE_FUNC StrideDims gen_strides(const InputDimensions& dims) {
- StrideDims strides;
- if (m_return_dim < 0) return strides; // Won't be using these.
+ EIGEN_DEVICE_FUNC void gen_strides(const InputDimensions& dims, StrideDims& strides) {
+ if (m_return_dim < 0) {
+ return; // Won't be using the strides.
+ }
eigen_assert(m_return_dim < NumDims &&
"Asking to convert index to a dimension outside of the rank");
@@ -259,7 +261,6 @@ struct TensorEvaluator<const TensorTupleReducerOp<ReduceOp, Dims, ArgType>, Devi
strides[i] = strides[i+1] * dims[i+1];
}
}
- return strides;
}
EIGEN_DEVICE_FUNC Index gen_stride_mod(const InputDimensions& dims) {
@@ -278,7 +279,7 @@ struct TensorEvaluator<const TensorTupleReducerOp<ReduceOp, Dims, ArgType>, Devi
TensorEvaluator<const TensorIndexTupleOp<ArgType>, Device> m_orig_impl;
TensorEvaluator<const TensorReductionOp<ReduceOp, Dims, const TensorIndexTupleOp<ArgType> >, Device> m_impl;
const int m_return_dim;
- const StrideDims m_strides;
+ StrideDims m_strides;
const Index m_stride_mod;
const Index m_stride_div;
};