[parisc-linux] [PATCH] tls support against mainline binutils.

Carlos O'Donell carlos at systemhalted.org
Sat Apr 8 16:00:48 MDT 2006


Randolph,

This is my merge of the TLS patch to mainline.

I'm going through our TLS document .tex file
stored in our web/ cvs module. I'm hoping this
is up to date and ok.

What else do we need to add to binutils?

Please review.

Cheers,
Carlos.

gas/

2005-06-09  Randolph Chung  <tausq at debian.org>

	* config/tc-hppa.h (hppa_fix_adjustable): Handle TLS relocations.
	* config/tc-hppa.c (is_tls_gdidx, is_tls_ldidx, is_tls_dtpoff): New.
	(is_tls_ieoff, is_tls_leoff): New.
	(fix_new_hppa): Handle TLS relocations.
	(cons_fix_new_hppa): Likewise.
	(pa_ip): Likewise.
	(md_apply_fix): Likewise.

include/elf/

2005-06-09  Randolph Chung  <tausq at debian.org>

	* hppa.h: Add TLS relocations.

bfd/

2005-06-09  Randolph Chung  <tausq at debian.org>

	* elf-hppa.h (reloc_hppa_howto_table): Check bitfield for
	TPREL21L/TPREL14R relocations. Handle LTOFF_TP14R relocations.
	Add handling for new TLS relocations.
	(elf_hppa_reloc_final_type): Handle TLS relocations.
	* elf32-hppa.c (elf32_hppa_link_hash_entry): Define tls GOT type
	enumeration.  Add tls_ldm_got to keep track of LDM relocations.
	(hppa_elf_hash_entry): New.
	(hppa_elf_local_got_tls_type): New.
	(elf32_hppa_optimized_tls_reloc): New function.
	(hppa_link_hash_newfunc): Initialize tls_type field.
	(elf32_hppa_link_hash_table_create): Initialize tls_ldm_got
	field.
	(elf32_hppa_copy_indirect_symbol): Copy TLS information.
	(elf32_hppa_check_relocs): Handle TLS relocations.
	(elf32_hppa_gc_sweep_hook): Likewise.
	(allocate_plt_static): Cleanup usage of elf32_hppa_link_hash_entry
	cast.
	(allocate_dynrelocs): Handle TLS relocations.
	(elf32_hppa_size_dynamic_sections): Likewise.
	(dtpoff_base): New function.
	(tpoff): New function.
	(final_link_relocate): Handle TLS relocations.
	(elf32_hppa_optimized_tls_reloc): New function.
	(elf32_hppa_relocate_section): Handle TLS relocations.
	(elf32_hppa_finish_dynamic_symbol): Likewise.
	(elf32_hppa_reloc_type_class): Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch-tls-2006-04-08.diff
Type: text/x-patch
Size: 39067 bytes
Desc: not available
Url : http://lists.parisc-linux.org/pipermail/parisc-linux/attachments/20060408/00b6b88a/attachment.bin 


More information about the parisc-linux mailing list