[lld] [LLD][AArch64] Implement relaxOnce to avoid dead GOT entries for relaxed ADRP+LDR (PR #224370)
Peter Smith via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 23 02:09:58 PDT 2026
smithp35 wrote:
> I'm not convinced this direction is worth it yet. This adds 100+ net lines of non-test code to AArch64.cpp and generic code. This adds a stateful relaxOnce that caches sections across passes.
So we don't spend any more time chasing a dead end. Is there anything that would help show that it would be worth it? While I expect the number of companies using very large binaries to be small, if it could be determined that this saved x% of file and/or memory size, then across all of Android or a linux distro, that could add up to a worthwhile saving. Particularly in a memory/storage constrained future for consumer devices.
To me this looked like most of the changes were moving existing code rather than adding existing ones. It would definitely be possible to remove the state and check all relocations each time round, I may have overstated the performance complaints on the original comment.
https://github.com/llvm/llvm-project/pull/224370
More information about the llvm-commits
mailing list