diff options
Diffstat (limited to 'intern/cycles/util')
-rw-r--r-- | intern/cycles/util/transform_inverse.h | 2 | ||||
-rw-r--r-- | intern/cycles/util/types_float3.h | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/intern/cycles/util/transform_inverse.h b/intern/cycles/util/transform_inverse.h index b72bbc5f680..bb410a6daef 100644 --- a/intern/cycles/util/transform_inverse.h +++ b/intern/cycles/util/transform_inverse.h @@ -11,7 +11,7 @@ CCL_NAMESPACE_BEGIN ccl_device_forceinline float3 transform_inverse_cross(const float3 a, const float3 b) { -#ifdef __AVX2__ +#if defined(__AVX2__) && defined(__KERNEL_SSE2__) const ssef sse_a = (const __m128 &)a; const ssef sse_b = (const __m128 &)b; const ssef r = shuffle<1, 2, 0, 3>( diff --git a/intern/cycles/util/types_float3.h b/intern/cycles/util/types_float3.h index 87c6b1d3654..34430945c38 100644 --- a/intern/cycles/util/types_float3.h +++ b/intern/cycles/util/types_float3.h @@ -10,7 +10,12 @@ CCL_NAMESPACE_BEGIN #ifndef __KERNEL_NATIVE_VECTOR_TYPES__ +# ifdef __KERNEL_ONEAPI__ +/* Define float3 as packed for oneAPI. */ +struct float3 +# else struct ccl_try_align(16) float3 +# endif { # ifdef __KERNEL_GPU__ /* Compact structure for GPU. */ |