hanchenye-llvm-project/lld/ELF
Peter Collingbourne 2c6fae179e ELF: Discard .ARM.exidx sections for empty functions instead of misordering them.
The logic added in r372781 caused ARMExidxSyntheticSection::addSection()
to return false for exidx sections without a link order dep that passed
isValidExidxSectionDep(). This included exidx sections for empty functions. As
a result, such exidx sections would end up treated like ordinary sections and
would end up being laid out before the ARMExidxSyntheticSection, most likely in
the wrong order relative to the exidx entries in the ARMExidxSyntheticSection,
breaking the orderedness invariant relied upon by unwinders. Fix this by
simply discarding such sections.

Differential Revision: https://reviews.llvm.org/D69744
2019-11-04 09:11:14 -08:00
..
Arch Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
AArch64ErrataFix.cpp Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
AArch64ErrataFix.h [ELF] Fix variable names in comments after VariableName -> variableName change 2019-07-16 05:50:45 +00:00
ARMErrataFix.cpp Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
ARMErrataFix.h [ELF][ARM] Implement --fix-cortex-a8 to fix erratum 657417 2019-09-16 09:38:38 +00:00
CMakeLists.txt [ELF][ARM] Implement --fix-cortex-a8 to fix erratum 657417 2019-09-16 09:38:38 +00:00
CallGraphSort.cpp Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
CallGraphSort.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Config.h [LLD][ELF] Support --[no-]mmap-output-file with F_no_mmap 2019-10-29 15:49:08 -07:00
DWARF.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
DWARF.h gdb-index: Wire up str_offsets section to avoid incorrect error message about offsets_base 2019-08-07 22:49:14 +00:00
Driver.cpp [LLD][ELF] Support --[no-]mmap-output-file with F_no_mmap 2019-10-29 15:49:08 -07:00
Driver.h [Coding style change] Rename variables so that they start with a lowercase letter 2019-07-10 05:00:37 +00:00
DriverUtils.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
EhFrame.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
EhFrame.h [Coding style change] Rename variables so that they start with a lowercase letter 2019-07-10 05:00:37 +00:00
ICF.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
ICF.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
InputFiles.cpp Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
InputFiles.h [LLD] Move duplicated dwarf parsing code to the Common library. NFC. 2019-10-21 08:01:52 +00:00
InputSection.cpp comment typo fix to cycle bots 2019-10-31 07:54:16 -04:00
InputSection.h [ELF] Delete SectionBase::assigned 2019-09-24 11:48:46 +00:00
LTO.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
LTO.h [Coding style change] Rename variables so that they start with a lowercase letter 2019-07-10 05:00:37 +00:00
LinkerScript.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
LinkerScript.h Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
MapFile.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
MapFile.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
MarkLive.cpp Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
MarkLive.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Options.td [LLD][ELF] Support --[no-]mmap-output-file with F_no_mmap 2019-10-29 15:49:08 -07:00
OutputSections.cpp Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
OutputSections.h [ELF] Make MergeInputSection merging aware of output sections 2019-09-24 11:48:31 +00:00
README.md
Relocations.cpp Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
Relocations.h [ELF][Hexagon] Replace R_HEXAGON_GOT with R_GOTPLT 2019-08-16 17:01:56 +00:00
ScriptLexer.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
ScriptLexer.h [Coding style change] Rename variables so that they start with a lowercase letter 2019-07-10 05:00:37 +00:00
ScriptParser.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
ScriptParser.h [ELF] Fix variable names in comments after VariableName -> variableName change 2019-07-16 05:50:45 +00:00
SymbolTable.cpp Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
SymbolTable.h [ELF] Rename odd variable names "New" after r365730. NFC 2019-08-13 06:19:39 +00:00
Symbols.cpp [ELF] Wrap things in `namespace lld { namespace elf {`, NFC 2019-10-07 08:31:18 +00:00
Symbols.h Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
SyntheticSections.cpp ELF: Discard .ARM.exidx sections for empty functions instead of misordering them. 2019-11-04 09:11:14 -08:00
SyntheticSections.h Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
Target.cpp Make nullptr check more robust 2019-10-10 12:41:08 +00:00
Target.h comment typo fix to cycle bots 2019-10-30 22:17:52 -04:00
Thunks.cpp Fix a few typos in lld/ELF to cycle bots 2019-10-28 21:41:47 -04:00
Thunks.h [Coding style change] Rename variables so that they start with a lowercase letter 2019-07-10 05:00:37 +00:00
Writer.cpp [LLD][ELF] Support --[no-]mmap-output-file with F_no_mmap 2019-10-29 15:49:08 -07:00
Writer.h Revert "Revert r370635, it caused PR43241." 2019-09-06 15:57:24 +00:00

README.md

See docs/NewLLD.rst