diff --git a/lld/docs/ReleaseNotes.rst b/lld/docs/ReleaseNotes.rst index 1995c80df652c..e13b0cf0678ce 100644 --- a/lld/docs/ReleaseNotes.rst +++ b/lld/docs/ReleaseNotes.rst @@ -29,12 +29,45 @@ ELF Improvements * ``-z nosectionheader`` has been implemented to omit the section header table. The operation is similar to ``llvm-objcopy --strip-sections``. (`#101286 `_) +* ``--randomize-section-padding=`` is introduced to insert random padding + between input sections and at the start of each segment. This can be used to + control measurement bias in A/B experiments. + (`#117653 `_) +* The reproduce tarball created with ``--reproduce=`` now excludes directories + specified in the ``--dependency-file`` argument (used by Ninja). This + resolves an error where non-existent directories could cause issues when + invoking ``ld.lld @response.txt``. +* ``--symbol-ordering-file=`` and call graph profile can now be used together. +* When ``--call-graph-ordering-file=`` is specified, ``.llvm.call-graph-profile`` + sections in relocatable files are no longer used. +* ``--lto-basic-block-sections=labels`` is deprecated in favor of + ``--lto-basic-block-address-map``. + (`#110697 `_) +* In non-relocatable links, a ``.note.GNU-stack`` section with the + ``SHF_EXECINSTR`` flag is now rejected unless ``-z execstack`` is specified. + (`#124068 `_) +* In relocatable links, the ``sh_entsize`` member of a ``SHF_MERGE`` section + with relocations is now respected in the output. +* Quoted names can now be used in output section phdr, memory region names, + ``OVERLAY``, the LHS of ``--defsym``, and ``INSERT AFTER``. * Section ``CLASS`` linker script syntax binds input sections to named classes, which are referenced later one or more times. This provides access to the automatic spilling mechanism of `--enable-non-contiguous-regions` without globally changing the semantics of section matching. It also independently increases the expressive power of linker scripts. (`#95323 `_) +* ``INCLUDE`` cycle detection has been fixed. A linker script can now be + included twice. +* The ``archivename:`` syntax when matching input sections is now supported. + (`#119293 `_) +* To support Arm v6-M, short thunks using B.w are no longer generated. + (`#118111 `_) +* For AArch64, BTI-aware long branch thunks can now be created to a destination + function without a BTI instruction. + (`#108989 `_) + (`#116402 `_) +* Relocations related to GOT and TLSDESC for the AArch64 Pointer Authentication ABI + are now supported. * Supported relocation types for x86-64 target: * ``R_X86_64_CODE_4_GOTPCRELX`` (`#109783 `_) (`#116737 `_) * ``R_X86_64_CODE_4_GOTTPOFF`` (`#116634 `_)