[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[UNIKRAFT/EIGEN PATCH] Prevent kludgeoning by barrier macro.



Add patch to prevent the definition of the macro "barrier" in lcpu.h
from kludgeoning the use of the word barrier in eigen code.

Signed-off-by: Felipe Huici <felipe.huici@xxxxxxxxx
---
 patches/0002-prevent-barrier-macro-code-kludge.patch | 10 ++++++++++
 1 file changed, 10 insertions(+)
 create mode 100644 patches/0002-prevent-barrier-macro-code-kludge.patch

diff --git a/patches/0002-prevent-barrier-macro-code-kludge.patch 
b/patches/0002-prevent-barrier-macro-code-kludge.patch
new file mode 100644
index 0000000..0b3fe78
--- /dev/null
+++ b/patches/0002-prevent-barrier-macro-code-kludge.patch
@@ -0,0 +1,10 @@
+--- a/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h      
2020-04-17 17:13:19.072796790 +0200
++++ b/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h      
2021-04-17 17:13:41.800543414 +0200
+@@ -98,6 +98,7 @@
+       const char* src_ptr = static_cast<const char*>(src);
+       char* dst_ptr = static_cast<char*>(dst);
+       const size_t blocksize = (n + (num_threads - 1)) / num_threads;
++#undef barrier      
+       Barrier barrier(static_cast<int>(num_threads - 1));
+       // Launch the last 3 blocks on worker threads.
+       for (size_t i = 1; i < num_threads; ++i) {
-- 
2.20.1




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.