xref: /freebsd/contrib/llvm-project/lld/docs/ReleaseNotes.rst (revision 4824e7fd18a1223177218d4aec1b3c6c5c4a444e)
185868e8aSDimitry Andric========================
2349cc55cSDimitry Andriclld 14.0.0 Release Notes
385868e8aSDimitry Andric========================
40b57cec5SDimitry Andric
50b57cec5SDimitry Andric.. contents::
60b57cec5SDimitry Andric    :local:
70b57cec5SDimitry Andric
8e8d8bef9SDimitry Andric.. warning::
9349cc55cSDimitry Andric   These are in-progress notes for the upcoming LLVM 14.0.0 release.
10e8d8bef9SDimitry Andric   Release notes for previous releases can be found on
11e8d8bef9SDimitry Andric   `the Download Page <https://releases.llvm.org/download.html>`_.
12e8d8bef9SDimitry Andric
130b57cec5SDimitry AndricIntroduction
140b57cec5SDimitry Andric============
150b57cec5SDimitry Andric
16349cc55cSDimitry AndricThis document contains the release notes for the lld linker, release 14.0.0.
1785868e8aSDimitry AndricHere we describe the status of lld, including major improvements
1885868e8aSDimitry Andricfrom the previous release. All lld releases may be downloaded
1985868e8aSDimitry Andricfrom the `LLVM releases web site <https://llvm.org/releases/>`_.
200b57cec5SDimitry Andric
210b57cec5SDimitry AndricNon-comprehensive list of changes in this release
220b57cec5SDimitry Andric=================================================
230b57cec5SDimitry Andric
240b57cec5SDimitry AndricELF Improvements
250b57cec5SDimitry Andric----------------
260b57cec5SDimitry Andric
27349cc55cSDimitry Andric* ``--export-dynamic-symbol-list`` has been added.
28349cc55cSDimitry Andric  (`D107317 <https://reviews.llvm.org/D107317>`_)
29349cc55cSDimitry Andric* ``--why-extract`` has been added to query why archive members/lazy object files are extracted.
30349cc55cSDimitry Andric  (`D109572 <https://reviews.llvm.org/D109572>`_)
31349cc55cSDimitry Andric* ``e_entry`` no longer falls back to the address of ``.text`` if the entry symbol does not exist.
32349cc55cSDimitry Andric  Instead, a value of 0 will be written.
33349cc55cSDimitry Andric  (`D110014 <https://reviews.llvm.org/D110014>`_)
34*4824e7fdSDimitry Andric* If ``-Map`` is specified, ``--cref`` will be printted to the specified file.
35*4824e7fdSDimitry Andric  (`D114663 <https://reviews.llvm.org/D114663>`_)
366e75b2fbSDimitry Andric
376e75b2fbSDimitry AndricArchitecture specific changes:
386e75b2fbSDimitry Andric
39349cc55cSDimitry Andric* The x86-32 port now supports TLSDESC (``-mtls-dialect=gnu2``).
40349cc55cSDimitry Andric  (`D112582 <https://reviews.llvm.org/D112582>`_)
41*4824e7fdSDimitry Andric* The x86-64 port now handles non-RAX/non-adjacent ``R_X86_64_GOTPC32_TLSDESC``
42*4824e7fdSDimitry Andric  and ``R_X86_64_TLSDESC_CALL`` (``-mtls-dialect=gnu2``).
43*4824e7fdSDimitry Andric  (`D114416 <https://reviews.llvm.org/D114416>`_)
44349cc55cSDimitry Andric* For x86-64, ``--no-relax`` now suppresses ``R_X86_64_GOTPCRELX`` and
45349cc55cSDimitry Andric  ``R_X86_64_REX_GOTPCRELX`` GOT optimization
46349cc55cSDimitry Andric  (`D113615 <https://reviews.llvm.org/D113615>`_)
4713138422SDimitry Andric
488c27c554SDimitry AndricBreaking changes
498c27c554SDimitry Andric----------------
5013138422SDimitry Andric
51349cc55cSDimitry Andric* ...
520b57cec5SDimitry Andric
535ffd83dbSDimitry AndricCOFF Improvements
545ffd83dbSDimitry Andric-----------------
555ffd83dbSDimitry Andric
56349cc55cSDimitry Andric* ...
570b57cec5SDimitry Andric
580b57cec5SDimitry AndricMinGW Improvements
590b57cec5SDimitry Andric------------------
600b57cec5SDimitry Andric
61349cc55cSDimitry Andric* ...
62e8d8bef9SDimitry Andric
63349cc55cSDimitry AndricMachO Improvements
64349cc55cSDimitry Andric------------------
65e8d8bef9SDimitry Andric
66349cc55cSDimitry Andric* Item 1.
67e8d8bef9SDimitry Andric
68e8d8bef9SDimitry AndricWebAssembly Improvements
69e8d8bef9SDimitry Andric------------------------
70e8d8bef9SDimitry Andric
71