[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