old-cross-binutils/ld/emultempl
Alan Modra b4ab436423 ppc476 icache workaround fix for bctr
I got the ppc476 workaround wrong.  bctr (and bctrl) as the last
instruction in a page can hit the icache bug if the preceding mtctr
insn is close by, and the destination is in the first few instructions
on the next page.  This scenario can occur with code generated by gcc
to implement switch statements, or in code generated to call by
function pointer.

To prevent the bctr problem it is also necessary to remove other
instructions that otherwise would be safe.

bfd/
	* elf32-ppc.c (ppc_elf_relocate_section): Remove bctr from list
	of safe ppc476 insns at end of page.  Also remove non-branch insns.
	Expand comments.
ld/
	* emultempl/ppc32elf.em (no_zero_padding, ppc_finish): New functions.
	(LDEMUL_FINISH): Define.
2014-04-09 07:07:06 +09:30
..
aarch64elf.em Update copyright years 2014-03-05 22:16:15 +10:30
aix.em Remove search path from -l:namespec DT_NEEDED 2014-03-14 12:54:24 +10:30
alphaelf.em Update copyright years 2014-03-05 22:16:15 +10:30
armcoff.em Update copyright years 2014-03-05 22:16:15 +10:30
armelf.em Update copyright years 2014-03-05 22:16:15 +10:30
astring.sed * emultempl/ostring.sed: Rename from stringify.sed. 1999-08-06 22:46:03 +00:00
avrelf.em Update copyright years 2014-03-05 22:16:15 +10:30
beos.em Update copyright years 2014-03-05 22:16:15 +10:30
bfin.em Update copyright years 2014-03-05 22:16:15 +10:30
cr16elf.em Update copyright years 2014-03-05 22:16:15 +10:30
crxelf.em Update copyright years 2014-03-05 22:16:15 +10:30
default-manifest.rc Improve .rsrc section merging with better handling of the alignment adjustments 2014-03-19 08:51:20 +00:00
elf-generic.em Update copyright years 2014-03-05 22:16:15 +10:30
elf32.em Add support for generating and inserting build IDs into COFF binaries. 2014-04-08 10:59:43 +01:00
epiphanyelf_4x4.em Update copyright years 2014-03-05 22:16:15 +10:30
genelf.em Update copyright years 2014-03-05 22:16:15 +10:30
generic.em Update copyright years 2014-03-05 22:16:15 +10:30
gld960.em Update copyright years 2014-03-05 22:16:15 +10:30
gld960c.em Update copyright years 2014-03-05 22:16:15 +10:30
hppaelf.em Update copyright years 2014-03-05 22:16:15 +10:30
ia64elf.em Update copyright years 2014-03-05 22:16:15 +10:30
irix.em Update copyright years 2014-03-05 22:16:15 +10:30
linux.em Remove search path from -l:namespec DT_NEEDED 2014-03-14 12:54:24 +10:30
lnk960.em Update copyright years 2014-03-05 22:16:15 +10:30
m68hc1xelf.em Update copyright years 2014-03-05 22:16:15 +10:30
m68kcoff.em Update copyright years 2014-03-05 22:16:15 +10:30
m68kelf.em Update copyright years 2014-03-05 22:16:15 +10:30
metagelf.em Update copyright years 2014-03-05 22:16:15 +10:30
mipself.em Update copyright years 2014-03-05 22:16:15 +10:30
mmix-elfnmmo.em Update copyright years 2014-03-05 22:16:15 +10:30
mmixelf.em Update copyright years 2014-03-05 22:16:15 +10:30
mmo.em Update copyright years 2014-03-05 22:16:15 +10:30
nds32elf.em Update copyright years 2014-03-05 22:16:15 +10:30
needrelax.em Update copyright years 2014-03-05 22:16:15 +10:30
netbsd.em Update copyright years 2014-03-05 22:16:15 +10:30
nios2elf.em Update copyright years 2014-03-05 22:16:15 +10:30
ostring.sed * emultempl/ostring.sed: Rename from stringify.sed. 1999-08-06 22:46:03 +00:00
pe.em Add support for generating and inserting build IDs into COFF binaries. 2014-04-08 10:59:43 +01:00
pep.em Add support for generating and inserting build IDs into COFF binaries. 2014-04-08 10:59:43 +01:00
ppc32elf.em ppc476 icache workaround fix for bctr 2014-04-09 07:07:06 +09:30
ppc64elf.em Update copyright years 2014-03-05 22:16:15 +10:30
README Update copyright years 2014-03-05 22:16:15 +10:30
rxelf.em Update copyright years 2014-03-05 22:16:15 +10:30
scoreelf.em Update copyright years 2014-03-05 22:16:15 +10:30
sh64elf.em Update copyright years 2014-03-05 22:16:15 +10:30
solaris2.em Update copyright years 2014-03-05 22:16:15 +10:30
spu_icache.o_c bfd/ 2009-03-17 12:46:19 +00:00
spu_icache.S bfd/ 2009-03-17 12:46:19 +00:00
spu_ovl.o_c Include the spu_ovl ASCII form in the repository files. 2008-08-02 16:25:44 +00:00
spu_ovl.S Update copyright years 2014-03-05 22:16:15 +10:30
spuelf.em Update copyright years 2014-03-05 22:16:15 +10:30
sunos.em Update copyright years 2014-03-05 22:16:15 +10:30
tic6xdsbt.em Update copyright years 2014-03-05 22:16:15 +10:30
ticoff.em Update copyright years 2014-03-05 22:16:15 +10:30
vanilla.em Update copyright years 2014-03-05 22:16:15 +10:30
vms.em Remove search path from -l:namespec DT_NEEDED 2014-03-14 12:54:24 +10:30
vxworks.em Update copyright years 2014-03-05 22:16:15 +10:30
xtensaelf.em Update copyright years 2014-03-05 22:16:15 +10:30
z80.em Update copyright years 2014-03-05 22:16:15 +10:30

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

The files in this directory are sourced by genscripts.sh, after
setting some variables to substitute in, to produce
C source files that contain jump tables for each emulation.

Copyright (C) 2012-2014 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.