Skip to content

Commit ad697b2

Browse files
authored
ReleaseNotes: add lld/ELF notes
Pull Request: #124508
1 parent 760a786 commit ad697b2

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

lld/docs/ReleaseNotes.rst

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,45 @@ ELF Improvements
2929
* ``-z nosectionheader`` has been implemented to omit the section header table.
3030
The operation is similar to ``llvm-objcopy --strip-sections``.
3131
(`#101286 <https://github.com/llvm/llvm-project/pull/101286>`_)
32+
* ``--randomize-section-padding=<seed>`` is introduced to insert random padding
33+
between input sections and at the start of each segment. This can be used to
34+
control measurement bias in A/B experiments.
35+
(`#117653 <https://github.com/llvm/llvm-project/pull/117653>`_)
36+
* The reproduce tarball created with ``--reproduce=`` now excludes directories
37+
specified in the ``--dependency-file`` argument (used by Ninja). This
38+
resolves an error where non-existent directories could cause issues when
39+
invoking ``ld.lld @response.txt``.
40+
* ``--symbol-ordering-file=`` and call graph profile can now be used together.
41+
* When ``--call-graph-ordering-file=`` is specified, ``.llvm.call-graph-profile``
42+
sections in relocatable files are no longer used.
43+
* ``--lto-basic-block-sections=labels`` is deprecated in favor of
44+
``--lto-basic-block-address-map``.
45+
(`#110697 <https://github.com/llvm/llvm-project/pull/110697>`_)
46+
* In non-relocatable links, a ``.note.GNU-stack`` section with the
47+
``SHF_EXECINSTR`` flag is now rejected unless ``-z execstack`` is specified.
48+
(`#124068 <https://github.com/llvm/llvm-project/pull/124068>`_)
49+
* In relocatable links, the ``sh_entsize`` member of a ``SHF_MERGE`` section
50+
with relocations is now respected in the output.
51+
* Quoted names can now be used in output section phdr, memory region names,
52+
``OVERLAY``, the LHS of ``--defsym``, and ``INSERT AFTER``.
3253
* Section ``CLASS`` linker script syntax binds input sections to named classes,
3354
which are referenced later one or more times. This provides access to the
3455
automatic spilling mechanism of `--enable-non-contiguous-regions` without
3556
globally changing the semantics of section matching. It also independently
3657
increases the expressive power of linker scripts.
3758
(`#95323 <https://github.com/llvm/llvm-project/pull/95323>`_)
59+
* ``INCLUDE`` cycle detection has been fixed. A linker script can now be
60+
included twice.
61+
* The ``archivename:`` syntax when matching input sections is now supported.
62+
(`#119293 <https://github.com/llvm/llvm-project/pull/119293>`_)
63+
* To support Arm v6-M, short thunks using B.w are no longer generated.
64+
(`#118111 <https://github.com/llvm/llvm-project/pull/118111>`_)
65+
* For AArch64, BTI-aware long branch thunks can now be created to a destination
66+
function without a BTI instruction.
67+
(`#108989 <https://github.com/llvm/llvm-project/pull/108989>`_)
68+
(`#116402 <https://github.com/llvm/llvm-project/pull/116402>`_)
69+
* Relocations related to GOT and TLSDESC for the AArch64 Pointer Authentication ABI
70+
are now supported.
3871
* Supported relocation types for x86-64 target:
3972
* ``R_X86_64_CODE_4_GOTPCRELX`` (`#109783 <https://github.com/llvm/llvm-project/pull/109783>`_) (`#116737 <https://github.com/llvm/llvm-project/pull/116737>`_)
4073
* ``R_X86_64_CODE_4_GOTTPOFF`` (`#116634 <https://github.com/llvm/llvm-project/pull/116634>`_)

0 commit comments

Comments
 (0)