From 7e380ad4c0236e6e572023e85694acec3da28e6e Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Wed, 26 Oct 2016 22:14:41 +0200 Subject: Cycles: Another attempt to fix crashes on AVX2 processors Basically don't use rcp() in areas which seems to be critical after second look. Also disabled some multiplication operators, not sure yet why they might be a problem. Tomorrow will be setting up a full test with all cases which were buggy in our farm to see if this fix is complete. --- intern/cycles/kernel/geom/geom_object.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'intern/cycles/kernel/geom') diff --git a/intern/cycles/kernel/geom/geom_object.h b/intern/cycles/kernel/geom/geom_object.h index cb2de3a7e87..32900f7f27a 100644 --- a/intern/cycles/kernel/geom/geom_object.h +++ b/intern/cycles/kernel/geom/geom_object.h @@ -397,7 +397,8 @@ ccl_device_inline float3 bvh_clamp_direction(float3 dir) ccl_device_inline float3 bvh_inverse_direction(float3 dir) { -#ifdef __KERNEL_SSE__ + /* TODO(sergey): Currently disabled, gives speedup but causes precision issues. */ +#if defined(__KERNEL_SSE__) && 0 return rcp(dir); #else return 1.0f / dir; -- cgit v1.2.3