[all-commits] [llvm/llvm-project] ecc93e: [ELF] Replace InputBaseSection::{areRelocsRela, fir...
Fangrui Song via All-commits
all-commits at lists.llvm.org
Wed Oct 27 09:51:19 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: ecc93ed2d738910449e0106eb487490e784c7d2b
https://github.com/llvm/llvm-project/commit/ecc93ed2d738910449e0106eb487490e784c7d2b
Author: Fangrui Song <i at maskray.me>
Date: 2021-10-27 (Wed, 27 Oct 2021)
Changed paths:
M lld/ELF/Arch/PPC64.cpp
M lld/ELF/DWARF.cpp
M lld/ELF/Driver.cpp
M lld/ELF/ICF.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/InputSection.cpp
M lld/ELF/InputSection.h
M lld/ELF/MarkLive.cpp
M lld/ELF/Relocations.cpp
M lld/ELF/SyntheticSections.cpp
Log Message:
-----------
[ELF] Replace InputBaseSection::{areRelocsRela,firstRelocation,numRelocation} with relSecIdx
For `InputSection` `.foo`, its `InputBaseSection::{areRelocsRela,firstRelocation,numRelocation}` basically
encode the information of `.rel[a].foo`. However, one uint32_t (the relocation section index)
suffices. See the implementation of `relsOrRelas`.
This change decreases sizeof(InputSection) from 184 to 176 on 64-bit Linux.
The maximum resident set size linking a large application (1.2G output) decreases by 0.39%.
Differential Revision: https://reviews.llvm.org/D112513
More information about the All-commits
mailing list