diff options
author | Timothy Arceri <[email protected]> | 2017-05-08 08:01:05 +1000 |
---|---|---|
committer | Timothy Arceri <[email protected]> | 2017-05-09 11:21:03 +1000 |
commit | 34c5e58a6816ecfe9f944f5cf921261648324728 (patch) | |
tree | d371ce0dfca0d46b4a0174a73ca4ba0fdede5ead /src/util | |
parent | f52e63069a3fad23e03d42306a42bd20f0159da3 (diff) |
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 <[email protected]>
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/macros.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/util/macros.h b/src/util/macros.h index 6f55ac667dd..a10f1de8145 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. */ |