Move doxygen comments for EIGEN_NO_DEBUG from source to I14.

This reverts changeset 76fbe94279bda314e717cb3f98b46b253d081993
. Benoit and I agree that my
approach there (to use doxygen comments) pollutes the code too much.
This commit is contained in:
Jitse Niesen 2010-12-27 15:07:11 +00:00
parent 840c4e1ab5
commit 8db9acbc16
5 changed files with 8 additions and 23 deletions

View File

@ -32,13 +32,7 @@
// then include this file where all our macros are defined. It's really important to do it first because
// it's where we do all the alignment settings (platform detection and honoring the user's will if he
// defined e.g. EIGEN_DONT_ALIGN) so it needs to be done before we do anything with vectorization.
#ifndef EIGEN_PARSED_BY_DOXYGEN
#include "src/Core/util/Macros.h"
#else
namespace Eigen { // for some reason Doxygen needs this namespace
#include "src/Core/util/Macros.h"
}
#endif
#include "src/Core/util/Macros.h"
// if alignment is disabled, then disable vectorization. Note: EIGEN_ALIGN is the proper check, it takes into
// account both the user's will (EIGEN_DONT_ALIGN) and our own platform checks

View File

@ -109,19 +109,6 @@
#define EIGEN_DEBUG_VAR(x) std::cerr << #x << " = " << x << std::endl;
#ifdef EIGEN_PARSED_BY_DOXYGEN
/** \def EIGEN_NO_DEBUG
* \ingroup Core_Module
* \brief If defined, Eigen's assertions are disabled.
* \details Disabling run-time assertions improves the performance, but it is dangerous because the
* assertions guard against programming errors. By default, the EIGEN_NO_DEBUG macro is not defined and
* Eigen's run-time assertions are thus enabled. However, if the NDEBUG macro is defined (this is a
* standard C++ macro which disables all asserts), then the EIGEN_NO_DEBUG macro will also be defined, and
* so Eigen's assertions will also be disabled.
*/
#define EIGEN_NO_DEBUG
#endif
#ifdef NDEBUG
# ifndef EIGEN_NO_DEBUG
# define EIGEN_NO_DEBUG

View File

@ -73,7 +73,7 @@ Assertion `(!internal::check_transpose_aliasing_selector<Scalar,internal::blas_t
\endverbatim
The user can turn Eigen's run-time assertions like the one to detect this aliasing problem off by defining the
#EIGEN_NO_DEBUG macro, and the above program was compiled with this macro turned off in order to illustrate the
EIGEN_NO_DEBUG macro, and the above program was compiled with this macro turned off in order to illustrate the
aliasing problem. See \ref TopicAssertions for more information about Eigen's run-time assertions.

View File

@ -3,7 +3,11 @@ namespace Eigen {
/** \page TopicPreprocessorDirectives Preprocessor directives
You can control some aspects of Eigen by defining the following preprocessor tokens them before including any of Eigen's headers.
- \b #EIGEN_NO_DEBUG disables Eigen assertions. Like NDEBUG but only affects Eigen's assertions.
- \b EIGEN_NO_DEBUG If defined, Eigen's assertions are disabled. Disabling run-time assertions improves the
performance, but it is dangerous because the assertions guard against programming errors. By default, the
EIGEN_NO_DEBUG macro is not defined and Eigen's run-time assertions are thus enabled. However, if the
NDEBUG macro is defined (this is a standard C++ macro which disables all asserts), then the EIGEN_NO_DEBUG
macro will also be defined, and so Eigen's assertions will also be disabled.
- \b EIGEN_DONT_VECTORIZE disables explicit vectorization when defined.
- \b EIGEN_UNROLLING_LIMIT defines the maximal instruction counts to enable meta unrolling of loops. Set it to zero to disable unrolling. The default is 100.
- \b EIGEN_DEFAULT_TO_ROW_MAJOR the default storage order for matrices becomes row-major instead of column-major.

View File

@ -176,7 +176,7 @@ vector[i] vector.y()
vector.w()
\endcode</td><td>\code
matrix(i,j)
\endcode</td><td class="note">Range checking is disabled if \n NDEBUG or #EIGEN_NO_DEBUG is defined</td></tr>
\endcode</td><td class="note">Range checking is disabled if \n NDEBUG or EIGEN_NO_DEBUG is defined</td></tr>
<tr class="alt"><td>Coeff access without \n range checking</td>
<td>\code