llvm-project/lld/ELF
Shoaib Meenai 2a04f5c455 [ELF] Drop unused original symbol after wrapping if not defined
We were previously only omitting the original of a wrapped symbol if it
was not used by an object file and undefined. We can tighten the second
condition to drop any symbol that isn't defined instead, which lets us
drop a previous check (added in https://reviews.llvm.org/D118756) that
was only covering some such symbols.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D124065
2022-04-22 16:47:15 -07:00
..
Arch [ELF][ARM] Fix unneeded thunk for branches to hidden undefined weak 2022-04-14 23:58:13 -07:00
AArch64ErrataFix.cpp [ELF] Don't rely on Symbols.h's transitive inclusion of InputFiles.h. NFC 2022-02-23 20:44:34 -08:00
AArch64ErrataFix.h [ELF] AArch64ErrataFix: replace std::map with DenseMap. NFC 2022-02-07 22:02:25 -08:00
ARMErrataFix.cpp [ELF] Don't rely on Symbols.h's transitive inclusion of InputFiles.h. NFC 2022-02-23 20:44:34 -08:00
ARMErrataFix.h [ELF] Clean up headers. NFC 2022-02-07 21:53:34 -08:00
CMakeLists.txt [ELF] Parallelize --compress-debug-sections=zlib 2022-01-25 10:29:04 -08:00
CallGraphSort.cpp [ELF] Don't rely on Symbols.h's transitive inclusion of InputFiles.h. NFC 2022-02-23 20:44:34 -08:00
CallGraphSort.h
Config.h [lld] Remove support for legacy pass manager 2022-04-07 10:17:31 +02:00
DWARF.cpp [ELF] Clean up headers. NFC 2022-02-07 21:53:34 -08:00
DWARF.h [ELF] --gdb-index: skip SHF_GROUP .debug_info 2020-08-13 09:11:01 -07:00
Driver.cpp [ELF] Drop unused original symbol after wrapping if not defined 2022-04-22 16:47:15 -07:00
Driver.h [ELF] Change global variable backwardReferences to a LinkerDriver member variable. NFC 2022-02-27 20:33:28 +00:00
DriverUtils.cpp [ELF] Clean up headers. NFC 2022-02-07 21:53:34 -08:00
EhFrame.cpp [ELF] Replace uncompressed InputSectionBase::data() with rawData. NFC 2022-02-21 00:39:26 -08:00
EhFrame.h [ELF] Simplify/optimize EhInputSection::split 2022-01-18 17:03:23 -08:00
ICF.cpp [ELF] Don't use multiple inheritance for OutputSection. NFC 2022-03-08 11:23:42 -08:00
ICF.h
InputFiles.cpp [ELF] Move invalid binding diagnostic from initializeSymbols to postParse 2022-03-16 00:31:29 -07:00
InputFiles.h Reland D119909 [ELF] Parallelize initializeLocalSymbols 2022-03-04 19:00:10 -08:00
InputSection.cpp [ELF][AArch64] Fix unneeded thunk for branches to hidden undefined weak 2022-04-14 11:32:30 -07:00
InputSection.h [ELF] --emit-relocs: adjust offsets of .rel[a].eh_frame relocations 2022-03-29 09:51:41 -07:00
LTO.cpp [ELF] Fix wrapping symbols produced during LTO codegen 2022-04-22 16:45:21 -07:00
LTO.h
LinkerScript.cpp [ELF] Don't use multiple inheritance for OutputSection. NFC 2022-03-08 11:23:42 -08:00
LinkerScript.h [ELF] Don't use multiple inheritance for OutputSection. NFC 2022-03-08 11:23:42 -08:00
MapFile.cpp [ELF] Don't use multiple inheritance for OutputSection. NFC 2022-03-08 11:23:42 -08:00
MapFile.h [ELF] Move --print-archive-stats= and --why-extract= beside --warn-backrefs report 2022-02-27 20:23:09 +00:00
MarkLive.cpp [ELF] Simplify MergeInputSection::getParentOffset. NFC 2022-03-28 10:02:35 -07:00
MarkLive.h
Options.td [lld] Remove support for legacy pass manager 2022-04-07 10:17:31 +02:00
OutputSections.cpp [ELF] Don't use multiple inheritance for OutputSection. NFC 2022-03-08 11:23:42 -08:00
OutputSections.h [ELF] Don't use multiple inheritance for OutputSection. NFC 2022-03-08 11:23:42 -08:00
README.md
Relocations.cpp [ELF] Move section assignment from initializeSymbols to postParse 2022-03-15 19:24:41 -07:00
Relocations.h [ELF] Clean up headers. NFC 2022-02-07 21:53:34 -08:00
ScriptLexer.cpp [ELF] Clean up headers. NFC 2022-02-07 21:53:34 -08:00
ScriptLexer.h [ELF] Clean up headers. NFC 2022-02-07 21:53:34 -08:00
ScriptParser.cpp [ELF] Don't use multiple inheritance for OutputSection. NFC 2022-03-08 11:23:42 -08:00
ScriptParser.h [ELF] Clean up headers. NFC 2022-02-07 21:53:34 -08:00
SymbolTable.cpp [ELF] Drop unused original symbol after wrapping if not defined 2022-04-22 16:47:15 -07:00
SymbolTable.h [ELF] Symbols.h: remove #include "InputFiles.h" 2022-02-23 21:36:45 -08:00
Symbols.cpp [ELF] Move SymbolUnion assertions to source file 2022-04-22 16:41:14 -07:00
Symbols.h [ELF] Fix wrapping symbols produced during LTO codegen 2022-04-22 16:45:21 -07:00
SyntheticSections.cpp [ELF] Fix spurious GOT/PLT assertion failure when .dynsym is discarded 2022-04-20 22:49:49 -07:00
SyntheticSections.h [ELF][MTE] Add --android-memtag-* options to synthesize ELF notes 2022-04-04 11:17:36 -07:00
Target.cpp [ELF] De-template getErrorPlace. NFC 2022-01-29 23:05:54 -08:00
Target.h [ELF] Clean up headers. NFC 2022-02-07 21:53:34 -08:00
Thunks.cpp [ELF] Don't rely on Symbols.h's transitive inclusion of InputFiles.h. NFC 2022-02-23 20:44:34 -08:00
Thunks.h [lld] Add missing includes (NFC) 2021-06-03 18:55:18 +02:00
Writer.cpp [ELF] Fix non-relocatable-non-emit-relocs --gc-sections to discard .L symbols 2022-04-07 14:34:32 -07:00
Writer.h [ELF] Clean up headers. NFC 2022-02-07 21:53:34 -08:00

README.md

See docs/NewLLD.rst