1=========================== 2lld |release| Release Notes 3=========================== 4 5.. contents:: 6 :local: 7 8.. only:: PreRelease 9 10 .. warning:: 11 These are in-progress notes for the upcoming LLVM |release| release. 12 Release notes for previous releases can be found on 13 `the Download Page <https://releases.llvm.org/download.html>`_. 14 15Introduction 16============ 17 18This document contains the release notes for the lld linker, release |release|. 19Here we describe the status of lld, including major improvements 20from the previous release. All lld releases may be downloaded 21from the `LLVM releases web site <https://llvm.org/releases/>`_. 22 23Non-comprehensive list of changes in this release 24================================================= 25 26ELF Improvements 27---------------- 28 29* ``--export-dynamic-symbol-list`` has been added. 30 (`D107317 <https://reviews.llvm.org/D107317>`_) 31* ``--why-extract`` has been added to query why archive members/lazy object files are extracted. 32 (`D109572 <https://reviews.llvm.org/D109572>`_) 33* ``e_entry`` no longer falls back to the address of ``.text`` if the entry symbol does not exist. 34 Instead, a value of 0 will be written. 35 (`D110014 <https://reviews.llvm.org/D110014>`_) 36* If ``-Map`` is specified, ``--cref`` will be printed to the specified file. 37 (`D114663 <https://reviews.llvm.org/D114663>`_) 38* No longer deduplicate local symbol names at the default optimization level of ``-O1``. 39 This results in a larger ``.strtab`` (usually less than 1%) but a faster link 40 time. Use optimization level ``-O2`` to restore the deduplication. 41 42Architecture specific changes: 43 44* The x86-32 port now supports TLSDESC (``-mtls-dialect=gnu2``). 45 (`D112582 <https://reviews.llvm.org/D112582>`_) 46* The x86-64 port now handles non-RAX/non-adjacent ``R_X86_64_GOTPC32_TLSDESC`` 47 and ``R_X86_64_TLSDESC_CALL`` (``-mtls-dialect=gnu2``). 48 (`D114416 <https://reviews.llvm.org/D114416>`_) 49* For x86-64, ``--no-relax`` now suppresses ``R_X86_64_GOTPCRELX`` and 50 ``R_X86_64_REX_GOTPCRELX`` GOT optimization 51 (`D113615 <https://reviews.llvm.org/D113615>`_) 52 53Breaking changes 54---------------- 55 56* ... 57 58COFF Improvements 59----------------- 60 61* ... 62 63MinGW Improvements 64------------------ 65 66* ... 67 68MachO Improvements 69------------------ 70 71* Item 1. 72 73WebAssembly Improvements 74------------------------ 75 76