[lld] r293027 - Write release notes for LLD 4.0.
Rafael Avila de Espindola via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 26 11:50:22 PST 2017
Thanks!
Rui Ueyama via llvm-commits <llvm-commits at lists.llvm.org> writes:
> Author: ruiu
> Date: Wed Jan 25 00:26:55 2017
> New Revision: 293027
>
> URL: http://llvm.org/viewvc/llvm-project?rev=293027&view=rev
> Log:
> Write release notes for LLD 4.0.
>
> Modified:
> lld/branches/release_40/docs/ReleaseNotes.rst
>
> Modified: lld/branches/release_40/docs/ReleaseNotes.rst
> URL: http://llvm.org/viewvc/llvm-project/lld/branches/release_40/docs/ReleaseNotes.rst?rev=293027&r1=293026&r2=293027&view=diff
> ==============================================================================
> --- lld/branches/release_40/docs/ReleaseNotes.rst (original)
> +++ lld/branches/release_40/docs/ReleaseNotes.rst Wed Jan 25 00:26:55 2017
> @@ -11,25 +11,79 @@ LLD 4.0.0 Release Notes
> Introduction
> ============
>
> -This document contains the release notes for the LLD linker, release 4.0.0.
> +LLD is a linker which supports ELF (Unix), COFF (Windows) and Mach-O
> +(macOS). It is generally faster than the GNU BFD/gold linkers or the
> +MSVC linker.
> +
> +LLD is designed to be a drop-in replacmenet for the system linkers, so
> +that users don't need to change their build systems other than swapping
> +the linker command.
> +
> +This document contains the release notes for LLD 4.0.0.
> Here we describe the status of LLD, including major improvements
> from the previous release. All LLD releases may be downloaded
> from the `LLVM releases web site <http://llvm.org/releases/>`_.
>
> -Non-comprehensive list of changes in this release
> -=================================================
> +
> +What's New in LLD 4.0?
> +======================
>
> ELF Improvements
> ----------------
>
> -* Initial support for LTO.
> +LLD provides much better compatibility with the GNU linker than before.
> +Now it is able to link the entire FreeBSD base system including kernel
> +out of the box. We are working closely with the FreeBSD project to
> +make it usable as the system linker in a future release of the operating
> +system.
> +
> +Multi-threading performance has been imporved, and multi-threading
> +is now enabled by default. Combined with other optimizations, LLD 4.0
> +is about 1.5 times faster than LLD 3.9 when linking large programs
> +in our test environment.
> +
> +Other notable changes are listed below:
> +
> +* Error messages contain more information than before. If debug info
> + is available, the linker prints out not only the object file name
> + but the source location of unresolved symbols.
> +
> +* Error messages are printed in red just like Clang by default. You
> + can disable it by passing -no-color-diagnostics.
> +
> +* LLD's version string is now embedded to a .comment section in a
> + result output file. You can dump it by this command: ``objdump -j -s
> + .comment <file>``.
> +
> +* The -Map option is supported. With that, you can print out section
> + and symbol information to a specified file. This feature is useful
> + to analyze link results.
> +
> +* The file format for the -reproduce option has changed from cpio to
> + tar.
> +
> +* When creating a copy relocation for a symbol, LLD now scans the
> + DSO's header to see if the symbol is in a read-only segment. If so,
> + space for the copy relocation is reserved in .bss.rel.ro instead of
> + .bss. This fixes a security issue that read-only data in a DSO
> + becomes writable if it is copied by a copy relocation. This issue
> + was disclosed originally on the binutils mailing list at
> + `<https://sourceware.org/ml/libc-alpha/2016-12/msg00914.html>`.
> +
> +* Default image base address for x86-64 has been changed from 0x10000
> + to 0x200000 to make it huge-page friendly.
> +
> +* Compressed input sections are supported.
> +
> +* ``--oformat binary``, ``--section-start``, ``-Tbss``, ``-Tdata``,
> + ``-Ttext``, ``-b binary``, ``-build-id=uuid``, ``-no-rosegment``,
> + ``-nopie``, ``-nostdlib``, ``-omagic``, ``-retain-symbols-file``,
> + ``-sort-section``, ``-z max-page-size`` and ``-z wxneeded`` are
> + suppoorted.
> +
> +* A lot of linker script directives have been added.
>
> COFF Improvements
> -----------------
>
> -* Item 1.
> -
> -MachO Improvements
> -------------------
> -
> -* Item 1.
> +*
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list