Commit: ea940bcb539cc23cf01c230e295b6d3e05c50846 Author: Jacques Lucke Date: Mon Apr 29 10:00:49 2019 +0200 Branches: master https://developer.blender.org/rBea940bcb539cc23cf01c230e295b6d3e05c50846
New BLI_NOINLINE macro This macro is handy in at least two occasions: * When you want to check the optimized generated assembly for some small function that would get inlined otherwise. * The marked function will be visible in profiling results. I can't test the implementations for other compilers now, so I did not include them. Reviewers: brecht, campbellbarton Differential Revision: https://developer.blender.org/D4754 =================================================================== M source/blender/blenlib/BLI_compiler_compat.h =================================================================== diff --git a/source/blender/blenlib/BLI_compiler_compat.h b/source/blender/blenlib/BLI_compiler_compat.h index 80c564a70c7..bd1cd327d3c 100644 --- a/source/blender/blenlib/BLI_compiler_compat.h +++ b/source/blender/blenlib/BLI_compiler_compat.h @@ -45,4 +45,10 @@ template<typename T> static inline T decltype_helper(T x) # define BLI_INLINE static inline __attribute__((always_inline)) __attribute__((__unused__)) # endif +# if defined(__GNUC__) +# define BLI_NOINLINE __attribute__((noinline)) +# else +# define BLI_NOINLINE +# endif + #endif /* __BLI_COMPILER_COMPAT_H__ */ _______________________________________________ Bf-blender-cvs mailing list [email protected] https://lists.blender.org/mailman/listinfo/bf-blender-cvs
