[PATCH] D116281: [ELF] Move gotIndex/pltIndex/globalDynIndex to SymbolAux

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Dec 25 11:42:19 PST 2021


MaskRay created this revision.
MaskRay added reviewers: bd1976llvm, ikudrin, peter.smith.
Herald added subscribers: arphaman, kbarton, arichardson, nemanjai, emaste.
MaskRay requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

to decrease sizeof(SymbolUnion).

Symbols needing such information are typically 1% or fewer (5134 out of 560520
when linking clang, 19898 out of 5550705 when linking chrome). Storing them
elsewhere can decrease memory usage and symbol initialization time.

Future improvements:

- Move dynsymIndex to SymbolAux
- Move verdefIndex/versionId to SymbolAux
- Support mixed TLSDESC and TLS GD without increasing sizeof(SymbolUnion)


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D116281

Files:
  lld/ELF/Arch/PPC.cpp
  lld/ELF/Arch/PPC64.cpp
  lld/ELF/Arch/X86.cpp
  lld/ELF/Arch/X86_64.cpp
  lld/ELF/Driver.cpp
  lld/ELF/Relocations.cpp
  lld/ELF/Symbols.cpp
  lld/ELF/Symbols.h
  lld/ELF/SyntheticSections.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D116281.396204.patch
Type: text/x-patch
Size: 13854 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211225/5ae0fcd8/attachment.bin>


More information about the llvm-commits mailing list