[PATCH] D39744: [LLD][ELF][AArch64] Add support for AArch64 range extension thunks.

Peter Smith via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 28 03:58:35 PST 2017


peter.smith updated this revision to Diff 124540.
peter.smith added a comment.

Updated diff to use ADRP for position independent code. This thunk has a maximum range of +- 4 Gigabytes which is not the whole address space. However the default small code model only supports programs up to 4 Gigabytes in size and the large code model is not currently implemented in gcc and clang for position independent code so it is safe to use for position independent thunks.

I'll commit tomorrow if there are no further comments.


https://reviews.llvm.org/D39744

Files:
  ELF/Arch/AArch64.cpp
  ELF/Thunks.cpp
  test/ELF/aarch64-call26-error.s
  test/ELF/aarch64-call26-thunk.s
  test/ELF/aarch64-jump26-error.s
  test/ELF/aarch64-jump26-thunk.s
  test/ELF/aarch64-thunk-pi.s
  test/ELF/aarch64-thunk-script.s
  test/ELF/aarch64-thunk-section-location.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D39744.124540.patch
Type: text/x-patch
Size: 16247 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171128/efa205a1/attachment.bin>


More information about the llvm-commits mailing list