Update to LLVM 15.0.0
This commit is contained in:
parent
0877bee401
commit
0bf9b4d339
2
.gitignore
vendored
2
.gitignore
vendored
@ -97,3 +97,5 @@
|
||||
/lld-14.0.0.src.tar.xz.sig
|
||||
/lld-14.0.5.src.tar.xz.sig
|
||||
/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_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 maj_ver 14
|
||||
%global maj_ver 15
|
||||
%global min_ver 0
|
||||
%global patch_ver 5
|
||||
%global patch_ver 0
|
||||
|
||||
%if %{with compat_build}
|
||||
%global pkg_name lld%{maj_ver}
|
||||
@ -25,14 +26,14 @@
|
||||
|
||||
Name: %{pkg_name}
|
||||
Version: %{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:~rc%{rc_ver}}
|
||||
Release: 4%{?dist}
|
||||
Release: 1%{?dist}
|
||||
Summary: The LLVM Linker
|
||||
|
||||
License: NCSA
|
||||
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
|
||||
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}
|
||||
Source3: run-lit-tests
|
||||
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
|
||||
Patch1: 0002-PATCH-lld-Import-compact_unwind_encoding.h-from-libu.patch
|
||||
|
||||
# Backport --package-metadata flag
|
||||
Patch2: 0001-ELF-Support-package-metadata.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: clang
|
||||
BuildRequires: cmake
|
||||
BuildRequires: ninja-build
|
||||
%if %{with compat_build}
|
||||
@ -160,18 +157,14 @@ sed 's/add_subdirectory(tools\/lld)//' -i CMakeLists.txt
|
||||
|
||||
%if %{without compat_build}
|
||||
%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
|
||||
|
||||
# Generate lit config files. Strip off the last line that initiates the
|
||||
# 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/Unit/lit.site.cfg.py >> %{lit_unit_cfg}
|
||||
|
||||
# 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}')" >> $f
|
||||
done
|
||||
echo "lit_config.load_config(config, '%{lit_lld_test_cfg_install_path}')" >> %{lit_cfg}
|
||||
|
||||
# Install test files
|
||||
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 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_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
|
||||
|
||||
install -d %{buildroot}%{_libexecdir}/tests/lld
|
||||
@ -190,9 +182,6 @@ install -m 0755 %{SOURCE3} %{buildroot}%{_libexecdir}/tests/lld
|
||||
install -d %{buildroot}%{_libdir}/lld/
|
||||
|
||||
rm -rf `find %{buildroot}%{_libdir}/lld/ -iname '*make*'`
|
||||
|
||||
# Install gtest libraries
|
||||
cp %{__cmake_builddir}/%{_lib}/libgtest*so* %{buildroot}%{_libdir}/lld/
|
||||
%endif
|
||||
|
||||
# Install libraries and binaries
|
||||
@ -252,11 +241,13 @@ fi
|
||||
%{_libdir}/lld/
|
||||
%{_datadir}/lld/src/test.tar.gz
|
||||
%{_datadir}/lld/src/%{_arch}.site.cfg.py
|
||||
%{_datadir}/lld/src/%{_arch}.Unit.site.cfg.py
|
||||
%{_datadir}/lld/lit.lld-test.cfg.py
|
||||
%endif
|
||||
|
||||
%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
|
||||
- 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-14.0.5.src.tar.xz) = d47e4f22f3228385b95c8b604833925f69bb7a0ee56d7f6461c0f1753e871a891857f50ac17d88c035f19f2112f4b7c729e1d51798a83be1d629375b253ed658
|
||||
SHA512 (lld-15.0.0.src.tar.xz) = 390b92c244732e56860e6c175090e4ddc2bd5e64366bb4fddb630fb9ddce2ceeda413d721ee64f30f6f69c25056199dc1a2f8071e393b6ae699b21ec01610fc4
|
||||
SHA512 (lld-15.0.0.src.tar.xz.sig) = abf5e5e7fbc81327694c990d68fc24b5c44eb359e2e878a8c2ae81ff8ef22dd07c4ccd7b45df5b1d5e0c95f7a42248e40a3171c7831b8888e7221a091e78519e
|
||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user