Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2015-05-19 19:03:24 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2016-01-25 16:13:52 +0300
commite3e23f774697782424647d8a12792dbc768501ad (patch)
tree5c37c3e91aa2536edb2eb3a54a7ad051fbfb33fb /source/blender/blenlib/BLI_compiler_compat.h
parent83c9109926677b6b6a75ccb36ae0017733e8c8a2 (diff)
ImBuf: Make luminance calculation inlined
Title actually tells it all, it is rather simple function which totally makes sense to be inlined. This gives up to 5% of speedup when updating scopes for a large image. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D1310
Diffstat (limited to 'source/blender/blenlib/BLI_compiler_compat.h')
-rw-r--r--source/blender/blenlib/BLI_compiler_compat.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/source/blender/blenlib/BLI_compiler_compat.h b/source/blender/blenlib/BLI_compiler_compat.h
index 92928889c52..8edbc25bcbc 100644
--- a/source/blender/blenlib/BLI_compiler_compat.h
+++ b/source/blender/blenlib/BLI_compiler_compat.h
@@ -49,4 +49,16 @@ extern "C++" {
}
#endif
+/* little macro so inline keyword works */
+#if defined(_MSC_VER)
+# define BLI_INLINE static __forceinline
+#else
+# if (defined(__APPLE__) && defined(__ppc__))
+/* static inline __attribute__ here breaks osx ppc gcc42 build */
+# define BLI_INLINE static __attribute__((always_inline)) __attribute__((__unused__))
+# else
+# define BLI_INLINE static inline __attribute__((always_inline)) __attribute__((__unused__))
+# endif
+#endif
+
#endif /* __BLI_COMPILER_COMPAT_H__ */