From 102890f04c44b64cf5cef4588267dd9f24086ac7 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 6 Nov 2007 13:49:19 +0000 Subject: bfd/ * elf64-ppc.c (ppc64_elf_check_relocs): Don't refcount tlsld_got here.. (ppc64_elf_gc_sweep_hook): ..or here.. (ppc64_elf_tls_optimize): ..or here. Make two passes through the relocs, ensuring that tls_get_addr calls follow gd and ld relocs. (allocate_dynrelocs): Refcount tlsld_got here. (ppc64_elf_size_dynamic_sections): Allocate local got and call allocate_dynrelocs before allocating tlsld_got. (ppc64_elf_relocate_section): Remove check that a tls_get_addr call follows gd and ld relocs. ld/testsuite/ * ld-powerpc/tlsso.d: Update for changed got alloc order. * ld-powerpc/tlsso.r: Likewise. --- ld/testsuite/ld-powerpc/tlsso.r | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'ld/testsuite/ld-powerpc/tlsso.r') diff --git a/ld/testsuite/ld-powerpc/tlsso.r b/ld/testsuite/ld-powerpc/tlsso.r index 7dcf173..7b2ee14 100644 --- a/ld/testsuite/ld-powerpc/tlsso.r +++ b/ld/testsuite/ld-powerpc/tlsso.r @@ -53,9 +53,9 @@ Relocation section '\.rela\.dyn' at offset .* contains 16 entries: [0-9a-f ]+R_PPC64_TPREL16_HA +0+105f0 \.tdata \+ 30 [0-9a-f ]+R_PPC64_TPREL16_LO +0+105f0 \.tdata \+ 30 [0-9a-f ]+R_PPC64_DTPMOD64 +0+ -[0-9a-f ]+R_PPC64_DTPMOD64 +0+ [0-9a-f ]+R_PPC64_DTPREL64 +0+ [0-9a-f ]+R_PPC64_DTPREL64 +0+18 +[0-9a-f ]+R_PPC64_DTPMOD64 +0+ [0-9a-f ]+R_PPC64_DTPMOD64 +0+ gd \+ 0 [0-9a-f ]+R_PPC64_DTPREL64 +0+ gd \+ 0 [0-9a-f ]+R_PPC64_DTPREL64 +0+50 ld2 \+ 0 -- cgit v1.1