From: Timothy Arceri Date: Sun, 7 May 2017 22:01:05 +0000 (+1000) Subject: util: move ALWAYS_INLINE macro to util/macro.h X-Git-Tag: upstream/18.1.0~9960 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=34c5e58a6816ecfe9f944f5cf921261648324728;p=platform%2Fupstream%2Fmesa.git util: move ALWAYS_INLINE macro to util/macro.h Also added clang check. macro.h is include by p_compiler.h so no other change is needed. Reviewed-by: Nicolai Hähnle --- diff --git a/src/gallium/include/pipe/p_compiler.h b/src/gallium/include/pipe/p_compiler.h index 0d7b014..2869517 100644 --- a/src/gallium/include/pipe/p_compiler.h +++ b/src/gallium/include/pipe/p_compiler.h @@ -93,17 +93,6 @@ typedef unsigned char boolean; #endif #endif -/* Forced function inlining */ -#ifndef ALWAYS_INLINE -# ifdef __GNUC__ -# define ALWAYS_INLINE inline __attribute__((always_inline)) -# elif defined(_MSC_VER) -# define ALWAYS_INLINE __forceinline -# else -# define ALWAYS_INLINE inline -# endif -#endif - /* XXX: Use standard `__func__` instead */ #ifndef __FUNCTION__ diff --git a/src/util/macros.h b/src/util/macros.h index 6f55ac6..a10f1de 100644 --- a/src/util/macros.h +++ b/src/util/macros.h @@ -136,6 +136,17 @@ do { \ #define MALLOCLIKE #endif +/* Forced function inlining */ +#ifndef ALWAYS_INLINE +# if defined(__GNUC__) || defined(__clang__) +# define ALWAYS_INLINE inline __attribute__((always_inline)) +# elif defined(_MSC_VER) +# define ALWAYS_INLINE __forceinline +# else +# define ALWAYS_INLINE inline +# endif +#endif + /* Used to optionally mark structures with misaligned elements or size as * packed, to trade off performance for space. */