diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-10-02 23:00:16 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-10-02 23:00:16 +0400 |
commit | e308c2f166c1d59b52fdf4226d1fdbb3f669c678 (patch) | |
tree | 946cce0d74ce788a9ec462e005229a65b87f2db4 /intern/cycles/util/util_system.cpp | |
parent | 8686f9fe03805b111dee5c33c69d3bbc3eb50aed (diff) |
Fix #36316: dots in cycles render on certain CPUs with 32 bit linux builds.
There is some sort of problem with the SSE2 code path, but I couldn't find
the cause, maybe a compiler bug due to the large amount of inlining? For
now I've disabled SSE2 optimizatons in 32 bit GCC builds.
Diffstat (limited to 'intern/cycles/util/util_system.cpp')
-rw-r--r-- | intern/cycles/util/util_system.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/intern/cycles/util/util_system.cpp b/intern/cycles/util/util_system.cpp index 345c76bdfab..40ec93b6124 100644 --- a/intern/cycles/util/util_system.cpp +++ b/intern/cycles/util/util_system.cpp @@ -116,7 +116,8 @@ int system_cpu_bits() return (sizeof(void*)*8); } -#if defined(__x86_64__) || defined(_M_X64) || defined(i386) || defined(_M_IX86) +/* SSE optimization disabled for now on 32 bit GCC, see bug #36316 */ +#if defined(__x86_64__) || defined(_M_X64) || ((defined(i386) || defined(_M_IX86)) && !defined(__GNUC__)) struct CPUCapabilities { bool x64; |