[PATCH] D24827: [ARM][LLD] ARM TLS shouldn't use relaxations

Peter Smith via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 23 02:52:53 PDT 2016


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

Updated diff to fix typo and explain the differences between ARM and Mips.

I've put the comment as a FIXME as some more work is needed to support static linking. In effect we need to hard-code the module index (1 for applications) in the GOT rather than getting the dynamic linker to do it for us. I think that this should be done in a separate patch as part of supporting and testing static linking.

Ed, I think ARMv6 for LLD won't work very well as there are some assumptions that ARMv7 instructions are available in interworking Thunks and in the encoding of Thumb2 branches. If you can I would recommend ARMv7 as a baseline if using LLD. I would like to add this support at some point, but it will need some thought as to the best way of doing it.

I'll be at a conference myself next week, but I should have some spare time to work on stuff as well.


https://reviews.llvm.org/D24827

Files:
  ELF/Relocations.cpp
  test/ELF/Inputs/arm-tls-get-addr.s
  test/ELF/arm-tls-norelax-gd-ie.s
  test/ELF/arm-tls-norelax-gd-le.s
  test/ELF/arm-tls-norelax-ie-le.s
  test/ELF/arm-tls-norelax-ld-le.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D24827.72243.patch
Type: text/x-patch
Size: 9039 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160923/b252f04b/attachment.bin>


More information about the llvm-commits mailing list