[Bf-blender-cvs] [8458549] master: Cycles: Cleanup, make it more obvious which platform requires workaround for triangle intersection
Sergey Sharybin
noreply at git.blender.org
Sat Jun 20 17:02:19 CEST 2015
Commit: 845854959f4c4615578b8d296aad3fa5085d4647
Author: Sergey Sharybin
Date: Sat Jun 20 16:57:19 2015 +0200
Branches: master
https://developer.blender.org/rB845854959f4c4615578b8d296aad3fa5085d4647
Cycles: Cleanup, make it more obvious which platform requires workaround for triangle intersection
Should be no functional changes.
===================================================================
M intern/cycles/kernel/geom/geom_triangle_intersect.h
===================================================================
diff --git a/intern/cycles/kernel/geom/geom_triangle_intersect.h b/intern/cycles/kernel/geom/geom_triangle_intersect.h
index 220169f..5f41012 100644
--- a/intern/cycles/kernel/geom/geom_triangle_intersect.h
+++ b/intern/cycles/kernel/geom/geom_triangle_intersect.h
@@ -49,16 +49,23 @@ typedef struct IsectPrecalc {
float Sx, Sy, Sz;
} IsectPrecalc;
-/* Workaround for CUDA toolkit 6.5.16. */
-#if defined(__KERNEL_CPU__) || !defined(__KERNEL_EXPERIMENTAL__) || __CUDA_ARCH__ < 500
+#if defined(__KERNEL_CUDA__)
# if (defined(i386) || defined(_M_IX86))
+# if __CUDA_ARCH__ > 500
ccl_device_noinline
-# else
+# else /* __CUDA_ARCH__ > 500 */
ccl_device_inline
-# endif
-#else
+# endif /* __CUDA_ARCH__ > 500 */
+# else /* (defined(i386) || defined(_M_IX86)) */
+# if defined(__KERNEL_EXPERIMENTAL__) && (__CUDA_ARCH__ == 500)
ccl_device_noinline
-#endif
+# else
+ccl_device_inline
+# endif
+# endif /* (defined(i386) || defined(_M_IX86)) */
+#else /* defined(__KERNEL_CUDA__) */
+ccl_device_inline
+#endif /* defined(__KERNEL_CUDA__) */
void triangle_intersect_precalc(float3 dir,
IsectPrecalc *isect_precalc)
{
More information about the Bf-blender-cvs
mailing list