llvm-project/lld/ELF
Rafael Espindola 8f619ab826 Compact symbols from 96 to 88 bytes.
By using an index instead of a pointer for verdef we can put the index
next to the alignment field. This uses the otherwise wasted area and
reduces the shared symbol size.

By itself the performance change of this is in the noise, but I have a
followup patch to remove another 8 bytes that improves performance
when combined with this.

llvm-svn: 320449
2017-12-12 01:45:49 +00:00
..
Arch Return R_PLT_PC for R_PPC_PLTREL24. 2017-12-11 22:40:18 +00:00
AArch64ErrataFix.cpp Remove some includes from InputFiles.h. 2017-12-09 16:56:18 +00:00
AArch64ErrataFix.h [ELF] AArch64 Errata fix, add missing files. 2017-12-05 16:04:45 +00:00
Bits.h Move bit operations to a new file, ELF/Bits.h. 2017-10-26 21:37:17 +00:00
CMakeLists.txt [ELF] Implement scanner for Cortex-A53 Erratum 843419 2017-12-05 15:59:05 +00:00
Config.h Add an option for ICFing data. 2017-12-12 01:36:24 +00:00
Driver.cpp Add an option for ICFing data. 2017-12-12 01:36:24 +00:00
Driver.h [ELF] Fall back to search dirs for linker scripts specified with -T 2017-11-20 15:43:20 +00:00
DriverUtils.cpp Remove redundant local variables. 2017-12-11 23:19:11 +00:00
EhFrame.cpp De-template EhReader. NFC. 2017-10-27 03:14:09 +00:00
EhFrame.h De-template EhReader. NFC. 2017-10-27 03:14:09 +00:00
Filesystem.cpp Don't use llvm/Config/config.h. 2017-11-17 21:40:38 +00:00
Filesystem.h Add a missing #include. 2017-11-17 08:17:21 +00:00
GdbIndex.cpp Remove some includes from InputFiles.h. 2017-12-09 16:56:18 +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 Add an option for ICFing data. 2017-12-12 01:36:24 +00:00
ICF.h [ELF] - Apply clang-format. NFC. 2017-07-18 11:55:35 +00:00
InputFiles.cpp Compact symbols from 96 to 88 bytes. 2017-12-12 01:45:49 +00:00
InputFiles.h Compact symbols from 96 to 88 bytes. 2017-12-12 01:45:49 +00:00
InputSection.cpp Remove some includes from InputFiles.h. 2017-12-09 16:56:18 +00:00
InputSection.h Delete dead code. 2017-11-30 05:52:42 +00:00
LTO.cpp Use Symbol::File directly. 2017-11-29 22:47:35 +00:00
LTO.h Move new lld's code to Common subdirectory. 2017-10-02 21:00:41 +00:00
LinkerScript.cpp [ELF] Change default output section type to SHT_NOBITS 2017-12-11 23:25:27 +00:00
LinkerScript.h Delete dead code. NFC. 2017-11-29 01:55:03 +00:00
MapFile.cpp Remove some includes from InputFiles.h. 2017-12-09 16:56:18 +00:00
MapFile.h Pass symbol attributes instead of ElfSym to Shared symbol ctor. 2017-10-28 20:15:56 +00:00
MarkLive.cpp ELF: Do not follow relocation edges to output sections during GC. 2017-12-11 22:47:43 +00:00
Options.td Add an option for ICFing data. 2017-12-12 01:36:24 +00:00
OutputSections.cpp [ELF] Change default output section type to SHT_NOBITS 2017-12-11 23:25:27 +00:00
OutputSections.h Delete dead code. NFC. 2017-11-29 01:55:03 +00:00
README.md Update the documents of the new LLD. 2016-03-12 06:06:40 +00:00
Relocations.cpp Move RelaPlt and RelaIplt to InX. NFC. 2017-12-10 20:07:03 +00:00
Relocations.h Rename Body -> Sym. 2017-11-04 00:31:04 +00:00
ScriptLexer.cpp [lld] unified COFF and ELF error handling on new Common/ErrorHandler 2017-10-25 22:28:38 +00:00
ScriptLexer.h Move new lld's code to Common subdirectory. 2017-10-02 21:00:41 +00:00
ScriptParser.cpp Move Memory.{h,cpp} to Common. 2017-11-28 20:39:17 +00:00
ScriptParser.h [ELF] Support expressions with -defsym option 2017-11-04 02:03:58 +00:00
Strings.cpp Factor out common code to Common/Strings.cpp. 2017-11-28 02:15:26 +00:00
Strings.h Factor out common code to Common/Strings.cpp. 2017-11-28 02:15:26 +00:00
SymbolTable.cpp Compact symbols from 96 to 88 bytes. 2017-12-12 01:45:49 +00:00
SymbolTable.h Compact symbols from 96 to 88 bytes. 2017-12-12 01:45:49 +00:00
Symbols.cpp Remove unused condition. 2017-11-30 01:08:09 +00:00
Symbols.h Compact symbols from 96 to 88 bytes. 2017-12-12 01:45:49 +00:00
SyntheticSections.cpp Compact symbols from 96 to 88 bytes. 2017-12-12 01:45:49 +00:00
SyntheticSections.h Move RelaPlt and RelaIplt to InX. NFC. 2017-12-10 20:07:03 +00:00
Target.cpp Rename SymbolBody -> Symbol 2017-11-03 21:21:47 +00:00
Target.h [ELF] When a relocation is out of range print the value and the range 2017-12-11 20:47:21 +00:00
Thunks.cpp Replace a dyn_cast with a cast. NFC. 2017-11-29 21:29:52 +00:00
Thunks.h ELF: Merge DefinedRegular and Defined. 2017-11-06 04:35:31 +00:00
Writer.cpp [ELF] Don't set the executable bit for relocatable files 2017-12-11 23:30:54 +00:00
Writer.h Create reserved symbols early so they can be versioned. 2017-12-11 17:23:28 +00:00

README.md

See docs/NewLLD.rst