summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gcc8.patch23
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc8.patch b/gcc8.patch
index 55cd19a4b661..6a9186323b30 100644
--- a/gcc8.patch
+++ b/gcc8.patch
@@ -11,3 +11,26 @@ index c8a253fc901..bd35f82d185 100644
class TreeElement
{
+diff --git a/intern/cycles/util/util_sseb.h b/intern/cycles/util/util_sseb.h
+index 6e669701f3b..977976c3fc0 100644
+--- a/intern/cycles/util/util_sseb.h
++++ b/intern/cycles/util/util_sseb.h
+@@ -22,6 +22,9 @@ CCL_NAMESPACE_BEGIN
+
+ #ifdef __KERNEL_SSE2__
+
++struct ssei;
++struct ssef;
++
+ /*! 4-wide SSE bool type. */
+ struct sseb
+ {
+@@ -116,7 +119,7 @@ __forceinline const sseb unpacklo( const sseb& a, const sseb& b ) { return _mm_u
+ __forceinline const sseb unpackhi( const sseb& a, const sseb& b ) { return _mm_unpackhi_ps(a, b); }
+
+ template<size_t i0, size_t i1, size_t i2, size_t i3> __forceinline const sseb shuffle( const sseb& a ) {
+- return _mm_shuffle_epi32(a, _MM_SHUFFLE(i3, i2, i1, i0));
++ return _mm_castsi128_ps(_mm_shuffle_epi32(a, _MM_SHUFFLE(i3, i2, i1, i0)));
+ }
+
+ template<> __forceinline const sseb shuffle<0, 1, 0, 1>( const sseb& a ) {