mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Reverted the definition of the EIGEN_ALIGN to its former meaning (i.e. a boolean)
Created a new EIGEN_ALIGN_BYTES define to encode how the data should be aligned Fixed a few remaining alignment issues exposed when the Eigen code is compiled with avx enabled. Created a new EIGEN_ALIGN_DEFAULT define, which is set to the minimum alignment value required for the chosen instruction set. Use this value instead of EIGEN_ALIGN32 to preserve the existing alignment on SSE/Altivec/Neon.
This commit is contained in:
@@ -66,9 +66,9 @@ template<typename Scalar> void parametrizedline_alignment()
|
||||
typedef ParametrizedLine<Scalar,4,AutoAlign> Line4a;
|
||||
typedef ParametrizedLine<Scalar,4,DontAlign> Line4u;
|
||||
|
||||
EIGEN_ALIGN16 Scalar array1[8];
|
||||
EIGEN_ALIGN16 Scalar array2[8];
|
||||
EIGEN_ALIGN16 Scalar array3[8+1];
|
||||
EIGEN_ALIGN_DEFAULT Scalar array1[8];
|
||||
EIGEN_ALIGN_DEFAULT Scalar array2[8];
|
||||
EIGEN_ALIGN_DEFAULT Scalar array3[8+1];
|
||||
Scalar* array3u = array3+1;
|
||||
|
||||
Line4a *p1 = ::new(reinterpret_cast<void*>(array1)) Line4a;
|
||||
|
||||
Reference in New Issue
Block a user