aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2019-10-08 21:44:33 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2019-10-08 21:44:33 +0200
commit196de2efe3f7d64a165f13fb3627449479bd0220 (patch)
tree69e811fb78d82a2cae414a296863e3fdfab94295 /Eigen
parent36da231a411733e5f0880c59df4b25713e3f0fd2 (diff)
Explicitly bypass resize and memmoves when there is already the exact right number of elements available.
Diffstat (limited to 'Eigen')
-rw-r--r--Eigen/src/SparseCore/SparseBlock.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/Eigen/src/SparseCore/SparseBlock.h b/Eigen/src/SparseCore/SparseBlock.h
index 5ed7c437b..d4535d866 100644
--- a/Eigen/src/SparseCore/SparseBlock.h
+++ b/Eigen/src/SparseCore/SparseBlock.h
@@ -164,7 +164,7 @@ public:
}
else
{
- if(m_matrix.isCompressed())
+ if(m_matrix.isCompressed() && nnz!=block_size)
{
// no need to realloc, simply copy the tail at its respective position and insert tmp
matrix.data().resize(start + nnz + tail_size);