From c18a72e10223dfc3860f12dbff88ae21017c2efe Mon Sep 17 00:00:00 2001 From: Sebastian Eibl <sebastian.eibl@fau.de> Date: Fri, 2 Nov 2018 14:43:37 +0100 Subject: [PATCH] added WALBERLA_FORCE_INLINE macro --- src/core/Macros.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/core/Macros.h b/src/core/Macros.h index 743ad91c3..ac12f1b7e 100644 --- a/src/core/Macros.h +++ b/src/core/Macros.h @@ -31,6 +31,18 @@ #define WALBERLA_RESTRICT #endif +// forced inline for different compilers +#if defined(__INTEL_COMPILER) +# define WALBERLA_FORCE_INLINE(func) __forceinline func +#elif defined(_MSC_VER) +# define WALBERLA_FORCE_INLINE(func) __forceinline func +#elif defined(__GNUC__) +# define WALBERLA_FORCE_INLINE(func) inline func __attribute__ ((always_inline)) +#else +# pragma message("WARNING: You need to implement WALBERLA_FORCE_INLINE for this compiler!") +# define WALBERLA_FORCE_INLINE(func) inline func +#endif + // pragma in macros (-> https://stackoverflow.com/a/3030312) #ifdef WALBERLA_CXX_COMPILER_IS_MSVC -- GitLab