Update to LLVM 15.0.0
This commit is contained in:
parent
58046ac8bb
commit
53099ce734
2
.gitignore
vendored
2
.gitignore
vendored
@ -97,3 +97,5 @@
|
|||||||
/lld-14.0.0.src.tar.xz.sig
|
/lld-14.0.0.src.tar.xz.sig
|
||||||
/lld-14.0.5.src.tar.xz.sig
|
/lld-14.0.5.src.tar.xz.sig
|
||||||
/lld-14.0.5.src.tar.xz
|
/lld-14.0.5.src.tar.xz
|
||||||
|
/lld-15.0.0.src.tar.xz
|
||||||
|
/lld-15.0.0.src.tar.xz.sig
|
||||||
|
@ -1,170 +0,0 @@
|
|||||||
From 2a5f3345e72b2c1a66d3714eaae37e7b05ef5c65 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Alex Brachet <abrachet@google.com>
|
|
||||||
Date: Mon, 8 Aug 2022 21:31:58 +0000
|
|
||||||
Subject: [PATCH] [ELF] Support --package-metadata
|
|
||||||
|
|
||||||
This was recently introduced in GNU linkers and it makes sense for
|
|
||||||
ld.lld to have the same support. This implementation omits checking if
|
|
||||||
the input string is valid json to reduce size bloat.
|
|
||||||
|
|
||||||
Differential Revision: https://reviews.llvm.org/D131439
|
|
||||||
---
|
|
||||||
lld/ELF/Config.h | 1 +
|
|
||||||
lld/ELF/Driver.cpp | 1 +
|
|
||||||
lld/ELF/Options.td | 2 ++
|
|
||||||
lld/ELF/SyntheticSections.cpp | 14 ++++++++++++++
|
|
||||||
lld/ELF/SyntheticSections.h | 11 +++++++++++
|
|
||||||
lld/ELF/Writer.cpp | 5 +++++
|
|
||||||
lld/docs/ReleaseNotes.rst | 2 ++
|
|
||||||
lld/test/ELF/package-metadata.s | 19 +++++++++++++++++++
|
|
||||||
8 files changed, 55 insertions(+)
|
|
||||||
create mode 100644 lld/test/ELF/package-metadata.s
|
|
||||||
|
|
||||||
diff --git a/lld/ELF/Config.h b/lld/ELF/Config.h
|
|
||||||
index 72b7be8165e0..38545d257a2b 100644
|
|
||||||
--- a/lld/ELF/Config.h
|
|
||||||
+++ b/lld/ELF/Config.h
|
|
||||||
@@ -281,6 +281,7 @@ struct Configuration {
|
|
||||||
StringRef thinLTOJobs;
|
|
||||||
unsigned timeTraceGranularity;
|
|
||||||
int32_t splitStackAdjustSize;
|
|
||||||
+ StringRef packageMetadata;
|
|
||||||
|
|
||||||
// The following config options do not directly correspond to any
|
|
||||||
// particular command line options.
|
|
||||||
diff --git a/lld/ELF/Driver.cpp b/lld/ELF/Driver.cpp
|
|
||||||
index 54b487bdc243..39adc5d707d7 100644
|
|
||||||
--- a/lld/ELF/Driver.cpp
|
|
||||||
+++ b/lld/ELF/Driver.cpp
|
|
||||||
@@ -1092,6 +1092,7 @@ static void readConfigs(opt::InputArgList &args) {
|
|
||||||
config->optimize = args::getInteger(args, OPT_O, 1);
|
|
||||||
config->orphanHandling = getOrphanHandling(args);
|
|
||||||
config->outputFile = args.getLastArgValue(OPT_o);
|
|
||||||
+ config->packageMetadata = args.getLastArgValue(OPT_package_metadata);
|
|
||||||
config->pie = args.hasFlag(OPT_pie, OPT_no_pie, false);
|
|
||||||
config->printIcfSections =
|
|
||||||
args.hasFlag(OPT_print_icf_sections, OPT_no_print_icf_sections, false);
|
|
||||||
diff --git a/lld/ELF/Options.td b/lld/ELF/Options.td
|
|
||||||
index cf2013a5f820..52f5485af1f4 100644
|
|
||||||
--- a/lld/ELF/Options.td
|
|
||||||
+++ b/lld/ELF/Options.td
|
|
||||||
@@ -505,6 +505,8 @@ def z: JoinedOrSeparate<["-"], "z">, MetaVarName<"<option>">,
|
|
||||||
def visual_studio_diagnostics_format : FF<"vs-diagnostics">,
|
|
||||||
HelpText<"Format diagnostics for Visual Studio compatibility">;
|
|
||||||
|
|
||||||
+def package_metadata: JJ<"package-metadata=">, HelpText<"Emit package metadata note">;
|
|
||||||
+
|
|
||||||
// Aliases
|
|
||||||
def: Separate<["-"], "f">, Alias<auxiliary>, HelpText<"Alias for --auxiliary">;
|
|
||||||
def: F<"call_shared">, Alias<Bdynamic>, HelpText<"Alias for --Bdynamic">;
|
|
||||||
diff --git a/lld/ELF/SyntheticSections.cpp b/lld/ELF/SyntheticSections.cpp
|
|
||||||
index 7778ae5f78e6..5e5495540215 100644
|
|
||||||
--- a/lld/ELF/SyntheticSections.cpp
|
|
||||||
+++ b/lld/ELF/SyntheticSections.cpp
|
|
||||||
@@ -3844,6 +3844,20 @@ void InStruct::reset() {
|
|
||||||
symTabShndx.reset();
|
|
||||||
}
|
|
||||||
|
|
||||||
+void PackageMetadataNote::writeTo(uint8_t *buf) {
|
|
||||||
+ write32(buf, 4);
|
|
||||||
+ write32(buf + 4, config->packageMetadata.size() + 1);
|
|
||||||
+ write32(buf + 8, 0xcafe1a7e);
|
|
||||||
+ memcpy(buf + 12, "FDO", 4);
|
|
||||||
+ memcpy(buf + 16, config->packageMetadata.data(),
|
|
||||||
+ config->packageMetadata.size());
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+size_t PackageMetadataNote::getSize() const {
|
|
||||||
+ return sizeof(llvm::ELF::Elf64_Nhdr) + 4 +
|
|
||||||
+ alignTo(config->packageMetadata.size() + 1, 4);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
InStruct elf::in;
|
|
||||||
|
|
||||||
std::vector<Partition> elf::partitions;
|
|
||||||
diff --git a/lld/ELF/SyntheticSections.h b/lld/ELF/SyntheticSections.h
|
|
||||||
index 3161785988f6..7b31b5e97731 100644
|
|
||||||
--- a/lld/ELF/SyntheticSections.h
|
|
||||||
+++ b/lld/ELF/SyntheticSections.h
|
|
||||||
@@ -1185,6 +1185,16 @@ public:
|
|
||||||
void writeTo(uint8_t *buf) override;
|
|
||||||
};
|
|
||||||
|
|
||||||
+
|
|
||||||
+class PackageMetadataNote : public SyntheticSection {
|
|
||||||
+public:
|
|
||||||
+ PackageMetadataNote()
|
|
||||||
+ : SyntheticSection(llvm::ELF::SHF_ALLOC, llvm::ELF::SHT_NOTE,
|
|
||||||
+ /*alignment=*/4, ".note.package") {}
|
|
||||||
+ void writeTo(uint8_t *buf) override;
|
|
||||||
+ size_t getSize() const override;
|
|
||||||
+};
|
|
||||||
+
|
|
||||||
InputSection *createInterpSection();
|
|
||||||
MergeInputSection *createCommentSection();
|
|
||||||
template <class ELFT> void splitSections();
|
|
||||||
@@ -1215,6 +1225,7 @@ struct Partition {
|
|
||||||
std::unique_ptr<EhFrameSection> ehFrame;
|
|
||||||
std::unique_ptr<GnuHashTableSection> gnuHashTab;
|
|
||||||
std::unique_ptr<HashTableSection> hashTab;
|
|
||||||
+ std::unique_ptr<PackageMetadataNote> packageMetadataNote;
|
|
||||||
std::unique_ptr<RelocationBaseSection> relaDyn;
|
|
||||||
std::unique_ptr<RelrBaseSection> relrDyn;
|
|
||||||
std::unique_ptr<VersionDefinitionSection> verDef;
|
|
||||||
diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp
|
|
||||||
index 5794f048c990..fa6353db8c6d 100644
|
|
||||||
--- a/lld/ELF/Writer.cpp
|
|
||||||
+++ b/lld/ELF/Writer.cpp
|
|
||||||
@@ -417,6 +417,11 @@ template <class ELFT> void elf::createSyntheticSections() {
|
|
||||||
part.armExidx = std::make_unique<ARMExidxSyntheticSection>();
|
|
||||||
add(*part.armExidx);
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+ if (!config->packageMetadata.empty()) {
|
|
||||||
+ part.packageMetadataNote = std::make_unique<PackageMetadataNote>();
|
|
||||||
+ add(*part.packageMetadataNote);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
if (partitions.size() != 1) {
|
|
||||||
diff --git a/lld/docs/ReleaseNotes.rst b/lld/docs/ReleaseNotes.rst
|
|
||||||
index 672759fdf6b3..b94b73c4aea7 100644
|
|
||||||
--- a/lld/docs/ReleaseNotes.rst
|
|
||||||
+++ b/lld/docs/ReleaseNotes.rst
|
|
||||||
@@ -25,6 +25,8 @@ Non-comprehensive list of changes in this release
|
|
||||||
|
|
||||||
ELF Improvements
|
|
||||||
----------------
|
|
||||||
+* ``--package-metadata=`` has been added to create package metadata notes
|
|
||||||
+ (`D131439 <https://reviews.llvm.org/D131439>`_)
|
|
||||||
|
|
||||||
* ``--export-dynamic-symbol-list`` has been added.
|
|
||||||
(`D107317 <https://reviews.llvm.org/D107317>`_)
|
|
||||||
diff --git a/lld/test/ELF/package-metadata.s b/lld/test/ELF/package-metadata.s
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..29df499d7e98
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/lld/test/ELF/package-metadata.s
|
|
||||||
@@ -0,0 +1,19 @@
|
|
||||||
+# REQUIRES: x86
|
|
||||||
+
|
|
||||||
+# RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %t.o
|
|
||||||
+
|
|
||||||
+# RUN: ld.lld %t.o -o %t --package-metadata='{}'
|
|
||||||
+# RUN: llvm-readelf -n %t | FileCheck %s --check-prefixes=NOTE,FIRST
|
|
||||||
+
|
|
||||||
+# RUN: ld.lld %t.o -o %t --package-metadata='{"abc":123}'
|
|
||||||
+# RUN: llvm-readelf -n %t | FileCheck %s --check-prefixes=NOTE,SECOND
|
|
||||||
+
|
|
||||||
+# NOTE: .note.package
|
|
||||||
+# NOTE-NEXT: Owner
|
|
||||||
+# NOTE-NEXT: FDO 0x{{.*}} Unknown note type: (0xcafe1a7e)
|
|
||||||
+# FIRST-NEXT: description data: 7b 7d 00
|
|
||||||
+# SECOND-NEXT: description data: 7b 22 61 62 63 22 3a 31 32 33 7d 00
|
|
||||||
+
|
|
||||||
+.globl _start
|
|
||||||
+_start:
|
|
||||||
+ ret
|
|
||||||
--
|
|
||||||
2.37.1
|
|
||||||
|
|
31
lld.spec
31
lld.spec
@ -1,11 +1,12 @@
|
|||||||
|
%global toolchain clang
|
||||||
%bcond_without check
|
%bcond_without check
|
||||||
%bcond_with compat_build
|
%bcond_with compat_build
|
||||||
|
|
||||||
#global rc_ver 1
|
#global rc_ver 3
|
||||||
%global lld_srcdir lld-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:rc%{rc_ver}}.src
|
%global lld_srcdir lld-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:rc%{rc_ver}}.src
|
||||||
%global maj_ver 14
|
%global maj_ver 15
|
||||||
%global min_ver 0
|
%global min_ver 0
|
||||||
%global patch_ver 5
|
%global patch_ver 0
|
||||||
|
|
||||||
%if %{with compat_build}
|
%if %{with compat_build}
|
||||||
%global pkg_name lld%{maj_ver}
|
%global pkg_name lld%{maj_ver}
|
||||||
@ -25,14 +26,14 @@
|
|||||||
|
|
||||||
Name: %{pkg_name}
|
Name: %{pkg_name}
|
||||||
Version: %{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:~rc%{rc_ver}}
|
Version: %{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:~rc%{rc_ver}}
|
||||||
Release: 4%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: The LLVM Linker
|
Summary: The LLVM Linker
|
||||||
|
|
||||||
License: NCSA
|
License: NCSA
|
||||||
URL: http://llvm.org
|
URL: http://llvm.org
|
||||||
Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-rc%{rc_ver}}/%{lld_srcdir}.tar.xz
|
Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-rc%{rc_ver}}/%{lld_srcdir}.tar.xz
|
||||||
Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-rc%{rc_ver}}/%{lld_srcdir}.tar.xz.sig
|
Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:-rc%{rc_ver}}/%{lld_srcdir}.tar.xz.sig
|
||||||
Source2: tstellar-gpg-key.asc
|
Source2: release-keys.asc
|
||||||
%if %{without compat_build}
|
%if %{without compat_build}
|
||||||
Source3: run-lit-tests
|
Source3: run-lit-tests
|
||||||
Source4: lit.lld-test.cfg.py
|
Source4: lit.lld-test.cfg.py
|
||||||
@ -45,11 +46,7 @@ Patch0: 0001-PATCH-lld-CMake-Check-for-gtest-headers-even-if-lit..patch
|
|||||||
# Bundle libunwind header need during build for MachO support
|
# Bundle libunwind header need during build for MachO support
|
||||||
Patch1: 0002-PATCH-lld-Import-compact_unwind_encoding.h-from-libu.patch
|
Patch1: 0002-PATCH-lld-Import-compact_unwind_encoding.h-from-libu.patch
|
||||||
|
|
||||||
# Backport --package-metadata flag
|
BuildRequires: clang
|
||||||
Patch2: 0001-ELF-Support-package-metadata.patch
|
|
||||||
|
|
||||||
BuildRequires: gcc
|
|
||||||
BuildRequires: gcc-c++
|
|
||||||
BuildRequires: cmake
|
BuildRequires: cmake
|
||||||
BuildRequires: ninja-build
|
BuildRequires: ninja-build
|
||||||
%if %{with compat_build}
|
%if %{with compat_build}
|
||||||
@ -160,18 +157,14 @@ sed 's/add_subdirectory(tools\/lld)//' -i CMakeLists.txt
|
|||||||
|
|
||||||
%if %{without compat_build}
|
%if %{without compat_build}
|
||||||
%global lit_cfg test/%{_arch}.site.cfg.py
|
%global lit_cfg test/%{_arch}.site.cfg.py
|
||||||
%global lit_unit_cfg test/Unit/%{_arch}.site.cfg.py
|
|
||||||
%global lit_lld_test_cfg_install_path %{_datadir}/lld/lit.lld-test.cfg.py
|
%global lit_lld_test_cfg_install_path %{_datadir}/lld/lit.lld-test.cfg.py
|
||||||
|
|
||||||
# Generate lit config files. Strip off the last line that initiates the
|
# Generate lit config files. Strip off the last line that initiates the
|
||||||
# test run, so we can customize the configuration.
|
# test run, so we can customize the configuration.
|
||||||
head -n -1 %{__cmake_builddir}/test/lit.site.cfg.py >> %{lit_cfg}
|
head -n -1 %{__cmake_builddir}/test/lit.site.cfg.py >> %{lit_cfg}
|
||||||
head -n -1 %{__cmake_builddir}/test/Unit/lit.site.cfg.py >> %{lit_unit_cfg}
|
|
||||||
|
|
||||||
# Patch lit config files to load custom config:
|
# Patch lit config files to load custom config:
|
||||||
for f in %{lit_cfg} %{lit_unit_cfg}; do
|
echo "lit_config.load_config(config, '%{lit_lld_test_cfg_install_path}')" >> %{lit_cfg}
|
||||||
echo "lit_config.load_config(config, '%{lit_lld_test_cfg_install_path}')" >> $f
|
|
||||||
done
|
|
||||||
|
|
||||||
# Install test files
|
# Install test files
|
||||||
install -d %{buildroot}%{_datadir}/lld/src
|
install -d %{buildroot}%{_datadir}/lld/src
|
||||||
@ -180,7 +173,6 @@ cp %{SOURCE4} %{buildroot}%{_datadir}/lld/
|
|||||||
# The various tar options are there to make sur the archive is the same on 32 and 64 bit arch, i.e.
|
# The various tar options are there to make sur the archive is the same on 32 and 64 bit arch, i.e.
|
||||||
# the archive creation is reproducible. Move arch-specific content out of the tarball
|
# the archive creation is reproducible. Move arch-specific content out of the tarball
|
||||||
mv %{lit_cfg} %{buildroot}%{_datadir}/lld/src/%{_arch}.site.cfg.py
|
mv %{lit_cfg} %{buildroot}%{_datadir}/lld/src/%{_arch}.site.cfg.py
|
||||||
mv %{lit_unit_cfg} %{buildroot}%{_datadir}/lld/src/%{_arch}.Unit.site.cfg.py
|
|
||||||
tar --sort=name --mtime='UTC 2020-01-01' -c test/ | gzip -n > %{buildroot}%{_datadir}/lld/src/test.tar.gz
|
tar --sort=name --mtime='UTC 2020-01-01' -c test/ | gzip -n > %{buildroot}%{_datadir}/lld/src/test.tar.gz
|
||||||
|
|
||||||
install -d %{buildroot}%{_libexecdir}/tests/lld
|
install -d %{buildroot}%{_libexecdir}/tests/lld
|
||||||
@ -190,9 +182,6 @@ install -m 0755 %{SOURCE3} %{buildroot}%{_libexecdir}/tests/lld
|
|||||||
install -d %{buildroot}%{_libdir}/lld/
|
install -d %{buildroot}%{_libdir}/lld/
|
||||||
|
|
||||||
rm -rf `find %{buildroot}%{_libdir}/lld/ -iname '*make*'`
|
rm -rf `find %{buildroot}%{_libdir}/lld/ -iname '*make*'`
|
||||||
|
|
||||||
# Install gtest libraries
|
|
||||||
cp %{__cmake_builddir}/%{_lib}/libgtest*so* %{buildroot}%{_libdir}/lld/
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Install libraries and binaries
|
# Install libraries and binaries
|
||||||
@ -252,11 +241,13 @@ fi
|
|||||||
%{_libdir}/lld/
|
%{_libdir}/lld/
|
||||||
%{_datadir}/lld/src/test.tar.gz
|
%{_datadir}/lld/src/test.tar.gz
|
||||||
%{_datadir}/lld/src/%{_arch}.site.cfg.py
|
%{_datadir}/lld/src/%{_arch}.site.cfg.py
|
||||||
%{_datadir}/lld/src/%{_arch}.Unit.site.cfg.py
|
|
||||||
%{_datadir}/lld/lit.lld-test.cfg.py
|
%{_datadir}/lld/lit.lld-test.cfg.py
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Sep 06 2022 Nikita Popov <npopov@redhat.com> - 15.0.0-1
|
||||||
|
- Update to LLVM 15.0.0
|
||||||
|
|
||||||
* Tue Aug 09 2022 Nikita Popov <npopov@redhat.com> - 14.0.5-4
|
* Tue Aug 09 2022 Nikita Popov <npopov@redhat.com> - 14.0.5-4
|
||||||
- Backport --package-metadata flag
|
- Backport --package-metadata flag
|
||||||
|
|
||||||
|
104
release-keys.asc
Normal file
104
release-keys.asc
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
|
||||||
|
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
|
||||||
|
9RmlwZlOTFGcWBYl/cfRONn9qi9a6w==
|
||||||
|
=Lvw+
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
|
||||||
|
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
|
||||||
|
=tMzl
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
4
sources
4
sources
@ -1,2 +1,2 @@
|
|||||||
SHA512 (lld-14.0.5.src.tar.xz.sig) = f3072577bace37a74815c7b7d69489afaef6b54320f53d59cf12f5a90ebe08f05978ed883d65b216fcce526587530a63655096a9d4e911fe1cefb6954f927830
|
SHA512 (lld-15.0.0.src.tar.xz) = 390b92c244732e56860e6c175090e4ddc2bd5e64366bb4fddb630fb9ddce2ceeda413d721ee64f30f6f69c25056199dc1a2f8071e393b6ae699b21ec01610fc4
|
||||||
SHA512 (lld-14.0.5.src.tar.xz) = d47e4f22f3228385b95c8b604833925f69bb7a0ee56d7f6461c0f1753e871a891857f50ac17d88c035f19f2112f4b7c729e1d51798a83be1d629375b253ed658
|
SHA512 (lld-15.0.0.src.tar.xz.sig) = abf5e5e7fbc81327694c990d68fc24b5c44eb359e2e878a8c2ae81ff8ef22dd07c4ccd7b45df5b1d5e0c95f7a42248e40a3171c7831b8888e7221a091e78519e
|
||||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user