cb8af559c1
elf64_aarch64_locals to get local GOT reference counts. * ld-aarch64/gc-relocs-tlsle.s: New gc section test. * ld-aarch64/gc-relocs-tlsle.s: Likewise * ld-aarch64/gc-relocs-tlsgd.s: Likewise * ld-aarch64/gc-relocs-tlsdesc.s: Likewise * ld-aarch64/gc-relocs-312.s: Likewise * ld-aarch64/gc-relocs-311.s: Likewise * ld-aarch64/gc-relocs-309.s: Likewise * ld-aarch64/gc-start.s: Likewise * ld-aarch64/gc-got-relocs.d: Update expected objdump * ld-aarch64/gc-tls-relocs.d: Likewise * ld-aarch64/aarch64-elf.exp: add test
30 lines
823 B
ArmAsm
30 lines
823 B
ArmAsm
.global tlsgdvar
|
|
.section .tbss,"awT",%nobits
|
|
.align 2
|
|
.type tlsgdvar, %object
|
|
.size tlsgdvar, 4
|
|
tlsgdvar:
|
|
.zero 4
|
|
.align 2
|
|
.type l_tlsgdvar, %object
|
|
.size l_tlsgdvar, 4
|
|
l_tlsgdvar:
|
|
.zero 4
|
|
|
|
.text
|
|
_test_tls_gd:
|
|
// R_AARCH64_TLSGD_ADR_PAGE21 tldgdvar
|
|
adrp x0, :tlsgd:tlsgdvar
|
|
// R_AARCH64_TLSGD_ADD_LO12_NC tlsgdvar
|
|
add x0, x0, :tlsgd_lo12:tlsgdvar
|
|
// R_AARCH64_CALL26
|
|
bl __tls_get_addr
|
|
|
|
_test_tls_gd_local:
|
|
// R_AARCH64_TLSGD_ADR_PAGE21 l_tldgdvar
|
|
adrp x0, :tlsgd:l_tlsgdvar
|
|
// R_AARCH64_TLSGD_ADD_LO12_NC l_tlsgdvar
|
|
add x0, x0, :tlsgd_lo12:l_tlsgdvar
|
|
// R_AARCH64_CALL26
|
|
bl __tls_get_addr
|
|
|