Compare commits

...

No commits in common. "c8-stream-rhel8" and "stream-llvm-toolset-rhel-next-rhel-8.10.0" have entirely different histories.

15 changed files with 213 additions and 213 deletions

1
.fmf/version Normal file
View File

@ -0,0 +1 @@
1

34
.gitignore vendored
View File

@ -1,6 +1,28 @@
SOURCES/cmake-17.0.6.src.tar.xz
SOURCES/cmake-17.0.6.src.tar.xz.sig
SOURCES/llvm-17.0.6.src.tar.xz
SOURCES/llvm-17.0.6.src.tar.xz.sig
SOURCES/third-party-17.0.6.src.tar.xz
SOURCES/third-party-17.0.6.src.tar.xz.sig
SOURCES/cmake-15.0.7.src.tar.xz
SOURCES/llvm-15.0.7.src.tar.xz
/cmake-15.0.7.src.tar.xz
/llvm-15.0.7.src.tar.xz
/llvm-16.0.0.src.tar.xz
/llvm-16.0.0.src.tar.xz.sig
/cmake-16.0.0.src.tar.xz
/cmake-16.0.0.src.tar.xz.sig
/third-party-16.0.0.src.tar.xz
/third-party-16.0.0.src.tar.xz.sig
/llvm-16.0.6.src.tar.xz
/llvm-16.0.6.src.tar.xz.sig
/cmake-16.0.6.src.tar.xz
/cmake-16.0.6.src.tar.xz.sig
/third-party-16.0.6.src.tar.xz
/third-party-16.0.6.src.tar.xz.sig
/llvm-17.0.2.src.tar.xz
/llvm-17.0.2.src.tar.xz.sig
/cmake-17.0.2.src.tar.xz
/cmake-17.0.2.src.tar.xz.sig
/third-party-17.0.2.src.tar.xz
/third-party-17.0.2.src.tar.xz.sig
/llvm-17.0.6.src.tar.xz
/llvm-17.0.6.src.tar.xz.sig
/cmake-17.0.6.src.tar.xz
/cmake-17.0.6.src.tar.xz.sig
/third-party-17.0.6.src.tar.xz
/third-party-17.0.6.src.tar.xz.sig

View File

@ -1,6 +1,6 @@
4b397344260c934e687be7efa0f8456a9dd46f44 SOURCES/cmake-17.0.6.src.tar.xz
fa31d348b6780478403484e22139d25f403503d4 SOURCES/cmake-17.0.6.src.tar.xz.sig
860a3605f08a0a56a8de4e073e26a259871623a6 SOURCES/llvm-17.0.6.src.tar.xz
2ad479ab00a6d5e61ecb953997cfeef6650a687a SOURCES/llvm-17.0.6.src.tar.xz.sig
a35dc22cd3d983a556f6e4a63c8dac6a84e01caf SOURCES/third-party-17.0.6.src.tar.xz
12128cdab7414aeedd573c61cbc2fa82e75491db SOURCES/third-party-17.0.6.src.tar.xz.sig
ad230bc2bcb3a7dcedd9bf462a5915f3b5cee598 llvm-18.1.2.src.tar.xz
8c7be6f58c0a1bf6edfcc1447e1356a72c13bf96 llvm-18.1.2.src.tar.xz.sig
b04c79da253b97af9dae59675bc29cd1d3c6257f cmake-18.1.2.src.tar.xz
cb4b762163f99c329441ca724f2d8729c3df56dd cmake-18.1.2.src.tar.xz.sig
209a7890d8852fa626a326e6e156af2ab8949174 third-party-18.1.2.src.tar.xz
844233bf713229273f23bb082cc7807e52f3127f third-party-18.1.2.src.tar.xz.sig

View File

@ -0,0 +1,13 @@
diff --git a/llvm/docs/conf.py b/llvm/docs/conf.py
index cf8a75980b53..b208ad138e89 100644
--- a/llvm/docs/conf.py
+++ b/llvm/docs/conf.py
@@ -26,7 +26,7 @@ from datetime import date
# Add any Sphinx extension module names here, as strings. They can be extensions
# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
-extensions = ["myst_parser", "sphinx.ext.intersphinx", "sphinx.ext.todo"]
+extensions = ["sphinx.ext.intersphinx", "sphinx.ext.todo"]
# Automatic anchors for markdown titles
from llvm_slug import make_slug

