[PATCH] D97113: ReleaseNotes: add lld/ELF notes

James Henderson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 24 01:28:12 PST 2021


jhenderson added a comment.

Thanks for the update. A few more grammar suggestions for you inline.



================
Comment at: lld/docs/ReleaseNotes.rst:27
 
+* ``--dependency-file`` is added. (Similar to ``cc -M -MF``.)
+  (`D82437 <https://reviews.llvm.org/D82437>`_)
----------------
Same for `--lto-pseudo-probe-for-profiling` and `--no-lto-whole-program-visibility`.


================
Comment at: lld/docs/ReleaseNotes.rst:29
+  (`D82437 <https://reviews.llvm.org/D82437>`_)
 * ``--error-handling-script`` is added to allow for user-defined handlers upon
   missing libraries. (`D87758 <https://reviews.llvm.org/D87758>`_)
----------------
Not specific to this change, but you might as well fix it whilst here.


================
Comment at: lld/docs/ReleaseNotes.rst:31
   missing libraries. (`D87758 <https://reviews.llvm.org/D87758>`_)
+* ``--exclude-libs`` can localize defined version symbols and bitcode referenced libcall symbols.
+  (`D94280 <https://reviews.llvm.org/D94280>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:36
+  (`D89751 <https://reviews.llvm.org/D89751>`_)
+* ``--gdb-index --emit-relocs`` can be used together now.
+  (`D94354 <https://reviews.llvm.org/D94354>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:38
+  (`D94354 <https://reviews.llvm.org/D94354>`_)
+* ``--icf={safe,all}`` conservatively do not fold text sections with LSDA.
+  Previously ICF on ``-fexceptions`` code could be unsafe.
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:41
+  (`D84610 <https://reviews.llvm.org/D84610>`_)
+* ``--icf={safe,all}`` can fold two sections with relocations referencing aliased symbols.
+  (`D88830 <https://reviews.llvm.org/D88830>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:47
+  (`D92060 <https://reviews.llvm.org/D92060>`_)
+* ``--oformat-binary`` is fixed to respect LMA.
+  (`D85086 <https://reviews.llvm.org/D85086>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:52
+  (`D84131 <https://reviews.llvm.org/D84131>`_)
+* A ``-u`` specified symbol will not change the binding to ``STB_WEAK``.
+  (`D88945 <https://reviews.llvm.org/D88945>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:54
+  (`D88945 <https://reviews.llvm.org/D88945>`_)
+* ``--wrap`` support is now improved.
+  + If ``foo`` is not referenced, there is no longer an undefined symbol ``__wrap_foo``.
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:57
+  + If ``__real_foo`` is not referenced, there is no longer an undefined symbol ``foo``.
+* ``SHF_LINK_ORDER`` sections can have zero ``sh_link`` values.
+* ``SHF_LINK_ORDER`` and non-``SHF_LINK_ORDER`` sections can be mixed within an input section description.
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:58
+* ``SHF_LINK_ORDER`` sections can have zero ``sh_link`` values.
+* ``SHF_LINK_ORDER`` and non-``SHF_LINK_ORDER`` sections can be mixed within an input section description.
+  (`D84001 <https://reviews.llvm.org/D84001>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:62
+  (`D84054 <https://reviews.llvm.org/D84054>`_)
+* ``DEFINED`` is fixed to check whether the symbol is defined.
+  (`D83758 <https://reviews.llvm.org/D83758>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:64
+  (`D83758 <https://reviews.llvm.org/D83758>`_)
+* An input section description may have multiple ``SORT_*``.
+  The matched sections are ordered by radix sort with the keys being ``(SORT*, --sort-section, input order)``.
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:67
+  (`D91127 <https://reviews.llvm.org/D91127>`_)
+* Users can provide a GNU style linker script to convert ``.ctors`` into ``.init_array``.
+  (`D91187 <https://reviews.llvm.org/D91187>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:72
+* Some symbol versioning improvements.
+  + Defined ``foo@@v1`` resolve undefined ``foo at v1`` (`D92259 <https://reviews.llvm.org/D92259>`_)
+  + Undefined ``foo at v1`` now gets an error (`D92260 <https://reviews.llvm.org/D92260>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:74
+  + Undefined ``foo at v1`` now gets an error (`D92260 <https://reviews.llvm.org/D92260>`_)
+* AArch64 has support for ``STO_AARCH64_VARIANT_PCS`` and ``DT_AARCH64_VARIANT_PCS`` now.
+  (`D93045 <https://reviews.llvm.org/D93045>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:76
+  (`D93045 <https://reviews.llvm.org/D93045>`_)
+* AArch64 has support for ``R_AARCH64_LD64_GOTPAGE_LO15`` now.
+* PowerPC64 port detects missing R_PPC64_TLSGD/R_PPC64_TLSLD and disables TLS relaxation.
----------------
Is there a review for this one?


================
Comment at: lld/docs/ReleaseNotes.rst:77
+* AArch64 has support for ``R_AARCH64_LD64_GOTPAGE_LO15`` now.
+* PowerPC64 port detects missing R_PPC64_TLSGD/R_PPC64_TLSLD and disables TLS relaxation.
+  This allows linking with object files produced by very old IBM XL compilers.
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:80
+  (`D92959 <https://reviews.llvm.org/D92959>`_)
+* Many PowerPC PC-relative relocations are supported.
+* ``R_PPC_ADDR24`` and ``R_PPC64_ADDR16_HIGH`` are supported.
----------------
Should this be "many more"? Presumably there were some that were already supported?


================
Comment at: lld/docs/ReleaseNotes.rst:81
+* Many PowerPC PC-relative relocations are supported.
+* ``R_PPC_ADDR24`` and ``R_PPC64_ADDR16_HIGH`` are supported.
+* powerpcle is now supported. Tested with FreeBSD kernel and userspace.
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:84
+  (`D93917 <https://reviews.llvm.org/D93917>`_)
+* Non-``SHF_ALLOC`` sections have larger file offsets than ``SHF_ALLOC`` sections.
+  (`D85867 <https://reviews.llvm.org/D85867>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:86
+  (`D85867 <https://reviews.llvm.org/D85867>`_)
+* RISC-V: the first ``SHT_RISCV_ATTRIBUTES`` section is retained.
+  (`D86309 <https://reviews.llvm.org/D86309>`_)
----------------



================
Comment at: lld/docs/ReleaseNotes.rst:88
+  (`D86309 <https://reviews.llvm.org/D86309>`_)
+* LTO pipeline defaults to the new PM if the CMake variable ``ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER`` is on.
+  (`D92885 <https://reviews.llvm.org/D92885>`_)
----------------
Is there an option (other than the CMake variable) to turn this off at runtime? If not "defaults" should probably be "uses".


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D97113/new/

https://reviews.llvm.org/D97113



More information about the llvm-commits mailing list