import compiler-rt-14.0.6-1.module+el8.7.0+15816+ec020e8f

This commit is contained in:
CentOS Sources 2022-11-08 01:31:15 -05:00 committed by root
parent 39d81e0bab
commit 11e4e4ecf9
8 changed files with 75 additions and 51 deletions

View File

@ -1,2 +1,2 @@
68e9e2f569ccfe0af9f5df61ec74808688198946 SOURCES/compiler-rt-13.0.1.src.tar.xz
91f03b578aff0fda6b9d3e2185e6ea5e588c6d47 SOURCES/compiler-rt-14.0.6.src.tar.xz
b8d2648a01d36ed0186fd2c5af325fd28797f9a0 SOURCES/tstellar-gpg-key.asc

2
.gitignore vendored
View File

@ -1,2 +1,2 @@
SOURCES/compiler-rt-13.0.1.src.tar.xz
SOURCES/compiler-rt-14.0.6.src.tar.xz
SOURCES/tstellar-gpg-key.asc

View File

@ -1,43 +0,0 @@
From 8247295860b69fd379e282c3e6315df9f700e4d8 Mon Sep 17 00:00:00 2001
From: serge-sans-paille <sguelton@redhat.com>
Date: Thu, 25 Feb 2021 14:12:57 +0100
Subject: [PATCH][compiler-rt] Workaround libstdc++ limitation wrt. thread copy
---
compiler-rt/lib/fuzzer/FuzzerDefs.h | 6 ++++++
compiler-rt/lib/fuzzer/FuzzerDriver.cpp | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/compiler-rt/lib/fuzzer/FuzzerDefs.h b/compiler-rt/lib/fuzzer/FuzzerDefs.h
index 1a2752a..abfbb8d 100644
--- a/compiler-rt/lib/fuzzer/FuzzerDefs.h
+++ b/compiler-rt/lib/fuzzer/FuzzerDefs.h
@@ -50,6 +50,12 @@ template<typename T>
template<class Other>
struct rebind { typedef fuzzer_allocator<Other> other; };
+
+ template< class U, class... Args >
+ void construct( U* p, Args&&... args ) {
+ std::allocator<T>::construct(p, std::forward<Args>(args)...);
+ }
+
};
template<typename T>
diff --git a/compiler-rt/lib/fuzzer/FuzzerDriver.cpp b/compiler-rt/lib/fuzzer/FuzzerDriver.cpp
index 447cafc..2fce139 100644
--- a/compiler-rt/lib/fuzzer/FuzzerDriver.cpp
+++ b/compiler-rt/lib/fuzzer/FuzzerDriver.cpp
@@ -294,7 +294,7 @@ static int RunInMultipleProcesses(const Vector<std::string> &Args,
std::thread Pulse(PulseThread);
Pulse.detach();
for (unsigned i = 0; i < NumWorkers; i++)
- V.push_back(std::thread(WorkerThread, std::ref(Cmd), &Counter, NumJobs, &HasErrors));
+ V.emplace_back(WorkerThread, std::ref(Cmd), &Counter, NumJobs, &HasErrors);
for (auto &T : V)
T.join();
return HasErrors ? 1 : 0;
--
1.8.3.1

View File

@ -0,0 +1,37 @@
commit b18bde7a9bd6ed80f5721c47c805f0158b4fe9f8
Author: Timm Bäder <tbaeder@redhat.com>
Date: Wed Mar 9 07:17:21 2022 +0100
[compiler-rt] Add LLVM cmake package in standalone builds
So the other files from the toplevel cmake/Modules directory have a
chance of being found.
diff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt
index 3a41aa43e406..6516e10fa3c5 100644
--- a/compiler-rt/CMakeLists.txt
+++ b/compiler-rt/CMakeLists.txt
@@ -28,6 +28,12 @@ else()
set(CMAKE_CFG_RESOLVED_INTDIR "")
endif()
+if(COMPILER_RT_STANDALONE_BUILD)
+ # Needed to find the other modules from the toplevel cmake/Modules dir
+ find_package(LLVM REQUIRED HINTS "${LLVM_CMAKE_DIR}")
+ list(APPEND CMAKE_MODULE_PATH "${LLVM_DIR}")
+endif()
+
include(SetPlatformToolchainTools)
include(base-config-ix)
include(CompilerRTUtils)
diff --git a/compiler-rt/test/CMakeLists.txt b/compiler-rt/test/CMakeLists.txt
index 5c2b634e1180..098fb0481517 100644
--- a/compiler-rt/test/CMakeLists.txt
+++ b/compiler-rt/test/CMakeLists.txt
@@ -1,6 +1,3 @@
-# Needed for lit support in standalone builds.
-include(AddLLVM)
-
option(COMPILER_RT_TEST_STANDALONE_BUILD_LIBS
"When set to ON and testing in a standalone build, test the runtime \
libraries built by this standalone build rather than the runtime libraries \

Binary file not shown.

View File

@ -0,0 +1,15 @@
diff -ruN compiler-rt-14.0.0.src.orig/lib/cfi/cfi.cpp compiler-rt-14.0.0.src/lib/cfi/cfi.cpp
--- a/compiler-rt-14.0.0.src.orig/lib/cfi/cfi.cpp 2022-03-14 10:44:55.000000000 +0100
+++ b/compiler-rt-14.0.0.src/lib/cfi/cfi.cpp 2022-05-25 17:03:51.114415534 +0200
@@ -51,7 +51,11 @@
namespace __cfi {
+#if defined(__aarch64__) || defined(__powerpc64__)
+#define kCfiShadowLimitsStorageSize 65536 // 1 page
+#else
#define kCfiShadowLimitsStorageSize 4096 // 1 page
+#endif
// Lets hope that the data segment is mapped with 4K pages.
// The pointer to the cfi shadow region is stored at the start of this page.
// The rest of the page is unused and re-mapped read-only.

View File

@ -1,6 +1,5 @@
#global rc_ver 3
%global compiler_rt_version 13.0.1
%global compiler_rt_version 14.0.6
#global rc_ver 2
%global crt_srcdir compiler-rt-%{compiler_rt_version}%{?rc_ver:rc%{rc_ver}}.src
# see https://sourceware.org/bugzilla/show_bug.cgi?id=25271
@ -20,10 +19,11 @@ Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{compil
Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{compiler_rt_version}%{?rc_ver:-rc%{rc_ver}}/%{crt_srcdir}.tar.xz.sig
Source2: tstellar-gpg-key.asc
Patch0: 0001-PATCH-compiler-rt-Workaround-libstdc-limitation-wrt..patch
Patch0: add-llvm-cmake-package.patch
# RHEL-specific patches
Patch100: 0001-Drop-fno-stack-protector-from-the-compiler-flags.patch
Patch101: fix-page-size-constant.patch
BuildRequires: gcc
BuildRequires: gcc-c++
@ -34,6 +34,9 @@ BuildRequires: python3
BuildRequires: python3-devel
BuildRequires: llvm-devel = %{version}
# For gpg source verification
BuildRequires: gnupg2
Requires: clang-resource-filesystem%{?isa} = %{version}
%description
@ -43,10 +46,10 @@ code generation, sanitizer runtimes and profiling library for code
instrumentation, and Blocks C language extension.
%prep
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
%autosetup -n %{crt_srcdir} -p2
pathfix.py -i %{__python3} -pn lib/hwasan/scripts/hwasan_symbolize
%py3_shebang_fix lib/hwasan/scripts/hwasan_symbolize
%build
mkdir -p %{_vpath_builddir}
@ -114,6 +117,18 @@ popd
%endif
%changelog
* Tue Jun 28 2022 Tom Stellard <tstellar@redhat.com> - 14.0.6-1
- 14.0.6 Release
* Wed May 25 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-3
- Fix page size constant size on aarch64 and ppc64le
* Fri Apr 29 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-2
- Remove llvm-cmake-devel BR
* Thu Apr 07 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-1
- Update to 14.0.0
* Thu Feb 03 2022 Tom Stellard <tstellar@redhat.com> - 13.0.1-1
- 13.0.1 Release