binutils-gdb/include
Richard Henderson 3765b1be13 include/elf/
* alpha.h (R_ALPHA_TLSGD, R_ALPHA_TLSLDM, R_ALPHA_DTPMOD64,
        R_ALPHA_GOTDTPREL, R_ALPHA_DTPREL64, R_ALPHA_DTPRELHI,
        R_ALPHA_DTPRELLO, R_ALPHA_DTPREL16, R_ALPHA_GOTTPREL, R_ALPHA_TPREL64,
        R_ALPHA_TPRELHI, R_ALPHA_TPRELLO, R_ALPHA_TPREL16): New.

bfd/
        * elf64-alpha.c (ALPHA_ELF_LINK_HASH_LU_TLSGD,
        ALPHA_ELF_LINK_HASH_LU_TLSLDM, ALPHA_ELF_LINK_HASH_LU_FUNC): New.
        (ALPHA_ELF_GOT_ENTRY_RELOCS_DONE): Remove.
        (ALPHA_ELF_GOT_ENTRY_RELOCS_XLATED): Remove.
        (struct alpha_elf_got_entry): Add reloc_type, reloc_done, reloc_xlated.
        (struct alpha_elf_obj_tdata): Rename total_got_entries and
        n_local_got_entries to total_got_size and local_got_size.
        (elf64_alpha_howto, elf64_alpha_reloc_map): Update for TLS relocs.
        (alpha_got_entry_size): New.
        (elf64_alpha_relax_with_lituse): Use it.
        (elf64_alpha_relax_without_lituse): Likewise.
        (MAX_GOT_SIZE): Rename from MAX_GOT_ENTRIES.
        (get_got_entry): New.
        (elf64_alpha_check_relocs): Handle TLS relocs.  Reorganize.
        (elf64_alpha_adjust_dynamic_symbol): Test LU_FUNC as a mask.
        (elf64_alpha_merge_ind_symbols): Check gotent->reloc_type.
        (elf64_alpha_can_merge_gots, elf64_alpha_merge_gots): Likewise.
        (elf64_alpha_calc_got_offsets_for_symbol): Use alpha_got_entry_size.
        (elf64_alpha_calc_got_offsets): Likewise.
        (alpha_dynamic_entries_for_reloc): New.
        (elf64_alpha_calc_dynrel_sizes): Use it.
        (elf64_alpha_size_dynamic_sections): Likewise.
        (elf64_alpha_relocate_section): Handle TLS relocations.
        * reloc.c: Add Alpha TLS relocations.
        * bfd-in2.h, libbfd.h: Rebuild.

gas/
        * expr.h (operatorT): Add O_md17..O_md32.
        * config/tc-alpha.c (O_lituse_tlsgd, O_lituse_tlsldm, O_tlsgd,
        O_tlsldm, O_gotdtprel, O_dtprelhi, O_dtprello, O_dtprel, O_gottprel,
        O_tprelhi, O_tprello, O_tprel): New.
        (USER_RELOC_P, alpha_reloc_op_tag, debug_exp): Include them.
        (DUMMY_RELOC_LITUSE_TLSGD, DUMMY_RELOC_LITUSE_TLSLDM): New.
        (LITUSE_TLSGD, LITUSE_TLSLDM): New.
        (struct alpha_reloc_tag): Add master, saw_tlsgd, saw_tlsld,
        saw_lu_tlsgd, saw_lu_tlsldm.  Make multi_section_p a bit field.
        (md_apply_fix3): Handle TLS relocations.
        (alpha_force_relocation, alpha_fix_adjustable): Likewise.
        (alpha_adjust_symtab_relocs): Sort LITERAL relocs after the
        associated TLS reloc.  Check lituse_tls relocs match up.
        (emit_insn): Handle TLS relocations.
        (ldX_op): Remove.