View File

@ -1,74 +0,0 @@
From 9d1f05a7b8537deb5f626cd1b7b26ef2678f4c8e Mon Sep 17 00:00:00 2001
From: Arthur Eubanks <aeubanks@google.com>
Date: Thu, 27 Jul 2023 13:27:58 -0700
Subject: [PATCH] [PEI] Don't zero out noreg operands
A tail call may have $noreg operands.
Fixes a crash.
Reviewed By: xgupta
Differential Revision: https://reviews.llvm.org/D156485
(cherry picked from commit f800c1f3b207e7bcdc8b4c7192928d9a078242a0)
---
llvm/lib/CodeGen/PrologEpilogInserter.cpp | 9 +++++++--
llvm/test/CodeGen/X86/zero-call-used-regs.ll | 14 ++++++++++++++
2 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/llvm/lib/CodeGen/PrologEpilogInserter.cpp b/llvm/lib/CodeGen/PrologEpilogInserter.cpp
index e323aaaeefaf..49047719fdaa 100644
--- a/llvm/lib/CodeGen/PrologEpilogInserter.cpp
+++ b/llvm/lib/CodeGen/PrologEpilogInserter.cpp
@@ -1285,6 +1285,8 @@ void PEI::insertZeroCallUsedRegs(MachineFunction &MF) {
continue;
MCRegister Reg = MO.getReg();
+ if (!Reg)
+ continue;
// This picks up sibling registers (e.q. %al -> %ah).
for (MCRegUnit Unit : TRI.regunits(Reg))
@@ -1308,8 +1310,11 @@ void PEI::insertZeroCallUsedRegs(MachineFunction &MF) {
if (!MO.isReg())
continue;
- for (const MCPhysReg &Reg :
- TRI.sub_and_superregs_inclusive(MO.getReg()))
+ MCRegister Reg = MO.getReg();
+ if (!Reg)
+ continue;
+
+ for (const MCPhysReg Reg : TRI.sub_and_superregs_inclusive(Reg))
RegsToZero.reset(Reg);
}
}
diff --git a/llvm/test/CodeGen/X86/zero-call-used-regs.ll b/llvm/test/CodeGen/X86/zero-call-used-regs.ll
index 63d51c916bb9..97ad5ce9c8cb 100644
--- a/llvm/test/CodeGen/X86/zero-call-used-regs.ll
+++ b/llvm/test/CodeGen/X86/zero-call-used-regs.ll
@@ -241,6 +241,20 @@ entry:
ret i32 %x
}
+define dso_local void @tailcall(ptr %p) local_unnamed_addr #0 "zero-call-used-regs"="used-gpr" {
+; I386-LABEL: tailcall:
+; I386: # %bb.0:
+; I386-NEXT: movl {{[0-9]+}}(%esp), %eax
+; I386-NEXT: jmpl *(%eax) # TAILCALL
+;
+; X86-64-LABEL: tailcall:
+; X86-64: # %bb.0:
+; X86-64-NEXT: jmpq *(%rdi) # TAILCALL
+ %c = load ptr, ptr %p
+ tail call void %c()
+ ret void
+}
+
; Don't emit zeroing registers in "main" function.
define dso_local i32 @main() local_unnamed_addr #1 {
; I386-LABEL: main:
--
2.43.0

View File

@ -1,26 +0,0 @@
diff -Naur a/llvm/docs/conf.py b/llvm/docs/conf.py
--- a/llvm/docs/conf.py 2020-09-15 09:12:24.318287611 +0000
+++ b/llvm/docs/conf.py 2020-09-15 15:01:00.025893199 +0000
@@ -36,21 +36,7 @@
".rst": "restructuredtext",
}
-try:
- import recommonmark
-except ImportError:
- # manpages do not use any .md sources
- if not tags.has("builder-man"):
- raise
-else:
- import sphinx
-
- if sphinx.version_info >= (3, 0):
- # This requires 0.5 or later.
- extensions.append("recommonmark")
- else:
- source_parsers = {".md": "recommonmark.parser.CommonMarkParser"}
- source_suffix[".md"] = "markdown"
+import sphinx
# The encoding of source files.
# source_encoding = 'utf-8-sig'

