old-cross-binutils/ld/testsuite/ld-spu/fixup.d
Trevor Smigiel 9cc305ec20 bfd/
* elf32-spu.h (spu_elf_params): Add member emit_fixups.
	(spu_elf_size_sections): Declare prototype.
	* elf32-spu.c (spu_link_hash_table): Add member sfixup.
	(FIXUP_RECORD_SIZE, FIXUP_GET, FIXUP_PUT): New macros.
	(spu_elf_emit_fixup): New function.
	(spu_elf_relocate_section): Emit fixup for each SPU_ADDR32.
	(spu_elf_size_sections): New function.
ld/
	* emulparams/elf32_spu.sh (OTHER_READONLY_SECTIONS): Add .fixup
	section and __fixup_start symbol.
	* emultempl/spuelf.em (params): Initialize emit_fixups member.
	(spu_before_allocation): Call spu_elf_size_sections.
	(OPTION_SPU_EMIT_FIXUPS): Define.
	(PARSE_AND_LIST_LONGOPTS): Add --emit-fixups.
	(PARSE_AND_LIST_ARGS_CASES): Handle --emit-fixups.
	* ld.texinfo (--emit-fixups): Document.
ld/testsuite/
	* ld-spu/fixup.d: New.
	* ld-spu/fixup.s: New.
2009-08-05 20:40:34 +00:00

20 lines
614 B
Makefile

#source: fixup.s
#ld: --emit-fixups
#objdump: -s
.*elf32-spu
Contents of section .text:
0000 00000000 ....
Contents of section .fixup:
0004 0000008b 00000091 000000c1 00000000 ................
Contents of section .data:
0080 000000d0 00000000 00000000 000000c0 ................
0090 00000000 00000000 00000000 000000b0 ................
00a0 00000001 00000000 00000000 00000000 ................
00b0 00000002 00000000 00000000 00000000 ................
00c0 00000000 00000000 00000000 00000080 ................
Contents of section .note.spu_name:
.*
.*
#pass