diff options
author | eschnett <eschnett@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2013-01-15 17:27:08 +0000 |
---|---|---|
committer | eschnett <eschnett@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2013-01-15 17:27:08 +0000 |
commit | fda08b3a2eeb39f24757d2549f790f105f1dd3b8 (patch) | |
tree | 8f78d193f59da73f79f8ef3329a5ac1b036c7be2 /lib/make/cctk_Config.h.in | |
parent | c327320609f6018c1821d7f6b4a1c00059a47fb6 (diff) |
Autoconf attribute always_inline
Add autoconf test for __attribute__((__always_inline__)).
Improve autoconf test for _Pragma syntax.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4934 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'lib/make/cctk_Config.h.in')
-rw-r--r-- | lib/make/cctk_Config.h.in | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/lib/make/cctk_Config.h.in b/lib/make/cctk_Config.h.in index 20e6109a..3325828f 100644 --- a/lib/make/cctk_Config.h.in +++ b/lib/make/cctk_Config.h.in @@ -200,6 +200,12 @@ # define CCTK_RESTRICT restrict #endif +/* Disable _Pragma if unsupported */ +#undef HAVE_CCTK_C__PRAGMA +#ifndef HAVE_CCTK_C__PRAGMA +# define _Pragma(x) +#endif + /* Some C compilers (e.g. C99 ones) define bool */ #undef HAVE_CCTK_C_BOOL @@ -208,8 +214,6 @@ # define CCTK_HAVE_C_BOOL #endif -#undef HAVE_CCTK_C__PRAGMA - /* Since this is non-standard leave commented out for the moment */ #if 0 #ifndef HAVE_CCTK_C_BOOL @@ -297,6 +301,14 @@ typedef enum {false, true} bool; # define CCTK_ATTRIBUTE_NOINLINE #endif +/* Whether __attribute__((always_inline)) exists. */ +#undef HAVE_CCTK_C_ATTRIBUTE_ALWAYS_INLINE +#ifdef HAVE_CCTK_C_ATTRIBUTE_ALWAYS_INLINE +# define CCTK_ATTRIBUTE_ALWAYS_INLINE __attribute__((__always_inline__)) +#else +# define CCTK_ATTRIBUTE_ALWAYS_INLINE +#endif + /* Whether __attribute__((unused)) exists. */ #undef HAVE_CCTK_C_ATTRIBUTE_UNUSED #ifdef HAVE_CCTK_C_ATTRIBUTE_UNUSED @@ -463,6 +475,20 @@ typedef enum {false, true} bool; # define CCTK_MEMBER_ATTRIBUTE_NOINLINE #endif +/* Whether __attribute__((always_inline)) exists. */ +#undef HAVE_CCTK_CXX_ATTRIBUTE_ALWAYS_INLINE +#ifdef HAVE_CCTK_CXX_ATTRIBUTE_ALWAYS_INLINE +# define CCTK_ATTRIBUTE_ALWAYS_INLINE __attribute__((__always_inline__)) +#else +# define CCTK_ATTRIBUTE_ALWAYS_INLINE +#endif +#undef HAVE_CCTK_CXX_MEMBER_ATTRIBUTE_ALWAYS_INLINE +#ifdef HAVE_CCTK_CXX_MEMBER_ATTRIBUTE_ALWAYS_INLINE +# define CCTK_MEMBER_ATTRIBUTE_ALWAYS_INLINE __attribute__((__always_inline__)) +#else +# define CCTK_MEMBER_ATTRIBUTE_ALWAYS_INLINE +#endif + /* Whether __attribute__((unused)) exists. */ #undef HAVE_CCTK_CXX_ATTRIBUTE_UNUSED #ifdef HAVE_CCTK_CXX_ATTRIBUTE_UNUSED |