[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53240] trunk/blender/intern/cycles: Fix cycles aliasing warnings caused by motion blur transforms.
Brecht Van Lommel
brechtvanlommel at pandora.be
Fri Dec 21 11:26:51 CET 2012
Revision: 53240
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53240
Author: blendix
Date: 2012-12-21 10:26:48 +0000 (Fri, 21 Dec 2012)
Log Message:
-----------
Fix cycles aliasing warnings caused by motion blur transforms.
Modified Paths:
--------------
trunk/blender/intern/cycles/kernel/kernel_compat_cuda.h
trunk/blender/intern/cycles/kernel/kernel_compat_opencl.h
trunk/blender/intern/cycles/util/util_transform.h
trunk/blender/intern/cycles/util/util_types.h
Modified: trunk/blender/intern/cycles/kernel/kernel_compat_cuda.h
===================================================================
--- trunk/blender/intern/cycles/kernel/kernel_compat_cuda.h 2012-12-21 10:15:12 UTC (rev 53239)
+++ trunk/blender/intern/cycles/kernel/kernel_compat_cuda.h 2012-12-21 10:26:48 UTC (rev 53240)
@@ -37,6 +37,7 @@
#define __global
#define __shared __shared__
#define __constant
+#define __may_alias
/* No assert supported for CUDA */
Modified: trunk/blender/intern/cycles/kernel/kernel_compat_opencl.h
===================================================================
--- trunk/blender/intern/cycles/kernel/kernel_compat_opencl.h 2012-12-21 10:15:12 UTC (rev 53239)
+++ trunk/blender/intern/cycles/kernel/kernel_compat_opencl.h 2012-12-21 10:26:48 UTC (rev 53240)
@@ -40,6 +40,7 @@
#define __device
#define __device_inline __device
#define __device_noinline __device __noinline
+#define __may_alias
/* no assert in opencl */
#define kernel_assert(cond)
Modified: trunk/blender/intern/cycles/util/util_transform.h
===================================================================
--- trunk/blender/intern/cycles/util/util_transform.h 2012-12-21 10:15:12 UTC (rev 53239)
+++ trunk/blender/intern/cycles/util/util_transform.h 2012-12-21 10:26:48 UTC (rev 53240)
@@ -45,7 +45,7 @@
*
* For the DecompMotionTransform we drop scale from pre/post. */
-typedef struct MotionTransform {
+typedef struct __may_alias MotionTransform {
Transform pre;
Transform mid;
Transform post;
Modified: trunk/blender/intern/cycles/util/util_types.h
===================================================================
--- trunk/blender/intern/cycles/util/util_types.h 2012-12-21 10:15:12 UTC (rev 53239)
+++ trunk/blender/intern/cycles/util/util_types.h 2012-12-21 10:26:48 UTC (rev 53240)
@@ -39,12 +39,14 @@
#if defined(_WIN32) && !defined(FREE_WINDOWS)
#define __device_inline static __forceinline
#define __align(...) __declspec(align(__VA_ARGS__))
+#define __may_alias
#else
#define __device_inline static inline __attribute__((always_inline))
#ifndef FREE_WINDOWS64
#define __forceinline inline __attribute__((always_inline))
#endif
#define __align(...) __attribute__((aligned(__VA_ARGS__)))
+#define __may_alias __attribute__((__may_alias__))
#endif
#endif
More information about the Bf-blender-cvs
mailing list