Commit Graph

14 Commits

Author SHA1 Message Date
Alan Modra
c67d8df719 * embedspu.sh: Pass -Wa,-noexecstack to $CC. 2008-10-09 13:42:30 +00:00
Alan Modra
cef1fe971f * embedspu.sh: Test for presence of ._ea by looking at section
table rather than looking at relocs.  Correct toe_addr substitution.
2008-05-12 12:23:13 +00:00
Alan Modra
8374f9d4b5 bfd/
* elf32-spu.c (spu_elf_special_sections): Add "._ea".
	(spu_elf_relocate_section): Handle relocations against symbols
	defined in ._ea specially.
binutils/
	* embedspu.sh: Take note of R_SPU_PPU32/64 relocs without a symbol,
	and if present, put image in ".data.speelf".  Put program handle
	in ".data.spehandle".
ld/emulparams/
	* elf32_spu.sh (OTHER_SECTIONS): Add "._ea".
	* elf32ppc.sh: If building with spu support, put ".data.spehandle"
	sections at the start of ".data" and provide a symbol to locate
	the directory of embedded spe programs.
ld/testsuite/
	* ld-spu/ear.s: Align various sections.
	* ld-spu/embed.rd: Update.
2008-05-07 14:46:44 +00:00
Nick Clifton
32866df75e Change sources over to using GPLv3 2007-07-05 16:54:46 +00:00
Alan Modra
daaf07b244 * embedspu.sh (relas): Correct sh_info parsing. 2007-06-21 00:31:39 +00:00
Alan Modra
dbdca70b82 * embedspu.sh: Parse _SPUEAR_ symbol values as hex. 2007-06-18 02:09:20 +00:00
Alan Modra
7354508966 * embedspu.sh: Handle R_SPU_PPU* relocs with no symbol. 2007-06-05 00:27:39 +00:00
Alan Modra
3ba20bde7e binutils/
* embedspu.sh: Emit SPU ELF image to .data.rel.ro.speelf if
	pic or pie and image needs relocs.
ld/
	* emultempl/spuelf.em (base_name): New function, split out from..
	(embedded_spu_file) ..here.  Pass -fPIC or -fpie to embedspu
	invocation if we deduce a shared lib or position independent
	executable build by looking at ctrbegin* linker input files.
2007-05-29 13:10:10 +00:00
Alan Modra
ece5ef6079 include/elf/
* spu.h (R_SPU_PPU32, R_SPU_PPU64): Define.
bfd/
	* reloc.c (BFD_RELOC_SPU_PPU32, BFD_RELOC_SPU_PPU64): Define.
	* elf-bfd.h (struct elf_backend_data): Change return type of
	elf_backend_relocate_section to int.
	* elf32-spu.c (elf_howto_table): Add howtos for R_SPU_PPU32 and
	R_SPU_PPU64.
	(spu_elf_bfd_to_reloc_type): Convert new relocs.
	(spu_elf_count_relocs): New function.
	(elf_backend_count_relocs): Define.
	(spu_elf_relocate_section): Arrange to emit R_SPU_PPU32 and
	R_SPU_PPU64 relocs.
	* elflink.c (elf_link_input_bfd): Emit relocs if relocate_section
	returns 2.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
gas/
	* config/tc-spu.c (md_pseudo_table): Add int, long, quad.  Call
	spu_cons for word.
	(md_assemble): Tidy use of insn.flag.
	(get_imm): Likewise.  Handle uppercase input too.
	(spu_cons): New function.
	* config/tc-spu.h (tc_fix_adjustable): Don't adjust SPU_PPU relocs.
	(TC_FORCE_RELOCATION): Don't resolve them either.
binutils/
	* embedspu.sh (find_prog): Prefer prog in same dir as embedspu
	over one found on the users path.
	(main): Generate .reloc for each R_SPU_PPU* reloc.
2007-05-11 03:10:11 +00:00
Alan Modra
48d8dc645f * embedspu.sh: Correct toe_addr quoting. 2007-03-27 02:10:58 +00:00
Alan Modra
88948ad083 * embedspu.sh: Combine "_EAR_" and "_EAR_*" patterns. Tighten
.toe section and .toe address checks.  Use .reloc for _EAR*
	symbols defined in non-BSS sections.  Build table for _SPUEAR_
	symbols.
2007-03-26 23:56:40 +00:00
Alan Modra
11d5fa8985 * embedspu.sh: Set type and size of global program handle symbol. 2007-03-01 06:14:37 +00:00
Alan Modra
41160f02e6 * embedspu.sh: Add -W to readelf invocation. 2007-02-13 07:33:32 +00:00
Alan Modra
669a9a2af6 * embedspu.sh: New file.
* Makefile.am (embedspu): Add rule.
	* configure.in (BUILD_MISC): Add embedspu for powerpc-linux.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
2007-01-11 06:24:40 +00:00