[PATCH] R_C6000_EHTYPE

Paul Brook paul@codesourcery.com
Thu Apr 7 12:31:00 GMT 2011


The attached patch adds support for the R_C6000_EHTYPE relocation.
This is used by c++ exception handling tables.  It serves the same purpose as 
the R_ARM_TARGET2 relocation, except that C6X only really has one addressing 
model.  It is implemented as a SB-relative offset of the GOT entry pointing to 
the referenced symbol.

These relocations can be generated using the new .ehtype assembler directive.

Ok?

Paul

2011-04-07  Paul Brook  <paul@codesourcery.com>


	bfd/
	* elf32-tic6x.c (elf32_tic6x_howto_table,
	elf32_tic6x_howto_table_rel, (elf32_tic6x_gc_sweep_hook,
	elf32_tic6x_relocate_section, elf32_tic6x_check_relocs):
	Add R_C6000_EHTYPE.

	gas/
	* config/tc-tic6x.c (s_ehtype): New function.
	(md_pseudo_table): Add "ehtype".
	(tic6x_fix_adjustable, md_apply_fix): BFD_RELOC_C6000_EHTYPE.
	* doc/c-tic6x.texi: Document .ehtype directive.

	ld/testsuite/
	* ld-tic6x/ehtype-reloc-1-rel.d: New test.
	* ld-tic6x/ehtype-reloc-1.d: New test.
	* ld-tic6x/ehtype-reloc-1.s: New test.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.ehtype
Type: text/x-patch
Size: 6179 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20110407/c2eefca0/attachment.bin>


More information about the Binutils mailing list