[LD][AARCH64]Add TLSIE relaxation support under large memory model.
authorRenlin Li <renlin.li@arm.com>
Fri, 2 Oct 2015 16:48:31 +0000 (17:48 +0100)
committerRenlin Li <renlin.li@arm.com>
Fri, 2 Oct 2015 16:56:09 +0000 (17:56 +0100)
commit3ebe65c0ff9f8f76c9971b1cc078273298f0c693
tree3e14846eadaaaee24362f7d6ba2ddde7be57dc2c
parent0484b4549e9e2802e2f9db30a61f4b2a76332a8f
[LD][AARCH64]Add TLSIE relaxation support under large memory model.

bfd/
2015-10-02  Renlin Li <renlin.li@arm.com>

* elfnn-aarch64.c (IS_AARCH64_TLS_RELAX_RELOC): Add
TLSIE_MOVW_GOTTPREL_G1.
(aarch64_tls_transition_without_check): Add
TLSIE_MOVW_GOTTPREL_G1 to TLSLE_MOVW_TPREL_G2
transition for local symbol.
(elfNN_aarch64_tls_relax): Add a argument to pass tp offset.
Add TLSIE_MOVW_GOTTPREL_G1 relaxation.
(elfNN_aarch64_relocate_section): Call elfNN_aarch64_tls_relax
with new argument.

ld/testsuite/
2015-10-02  Renlin Li <renlin.li@arm.com>

* ld-aarch64/aarch64-elf.exp (tls-relax-large-le-ie): Run new test.
* ld-aarch64/tls-relax-large-ie-le.d: New.
* ld-aarch64/tls-relax-large-ie-le.s: New.
bfd/ChangeLog
bfd/elfnn-aarch64.c
ld/testsuite/ChangeLog
ld/testsuite/ld-aarch64/aarch64-elf.exp
ld/testsuite/ld-aarch64/tls-relax-large-ie-le.d [new file with mode: 0644]
ld/testsuite/ld-aarch64/tls-relax-large-ie-le.s [new file with mode: 0644]