aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/util
diff options
context:
space:
mode:
authorGravatar Benoit Jacob <jacob.benoit.1@gmail.com>2010-03-03 09:54:50 -0500
committerGravatar Benoit Jacob <jacob.benoit.1@gmail.com>2010-03-03 09:54:50 -0500
commit6a92168915ed91c77abf24d641e263e3876157f3 (patch)
treea1707ff775412891f52c3e2d3cce0748a2e7e6a2 /Eigen/src/Core/util
parent2f3d685e0c687ae1121428dab6bc0ec868b14fe3 (diff)
This was implementing deep changes that after discussion on the mailing list seem to need further discussion/thinking.
Diffstat (limited to 'Eigen/src/Core/util')
-rw-r--r--Eigen/src/Core/util/XprHelper.h9
1 files changed, 2 insertions, 7 deletions
diff --git a/Eigen/src/Core/util/XprHelper.h b/Eigen/src/Core/util/XprHelper.h
index fc4c01468..a09475e20 100644
--- a/Eigen/src/Core/util/XprHelper.h
+++ b/Eigen/src/Core/util/XprHelper.h
@@ -90,19 +90,14 @@ class ei_compute_matrix_flags
inner_max_size = MaxCols==1 ? MaxRows
: MaxRows==1 ? MaxCols
: row_major_bit ? MaxCols : MaxRows,
- inner_size = Cols==1 ? Rows
- : Rows==1 ? Cols
- : row_major_bit ? Cols : Rows,
is_big = inner_max_size == Dynamic,
- is_matrix = Cols!=1 && Rows!=1,
is_packet_size_multiple = MaxRows==Dynamic || MaxCols==Dynamic || ((MaxCols*MaxRows) % ei_packet_traits<Scalar>::size) == 0,
aligned_bit = (((Options&DontAlign)==0) && (is_big || is_packet_size_multiple)) ? AlignedBit : 0,
- packet_access_bit = ei_packet_traits<Scalar>::size > 1 && aligned_bit ? PacketAccessBit : 0,
- linear_access_bit = (inner_max_size!=Dynamic && inner_size!=inner_max_size && is_matrix) ? 0 : LinearAccessBit
+ packet_access_bit = ei_packet_traits<Scalar>::size > 1 && aligned_bit ? PacketAccessBit : 0
};
public:
- enum { ret = DirectAccessBit | NestByRefBit | packet_access_bit | row_major_bit | aligned_bit | linear_access_bit };
+ enum { ret = LinearAccessBit | DirectAccessBit | NestByRefBit | packet_access_bit | row_major_bit | aligned_bit };
};
template<int _Rows, int _Cols> struct ei_size_at_compile_time