bfd:
        * reloc.c (BFD_RELOC_ARC_TLS_GD_GOT): New relocation.
        (BFD_RELOC_ARC_TLS_IE_GOT, BFD_RELOC_ARC_TLS_LE_S9): Likewise.
        (BFD_RELOC_ARC_TLS_LE_32): Likewise.
        * bfd-in2.h, libbfd.h: Regenerate.
        * elf32-arc.c (elf_arc_howto_table): Add HOWTOs for TLS relocations.
        (arc_reloc_map): Add mappings for TLS relocations.

gas:
        * config/tc-arc.c (arc700_special_symtype): Add TLSGD_TYPE,
        TLSIE_TYPE, TPOFF_TYPE and TPOFF9_TYPE.
        (md_apply_fix): Handle TLS relocations.
        (md_assemble): Handle tls suffixes.

        * config/tc-arc.c (md_apply_fix): Remove unused variable.

gas/testsuite:
        * gas/arc/tls.s, gas/arc/tls.d: New test.
        * gas/arc/arc700.exp: Run it.