diff options
author | Cupertino Miranda <cmiranda@synopsys.com> | 2015-10-28 13:48:00 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2015-10-28 13:48:00 +0000 |
commit | 6f4b1afcdc8317280669d020765b8215110c4584 (patch) | |
tree | b6365ff26a33f93899421909914d54c7e69e7721 /include/elf/arc-reloc.def | |
parent | 7963511fbf0459fff586c3129705bfbc706770e3 (diff) | |
download | gdb-6f4b1afcdc8317280669d020765b8215110c4584.zip gdb-6f4b1afcdc8317280669d020765b8215110c4584.tar.gz gdb-6f4b1afcdc8317280669d020765b8215110c4584.tar.bz2 |
Fix errors in the gas testsuite for the ARC target.
bfd * reloc.c (BFD_RELOC_ARC_32_PCREL): New entry.
(ARC_TLS_DTPOFF): Arrange it in order.
* elf32-arc.c (arc_elf_howto_ini): Update formula.
(get_middle_endian_relocation): New function.
(PDATA): Define.
* bfd-in2.h: Regenerate.
* libbfd.h: Likewise.
elf * arc-reloc.def (ARC_32_PCREL): New definition.
gas * config/tc-arc.c (tokenize_arguments): Avoid creating unused
symbols when parsing relocation types.
(md_apply_fix): Handle TLS relocations. Fix BFD_RELOC_ARC_32_PCREL
relocation.
(arc_check_reloc): Emit BFD_RELOC_ARC_32_PCREL relocation.
Diffstat (limited to 'include/elf/arc-reloc.def')
-rw-r--r-- | include/elf/arc-reloc.def | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/include/elf/arc-reloc.def b/include/elf/arc-reloc.def index e2ff871..893291f 100644 --- a/include/elf/arc-reloc.def +++ b/include/elf/arc-reloc.def @@ -1,4 +1,3 @@ - ARC_RELOC_HOWTO(ARC_NONE, 0, \ 2, \ 32, \ @@ -286,6 +285,13 @@ ARC_RELOC_HOWTO(ARC_SDA16_ST2, 48, \ signed, \ ( ( ( S + A ) - _SDA_BASE_ ) >> 2 )) +ARC_RELOC_HOWTO(ARC_32_PCREL, 49, \ + 2, \ + 32, \ + replace_word32, \ + signed, \ + ( ( S + A ) - PDATA )) + ARC_RELOC_HOWTO(ARC_PC32, 50, \ 2, \ 32, \ @@ -377,42 +383,42 @@ ARC_RELOC_HOWTO(ARC_TLS_DTPMOD, 66, \ dont, \ 0) -ARC_RELOC_HOWTO(ARC_TLS_DTPOFF, 67, \ +ARC_RELOC_HOWTO(ARC_TLS_TPOFF, 68, \ 2, \ 32, \ replace_word32, \ dont, \ 0) -ARC_RELOC_HOWTO(ARC_TLS_TPOFF, 68, \ +ARC_RELOC_HOWTO(ARC_TLS_GD_GOT, 69, \ 2, \ 32, \ replace_word32, \ dont, \ 0) -ARC_RELOC_HOWTO(ARC_TLS_GD_GOT, 69, \ +ARC_RELOC_HOWTO(ARC_TLS_GD_LD, 70, \ 2, \ 32, \ replace_word32, \ dont, \ 0) -ARC_RELOC_HOWTO(ARC_TLS_GD_LD, 70, \ +ARC_RELOC_HOWTO(ARC_TLS_GD_CALL, 71, \ 2, \ 32, \ replace_word32, \ dont, \ 0) -ARC_RELOC_HOWTO(ARC_TLS_GD_CALL, 71, \ +ARC_RELOC_HOWTO(ARC_TLS_IE_GOT, 72, \ 2, \ 32, \ replace_word32, \ dont, \ 0) -ARC_RELOC_HOWTO(ARC_TLS_IE_GOT, 72, \ +ARC_RELOC_HOWTO(ARC_TLS_DTPOFF, 67, \ 2, \ 32, \ replace_word32, \ |