forked from OSchip/llvm-project
62 lines
1.4 KiB
ReStructuredText
62 lines
1.4 KiB
ReStructuredText
|
ATOM-based lld
|
||
|
==============
|
||
|
|
||
|
ATOM-based lld is a new set of modular code for creating linker tools.
|
||
|
Currently it supports Mach-O.
|
||
|
|
||
|
* End-User Features:
|
||
|
|
||
|
* Compatible with existing linker options
|
||
|
* Reads standard Object Files
|
||
|
* Writes standard Executable Files
|
||
|
* Remove clang's reliance on "the system linker"
|
||
|
* Uses the LLVM `"UIUC" BSD-Style license`__.
|
||
|
|
||
|
* Applications:
|
||
|
|
||
|
* Modular design
|
||
|
* Support cross linking
|
||
|
* Easy to add new CPU support
|
||
|
* Can be built as static tool or library
|
||
|
|
||
|
* Design and Implementation:
|
||
|
|
||
|
* Extensive unit tests
|
||
|
* Internal linker model can be dumped/read to textual format
|
||
|
* Additional linking features can be plugged in as "passes"
|
||
|
* OS specific and CPU specific code factored out
|
||
|
|
||
|
Why a new linker?
|
||
|
-----------------
|
||
|
|
||
|
The fact that clang relies on whatever linker tool you happen to have installed
|
||
|
means that clang has been very conservative adopting features which require a
|
||
|
recent linker.
|
||
|
|
||
|
In the same way that the MC layer of LLVM has removed clang's reliance on the
|
||
|
system assembler tool, the lld project will remove clang's reliance on the
|
||
|
system linker tool.
|
||
|
|
||
|
|
||
|
Contents
|
||
|
--------
|
||
|
|
||
|
.. toctree::
|
||
|
:maxdepth: 2
|
||
|
|
||
|
design
|
||
|
getting_started
|
||
|
ReleaseNotes
|
||
|
development
|
||
|
windows_support
|
||
|
open_projects
|
||
|
sphinx_intro
|
||
|
|
||
|
Indices and tables
|
||
|
------------------
|
||
|
|
||
|
* :ref:`genindex`
|
||
|
* :ref:`search`
|
||
|
|
||
|
__ http://llvm.org/docs/DeveloperPolicy.html#license
|