Disable Flagged and ForceAlignedAccess

This commit is contained in:
Gael Guennebaud 2014-02-19 14:05:56 +01:00
parent 68e8ddaf94
commit 61cff28618
3 changed files with 19 additions and 1 deletions

View File

@ -327,7 +327,10 @@ using std::ptrdiff_t;
#include "src/Core/util/BlasUtil.h"
#include "src/Core/DenseStorage.h"
#include "src/Core/NestByValue.h"
#ifndef EIGEN_ENABLE_EVALUATORS
#include "src/Core/ForceAlignedAccess.h"
#include "src/Core/Flagged.h"
#endif
#include "src/Core/ReturnByValue.h"
#include "src/Core/NoAlias.h"
#include "src/Core/PlainObjectBase.h"
@ -358,7 +361,6 @@ using std::ptrdiff_t;
#include "src/Core/IO.h"
#include "src/Core/Swap.h"
#include "src/Core/CommaInitializer.h"
#include "src/Core/Flagged.h"
#include "src/Core/ProductBase.h"
#include "src/Core/GeneralProduct.h"
#ifdef EIGEN_ENABLE_EVALUATORS

View File

@ -287,8 +287,15 @@ template<typename Derived> class DenseBase
EIGEN_DEVICE_FUNC
CommaInitializer<Derived> operator<< (const Scalar& s);
#ifndef EIGEN_TEST_EVALUATORS
template<unsigned int Added,unsigned int Removed>
const Flagged<Derived, Added, Removed> flagged() const;
#else
// TODO flagged is temporarly disabled. It seems useless now
template<unsigned int Added,unsigned int Removed>
const Derived& flagged() const
{ return derived(); }
#endif
template<typename OtherDerived>
EIGEN_DEVICE_FUNC

View File

@ -360,10 +360,19 @@ template<typename Derived> class MatrixBase
NoAlias<Derived,Eigen::MatrixBase > noalias();
#ifndef EIGEN_TEST_EVALUATORS
inline const ForceAlignedAccess<Derived> forceAlignedAccess() const;
inline ForceAlignedAccess<Derived> forceAlignedAccess();
template<bool Enable> inline typename internal::add_const_on_value_type<typename internal::conditional<Enable,ForceAlignedAccess<Derived>,Derived&>::type>::type forceAlignedAccessIf() const;
template<bool Enable> inline typename internal::conditional<Enable,ForceAlignedAccess<Derived>,Derived&>::type forceAlignedAccessIf();
#else
// TODO forceAlignedAccess is temporarly disabled
// Need to find a nicer workaround.
inline const Derived& forceAlignedAccess() const { return derived(); }
inline Derived& forceAlignedAccess() { return derived(); }
template<bool Enable> inline const Derived& forceAlignedAccessIf() const { return derived(); }
template<bool Enable> inline Derived& forceAlignedAccessIf() { return derived(); }
#endif
Scalar trace() const;