[llvm-branch-commits] [lld] 140ad18 - ReleaseNotes: add lld/ELF notes (#80393)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Sat Feb 3 10:48:19 PST 2024
Author: Fangrui Song
Date: 2024-02-03T10:48:15-08:00
New Revision: 140ad18e1ea2cfd59ffcbfc22809ae7986a71742
URL: https://github.com/llvm/llvm-project/commit/140ad18e1ea2cfd59ffcbfc22809ae7986a71742
DIFF: https://github.com/llvm/llvm-project/commit/140ad18e1ea2cfd59ffcbfc22809ae7986a71742.diff
LOG: ReleaseNotes: add lld/ELF notes (#80393)
Added:
Modified:
lld/docs/ReleaseNotes.rst
Removed:
################################################################################
diff --git a/lld/docs/ReleaseNotes.rst b/lld/docs/ReleaseNotes.rst
index 01669543cd50c..21a075ad8c4ef 100644
--- a/lld/docs/ReleaseNotes.rst
+++ b/lld/docs/ReleaseNotes.rst
@@ -29,8 +29,50 @@ ELF Improvements
* ``--fat-lto-objects`` option is added to support LLVM FatLTO.
Without ``--fat-lto-objects``, LLD will link LLVM FatLTO objects using the
relocatable object file. (`D146778 <https://reviews.llvm.org/D146778>`_)
+* ``-Bsymbolic-non-weak`` is added to directly bind non-weak definitions.
+ (`D158322 <https://reviews.llvm.org/D158322>`_)
+* ``--lto-validate-all-vtables-have-type-infos``, which complements
+ ``--lto-whole-program-visibility``, is added to disable unsafe whole-program
+ devirtualization. ``--lto-known-safe-vtables=<glob>`` can be used
+ to mark known-safe vtable symbols.
+ (`D155659 <https://reviews.llvm.org/D155659>`_)
+* ``--save-temps --lto-emit-asm`` now derives ELF/asm file names from bitcode file names.
+ ``ld.lld --save-temps a.o d/b.o -o out`` will create ELF relocatable files
+ ``out.lto.a.o``/``d/out.lto.b.o`` instead of ``out1.lto.o``/``out2.lto.o``.
+ (`#78835 <https://github.com/llvm/llvm-project/pull/78835>`_)
+* ``--no-allow-shlib-undefined`` now reports errors for DSO referencing
+ non-exported definitions.
+ (`#70769 <https://github.com/llvm/llvm-project/pull/70769>`_)
* common-page-size can now be larger than the system page-size.
(`#57618 <https://github.com/llvm/llvm-project/issues/57618>`_)
+* When call graph profile information is available due to instrumentation or
+ sample PGO, input sections are now sorted using the new ``cdsort`` algorithm,
+ better than the previous ``hfsort`` algorithm.
+ (`D152840 <https://reviews.llvm.org/D152840>`_)
+* Symbol assignments like ``a = DEFINED(a) ? a : 0;`` are now handled.
+ (`#65866 <https://github.com/llvm/llvm-project/pull/65866>`_)
+* ``OVERLAY`` now supports optional start address and LMA
+ (`#77272 <https://github.com/llvm/llvm-project/pull/77272>`_)
+* Relocations referencing a symbol defined in ``/DISCARD/`` section now lead to
+ an error.
+ (`#69295 <https://github.com/llvm/llvm-project/pull/69295>`_)
+* For AArch64 MTE, global variable descriptors have been implemented.
+ (`D152921 <https://reviews.llvm.org/D152921>`_)
+* ``R_AARCH64_GOTPCREL32`` is now supported.
+ (`#72584 <https://github.com/llvm/llvm-project/pull/72584>`_)
+* ``R_LARCH_PCREL20_S2``/``R_LARCH_ADD6``/``R_LARCH_CALL36`` and extreme code
+ model relocations are now supported.
+* ``--emit-relocs`` is now supported for RISC-V linker relaxation.
+ (`D159082 <https://reviews.llvm.org/D159082>`_)
+* Call relaxation respects RVC when mixing +c and -c relocatable files.
+ (`#73977 <https://github.com/llvm/llvm-project/pull/73977>`_)
+* ``R_RISCV_GOT32_PCREL`` is now supported.
+ (`#72587 <https://github.com/llvm/llvm-project/pull/72587>`_)
+* ``R_RISCV_SET_ULEB128``/``R_RISCV_SUB_ULEB128`` relocations are now supported.
+ (`#72610 <https://github.com/llvm/llvm-project/pull/72610>`_)
+ (`#77261 <https://github.com/llvm/llvm-project/pull/77261>`_)
+* RISC-V TLSDESC is now supported.
+ (`#79239 <https://github.com/llvm/llvm-project/pull/79239>`_)
Breaking changes
----------------
More information about the llvm-branch-commits
mailing list