From: Alan Modra Date: Thu, 20 Nov 2014 10:37:58 +0000 (+1030) Subject: ppc476 workaround sizing X-Git-Tag: binutils-2_25~61 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=711833262c7a413b10a32f01153454bc5a53a5a6;p=thirdparty%2Fbinutils-gdb.git ppc476 workaround sizing * elf32-ppc.c (ppc_elf_relax_section): Correct ppc476 workaround alignment calculation. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 8ac4034d549..bbfb46c1c39 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2014-11-20 Alan Modra + + * elf32-ppc.c (ppc_elf_relax_section): Correct ppc476 workaround + alignment calculation. + 2014-11-20 Alan Modra * elf64-ppc.c (ppc64_elf_size_stubs): Add __go_go to thread_starters. diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c index 04c2d6ad60b..b4d20753cf7 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) {