Add lld entry from emaste

This commit is contained in:
Benjamin Kaduk 2016-10-26 00:46:19 +00:00
parent 07e81f3747
commit e9f8c1e2bd
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=49585

View file

@ -2073,4 +2073,74 @@
The FreeBSD Foundation
</sponsor>
</project>
<project cat='proj'>
<title>Using <tt>lld</tt>, the LLVM Linker, to Link &os;</title>
<contact>
<person>
<name>
<given>Ed</given>
<common>Maste</common>
</name>
<email>emaste@freebsd.org</email>
</person>
</contact>
<links>
<url href="https://wiki.freebsd.org/LLD">LLD Wiki Page</url>
</links>
<body>
<p><tt>lld</tt> is the linker in the LLVM family of projects.
It is a high-performance linker that supports the ELF, COFF,
and Mach-O object formats. Where possible, <tt>lld</tt>
maintains command-line and functional compatibility with the
existing GNU BFD ld and gold linkers. However, the authors of
<tt>lld</tt> are not constrained by strict compatibility where
it would hamper performance or desired functionality.</p>
<p>Compared to the GNU ld 2.17.50 currently in the base system,
<tt>lld</tt> will bring:</p>
<ul>
<li>AArch64 (arm64) support</li>
<li>Link Time Optimization (LTO)</li>
<li>New ABI support</li>
<li>Other linker optimizations</li>
<li>Much faster link times</li>
<li>Maintained code base</li>
</ul>
<p>The upstream <tt>lld</tt> project has now implemented
nearly all of the functionality required to link the amd64
FreeBSD base system, including the kernel. The boot loader
components and <tt>rescue</tt> utilities currently do not
build with <tt>lld</tt>.</p>
</body>
<help>
<task>Merge <tt>lld</tt> to FreeBSD head as part of the Clang
3.9.0 import.</task>
<task>Request a ports exp-run with <tt>lld</tt> installed as
<tt>/usr/bin/ld</tt>.</task>
<task>Fix building the boot loader with <tt>lld</tt>.</task>
<task>Fix building <tt>rescue</tt> with <tt>lld</tt>.</task>
<task>Test and iterate making <tt>lld</tt> fixes for
additional architectures.</task>
</help>
<sponsor>
The FreeBSD Foundation
</sponsor>
</project>
</report>