Re: [eigen] Mapping array of scalars into quaternions

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


2009/11/13 Mathieu Gautier <mathieu.gautier@xxxxxx>:
>> Thanks for doing these experiments. This really pleads in favor of
>> EIGEN_STRONG_INLINE, and the fact that gcc and msvc are inlining
>
> gcc is inlining, but msvc isn't either with inline or EIGEN_STRONG_INLINE.
>
>> anyways means that it's quite safe.
>
> But yes, their behaviors are unchanged.

OK

>>
>> Just one thing: the current definition is:
>>
>> // EIGEN_FORCE_INLINE means "inline as much as possible"
>> #if (defined _MSC_VER)
>> #define EIGEN_STRONG_INLINE __forceinline
>> #else
>> #define EIGEN_STRONG_INLINE inline
>> #endif
>>
>> so it only is different from "inline" when _MSC_VER is defined (which
>> normally means that the compiler is MSVC). Does that mean that ICC
>> defines _MSC_VER? Or that you are using a modified EIGEN_STRONG_INLINE
>> for ICC?
>
> Well, _MSC_VER is defined when using icc with visual studio. That's why I
> had #if defined(_MSC_VER) && (!defined(__INTEL_COMPILER)) in the macros
> definition of EIGEN_INHERIT_ASSIGNMENT_OPERATORS. That may cause a problem
> when using icc outside visual studio or on linux, mac os, etc.
>
> we may have to write :
>
> // EIGEN_FORCE_INLINE means "inline as much as possible"
> #if (defined _MSC_VER) || (defined __INTEL_COMPILER)
> #define EIGEN_STRONG_INLINE __forceinline
> #else
> #define EIGEN_STRONG_INLINE inline
> #endif

Yes, that seems like a good change.

Benoit



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/