Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Werner <stewreo@gmail.com>2020-07-16 00:24:54 +0300
committerStefan Werner <stewreo@gmail.com>2020-07-16 00:24:54 +0300
commit0fe3ff13c7b9ae9e55339ef8ecc2213f65619e87 (patch)
tree6f7c8ce4adce0c3129b14286d10ddf8e26913f2f
parenta8ef8690a6e22553df77397dd595dd826c9cabb6 (diff)
Revert "macOS: Enabled Embree on arm64."
This reverts commit 86f207f4fdc17fa5ed6b600c1df9f8ed2e44d569.
-rw-r--r--build_files/build_environment/CMakeLists.txt2
-rw-r--r--build_files/build_environment/cmake/embree.cmake8
-rw-r--r--build_files/build_environment/cmake/harvest.cmake4
-rw-r--r--build_files/build_environment/cmake/versions.cmake9
-rw-r--r--build_files/cmake/Modules/FindEmbree.cmake29
-rw-r--r--build_files/cmake/platform/platform_apple.cmake1
-rw-r--r--intern/cycles/bvh/bvh_embree.cpp8
-rw-r--r--intern/cycles/util/util_defines.h2
8 files changed, 19 insertions, 44 deletions
diff --git a/build_files/build_environment/CMakeLists.txt b/build_files/build_environment/CMakeLists.txt
index 05f3c7853fd..276311fe2d8 100644
--- a/build_files/build_environment/CMakeLists.txt
+++ b/build_files/build_environment/CMakeLists.txt
@@ -89,7 +89,6 @@ include(cmake/python_site_packages.cmake)
include(cmake/package_python.cmake)
include(cmake/numpy.cmake)
include(cmake/usd.cmake)
- include(cmake/embree.cmake)
if(UNIX)
# Rely on PugiXML compiled with OpenImageIO
else()
@@ -98,6 +97,7 @@ endif()
if((NOT APPLE) OR ("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64"))
include(cmake/ispc.cmake)
include(cmake/openimagedenoise.cmake)
+ include(cmake/embree.cmake)
endif()
if(NOT APPLE)
include(cmake/xr_openxr.cmake)
diff --git a/build_files/build_environment/cmake/embree.cmake b/build_files/build_environment/cmake/embree.cmake
index f4e70bb41ee..66a86cd5dbd 100644
--- a/build_files/build_environment/cmake/embree.cmake
+++ b/build_files/build_environment/cmake/embree.cmake
@@ -19,12 +19,6 @@
# Note the utility apps may use png/tiff/gif system libraries, but the
# library itself does not depend on them, so should give no problems.
-if(APPLE AND "${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64")
- set(EMBREE_MAX_ISA SSE2)
-else()
- set(EMBREE_MAX_ISA AVX2)
-endif()
-
set(EMBREE_EXTRA_ARGS
-DEMBREE_ISPC_SUPPORT=OFF
-DEMBREE_TUTORIALS=OFF
@@ -32,7 +26,7 @@ set(EMBREE_EXTRA_ARGS
-DEMBREE_RAY_MASK=ON
-DEMBREE_FILTER_FUNCTION=ON
-DEMBREE_BACKFACE_CULLING=OFF
- -DEMBREE_MAX_ISA=${EMBREE_MAX_ISA}
+ -DEMBREE_MAX_ISA=AVX2
-DEMBREE_TASKING_SYSTEM=TBB
-DEMBREE_TBB_ROOT=${LIBDIR}/tbb
-DTBB_STATIC_LIB=${TBB_STATIC_LIBRARY}
diff --git a/build_files/build_environment/cmake/harvest.cmake b/build_files/build_environment/cmake/harvest.cmake
index 3d2d7e9a451..f860778a6a1 100644
--- a/build_files/build_environment/cmake/harvest.cmake
+++ b/build_files/build_environment/cmake/harvest.cmake
@@ -135,9 +135,9 @@ harvest(openimageio/lib openimageio/lib "*.a")
if((NOT APPLE) OR ("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "x86_64"))
harvest(openimagedenoise/include openimagedenoise/include "*")
harvest(openimagedenoise/lib openimagedenoise/lib "*.a")
+ harvest(embree/include embree/include "*.h")
+ harvest(embree/lib embree/lib "*.a")
endif()
-harvest(embree/include embree/include "*.h")
-harvest(embree/lib embree/lib "*.a")
harvest(openjpeg/include/openjpeg-2.3 openjpeg/include "*.h")
harvest(openjpeg/lib openjpeg/lib "*.a")
harvest(opensubdiv/include opensubdiv/include "*.h")
diff --git a/build_files/build_environment/cmake/versions.cmake b/build_files/build_environment/cmake/versions.cmake
index 59a876e9668..ce2a1191f17 100644
--- a/build_files/build_environment/cmake/versions.cmake
+++ b/build_files/build_environment/cmake/versions.cmake
@@ -286,13 +286,8 @@ set(SQLITE_URI https://www.sqlite.org/2018/sqlite-src-3240000.zip)
set(SQLITE_HASH fb558c49ee21a837713c4f1e7e413309aabdd9c7)
set(EMBREE_VERSION 3.10.0)
-if(APPLE AND "${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64")
- set(EMBREE_URI https://github.com/skwerner/embree-aarch64/archive/v${EMBREE_VERSION}.zip)
- set(EMBREE_HASH 49da93253d03512c8ddba2de3b74e257)
-else()
- set(EMBREE_URI https://github.com/embree/embree/archive/v${EMBREE_VERSION}.zip)
- set(EMBREE_HASH 4bbe29e7eaa46417efc75fc5f1e8eb87)
-endif()
+set(EMBREE_URI https://github.com/embree/embree/archive/v${EMBREE_VERSION}.zip)
+set(EMBREE_HASH 4bbe29e7eaa46417efc75fc5f1e8eb87)
set(USD_VERSION 20.05)
set(USD_URI https://github.com/PixarAnimationStudios/USD/archive/v${USD_VERSION}.tar.gz)
diff --git a/build_files/cmake/Modules/FindEmbree.cmake b/build_files/cmake/Modules/FindEmbree.cmake
index 1e39d6f5913..fa613f62308 100644
--- a/build_files/cmake/Modules/FindEmbree.cmake
+++ b/build_files/cmake/Modules/FindEmbree.cmake
@@ -41,29 +41,18 @@ FIND_PATH(EMBREE_INCLUDE_DIR
include
)
-if(APPLE AND "${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64")
SET(_embree_FIND_COMPONENTS
- embree3
- lexers
- math
- simd
- sys
- tasking
+ embree3
+ embree_avx
+ embree_avx2
+ embree_sse42
+ lexers
+ math
+ simd
+ sys
+ tasking
)
-else()
- SET(_embree_FIND_COMPONENTS
- embree3
- embree_avx
- embree_avx2
- embree_sse42
- lexers
- math
- simd
- sys
- tasking
- )
-endif()
SET(_embree_LIBRARIES)
FOREACH(COMPONENT ${_embree_FIND_COMPONENTS})
diff --git a/build_files/cmake/platform/platform_apple.cmake b/build_files/cmake/platform/platform_apple.cmake
index b80c66ebf36..a80b0b56901 100644
--- a/build_files/cmake/platform/platform_apple.cmake
+++ b/build_files/cmake/platform/platform_apple.cmake
@@ -383,6 +383,7 @@ if(WITH_CYCLES_OSL)
endif()
if("${CMAKE_OSX_ARCHITECTURES}" STREQUAL "arm64")
+ set(WITH_CYCLES_EMBREE OFF)
set(WITH_OPENIMAGEDENOISE OFF)
set(WITH_CPU_SSE OFF)
endif()
diff --git a/intern/cycles/bvh/bvh_embree.cpp b/intern/cycles/bvh/bvh_embree.cpp
index 35f233a2cbf..17e1f86a589 100644
--- a/intern/cycles/bvh/bvh_embree.cpp
+++ b/intern/cycles/bvh/bvh_embree.cpp
@@ -31,10 +31,8 @@
#ifdef WITH_EMBREE
# include <embree3/rtcore_geometry.h>
-# ifdef __SSE2__
-# include <pmmintrin.h>
-# include <xmmintrin.h>
-# endif
+# include <pmmintrin.h>
+# include <xmmintrin.h>
# include "bvh/bvh_embree.h"
@@ -328,10 +326,8 @@ BVHEmbree::BVHEmbree(const BVHParams &params_,
build_quality(RTC_BUILD_QUALITY_REFIT),
dynamic_scene(true)
{
-# ifdef __SSE2__
_MM_SET_FLUSH_ZERO_MODE(_MM_FLUSH_ZERO_ON);
_MM_SET_DENORMALS_ZERO_MODE(_MM_DENORMALS_ZERO_ON);
-# endif
thread_scoped_lock lock(rtc_shared_mutex);
if (rtc_shared_users == 0) {
rtc_shared_device = rtcNewDevice("verbose=0");
diff --git a/intern/cycles/util/util_defines.h b/intern/cycles/util/util_defines.h
index 0a239a944a5..e8e414587fb 100644
--- a/intern/cycles/util/util_defines.h
+++ b/intern/cycles/util/util_defines.h
@@ -26,7 +26,7 @@
/* Bitness */
#if defined(__ppc64__) || defined(__PPC64__) || defined(__x86_64__) || defined(__ia64__) || \
- defined(_M_X64) || defined(__aarch64__)
+ defined(_M_X64)
# define __KERNEL_64_BIT__
#endif