Fix ABI regression in tbb::empty_task caused by switch to LTO
This commit is contained in:
parent
0f20ac28a8
commit
c016558410
26
tbb-mark-empty_task-execute-with-gnu-used.patch
Normal file
26
tbb-mark-empty_task-execute-with-gnu-used.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From db2f2116adfb545bb76c92205f91e3e3f0f9e44a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Rodgers <rodgert@twrodgers.com>
|
||||||
|
Date: Wed, 2 Jun 2021 15:18:30 -0700
|
||||||
|
Subject: [PATCH] Mark tbb::empty_task::execute with [[gnu::used]]
|
||||||
|
|
||||||
|
---
|
||||||
|
include/tbb/task.h | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/include/tbb/task.h b/include/tbb/task.h
|
||||||
|
index 5e137c6..5b60163 100644
|
||||||
|
--- a/include/tbb/task.h
|
||||||
|
+++ b/include/tbb/task.h
|
||||||
|
@@ -1040,6 +1040,9 @@ inline void task::resume(suspend_point tag) {
|
||||||
|
//! task that does nothing. Useful for synchronization.
|
||||||
|
/** @ingroup task_scheduling */
|
||||||
|
class __TBB_DEPRECATED_IN_VERBOSE_MODE empty_task: public task {
|
||||||
|
+#if __has_cpp_attribute(gnu::used)
|
||||||
|
+ [[gnu::used]]
|
||||||
|
+#endif
|
||||||
|
task* execute() __TBB_override {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
9
tbb.spec
9
tbb.spec
@ -1,7 +1,7 @@
|
|||||||
Name: tbb
|
Name: tbb
|
||||||
Summary: The Threading Building Blocks library abstracts low-level threading details
|
Summary: The Threading Building Blocks library abstracts low-level threading details
|
||||||
Version: 2020.3
|
Version: 2020.3
|
||||||
Release: 5%{?dist}
|
Release: 6%{?dist}
|
||||||
License: ASL 2.0
|
License: ASL 2.0
|
||||||
URL: http://threadingbuildingblocks.org/
|
URL: http://threadingbuildingblocks.org/
|
||||||
|
|
||||||
@ -27,6 +27,10 @@ Patch2: tbb-2019-test-thread-monitor.patch
|
|||||||
# than 2 threads will be available to use it.
|
# than 2 threads will be available to use it.
|
||||||
Patch3: tbb-2019-test-task-scheduler-init.patch
|
Patch3: tbb-2019-test-task-scheduler-init.patch
|
||||||
|
|
||||||
|
# Fix ABI break resulting from tbb::empty_task being removed from libtbb.so's
|
||||||
|
# exported symbols
|
||||||
|
Patch4: tbb-mark-empty_task-execute-with-gnu-used.patch
|
||||||
|
|
||||||
BuildRequires: cmake
|
BuildRequires: cmake
|
||||||
BuildRequires: doxygen
|
BuildRequires: doxygen
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
@ -201,6 +205,9 @@ cmake \
|
|||||||
%{python3_sitearch}/__pycache__/TBB*
|
%{python3_sitearch}/__pycache__/TBB*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jun 3 2021 Thomas Rodgers <trodgers@redhat.com> - 2020.3-6
|
||||||
|
- Fix ABI regression in tbb::empty_task caused by switch to LTO
|
||||||
|
|
||||||
* Mon Feb 22 2021 Jerry James <loganjerry@gmail.com> - 2020.3-5
|
* Mon Feb 22 2021 Jerry James <loganjerry@gmail.com> - 2020.3-5
|
||||||
- Fix cmake file installation some more (bz 1930389)
|
- Fix cmake file installation some more (bz 1930389)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user