svn commit: r48611 - head/en_US.ISO8859-1/htdocs/news/status
Warren Block
wblock at FreeBSD.org
Wed Apr 13 16:15:01 UTC 2016
Author: wblock
Date: Wed Apr 13 16:15:00 2016
New Revision: 48611
URL: https://svnweb.freebsd.org/changeset/doc/48611
Log:
Add the lld linker report from Ed Maste <emaste at freebsd.org>.
Modified:
head/en_US.ISO8859-1/htdocs/news/status/report-2016-01-2016-03.xml
Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2016-01-2016-03.xml
==============================================================================
--- head/en_US.ISO8859-1/htdocs/news/status/report-2016-01-2016-03.xml Wed Apr 13 16:06:33 2016 (r48610)
+++ head/en_US.ISO8859-1/htdocs/news/status/report-2016-01-2016-03.xml Wed Apr 13 16:15:00 2016 (r48611)
@@ -1903,7 +1903,7 @@
community to consider.</p>
<p>Core is also coordinating with the committee headed by Anne
- Dickinson who are reviewing the Code of Conduct. A corpus of
+ Dickison who are reviewing the Code of Conduct. A corpus of
case studies is being assembled, which will be re-examined to
see what impact changes to the Code of Conduct would have
had.</p>
@@ -1925,4 +1925,92 @@
on lld and other parts of the toolchain.</p>
</body>
</project>
+
+ <project cat='bin'>
+ <title>Using <tt>lld</tt>, the LLVM Linker, to Link
+ FreeBSD</title>
+
+ <contact>
+ <person>
+ <name>
+ <given>Ed</given>
+ <common>Maste</common>
+ </name>
+ <email>emaste at FreeBSD.org</email>
+ </person>
+
+ <person>
+ <name>
+ <given>Davide</given>
+ <common>Italiano</common>
+ </name>
+ <email>davide at FreeBSD.org</email>
+ </person>
+ </contact>
+
+ <links>
+ <url href="https://wiki.freebsd.org/LLD">&os; lld wiki page</url>
+ <url href="http://lists.llvm.org/pipermail/llvm-dev/2016-March/096449.html">Status report on linking FreeBSD/amd64 with lld</url>
+ </links>
+
+ <body>
+ <p><tt>lld</tt> is the linker in the LLVM family of projects.
+ It is intended to be a high-performance linker and supports
+ the ELF, COFF and Mach-O object formats. Where possible,
+ <tt>lld</tt> maintains command-line and functional
+ compatibility with existing linkers (GNU BFD <tt>ld</tt> and
+ <tt>gold</tt>), but <tt>lld</tt>'s authors are not constrained
+ by strict compatability where it would hamper performance or
+ desired functionality.</p>
+
+ <p>The upstream <tt>lld</tt> project made significant progress
+ in adding new functionality to <tt>lld</tt>'s ELF support over
+ the first quarter of 2016. The <tt>lld</tt> ELF linker is
+ capable of self-hosting on FreeBSD/amd64 and is capable of
+ linking many test applications.</p>
+
+ <p><tt>lld</tt> currently lacks comprehensive linker script
+ expression evaluation support, and therefore cannot yet be
+ used to link the FreeBSD kernel. It also lacks versioned
+ symbol support, and does not implement some options used in
+ the FreeBSD boot loader components.</p>
+
+ <p>I've been running experimental world builds of FreeBSD/amd64
+ with <tt>lld</tt> installed in place of <tt>ld.bfd</tt> as the
+ linker. With workarounds for the current gaps in
+ functionality (using the <tt>WITHOUT_SYMVER</tt> option to
+ disable symbol versioning use, and linking the loader
+ components with GNU <tt>ld</tt>), <tt>lld</tt> is now able to
+ link a working FreeBSD system.</p>
+ </body>
+
+ <sponsor>The &os; Foundation</sponsor>
+
+ <help>
+ <task>
+ <p>Enable the <tt>lld</tt> option by default in the llvm-devel
+ (and later llvm) ports for testing.</p>
+ </task>
+
+ <task>
+ <p>Develop symbol version support and linker script expression
+ improvements in the upstream lld project.</p>
+ </task>
+
+ <task>
+ <p>Import a newer lld snapshot into the vendor area, add build
+ infrastructure and connect it to the world build, installed
+ as <tt>ld.lld</tt>.</p>
+ </task>
+
+ <task>
+ <p>Request a ports exp-run with <tt>/usr/bin/ld</tt> a symlink
+ to <tt>ld.lld</tt>.</p>
+ </task>
+
+ <task>
+ <p>Extensive testing.</p>
+ </task>
+ </help>
+ </project>
</report>
More information about the svn-doc-head
mailing list