From 4410950db6c916f39cc8a822130f7ebaeae893bd Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Sat, 23 Jan 2021 21:54:45 +0000 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/llvm.git#f768ecb72d51ac2181cf867dcb39b3171c9c057a --- .gitignore | 4 ++++ builtin_mul_overflow.patch | 25 +++++++++++++++++++++++++ llvm.spec | 22 ++++++++++++++-------- sources | 4 ++-- 4 files changed, 45 insertions(+), 10 deletions(-) create mode 100644 builtin_mul_overflow.patch diff --git a/.gitignore b/.gitignore index 390ea17..5da0b25 100644 --- a/.gitignore +++ b/.gitignore @@ -86,3 +86,7 @@ /llvm-11.0.1rc2.src.tar.xz /llvm-11.0.1.src.tar.xz /llvm-11.0.1.src.tar.xz.sig +/llvm-11.1.0rc1.src.tar.xz.sig +/llvm-11.1.0rc1.src.tar.xz +/llvm-11.1.0rc2.src.tar.xz +/llvm-11.1.0rc2.src.tar.xz.sig diff --git a/builtin_mul_overflow.patch b/builtin_mul_overflow.patch new file mode 100644 index 0000000..3c36784 --- /dev/null +++ b/builtin_mul_overflow.patch @@ -0,0 +1,25 @@ +diff --git a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp +index cf02ef1e83f3..e370f8c34809 100644 +--- a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp ++++ b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp +@@ -3885,8 +3885,8 @@ void LSRInstance::GenerateICmpZeroScales(LSRUse &LU, unsigned LUIdx, + // Check that the multiplication doesn't overflow. + if (Base.BaseOffset == std::numeric_limits::min() && Factor == -1) + continue; +- int64_t NewBaseOffset = (uint64_t)Base.BaseOffset * Factor; +- if (NewBaseOffset / Factor != Base.BaseOffset) ++ int64_t NewBaseOffset; ++ if(__builtin_mul_overflow(Base.BaseOffset, Factor, &NewBaseOffset)) + continue; + // If the offset will be truncated at this use, check that it is in bounds. + if (!IntTy->isPointerTy() && +@@ -3897,8 +3897,7 @@ void LSRInstance::GenerateICmpZeroScales(LSRUse &LU, unsigned LUIdx, + int64_t Offset = LU.MinOffset; + if (Offset == std::numeric_limits::min() && Factor == -1) + continue; +- Offset = (uint64_t)Offset * Factor; +- if (Offset / Factor != LU.MinOffset) ++ if(__builtin_mul_overflow(Offset, Factor, &Offset)) + continue; + // If the offset will be truncated at this use, check that it is in bounds. + if (!IntTy->isPointerTy() && diff --git a/llvm.spec b/llvm.spec index a3888b5..c864828 100644 --- a/llvm.spec +++ b/llvm.spec @@ -10,12 +10,12 @@ %global llvm_libdir %{_libdir}/%{name} %global build_llvm_libdir %{buildroot}%{llvm_libdir} -#%%global rc_ver 2 -%global baserelease 4 +%global rc_ver 2 +%global baserelease 2 %global llvm_srcdir llvm-%{version}%{?rc_ver:rc%{rc_ver}}.src %global maj_ver 11 -%global min_ver 0 -%global patch_ver 1 +%global min_ver 1 +%global patch_ver 0 %if %{with compat_build} %global pkg_name llvm%{maj_ver}.%{min_ver} @@ -39,7 +39,7 @@ Name: %{pkg_name} Version: %{maj_ver}.%{min_ver}.%{patch_ver} -Release: %{baserelease}%{?rc_ver:.rc%{rc_ver}}%{?dist} +Release: %{?rc_ver:0.}%{baserelease}%{?rc_ver:.rc%{rc_ver}}%{?dist} Summary: The Low Level Virtual Machine License: NCSA @@ -56,7 +56,10 @@ Source4: lit.fedora.cfg.py # Fix coreos-installer test crash on s390x (rhbz#1883457), https://reviews.llvm.org/D89034 Patch1: 0001-SystemZ-Use-LA-instead-of-AGR-in-eliminateFrameIndex.patch -Patch2: 0001-gcc11.patch +Patch2: 0001-gcc11.patch + +# See https://bugzilla.redhat.com/show_bug.cgi?id=1916576 +Patch3: builtin_mul_overflow.patch BuildRequires: gcc BuildRequires: gcc-c++ @@ -539,8 +542,11 @@ fi %endif %changelog -* Wed Jan 06 2021 Serge Guelton - 11.0.1-4 -- LLVM 11.0.1 final +* Fri Jan 22 2021 Serge Guelton - 11.1.0-0.2.rc2 +- 11.1.0-rc2 release + +* Thu Jan 14 2021 Serge Guelton - 11.1.0-0.1.rc1 +- 11.1.0-rc1 release * Tue Jan 05 2021 Serge Guelton - 11.0.1-3.rc2 - Waive extra test case diff --git a/sources b/sources index 812bfc1..8030fde 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (llvm-11.0.1.src.tar.xz) = b42c67ef88e09dd94171f85cdf49a421a15cfc82ff715c7ce6de22f98cefbe6c7cdf6bf4af7ca017d56ecf6aa3e36df3d823a78cf2dd5312de4301b54b43dbe8 -SHA512 (llvm-11.0.1.src.tar.xz.sig) = f61797b7d666c99f2f233c73b7c1913aaf863dc25aaa74edf82f7ac56479be67a86739a089d542b8b05fa7a836cd1a4165699fefabb392b396be477d498d34b0 +SHA512 (llvm-11.1.0rc2.src.tar.xz) = 4293bedabfacc3de5384b5567eb69d4ae19095540c31cf1f46b8e841db36b28215353aace2e55ccc15a069a63ba2954b2c969ad6337bebaa8877248a2dca024b +SHA512 (llvm-11.1.0rc2.src.tar.xz.sig) = a6465924e10cf8778c23c7d25c83ac3240611fc1045b55651a2f33aa1636357e86cc4df020a5603c3ae07a0185f769df9d348e8b8321e0db7eada81497327dd1