llvm-project/lld
Nick Kledzik 635f9c7158 [mach-o] Let darwin driver infer arch from .o files if -arch not used.
Mach-O has a "fat" (or "universal") variant where the same contents built for
different architectures are concatenated into one file with a table-of-contents
header at the start.  But this leaves a dilemma for the linker - which
architecture to use.

Normally, the linker command line -arch is used to force which slice of any fat
files are used.  The clang compiler always passes -arch to the linker when
invoking it.  But some Makefiles invoke the linker directly and don’t specify
the -arch option.  For those cases, the linker scans all input files in command
line order and finds the first non-fat object file.  Whatever architecture it
is becomes the architecture for the link.

llvm-svn: 217189
2014-09-04 20:08:30 +00:00
..
cmake/modules Add VTune as an optional external dependency and add task tracking. 2013-04-06 00:56:40 +00:00
docs [AArch64] Initial ELF/AArch64 Support 2014-08-13 13:16:38 +00:00
include [mach-o] Let darwin driver infer arch from .o files if -arch not used. 2014-09-04 20:08:30 +00:00
lib [mach-o] Let darwin driver infer arch from .o files if -arch not used. 2014-09-04 20:08:30 +00:00
test [mach-o] Let darwin driver infer arch from .o files if -arch not used. 2014-09-04 20:08:30 +00:00
tools [AArch64] Initial ELF/AArch64 Support 2014-08-13 13:16:38 +00:00
unittests [mach-o] Let darwin driver infer arch from .o files if -arch not used. 2014-09-04 20:08:30 +00:00
utils Update for llvm api change. 2014-07-06 17:43:22 +00:00
.arcconfig Update Phabricator server. 2014-04-07 04:52:24 +00:00
.clang-format Remove redundant "Standard: Cpp11" tag. The LLVM style has used the 2014-07-04 12:08:03 +00:00
.gitignore Update .gitignore to ignore hidden MacOSX Finder droppings 2014-07-16 21:01:17 +00:00
CMakeLists.txt Add support for building Sphinx documentation when being built inside LLVM source tree and using CMake. 2014-04-18 21:59:05 +00:00
LICENSE.TXT Update the copyright credits -- Happy new year 2014! 2014-01-01 08:27:31 +00:00
Makefile Initial set of Makefiles 2014-06-04 09:54:07 +00:00
README.md Test commit 2012-09-14 00:00:39 +00:00

README.md

LLVM Linker (lld)

This directory and its subdirectories contain source code for the LLVM Linker, a modular cross platform linker which is built as part of the LLVM compiler infrastructure project.

lld is open source software. You may freely distribute it under the terms of the license agreement found in LICENSE.txt.