+2015-02-17 Alan Modra <amodra@gmail.com>
+
+ PR ld/17975
+ * elflink.c (struct elf_outext_info): Remove need_second_pass
+ and second_pass.
+ (elf_link_output_extsym): Delete code handling second forced
+ local pass. Move code emitting NULL STT_FILE symbol later, so
+ that it can be omitted if forced local is stripped. Don't
+ emit the NULL STT_FILE if no file symbols have been output.
+ (bfd_elf_final_link): Remove second forced local pass.
+ * elf32-ppc.c (add_stub_sym): Set linker_def on linker syms.
+ (ppc_elf_size_dynamic_sections): Likewise.
+ * elf64-ppc.c (ppc_build_one_stub): Likewise.
+ (build_global_entry_stubs): Likewise.
+ (ppc64_elf_build_stubs): Likewise.
+
2015-02-16 H.J. Lu <hongjiu.lu@intel.com>
PR ld/17975
sh->ref_regular_nonweak = 1;
sh->forced_local = 1;
sh->non_elf = 0;
+ sh->root.linker_def = 1;
}
return TRUE;
}
sh->ref_regular_nonweak = 1;
sh->forced_local = 1;
sh->non_elf = 0;
+ sh->root.linker_def = 1;
}
sh = elf_link_hash_lookup (&htab->elf, "__glink_PLTresolve",
TRUE, FALSE, FALSE);
sh->ref_regular_nonweak = 1;
sh->forced_local = 1;
sh->non_elf = 0;
+ sh->root.linker_def = 1;
}
}
}
h->ref_regular_nonweak = 1;
h->forced_local = 1;
h->non_elf = 0;
+ h->root.linker_def = 1;
}
}
h->ref_regular_nonweak = 1;
h->forced_local = 1;
h->non_elf = 0;
+ h->root.linker_def = 1;
}
}
h->ref_regular_nonweak = 1;
h->forced_local = 1;
h->non_elf = 0;
+ h->root.linker_def = 1;
}
}
plt0 = (htab->elf.splt->output_section->vma
{
bfd_boolean failed;
bfd_boolean localsyms;
- bfd_boolean need_second_pass;
- bfd_boolean second_pass;
bfd_boolean file_sym_done;
struct elf_final_link_info *flinfo;
};
{
if (!h->forced_local)
return TRUE;
- if (eoinfo->second_pass
- && !((h->root.type == bfd_link_hash_defined
- || h->root.type == bfd_link_hash_defweak)
- && h->root.u.def.section->output_section != NULL))
- return TRUE;
-
- if (!eoinfo->file_sym_done && eoinfo->flinfo->filesym_count)
- {
- /* Output a FILE symbol so that following locals are not associated
- with the wrong input file. */
- memset (&sym, 0, sizeof (sym));
- sym.st_info = ELF_ST_INFO (STB_LOCAL, STT_FILE);
- sym.st_shndx = SHN_ABS;
- if (!elf_link_output_sym (eoinfo->flinfo, NULL, &sym,
- bfd_und_section_ptr, NULL))
- return FALSE;
-
- eoinfo->file_sym_done = TRUE;
- }
}
else
{
input_sec = h->root.u.def.section;
if (input_sec->output_section != NULL)
{
- if (eoinfo->localsyms && flinfo->filesym_count == 1)
- {
- bfd_boolean second_pass_sym
- = h->forced_local && !h->root.linker_def;
-
- eoinfo->need_second_pass |= second_pass_sym;
- if (eoinfo->second_pass != second_pass_sym)
- return TRUE;
- }
-
sym.st_shndx =
_bfd_elf_section_from_bfd_section (flinfo->output_bfd,
input_sec->output_section);
if (strip || (input_sec->flags & SEC_EXCLUDE) != 0)
return TRUE;
+ /* Output a FILE symbol so that following locals are not associated
+ with the wrong input file. We need one for forced local symbols
+ if we've seen more than one FILE symbol or when we have exactly
+ one FILE symbol but global symbols are present in a file other
+ than the one with the FILE symbol. We also need one if linker
+ defined symbols are present. In practice these conditions are
+ always met, so just emit the FILE symbol unconditionally. */
+ if (eoinfo->localsyms
+ && !eoinfo->file_sym_done
+ && eoinfo->flinfo->filesym_count != 0)
+ {
+ Elf_Internal_Sym fsym;
+
+ memset (&fsym, 0, sizeof (fsym));
+ fsym.st_info = ELF_ST_INFO (STB_LOCAL, STT_FILE);
+ fsym.st_shndx = SHN_ABS;
+ if (!elf_link_output_sym (eoinfo->flinfo, NULL, &fsym,
+ bfd_und_section_ptr, NULL))
+ return FALSE;
+
+ eoinfo->file_sym_done = TRUE;
+ }
+
indx = bfd_get_symcount (flinfo->output_bfd);
ret = elf_link_output_sym (flinfo, h->root.root.string, &sym, input_sec, h);
if (ret == 0)
eoinfo.failed = FALSE;
eoinfo.flinfo = &flinfo;
eoinfo.localsyms = TRUE;
- eoinfo.need_second_pass = FALSE;
- eoinfo.second_pass = FALSE;
eoinfo.file_sym_done = FALSE;
bfd_hash_traverse (&info->hash->table, elf_link_output_extsym, &eoinfo);
if (eoinfo.failed)
return FALSE;
- if (eoinfo.need_second_pass)
- {
- eoinfo.second_pass = TRUE;
- bfd_hash_traverse (&info->hash->table, elf_link_output_extsym, &eoinfo);
- if (eoinfo.failed)
- return FALSE;
- }
-
/* If backend needs to output some local symbols not present in the hash
table, do it now. */
if (bed->elf_backend_output_arch_local_syms
+2015-02-17 Alan Modra <amodra@gmail.com>
+
+ PR ld/17975
+ * ld-aarch64/gc-tls-relocs.d, * ld-alpha/tlspic.rd,
+ * ld-cris/libdso-2.d, * ld-i386/tlsdesc-nacl.rd, * ld-i386/tlsdesc.rd,
+ * ld-i386/tlsnopic-nacl.rd, * ld-i386/tlsnopic.rd,
+ * ld-i386/tlspic-nacl.rd, * ld-i386/tlspic.rd, * ld-ia64/tlspic.rd,
+ * ld-powerpc/tlsexe.r, * ld-powerpc/tlsexetoc.r,
+ * ld-powerpc/tlsso.r, * ld-powerpc/tlstocso.r,
+ * ld-s390/tlspic.rd, * ld-s390/tlspic_64.rd,
+ * ld-sparc/tlssunnopic32.rd, * ld-sparc/tlssunnopic64.rd,
+ * ld-sparc/tlssunpic32.rd, * ld-sparc/tlssunpic64.rd,
+ * ld-tic6x/shlib-1.rd, * ld-tic6x/shlib-1b.rd, * ld-tic6x/shlib-1r.rd,
+ * ld-tic6x/shlib-1rb.rd, * ld-tic6x/shlib-noindex.rd,
+ * ld-x86-64/tlsdesc-nacl.rd, * ld-x86-64/tlsdesc.rd,
+ * ld-x86-64/tlspic-nacl.rd, * ld-x86-64/tlspic.rd: Update.
+
2015-02-16 H.J. Lu <hongjiu.lu@intel.com>
PR ld/17975
0+8000 l d \.text 0+ \.text
0+9000 l d \.got 0+ \.got
0+0000 l df \*ABS\* 0+ .*
-0+0000 l \*UND\* 0+ __tls_get_addr
0+0000 l df \*ABS\* 0+
+0+0000 l \*UND\* 0+ __tls_get_addr
0+9000 l O \.got 0+ _GLOBAL_OFFSET_TABLE_
0+8000 g \.text 0+ _start
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +9 sl7
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +9 sl8
.* FILE +LOCAL +DEFAULT +ABS
-.* [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
-.* [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
-.* [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +10 sH1
+.* [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +9 sh3
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +10 sH2
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +10 sH7
+.* [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +9 sh7
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +9 sh8
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +10 sH4
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +10 sH6
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +10 sH8
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +9 sh1
+.* [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +9 sh2
.* [0-9a-f]+ +0 +TLS +LOCAL +DEFAULT +9 sh6
.* [0-9a-f]+ +0 +TLS +GLOBAL +DEFAULT +9 sg8
+[0-9]+: 0+38 +0 +TLS +LOCAL +DEFAULT +7 sl7
+[0-9]+: 0+3c +0 +TLS +LOCAL +DEFAULT +7 sl8
.* FILE +LOCAL +DEFAULT +ABS
+ +[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +8 sH1
+[0-9]+: 0+ +0 +TLS +LOCAL +DEFAULT +7 _TLS_MODULE_BASE_
+[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +9 _DYNAMIC
- +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +11 _GLOBAL_OFFSET_TABLE_
- +[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +8 sH1
+[0-9]+: 0+48 +0 +TLS +LOCAL +DEFAULT +7 sh3
+[0-9]+: 0+64 +0 +TLS +LOCAL +DEFAULT +8 sH2
+[0-9]+: 0+78 +0 +TLS +LOCAL +DEFAULT +8 sH7
+[0-9]+: 0+74 +0 +TLS +LOCAL +DEFAULT +8 sH6
+[0-9]+: 0+7c +0 +TLS +LOCAL +DEFAULT +8 sH8
+[0-9]+: 0+40 +0 +TLS +LOCAL +DEFAULT +7 sh1
+ +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +11 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+44 +0 +TLS +LOCAL +DEFAULT +7 sh2
+[0-9]+: 0+54 +0 +TLS +LOCAL +DEFAULT +7 sh6
+[0-9]+: 0+1c +0 +TLS +GLOBAL +DEFAULT +7 sg8
+[0-9]+: 0+38 +0 +TLS +LOCAL +DEFAULT +7 sl7
+[0-9]+: 0+3c +0 +TLS +LOCAL +DEFAULT +7 sl8
.* FILE +LOCAL +DEFAULT +ABS
+ +[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +8 sH1
+[0-9]+: 0+ +0 +TLS +LOCAL +DEFAULT +7 _TLS_MODULE_BASE_
+[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +9 _DYNAMIC
- +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +11 _GLOBAL_OFFSET_TABLE_
- +[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +8 sH1
+[0-9]+: 0+48 +0 +TLS +LOCAL +DEFAULT +7 sh3
+[0-9]+: 0+64 +0 +TLS +LOCAL +DEFAULT +8 sH2
+[0-9]+: 0+78 +0 +TLS +LOCAL +DEFAULT +8 sH7
+[0-9]+: 0+74 +0 +TLS +LOCAL +DEFAULT +8 sH6
+[0-9]+: 0+7c +0 +TLS +LOCAL +DEFAULT +8 sH8
+[0-9]+: 0+40 +0 +TLS +LOCAL +DEFAULT +7 sh1
+ +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +11 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+44 +0 +TLS +LOCAL +DEFAULT +7 sh2
+[0-9]+: 0+54 +0 +TLS +LOCAL +DEFAULT +7 sh6
+[0-9]+: 0+1c +0 +TLS +GLOBAL +DEFAULT +7 sg8
+[0-9]+: 0+10 +0 +TLS +LOCAL +DEFAULT +6 bl5
.* FILE +LOCAL +DEFAULT +ABS
+[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +7 _DYNAMIC
- +[0-9]+: 0*1001031c +0 +OBJECT +LOCAL +DEFAULT +9 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+1c +0 +TLS +LOCAL +DEFAULT +6 sh3
+[0-9]+: 0+20 +0 +TLS +LOCAL +DEFAULT +6 sh4
+[0-9]+: 0+14 +0 +TLS +LOCAL +DEFAULT +6 sh1
+ +[0-9]+: 0*1001031c +0 +OBJECT +LOCAL +DEFAULT +9 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+18 +0 +TLS +LOCAL +DEFAULT +6 sh2
+[0-9]+: 0+ +0 +TLS +GLOBAL +DEFAULT +UND sg3
+[0-9]+: 0+ +0 +TLS +GLOBAL +DEFAULT +UND sg4
+[0-9]+: 0+10 +0 +TLS +LOCAL +DEFAULT +6 bl5
.* FILE +LOCAL +DEFAULT +ABS
+[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +7 _DYNAMIC
- +[0-9]+: 0+218c +0 +OBJECT +LOCAL +DEFAULT +9 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+1c +0 +TLS +LOCAL +DEFAULT +6 sh3
+[0-9]+: 0+20 +0 +TLS +LOCAL +DEFAULT +6 sh4
+[0-9]+: 0+14 +0 +TLS +LOCAL +DEFAULT +6 sh1
+ +[0-9]+: 0+218c +0 +OBJECT +LOCAL +DEFAULT +9 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+18 +0 +TLS +LOCAL +DEFAULT +6 sh2
+[0-9]+: 0+ +0 +TLS +GLOBAL +DEFAULT +UND sg3
+[0-9]+: 0+ +0 +TLS +GLOBAL +DEFAULT +UND sg4
+[0-9]+: 0+38 +0 +TLS +LOCAL +DEFAULT +8 sl7
+[0-9]+: 0+3c +0 +TLS +LOCAL +DEFAULT +8 sl8
.* FILE +LOCAL +DEFAULT +ABS
- +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
- +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +9 sH1
+ +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
+[0-9]+: 0+48 +0 +TLS +LOCAL +DEFAULT +8 sh3
+[0-9]+: 0+64 +0 +TLS +LOCAL +DEFAULT +9 sH2
+[0-9]+: 0+78 +0 +TLS +LOCAL +DEFAULT +9 sH7
+[0-9]+: 0+74 +0 +TLS +LOCAL +DEFAULT +9 sH6
+[0-9]+: 0+7c +0 +TLS +LOCAL +DEFAULT +9 sH8
+[0-9]+: 0+40 +0 +TLS +LOCAL +DEFAULT +8 sh1
+ +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+44 +0 +TLS +LOCAL +DEFAULT +8 sh2
+[0-9]+: 0+54 +0 +TLS +LOCAL +DEFAULT +8 sh6
+[0-9]+: 0+1c +0 +TLS +GLOBAL +DEFAULT +8 sg8
+[0-9]+: 0+38 +0 +TLS +LOCAL +DEFAULT +8 sl7
+[0-9]+: 0+3c +0 +TLS +LOCAL +DEFAULT +8 sl8
.* FILE +LOCAL +DEFAULT +ABS
- +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
- +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +9 sH1
+ +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
+[0-9]+: 0+48 +0 +TLS +LOCAL +DEFAULT +8 sh3
+[0-9]+: 0+64 +0 +TLS +LOCAL +DEFAULT +9 sH2
+[0-9]+: 0+78 +0 +TLS +LOCAL +DEFAULT +9 sH7
+[0-9]+: 0+74 +0 +TLS +LOCAL +DEFAULT +9 sH6
+[0-9]+: 0+7c +0 +TLS +LOCAL +DEFAULT +9 sH8
+[0-9]+: 0+40 +0 +TLS +LOCAL +DEFAULT +8 sh1
+ +[0-9]+: [0-9a-f]+ +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+44 +0 +TLS +LOCAL +DEFAULT +8 sh2
+[0-9]+: 0+54 +0 +TLS +LOCAL +DEFAULT +8 sh6
+[0-9]+: 0+1c +0 +TLS +GLOBAL +DEFAULT +8 sg8
.* TLS +LOCAL +DEFAULT +10 sl6
.* TLS +LOCAL +DEFAULT +10 sl7
.* TLS +LOCAL +DEFAULT +10 sl8
+.* FILE +LOCAL +DEFAULT +ABS
.* TLS +LOCAL +DEFAULT +11 sH1
+.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
.* TLS +LOCAL +DEFAULT +10 sh3
.* TLS +LOCAL +DEFAULT +11 sH2
.* TLS +LOCAL +DEFAULT +11 sH7
.* TLS +LOCAL +DEFAULT +11 sH6
.* TLS +LOCAL +DEFAULT +11 sH8
.* TLS +LOCAL +DEFAULT +10 sh1
+.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +10 sh2
.* TLS +LOCAL +DEFAULT +10 sh6
-.* FILE +LOCAL +DEFAULT +ABS .*
-.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
-.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +GLOBAL +DEFAULT +10 sg8
.* TLS +GLOBAL +DEFAULT +10 sg3
.* TLS +GLOBAL +DEFAULT +10 sg4
.* TLS +LOCAL +DEFAULT +8 le5
.* FILE +LOCAL +DEFAULT +ABS
.* OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
-.* (FUNC|NOTYPE) +LOCAL +DEFAULT +UND \.__tls_get_addr(|_opt)
-.* NOTYPE +LOCAL +DEFAULT +7 __glink_PLTresolve
-.* NOTYPE +LOCAL +DEFAULT +7 .*\.plt_call\.__tls_get_addr(|_opt)
+.* (NOTYPE +LOCAL +DEFAULT +7 __glink_PLTresolve|(FUNC|NOTYPE) +LOCAL +DEFAULT +UND \.__tls_get_addr(|_opt))
+.* (NOTYPE +LOCAL +DEFAULT +7 .*\.plt_call\.__tls_get_addr(|_opt)|NOTYPE +LOCAL +DEFAULT +7 __glink_PLTresolve)
+.* ((FUNC|NOTYPE) +LOCAL +DEFAULT +UND \.__tls_get_addr(|_opt)|NOTYPE +LOCAL +DEFAULT +7 .*\.plt_call\.__tls_get_addr(|_opt))
.* GLOBAL +DEFAULT +UND gd
.* GLOBAL +DEFAULT +9 le0
.* GLOBAL +DEFAULT +9 ld0
.* NOTYPE +LOCAL +DEFAULT +12 \.Lie0
.* FILE +LOCAL +DEFAULT +ABS
.* OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
-.* (FUNC|NOTYPE) +LOCAL +DEFAULT +UND \.__tls_get_addr(|_opt)
-.* NOTYPE +LOCAL +DEFAULT +7 __glink_PLTresolve
-.* NOTYPE +LOCAL +DEFAULT +7 .*\.plt_call\.__tls_get_addr(|_opt)
+.* (NOTYPE +LOCAL +DEFAULT +7 __glink_PLTresolve|(FUNC|NOTYPE) +LOCAL +DEFAULT +UND \.__tls_get_addr(|_opt))
+.* (NOTYPE +LOCAL +DEFAULT +7 .*\.plt_call\.__tls_get_addr(|_opt)|NOTYPE +LOCAL +DEFAULT +7 __glink_PLTresolve)
+.* ((FUNC|NOTYPE) +LOCAL +DEFAULT +UND \.__tls_get_addr(|_opt)|NOTYPE +LOCAL +DEFAULT +7 .*\.plt_call\.__tls_get_addr(|_opt))
.* TLS +GLOBAL +DEFAULT +UND gd
.* TLS +GLOBAL +DEFAULT +9 le0
.* TLS +GLOBAL +DEFAULT +9 ld0
.* TLS +LOCAL +DEFAULT +7 le5
.* FILE +LOCAL +DEFAULT +ABS
.* OBJECT +LOCAL +DEFAULT +9 _DYNAMIC
-.* NOTYPE +LOCAL +DEFAULT +UND \.__tls_get_addr
.* NOTYPE +LOCAL +DEFAULT +6 .*\.plt_call\.__tls_get_addr
.* NOTYPE +LOCAL +DEFAULT +6 __glink_PLTresolve
+.* NOTYPE +LOCAL +DEFAULT +UND \.__tls_get_addr
.* TLS +GLOBAL +DEFAULT +UND gd
.* TLS +GLOBAL +DEFAULT +8 le0
.* NOTYPE +GLOBAL +DEFAULT +UND __tls_get_addr
.* NOTYPE +LOCAL +DEFAULT +11 \.Lie0
.* FILE +LOCAL +DEFAULT +ABS
.* OBJECT +LOCAL +DEFAULT +9 _DYNAMIC
-.* NOTYPE +LOCAL +DEFAULT +UND \.__tls_get_addr
.* NOTYPE +LOCAL +DEFAULT +6 .*\.plt_call\.__tls_get_addr
.* NOTYPE +LOCAL +DEFAULT +6 __glink_PLTresolve
+.* NOTYPE +LOCAL +DEFAULT +UND \.__tls_get_addr
.* TLS +GLOBAL +DEFAULT +UND gd
.* TLS +GLOBAL +DEFAULT +8 le0
.* NOTYPE +GLOBAL +DEFAULT +UND __tls_get_addr
.* TLS +LOCAL +DEFAULT +8 sl7
.* TLS +LOCAL +DEFAULT +8 sl8
.* FILE +LOCAL +DEFAULT +ABS
-.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
-.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +9 sH1
+.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
.* TLS +LOCAL +DEFAULT +8 sh3
.* TLS +LOCAL +DEFAULT +9 sH2
.* TLS +LOCAL +DEFAULT +9 sH7
.* TLS +LOCAL +DEFAULT +9 sH6
.* TLS +LOCAL +DEFAULT +9 sH8
.* TLS +LOCAL +DEFAULT +8 sh1
+.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +8 sh2
.* TLS +LOCAL +DEFAULT +8 sh6
.* TLS +GLOBAL +DEFAULT +8 sg8
.* TLS +LOCAL +DEFAULT +8 sl7
.* TLS +LOCAL +DEFAULT +8 sl8
.* FILE +LOCAL +DEFAULT +ABS
-.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
-.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +9 sH1
+.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
.* TLS +LOCAL +DEFAULT +8 sh3
.* TLS +LOCAL +DEFAULT +9 sH2
.* TLS +LOCAL +DEFAULT +9 sH7
.* TLS +LOCAL +DEFAULT +9 sH6
.* TLS +LOCAL +DEFAULT +9 sH8
.* TLS +LOCAL +DEFAULT +8 sh1
+.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +8 sh2
.* TLS +LOCAL +DEFAULT +8 sh6
.* TLS +GLOBAL +DEFAULT +8 sg8
.* TLS +LOCAL +DEFAULT +6 bl5
.* FILE +LOCAL +DEFAULT +ABS
.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
-.* OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
-.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +6 sh3
+.* OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
.* TLS +LOCAL +DEFAULT +6 sh4
.* TLS +LOCAL +DEFAULT +6 sh1
+.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +6 sh2
.* FUNC +GLOBAL +DEFAULT +5 fn3
.* TLS +GLOBAL +DEFAULT +UND sg1
.* TLS +LOCAL +DEFAULT +6 bl5
.* FILE +LOCAL +DEFAULT +ABS
.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
-.* OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
-.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +6 sh3
+.* OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
.* TLS +LOCAL +DEFAULT +6 sh4
.* TLS +LOCAL +DEFAULT +6 sh1
+.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +6 sh2
.* FUNC +GLOBAL +DEFAULT +5 fn3
.* TLS +GLOBAL +DEFAULT +UND sg1
.* TLS +LOCAL +DEFAULT +7 sl7
.* TLS +LOCAL +DEFAULT +7 sl8
.* FILE +LOCAL +DEFAULT +ABS
-.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
-.* OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
-.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +8 sH1
+.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
.* TLS +LOCAL +DEFAULT +7 sh3
.* TLS +LOCAL +DEFAULT +8 sH2
.* TLS +LOCAL +DEFAULT +8 sH7
+.* OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
.* TLS +LOCAL +DEFAULT +7 sh7
.* TLS +LOCAL +DEFAULT +7 sh8
.* TLS +LOCAL +DEFAULT +8 sH4
.* TLS +LOCAL +DEFAULT +8 sH6
.* TLS +LOCAL +DEFAULT +8 sH8
.* TLS +LOCAL +DEFAULT +7 sh1
+.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +7 sh2
.* TLS +LOCAL +DEFAULT +7 sh6
.* TLS +GLOBAL +DEFAULT +7 sg8
.* TLS +LOCAL +DEFAULT +7 sl7
.* TLS +LOCAL +DEFAULT +7 sl8
.* FILE +LOCAL +DEFAULT +ABS
-.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
-.* OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
-.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +8 sH1
+.* OBJECT +LOCAL +DEFAULT +ABS _DYNAMIC
.* TLS +LOCAL +DEFAULT +7 sh3
.* TLS +LOCAL +DEFAULT +8 sH2
.* TLS +LOCAL +DEFAULT +8 sH7
+.* OBJECT +LOCAL +DEFAULT +ABS _PROCEDURE_LINKAGE_TABLE_
.* TLS +LOCAL +DEFAULT +7 sh7
.* TLS +LOCAL +DEFAULT +7 sh8
.* TLS +LOCAL +DEFAULT +8 sH4
.* TLS +LOCAL +DEFAULT +8 sH6
.* TLS +LOCAL +DEFAULT +8 sH8
.* TLS +LOCAL +DEFAULT +7 sh1
+.* OBJECT +LOCAL +DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +7 sh2
.* TLS +LOCAL +DEFAULT +7 sh6
.* TLS +GLOBAL +DEFAULT +7 sg8
.* 10000080 0 FUNC LOCAL HIDDEN 9 sub1
.* 00000000 0 FILE LOCAL DEFAULT ABS
.* 0000817c 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
-.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000130 4 OBJECT LOCAL DEFAULT 12 c
+.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000100 0 NOTYPE LOCAL DEFAULT 10 __c6xabi_DSBT_BASE
.* 00000000 0 NOTYPE WEAK DEFAULT UND b
.* 00000000 0 NOTYPE WEAK DEFAULT UND g1
.* 10000080 0 FUNC LOCAL HIDDEN 9 sub1
.* 00000000 0 FILE LOCAL DEFAULT ABS
.* 0000817c 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
-.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000130 4 OBJECT LOCAL DEFAULT 12 c
+.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000100 0 NOTYPE LOCAL DEFAULT 10 __c6xabi_DSBT_BASE
.* 00000000 0 NOTYPE WEAK DEFAULT UND b
.* 00000000 0 NOTYPE WEAK DEFAULT UND g1
.* 10000080 0 FUNC LOCAL HIDDEN 9 sub1
.* 00000000 0 FILE LOCAL DEFAULT ABS
.* 0000817c 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
-.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000130 4 OBJECT LOCAL DEFAULT 12 c
+.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000100 0 NOTYPE LOCAL DEFAULT 10 __c6xabi_DSBT_BASE
.* 00000000 0 NOTYPE WEAK DEFAULT UND b
.* 00000000 0 NOTYPE WEAK DEFAULT UND g1
.* 10000080 0 FUNC LOCAL HIDDEN 9 sub1
.* 00000000 0 FILE LOCAL DEFAULT ABS
.* 0000817c 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
-.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000130 4 OBJECT LOCAL DEFAULT 12 c
+.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000100 0 NOTYPE LOCAL DEFAULT 10 __c6xabi_DSBT_BASE
.* 00000000 0 NOTYPE WEAK DEFAULT UND b
.* 00000000 0 NOTYPE WEAK DEFAULT UND g1
.* 10000080 0 FUNC LOCAL HIDDEN 10 sub1
.* 00000000 0 FILE LOCAL DEFAULT ABS
.* 00008188 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC
-.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000130 4 OBJECT LOCAL DEFAULT 13 c
+.* 1000010c 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_
.* 10000100 0 NOTYPE LOCAL DEFAULT 11 __c6xabi_DSBT_BASE
.* 00000000 0 NOTYPE WEAK DEFAULT UND b
.* 00000000 0 NOTYPE WEAK DEFAULT UND g1
+[0-9]+: 0+38 +0 +TLS +LOCAL +DEFAULT +8 sl7
+[0-9]+: 0+3c +0 +TLS +LOCAL +DEFAULT +8 sl8
.* FILE +LOCAL +DEFAULT +ABS
+ +[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +9 sH1
+[0-9]+: 0+ +0 +TLS +LOCAL +DEFAULT +8 _TLS_MODULE_BASE_
+[0-9]+: 0+100104e8 +0 +OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
- +[0-9]+: 0+10010680 +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
- +[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +9 sH1
+[0-9]+: 0+48 +0 +TLS +LOCAL +DEFAULT +8 sh3
+[0-9]+: 0+64 +0 +TLS +LOCAL +DEFAULT +9 sH2
+[0-9]+: 0+78 +0 +TLS +LOCAL +DEFAULT +9 sH7
+[0-9]+: 0+74 +0 +TLS +LOCAL +DEFAULT +9 sH6
+[0-9]+: 0+7c +0 +TLS +LOCAL +DEFAULT +9 sH8
+[0-9]+: 0+40 +0 +TLS +LOCAL +DEFAULT +8 sh1
+ +[0-9]+: 0+10010680 +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+44 +0 +TLS +LOCAL +DEFAULT +8 sh2
+[0-9]+: 0+54 +0 +TLS +LOCAL +DEFAULT +8 sh6
+[0-9]+: 0+1c +0 +TLS +GLOBAL +DEFAULT +8 sg8
+[0-9]+: 0+38 +0 +TLS +LOCAL +DEFAULT +8 sl7
+[0-9]+: 0+3c +0 +TLS +LOCAL +DEFAULT +8 sl8
.* FILE +LOCAL +DEFAULT +ABS
+ +[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +9 sH1
+[0-9]+: 0+ +0 +TLS +LOCAL +DEFAULT +8 _TLS_MODULE_BASE_
+[0-9]+: 0+2011b8 +0 +OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
- +[0-9]+: 0+201350 +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
- +[0-9]+: 0+60 +0 +TLS +LOCAL +DEFAULT +9 sH1
+[0-9]+: 0+48 +0 +TLS +LOCAL +DEFAULT +8 sh3
+[0-9]+: 0+64 +0 +TLS +LOCAL +DEFAULT +9 sH2
+[0-9]+: 0+78 +0 +TLS +LOCAL +DEFAULT +9 sH7
+[0-9]+: 0+74 +0 +TLS +LOCAL +DEFAULT +9 sH6
+[0-9]+: 0+7c +0 +TLS +LOCAL +DEFAULT +9 sH8
+[0-9]+: 0+40 +0 +TLS +LOCAL +DEFAULT +8 sh1
+ +[0-9]+: 0+201350 +0 +OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
+[0-9]+: 0+44 +0 +TLS +LOCAL +DEFAULT +8 sh2
+[0-9]+: 0+54 +0 +TLS +LOCAL +DEFAULT +8 sh6
+[0-9]+: 0+1c +0 +TLS +GLOBAL +DEFAULT +8 sg8
.* TLS +LOCAL +DEFAULT +8 sl7
.* TLS +LOCAL +DEFAULT +8 sl8
.* FILE +LOCAL +DEFAULT +ABS
-.* OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
-.* OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +9 sH1
+.* OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
.* TLS +LOCAL +DEFAULT +8 sh3
.* TLS +LOCAL +DEFAULT +9 sH2
.* TLS +LOCAL +DEFAULT +9 sH7
.* TLS +LOCAL +DEFAULT +9 sH6
.* TLS +LOCAL +DEFAULT +9 sH8
.* TLS +LOCAL +DEFAULT +8 sh1
+.* OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +8 sh2
.* TLS +LOCAL +DEFAULT +8 sh6
.* TLS +GLOBAL +DEFAULT +8 sg8
.* TLS +LOCAL +DEFAULT +8 sl7
.* TLS +LOCAL +DEFAULT +8 sl8
.* FILE +LOCAL +DEFAULT +ABS
-.* OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
-.* OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +9 sH1
+.* OBJECT +LOCAL +DEFAULT +10 _DYNAMIC
.* TLS +LOCAL +DEFAULT +8 sh3
.* TLS +LOCAL +DEFAULT +9 sH2
.* TLS +LOCAL +DEFAULT +9 sH7
.* TLS +LOCAL +DEFAULT +9 sH6
.* TLS +LOCAL +DEFAULT +9 sH8
.* TLS +LOCAL +DEFAULT +8 sh1
+.* OBJECT +LOCAL +DEFAULT +12 _GLOBAL_OFFSET_TABLE_
.* TLS +LOCAL +DEFAULT +8 sh2
.* TLS +LOCAL +DEFAULT +8 sh6
.* TLS +GLOBAL +DEFAULT +8 sg8