llvm-project/lld
Simon Atanasyan 24c24fedba [ELF][MIPS] Produce a correct and complete set of MIPS ELF header flags
The patch extends the `getMipsEFlags` function. Now in that function
we iterate over all object files, parse ELF header flags and merge them.
If a file is incompatible with previously analyzed ones we show an error
or warning. That can happen if, for example, we try to link files with
incompatible ABI, ISA, NAN encoding etc.

There is an alternative solution. We can check and merge flags and
reject incompatible input modules in the `isCompatible` function which
is called from the `SymbolTable::addFile` method. But in that case we
have to save and keep somewhere a merged ELF flags combination to use it
later in the writer.

Differential Revision: http://reviews.llvm.org/D23161

llvm-svn: 277911
2016-08-06 05:11:41 +00:00
..
COFF COFF ARM: Apply an existing offset in MOV32T relocations 2016-08-05 18:20:31 +00:00
ELF [ELF][MIPS] Produce a correct and complete set of MIPS ELF header flags 2016-08-06 05:11:41 +00:00
cmake/modules
docs fix warning when generating sphinx doc. 2016-07-21 02:27:05 +00:00
include/lld [MachO/Core] Remove (now) unused static member function. NFCI. 2016-08-04 19:49:11 +00:00
lib ExportTrie nodes need to be visisted in order. 2016-08-05 21:37:12 +00:00
test [ELF][MIPS] Produce a correct and complete set of MIPS ELF header flags 2016-08-06 05:11:41 +00:00
tools/lld Update error message to use "ld.lld" instead of "lld -flavor gnu". 2016-07-14 17:57:33 +00:00
unittests Fix Clang-tidy misc-unused-using-decls and Include What You Use warnings. 2016-04-21 17:14:10 +00:00
.arcconfig Upgrade all the .arcconfigs to https. 2016-07-14 13:15:37 +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 Inline a trivial CMakeLists.txt. 2016-03-03 01:56:23 +00:00
CODE_OWNERS.TXT Add initial CODE_OWNERS.TXT file 2015-07-25 00:44:37 +00:00
LICENSE.TXT Update copyright year to 2016. 2016-03-30 22:40:59 +00:00
README.md

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.