summaryrefslogtreecommitdiff
path: root/thirdparty/embree-aarch64/patches/godot-changes.patch
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/embree-aarch64/patches/godot-changes.patch')
-rw-r--r--thirdparty/embree-aarch64/patches/godot-changes.patch630
1 files changed, 0 insertions, 630 deletions
diff --git a/thirdparty/embree-aarch64/patches/godot-changes.patch b/thirdparty/embree-aarch64/patches/godot-changes.patch
deleted file mode 100644
index 86fbf226d2..0000000000
--- a/thirdparty/embree-aarch64/patches/godot-changes.patch
+++ /dev/null
@@ -1,630 +0,0 @@
-diff --git a/thirdparty/embree-aarch64/common/algorithms/parallel_for.h b/thirdparty/embree-aarch64/common/algorithms/parallel_for.h
-index 76c6b740aa..51d296fb16 100644
---- a/thirdparty/embree-aarch64/common/algorithms/parallel_for.h
-+++ b/thirdparty/embree-aarch64/common/algorithms/parallel_for.h
-@@ -27,7 +27,10 @@ namespace embree
- func(r.begin());
- });
- if (!TaskScheduler::wait())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
- }
- #elif defined(TASKING_GCD) && defined(BUILD_IOS)
-
-@@ -55,13 +58,19 @@ namespace embree
- func(i);
- },context);
- if (context.is_group_execution_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
- #else
- tbb::parallel_for(Index(0),N,Index(1),[&](Index i) {
- func(i);
- });
- if (tbb::task::self().is_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
- #endif
-
- #elif defined(TASKING_PPL)
-@@ -81,7 +90,10 @@ namespace embree
- #if defined(TASKING_INTERNAL)
- TaskScheduler::spawn(first,last,minStepSize,func);
- if (!TaskScheduler::wait())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
-
- #elif defined(TASKING_GCD) && defined(BUILD_IOS)
-
-@@ -109,13 +121,19 @@ namespace embree
- func(range<Index>(r.begin(),r.end()));
- },context);
- if (context.is_group_execution_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
- #else
- tbb::parallel_for(tbb::blocked_range<Index>(first,last,minStepSize),[&](const tbb::blocked_range<Index>& r) {
- func(range<Index>(r.begin(),r.end()));
- });
- if (tbb::task::self().is_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
- #endif
-
- #elif defined(TASKING_PPL)
-@@ -147,13 +165,19 @@ namespace embree
- func(i);
- },tbb::simple_partitioner(),context);
- if (context.is_group_execution_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
- #else
- tbb::parallel_for(Index(0),N,Index(1),[&](Index i) {
- func(i);
- },tbb::simple_partitioner());
- if (tbb::task::self().is_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
- #endif
- }
-
-@@ -168,13 +192,19 @@ namespace embree
- func(i);
- },ap,context);
- if (context.is_group_execution_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
- #else
- tbb::parallel_for(Index(0),N,Index(1),[&](Index i) {
- func(i);
- },ap);
- if (tbb::task::self().is_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task cancelled");
-+ abort();
-+ // -- GODOT end --
- #endif
- }
-
-diff --git a/thirdparty/embree-aarch64/common/algorithms/parallel_reduce.h b/thirdparty/embree-aarch64/common/algorithms/parallel_reduce.h
-index d444b6a2e4..0daf94e50e 100644
---- a/thirdparty/embree-aarch64/common/algorithms/parallel_reduce.h
-+++ b/thirdparty/embree-aarch64/common/algorithms/parallel_reduce.h
-@@ -58,15 +58,19 @@ namespace embree
- const Value v = tbb::parallel_reduce(tbb::blocked_range<Index>(first,last,minStepSize),identity,
- [&](const tbb::blocked_range<Index>& r, const Value& start) { return reduction(start,func(range<Index>(r.begin(),r.end()))); },
- reduction,context);
-- if (context.is_group_execution_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // if (context.is_group_execution_cancelled())
-+ // throw std::runtime_error("task cancelled");
-+ // -- GODOT end --
- return v;
- #else
- const Value v = tbb::parallel_reduce(tbb::blocked_range<Index>(first,last,minStepSize),identity,
- [&](const tbb::blocked_range<Index>& r, const Value& start) { return reduction(start,func(range<Index>(r.begin(),r.end()))); },
- reduction);
-- if (tbb::task::self().is_cancelled())
-- throw std::runtime_error("task cancelled");
-+ // -- GODOT start --
-+ // if (tbb::task::self().is_cancelled())
-+ // throw std::runtime_error("task cancelled");
-+ // -- GODOT end --
- return v;
- #endif
- #else // TASKING_PPL
-diff --git a/thirdparty/embree-aarch64/common/lexers/stringstream.cpp b/thirdparty/embree-aarch64/common/lexers/stringstream.cpp
-index 7e7b9faef8..98dc80ad59 100644
---- a/thirdparty/embree-aarch64/common/lexers/stringstream.cpp
-+++ b/thirdparty/embree-aarch64/common/lexers/stringstream.cpp
-@@ -39,7 +39,10 @@ namespace embree
- std::vector<char> str; str.reserve(64);
- while (cin->peek() != EOF && !isSeparator(cin->peek())) {
- int c = cin->get();
-- if (!isValidChar(c)) throw std::runtime_error("invalid character "+std::string(1,c)+" in input");
-+ // -- GODOT start --
-+ // if (!isValidChar(c)) throw std::runtime_error("invalid character "+std::string(1,c)+" in input");
-+ if (!isValidChar(c)) abort();
-+ // -- GODOT end --
- str.push_back((char)c);
- }
- str.push_back(0);
-diff --git a/thirdparty/embree-aarch64/common/sys/alloc.cpp b/thirdparty/embree-aarch64/common/sys/alloc.cpp
-index 4e8928242e..12f143f131 100644
---- a/thirdparty/embree-aarch64/common/sys/alloc.cpp
-+++ b/thirdparty/embree-aarch64/common/sys/alloc.cpp
-@@ -21,7 +21,10 @@ namespace embree
- void* ptr = _mm_malloc(size,align);
-
- if (size != 0 && ptr == nullptr)
-- throw std::bad_alloc();
-+ // -- GODOT start --
-+ // throw std::bad_alloc();
-+ abort();
-+ // -- GODOT end --
-
- return ptr;
- }
-@@ -128,7 +131,10 @@ namespace embree
- /* fall back to 4k pages */
- int flags = MEM_COMMIT | MEM_RESERVE;
- char* ptr = (char*) VirtualAlloc(nullptr,bytes,flags,PAGE_READWRITE);
-- if (ptr == nullptr) throw std::bad_alloc();
-+ // -- GODOT start --
-+ // if (ptr == nullptr) throw std::bad_alloc();
-+ if (ptr == nullptr) abort();
-+ // -- GODOT end --
- hugepages = false;
- return ptr;
- }
-@@ -145,7 +151,10 @@ namespace embree
- return bytesOld;
-
- if (!VirtualFree((char*)ptr+bytesNew,bytesOld-bytesNew,MEM_DECOMMIT))
-- throw std::bad_alloc();
-+ // -- GODOT start --
-+ // throw std::bad_alloc();
-+ abort();
-+ // -- GODOT end --
-
- return bytesNew;
- }
-@@ -156,7 +165,10 @@ namespace embree
- return;
-
- if (!VirtualFree(ptr,0,MEM_RELEASE))
-- throw std::bad_alloc();
-+ // -- GODOT start --
-+ // throw std::bad_alloc();
-+ abort();
-+ // -- GODOT end --
- }
-
- void os_advise(void *ptr, size_t bytes)
-@@ -260,7 +272,10 @@ namespace embree
-
- /* fallback to 4k pages */
- void* ptr = (char*) mmap(0, bytes, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0);
-- if (ptr == MAP_FAILED) throw std::bad_alloc();
-+ // -- GODOT start --
-+ // if (ptr == MAP_FAILED) throw std::bad_alloc();
-+ if (ptr == MAP_FAILED) abort();
-+ // -- GODOT end --
- hugepages = false;
-
- /* advise huge page hint for THP */
-@@ -277,7 +292,10 @@ namespace embree
- return bytesOld;
-
- if (munmap((char*)ptr+bytesNew,bytesOld-bytesNew) == -1)
-- throw std::bad_alloc();
-+ // -- GODOT start --
-+ // throw std::bad_alloc();
-+ abort();
-+ // -- GODOT end --
-
- return bytesNew;
- }
-@@ -291,7 +309,10 @@ namespace embree
- const size_t pageSize = hugepages ? PAGE_SIZE_2M : PAGE_SIZE_4K;
- bytes = (bytes+pageSize-1) & ~(pageSize-1);
- if (munmap(ptr,bytes) == -1)
-- throw std::bad_alloc();
-+ // -- GODOT start --
-+ // throw std::bad_alloc();
-+ abort();
-+ // -- GODOT end --
- }
-
- /* hint for transparent huge pages (THP) */
-diff --git a/thirdparty/embree-aarch64/common/sys/platform.h b/thirdparty/embree-aarch64/common/sys/platform.h
-index 7914eb7a52..737f14aa6e 100644
---- a/thirdparty/embree-aarch64/common/sys/platform.h
-+++ b/thirdparty/embree-aarch64/common/sys/platform.h
-@@ -174,11 +174,19 @@
- #define PRINT4(x,y,z,w) embree_cout << STRING(x) << " = " << (x) << ", " << STRING(y) << " = " << (y) << ", " << STRING(z) << " = " << (z) << ", " << STRING(w) << " = " << (w) << embree_endl
-
- #if defined(DEBUG) // only report file and line in debug mode
-+ // -- GODOT start --
-+ // #define THROW_RUNTIME_ERROR(str)
-+ // throw std::runtime_error(std::string(__FILE__) + " (" + toString(__LINE__) + "): " + std::string(str));
- #define THROW_RUNTIME_ERROR(str) \
-- throw std::runtime_error(std::string(__FILE__) + " (" + toString(__LINE__) + "): " + std::string(str));
-+ printf(std::string(__FILE__) + " (" + toString(__LINE__) + "): " + std::string(str)), abort();
-+ // -- GODOT end --
- #else
-+ // -- GODOT start --
-+ // #define THROW_RUNTIME_ERROR(str)
-+ // throw std::runtime_error(str);
- #define THROW_RUNTIME_ERROR(str) \
-- throw std::runtime_error(str);
-+ abort();
-+ // -- GODOT end --
- #endif
-
- #define FATAL(x) THROW_RUNTIME_ERROR(x)
-diff --git a/thirdparty/embree-aarch64/common/tasking/taskschedulerinternal.cpp b/thirdparty/embree-aarch64/common/tasking/taskschedulerinternal.cpp
-index 98d7fb9249..ebf656d1a0 100644
---- a/thirdparty/embree-aarch64/common/tasking/taskschedulerinternal.cpp
-+++ b/thirdparty/embree-aarch64/common/tasking/taskschedulerinternal.cpp
-@@ -48,13 +48,15 @@ namespace embree
- {
- Task* prevTask = thread.task;
- thread.task = this;
-- try {
-- if (thread.scheduler->cancellingException == nullptr)
-+ // -- GODOT start --
-+ // try {
-+ // if (thread.scheduler->cancellingException == nullptr)
- closure->execute();
-- } catch (...) {
-- if (thread.scheduler->cancellingException == nullptr)
-- thread.scheduler->cancellingException = std::current_exception();
-- }
-+ // } catch (...) {
-+ // if (thread.scheduler->cancellingException == nullptr)
-+ // thread.scheduler->cancellingException = std::current_exception();
-+ // }
-+ // -- GODOT end --
- thread.task = prevTask;
- add_dependencies(-1);
- }
-@@ -297,8 +299,11 @@ namespace embree
- size_t threadIndex = allocThreadIndex();
- condition.wait(mutex, [&] () { return hasRootTask.load(); });
- mutex.unlock();
-- std::exception_ptr except = thread_loop(threadIndex);
-- if (except != nullptr) std::rethrow_exception(except);
-+ // -- GODOT start --
-+ // std::exception_ptr except = thread_loop(threadIndex);
-+ // if (except != nullptr) std::rethrow_exception(except);
-+ thread_loop(threadIndex);
-+ // -- GODOT end --
- }
-
- void TaskScheduler::reset() {
-@@ -330,7 +335,10 @@ namespace embree
- return thread->scheduler->cancellingException == nullptr;
- }
-
-- std::exception_ptr TaskScheduler::thread_loop(size_t threadIndex)
-+// -- GODOT start --
-+// std::exception_ptr TaskScheduler::thread_loop(size_t threadIndex)
-+ void TaskScheduler::thread_loop(size_t threadIndex)
-+// -- GODOT end --
- {
- /* allocate thread structure */
- std::unique_ptr<Thread> mthread(new Thread(threadIndex,this)); // too large for stack allocation
-@@ -353,9 +361,10 @@ namespace embree
- swapThread(oldThread);
-
- /* remember exception to throw */
-- std::exception_ptr except = nullptr;
-- if (cancellingException != nullptr) except = cancellingException;
--
-+ // -- GODOT start --
-+ // std::exception_ptr except = nullptr;
-+ // if (cancellingException != nullptr) except = cancellingException;
-+ // -- GODOT end --
- /* wait for all threads to terminate */
- threadCounter--;
- #if defined(__WIN32__)
-@@ -373,7 +382,10 @@ namespace embree
- yield();
- #endif
- }
-- return except;
-+ // -- GODOT start --
-+ // return except;
-+ return;
-+ // -- GODOT end --
- }
-
- bool TaskScheduler::steal_from_other_threads(Thread& thread)
-diff --git a/thirdparty/embree-aarch64/common/tasking/taskschedulerinternal.h b/thirdparty/embree-aarch64/common/tasking/taskschedulerinternal.h
-index c2a9391aea..8bd70b2b8c 100644
---- a/thirdparty/embree-aarch64/common/tasking/taskschedulerinternal.h
-+++ b/thirdparty/embree-aarch64/common/tasking/taskschedulerinternal.h
-@@ -123,7 +123,10 @@ namespace embree
- {
- size_t ofs = bytes + ((align - stackPtr) & (align-1));
- if (stackPtr + ofs > CLOSURE_STACK_SIZE)
-- throw std::runtime_error("closure stack overflow");
-+ // -- GODOT start --
-+ // throw std::runtime_error("closure stack overflow");
-+ abort();
-+ // -- GODOT end --
- stackPtr += ofs;
- return &stack[stackPtr-bytes];
- }
-@@ -132,7 +135,10 @@ namespace embree
- __forceinline void push_right(Thread& thread, const size_t size, const Closure& closure)
- {
- if (right >= TASK_STACK_SIZE)
-- throw std::runtime_error("task stack overflow");
-+ // -- GODOT start --
-+ // throw std::runtime_error("task stack overflow");
-+ abort();
-+ // -- GODOT end --
-
- /* allocate new task on right side of stack */
- size_t oldStackPtr = stackPtr;
-@@ -239,7 +245,10 @@ namespace embree
- void wait_for_threads(size_t threadCount);
-
- /*! thread loop for all worker threads */
-- std::exception_ptr thread_loop(size_t threadIndex);
-+ // -- GODOT start --
-+ // std::exception_ptr thread_loop(size_t threadIndex);
-+ void thread_loop(size_t threadIndex);
-+ // -- GODOT end --
-
- /*! steals a task from a different thread */
- bool steal_from_other_threads(Thread& thread);
-diff --git a/thirdparty/embree-aarch64/kernels/bvh/bvh_statistics.cpp b/thirdparty/embree-aarch64/kernels/bvh/bvh_statistics.cpp
-index 20cdd2d320..aa56035026 100644
---- a/thirdparty/embree-aarch64/kernels/bvh/bvh_statistics.cpp
-+++ b/thirdparty/embree-aarch64/kernels/bvh/bvh_statistics.cpp
-@@ -150,7 +150,10 @@ namespace embree
- }
- }
- else {
-- throw std::runtime_error("not supported node type in bvh_statistics");
-+ // -- GODOT start --
-+ // throw std::runtime_error("not supported node type in bvh_statistics");
-+ abort();
-+ // -- GODOT end --
- }
- return s;
- }
-diff --git a/thirdparty/embree-aarch64/kernels/common/rtcore.cpp b/thirdparty/embree-aarch64/kernels/common/rtcore.cpp
-index ee5c37b238..625fbf6d4f 100644
---- a/thirdparty/embree-aarch64/kernels/common/rtcore.cpp
-+++ b/thirdparty/embree-aarch64/kernels/common/rtcore.cpp
-@@ -230,7 +230,10 @@ RTC_NAMESPACE_BEGIN;
- if (quality != RTC_BUILD_QUALITY_LOW &&
- quality != RTC_BUILD_QUALITY_MEDIUM &&
- quality != RTC_BUILD_QUALITY_HIGH)
-- throw std::runtime_error("invalid build quality");
-+ // -- GODOT start --
-+ // throw std::runtime_error("invalid build quality");
-+ abort();
-+ // -- GODOT end --
- scene->setBuildQuality(quality);
- RTC_CATCH_END2(scene);
- }
-@@ -1383,7 +1386,10 @@ RTC_NAMESPACE_BEGIN;
- quality != RTC_BUILD_QUALITY_MEDIUM &&
- quality != RTC_BUILD_QUALITY_HIGH &&
- quality != RTC_BUILD_QUALITY_REFIT)
-- throw std::runtime_error("invalid build quality");
-+ // -- GODOT start --
-+ // throw std::runtime_error("invalid build quality");
-+ abort();
-+ // -- GODOT end --
- geometry->setBuildQuality(quality);
- RTC_CATCH_END2(geometry);
- }
-diff --git a/thirdparty/embree-aarch64/kernels/common/rtcore.h b/thirdparty/embree-aarch64/kernels/common/rtcore.h
-index 6583d12d57..4b070e122b 100644
---- a/thirdparty/embree-aarch64/kernels/common/rtcore.h
-+++ b/thirdparty/embree-aarch64/kernels/common/rtcore.h
-@@ -25,52 +25,58 @@ namespace embree
- #endif
-
- /*! Macros used in the rtcore API implementation */
--#define RTC_CATCH_BEGIN try {
-+// -- GODOT start --
-+// #define RTC_CATCH_BEGIN try {
-+#define RTC_CATCH_BEGIN
-
--#define RTC_CATCH_END(device) \
-- } catch (std::bad_alloc&) { \
-- Device::process_error(device,RTC_ERROR_OUT_OF_MEMORY,"out of memory"); \
-- } catch (rtcore_error& e) { \
-- Device::process_error(device,e.error,e.what()); \
-- } catch (std::exception& e) { \
-- Device::process_error(device,RTC_ERROR_UNKNOWN,e.what()); \
-- } catch (...) { \
-- Device::process_error(device,RTC_ERROR_UNKNOWN,"unknown exception caught"); \
-- }
-+// #define RTC_CATCH_END(device) \
-+// } catch (std::bad_alloc&) { \
-+// Device::process_error(device,RTC_ERROR_OUT_OF_MEMORY,"out of memory"); \
-+// } catch (rtcore_error& e) { \
-+// Device::process_error(device,e.error,e.what()); \
-+// } catch (std::exception& e) { \
-+// Device::process_error(device,RTC_ERROR_UNKNOWN,e.what()); \
-+// } catch (...) { \
-+// Device::process_error(device,RTC_ERROR_UNKNOWN,"unknown exception caught"); \
-+// }
-+#define RTC_CATCH_END(device)
-
--#define RTC_CATCH_END2(scene) \
-- } catch (std::bad_alloc&) { \
-- Device* device = scene ? scene->device : nullptr; \
-- Device::process_error(device,RTC_ERROR_OUT_OF_MEMORY,"out of memory"); \
-- } catch (rtcore_error& e) { \
-- Device* device = scene ? scene->device : nullptr; \
-- Device::process_error(device,e.error,e.what()); \
-- } catch (std::exception& e) { \
-- Device* device = scene ? scene->device : nullptr; \
-- Device::process_error(device,RTC_ERROR_UNKNOWN,e.what()); \
-- } catch (...) { \
-- Device* device = scene ? scene->device : nullptr; \
-- Device::process_error(device,RTC_ERROR_UNKNOWN,"unknown exception caught"); \
-- }
-+// #define RTC_CATCH_END2(scene) \
-+// } catch (std::bad_alloc&) { \
-+// Device* device = scene ? scene->device : nullptr; \
-+// Device::process_error(device,RTC_ERROR_OUT_OF_MEMORY,"out of memory"); \
-+// } catch (rtcore_error& e) { \
-+// Device* device = scene ? scene->device : nullptr; \
-+// Device::process_error(device,e.error,e.what()); \
-+// } catch (std::exception& e) { \
-+// Device* device = scene ? scene->device : nullptr; \
-+// Device::process_error(device,RTC_ERROR_UNKNOWN,e.what()); \
-+// } catch (...) { \
-+// Device* device = scene ? scene->device : nullptr; \
-+// Device::process_error(device,RTC_ERROR_UNKNOWN,"unknown exception caught"); \
-+// }
-+#define RTC_CATCH_END2(scene)
-
--#define RTC_CATCH_END2_FALSE(scene) \
-- } catch (std::bad_alloc&) { \
-- Device* device = scene ? scene->device : nullptr; \
-- Device::process_error(device,RTC_ERROR_OUT_OF_MEMORY,"out of memory"); \
-- return false; \
-- } catch (rtcore_error& e) { \
-- Device* device = scene ? scene->device : nullptr; \
-- Device::process_error(device,e.error,e.what()); \
-- return false; \
-- } catch (std::exception& e) { \
-- Device* device = scene ? scene->device : nullptr; \
-- Device::process_error(device,RTC_ERROR_UNKNOWN,e.what()); \
-- return false; \
-- } catch (...) { \
-- Device* device = scene ? scene->device : nullptr; \
-- Device::process_error(device,RTC_ERROR_UNKNOWN,"unknown exception caught"); \
-- return false; \
-- }
-+// #define RTC_CATCH_END2_FALSE(scene) \
-+// } catch (std::bad_alloc&) { \
-+// Device* device = scene ? scene->device : nullptr; \
-+// Device::process_error(device,RTC_ERROR_OUT_OF_MEMORY,"out of memory"); \
-+// return false; \
-+// } catch (rtcore_error& e) { \
-+// Device* device = scene ? scene->device : nullptr; \
-+// Device::process_error(device,e.error,e.what()); \
-+// return false; \
-+// } catch (std::exception& e) { \
-+// Device* device = scene ? scene->device : nullptr; \
-+// Device::process_error(device,RTC_ERROR_UNKNOWN,e.what()); \
-+// return false; \
-+// } catch (...) { \
-+// Device* device = scene ? scene->device : nullptr; \
-+// Device::process_error(device,RTC_ERROR_UNKNOWN,"unknown exception caught"); \
-+// return false; \
-+// }
-+#define RTC_CATCH_END2_FALSE(scene) return false;
-+// -- GODOT end --
-
- #define RTC_VERIFY_HANDLE(handle) \
- if (handle == nullptr) { \
-@@ -97,28 +103,38 @@ namespace embree
- #define RTC_TRACE(x)
- #endif
-
-- /*! used to throw embree API errors */
-- struct rtcore_error : public std::exception
-- {
-- __forceinline rtcore_error(RTCError error, const std::string& str)
-- : error(error), str(str) {}
--
-- ~rtcore_error() throw() {}
--
-- const char* what () const throw () {
-- return str.c_str();
-- }
--
-- RTCError error;
-- std::string str;
-- };
-+// -- GODOT begin --
-+// /*! used to throw embree API errors */
-+// struct rtcore_error : public std::exception
-+// {
-+// __forceinline rtcore_error(RTCError error, const std::string& str)
-+// : error(error), str(str) {}
-+//
-+// ~rtcore_error() throw() {}
-+//
-+// const char* what () const throw () {
-+// return str.c_str();
-+// }
-+//
-+// RTCError error;
-+// std::string str;
-+// };
-+// -- GODOT end --
-
- #if defined(DEBUG) // only report file and line in debug mode
-+ // -- GODOT begin --
-+ // #define throw_RTCError(error,str) \
-+ // throw rtcore_error(error,std::string(__FILE__) + " (" + toString(__LINE__) + "): " + std::string(str));
- #define throw_RTCError(error,str) \
-- throw rtcore_error(error,std::string(__FILE__) + " (" + toString(__LINE__) + "): " + std::string(str));
-+ printf(std::string(__FILE__) + " (" + toString(__LINE__) + "): " + std::string(str)), abort();
-+ // -- GODOT end --
- #else
-+ // -- GODOT begin --
-+ // #define throw_RTCError(error,str) \
-+ // throw rtcore_error(error,str);
- #define throw_RTCError(error,str) \
-- throw rtcore_error(error,str);
-+ abort();
-+ // -- GODOT end --
- #endif
-
- #define RTC_BUILD_ARGUMENTS_HAS(settings,member) \
-diff --git a/thirdparty/embree-aarch64/kernels/common/scene.cpp b/thirdparty/embree-aarch64/kernels/common/scene.cpp
-index e75aa968f9..1e23aeb415 100644
---- a/thirdparty/embree-aarch64/kernels/common/scene.cpp
-+++ b/thirdparty/embree-aarch64/kernels/common/scene.cpp
-@@ -800,16 +800,18 @@ namespace embree
- }
-
- /* initiate build */
-- try {
-+ // -- GODOT start --
-+ // try {
- scheduler->spawn_root([&]() { commit_task(); Lock<MutexSys> lock(schedulerMutex); this->scheduler = nullptr; }, 1, !join);
-- }
-- catch (...) {
-- accels_clear();
-- updateInterface();
-- Lock<MutexSys> lock(schedulerMutex);
-- this->scheduler = nullptr;
-- throw;
-- }
-+ // }
-+ // catch (...) {
-+ // accels_clear();
-+ // updateInterface();
-+ // Lock<MutexSys> lock(schedulerMutex);
-+ // this->scheduler = nullptr;
-+ // throw;
-+ // }
-+ // -- GODOT end --
- }
-
- #endif