aboutsummaryrefslogtreecommitdiff
path: root/include/elf
diff options
context:
space:
mode:
authorCupertino Miranda <cmiranda@synopsys.com>2016-06-14 22:55:44 +0200
committerClaudiu Zissulescu <claziss@synopsys.com>2016-07-11 15:24:35 +0200
commit08759e0fc8b0de1c56ad388212a104f3a6d61c25 (patch)
treefccc3f881e487bed7755dcfe11bf14b74ffef238 /include/elf
parent36897971c8d022d5c28cc8af4b2f1df04a7e964f (diff)
downloadgdb-08759e0fc8b0de1c56ad388212a104f3a6d61c25.zip
gdb-08759e0fc8b0de1c56ad388212a104f3a6d61c25.tar.gz
gdb-08759e0fc8b0de1c56ad388212a104f3a6d61c25.tar.bz2
Fixes done to TLS.
TLS relocations did not support multiple TLS modes for the same symbol in a single object file. Refactored how GOT and TLS is implemented. Removed code duplications between local and global symbols conditioning. bfd/ChangeLog: 2016-06-14 Cupertino Miranda <cmiranda@synopsys.com> * arc-got.h: Moved got related structures from elf32-arc.c to this file. More precisely, tls_type_e, tls_got_entries, got_entry. * (arc_get_local_got_ents, got_entry_for_type, new_got_entry_to_list, tls_type_for_reloc, symbol_has_entry_of_type, get_got_entry_list_for_symbol, arc_got_entry_type_for_reloc, ADD_SYMBOL_REF_SEC_AND_RELOC, arc_fill_got_info_for_reloc, relocate_fix_got_relocs_for_got_info, create_got_dynrelocs_for_single_entry, create_got_dynrelocs_for_got_info): Added to file. * elf32-arc.c: Removed GOT & TLS related structs and functions to arc-got.h. Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
Diffstat (limited to 'include/elf')
-rw-r--r--include/elf/arc-reloc.def2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/elf/arc-reloc.def b/include/elf/arc-reloc.def
index faa1389..a995056 100644
--- a/include/elf/arc-reloc.def
+++ b/include/elf/arc-reloc.def
@@ -454,7 +454,7 @@ ARC_RELOC_HOWTO(ARC_TLS_DTPOFF, 67, \
32, \
replace_word32, \
dont, \
- ( ME ( ( S - TLS_REL ) ) ))
+ ( ME ( S - SECTSTART ) + A ))
ARC_RELOC_HOWTO(ARC_TLS_DTPOFF_S9, 73, \
2, \