mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-07-20 03:44:26 +08:00
Workaround i387 issue in unit test
This commit is contained in:
parent
bf792f59e3
commit
a64156cae5
13
test/ref.cpp
13
test/ref.cpp
@ -18,6 +18,18 @@
|
|||||||
|
|
||||||
// test Ref.h
|
// test Ref.h
|
||||||
|
|
||||||
|
// Deal with i387 extended precision
|
||||||
|
#if EIGEN_ARCH_i386 && !(EIGEN_ARCH_x86_64)
|
||||||
|
|
||||||
|
#if EIGEN_COMP_GNUC_STRICT && EIGEN_GNUC_AT_LEAST(4,4)
|
||||||
|
#pragma GCC optimize ("-ffloat-store")
|
||||||
|
#else
|
||||||
|
#undef VERIFY_IS_EQUAL
|
||||||
|
#define VERIFY_IS_EQUAL(X,Y) VERIFY_IS_APPROX(X,Y)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
template<typename MatrixType> void ref_matrix(const MatrixType& m)
|
template<typename MatrixType> void ref_matrix(const MatrixType& m)
|
||||||
{
|
{
|
||||||
typedef typename MatrixType::Index Index;
|
typedef typename MatrixType::Index Index;
|
||||||
@ -55,7 +67,6 @@ template<typename MatrixType> void ref_matrix(const MatrixType& m)
|
|||||||
rm2 = m2.block(i,j,brows,bcols);
|
rm2 = m2.block(i,j,brows,bcols);
|
||||||
VERIFY_IS_EQUAL(m1, m2);
|
VERIFY_IS_EQUAL(m1, m2);
|
||||||
|
|
||||||
|
|
||||||
ConstRefDynMat rm3 = m1.block(i,j,brows,bcols);
|
ConstRefDynMat rm3 = m1.block(i,j,brows,bcols);
|
||||||
m1.block(i,j,brows,bcols) *= 2;
|
m1.block(i,j,brows,bcols) *= 2;
|
||||||
m2.block(i,j,brows,bcols) *= 2;
|
m2.block(i,j,brows,bcols) *= 2;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user