BIN
cmake-15.0.7.src.tar.xz.sig Normal file

Binary file not shown.

19
gating.yaml Normal file
View File

@ -0,0 +1,19 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_testing
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier0.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build.rebuild.validation}

BIN
llvm-14.0.0.src.tar.xz.sig Normal file

Binary file not shown.

BIN
llvm-15.0.7.src.tar.xz.sig Normal file

Binary file not shown.

2
llvm.rpmlintrc Normal file
View File

@ -0,0 +1,2 @@
# This library has no dependencies.
addFilter("llvm-libs.x86_64: E: shared-lib-without-dependency-information /usr/lib64/libRemarks.so.[0-9]+")

View File

@ -31,9 +31,9 @@
%bcond_without lto_build
%endif
%global maj_ver 17
%global min_ver 0
%global patch_ver 6
%global maj_ver 18
%global min_ver 1
%global patch_ver 2
#global rc_ver 4
%if %{with snapshot_build}
@ -118,7 +118,7 @@
Name: %{pkg_name}
Version: %{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:~rc%{rc_ver}}%{?llvm_snapshot_version_suffix:~%{llvm_snapshot_version_suffix}}
Release: 2%{?dist}
Release: 1%{?dist}
Summary: The Low Level Virtual Machine
License: Apache-2.0 WITH LLVM-exception OR NCSA
@ -138,10 +138,7 @@ Source5: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ve
Source6: release-keys.asc
%endif
# Backport of https://reviews.llvm.org/D156485 for RHEL-23865.
Patch0: 0001-PEI-Don-t-zero-out-noreg-operands.patch
# RHEL-specific patch to avoid unwanted recommonmark dep
# RHEL-specific patch to avoid unwanted python3-myst-parser dep
Patch101: 0101-Deactivate-markdown-doc.patch
BuildRequires: gcc
@ -155,7 +152,7 @@ BuildRequires: ncurses-devel
BuildRequires: python3-psutil
BuildRequires: python3-sphinx
%if %{undefined rhel}
BuildRequires: python3-recommonmark
BuildRequires: python3-myst-parser
%endif
BuildRequires: multilib-rpm-config
%if %{with gold}
@ -209,14 +206,12 @@ Requires: libedit-devel
# but this caused bugs (rhbz#1773678) and forced us to carry two non-upstream
# patches.
Requires: %{name}-static%{?_isa} = %{version}-%{release}
%if %{without compat_build}
Requires: %{name}-test%{?_isa} = %{version}-%{release}
Requires: %{name}-googletest%{?_isa} = %{version}-%{release}
%endif
Requires(post): %{_sbindir}/alternatives
Requires(postun): %{_sbindir}/alternatives
Requires(post): /usr/sbin/alternatives
Requires(postun): /usr/sbin/alternatives
Provides: llvm-devel(major) = %{maj_ver}
@ -234,6 +229,8 @@ Documentation for the LLVM compiler infrastructure.
%package libs
Summary: LLVM shared libraries
Requires(post): /sbin/ldconfig
Requires(postun): /sbin/ldconfig
%description libs
Shared libraries for the LLVM compiler infrastructure.
@ -254,8 +251,6 @@ Summary: CMake utilities shared across LLVM subprojects
CMake utilities shared across LLVM subprojects.
This is for internal use by LLVM packages only.
%if %{without compat_build}
%package test
Summary: LLVM regression tests
Requires: %{name}%{?_isa} = %{version}-%{release}
@ -280,22 +275,14 @@ Summary: Package that installs llvm-toolset
Requires: clang = %{version}
Requires: llvm = %{version}
%ifnarch s390x
Requires: lld = %{version}
%endif
%description toolset
This is the main package for llvm-toolset.
%endif
%endif
%prep
%if %{without snapshot_build}
%{gpgverify} --keyring='%{SOURCE6}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
%{gpgverify} --keyring='%{SOURCE6}' --signature='%{SOURCE3}' --data='%{SOURCE2}'
%{gpgverify} --keyring='%{SOURCE6}' --signature='%{SOURCE5}' --data='%{SOURCE4}'
%endif
%setup -T -q -b 2 -n %{cmake_srcdir}
# TODO: It would be more elegant to set -DLLVM_COMMON_CMAKE_UTILS=%{_builddir}/%{cmake_srcdir},
# but this is not a CACHED variable, so we can't actually set it externally :(
@ -370,24 +357,16 @@ export ASMFLAGS="%{build_cflags}"
\
-DLLVM_INCLUDE_TESTS:BOOL=ON \
-DLLVM_BUILD_TESTS:BOOL=ON \
%if %{with compat_build}
-DLLVM_INSTALL_GTEST:BOOL=OFF \
%else
-DLLVM_INSTALL_GTEST:BOOL=ON \
%endif
-DLLVM_LIT_ARGS=-v \
\
-DLLVM_INCLUDE_EXAMPLES:BOOL=ON \
-DLLVM_BUILD_EXAMPLES:BOOL=OFF \
\
-DLLVM_INCLUDE_UTILS:BOOL=ON \
%if %{with compat_build}
-DLLVM_INSTALL_UTILS:BOOL=OFF \
%else
-DLLVM_INSTALL_UTILS:BOOL=ON \
-DLLVM_UTILS_INSTALL_DIR:PATH=%{_bindir} \
-DLLVM_UTILS_INSTALL_DIR:PATH=bin \
-DLLVM_TOOLS_INSTALL_DIR:PATH=bin \
%endif
\
-DLLVM_INCLUDE_DOCS:BOOL=ON \
-DLLVM_BUILD_DOCS:BOOL=ON \
@ -408,12 +387,14 @@ export ASMFLAGS="%{build_cflags}"
-DSPHINX_WARNINGS_AS_ERRORS=OFF \
-DCMAKE_INSTALL_PREFIX=%{install_prefix} \
-DLLVM_INSTALL_SPHINX_HTML_DIR=%{_pkgdocdir}/html \
-DSPHINX_EXECUTABLE=%{_bindir}/sphinx-build-3 \
-DSPHINX_EXECUTABLE=/usr/bin/sphinx-build-3 \
-DLLVM_INCLUDE_BENCHMARKS=OFF \
%if %{with lto_build}
-DLLVM_UNITTEST_LINK_FLAGS="-Wl,-plugin-opt=O0" \
%endif
%ifarch x86_64
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS -Wl,-z,cet-report=error"
%endif
# Build libLLVM.so first. This ensures that when libLLVM.so is linking, there
# are no other compile jobs running. This will help reduce OOM errors on the
@ -426,29 +407,34 @@ export ASMFLAGS="%{build_cflags}"
mkdir -p %{buildroot}/%{_bindir}
%if %{without compat_build}
# Fix some man pages
ln -s llvm-config.1 %{buildroot}%{_mandir}/man1/llvm-config%{exec_suffix}-%{__isa_bits}.1
# Install binaries needed for lit tests
%global test_binaries llvm-isel-fuzzer llvm-opt-fuzzer
for f in %{test_binaries}
do
install -m 0755 %{_vpath_builddir}/bin/$f %{buildroot}%{_bindir}
install -m 0755 %{_vpath_builddir}/bin/$f %{buildroot}%{install_bindir}
done
# Remove testing of update utility tools
rm -rf test/tools/UpdateTestChecks
%multilib_fix_c_header --file %{_includedir}/llvm/Config/llvm-config.h
# Install libraries needed for unittests
%if %{without compat_build}
%global build_libdir %{_vpath_builddir}/%{_lib}
%else
%global build_libdir %{_vpath_builddir}/lib
%endif
install %{build_libdir}/libLLVMTestingSupport.a %{buildroot}%{_libdir}
install %{build_libdir}/libLLVMTestingAnnotations.a %{buildroot}%{_libdir}
install %{build_libdir}/libLLVMTestingSupport.a %{buildroot}%{install_libdir}
install %{build_libdir}/libLLVMTestingAnnotations.a %{buildroot}%{install_libdir}
# Fix multi-lib
%multilib_fix_c_header --file %{install_includedir}/llvm/Config/llvm-config.h
%if %{without compat_build}
# Fix some man pages
ln -s llvm-config.1 %{buildroot}%{_mandir}/man1/llvm-config%{exec_suffix}-%{__isa_bits}.1
%if %{with gold}
# Add symlink to lto plugin in the binutils plugin directory.
@ -464,14 +450,6 @@ for f in %{buildroot}/%{install_bindir}/*; do
ln -s ../../%{install_bindir}/$filename %{buildroot}/%{_bindir}/$filename%{exec_suffix}
done
# Move header files
mkdir -p %{buildroot}/%{pkg_includedir}
ln -s ../../../%{install_includedir}/llvm %{buildroot}/%{pkg_includedir}/llvm
ln -s ../../../%{install_includedir}/llvm-c %{buildroot}/%{pkg_includedir}/llvm-c
# Fix multi-lib
%multilib_fix_c_header --file %{install_includedir}/llvm/Config/llvm-config.h
# Create ld.so.conf.d entry
mkdir -p %{buildroot}/etc/ld.so.conf.d
cat >> %{buildroot}/etc/ld.so.conf.d/%{name}-%{_arch}.conf << EOF
@ -485,9 +463,6 @@ for f in %{build_install_prefix}/share/man/man1/*; do
mv $f %{buildroot}%{_mandir}/man1/$filename%{exec_suffix}.1
done
# Remove opt-viewer, since this is just a compatibility package.
rm -Rf %{build_install_prefix}/share/opt-viewer
%endif
# llvm-config special casing. llvm-config is managed by update-alternatives.
@ -520,7 +495,6 @@ mkdir -p %{buildroot}%{pkg_datadir}/llvm/cmake
cp -Rv ../cmake/* %{buildroot}%{pkg_datadir}/llvm/cmake
%check
# non reproducible errors
rm test/tools/dsymutil/X86/swift-interface.test
@ -529,19 +503,45 @@ rm test/tools/dsymutil/X86/swift-interface.test
LD_LIBRARY_PATH=%{buildroot}/%{install_libdir} %{__ninja} check-all -C %{_vpath_builddir}
%endif
%ldconfig_scriptlets libs
%if %{with compat_build}
# Packages that install files in /etc/ld.so.conf have to manually run
# ldconfig.
# See https://bugzilla.redhat.com/show_bug.cgi?id=2001328 and
# https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_linker_configuration_files
%post -p /sbin/ldconfig libs
%postun -p /sbin/ldconfig libs
%endif
%post devel
%{_sbindir}/update-alternatives --install %{_bindir}/llvm-config%{exec_suffix} llvm-config%{exec_suffix} %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits} %{__isa_bits}
/usr/sbin/update-alternatives --install %{_bindir}/llvm-config%{exec_suffix} llvm-config%{exec_suffix} %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits} %{__isa_bits}
%if %{without compat_build}
%{_sbindir}/update-alternatives --install %{_bindir}/llvm-config-%{maj_ver} llvm-config-%{maj_ver} %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits} %{__isa_bits}
/usr/sbin/update-alternatives --install %{_bindir}/llvm-config-%{maj_ver} llvm-config-%{maj_ver} %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits} %{__isa_bits}
# During the upgrade from LLVM 16 (F38) to LLVM 17 (F39), we found out the
# main llvm-devel package was leaving entries in the alternatives system.
# Try to remove them now.
for v in 14 15 16; do
if [[ -e %{_bindir}/llvm-config-$v
&& "x$(%{_bindir}/llvm-config-$v --version | awk -F . '{ print $1 }')" != "x$v" ]]; then
/usr/sbin/update-alternatives --remove llvm-config-$v %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits}
fi
done
%endif
%postun devel
if [ $1 -eq 0 ]; then
%{_sbindir}/update-alternatives --remove llvm-config%{exec_suffix} %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits}
/usr/sbin/update-alternatives --remove llvm-config%{exec_suffix} %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits}
fi
%if %{without compat_build}
%{_sbindir}/update-alternatives --remove llvm-config-%{maj_ver} %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits}
# When upgrading between minor versions (i.e. from x.y.1 to x.y.2), we must
# not remove the alternative.
# However, during a major version upgrade (i.e. from 16.x.y to 17.z.w), the
# alternative must be removed in order to give priority to a newly installed
# compat package.
if [[ $1 -eq 0
|| "x$(%{_bindir}/llvm-config-%{maj_ver} --version | awk -F . '{ print $1 }')" != "x%{maj_ver}" ]]; then
/usr/sbin/update-alternatives --remove llvm-config-%{maj_ver} %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits}
fi
%endif
fi
@ -549,45 +549,41 @@ fi
%license LICENSE.TXT
%exclude %{_mandir}/man1/llvm-config*
%{_mandir}/man1/*
%{_bindir}/*
%{install_bindir}/*
%if %{with compat_build}
# This is for all the binaries with the version suffix.
%{_bindir}/*%{exec_suffix}
%endif
%exclude %{_bindir}/llvm-config%{exec_suffix}
%exclude %{install_bindir}/llvm-config%{exec_suffix}-%{__isa_bits}
%if %{without compat_build}
%exclude %{_bindir}/llvm-config-%{maj_ver}
%exclude %{install_bindir}/llvm-config-%{maj_ver}-%{__isa_bits}
%exclude %{_bindir}/not
%exclude %{_bindir}/count
%exclude %{_bindir}/yaml-bench
%exclude %{_bindir}/lli-child-target
%exclude %{_bindir}/llvm-isel-fuzzer
%exclude %{_bindir}/llvm-opt-fuzzer
%{_datadir}/opt-viewer
%else
%{install_bindir}
%endif
%exclude %{install_bindir}/not
%exclude %{install_bindir}/count
%exclude %{install_bindir}/yaml-bench
%exclude %{install_bindir}/lli-child-target
%exclude %{install_bindir}/llvm-isel-fuzzer
%exclude %{install_bindir}/llvm-opt-fuzzer
%{pkg_datadir}/opt-viewer
%files libs
%license LICENSE.TXT
%{install_libdir}/libLLVM-%{maj_ver}%{?llvm_snapshot_version_suffix:%{llvm_snapshot_version_suffix}}.so
%if %{without compat_build}
%if %{with gold}
%{_libdir}/LLVMgold.so
%{install_libdir}/LLVMgold.so
%if %{without compat_build}
%{_libdir}/bfd-plugins/LLVMgold.so
%endif
%{_libdir}/libLLVM-%{maj_ver}.%{min_ver}*.so
%{_libdir}/libLTO.so*
%else
%config(noreplace) /etc/ld.so.conf.d/%{name}-%{_arch}.conf
%if %{with gold}
%{_libdir}/%{name}/lib/LLVMgold.so
%endif
%{install_libdir}/libLLVM-%{maj_ver}.%{min_ver}*.so
%{install_libdir}/libLLVM-%{maj_ver}.so
%{install_libdir}/libLLVM.so.%{maj_ver}.%{min_ver}
%{install_libdir}/libLTO.so*
%exclude %{install_libdir}/libLTO.so
%endif
%{install_libdir}/libRemarks.so*
%if %{with compat_build}
%config(noreplace) /etc/ld.so.conf.d/%{name}-%{_arch}.conf
%endif
%files devel
%license LICENSE.TXT
@ -600,14 +596,8 @@ fi
%{install_includedir}/llvm-c
%{install_libdir}/libLLVM.so
%{install_libdir}/cmake/llvm
%if %{without compat_build}
%{install_bindir}/llvm-config-%{maj_ver}-%{__isa_bits}
%ghost %{_bindir}/llvm-config-%{maj_ver}
%else
%{pkg_includedir}/llvm
%{pkg_includedir}/llvm-c
%{install_libdir}/libLTO.so
%endif
%files doc
%license LICENSE.TXT
@ -616,27 +606,23 @@ fi
%files static
%license LICENSE.TXT
%{install_libdir}/*.a
%if %{without compat_build}
%exclude %{install_libdir}/libLLVMTestingSupport.a
%exclude %{install_libdir}/libLLVMTestingAnnotations.a
%exclude %{install_libdir}/libllvm_gtest.a
%exclude %{install_libdir}/libllvm_gtest_main.a
%endif
%files cmake-utils
%license LICENSE.TXT
%{pkg_datadir}/llvm/cmake
%if %{without compat_build}
%files test
%license LICENSE.TXT
%{_bindir}/not
%{_bindir}/count
%{_bindir}/yaml-bench
%{_bindir}/lli-child-target
%{_bindir}/llvm-isel-fuzzer
%{_bindir}/llvm-opt-fuzzer
%{install_bindir}/not
%{install_bindir}/count
%{install_bindir}/yaml-bench
%{install_bindir}/lli-child-target
%{install_bindir}/llvm-isel-fuzzer
%{install_bindir}/llvm-opt-fuzzer
%files googletest
%license LICENSE.TXT
@ -652,9 +638,10 @@ fi
%license LICENSE.TXT
%endif
%endif
%changelog
* Thu Mar 21 2024 Tom Stellard <tstellar@redhat.com> - 18.1.2-1
- 18.1.2 Release
* Fri Feb 02 2024 Nikita Popov <npopov@redhat.com> - 17.0.6-2
- Fix crash with -fzero-call-used-regs (RHEL-23865)

6
sources Normal file
View File

@ -0,0 +1,6 @@
SHA512 (llvm-18.1.2.src.tar.xz) = 7cc429e21685b2b6123dfbbdb848d9ca2091acef4d0ad52a28054af06a228aa489551305a072692bb634b34b5ceb7373266ee973dc306a71b9b339fe05a77c25
SHA512 (llvm-18.1.2.src.tar.xz.sig) = 8605109d6db1e88ea3a8a53e1288f77026392a41252fa4a84ef3ec817cc659a391c1795b39f258a5db49fac05adf5c6285ebac51979a8b42e72599ac55e4c0b3
SHA512 (cmake-18.1.2.src.tar.xz) = 18df1b6d334757bc9c1c208f90a800d17905444055b49cb231cf80721b5e55f97d01d0102c931d278a138927ae64e6cb53d38dbc9bf93dea5b32c8a6a3f51d05
SHA512 (cmake-18.1.2.src.tar.xz.sig) = afb10d0da43e51e6a403860d19de2bd906d335fcb8ce97fa7fd457b940aa5c166f7f6d99fbde5ea00515ca11be9d0f6cb02db3e3dae5c60ba8d84cb0fe528a93
SHA512 (third-party-18.1.2.src.tar.xz) = 2378b4eb79701ead30b10d95f7f9ae632c5a1e83c2149ca687afeb9f80c2e8b4aeae12ebe431f41652fb9b8ea058c3ed1bad6716a2914056de94cd55d90cf680
SHA512 (third-party-18.1.2.src.tar.xz.sig) = 379c6f98a064a46cc47c8049ff43c50193f140bbfe605c1146117ae4919abb10824674fadf45e71fff1e46478beaf5b48eafbf3a100d715691db06aab6c28659

50
tests/build-gating.fmf Normal file
View File

@ -0,0 +1,50 @@
#
# Build/PR gating tests for *LLVM 13*
#
# Imports and runs tests provided by Fedora LLVM git for the matching LLVM version.
#
# NOTE: *always* keep this file in sync with upstream, i.e. Fedora. Since we cannot "discover" a plan,
# we must duplicate at least some part of upstream plan setup, like `adjust` or `provision`. Not necessarily
# all steps, btu if we do need some of them here, let's focus on making changes in upstream first, to preserve
# one source of truth. Once TMT learns to include whole plans, we could drop the copied content from here.
#
summary: LLVM tests for build/PR gating
adjust:
- because: "Plan to be ran when either executed locally, or executed by CI system to gate a build or PR."
when: >-
trigger is defined
and trigger != commit
and trigger != build
enabled: false
# Unfortunatelly, TMT does not support more declarative approach, we need to run commands on our own.
- because: "On RHEL, CRB must be enabled to provide rarer packages"
when: >-
distro == rhel-9
or distro == rhel-8
prepare+:
- name: Enable CRB
how: shell
script: dnf config-manager --set-enabled rhel-CRB
- because: "On RHEL, CRB must be enabled to provide rarer packages"
when: >-
distro == centos
prepare+:
- name: Enable CRB
how: shell
script: dnf config-manager --set-enabled crb
discover:
- name: "Upstream LLVM tests for build/PR gating"
how: fmf
url: https://src.fedoraproject.org/rpms/llvm.git
ref: rawhide
execute:
how: tmt
provision:
hardware:
memory: ">= 4 GiB"