From 546ab97d7679c75fadbf9e003c7c75faa9a179e5 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Thu, 14 Dec 2017 14:47:38 +0100 Subject: Add possibility to overwrite EIGEN_STRONG_INLINE. --- doc/PreprocessorDirectives.dox | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'doc') diff --git a/doc/PreprocessorDirectives.dox b/doc/PreprocessorDirectives.dox index 0919d4190..b6d08c700 100644 --- a/doc/PreprocessorDirectives.dox +++ b/doc/PreprocessorDirectives.dox @@ -122,6 +122,10 @@ run time. However, these assertions do cost time and can thus be turned off. this threshold raises a compile time assertion. Use 0 to set no limit. Default is 128 KB. - \b \c EIGEN_NO_CUDA - disables CUDA support when defined. Might be useful in .cu files for which Eigen is used on the host only, and never called from device code. + - \b \c EIGEN_STRONG_INLINE - This macro is used to qualify critical functions and methods that we expect the compiler to inline. + By default it is defined to \c __forceinline for MSVC and ICC, and to \c inline for other compilers. A tipical usage is to + define it to \c inline for MSVC users wanting faster compilation times, at the risk of performance degradations in some rare + cases for which MSVC inliner fails to do a good job. - \c EIGEN_DONT_ALIGN - Deprecated, it is a synonym for \c EIGEN_MAX_ALIGN_BYTES=0. It disables alignment completely. %Eigen will not try to align its objects and does not expect that any objects passed to it are aligned. This will turn off vectorization if \b EIGEN_UNALIGNED_VECTORIZE=1. Not defined by default. -- cgit v1.2.3