aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--devel/onetbb/Makefile3
-rw-r--r--devel/onetbb/distinfo2
-rw-r--r--devel/onetbb/files/patch-src_tbbmalloc_frontend.cpp30
3 files changed, 30 insertions, 5 deletions
diff --git a/devel/onetbb/Makefile b/devel/onetbb/Makefile
index 00a0c49cb4e9..578bec315771 100644
--- a/devel/onetbb/Makefile
+++ b/devel/onetbb/Makefile
@@ -5,9 +5,6 @@ PORTVERSION= 2021.3.0
DISTVERSIONPREFIX= v
CATEGORIES= devel
-PATCH_SITES= https://github.com/oneapi-src/oneTBB/commit/
-PATCHFILES= fa944e19600500863507ed8e9b1f5a30037d9df6.patch:-p1
-
MAINTAINER= martymac@FreeBSD.org
COMMENT= Library that provides thread building blocks
diff --git a/devel/onetbb/distinfo b/devel/onetbb/distinfo
index f1f339d292cb..b362736545bd 100644
--- a/devel/onetbb/distinfo
+++ b/devel/onetbb/distinfo
@@ -1,5 +1,3 @@
TIMESTAMP = 1626043027
SHA256 (oneapi-src-oneTBB-v2021.3.0_GH0.tar.gz) = 8f616561603695bbb83871875d2c6051ea28f8187dbe59299961369904d1d49e
SIZE (oneapi-src-oneTBB-v2021.3.0_GH0.tar.gz) = 1651329
-SHA256 (fa944e19600500863507ed8e9b1f5a30037d9df6.patch) = a7c4dfdcf6794019d1f4d247cf669e9b8ef4511eb6d254eeca038b82de41334d
-SIZE (fa944e19600500863507ed8e9b1f5a30037d9df6.patch) = 1467
diff --git a/devel/onetbb/files/patch-src_tbbmalloc_frontend.cpp b/devel/onetbb/files/patch-src_tbbmalloc_frontend.cpp
new file mode 100644
index 000000000000..314267054456
--- /dev/null
+++ b/devel/onetbb/files/patch-src_tbbmalloc_frontend.cpp
@@ -0,0 +1,30 @@
+Backport fa944e19600500863507ed8e9b1f5a30037d9df6
+
+--- src/tbbmalloc/frontend.cpp.orig 2021-06-30 08:19:55 UTC
++++ src/tbbmalloc/frontend.cpp
+@@ -802,21 +802,15 @@ static inline unsigned int highestBitPos(unsigned int
+ return pos;
+ }
+
+-
+-#if __TBB_x86_32 || __aarch32__
+ unsigned int getSmallObjectIndex(unsigned int size)
+ {
+- return (size-1)>>3;
+-}
+-#elif __TBB_x86_64 || __aarch64__
+-unsigned int getSmallObjectIndex(unsigned int size)
+-{
+- // For 64-bit malloc, 16 byte alignment is needed except for bin 0.
+ unsigned int result = (size-1)>>3;
+- if (result) result |= 1; // 0,1,3,5,7; bins 2,4,6 are not aligned to 16 bytes
++ if (sizeof(void*)==8) {
++ // For 64-bit malloc, 16 byte alignment is needed except for bin 0.
++ if (result) result |= 1; // 0,1,3,5,7; bins 2,4,6 are not aligned to 16 bytes
++ }
+ return result;
+ }
+-#endif // __TBB_x86_32 || __aarch32__
+
+ /*
+ * Depending on indexRequest, for a given size return either the index into the bin