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:
-rw-r--r--intern/cycles/util/defines.h29
1 files changed, 17 insertions, 12 deletions
diff --git a/intern/cycles/util/defines.h b/intern/cycles/util/defines.h
index 9b1698d461a..a778bef52b2 100644
--- a/intern/cycles/util/defines.h
+++ b/intern/cycles/util/defines.h
@@ -33,21 +33,14 @@
/* Qualifiers for kernel code shared by CPU and GPU */
#ifndef __KERNEL_GPU__
+
+/* Leave inlining decisions to compiler for these, the inline keyword here
+ * is not about performance but including function definitions in headers. */
# define ccl_device static inline
-# define ccl_device_noinline static
+# define ccl_device_noinline static inline
# define ccl_device_noinline_cpu ccl_device_noinline
-# define ccl_global
-# define ccl_static_constant static const
-# define ccl_constant const
-# define ccl_local
-# define ccl_local_param
-# define ccl_private
-# define ccl_restrict __restrict
-# define ccl_optional_struct_init
-# define ccl_loop_no_unroll
-# define ccl_attr_maybe_unused [[maybe_unused]]
-# define __KERNEL_WITH_SSE_ALIGN__
+/* Forced inlining. */
# if defined(_WIN32) && !defined(FREE_WINDOWS)
# define ccl_device_inline static __forceinline
# define ccl_device_forceinline static __forceinline
@@ -75,6 +68,18 @@
# define ccl_never_inline __attribute__((noinline))
# endif /* _WIN32 && !FREE_WINDOWS */
+/* Address spaces for GPU. */
+# define ccl_global
+# define ccl_static_constant static const
+# define ccl_constant const
+# define ccl_private
+
+# define ccl_restrict __restrict
+# define ccl_optional_struct_init
+# define ccl_loop_no_unroll
+# define ccl_attr_maybe_unused [[maybe_unused]]
+# define __KERNEL_WITH_SSE_ALIGN__
+
/* Use to suppress '-Wimplicit-fallthrough' (in place of 'break'). */
# ifndef ATTR_FALLTHROUGH
# if defined(__GNUC__) && (__GNUC__ >= 7) /* gcc7.0+ only */