Merged in ezhulenev/eigen-01 (pull request PR-746)

Remove internal::smart_copy and replace with std::copy
This commit is contained in:
Rasmus Larsen
2019-11-04 20:18:38 +00:00
7 changed files with 28 additions and 55 deletions

View File

@@ -96,7 +96,7 @@ class TensorStorage<T, DSizes<IndexType, NumIndices_>, Options_>
: m_data(internal::conditional_aligned_new_auto<T,(Options_&DontAlign)==0>(internal::array_prod(other.m_dimensions)))
, m_dimensions(other.m_dimensions)
{
internal::smart_copy(other.m_data, other.m_data+internal::array_prod(other.m_dimensions), m_data);
std::copy(other.m_data, other.m_data+internal::array_prod(other.m_dimensions), m_data);
}
EIGEN_DEVICE_FUNC Self& operator=(const Self& other)
{

View File

@@ -67,13 +67,11 @@ class array : public std::array<T, N> {
: Base{{v1, v2, v3, v4, v5, v6, v7, v8}} {
EIGEN_STATIC_ASSERT(N == 8, YOU_MADE_A_PROGRAMMING_MISTAKE);
}
#if EIGEN_HAS_VARIADIC_TEMPLATES
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE
array(std::initializer_list<T> l) {
eigen_assert(l.size() == N);
internal::smart_copy(l.begin(), l.end(), &this->front());
std::copy(l.begin(), l.end(), &this->front());
}
#endif
};
namespace internal {