gas/testsuite/
        * gas/alpha/elf-tls-1.s, gas/alpha/elf-tls-1.d: New.
        * gas/alpha/elf-tls-2.s, gas/alpha/elf-tls-1.l: New.
        * gas/alpha/elf-tls-3.s, gas/alpha/elf-tls-1.l: New.
        * gas/alpha/alpha.exp: Run them.
2002-05-30 22:01:38 +00:00
..
aout * aout64.h: Formatting fixes. 2001-09-18 10:00:23 +00:00
coff Add AIX 64 shared library support and emulation layer for binutils 2002-03-18 12:46:27 +00:00
elf include/elf/ 2002-05-30 22:01:38 +00:00
gdb * sim-d10v.h: Delete file. Moved to include/gdb/. 2002-05-24 00:12:18 +00:00
mpw Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
nlm * common.h (NLM_CAT, NLM_CAT3): Don't define. 2001-10-02 05:59:56 +00:00
opcode Add DLX target 2002-05-28 14:08:47 +00:00
regs 19990502 sourceware import 1999-05-03 07:29:11 +00:00
COPYING * COPYING: Update to current 2000-12-19 22:01:20 +00:00
ChangeLog Add DLX target 2002-05-28 14:08:47 +00:00
MAINTAINERS add MAINTAINERS files 2000-07-05 19:28:06 +00:00
alloca-conf.h Add alloca-conf.h from libiberty. 2000-09-28 08:00:54 +00:00
ansidecl.h merge from gcc 2001-08-29 20:03:08 +00:00
bfdlink.h 2002-05-21 H.J. Lu (hjl@gnu.org) 2002-05-22 05:07:20 +00:00
bin-bugs.h Update address for bug reports. 2001-01-09 21:05:35 +00:00
bout.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
callback.h 19990502 sourceware import 1999-05-03 07:29:11 +00:00
demangle.h merge from gcc 2002-02-05 17:53:17 +00:00
dis-asm.h Add DLX target 2002-05-28 14:08:47 +00:00
dyn-string.h merge from gcc 2002-04-01 22:01:20 +00:00
fibheap.h merge from gcc 2001-08-23 14:51:49 +00:00
filenames.h * filenames.h: Add cygwin to the list of dosish style path systems. 2001-10-16 12:47:31 +00:00
floatformat.h Remove floatformat_arm_ext. 2002-03-06 06:29:42 +00:00
fnmatch.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
fopen-bin.h 19990502 sourceware import 1999-05-03 07:29:11 +00:00
fopen-same.h 19990502 sourceware import 1999-05-03 07:29:11 +00:00
fopen-vms.h 19990502 sourceware import 1999-05-03 07:29:11 +00:00
gdbm.h 19990502 sourceware import 1999-05-03 07:29:11 +00:00
getopt.h Synchronise with copyright dates on FSF GCC versions of these files 2001-03-14 19:45:29 +00:00
hashtab.h merge from gcc 2001-08-17 06:33:05 +00:00
hp-symtab.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
ieee.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
libiberty.h merge from gcc 2002-01-28 22:03:14 +00:00
md5.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
oasys.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
objalloc.h * objalloc.h (OBJALLOC_ALIGN): Define using offsetof. 2001-09-18 09:59:28 +00:00
obstack.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
os9k.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
partition.h merge from gcc 2001-08-23 14:51:49 +00:00
progress.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
remote-sim.h Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
safe-ctype.h merge from gcc 2001-10-24 20:32:09 +00:00
sort.h merge from gcc 2001-08-23 14:51:49 +00:00
splay-tree.h include: 2002-02-21 22:19:14 +00:00
symcat.h Synchronise with copyright dates on FSF GCC versions of these files 2001-03-14 19:45:29 +00:00
ternary.h merge from gcc 2001-05-08 14:35:18 +00:00
xregex.h merge from gcc 2001-08-02 23:27:47 +00:00
xregex2.h merge from gcc 2002-04-17 01:03:04 +00:00