aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h
diff options
context:
space:
mode:
authorGravatar Weiming Zhao <weiming.zhao@alibaba-inc.com>2018-04-11 11:37:06 +0200
committerGravatar Weiming Zhao <weiming.zhao@alibaba-inc.com>2018-04-11 11:37:06 +0200
commitb0eda3cb9fc08d7b0bd39d99a1874b9575439e2c (patch)
tree477300ca4b1cca6fc607a81195d682066b08f2e7 /unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h
parent79266fec75a78a31126efbbfd603d8459660350d (diff)
Avoid using memcpy for non-POD elements
Diffstat (limited to 'unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h')
-rw-r--r--unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h b/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h
index 2264be391..fe62ff1ea 100644
--- a/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h
+++ b/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h
@@ -55,7 +55,7 @@ struct TensorEvaluator
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Dimensions& dimensions() const { return m_dims; }
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE bool evalSubExprsIfNeeded(CoeffReturnType* dest) {
- if (dest) {
+ if (!NumTraits<typename internal::remove_const<Scalar>::type>::RequireInitialization && dest) {
m_device.memcpy((void*)dest, m_data, sizeof(Scalar) * m_dims.TotalSize());
return false;
}