From 9cb7e1045d038afd7ad7c0cece6e514d93cd2245 Mon Sep 17 00:00:00 2001 From: RHEL Packaging Agent Date: Tue, 21 Oct 2025 13:13:09 +0000 Subject: [PATCH] Rebase to LLVM 21.1.3 Successfully rebased llvm package from version 20.1.8 to 21.1.3 by syncing from Fedora rawhide branch to CentOS c9s using the centos-sync.sh script. All patches applied cleanly during centpkg prep, sources were uploaded to lookaside cache, and SRPM was generated successfully. Resolves: RHEL-100898 This commit was created by Jotnar, a Red Hat Enterprise Linux software maintenance AI agent. Assisted-by: Jotnar --- .centos-ignore | 9 + 0001-22-polly-shared-libs.patch | 59 + ...Base-Scaled-Reg-does-not-dominate-in.patch | 131 +++ ...-to-fix-the-offload-build-with-the-m.patch | 27 + changelog | 1013 ++++++++++++++++ gating.yaml | 2 +- llvm.spec | 1026 +++-------------- release-keys.asc | 26 + sources | 2 + tests/README.md | 8 +- tests/build-gating.fmf | 9 +- tests/lld-alternatives.fmf | 2 +- 12 files changed, 1436 insertions(+), 878 deletions(-) create mode 100644 .centos-ignore create mode 100644 0001-22-polly-shared-libs.patch create mode 100644 0001-CGP-Bail-out-if-Base-Scaled-Reg-does-not-dominate-in.patch create mode 100644 0001-clang-Add-a-hack-to-fix-the-offload-build-with-the-m.patch create mode 100644 changelog diff --git a/.centos-ignore b/.centos-ignore new file mode 100644 index 0000000..0a86052 --- /dev/null +++ b/.centos-ignore @@ -0,0 +1,9 @@ +# List of files and directories that are not needed on CentOS/RHEL. +/centos-sync.sh +/ci.fmf +/prepare-copr.sh +/tests/kernel-ark-build.fmf +/Makefile +/.copr +/.git-blame-ignore-revs +/.packit.yaml diff --git a/0001-22-polly-shared-libs.patch b/0001-22-polly-shared-libs.patch new file mode 100644 index 0000000..091db35 --- /dev/null +++ b/0001-22-polly-shared-libs.patch @@ -0,0 +1,59 @@ +From daf5077c8ce848b39239879369679c9fea7041b1 Mon Sep 17 00:00:00 2001 +From: Konrad Kleine +Date: Tue, 28 Jan 2025 08:34:09 +0000 +Subject: [PATCH] shared libs + +--- + polly/cmake/polly_macros.cmake | 5 ++++- + polly/lib/CMakeLists.txt | 1 + + polly/lib/External/CMakeLists.txt | 1 + + 3 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/polly/cmake/polly_macros.cmake b/polly/cmake/polly_macros.cmake +index 9bd7b0b0ea59..fc2c3a76901f 100644 +--- a/polly/cmake/polly_macros.cmake ++++ b/polly/cmake/polly_macros.cmake +@@ -1,5 +1,5 @@ + macro(add_polly_library name) +- cmake_parse_arguments(ARG "" "" "" ${ARGN}) ++ cmake_parse_arguments(ARG "SHARED" "" "" ${ARGN}) + set(srcs ${ARG_UNPARSED_ARGUMENTS}) + if(MSVC_IDE OR XCODE) + file( GLOB_RECURSE headers *.h *.td *.def) +@@ -17,6 +17,9 @@ macro(add_polly_library name) + else() + set(libkind) + endif() ++ if (ARG_SHARED) ++ set(libkind SHARED) ++ endif() + add_library( ${name} ${libkind} ${srcs} ) + set_target_properties(${name} PROPERTIES FOLDER "Polly/Libraries") + +diff --git a/polly/lib/CMakeLists.txt b/polly/lib/CMakeLists.txt +index 0ed673815ff3..e156dcb31655 100644 +--- a/polly/lib/CMakeLists.txt ++++ b/polly/lib/CMakeLists.txt +@@ -41,6 +41,7 @@ set(POLLY_COMPONENTS + # the sources them to be recompiled for each of them. + add_llvm_pass_plugin(Polly + NO_MODULE ++ SHARED + SUBPROJECT Polly + Analysis/DependenceInfo.cpp + Analysis/ScopDetection.cpp +diff --git a/polly/lib/External/CMakeLists.txt b/polly/lib/External/CMakeLists.txt +index ab5cba93cdcf..fdfd06864bc7 100644 +--- a/polly/lib/External/CMakeLists.txt ++++ b/polly/lib/External/CMakeLists.txt +@@ -284,6 +284,7 @@ if (POLLY_BUNDLED_ISL) + ) + + add_polly_library(PollyISL ++ SHARED + ${ISL_FILES} + ) + +-- +2.50.1 + diff --git a/0001-CGP-Bail-out-if-Base-Scaled-Reg-does-not-dominate-in.patch b/0001-CGP-Bail-out-if-Base-Scaled-Reg-does-not-dominate-in.patch new file mode 100644 index 0000000..0c2d067 --- /dev/null +++ b/0001-CGP-Bail-out-if-Base-Scaled-Reg-does-not-dominate-in.patch @@ -0,0 +1,131 @@ +From dde30a47313bf52fef02bbcb1de931a8d725659f Mon Sep 17 00:00:00 2001 +From: Florian Hahn +Date: Fri, 6 Jun 2025 12:38:30 +0100 +Subject: [PATCH] [CGP] Bail out if (Base|Scaled)Reg does not dominate insert + point. (#142949) + +(Base|Scaled)Reg may not dominate the chosen insert point, if there are +multiple uses of the address. Bail out if that's the case, otherwise we +will generate invalid IR. + +In some cases, we could probably adjust the insert point or hoist the +(Base|Scaled)Reg. + +Fixes https://github.com/llvm/llvm-project/issues/142830. + +PR: https://github.com/llvm/llvm-project/pull/142949 +--- + llvm/lib/CodeGen/CodeGenPrepare.cpp | 13 +++- + .../X86/sink-addrmode-reg-does-not-geps.ll | 76 +++++++++++++++++++ + 2 files changed, 87 insertions(+), 2 deletions(-) + create mode 100644 llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode-reg-does-not-geps.ll + +diff --git a/llvm/lib/CodeGen/CodeGenPrepare.cpp b/llvm/lib/CodeGen/CodeGenPrepare.cpp +index 822ed6283117..32348a899683 100644 +--- a/llvm/lib/CodeGen/CodeGenPrepare.cpp ++++ b/llvm/lib/CodeGen/CodeGenPrepare.cpp +@@ -5945,8 +5945,17 @@ bool CodeGenPrepare::optimizeMemoryInst(Instruction *MemoryInst, Value *Addr, + // The current BB may be optimized multiple times, we can't guarantee the + // reuse of Addr happens later, call findInsertPos to find an appropriate + // insert position. +- IRBuilder<> Builder(MemoryInst->getParent(), +- findInsertPos(Addr, MemoryInst, SunkAddr)); ++ auto InsertPos = findInsertPos(Addr, MemoryInst, SunkAddr); ++ ++ // TODO: Adjust insert point considering (Base|Scaled)Reg if possible. ++ if (!SunkAddr) { ++ auto &DT = getDT(*MemoryInst->getFunction()); ++ if ((AddrMode.BaseReg && !DT.dominates(AddrMode.BaseReg, &*InsertPos)) || ++ (AddrMode.ScaledReg && !DT.dominates(AddrMode.ScaledReg, &*InsertPos))) ++ return Modified; ++ } ++ ++ IRBuilder<> Builder(MemoryInst->getParent(), InsertPos); + + if (SunkAddr) { + LLVM_DEBUG(dbgs() << "CGP: Reusing nonlocal addrmode: " << AddrMode +diff --git a/llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode-reg-does-not-geps.ll b/llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode-reg-does-not-geps.ll +new file mode 100644 +index 000000000000..1640bafbd0bf +--- /dev/null ++++ b/llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode-reg-does-not-geps.ll +@@ -0,0 +1,76 @@ ++; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5 ++; RUN: opt -S -passes='require,function(codegenprepare)' %s | FileCheck %s ++ ++target triple = "x86_64-unknown-linux" ++ ++declare i1 @cond(float) ++ ++define void @scaled_reg_does_not_dominate_insert_point(ptr %src) { ++; CHECK-LABEL: define void @scaled_reg_does_not_dominate_insert_point( ++; CHECK-SAME: ptr [[SRC:%.*]]) { ++; CHECK-NEXT: [[BB:.*]]: ++; CHECK-NEXT: br label %[[LOOP:.*]] ++; CHECK: [[LOOP]]: ++; CHECK-NEXT: [[IV:%.*]] = phi i64 [ 0, %[[BB]] ], [ [[IV_NEXT:%.*]], %[[LOOP]] ] ++; CHECK-NEXT: [[IV_NEXT]] = add i64 [[IV]], 1 ++; CHECK-NEXT: [[SUNKADDR2:%.*]] = mul i64 [[IV_NEXT]], 2 ++; CHECK-NEXT: [[SUNKADDR3:%.*]] = getelementptr i8, ptr [[SRC]], i64 [[SUNKADDR2]] ++; CHECK-NEXT: [[SUNKADDR4:%.*]] = getelementptr i8, ptr [[SUNKADDR3]], i64 6 ++; CHECK-NEXT: [[L_0:%.*]] = load float, ptr [[SUNKADDR4]], align 4 ++; CHECK-NEXT: [[SUNKADDR:%.*]] = mul i64 [[IV]], 2 ++; CHECK-NEXT: [[SUNKADDR1:%.*]] = getelementptr i8, ptr [[SRC]], i64 [[SUNKADDR]] ++; CHECK-NEXT: [[L_1:%.*]] = load float, ptr [[SUNKADDR1]], align 4 ++; CHECK-NEXT: [[TMP0:%.*]] = call i1 @cond(float [[L_0]]) ++; CHECK-NEXT: [[C:%.*]] = call i1 @cond(float [[L_1]]) ++; CHECK-NEXT: br i1 [[C]], label %[[LOOP]], label %[[EXIT:.*]] ++; CHECK: [[EXIT]]: ++; CHECK-NEXT: ret void ++; ++bb: ++ %gep.base = getelementptr i8, ptr %src, i64 8 ++ br label %loop ++ ++loop: ++ %iv = phi i64 [ 0, %bb ], [ %iv.next, %loop ] ++ %iv.shl = shl i64 %iv, 1 ++ %gep.shl = getelementptr i8, ptr %gep.base, i64 %iv.shl ++ %gep.sub = getelementptr i8, ptr %gep.shl, i64 -8 ++ %iv.next = add i64 %iv, 1 ++ %l.0 = load float, ptr %gep.shl, align 4 ++ %l.1 = load float, ptr %gep.sub, align 4 ++ call i1 @cond(float %l.0) ++ %c = call i1 @cond(float %l.1) ++ br i1 %c, label %loop, label %exit ++ ++exit: ++ ret void ++} ++ ++define void @check_dt_after_modifying_cfg(ptr %dst, i64 %x, i8 %y, i8 %z) { ++; CHECK-LABEL: define void @check_dt_after_modifying_cfg( ++; CHECK-SAME: ptr [[DST:%.*]], i64 [[X:%.*]], i8 [[Y:%.*]], i8 [[Z:%.*]]) { ++; CHECK-NEXT: [[ENTRY:.*]]: ++; CHECK-NEXT: [[OFFSET:%.*]] = lshr i64 [[X]], 2 ++; CHECK-NEXT: [[SEL_FROZEN:%.*]] = freeze i8 [[Z]] ++; CHECK-NEXT: [[CMP:%.*]] = icmp slt i8 [[SEL_FROZEN]], 0 ++; CHECK-NEXT: br i1 [[CMP]], label %[[SELECT_END:.*]], label %[[SELECT_FALSE_SINK:.*]] ++; CHECK: [[SELECT_FALSE_SINK]]: ++; CHECK-NEXT: [[SMIN:%.*]] = tail call i8 @llvm.smin.i8(i8 [[Y]], i8 0) ++; CHECK-NEXT: br label %[[SELECT_END]] ++; CHECK: [[SELECT_END]]: ++; CHECK-NEXT: [[SEL:%.*]] = phi i8 [ 0, %[[ENTRY]] ], [ [[SMIN]], %[[SELECT_FALSE_SINK]] ] ++; CHECK-NEXT: [[SUNKADDR:%.*]] = getelementptr i8, ptr [[DST]], i64 [[OFFSET]] ++; CHECK-NEXT: store i8 [[SEL]], ptr [[SUNKADDR]], align 1 ++; CHECK-NEXT: ret void ++; ++entry: ++ %offset = lshr i64 %x, 2 ++ %gep.dst = getelementptr i8, ptr %dst, i64 %offset ++ %smin = tail call i8 @llvm.smin.i8(i8 %y, i8 0) ++ %cmp = icmp slt i8 %z, 0 ++ %sel = select i1 %cmp, i8 0, i8 %smin ++ store i8 %sel, ptr %gep.dst, align 1 ++ ret void ++} ++ ++declare i8 @llvm.smin.i8(i8, i8) #0 +-- +2.50.1 + diff --git a/0001-clang-Add-a-hack-to-fix-the-offload-build-with-the-m.patch b/0001-clang-Add-a-hack-to-fix-the-offload-build-with-the-m.patch new file mode 100644 index 0000000..9184a37 --- /dev/null +++ b/0001-clang-Add-a-hack-to-fix-the-offload-build-with-the-m.patch @@ -0,0 +1,27 @@ +From f028fc042ef2875a13c6abf3828626a313e4a8e6 Mon Sep 17 00:00:00 2001 +From: Tom Stellard +Date: Fri, 1 Aug 2025 15:38:22 +0000 +Subject: [PATCH] clang: Add a hack to fix the offload build with the + mtls-dialect option + +--- + clang/lib/Driver/ToolChains/CommonArgs.cpp | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/clang/lib/Driver/ToolChains/CommonArgs.cpp b/clang/lib/Driver/ToolChains/CommonArgs.cpp +index 097d186ad8ea..0dc9e60f8428 100644 +--- a/clang/lib/Driver/ToolChains/CommonArgs.cpp ++++ b/clang/lib/Driver/ToolChains/CommonArgs.cpp +@@ -920,6 +920,9 @@ bool tools::isTLSDESCEnabled(const ToolChain &TC, + } else if (Triple.isX86()) { + SupportedArgument = V == "gnu" || V == "gnu2"; + EnableTLSDESC = V == "gnu2"; ++ } else if( Triple.isGPU()) { ++ // HACK To fix the offload build. ++ return false; + } else { + Unsupported = true; + } +-- +2.49.0 + diff --git a/changelog b/changelog new file mode 100644 index 0000000..6a50205 --- /dev/null +++ b/changelog @@ -0,0 +1,1013 @@ +* Mon Jul 28 2025 Paul Murphy - 20.1.8-3 +- Backport fix for pgo optimized rust toolchain on ppc64le (rhbz#2382683) +- Backport fix for crbit spill miscompile on ppc64le power9 and power10 (rhbz#2383037) +- Backport fix for build of highway package on ppc64le (rhbz#2383182) + +* Thu Jul 24 2025 Fedora Release Engineering - 20.1.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Wed Jul 09 2025 Nikita Popov - 20.1.8-1 +- Update to LLVM 20.1.8 + +* Fri Jun 20 2025 Kashyap Chamarthy - 20.1.7-2 +- Add riscv64 enablement bits; thanks: Songsong Zhang + (U2FsdGVkX1@gmail.com) and David Abdurachmanov (davidlt@rivosinc.com) + +* Thu Jun 19 2025 Nikita Popov - 20.1.7-1 +- Update to LLVM 20.1.7 + +* Tue Jun 17 2025 Nikita Popov - 20.1.6-10 +- Fix llvm-config alternatives handling (rhbz#2361779) + +* Mon Jun 16 2025 Nikita Popov - 20.1.6-9 +- Use libdir suffix in versioned prefix + +* Tue Jun 10 2025 Nikita Popov - 20.1.6-8 +- Invert symlink direction +- Fix i686 multilib installation (rhbz#2365079) + +* Thu Jun 05 2025 Timm Bäder - 20.1.6-7 +- Backport patch to fix rhbz#2363895 + +* Wed Jun 04 2025 Python Maint - 20.1.6-6 +- Rebuilt for Python 3.14 + +* Wed Jun 04 2025 Python Maint - 20.1.6-5 +- Bootstrap for Python 3.14 + +* Wed Jun 04 2025 Python Maint - 20.1.6-4 +- Rebuilt for Python 3.14 + +* Tue Jun 03 2025 Tulio Magno Quites Machado Filho - 20.1.6-3 +- Remove temporary changes on ppc64le + +* Tue Jun 03 2025 Python Maint - 20.1.6-2 +- Rebuilt for Python 3.14 + +* Fri May 30 2025 Nikita Popov - 20.1.6-1 +- Update to LLVM 20.1.6 + +* Mon May 26 2025 Konrad Kleine - 20.1.5-2 +- Build with PGO + +* Thu May 22 2025 Nikita Popov - 20.1.5-1 +- Update to LLVM 20.1.5 + +* Tue May 06 2025 Tom Stellard - 20.1.4-6 +- Fix build on ppc64le with glibc >= 2.42 + +* Tue May 06 2025 Nikita Popov - 20.1.4-5 +- Update to LLVM 20.1.4 + +* Sat Apr 26 2025 Tom Stellard - 20.1.3-2 +- Fix build with glibc >= 2.42 + +* Thu Apr 17 2025 Nikita Popov - 20.1.3-1 +- Update to LLVM 20.1.3 + +* Fri Apr 04 2025 Tom Stellard - 20.1.2-5 +- Drop ARM and Mips targets on RHEL + +* Thu Apr 03 2025 Timm Bäder - 20.1.2-4 +- Remove gpu-loader binaries + +* Thu Apr 03 2025 Nikita Popov - 20.1.2-3 +- Update to LLVM 20.1.2 + +* Tue Apr 01 2025 Miro Hrončok - 20.1.1-2 +- Drop redundant runtime requirement on python3-setuptools from python3-lit + +* Wed Mar 19 2025 Nikita Popov - 20.1.1-1 +- Update to LLVM 20.1.1 + +* Tue Mar 18 2025 Nikita Popov - 20.1.0-2 +- Move clang-scan-deps to clang package (rhbz#2353000) + +* Wed Mar 05 2025 Nikita Popov - 20.1.0-1 +- Update to LLVM 20.1.0 + +* Thu Feb 27 2025 Nikita Popov - 20.1.0~rc3-1 +- Update to LLVM 20 rc 3 + +* Tue Feb 25 2025 Nikita Popov - 19.1.7-11 +- Add clang-devel -> llvm-devel dep (rhbz#2342979) + +* Thu Feb 20 2025 Yaakov Selkowitz - 19.1.7-10 +- Do not rely on alternatives path + +* Fri Feb 14 2025 Nikita Popov - 19.1.7-9 +- Rename llvm-resource-filesystem -> llvm-filesystem + +* Wed Feb 12 2025 Nikita Popov - 19.1.7-8 +- Backport bolt fix (rhbz#2344830) + +* Wed Feb 12 2025 Nikita Popov - 19.1.7-7 +- Introduce llvm-resource-filesystem + +* Tue Feb 04 2025 Nikita Popov - 19.1.7-6 +- Don't use directory symlinks + +* Fri Jan 31 2025 Konrad Kleine - 19.1.7-5 +- Address installability issue with directories that were turned into symlinks + +* Thu Jan 30 2025 Josh Stone - 19.1.7-4 +- Fix an isel error triggered by Rust 1.85 on s390x + +* Wed Jan 22 2025 Konrad Kleine - 19.1.7-3 +- Add polly + +* Mon Jan 20 2025 Konrad Kleine - 19.1.7-2 +- Add bolt + +* Mon Jan 20 2025 Timm Bäder - 19.1.7-1 +- Update to 19.1.7 + +* Fri Jan 17 2025 Fedora Release Engineering - 19.1.6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Tue Dec 24 2024 Konrad Kleine - 19.1.6-3 +- Add libcxx + +* Thu Dec 19 2024 Nikita Popov - 19.1.6-2 +- Fix mlir exports + +* Wed Dec 18 2024 Timm Bäder - 19.1.6-1 +- Update to 19.1.6 + +* Fri Dec 06 2024 Konrad Kleine - 19.1.5-3 +- Fix mlir and openmp tests +- Disable libomp tests on s390x RHEL entirely. + +* Wed Dec 04 2024 Konrad Kleine - 19.1.5-2 +- Add mlir + +* Tue Dec 03 2024 Timm Bäder - 19.1.5-1 +- Update to 19.1.5 + +* Tue Nov 26 2024 Tulio Magno Quites Machado Filho - 19.1.4-2 +- Enable LLVM_ENABLE_ZSTD (rhbz#2321848) + +* Thu Nov 21 2024 Timm Bäder - 19.1.4-1 +- Update to 19.1.4 + +* Tue Nov 19 2024 Konrad Kleine - 19.1.3-4 +- Remove HTML documentation +- Add lldb man pages + +* Mon Nov 18 2024 Josh Stone - 19.1.3-3 +- Fix profiling after a binutils NOTE change (rhbz#2322754) + +* Mon Nov 18 2024 Timm Bäder - 19.1.3-2 +- Install i386 config files on x86_64 + +* Tue Nov 05 2024 Timm Bäder - 19.1.3-1 +- Update to 19.1.3 + +* Tue Sep 24 2024 Maxwell G - 19.1.0-2 +- Add 'Provides: clangd' to the clang-tools-extra subpackage + +* Thu Sep 19 2024 Timm Bäder - 19.1.0-1 +- Update to LLVM 19.1.0 + +* Thu Jul 18 2024 Fedora Release Engineering - 18.1.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Thu Jul 11 2024 Jesus Checa Hidalgo - 18.1.8-1 +- Update to LLVM 18.1.8 + +* Fri Jun 07 2024 Tom Stellard - 18.1.7-1 +- 18.1.7 Release + +* Tue May 28 2024 Nikita Popov - 18.1.6-2 +- Fix use after free on ppc64le (rhbz#2283525) + +* Sat May 18 2024 Tom Stellard - 18.1.6-1 +- 18.1.6 Release + +* Tue May 14 2024 Tom Stellard - 18.1.3-2 +- Backport fix for rhbz#2275090 + +* Thu Apr 25 2024 Tom Stellard - 18.1.4-1 +- 18.1.4 Release + +* Fri Apr 12 2024 Tom Stellard - 18.1.3-1 +- 18.1.3 Release + +* Thu Mar 21 2024 Zhengyu He - 18.1.2-2 +- Add support for riscv64 + +* Thu Mar 21 2024 Tom Stellard - 18.1.2-1 +- 18.1.2 Release + +* Mon Mar 11 2024 Tom Stellard - 18.1.1-1 +- 18.1.1 Release + +* Tue Feb 27 2024 Tom Stellard - 18.1.0~rc4-1 +- 18.1.0-rc4 Release + +* Tue Feb 20 2024 Tom Stellard - 18.1.0~rc3-1 +- 18.1.0-rc3 Release + +* Thu Feb 01 2024 Nikita Popov - 17.0.6-6 +- Fix crash with -fzero-call-used-regs (rhbz#2262260) + +* Mon Jan 29 2024 Nikita Popov - 17.0.6-5 +- Only use cet-report=error on x86_64 + +* Thu Jan 25 2024 Fedora Release Engineering - 17.0.6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 17.0.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Thu Nov 30 2023 Tulio Magno Quites Machado Filho - 17.0.6-2 +- Fix rhbz #2248872 + +* Tue Nov 28 2023 Tulio Magno Quites Machado Filho - 17.0.6-1 +- Update to LLVM 17.0.6 + +* Tue Nov 14 2023 Tulio Magno Quites Machado Filho - 17.0.5-1 +- Update to LLVM 17.0.5 + +* Tue Oct 31 2023 Tulio Magno Quites Machado Filho - 17.0.4-1 +- Update to LLVM 17.0.4 + +* Tue Oct 17 2023 Tulio Magno Quites Machado Filho - 17.0.3-1 +- Update to LLVM 17.0.3 + +* Tue Oct 03 2023 Tulio Magno Quites Machado Filho - 17.0.2-1 +- Update to LLVM 17.0.2 + +* Fri Sep 22 2023 Tulio Magno Quites Machado Filho - 17.0.1~rc4-1 +- Update to LLVM 17.0.1 + +* Tue Sep 05 2023 Tulio Magno Quites Machado Filho - 17.0.0~rc4-1 +- Update to LLVM 17.0.0 RC4 + +* Thu Aug 24 2023 Tulio Magno Quites Machado Filho - 17.0.0~rc3-1 +- Update to LLVM 17.0.0 RC3 + +* Thu Aug 24 2023 Tulio Magno Quites Machado Filho - 17.0.0~rc2-2 +- Temporarily disable a failing test on ppc64le + +* Thu Aug 17 2023 Tulio Magno Quites Machado Filho - 17.0.0~rc2-1 +- Update to LLVM 17.0.0 RC2 + +* Wed Aug 16 2023 Tulio Magno Quites Machado Filho - 17.0.0~rc1-4 +- Disable LTO on i686 + +* Mon Aug 14 2023 Tulio Magno Quites Machado Filho - 17.0.0~rc1-3 +- Re-add patch removed by mistake + +* Tue Aug 01 2023 Tulio Magno Quites Machado Filho - 17.0.0~rc1-2 +- Enable LLVM_UNREACHABLE_OPTIMIZE temporarily + +* Mon Jul 31 2023 Tulio Magno Quites Machado Filho - 17.0.0~rc1-1 +- Update to LLVM 17.0.0 RC1 + +* Mon Jul 31 2023 Tulio Magno Quites Machado Filho - 16.0.6-6 +- Fix rhbz #2224885 + +* Thu Jul 20 2023 Fedora Release Engineering - 16.0.6-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Mon Jul 10 2023 Tulio Magno Quites Machado Filho - 16.0.6-4 +- Use LLVM_UNITTEST_LINK_FLAGS to reduce link times for unit tests + +* Mon Jul 03 2023 Tulio Magno Quites Machado Filho - 16.0.6-3 +- Improve error messages for unsupported relocs on s390x (rhbz#2216906) +- Disable LLVM_UNREACHABLE_OPTIMIZE + +* Wed Jun 14 2023 Tulio Magno Quites Machado Filho - 16.0.6-1 +- Update to LLVM 16.0.6 + +* Fri Jun 09 2023 Nikita Popov - 16.0.5-2 +- Split off llvm-cmake-utils package + +* Mon Jun 05 2023 Tulio Magno Quites Machado Filho - 16.0.5-1 +- Update to LLVM 16.0.5 + +* Fri May 19 2023 Yaakov Selkowitz - 16.0.4-2 +- Avoid recommonmark dependency in RHEL builds + +* Thu May 18 2023 Tulio Magno Quites Machado Filho - 16.0.4-1 +- Update to LLVM 16.0.4 + +* Tue May 09 2023 Tulio Magno Quites Machado Filho - 16.0.3-1 +- Update to LLVM 16.0.3 + +* Tue Apr 25 2023 Tulio Magno Quites Machado Filho - 16.0.2-1 +- Update to LLVM 16.0.2 + +* Tue Apr 11 2023 Tulio Magno Quites Machado Filho - 16.0.1-1 +- Update to LLVM 16.0.1 + +* Thu Mar 23 2023 Tulio Magno Quites Machado Filho - 16.0.0-2 +- Distribute libllvm_gtest.a and libllvm_gtest_main.a with llvm-googletest +- Stop distributing /usr/share/llvm/src/utils + +* Mon Mar 20 2023 Tulio Magno Quites Machado Filho - 16.0.0-1 +- Update to LLVM 16.0.0 + +* Thu Mar 16 2023 Tulio Magno Quites Machado Filho - 16.0.0~rc4-2 +- Fix the ppc64le triple + +* Tue Mar 14 2023 Tulio Magno Quites Machado Filho - 16.0.0~rc4-1 +- Update to LLVM 16.0.0 RC4 + +* Fri Mar 10 2023 Tulio Magno Quites Machado Filho - 16.0.0~rc3-2 +- Fix llvm-exegesis failures on s390x + +* Wed Feb 22 2023 Tulio Magno Quites Machado Filho - 16.0.0~rc3-1 +- Update to LLVM 16.0.0 RC3 + +* Wed Feb 01 2023 Tulio Magno Quites Machado Filho - 16.0.0~rc1-1 +- Update to LLVM 16.0.0 RC1 + +* Thu Jan 19 2023 Tulio Magno Quites Machado Filho - 15.0.7-3 +- Update license to SPDX identifiers. +- Include the Apache license adopted in 2019. + +* Thu Jan 19 2023 Fedora Release Engineering - 15.0.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Thu Jan 12 2023 Nikita Popov - 15.0.7-1 +- Update to LLVM 15.0.7 + +* Mon Jan 09 2023 Tom Stellard - 15.0.6-3 +- Omit frame pointers when building + +* Mon Dec 19 2022 Nikita Popov - 15.0.6-2 +- Remove workaround for rbhz#2048440 + +* Mon Dec 05 2022 Nikita Popov - 15.0.6-1 +- Update to LLVM 15.0.6 + +* Fri Nov 11 2022 Nikita Popov - 15.0.4-2 +- Copy CFLAGS to ASMFLAGs to enable CET in asm files + +* Wed Nov 02 2022 Nikita Popov - 15.0.4-1 +- Update to LLVM 15.0.4 + +* Tue Sep 27 2022 Nikita Popov - 15.0.0-2 +- Export GetHostTriple.cmake + +* Tue Sep 06 2022 Nikita Popov - 15.0.0-1 +- Update to LLVM 15.0.0 + +* Thu Jul 21 2022 Fedora Release Engineering - 14.0.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Fri Jun 17 2022 Timm Bäder - 14.0.5-2 +- Release bump for new redhat-rpm-config + +* Mon Jun 13 2022 Timm Bäder - 14.0.5-1 +- 14.0.5 Release + +* Wed May 18 2022 Tom Stellard - 14.0.3-1 +- 14.0.3 Release + +* Fri Apr 29 2022 Timm Bäder - 14.0.0-2 +- Remove llvm-cmake-devel package + +* Wed Mar 23 2022 Timm Bäder - 14.0.0-1 +- Update to LLVM 14.0.0 + +* Wed Feb 02 2022 Nikita Popov - 13.0.1-1 +- Update to LLVM 13.0.1 final + +* Tue Jan 25 2022 Nikita Popov - 13.0.1~rc3-1 +- Update to LLVM 13.0.1rc3 + +* Thu Jan 20 2022 Fedora Release Engineering - 13.0.1~rc2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Jan 13 2022 Nikita Popov - 13.0.1~rc2-1 +- Update to LLVM 13.0.1rc2 + +* Mon Jan 10 2022 Nikita Popov - 13.0.1~rc1-1 +- Upstream 13.0.1 rc1 release + +* Sat Jan 08 2022 Miro Hrončok - 13.0.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34 + +* Thu Nov 11 2021 Tom Stellard - 13.0.0-7 +- Enable lto on s390x and arm + +* Mon Oct 25 2021 Tom Stellard - 13.0.0-6 +- Build with Thin LTO + +* Mon Oct 18 2021 Tom Stellard - 13.0.0-5 +- Build with clang + +* Fri Oct 08 2021 Tom Stellard - 13.0.0-4 +- Fix default triple on arm + +* Wed Oct 06 2021 Tom Stellard - 13.0.0-3 +- Set default triple + +* Mon Oct 04 2021 Tom Stellard - 13.0.0-2 +- Drop abi_revision from soname + +* Thu Sep 30 2021 Tom Stellard - 13.0.0-1 +- 13.0.0 Release + +* Thu Sep 30 2021 Tom Stellard - 13.0.0~rc4-2 +- Restore config.guess for host triple detection + +* Fri Sep 24 2021 Tom Stellard - 13.0.0~rc4-1 +- 13.0.0-rc4 Release + +* Fri Sep 17 2021 Tom Stellard - 13.0.0~rc3-1 +- 13.0.0-rc3 Release + +* Mon Sep 13 2021 Tom Stellard - 13.0.0~rc1-3 +- Pass LLVM_DEFAULT_TARGET_TRIPLE to cmake + +* Mon Sep 13 2021 Konrad Kleine - 13.0.0~rc1-2 +- Add --without=check option + +* Wed Aug 04 2021 Tom Stellard - 13.0.0~rc1-1 +- 13.0.0-rc1 Release + +* Thu Jul 22 2021 sguelton@redhat.com - 12.0.1-3 +- Maintain versionned link to llvm-config + +* Thu Jul 22 2021 Fedora Release Engineering - 12.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Mon Jul 12 2021 Tom Stellard - 12.0.1-1 +- 12.0.1 Release + +* Wed Jun 30 2021 Tom Stellard - llvm-12.0.1~rc3-1 +- 12.0.1-rc3 Release + +* Fri May 28 2021 Tom Stellard - 12.0.1~rc1-2 +- Stop installing lit tests + +* Wed May 26 2021 Tom Stellard - llvm-12.0.1~rc1-1 +- 12.0.1-rc1 Release + +* Mon May 17 2021 sguelton@redhat.com - 12.0.0-7 +- Fix handling of llvm-config + +* Mon May 03 2021 kkleine@redhat.com - 12.0.0-6 +- More verbose builds thanks to python3-psutil + +* Sat May 01 2021 sguelton@redhat.com - 12.0.0-5 +- Fix llvm-config install + +* Tue Apr 27 2021 sguelton@redhat.com - 12.0.0-4 +- Provide default empty value for exec_suffix when not in compat mode + +* Tue Apr 27 2021 sguelton@redhat.com - 12.0.0-3 +- Fix llvm-config install + +* Tue Apr 20 2021 sguelton@redhat.com - 12.0.0-2 +- Backport compat package fix + +* Thu Apr 15 2021 Tom Stellard - 12.0.0-1 +- 12.0.0 Release + +* Thu Apr 08 2021 sguelton@redhat.com - 12.0.0-0.11.rc5 +- New upstream release candidate + +* Tue Apr 06 2021 sguelton@redhat.com - 12.0.0-0.10.rc4 +- Patch test case for compatibility with llvm-test latout + +* Fri Apr 02 2021 sguelton@redhat.com - 12.0.0-0.9.rc4 +- New upstream release candidate + +* Wed Mar 31 2021 Jonathan Wakely - 12.0.0-0.8.rc3 +- Rebuilt for removed libstdc++ symbols (#1937698) + +* Thu Mar 11 2021 sguelton@redhat.com - 12.0.0-0.7.rc3 +- LLVM 12.0.0 rc3 + +* Wed Mar 10 2021 Kalev Lember - 12.0.0-0.6.rc2 +- Add llvm-static(major) provides to the -static subpackage + +* Tue Mar 09 2021 sguelton@redhat.com - 12.0.0-0.5.rc2 +- rebuilt + +* Tue Mar 02 2021 sguelton@redhat.com - 12.0.0-0.4.rc2 +- Change CI working dir + +* Wed Feb 24 2021 sguelton@redhat.com - 12.0.0-0.3.rc2 +- 12.0.0-rc2 release + +* Tue Feb 16 2021 Dave Airlie - 12.0.0-0.2.rc1 +- Enable LLVM_USE_PERF to allow perf integration + +* Tue Feb 2 2021 Serge Guelton - 12.0.0-0.1.rc1 +- 12.0.0-rc1 release + +* Tue Jan 26 2021 Fedora Release Engineering - 11.1.0-0.3.rc2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* 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 + +* Sun Dec 20 2020 sguelton@redhat.com - 11.0.1-2.rc2 +- 11.0.1-rc2 release + +* Tue Dec 01 2020 sguelton@redhat.com - 11.0.1-1.rc1 +- 11.0.1-rc1 release + +* Sat Oct 31 2020 Jeff Law - 11.0.0-2 +- Fix missing #include for gcc-11 + +* Wed Oct 14 2020 Josh Stone - 11.0.0-1 +- Fix coreos-installer test crash on s390x (rhbz#1883457) + +* Mon Oct 12 2020 sguelton@redhat.com - 11.0.0-0.11 +- llvm 11.0.0 - final release + +* Thu Oct 08 2020 sguelton@redhat.com - 11.0.0-0.10.rc6 +- 11.0.0-rc6 + +* Fri Oct 02 2020 sguelton@redhat.com - 11.0.0-0.9.rc5 +- 11.0.0-rc5 Release + +* Sun Sep 27 2020 sguelton@redhat.com - 11.0.0-0.8.rc3 +- Fix NVR + +* Thu Sep 24 2020 sguelton@redhat.com - 11.0.0-0.2.rc3 +- Obsolete patch for rhbz#1862012 + +* Thu Sep 24 2020 sguelton@redhat.com - 11.0.0-0.1.rc3 +- 11.0.0-rc3 Release + +* Wed Sep 02 2020 sguelton@redhat.com - 11.0.0-0.7.rc2 +- Apply upstream patch for rhbz#1862012 + +* Tue Sep 01 2020 sguelton@redhat.com - 11.0.0-0.6.rc2 +- Fix source location + +* Fri Aug 21 2020 Tom Stellard - 11.0.0-0.5.rc2 +- 11.0.0-rc2 Release + +* Wed Aug 19 2020 Tom Stellard - 11.0.0-0.4.rc1 +- Fix regression-tests CI tests + +* Tue Aug 18 2020 Tom Stellard - 11.0.0-0.3.rc1 +- Fix rust crash on ppc64le compiling firefox +- rhbz#1862012 + +* Tue Aug 11 2020 Tom Stellard - 11.0.0-0.2.rc1 +- Install update_cc_test_checks.py script + +* Thu Aug 06 2020 Tom Stellard - 11.0.0-0.1-rc1 +- LLVM 11.0.0-rc1 Release +- Make llvm-devel require llvm-static and llvm-test + +* Tue Aug 04 2020 Tom Stellard - 10.0.0-10 +- Backport upstream patch to fix build with -flto. +- Disable LTO on s390x to work-around unit test failures. + +* Sat Aug 01 2020 sguelton@redhat.com - 10.0.0-9 +- Fix update-alternative uninstall script + +* Sat Aug 01 2020 sguelton@redhat.com - 10.0.0-8 +- Fix gpg verification and update macro usage. + +* Sat Aug 01 2020 Fedora Release Engineering - 10.0.0-7 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 10.0.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild +* Thu Jun 11 2020 sguelton@redhat.com - 10.0.0-5 +- Make llvm-test.tar.gz creation reproducible. + +* Tue Jun 02 2020 sguelton@redhat.com - 10.0.0-4 +- Instruct cmake not to generate RPATH + +* Thu Apr 30 2020 Tom Stellard - 10.0.0-3 +- Install LLVMgold.so symlink in bfd-plugins directory + +* Tue Apr 07 2020 sguelton@redhat.com - 10.0.0-2 +- Do not package UpdateTestChecks tests in llvm-tests +- Apply upstream patch bab5908df to pass gating tests + +* Wed Mar 25 2020 sguelton@redhat.com - 10.0.0-1 +- 10.0.0 final + +* Mon Mar 23 2020 sguelton@redhat.com - 10.0.0-0.6.rc6 +- 10.0.0 rc6 + +* Thu Mar 19 2020 sguelton@redhat.com - 10.0.0-0.5.rc5 +- 10.0.0 rc5 + +* Sat Mar 14 2020 sguelton@redhat.com - 10.0.0-0.4.rc4 +- 10.0.0 rc4 + +* Thu Mar 05 2020 sguelton@redhat.com - 10.0.0-0.3.rc3 +- 10.0.0 rc3 + +* Fri Feb 28 2020 sguelton@redhat.com - 10.0.0-0.2.rc2 +- Remove *_finite support, see rhbz#1803203 + +* Fri Feb 14 2020 sguelton@redhat.com - 10.0.0-0.1.rc2 +- 10.0.0 rc2 + +* Fri Jan 31 2020 sguelton@redhat.com - 10.0.0-0.1.rc1 +- 10.0.0 rc1 + +* Wed Jan 29 2020 Fedora Release Engineering - 9.0.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Tue Jan 21 2020 Tom Stellard - 9.0.1-4 +- Rebuild after previous build failed to strip binaries + +* Fri Jan 17 2020 Tom Stellard - 9.0.1-3 +- Add explicit Requires from sub-packages to llvm-libs + +* Fri Jan 10 2020 Tom Stellard - 9.0.1-2 +- Fix crash with kernel bpf self-tests + +* Thu Dec 19 2019 tstellar@redhat.com - 9.0.1-1 +- 9.0.1 Release + +* Mon Nov 25 2019 sguelton@redhat.com - 9.0.0-4 +- Activate AVR on all architectures + +* Mon Sep 30 2019 Tom Stellard - 9.0.0-3 +- Build libLLVM.so first to avoid OOM errors + +* Fri Sep 27 2019 Tom Stellard - 9.0.0-2 +- Remove unneeded BuildRequires: libstdc++-static + +* Thu Sep 19 2019 sguelton@redhat.com - 9.0.0-1 +- 9.0.0 Release + +* Wed Sep 18 2019 sguelton@redhat.com - 9.0.0-0.5.rc3 +- Support avr target, see rhbz#1718492 + +* Tue Sep 10 2019 Tom Stellard - 9.0.0-0.4.rc3 +- Split out test executables into their own export file + +* Fri Sep 06 2019 Tom Stellard - 9.0.0-0.3.rc3 +- Fix patch for splitting out static library exports + +* Fri Aug 30 2019 Tom Stellard - 9.0.0-0.2.rc3 +- 9.0.0-rc3 Release + +* Thu Aug 01 2019 Tom Stellard - 9.0.0-0.1.rc2 +- 9.0.0-rc2 Release + +* Tue Jul 30 2019 Tom Stellard - 8.0.0-9 +- Sync with llvm8.0 spec file + +* Thu Jul 25 2019 Fedora Release Engineering - 8.0.0-8.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jul 17 2019 Tom Stellard - 8.0.0-8 +- Add provides for the major version of sub-packages + +* Fri May 17 2019 sguelton@redhat.com - 8.0.0-7 +- Fix conflicts between llvm-static = 8 and llvm-dev < 8 around LLVMStaticExports.cmake + +* Wed Apr 24 2019 Tom Stellard - 8.0.0-6 +- Make sure we aren't passing -g on s390x + +* Sat Mar 30 2019 Tom Stellard - 8.0.0-5 +- Enable build rpath while keeping install rpath disabled + +* Wed Mar 27 2019 Tom Stellard - 8.0.0-4 +- Backport r351577 from trunk to fix ninja check failures + +* Tue Mar 26 2019 Tom Stellard - 8.0.0-3 +- Fix ninja check + +* Fri Mar 22 2019 Tom Stellard - 8.0.0-2 +- llvm-test fixes + +* Wed Mar 20 2019 sguelton@redhat.com - 8.0.0-1 +- 8.0.0 final + +* Fri Mar 15 2019 sguelton@redhat.com - 8.0.0-0.6.rc4 +- Activate all backends (rhbz#1689031) + +* Tue Mar 12 2019 sguelton@redhat.com - 8.0.0-0.5.rc4 +- 8.0.0 Release candidate 4 + +* Mon Mar 4 2019 sguelton@redhat.com - 8.0.0-0.4.rc3 +- Move some binaries to -test package, cleanup specfile + +* Mon Mar 4 2019 sguelton@redhat.com - 8.0.0-0.3.rc3 +- 8.0.0 Release candidate 3 + +* Fri Feb 22 2019 sguelton@redhat.com - 8.0.0-0.2.rc2 +- 8.0.0 Release candidate 2 + +* Sat Feb 9 2019 sguelton@redhat.com - 8.0.0-0.1.rc1 +- 8.0.0 Release candidate 1 + +* Fri Feb 01 2019 Fedora Release Engineering - 7.0.1-2.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Mon Jan 21 2019 Josh Stone - 7.0.1-2 +- Fix discriminators in metadata, rhbz#1668033 + +* Mon Dec 17 2018 sguelton@redhat.com - 7.0.1-1 +- 7.0.1 release + +* Tue Dec 04 2018 sguelton@redhat.com - 7.0.0-5 +- Ensure rpmlint passes on specfile + +* Sat Nov 17 2018 Tom Stellard - 7.0.0-4 +- Install testing libraries for unittests + +* Sat Oct 27 2018 Tom Stellard - 7.0.0-3 +- Fix running unittests as not-root user + +* Thu Sep 27 2018 Tom Stellard - 7.0.0-2 +- Fixes for llvm-test package: +- Add some missing Requires +- Add --threads option to run-lit-tests script +- Set PATH so lit can find tools like count, not, etc. +- Don't hardcode tools directory to /usr/lib64/llvm +- Fix typo in yaml-bench define +- Only print information about failing tests + +* Fri Sep 21 2018 Tom Stellard - 7.0.0-1 +- 7.0.0 Release + +* Thu Sep 13 2018 Tom Stellard - 7.0.0-0.15.rc3 +- Disable rpath on install LLVM and related sub-projects + +* Wed Sep 12 2018 Tom Stellard - 7.0.0-0.14.rc3 +- Remove rpath from executables and libraries + +* Tue Sep 11 2018 Tom Stellard - 7.0.0-0.13.rc3 +- Re-enable arm and aarch64 targets on x86_64 + +* Mon Sep 10 2018 Tom Stellard - 7.0.0-0.12.rc3 +- 7.0.0-rc3 Release + +* Fri Sep 07 2018 Tom Stellard - 7.0.0-0.11.rc2 +- Use python3 shebang for opt-viewewr scripts + +* Thu Aug 30 2018 Tom Stellard - 7.0.0-0.10.rc2 +- Drop all uses of python2 from lit tests + +* Thu Aug 30 2018 Tom Stellard - 7.0.0-0.9.rc2 +- Build the gold plugin on all supported architectures + +* Wed Aug 29 2018 Kevin Fenzi - 7.0.0-0.8.rc2 +- Re-enable debuginfo to avoid 25x size increase. + +* Tue Aug 28 2018 Tom Stellard - 7.0.0-0.7.rc2 +- 7.0.0-rc2 Release + +* Tue Aug 28 2018 Tom Stellard - 7.0.0-0.6.rc1 +- Guard valgrind usage with valgrind_arches macro + +* Thu Aug 23 2018 Tom Stellard - 7.0.0-0.5.rc1 +- Package lit tests and googletest sources. + +* Mon Aug 20 2018 Tom Stellard - 7.0.0-0.4.rc1 +- Re-enable AMDGPU target on ARM rhbz#1618922 + +* Mon Aug 13 2018 Tom Stellard - 7.0.0-0.3.rc1 +- Drop references to TestPlugin.so from cmake files + +* Fri Aug 10 2018 Tom Stellard - 7.0.0-0.2.rc1 +- Fixes for lit tests + +* Fri Aug 10 2018 Tom Stellard - 7.0.0-0.1.rc1 +- 7.0.0-rc1 Release +- Reduce number of enabled targets on all arches. +- Drop s390 detection patch, LLVM does not support s390 codegen. + +* Mon Aug 06 2018 Tom Stellard - 6.0.1-6 +- Backport some fixes needed by mesa and rust + +* Thu Jul 26 2018 Tom Stellard - 6.0.1-5 +- Move libLLVM-6.0.so to llvm6.0-libs. + +* Mon Jul 23 2018 Tom Stellard - 6.0.1-4 +- Rebuild because debuginfo stripping failed with the previous build + +* Fri Jul 13 2018 Tom Stellard - 6.0.1-3 +- Sync specfile with llvm6.0 package + +* Fri Jul 13 2018 Fedora Release Engineering - 6.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Mon Jun 25 2018 Tom Stellard - 6.0.1-1 +- 6.0.1 Release + +* Thu Jun 07 2018 Tom Stellard - 6.0.1-0.4.rc2 +- 6.0.1-rc2 + +* Wed Jun 06 2018 Tom Stellard - 6.0.1-0.3.rc1 +- Re-enable all targets to avoid breaking the ABI. + +* Mon Jun 04 2018 Tom Stellard - 6.0.1-0.2.rc1 +- Reduce the number of enabled targets based on the architecture + +* Thu May 10 2018 Tom Stellard - 6.0.1-0.1.rc1 +- 6.0.1 rc1 + +* Tue Mar 27 2018 Tom Stellard - 6.0.0-11 +- Re-enable arm tests that used to hang + +* Thu Mar 22 2018 Tom Stellard - 6.0.0-10 +- Fix testcase in backported patch + +* Tue Mar 20 2018 Tom Stellard - 6.0.0-9 +- Prevent external projects from linking against both static and shared + libraries. rhbz#1558657 + +* Mon Mar 19 2018 Tom Stellard - 6.0.0-8 +- Backport r327651 from trunk rhbz#1554349 + +* Fri Mar 16 2018 Tom Stellard - 6.0.0-7 +- Filter out cxxflags and cflags from llvm-config that aren't supported by clang +- rhbz#1556980 + +* Wed Mar 14 2018 Tom Stellard - 6.0.0-6 +- Enable symbol versioning in libLLVM.so + +* Wed Mar 14 2018 Tom Stellard - 6.0.0-5 +- Stop statically linking libstdc++. This is no longer required by Steam + client, but the steam installer still needs a work-around which should + be handled in the steam package. +* Wed Mar 14 2018 Tom Stellard - 6.0.0-4 +- s/make check/ninja check/ + +* Fri Mar 09 2018 Tom Stellard - 6.0.0-3 +- Backport fix for compile time regression on rust rhbz#1552915 + +* Thu Mar 08 2018 Tom Stellard - 6.0.0-2 +- Build with Ninja: This reduces RPM build time on a 6-core x86_64 builder + from 82 min to 52 min. + +* Thu Mar 08 2018 Tom Stellard - 6.0.0-1 +- 6.0.0 Release + +* Thu Mar 08 2018 Tom Stellard - 6.0.0-0.5.rc2 +- Reduce debuginfo size on i686 to avoid OOM errors during linking + +* Fri Feb 09 2018 Tom Stellard - 6.0.0-0.4.rc2 +- 6.0.1 rc2 + +* Fri Feb 09 2018 Igor Gnatenko - 6.0.0-0.3.rc1 +- Escape macros in %%changelog + +* Thu Feb 08 2018 Fedora Release Engineering - 6.0.0-0.2.rc1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Fri Jan 19 2018 Tom Stellard - 6.0.0-0.1.rc1 +- 6.0.1 rc1 + +* Tue Dec 19 2017 Tom Stellard - 5.0.1-1 +- 5.0.1 Release + +* Mon Nov 20 2017 Tom Stellard - 5.0.0-5 +- Backport debuginfo fix for rust + +* Fri Nov 03 2017 Tom Stellard - 5.0.0-4 +- Reduce debuginfo size for ARM + +* Tue Oct 10 2017 Tom Stellard - 5.0.0-2 +- Reduce memory usage on ARM by disabling debuginfo and some non-ARM targets. + +* Mon Sep 25 2017 Tom Stellard - 5.0.0-1 +- 5.0.0 Release + +* Mon Sep 18 2017 Tom Stellard - 4.0.1-6 +- Add Requires: libedit-devel for llvm-devel + +* Fri Sep 08 2017 Tom Stellard - 4.0.1-5 +- Enable libedit backend for LineEditor API + +* Fri Aug 25 2017 Tom Stellard - 4.0.1-4 +- Enable extra functionality when run the LLVM JIT under valgrind. + +* Thu Aug 03 2017 Fedora Release Engineering - 4.0.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 4.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Jun 21 2017 Tom Stellard - 4.0.1-1 +- 4.0.1 Release + +* Thu Jun 15 2017 Tom Stellard - 4.0.0-6 +- Install llvm utils + +* Thu Jun 08 2017 Tom Stellard - 4.0.0-5 +- Fix docs-llvm-man target + +* Mon May 01 2017 Tom Stellard - 4.0.0-4 +- Make cmake files no longer depend on static libs (rhbz 1388200) + +* Tue Apr 18 2017 Josh Stone - 4.0.0-3 +- Fix computeKnownBits for ARMISD::CMOV (rust-lang/llvm#67) + +* Mon Apr 03 2017 Tom Stellard - 4.0.0-2 +- Simplify spec with rpm macros. + +* Thu Mar 23 2017 Tom Stellard - 4.0.0-1 +- LLVM 4.0.0 Final Release + +* Wed Mar 22 2017 tstellar@redhat.com - 3.9.1-6 +- Fix %%postun sep for -devel package. + +* Mon Mar 13 2017 Tom Stellard - 3.9.1-5 +- Disable failing tests on ARM. + +* Sun Mar 12 2017 Peter Robinson 3.9.1-4 +- Fix missing mask on relocation for aarch64 (rhbz 1429050) + +* Wed Mar 01 2017 Dave Airlie - 3.9.1-3 +- revert upstream radeonsi breaking change. + +* Thu Feb 23 2017 Josh Stone - 3.9.1-2 +- disable sphinx warnings-as-errors + +* Fri Feb 10 2017 Orion Poplawski - 3.9.1-1 +- llvm 3.9.1 + +* Fri Feb 10 2017 Fedora Release Engineering - 3.9.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Nov 29 2016 Josh Stone - 3.9.0-7 +- Apply backports from rust-lang/llvm#55, #57 + +* Tue Nov 01 2016 Dave Airlie - 3.9.0-5 +- apply the patch from -4 + +* Wed Oct 26 2016 Dave Airlie - 3.9.0-4 +- add fix for lldb out-of-tree build + +* Mon Oct 17 2016 Josh Stone - 3.9.0-3 +- Apply backports from rust-lang/llvm#47, #48, #53, #54 + +* Sat Oct 15 2016 Josh Stone - 3.9.0-2 +- Apply an InstCombine backport via rust-lang/llvm#51 + +* Wed Sep 07 2016 Dave Airlie - 3.9.0-1 +- llvm 3.9.0 +- upstream moved where cmake files are packaged. +- upstream dropped CppBackend + +* Wed Jul 13 2016 Adam Jackson - 3.8.1-1 +- llvm 3.8.1 +- Add mips target +- Fix some shared library mispackaging + +* Tue Jun 07 2016 Jan Vcelak - 3.8.0-2 +- fix color support detection on terminal + +* Thu Mar 10 2016 Dave Airlie 3.8.0-1 +- llvm 3.8.0 release + +* Wed Mar 09 2016 Dan Horák 3.8.0-0.3 +- install back memory consumption workaround for s390 + +* Thu Mar 03 2016 Dave Airlie 3.8.0-0.2 +- llvm 3.8.0 rc3 release + +* Fri Feb 19 2016 Dave Airlie 3.8.0-0.1 +- llvm 3.8.0 rc2 release + +* Tue Feb 16 2016 Dan Horák 3.7.1-7 +- recognize s390 as SystemZ when configuring build + +* Sat Feb 13 2016 Dave Airlie 3.7.1-6 +- export C++ API for mesa. + +* Sat Feb 13 2016 Dave Airlie 3.7.1-5 +- reintroduce llvm-static, clang needs it currently. + +* Fri Feb 12 2016 Dave Airlie 3.7.1-4 +- jump back to single llvm library, the split libs aren't working very well. + +* Fri Feb 05 2016 Dave Airlie 3.7.1-3 +- add missing obsoletes (#1303497) + +* Thu Feb 04 2016 Fedora Release Engineering - 3.7.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Thu Jan 07 2016 Jan Vcelak 3.7.1-1 +- new upstream release +- enable gold linker + +* Wed Nov 04 2015 Jan Vcelak 3.7.0-100 +- fix Requires for subpackages on the main package + +* Tue Oct 06 2015 Jan Vcelak 3.7.0-100 +- initial version using cmake build system diff --git a/gating.yaml b/gating.yaml index 30b98a7..f0c9afb 100644 --- a/gating.yaml +++ b/gating.yaml @@ -13,7 +13,7 @@ rules: --- !Policy product_versions: # The version number here should match the current rawhide release. - - fedora-43 + - fedora-44 decision_contexts: - bodhi_update_push_stable - bodhi_update_push_stable_critpath diff --git a/llvm.spec b/llvm.spec index 90a1a6e..5849ed1 100644 --- a/llvm.spec +++ b/llvm.spec @@ -1,9 +1,9 @@ #region globals #region version -%global maj_ver 20 +%global maj_ver 21 %global min_ver 1 -%global patch_ver 8 -#global rc_ver 3 +%global patch_ver 3 +#global rc_ver rc3 %bcond_with snapshot_build %if %{with snapshot_build} @@ -24,12 +24,12 @@ %bcond_with compat_build # Bundle compat libraries for a previous LLVM version, as part of llvm-libs and # clang-libs. Used on RHEL. -%bcond_with bundle_compat_lib +%bcond_without bundle_compat_lib %bcond_without check %if %{with bundle_compat_lib} -%global compat_maj_ver 19 -%global compat_ver %{compat_maj_ver}.1.7 +%global compat_maj_ver 20 +%global compat_ver %{compat_maj_ver}.1.8 %endif # Compat builds do not include python-lit @@ -42,7 +42,7 @@ %bcond_without lldb %ifarch ppc64le -%if %{defined rhel} && 0%{?rhel} < 10 && %{maj_ver} >= 21 +%if %{defined rhel} && 0%{?rhel} < 10 # RHEL <= 9 use the IBM long double format, which is not supported by libc. # Since LLVM 21, parts of libc are required in order to build offload. %bcond_with offload @@ -56,7 +56,9 @@ %bcond_without offload %endif -%if %{without compat_build} && 0%{?fedora} >= 41 +# MLIR version 22 started to require nanobind >= 2.9, which is only available +# on Fedora >= 44. +%if %{without compat_build} && ((%{maj_ver} >= 22 && 0%{?fedora} >= 44) || (%{maj_ver} < 22 && 0%{?fedora} >= 41)) %ifarch %{ix86} %bcond_with mlir %else @@ -98,7 +100,7 @@ %ifarch %{ix86} %bcond_with pgo %else -%if 0%{?fedora} >= 43 || (0%{?rhel} >= 9 && %{maj_ver} >= 21) +%if 0%{?fedora} >= 43 || 0%{?rhel} >= 9 %bcond_without pgo %else %bcond_with pgo @@ -170,18 +172,20 @@ # https://bugzilla.redhat.com/show_bug.cgi?id=2158587 %undefine _include_frame_pointers +# Opt out of https://fedoraproject.org/wiki/Changes/StaticLibraryPreserveDebuginfo +# Debuginfo for LLVM static libraries is huge. +%undefine _preserve_static_debuginfo +# Also make sure find-debuginfo does not waste time on these archives. +# https://bugzilla.redhat.com/show_bug.cgi?id=2390105 +%if 0%{?fedora} >= 43 +%define _find_debuginfo_opts --no-ar-files +%endif + # Suffixless tarball name (essentially: basename -s .tar.xz llvm-project-17.0.6.src.tar.xz) %if %{with snapshot_build} %global src_tarball_dir llvm-project-%{llvm_snapshot_git_revision} %else -%global src_tarball_dir llvm-project-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-rc%{rc_ver}}.src -%endif - -%global has_crtobjs 1 -%if %{maj_ver} < 21 -%ifarch s390x -%global has_crtobjs 0 -%endif +%global src_tarball_dir llvm-project-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-%{rc_ver}}.src %endif # LLD uses "fast" as the algortithm for generating build-id @@ -315,8 +319,12 @@ #region packages #region main package Name: %{pkg_name_llvm} -Version: %{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:~rc%{rc_ver}}%{?llvm_snapshot_version_suffix:~%{llvm_snapshot_version_suffix}} -Release: 3%{?dist} +Version: %{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:~%{rc_ver}}%{?llvm_snapshot_version_suffix:~%{llvm_snapshot_version_suffix}} +%if 0%{?rhel} == 8 +Release: 1%{?dist} +%else +Release: %autorelease +%endif Summary: The Low Level Virtual Machine License: Apache-2.0 WITH LLVM-exception OR NCSA @@ -325,8 +333,8 @@ URL: http://llvm.org %if %{with snapshot_build} Source0: https://github.com/llvm/llvm-project/archive/%{llvm_snapshot_git_revision}.tar.gz %else -Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-rc%{rc_ver}}/%{src_tarball_dir}.tar.xz -Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-rc%{rc_ver}}/%{src_tarball_dir}.tar.xz.sig +Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-%{rc_ver}}/%{src_tarball_dir}.tar.xz +Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-%{rc_ver}}/%{src_tarball_dir}.tar.xz.sig %endif Source6: release-keys.asc @@ -345,6 +353,9 @@ Source3001: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{com Source1000: version.spec.inc %endif +# Only used on RHEL-8, where rpmautospec is not available. +Source1001: changelog + # We've established the habit of numbering patches the following way: # # 0-499: All patches that are unconditionally applied @@ -386,7 +397,6 @@ Patch104: 0001-Driver-Give-devtoolset-path-precedence-over-Installe.patch # Fix LLVMConfig.cmake when symlinks are used. # (https://github.com/llvm/llvm-project/pull/124743 landed in LLVM 21) -Patch1902: 0001-cmake-Resolve-symlink-when-finding-install-prefix.patch Patch2003: 0001-cmake-Resolve-symlink-when-finding-install-prefix.patch #region LLD patches @@ -394,7 +404,8 @@ Patch106: 0001-19-Always-build-shared-libs-for-LLD.patch #endregion LLD patches #region polly patches -Patch107: 0001-20-polly-shared-libs.patch +Patch2102: 0001-20-polly-shared-libs.patch +Patch2202: 0001-22-polly-shared-libs.patch #endregion polly patches #region RHEL patches @@ -402,22 +413,26 @@ Patch107: 0001-20-polly-shared-libs.patch Patch501: 0001-Fix-page-size-constant-on-aarch64-and-ppc64le.patch #endregion RHEL patches -# Fix an isel error triggered by Rust 1.85 on s390x -# https://github.com/llvm/llvm-project/issues/124001 -Patch1901: 0001-SystemZ-Fix-ICE-with-i128-i64-uaddo-carry-chain.patch - # Fix a pgo miscompilation triggered by building Rust 1.87 with pgo on ppc64le. # https://github.com/llvm/llvm-project/issues/138208 Patch2004: 0001-CodeGenPrepare-Make-sure-instruction-get-from-SunkAd.patch +# Related CGP fix for domination, rhbz#2388223 +Patch2008: 0001-CGP-Bail-out-if-Base-Scaled-Reg-does-not-dominate-in.patch # Fix Power9/Power10 crbit spilling # https://github.com/llvm/llvm-project/pull/146424 -Patch108: 21-146424.patch +Patch2007: 21-146424.patch # Fix for highway package build on ppc64le Patch2005: 0001-PowerPC-Fix-handling-of-undefs-in-the-PPC-isSplatShu.patch Patch2006: 0001-Add-REQUIRES-asserts-to-test-added-in-145149-because.patch +# Fix for offload builds: The DeviceRTL libraries target device code and +# don't support the mtls-dialect flag, so we need to patch the clang driver +# to ignore it for these targets. +Patch2101: 0001-clang-Add-a-hack-to-fix-the-offload-build-with-the-m.patch +Patch2201: 0001-clang-Add-a-hack-to-fix-the-offload-build-with-the-m.patch + %if 0%{?rhel} == 8 %global python3_pkgversion 3.12 %global __python3 /usr/bin/python3.12 @@ -444,9 +459,15 @@ BuildRequires: libffi-devel BuildRequires: ncurses-devel %if %{with pgo} +%if %{defined host_clang_maj_ver} +BuildRequires: lld(major) = %{host_clang_maj_ver} +BuildRequires: compiler-rt(major) = %{host_clang_maj_ver} +BuildRequires: llvm(major) = %{host_clang_maj_ver} +%else BuildRequires: lld BuildRequires: compiler-rt BuildRequires: llvm +%endif %if 0%{run_pgo_perf_comparison} BuildRequires: llvm-test-suite @@ -494,8 +515,8 @@ BuildRequires: libedit-devel %endif # We need python3-devel for %%py3_shebang_fix BuildRequires: python%{python3_pkgversion}-devel -BuildRequires: python%{python3_pkgversion}-setuptools %if 0%{?rhel} == 8 +BuildRequires: python%{python3_pkgversion}-setuptools BuildRequires: python%{python3_pkgversion}-rpm-macros %endif @@ -591,6 +612,9 @@ lit is a tool used by the LLVM project for executing its test suites. Summary: Filesystem package that owns the versioned llvm prefix # Was renamed immediately after introduction. Obsoletes: %{pkg_name_llvm}-resource-filesystem < 20 +%if %{with compat_build} +Conflicts: llvm-filesystem < %{maj_ver}.99 +%endif %description -n %{pkg_name_llvm}-filesystem This packages owns the versioned llvm prefix directory: $libdir/llvm$version @@ -757,6 +781,9 @@ Development header files for clang. %package -n %{pkg_name_clang}-resource-filesystem Summary: Filesystem package that owns the clang resource directory Provides: clang-resource-filesystem(major) = %{maj_ver} +%if %{with compat_build} +Conflicts: clang-resource-filesystem < %{maj_ver}.99 +%endif %description -n %{pkg_name_clang}-resource-filesystem This package owns the clang resouce directory: $libdir/clang/$version/ @@ -907,9 +934,9 @@ Shared libraries for LLD. %if 0%{?rhel} %package -n %{pkg_name_llvm}-toolset Summary: Package that installs llvm-toolset -Requires: clang = %{version}-%{release} -Requires: llvm = %{version}-%{release} -Requires: lld = %{version}-%{release} +Requires: %{pkg_name_clang} = %{version}-%{release} +Requires: %{pkg_name_llvm} = %{version}-%{release} +Requires: %{pkg_name_lld} = %{version}-%{release} %description -n %{pkg_name_llvm}-toolset This is the main package for llvm-toolset. @@ -943,7 +970,6 @@ The package contains header files for the LLDB debugger. %if %{without compat_build} %package -n python%{python3_pkgversion}-lldb -%{?python_provide:%python_provide python%{python3_pkgversion}-lldb} Summary: Python module for LLDB Requires: %{pkg_name_lldb}%{?_isa} = %{version}-%{release} @@ -990,7 +1016,6 @@ Requires: %{pkg_name_mlir}-static%{?_isa} = %{version}-%{release} MLIR development files. %package -n python%{python3_pkgversion}-mlir -%{?python_provide:%python_provide python%{python3_pkgversion}-mlir} Summary: MLIR python bindings Requires: python%{python3_pkgversion} @@ -1209,6 +1234,17 @@ sed -i 's/LLDB_ENABLE_PYTHON/TRUE/' lldb/docs/CMakeLists.txt #endregion prep +#region python buildrequires +%if %{with python_lit} +%if 0%{?rhel} != 8 +%generate_buildrequires + +cd llvm/utils/lit +%pyproject_buildrequires +%endif +%endif +#endregion python buildrequires + #region build %build # TODO(kkleine): In clang we had this %ifarch s390 s390x aarch64 %ix86 ppc64le @@ -1301,7 +1337,11 @@ OLD_CWD="$PWD" #region LLVM lit %if %{with python_lit} pushd utils/lit +%if 0%{?rhel} == 8 %py3_build +%else +%pyproject_wheel +%endif popd %endif #endregion LLVM lit @@ -1316,7 +1356,6 @@ popd # Any ABI-affecting flags should be in here. %global cmake_common_args \\\ -DCMAKE_BUILD_TYPE=RelWithDebInfo \\\ - -DLLVM_ENABLE_EH=ON \\\ -DLLVM_ENABLE_RTTI=ON \\\ -DLLVM_USE_PERF=ON \\\ -DLLVM_TARGETS_TO_BUILD=%{targets_to_build} \\\ @@ -1326,6 +1365,14 @@ popd -DCLANG_LINK_CLANG_DYLIB=ON \\\ -DLLVM_ENABLE_FFI:BOOL=ON +%if %{maj_ver} >= 22 +%global cmake_common_args %{cmake_common_args} \\\ + -DLLVM_ENABLE_EH=OFF +%else +%global cmake_common_args %{cmake_common_args} \\\ + -DLLVM_ENABLE_EH=ON +%endif + %global cmake_config_args %{cmake_common_args} #region clang options @@ -1462,6 +1509,26 @@ popd %global cmake_config_args %{cmake_config_args} \\\ -DOPENMP_INSTALL_LIBDIR=%{unprefixed_libdir} \\\ -DLIBOMP_INSTALL_ALIASES=OFF + +%if %{maj_ver} >= 22 && %{with offload} +# We reset the cxxflags to "" here because this is compiling for a GPU +# target, where our cflags are either questionable or actively wrong. +%global cmake_config_args %{cmake_config_args} \\\ + -DLLVM_RUNTIME_TARGETS='default;amdgcn-amd-amdhsa;nvptx64-nvidia-cuda' \\\ + -DRUNTIMES_nvptx64-nvidia-cuda_LLVM_ENABLE_RUNTIMES=openmp \\\ + -DRUNTIMES_amdgcn-amd-amdhsa_LLVM_ENABLE_RUNTIMES=openmp \\\ + -DRUNTIMES_amdgcn-amd-amdhsa_CMAKE_CXX_FLAGS="" \\\ + -DRUNTIMES_nvptx64-nvidia-cuda_CMAKE_CXX_FLAGS="" + +%if 0%{?__isa_bits} == 64 +# The following shouldn't be required, but due to a bug, we have to be +# explicit about LLVM_LIBDIR_SUFFIX for nvptx64-nvidia-cuda. +# TODO: Remove this after fixing +# https://github.com/llvm/llvm-project/issues/159762 +%global cmake_config_args %{cmake_config_args} \\\ + -DRUNTIMES_nvptx64-nvidia-cuda_LLVM_LIBDIR_SUFFIX=64 +%endif +%endif #endregion openmp options #region polly options @@ -1598,6 +1665,14 @@ fi %global cmake_config_args_instrumented %{cmake_config_args_instrumented} \\\ -DLLVM_VP_COUNTERS_PER_SITE=8 +%if %{defined host_clang_maj_ver} +%global cmake_config_args_instrumented %{cmake_config_args_instrumented} \\\ + -DLLVM_PROFDATA=%{_bindir}/llvm-profdata-%{host_clang_maj_ver} +%else +%global cmake_config_args_instrumented %{cmake_config_args_instrumented} \\\ + -DLLVM_PROFDATA=%{_bindir}/llvm-profdata +%endif + # TODO(kkleine): Should we see warnings like: # "function control flow change detected (hash mismatch)" # then read https://issues.chromium.org/issues/40633598 again. @@ -1607,26 +1682,15 @@ fi %cmake_build --target libclang-cpp.so %cmake_build --target clang %cmake_build --target lld -%cmake_build --target llvm-profdata %cmake_build --target llvm-ar %cmake_build --target llvm-ranlib -%cmake_build --target llvm-cxxfilt #endregion Instrument LLVM #region Perf training -# Without these exports the function count is ~160 and with them it is ~200,000. -export LD_LIBRARY_PATH="%{builddir_instrumented}/%{_lib}:%{builddir_instrumented}/lib:$OLD_LD_LIBRARY_PATH" -export PATH="%{builddir_instrumented}/bin:$OLD_PATH" - %cmake_build --target generate-profdata -# Use the newly compiled llvm-profdata to avoid profile version mismatches like: -# "raw profile version mismatch: Profile uses raw profile format version = 10; expected version = 9" -%global llvm_profdata_bin %{builddir_instrumented}/bin/llvm-profdata -%global llvm_cxxfilt_bin %{builddir_instrumented}/bin/llvm-cxxfilt - # Show top 10 functions in the profile -%llvm_profdata_bin show --topn=10 %{builddir_instrumented}/tools/clang/utils/perf-training/clang.profdata | %llvm_cxxfilt_bin +llvm-profdata show --topn=10 %{builddir_instrumented}/tools/clang/utils/perf-training/clang.profdata | llvm-cxxfilt cp %{builddir_instrumented}/tools/clang/utils/perf-training/clang.profdata $RPM_BUILD_DIR/result.profdata @@ -1773,6 +1837,13 @@ deactivate cd .. %if %{with bundle_compat_lib} + +%if %{compat_maj_ver} >= 22 +%global compat_lib_cmake_args -DLLVM_ENABLE_EH=OFF +%else +%global compat_lib_cmake_args -DLLVM_ENABLE_EH=ON +%endif + # MIPS and Arm targets were disabled in LLVM 20, but we still need them # enabled for the compat libraries. %cmake -S ../llvm-project-%{compat_ver}.src/llvm -B ../llvm-compat-libs -G Ninja \ @@ -1782,10 +1853,9 @@ cd .. -DLLVM_INCLUDE_BENCHMARKS=OFF \ -DLLVM_INCLUDE_TESTS=OFF \ %{cmake_common_args} \ -%if %{compat_maj_ver} <= 19 - -DLLVM_TARGETS_TO_BUILD="$(echo %{targets_to_build});Mips;ARM" \ -%endif - %{nil} + %{compat_lib_cmake_args} + + %ninja_build -C ../llvm-compat-libs LLVM %ninja_build -C ../llvm-compat-libs libclang.so @@ -1804,7 +1874,11 @@ pushd llvm %if %{with python_lit} pushd utils/lit +%if 0%{?rhel} == 8 %py3_install +%else +%pyproject_install +%endif # Strip out #!/usr/bin/env python sed -i -e '1{\@^#!/usr/bin/env python@d}' %{buildroot}%{python3_sitelib}/lit/*.py @@ -2175,6 +2249,11 @@ install -m 0755 ../llvm-compat-libs/lib/liblldb.so.%{compat_maj_ver}* %{buildroo # TODO(kkleine): Instead of deleting test files we should mark them as expected # to fail. See https://llvm.org/docs/CommandGuide/lit.html#cmdoption-lit-xfail +# Increase open file limit while running tests. +if [[ $(ulimit -n) -lt 10000 ]]; then + ulimit -n 10000 +fi + %ifarch ppc64le # TODO: Re-enable when ld.gold fixed its internal error. rm llvm/test/tools/gold/PowerPC/mtriple.ll @@ -2194,6 +2273,10 @@ function reset_test_opts() { # See https://llvm.org/docs/CommandGuide/lit.html#general-options export LIT_OPTS="-vv --time-tests" + # --timeout needs psutil package, so disable it on RHEL 8. + %if %{undefined rhel} || 0%{?rhel} > 8 + export LIT_OPTS="$LIT_OPTS --timeout=600" + %endif # Set to mark tests as expected to fail. # See https://llvm.org/docs/CommandGuide/lit.html#cmdoption-lit-xfail @@ -2339,32 +2422,11 @@ test_list_filter_out+=("libomp :: worksharing/for/omp_collapse_many_GTGEGT_int.c test_list_filter_out+=("libomp :: worksharing/for/omp_collapse_many_LTLEGE_int.c") test_list_filter_out+=("libomp :: worksharing/for/omp_collapse_one_int.c") -%if %{maj_ver} < 21 -# The following test is flaky and we'll filter it out -test_list_filter_out+=("libomp :: parallel/bug63197.c") -test_list_filter_out+=("libomp :: tasking/issue-69733.c") -test_list_filter_out+=("libarcher :: races/task-taskgroup-unrelated.c") - -# The following tests have been failing intermittently. -# Issue upstream: https://github.com/llvm/llvm-project/issues/127796 -test_list_filter_out+=("libarcher :: races/task-two.c") -test_list_filter_out+=("libarcher :: races/lock-nested-unrelated.c") -%endif - %ifarch s390x test_list_filter_out+=("libomp :: flush/omp_flush.c") test_list_filter_out+=("libomp :: worksharing/for/omp_for_schedule_guided.c") %endif -%if %{maj_ver} < 21 -%ifarch aarch64 s390x -# The following test has been failing intermittently on aarch64 and s390x. -# Re-enable it after https://github.com/llvm/llvm-project/issues/117773 -# gets fixed. -test_list_filter_out+=("libarcher :: races/taskwait-depend.c") -%endif -%endif - # The following tests seem pass on ppc64le and x86_64 and aarch64 only: %ifnarch ppc64le x86_64 s390x aarch64 # Passes on ppc64le: @@ -2466,7 +2528,6 @@ export LIT_XFAIL="$LIT_XFAIL;offloading/thread_state_2.c" adjust_lit_filter_out test_list_filter_out -%if %{maj_ver} >= 21 # This allows openmp tests to be re-run 4 times. Once they pass # after being re-run, they are marked as FLAKYPASS. # See https://github.com/llvm/llvm-project/pull/141851 for the @@ -2477,7 +2538,6 @@ adjust_lit_filter_out test_list_filter_out # we can see the exact number of attempts the tests needed # to pass. And then we can adapt this number. export LIT_OPTS="$LIT_OPTS --max-retries-per-test=4" -%endif %if 0%{?rhel} # libomp tests are often very slow on s390x brew builders @@ -2767,6 +2827,7 @@ fi llvm-mc llvm-mca llvm-ml + llvm-ml64 llvm-modextract llvm-mt llvm-nm @@ -2809,9 +2870,11 @@ fi yaml2obj }} -%if %{maj_ver} >= 21 +%if %{maj_ver} >= 22 %{expand_bins %{expand: - llvm-ml64 + llvm-ir2vec + llvm-offload-wrapper + llvm-offload-binary }} %endif @@ -2873,6 +2936,13 @@ fi tblgen }} +%if %{maj_ver} >= 22 +%{expand_mans %{expand: + llvm-ir2vec + llvm-offload-binary +}} +%endif + %expand_datas opt-viewer %files -n %{pkg_name_llvm}-libs @@ -2940,15 +3010,11 @@ fi lli-child-target llvm-isel-fuzzer llvm-opt-fuzzer -}} -%if %{maj_ver} >= 21 -%{expand_bins %{expand: llvm-test-mustache-spec }} %{expand_mans %{expand: llvm-test-mustache-spec }} -%endif %files -n %{pkg_name_llvm}-googletest %license llvm/LICENSE.TXT @@ -3097,12 +3163,8 @@ fi modularize clang-format-diff run-clang-tidy -}} -%if %{maj_ver} >= 21 -%{expand_bins %{expand: offload-arch }} -%endif %if %{without compat_build} %{_emacs_sitestartdir}/clang-format.el @@ -3150,11 +3212,8 @@ fi # Files that appear on all targets %{_prefix}/lib/clang/%{maj_ver}/lib/%{compiler_rt_triple}/libclang_rt.* - -%if %{has_crtobjs} %{_prefix}/lib/clang/%{maj_ver}/lib/%{compiler_rt_triple}/clang_rt.crtbegin.o %{_prefix}/lib/clang/%{maj_ver}/lib/%{compiler_rt_triple}/clang_rt.crtend.o -%endif %ifnarch %{ix86} s390x riscv64 %{_prefix}/lib/clang/%{maj_ver}/lib/%{compiler_rt_triple}/liborc_rt.a @@ -3195,20 +3254,12 @@ fi libLLVMOffload.so }} -%if %{maj_ver} < 21 -%{expand_libs %{expand: - libomptarget.devicertl.a - libomptarget-amdgpu*.bc - libomptarget-nvptx*.bc -}} -%else %{expand_libs %{expand: amdgcn-amd-amdhsa/libompdevice.a amdgcn-amd-amdhsa/libomptarget-amdgpu.bc nvptx64-nvidia-cuda/libompdevice.a nvptx64-nvidia-cuda/libomptarget-nvptx.bc }} -%endif %expand_includes offload %endif @@ -3272,6 +3323,11 @@ fi lldb-instr lldb-server }} +%if %{maj_ver} >= 22 +%{expand_bins %{expand: + lldb-mcp +}} +%endif # Usually, *.so symlinks are kept in devel subpackages. However, the python # bindings depend on this symlink at runtime. %{expand_libs %{expand: @@ -3286,6 +3342,12 @@ fi %files -n %{pkg_name_lldb}-devel %expand_includes lldb +%if %{maj_ver} >= 22 +%{expand_bins %{expand: + lldb-tblgen + yaml2macho-core +}} +%endif %if %{without compat_build} %files -n python%{python3_pkgversion}-lldb @@ -3441,776 +3503,6 @@ fi #endregion files -#region changelog %changelog -* Tue Jul 29 2025 Tom Stellard - 20.1.8-2 -- Backport fix for pgo optimized rust toolchain on ppc64le (rhbz#2382683) -- Backport fix for crbit spill miscompile on ppc64le power9 and power10 (rhbz#2383037) -- Backport fix for build of highway package on ppc64le (rhbz#2383182) - -* Wed Jul 09 2025 Nikita Popov - 20.1.8-1 -- Update to LLVM 20.1.8 - -* Fri Jun 20 2025 Kashyap Chamarthy - 20.1.7-2 -- Add riscv64 enablement bits; thanks: Songsong Zhang - (U2FsdGVkX1@gmail.com) and David Abdurachmanov (davidlt@rivosinc.com) - -* Thu Jun 19 2025 Nikita Popov - 20.1.7-1 -- Update to LLVM 20.1.7 - -* Tue Jun 17 2025 Nikita Popov - 20.1.6-10 -- Fix llvm-config alternatives handling (rhbz#2361779) - -* Mon Jun 16 2025 Nikita Popov - 20.1.6-9 -- Use libdir suffix in versioned prefix - -* Tue Jun 10 2025 Nikita Popov - 20.1.6-8 -- Invert symlink direction -- Fix i686 multilib installation (rhbz#2365079) - -* Thu Jun 05 2025 Timm Bäder - 20.1.6-7 -- Backport patch to fix rhbz#2363895 - -* Wed Jun 04 2025 Python Maint - 20.1.6-6 -- Rebuilt for Python 3.14 - -* Wed Jun 04 2025 Python Maint - 20.1.6-5 -- Bootstrap for Python 3.14 - -* Wed Jun 04 2025 Python Maint - 20.1.6-4 -- Rebuilt for Python 3.14 - -* Tue Jun 03 2025 Tulio Magno Quites Machado Filho - 20.1.6-3 -- Remove temporary changes on ppc64le - -* Tue Jun 03 2025 Python Maint - 20.1.6-2 -- Rebuilt for Python 3.14 - -* Fri May 30 2025 Nikita Popov - 20.1.6-1 -- Update to LLVM 20.1.6 - -* Mon May 26 2025 Konrad Kleine - 20.1.5-2 -- Build with PGO - -* Thu May 22 2025 Nikita Popov - 20.1.5-1 -- Update to LLVM 20.1.5 - -* Tue May 06 2025 Tom Stellard - 20.1.4-6 -- Fix build on ppc64le with glibc >= 2.42 - -* Tue May 06 2025 Nikita Popov - 20.1.4-5 -- Update to LLVM 20.1.4 - -* Sat Apr 26 2025 Tom Stellard - 20.1.3-2 -- Fix build with glibc >= 2.42 - -* Thu Apr 17 2025 Nikita Popov - 20.1.3-1 -- Update to LLVM 20.1.3 - -* Thu May 15 2025 Nikita Popov - 20.1.2-3 -- Update to LLVM 20.1.2 - -* Fri Apr 04 2025 Tom Stellard - 20.1.1-3 -- Drop ARM and Mips targets - -* Wed Mar 19 2025 Nikita Popov - 20.1.1-1 -- Update to LLVM 20.1.1 - -* Wed Mar 05 2025 Nikita Popov - 20.1.0-1 -- Update to LLVM 20.1.0 - -* Thu Feb 06 2025 Konrad Kleine - 19.1.7-2 -- Remove llvm 18 compat lib - -* Thu Jan 23 2025 Konrad Kleine - 19.1.7-1 -* Update to LLVM 19.1.7 (RHEL-57460) - -* Mon Dec 09 2024 Konrad Kleine - 19.1.5-2 -- Disable libomp tests on s390x RHEL entirely. - -* Wed Dec 04 2024 Konrad Kleine - 19.1.5-1 -- Update to 19.1.5 -- Enable LLVM_ENABLE_ZSTD (rhbz#2321848) -- Remove HTML documentation -- Add lldb man pages -- Fix profiling after a binutils NOTE change (rhbz#2322754) -- Install i386 config files on x86_64 - -* Sat Nov 09 2024 Konrad Kleine - 19.1.3-1 -- Update to 19.1.3 - -* Thu Aug 15 2024 Konrad Kleine - 18.1.8-3 -- Workaround for GFX11.5 export priority (RHEL-49517) - -* Thu Aug 08 2024 Konrad Kleine - 18.1.8-2 -- Remove llvm 17 compat lib - -* Tue Jul 16 2024 Konrad Kleine - 18.1.8-1 -- Update to LLVM 18.1.8 - -* Tue May 28 2024 Nikita Popov - 18.1.6-3 -- Fix use after free on ppc64le (rhbz#2283525) - -* Wed May 22 2024 Konrad Kleine - 18.1.6-2 -- Turn on build condition bundle_compat_lib by default - -* Tue May 21 2024 Konrad Kleine - 18.1.6-1 -- Update to 18.1.6 - -* Fri Feb 02 2024 Timm Bäder - 17.0.6-5 -- Backport a patch for RHEL-23638 - -* Mon Jan 08 2024 Timm Bäder - 17.0.6-4 -- Remove compat libs for real. - -* Thu Dec 14 2023 Timm Bäder - 17.0.6-3 -- Add back compat libs until all necessary packages have been rebuilt. - -* Fri Dec 08 2023 Timm Bäder - 17.0.6-2 -- Remove compat libs - -* Tue Dec 05 2023 Timm Bäder - 17.0.6-1 -- Update to 17.0.6 - -* Fri Oct 06 2023 Timm Bäder - 17.0.1-3 -- Add llvm-toolset files section back - -* Mon Oct 02 2023 Timm Bäder - 17.0.1-2 -- Rebuild with newer redhat-rpm-config - -* Tue Sep 26 2023 Timm Bäder - 17.0.1-1 -- Update to 17.0.1 - -* Fri Aug 04 2023 Tulio Magno Quites Machado Filho - 16.0.6-4 -- Re-add LDFLAGS to shared libraries - -* Thu Aug 03 2023 Tulio Magno Quites Machado Filho - 16.0.6-3 -- Fix rhbz #2226795 - -* Tue Aug 01 2023 Nikita Popov - 16.0.6-2 -- Fix CET support - -* Tue Jul 04 2023 Nikita Popov - 16.0.6-1 -- Update to LLVM 16.0.6 - -* Mon Jul 03 2023 Tulio Magno Quites Machado Filho - 16.0.1-4 -- Improve error messages for unsupported relocs on s390x (rhbz#2216906) -- Disable LLVM_UNREACHABLE_OPTIMIZE - -* Thu Jun 29 2023 Nikita Popov - 16.0.1-3 -- Use gcc-toolset-13-gdb for gdb-add-index - -* Fri May 05 2023 Nikita Popov - 16.0.1-2 -- Build with LTO - -* Fri Apr 14 2023 Nikita Popov - 16.0.1-1 -- Update to LLVM 16.0.1 - -* Fri Jan 13 2023 Konrad Kleine - 15.0.7-1 -- Update to LLVM 15.0.7 -- Remove workaround for rbhz#2048440 - -* Mon Dec 05 2022 Konrad Kleine - 15.0.6-2 -- Disabling LTO for now - -* Mon Dec 05 2022 Konrad Kleine - 15.0.6-1 -- Update to 15.0.6 - -* Mon Sep 26 2022 Konrad Kleine - 15.0.1-1 -- Update to 15.0.1 - -* Mon Sep 26 2022 Konrad Kleine - 15.0.0-3 -- Fixup: Produce toolset subpackage RPM - Related: rhbz#2118979 - -* Wed Sep 21 2022 Konrad Kleine - 15.0.0-2 -- Add toolset subpackage - Related: rhbz#2118979 - -* Fri Sep 16 2022 Konrad Kleine - 15.0.0-1 -- Update to 15.0.0 - -* Mon Jul 18 2022 Timm Bäder - 14.0.6-1 -- Update to 14.0.6 - -* Mon Jun 20 2022 Timm Bäder - 14.0.5-1 -- Update to 14.0.5 - -* Fri Apr 29 2022 Timm Bäder - 14.0.0-2 -- Remove llvm-cmake-devel package - -* Wed Apr 13 2022 Timm Bäder - 14.0.0-1 -- Update to 14.0.0 - -* Wed Feb 02 2022 Tom Stellard - 13.0.1-1 -- 13.0.1 Release - -* Wed Oct 06 2021 Timm Bäder - 13.0.0-1 -- 13.0.0 Release - -* Wed Aug 18 2021 DJ Delorie - 12.0.1-3 -- Rebuilt for libffi 3.4.2 SONAME transition. - Related: rhbz#1891914 - -* Mon Aug 09 2021 Mohan Boddu - 12.0.1-2 -- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags - Related: rhbz#1991688 - -* Mon Jul 12 2021 Tom Stellard - 12.0.1 -- 12.0.1 Release -- Remove llvm11 compat package - -* Wed Jul 07 2021 Tom Stellard - 12.0.0-6 -- Fix DTRACE_PROBE4() compilation failure - -* Tue Jul 06 2021 sguelton@redhat.com - 12.0.0-5 -- backport cba2552bfec1c9d8 - -* Wed Jun 16 2021 Tom Stellard - 12.0.0-4 -- Remove pandoc dependency - -* Sat May 01 2021 Tom Stellard - 12.0.0-3 -- Remove dependency on python3-recommonmark -- Resolves: rhbz#1928132 - -* Fri Apr 30 2021 Tom Stellard - 12.0.0-2 -- Enable rtti for compat library - -* Thu Apr 22 2021 Tom Stellard - 12.0.0-1 -- 12.0.0 Release - -* Thu Apr 22 2021 sguelton@redhat.com - 12.0.0-0.10.rc4 -- Patch test case for compatibility with llvm-test latout - -* Thu Apr 22 2021 sguelton@redhat.com - 12.0.0-0.7.rc3 -- LLVM 12.0.0 rc3 - -* Thu Apr 22 2021 Kalev Lember - 12.0.0-0.6.rc2 -- Add llvm-static(major) provides to the -static subpackage - -* Thu Apr 22 2021 sguelton@redhat.com - 12.0.0-0.4.rc2 -- Change CI working dir - -* Thu Apr 22 2021 sguelton@redhat.com - 12.0.0-0.3.rc2 -- 12.0.0-rc2 release - -* Thu Apr 22 2021 Dave Airlie - 12.0.0-0.2.rc1 -- Enable LLVM_USE_PERF to allow perf integration - -* Thu Apr 22 2021 Serge Guelton - 12.0.0-0.1.rc1 -- 12.0.0-rc1 release - -* Fri Apr 16 2021 Mohan Boddu - 11.1.0-0.4.rc2 -- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 - -* Mon Feb 01 2021 Serge Guelton - 11.1.0-0.3.rc2 -- rebuilt with some targets disabled - -* 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 - -* Sun Dec 20 2020 sguelton@redhat.com - 11.0.1-2.rc2 -- 11.0.1-rc2 release - -* Tue Dec 01 2020 sguelton@redhat.com - 11.0.1-1.rc1 -- 11.0.1-rc1 release - -* Sat Oct 31 2020 Jeff Law - 11.0.0-2 -- Fix missing #include for gcc-11 - -* Wed Oct 14 2020 Josh Stone - 11.0.0-1 -- Fix coreos-installer test crash on s390x (rhbz#1883457) - -* Mon Oct 12 2020 sguelton@redhat.com - 11.0.0-0.11 -- llvm 11.0.0 - final release - -* Thu Oct 08 2020 sguelton@redhat.com - 11.0.0-0.10.rc6 -- 11.0.0-rc6 - -* Fri Oct 02 2020 sguelton@redhat.com - 11.0.0-0.9.rc5 -- 11.0.0-rc5 Release - -* Sun Sep 27 2020 sguelton@redhat.com - 11.0.0-0.8.rc3 -- Fix NVR - -* Thu Sep 24 2020 sguelton@redhat.com - 11.0.0-0.2.rc3 -- Obsolete patch for rhbz#1862012 - -* Thu Sep 24 2020 sguelton@redhat.com - 11.0.0-0.1.rc3 -- 11.0.0-rc3 Release - -* Wed Sep 02 2020 sguelton@redhat.com - 11.0.0-0.7.rc2 -- Apply upstream patch for rhbz#1862012 - -* Tue Sep 01 2020 sguelton@redhat.com - 11.0.0-0.6.rc2 -- Fix source location - -* Fri Aug 21 2020 Tom Stellard - 11.0.0-0.5.rc2 -- 11.0.0-rc2 Release - -* Wed Aug 19 2020 Tom Stellard - 11.0.0-0.4.rc1 -- Fix regression-tests CI tests - -* Tue Aug 18 2020 Tom Stellard - 11.0.0-0.3.rc1 -- Fix rust crash on ppc64le compiling firefox -- rhbz#1862012 - -* Tue Aug 11 2020 Tom Stellard - 11.0.0-0.2.rc1 -- Install update_cc_test_checks.py script - -* Thu Aug 06 2020 Tom Stellard - 11.0.0-0.1-rc1 -- LLVM 11.0.0-rc1 Release -- Make llvm-devel require llvm-static and llvm-test - -* Tue Aug 04 2020 Tom Stellard - 10.0.0-10 -- Backport upstream patch to fix build with -flto. -- Disable LTO on s390x to work-around unit test failures. - -* Sat Aug 01 2020 sguelton@redhat.com - 10.0.0-9 -- Fix update-alternative uninstall script - -* Sat Aug 01 2020 sguelton@redhat.com - 10.0.0-8 -- Fix gpg verification and update macro usage. - -* Sat Aug 01 2020 Fedora Release Engineering - 10.0.0-7 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 10.0.0-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild -* Thu Jun 11 2020 sguelton@redhat.com - 10.0.0-5 -- Make llvm-test.tar.gz creation reproducible. - -* Tue Jun 02 2020 sguelton@redhat.com - 10.0.0-4 -- Instruct cmake not to generate RPATH - -* Thu Apr 30 2020 Tom Stellard - 10.0.0-3 -- Install LLVMgold.so symlink in bfd-plugins directory - -* Tue Apr 07 2020 sguelton@redhat.com - 10.0.0-2 -- Do not package UpdateTestChecks tests in llvm-tests -- Apply upstream patch bab5908df to pass gating tests - -* Wed Mar 25 2020 sguelton@redhat.com - 10.0.0-1 -- 10.0.0 final - -* Mon Mar 23 2020 sguelton@redhat.com - 10.0.0-0.6.rc6 -- 10.0.0 rc6 - -* Thu Mar 19 2020 sguelton@redhat.com - 10.0.0-0.5.rc5 -- 10.0.0 rc5 - -* Sat Mar 14 2020 sguelton@redhat.com - 10.0.0-0.4.rc4 -- 10.0.0 rc4 - -* Thu Mar 05 2020 sguelton@redhat.com - 10.0.0-0.3.rc3 -- 10.0.0 rc3 - -* Fri Feb 28 2020 sguelton@redhat.com - 10.0.0-0.2.rc2 -- Remove *_finite support, see rhbz#1803203 - -* Fri Feb 14 2020 sguelton@redhat.com - 10.0.0-0.1.rc2 -- 10.0.0 rc2 - -* Fri Jan 31 2020 sguelton@redhat.com - 10.0.0-0.1.rc1 -- 10.0.0 rc1 - -* Wed Jan 29 2020 Fedora Release Engineering - 9.0.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Tue Jan 21 2020 Tom Stellard - 9.0.1-4 -- Rebuild after previous build failed to strip binaries - -* Fri Jan 17 2020 Tom Stellard - 9.0.1-3 -- Add explicit Requires from sub-packages to llvm-libs - -* Fri Jan 10 2020 Tom Stellard - 9.0.1-2 -- Fix crash with kernel bpf self-tests - -* Thu Dec 19 2019 tstellar@redhat.com - 9.0.1-1 -- 9.0.1 Release - -* Mon Nov 25 2019 sguelton@redhat.com - 9.0.0-4 -- Activate AVR on all architectures - -* Mon Sep 30 2019 Tom Stellard - 9.0.0-3 -- Build libLLVM.so first to avoid OOM errors - -* Fri Sep 27 2019 Tom Stellard - 9.0.0-2 -- Remove unneeded BuildRequires: libstdc++-static - -* Thu Sep 19 2019 sguelton@redhat.com - 9.0.0-1 -- 9.0.0 Release - -* Wed Sep 18 2019 sguelton@redhat.com - 9.0.0-0.5.rc3 -- Support avr target, see rhbz#1718492 - -* Tue Sep 10 2019 Tom Stellard - 9.0.0-0.4.rc3 -- Split out test executables into their own export file - -* Fri Sep 06 2019 Tom Stellard - 9.0.0-0.3.rc3 -- Fix patch for splitting out static library exports - -* Fri Aug 30 2019 Tom Stellard - 9.0.0-0.2.rc3 -- 9.0.0-rc3 Release - -* Thu Aug 01 2019 Tom Stellard - 9.0.0-0.1.rc2 -- 9.0.0-rc2 Release - -* Tue Jul 30 2019 Tom Stellard - 8.0.0-9 -- Sync with llvm8.0 spec file - -* Thu Jul 25 2019 Fedora Release Engineering - 8.0.0-8.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Wed Jul 17 2019 Tom Stellard - 8.0.0-8 -- Add provides for the major version of sub-packages - -* Fri May 17 2019 sguelton@redhat.com - 8.0.0-7 -- Fix conflicts between llvm-static = 8 and llvm-dev < 8 around LLVMStaticExports.cmake - -* Wed Apr 24 2019 Tom Stellard - 8.0.0-6 -- Make sure we aren't passing -g on s390x - -* Sat Mar 30 2019 Tom Stellard - 8.0.0-5 -- Enable build rpath while keeping install rpath disabled - -* Wed Mar 27 2019 Tom Stellard - 8.0.0-4 -- Backport r351577 from trunk to fix ninja check failures - -* Tue Mar 26 2019 Tom Stellard - 8.0.0-3 -- Fix ninja check - -* Fri Mar 22 2019 Tom Stellard - 8.0.0-2 -- llvm-test fixes - -* Wed Mar 20 2019 sguelton@redhat.com - 8.0.0-1 -- 8.0.0 final - -* Fri Mar 15 2019 sguelton@redhat.com - 8.0.0-0.6.rc4 -- Activate all backends (rhbz#1689031) - -* Tue Mar 12 2019 sguelton@redhat.com - 8.0.0-0.5.rc4 -- 8.0.0 Release candidate 4 - -* Mon Mar 4 2019 sguelton@redhat.com - 8.0.0-0.4.rc3 -- Move some binaries to -test package, cleanup specfile - -* Mon Mar 4 2019 sguelton@redhat.com - 8.0.0-0.3.rc3 -- 8.0.0 Release candidate 3 - -* Fri Feb 22 2019 sguelton@redhat.com - 8.0.0-0.2.rc2 -- 8.0.0 Release candidate 2 - -* Sat Feb 9 2019 sguelton@redhat.com - 8.0.0-0.1.rc1 -- 8.0.0 Release candidate 1 - -* Fri Feb 01 2019 Fedora Release Engineering - 7.0.1-2.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Mon Jan 21 2019 Josh Stone - 7.0.1-2 -- Fix discriminators in metadata, rhbz#1668033 - -* Mon Dec 17 2018 sguelton@redhat.com - 7.0.1-1 -- 7.0.1 release - -* Tue Dec 04 2018 sguelton@redhat.com - 7.0.0-5 -- Ensure rpmlint passes on specfile - -* Sat Nov 17 2018 Tom Stellard - 7.0.0-4 -- Install testing libraries for unittests - -* Sat Oct 27 2018 Tom Stellard - 7.0.0-3 -- Fix running unittests as not-root user - -* Thu Sep 27 2018 Tom Stellard - 7.0.0-2 -- Fixes for llvm-test package: -- Add some missing Requires -- Add --threads option to run-lit-tests script -- Set PATH so lit can find tools like count, not, etc. -- Don't hardcode tools directory to /usr/lib64/llvm -- Fix typo in yaml-bench define -- Only print information about failing tests - -* Fri Sep 21 2018 Tom Stellard - 7.0.0-1 -- 7.0.0 Release - -* Thu Sep 13 2018 Tom Stellard - 7.0.0-0.15.rc3 -- Disable rpath on install LLVM and related sub-projects - -* Wed Sep 12 2018 Tom Stellard - 7.0.0-0.14.rc3 -- Remove rpath from executables and libraries - -* Tue Sep 11 2018 Tom Stellard - 7.0.0-0.13.rc3 -- Re-enable arm and aarch64 targets on x86_64 - -* Mon Sep 10 2018 Tom Stellard - 7.0.0-0.12.rc3 -- 7.0.0-rc3 Release - -* Fri Sep 07 2018 Tom Stellard - 7.0.0-0.11.rc2 -- Use python3 shebang for opt-viewewr scripts - -* Thu Aug 30 2018 Tom Stellard - 7.0.0-0.10.rc2 -- Drop all uses of python2 from lit tests - -* Thu Aug 30 2018 Tom Stellard - 7.0.0-0.9.rc2 -- Build the gold plugin on all supported architectures - -* Wed Aug 29 2018 Kevin Fenzi - 7.0.0-0.8.rc2 -- Re-enable debuginfo to avoid 25x size increase. - -* Tue Aug 28 2018 Tom Stellard - 7.0.0-0.7.rc2 -- 7.0.0-rc2 Release - -* Tue Aug 28 2018 Tom Stellard - 7.0.0-0.6.rc1 -- Guard valgrind usage with valgrind_arches macro - -* Thu Aug 23 2018 Tom Stellard - 7.0.0-0.5.rc1 -- Package lit tests and googletest sources. - -* Mon Aug 20 2018 Tom Stellard - 7.0.0-0.4.rc1 -- Re-enable AMDGPU target on ARM rhbz#1618922 - -* Mon Aug 13 2018 Tom Stellard - 7.0.0-0.3.rc1 -- Drop references to TestPlugin.so from cmake files - -* Fri Aug 10 2018 Tom Stellard - 7.0.0-0.2.rc1 -- Fixes for lit tests - -* Fri Aug 10 2018 Tom Stellard - 7.0.0-0.1.rc1 -- 7.0.0-rc1 Release -- Reduce number of enabled targets on all arches. -- Drop s390 detection patch, LLVM does not support s390 codegen. - -* Mon Aug 06 2018 Tom Stellard - 6.0.1-6 -- Backport some fixes needed by mesa and rust - -* Thu Jul 26 2018 Tom Stellard - 6.0.1-5 -- Move libLLVM-6.0.so to llvm6.0-libs. - -* Mon Jul 23 2018 Tom Stellard - 6.0.1-4 -- Rebuild because debuginfo stripping failed with the previous build - -* Fri Jul 13 2018 Tom Stellard - 6.0.1-3 -- Sync specfile with llvm6.0 package - -* Fri Jul 13 2018 Fedora Release Engineering - 6.0.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Mon Jun 25 2018 Tom Stellard - 6.0.1-1 -- 6.0.1 Release - -* Thu Jun 07 2018 Tom Stellard - 6.0.1-0.4.rc2 -- 6.0.1-rc2 - -* Wed Jun 06 2018 Tom Stellard - 6.0.1-0.3.rc1 -- Re-enable all targets to avoid breaking the ABI. - -* Mon Jun 04 2018 Tom Stellard - 6.0.1-0.2.rc1 -- Reduce the number of enabled targets based on the architecture - -* Thu May 10 2018 Tom Stellard - 6.0.1-0.1.rc1 -- 6.0.1 rc1 - -* Tue Mar 27 2018 Tom Stellard - 6.0.0-11 -- Re-enable arm tests that used to hang - -* Thu Mar 22 2018 Tom Stellard - 6.0.0-10 -- Fix testcase in backported patch - -* Tue Mar 20 2018 Tom Stellard - 6.0.0-9 -- Prevent external projects from linking against both static and shared - libraries. rhbz#1558657 - -* Mon Mar 19 2018 Tom Stellard - 6.0.0-8 -- Backport r327651 from trunk rhbz#1554349 - -* Fri Mar 16 2018 Tom Stellard - 6.0.0-7 -- Filter out cxxflags and cflags from llvm-config that aren't supported by clang -- rhbz#1556980 - -* Wed Mar 14 2018 Tom Stellard - 6.0.0-6 -- Enable symbol versioning in libLLVM.so - -* Wed Mar 14 2018 Tom Stellard - 6.0.0-5 -- Stop statically linking libstdc++. This is no longer required by Steam - client, but the steam installer still needs a work-around which should - be handled in the steam package. -* Wed Mar 14 2018 Tom Stellard - 6.0.0-4 -- s/make check/ninja check/ - -* Fri Mar 09 2018 Tom Stellard - 6.0.0-3 -- Backport fix for compile time regression on rust rhbz#1552915 - -* Thu Mar 08 2018 Tom Stellard - 6.0.0-2 -- Build with Ninja: This reduces RPM build time on a 6-core x86_64 builder - from 82 min to 52 min. - -* Thu Mar 08 2018 Tom Stellard - 6.0.0-1 -- 6.0.0 Release - -* Thu Mar 08 2018 Tom Stellard - 6.0.0-0.5.rc2 -- Reduce debuginfo size on i686 to avoid OOM errors during linking - -* Fri Feb 09 2018 Tom Stellard - 6.0.0-0.4.rc2 -- 6.0.1 rc2 - -* Fri Feb 09 2018 Igor Gnatenko - 6.0.0-0.3.rc1 -- Escape macros in %%changelog - -* Thu Feb 08 2018 Fedora Release Engineering - 6.0.0-0.2.rc1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Fri Jan 19 2018 Tom Stellard - 6.0.0-0.1.rc1 -- 6.0.1 rc1 - -* Tue Dec 19 2017 Tom Stellard - 5.0.1-1 -- 5.0.1 Release - -* Mon Nov 20 2017 Tom Stellard - 5.0.0-5 -- Backport debuginfo fix for rust - -* Fri Nov 03 2017 Tom Stellard - 5.0.0-4 -- Reduce debuginfo size for ARM - -* Tue Oct 10 2017 Tom Stellard - 5.0.0-2 -- Reduce memory usage on ARM by disabling debuginfo and some non-ARM targets. - -* Mon Sep 25 2017 Tom Stellard - 5.0.0-1 -- 5.0.0 Release - -* Mon Sep 18 2017 Tom Stellard - 4.0.1-6 -- Add Requires: libedit-devel for llvm-devel - -* Fri Sep 08 2017 Tom Stellard - 4.0.1-5 -- Enable libedit backend for LineEditor API - -* Fri Aug 25 2017 Tom Stellard - 4.0.1-4 -- Enable extra functionality when run the LLVM JIT under valgrind. - -* Thu Aug 03 2017 Fedora Release Engineering - 4.0.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 4.0.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Wed Jun 21 2017 Tom Stellard - 4.0.1-1 -- 4.0.1 Release - -* Thu Jun 15 2017 Tom Stellard - 4.0.0-6 -- Install llvm utils - -* Thu Jun 08 2017 Tom Stellard - 4.0.0-5 -- Fix docs-llvm-man target - -* Mon May 01 2017 Tom Stellard - 4.0.0-4 -- Make cmake files no longer depend on static libs (rhbz 1388200) - -* Tue Apr 18 2017 Josh Stone - 4.0.0-3 -- Fix computeKnownBits for ARMISD::CMOV (rust-lang/llvm#67) - -* Mon Apr 03 2017 Tom Stellard - 4.0.0-2 -- Simplify spec with rpm macros. - -* Thu Mar 23 2017 Tom Stellard - 4.0.0-1 -- LLVM 4.0.0 Final Release - -* Wed Mar 22 2017 tstellar@redhat.com - 3.9.1-6 -- Fix %%postun sep for -devel package. - -* Mon Mar 13 2017 Tom Stellard - 3.9.1-5 -- Disable failing tests on ARM. - -* Sun Mar 12 2017 Peter Robinson 3.9.1-4 -- Fix missing mask on relocation for aarch64 (rhbz 1429050) - -* Wed Mar 01 2017 Dave Airlie - 3.9.1-3 -- revert upstream radeonsi breaking change. - -* Thu Feb 23 2017 Josh Stone - 3.9.1-2 -- disable sphinx warnings-as-errors - -* Fri Feb 10 2017 Orion Poplawski - 3.9.1-1 -- llvm 3.9.1 - -* Fri Feb 10 2017 Fedora Release Engineering - 3.9.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Tue Nov 29 2016 Josh Stone - 3.9.0-7 -- Apply backports from rust-lang/llvm#55, #57 - -* Tue Nov 01 2016 Dave Airlie - 3.9.0-5 -- apply the patch from -4 - -* Wed Oct 26 2016 Dave Airlie - 3.9.0-4 -- add fix for lldb out-of-tree build - -* Mon Oct 17 2016 Josh Stone - 3.9.0-3 -- Apply backports from rust-lang/llvm#47, #48, #53, #54 - -* Sat Oct 15 2016 Josh Stone - 3.9.0-2 -- Apply an InstCombine backport via rust-lang/llvm#51 - -* Wed Sep 07 2016 Dave Airlie - 3.9.0-1 -- llvm 3.9.0 -- upstream moved where cmake files are packaged. -- upstream dropped CppBackend - -* Wed Jul 13 2016 Adam Jackson - 3.8.1-1 -- llvm 3.8.1 -- Add mips target -- Fix some shared library mispackaging - -* Tue Jun 07 2016 Jan Vcelak - 3.8.0-2 -- fix color support detection on terminal - -* Thu Mar 10 2016 Dave Airlie 3.8.0-1 -- llvm 3.8.0 release - -* Wed Mar 09 2016 Dan Horák 3.8.0-0.3 -- install back memory consumption workaround for s390 - -* Thu Mar 03 2016 Dave Airlie 3.8.0-0.2 -- llvm 3.8.0 rc3 release - -* Fri Feb 19 2016 Dave Airlie 3.8.0-0.1 -- llvm 3.8.0 rc2 release - -* Tue Feb 16 2016 Dan Horák 3.7.1-7 -- recognize s390 as SystemZ when configuring build - -* Sat Feb 13 2016 Dave Airlie 3.7.1-6 -- export C++ API for mesa. - -* Sat Feb 13 2016 Dave Airlie 3.7.1-5 -- reintroduce llvm-static, clang needs it currently. - -* Fri Feb 12 2016 Dave Airlie 3.7.1-4 -- jump back to single llvm library, the split libs aren't working very well. - -* Fri Feb 05 2016 Dave Airlie 3.7.1-3 -- add missing obsoletes (#1303497) - -* Thu Feb 04 2016 Fedora Release Engineering - 3.7.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Thu Jan 07 2016 Jan Vcelak 3.7.1-1 -- new upstream release -- enable gold linker - -* Wed Nov 04 2015 Jan Vcelak 3.7.0-100 -- fix Requires for subpackages on the main package - -* Tue Oct 06 2015 Jan Vcelak 3.7.0-100 -- initial version using cmake build system - -#endregion changelog +%{?autochangelog} +%{!?autochangelog:%include %{_sourcedir}/changelog} diff --git a/release-keys.asc b/release-keys.asc index 0d3789a..3932562 100644 --- a/release-keys.asc +++ b/release-keys.asc @@ -102,3 +102,29 @@ yWfeofTJ7PhKzoXM2Y/rRFoM5gNh1RVA19ngLT5Jwiof8fPZvHJ/9ZkHn+O7eMNm m5++gYza3pnn2/PoGpGGAKok+sfJiq5Tb7RUefyJTeZiyTZ/XJrA =tMzl -----END PGP PUBLIC KEY BLOCK----- +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mDMEaMgtRhYJKwYBBAHaRw8BAQdA4NRjJPhVd56sOM+QmTbZKkRT3bYbgg6+Bxed +CELeGp+0JUN1bGxlbiBSaG9kZXMgPGN1bGxlbi5yaG9kZXNAYXJtLmNvbT6IkwQT +FgoAOxYhBHEEbR6cZla91hFxhz6Dur9KT56FBQJoyC1GAhsDBQsJCAcCAiICBhUK +CQgLAgQWAgMBAh4HAheAAAoJED6Dur9KT56FkVwA/RLNMBHrjXoAKpRm1iIjiC6w +gLRqGOnj1qAqPqgntMmmAQCQ2lGpw46rvh88ng84IGsRF0JlTAYb6SR/YYNsQyah +Arg4BGjILUYSCisGAQQBl1UBBQEBB0B48hCLw13kduwibGDGoIax0BIa+f66IUC+ +HhNlucsjbgMBCAeIeAQYFgoAIBYhBHEEbR6cZla91hFxhz6Dur9KT56FBQJoyC1G +AhsMAAoJED6Dur9KT56FVssBAO1lL/S2cU65XFHgbjc6crwljDrD7PYbxBA7hDpi +pC4ZAP98rK1hGQ5wxpeiJ0heZ8zhpdUwEeymIDBaIcwgrJRFBQ== +=HcEB +-----END PGP PUBLIC KEY BLOCK----- +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mDMEaMg2hBYJKwYBBAHaRw8BAQdA2J814YnhPQSdsyjwx8VxZ7AitqCnns9lzvkx +HX9lWMW0JERvdWdsYXMgWXVuZyA8ZG91Z2xhcy55dW5nQHNvbnkuY29tPoiTBBMW +CgA7FiEE/7M2iYDz5rtXNxRaMWxW0GTKy6UFAmjINoQCGwMFCwkIBwICIgIGFQoJ +CAsCBBYCAwECHgcCF4AACgkQMWxW0GTKy6XjYgEApJ7p+o7EAeaaOdO2f440KDfg +t7haaBLaxr5fiaSKjkYA+gLDxWOh39Y84upf23qMmpSTZ3SK5LvJtBTVtV7AEX0B +uDgEaMg2hBIKKwYBBAGXVQEFAQEHQL3CL6jHZAakhtLLj2Ks34u7ItY/7USl/bYk +f/+mZTJMAwEIB4h4BBgWCgAgFiEE/7M2iYDz5rtXNxRaMWxW0GTKy6UFAmjINoQC +GwwACgkQMWxW0GTKy6VTOgEArDn9bg58W7bfZfVfneJJbIeICEf3NN9IovbRbAOB +ax0A/RxtrG4qowLlo907vb25ITOa1hBoheSV2wNoDaDUhFEF +=JQ8u +-----END PGP PUBLIC KEY BLOCK----- diff --git a/sources b/sources index e7847bf..1641647 100644 --- a/sources +++ b/sources @@ -1,2 +1,4 @@ +SHA512 (llvm-project-21.1.3.src.tar.xz) = d3058e7c18ada2a6a6192c7e75970406520e0d2ba390dba3b89e99f05959198fd2976d38c200f8e6af37fb569d866b6367bf6e0e249fe4b340dfab74499e5723 +SHA512 (llvm-project-21.1.3.src.tar.xz.sig) = d218a4071451e32a77890dd2e7de7a3b8a310ca85c7e6d90b88d85bad128979cf6866c9d772b880b50da2ec117832e77ba162049478c1deb7b0299cae008151a SHA512 (llvm-project-20.1.8.src.tar.xz) = f330e72e6a1da468569049437cc0ba7a41abb816ccece7367189344f7ebfef730f4788ac7af2bef0aa8a49341c15ab1d31e941ffa782f264d11fe0dc05470773 SHA512 (llvm-project-20.1.8.src.tar.xz.sig) = d74369bdb4d1b82775161ea53c9c5f3a23ce810f4df5ff617123023f9d8ce720e7d6ecc9e17f8ebd39fd9e7a9de79560abdf2ffe73bcb907a43148d43665d619 diff --git a/tests/README.md b/tests/README.md index 26a7ffb..fc0f851 100644 --- a/tests/README.md +++ b/tests/README.md @@ -1,9 +1,9 @@ # Gating testplans for LLVM -The tests for LLVM are in a dedicated, separate repo: https://gitlab.com/redhat/centos-stream/tests/llvm.git +The tests for LLVM are in a separate repo: + +* llvm: https://gitlab.com/redhat/centos-stream/tests/llvm.git/ This directory should contain only fmf plans (such as build-gating.fmf) which import the tests from the tests repo. This can be done using the "url" parameter of the -plan's "discover" step. - -Reference: https://tmt.readthedocs.io/en/stable/spec/plans.html#fmf +plan's "discover" step. Reference: https://tmt.readthedocs.io/en/stable/spec/plans.html#fmf diff --git a/tests/build-gating.fmf b/tests/build-gating.fmf index db92f08..3beb9b7 100644 --- a/tests/build-gating.fmf +++ b/tests/build-gating.fmf @@ -40,11 +40,10 @@ adjust: or distro == rhel-8 discover: - - name: llvm-tests - how: fmf - url: https://gitlab.com/redhat/centos-stream/tests/llvm.git - ref: main - filter: "tag:-spoils-installation & tag:-not-in-default" + how: fmf + url: https://gitlab.com/redhat/centos-stream/tests/llvm.git + ref: main + filter: "tag:-spoils-installation & tag:-not-in-default" execute: how: tmt provision: diff --git a/tests/lld-alternatives.fmf b/tests/lld-alternatives.fmf index 3b46dff..f8a907b 100644 --- a/tests/lld-alternatives.fmf +++ b/tests/lld-alternatives.fmf @@ -8,7 +8,7 @@ adjust: enabled: false discover: - - name: lld-tests + - name: lld-alternatives how: fmf url: https://gitlab.com/redhat/centos-stream/tests/llvm.git ref: main