mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-08-11 19:29:02 +08:00
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:
parent
840c4e1ab5
commit
8db9acbc16
@ -32,13 +32,7 @@
|
|||||||
// then include this file where all our macros are defined. It's really important to do it first because
|
// 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
|
// 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.
|
// 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"
|
||||||
#include "src/Core/util/Macros.h"
|
|
||||||
#else
|
|
||||||
namespace Eigen { // for some reason Doxygen needs this namespace
|
|
||||||
#include "src/Core/util/Macros.h"
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// if alignment is disabled, then disable vectorization. Note: EIGEN_ALIGN is the proper check, it takes into
|
// 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
|
// account both the user's will (EIGEN_DONT_ALIGN) and our own platform checks
|
||||||
|
@ -109,19 +109,6 @@
|
|||||||
|
|
||||||
#define EIGEN_DEBUG_VAR(x) std::cerr << #x << " = " << x << std::endl;
|
#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
|
#ifdef NDEBUG
|
||||||
# ifndef EIGEN_NO_DEBUG
|
# ifndef EIGEN_NO_DEBUG
|
||||||
# define EIGEN_NO_DEBUG
|
# define EIGEN_NO_DEBUG
|
||||||
|
@ -73,7 +73,7 @@ Assertion `(!internal::check_transpose_aliasing_selector<Scalar,internal::blas_t
|
|||||||
\endverbatim
|
\endverbatim
|
||||||
|
|
||||||
The user can turn Eigen's run-time assertions like the one to detect this aliasing problem off by defining the
|
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.
|
aliasing problem. See \ref TopicAssertions for more information about Eigen's run-time assertions.
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,7 +3,11 @@ namespace Eigen {
|
|||||||
/** \page TopicPreprocessorDirectives Preprocessor directives
|
/** \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.
|
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_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_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.
|
- \b EIGEN_DEFAULT_TO_ROW_MAJOR the default storage order for matrices becomes row-major instead of column-major.
|
||||||
|
@ -176,7 +176,7 @@ vector[i] vector.y()
|
|||||||
vector.w()
|
vector.w()
|
||||||
\endcode</td><td>\code
|
\endcode</td><td>\code
|
||||||
matrix(i,j)
|
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>
|
<tr class="alt"><td>Coeff access without \n range checking</td>
|
||||||
<td>\code
|
<td>\code
|
||||||
|
Loading…
x
Reference in New Issue
Block a user