lld 14.0.0git Release Notes¶
Warning
These are in-progress notes for the upcoming LLVM 14.0.0git release. Release notes for previous releases can be found on the Download Page.
Introduction¶
This document contains the release notes for the lld linker, release 14.0.0git. Here we describe the status of lld, including major improvements from the previous release. All lld releases may be downloaded from the LLVM releases web site.
Non-comprehensive list of changes in this release¶
ELF Improvements¶
--export-dynamic-symbol-list
has been added. (D107317)--why-extract
has been added to query why archive members/lazy object files are extracted. (D109572)e_entry
no longer falls back to the address of.text
if the entry symbol does not exist. Instead, a value of 0 will be written. (D110014)If
-Map
is specified,--cref
will be printed to the specified file. (D114663)No longer deduplicate local symbol names at the default optimization level of
-O1
. This results in a larger.strtab
(usually less than 1%) but a faster link time. Use optimization level-O2
to restore the deduplication.
Architecture specific changes:
The x86-32 port now supports TLSDESC (
-mtls-dialect=gnu2
). (D112582)The x86-64 port now handles non-RAX/non-adjacent
R_X86_64_GOTPC32_TLSDESC
andR_X86_64_TLSDESC_CALL
(-mtls-dialect=gnu2
). (D114416)For x86-64,
--no-relax
now suppressesR_X86_64_GOTPCRELX
andR_X86_64_REX_GOTPCRELX
GOT optimization (D113615)
Breaking changes¶
…
COFF Improvements¶
…
MinGW Improvements¶
…
MachO Improvements¶
Item 1.