llvm-project/lld/ELF
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
..
CMakeLists.txt COFF: Implement /linkrepro flag. 2016-07-26 02:00:42 +00:00
Config.h [ELF/ARM] Add support for R_ARM_TARGET1 relocation. 2016-08-01 19:28:13 +00:00
Driver.cpp Add EM_IAMCU support. 2016-08-03 20:15:56 +00:00
Driver.h COFF: Implement /linkrepro flag. 2016-07-26 02:00:42 +00:00
DriverUtils.cpp COFF: Implement /linkrepro flag. 2016-07-26 02:00:42 +00:00
EhFrame.cpp [ELF] Allow arbitrary code alignment in .eh_frame 2016-07-29 04:41:38 +00:00
EhFrame.h Create a new file EhFrame.cpp and move code to read .eh_frame there. 2016-05-24 02:55:45 +00:00
Error.cpp Delete dead code. 2016-07-18 18:24:41 +00:00
Error.h ELF: Make check() always return a value. 2016-07-15 02:01:03 +00:00
ICF.cpp Do not pass Symtab to markLive/doICF since Symtab is globally accessible. 2016-05-02 19:30:42 +00:00
ICF.h Do not pass Symtab to markLive/doICF since Symtab is globally accessible. 2016-05-02 19:30:42 +00:00
InputFiles.cpp Rename functions that handle bitcode files. 2016-08-03 20:33:17 +00:00
InputFiles.h COFF: Implement /linkrepro flag. 2016-07-26 02:00:42 +00:00
InputSection.cpp Include filenames and section names to error messages. 2016-08-03 04:39:42 +00:00
InputSection.h Include filenames and section names to error messages. 2016-08-03 04:39:42 +00:00
LTO.cpp Add a pointer to a source file to SymbolBody. 2016-07-17 03:11:46 +00:00
LTO.h ELF: Remove member variables that are used only in one function. 2016-07-15 03:06:42 +00:00
LinkerScript.cpp Simplify. NFC. 2016-08-05 01:25:45 +00:00
LinkerScript.h Split InputSectionDescription::Sort into SortInner and SortOuter. 2016-08-04 22:27:00 +00:00
MarkLive.cpp Fix PR28575. 2016-07-21 20:18:30 +00:00
Options.td [ELF] Ignore -g option for compatibility. 2016-08-02 22:14:00 +00:00
OutputSections.cpp Remove DefinedCommon::Section. 2016-08-02 01:35:13 +00:00
OutputSections.h Make toPhdrFlags a member function. NFC. 2016-07-27 14:10:56 +00:00
README.md Update the documents of the new LLD. 2016-03-12 06:06:40 +00:00
Relocations.cpp Really fix invalid EhSectionPiece access. 2016-07-21 21:15:32 +00:00
Relocations.h Create thunks before regular relocation scan. 2016-07-20 17:58:07 +00:00
ScriptParser.cpp Create Strings.cpp and move string manipulation functions to that file. 2016-06-29 08:01:32 +00:00
ScriptParser.h Remove dead ctor. 2016-07-30 00:13:30 +00:00
Strings.cpp Move demangle() from Symbols.cpp to Strings.cpp. 2016-07-07 23:04:15 +00:00
Strings.h Move demangle() from Symbols.cpp to Strings.cpp. 2016-07-07 23:04:15 +00:00
SymbolListFile.cpp Use skip() instead of peek() and expect(). 2016-07-16 18:45:23 +00:00
SymbolListFile.h [ELF] - Add Id field to Version struct. 2016-07-12 07:44:40 +00:00
SymbolTable.cpp [ELF] Allows setting section for common symbols in linker script 2016-07-28 19:24:13 +00:00
SymbolTable.h Simplify symbol version handling. 2016-07-21 13:13:21 +00:00
Symbols.cpp Remove DefinedCommon::Section. 2016-08-02 01:35:13 +00:00
Symbols.h Remove DefinedCommon::Section. 2016-08-02 01:35:13 +00:00
Target.cpp Add EM_IAMCU support. 2016-08-03 20:15:56 +00:00
Target.h Create thunks before regular relocation scan. 2016-07-20 17:58:07 +00:00
Thunks.cpp Simplify. NFC. 2016-07-12 23:28:30 +00:00
Thunks.h Attempt to fix buildbots. 2016-07-09 23:02:37 +00:00
Writer.cpp [ELF][MIPS] Produce a correct and complete set of MIPS ELF header flags 2016-08-06 05:11:41 +00:00
Writer.h Make toPhdrFlags a member function. NFC. 2016-07-27 14:10:56 +00:00

README.md

See docs/NewLLD.rst