ppc476 workaround sizing
Alan Modra
amodra@gmail.com
Thu Nov 20 11:04:00 GMT 2014
I can't believe I missed this when changing end_addr in 6128f9cf.
* elf32-ppc.c (ppc_elf_relax_section): Correct ppc476 workaround
alignment calculation.
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
index 04c2d6a..b4d2075 100644
--- a/bfd/elf32-ppc.c
+++ b/bfd/elf32-ppc.c
@@ -7174,7 +7174,7 @@ ppc_elf_relax_section (bfd *abfd,
/* Keep space aligned, to ensure the patch code itself does
not cross a page. Don't decrease size calculated on a
previous pass as otherwise we might never settle on a layout. */
- newsize = 15 - (end_addr & 15);
+ newsize = 15 - ((end_addr - 1) & 15);
newsize += crossings * 16;
if (relax_info->workaround_size < newsize)
{
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list