[PATCH] D72344: [LLD][ELF][ARM][AArch64] Only round up ThunkSection Size when large OS.

Peter Smith via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 16 06:53:59 PST 2020


peter.smith updated this revision to Diff 238482.
peter.smith edited the summary of this revision.
peter.smith added a comment.

Updated diff (and description) to simplify part of the check to os->size > target->getThunkSectionSpacing(). This is conservative, but simple. We can in theory do better, but it is difficult to do so without using heuristics. In effect it is a judgement that ThunkSections close to, but not necessarily at the end of the OutputSection have less of a chance of generating sufficient extra thunks and patches to cause non-convergence.

I've taken out the reduction in alignment of ThunkSection for AArch64 as this change can be made outside of this patch.

Tested against Linux Kernel allyesconfig and instrumented Chromium build.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D72344/new/

https://reviews.llvm.org/D72344

Files:
  lld/ELF/Relocations.cpp
  lld/ELF/SyntheticSections.cpp
  lld/ELF/SyntheticSections.h
  lld/test/ELF/aarch64-cortex-a53-843419-thunk-align.s
  lld/test/ELF/aarch64-cortex-a53-843419-thunk.s
  lld/test/ELF/arm-fix-cortex-a8-thunk-align.s
  lld/test/ELF/arm-fix-cortex-a8-thunk.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D72344.238482.patch
Type: text/x-patch
Size: 10695 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200116/68de0a05/attachment.bin>


More information about the llvm-commits mailing list