hanchenye-llvm-project/lld/ELF
George Rimar 848405b164 [ELF] - Do not crash when do --gc-sections for non-allocatable metadata sections.
Currently, LLD marks all non-allocatable sections except SHF_REL[A] as Live
when doing GC.

This can be a reason of the crash when SHF_LINK_ORDER sections
are involved, because their parents can be dead.

We should do GC for them correctly. The patch implements it.

Differential revision: https://reviews.llvm.org/D46880

llvm-svn: 332589
2018-05-17 10:00:34 +00:00
..
Arch [lld] Make helpers static. NFC. 2018-05-15 22:01:54 +00:00
AArch64ErrataFix.cpp Add a SectionBase::getVA helper. NFC. 2018-03-24 00:35:11 +00:00
AArch64ErrataFix.h Consistent (non) use of empty lines in include blocks 2018-02-20 21:53:18 +00:00
Bits.h
CMakeLists.txt [CMake] Fix BUILD_SHARED_LIBS regression due to r331405 2018-05-03 10:03:45 +00:00
CallGraphSort.cpp [ELF] - Never use std::sort. 2018-04-24 09:55:39 +00:00
CallGraphSort.h [ELF] Add profile guided section layout 2018-04-17 23:30:05 +00:00
Config.h Add support for ThinLTO plugin option thinlto-object-suffix-replace 2018-05-16 21:04:08 +00:00
Driver.cpp Add support for ThinLTO plugin option thinlto-object-suffix-replace 2018-05-16 21:04:08 +00:00
Driver.h Remove "--full-shutdown" and instead use an environment variable LLD_IN_TEST. 2018-02-16 23:41:48 +00:00
DriverUtils.cpp lld-link: Add --color-diagnostics(={always,never,auto})?, --no-color-diagnostics flags. 2018-05-10 18:19:02 +00:00
EhFrame.cpp [ELF] Simplify read32. NFC 2018-03-30 23:13:00 +00:00
EhFrame.h De-template EhReader. NFC. 2017-10-27 03:14:09 +00:00
Filesystem.cpp s/LLVM_ON_WIN32/_WIN32/, lld 2018-04-10 13:15:21 +00:00
Filesystem.h Add a missing #include. 2017-11-17 08:17:21 +00:00
GdbIndex.cpp s/uncompress/decompress/g. 2018-02-12 21:56:14 +00:00
GdbIndex.h [ELF] - Teach LLD to use information from .debug_str for error reporting. 2017-11-17 11:57:47 +00:00
ICF.cpp [ELF] Implement --keep-unique option 2018-05-15 08:57:21 +00:00
ICF.h Consistent use of header file for ICF and MarkLive 2018-02-20 22:09:59 +00:00
InputFiles.cpp Add support for ThinLTO plugin option thinlto-object-suffix-replace 2018-05-16 21:04:08 +00:00
InputFiles.h Add support for ThinLTO plugin option thinlto-object-suffix-replace 2018-05-16 21:04:08 +00:00
InputSection.cpp [ELF][MIPS] Fix calculation of GP relative relocations in case of relocatable output 2018-05-08 15:34:06 +00:00
InputSection.h [ELF] Implement --keep-unique option 2018-05-15 08:57:21 +00:00
LTO.cpp Add support for ThinLTO plugin option thinlto-object-suffix-replace 2018-05-16 21:04:08 +00:00
LTO.h Update ThinLTO Indexing logic 2018-05-08 20:12:07 +00:00
LinkerScript.cpp Delete unused variable. 2018-04-26 19:21:07 +00:00
LinkerScript.h [ELF] - Eliminate the AssertCommand. 2018-04-25 11:16:31 +00:00
MapFile.cpp Replace SharedSymbols with Defined when creating copy relocations. 2018-04-26 17:58:58 +00:00
MapFile.h Implement --cref. 2018-03-14 20:29:45 +00:00
MarkLive.cpp [ELF] - Do not crash when do --gc-sections for non-allocatable metadata sections. 2018-05-17 10:00:34 +00:00
MarkLive.h Consistent use of header file for ICF and MarkLive 2018-02-20 22:09:59 +00:00
Options.td [ELF] Implement --keep-unique option 2018-05-15 08:57:21 +00:00
OutputSections.cpp [PPC64] Remove support for ELF V1 ABI in LLD 2018-05-04 15:09:49 +00:00
OutputSections.h [PPC64] Remove support for ELF V1 ABI in LLD 2018-05-04 15:09:49 +00:00
README.md
Relocations.cpp [PPC64] isRelExpr should return true for the PPC Call Exprs. 2018-05-11 19:31:19 +00:00
Relocations.h [PPC64] Remove support for ELF V1 ABI in LLD 2018-05-04 15:09:49 +00:00
ScriptLexer.cpp Simplify script lexer. 2017-12-26 10:13:10 +00:00
ScriptLexer.h
ScriptParser.cpp [ELF] - Eliminate the AssertCommand. 2018-04-25 11:16:31 +00:00
ScriptParser.h [ELF] Support expressions with -defsym option 2017-11-04 02:03:58 +00:00
SymbolTable.cpp [lld] Make helpers static. NFC. 2018-05-15 22:01:54 +00:00
SymbolTable.h Make fetchIfLazy only fetch an object file. NFC. 2018-04-03 18:01:18 +00:00
Symbols.cpp [ELF] Do not error for missing version when symbol has local version. 2018-05-14 10:13:56 +00:00
Symbols.h [PPC64] Emit plt call stubs to the text section rather then the plt section. 2018-05-06 19:13:29 +00:00
SyntheticSections.cpp [PPC64] Add lazy symbol resolution stubs. 2018-05-09 02:07:53 +00:00
SyntheticSections.h Don't create a temporary DenseMap for each input .eh_frame. 2018-04-27 20:19:28 +00:00
Target.cpp [ELF] - Teach LLD to hint about -fdebug-types-section. 2018-03-21 09:19:34 +00:00
Target.h [ELF] Fix typo. NFC 2018-04-27 05:50:40 +00:00
Thunks.cpp ELF Thunks: fix build error: missing 'overrides' 2018-05-06 19:50:04 +00:00
Thunks.h ELF: Allow thunks to change size. NFCI. 2018-03-29 22:32:13 +00:00
Writer.cpp [ELF] PowerOpen ABI -> Power Architecture 64-bit v2 ABI. NFC 2018-05-17 05:34:29 +00:00
Writer.h Consistent use of header file for ICF and MarkLive 2018-02-20 22:09:59 +00:00

README.md

See docs/NewLLD.rst