aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2015-11-09 15:03:29 +1030
committerAlan Modra <amodra@gmail.com>2015-11-10 17:14:41 +1030
commitc316a17c40e44e8798b34ff84130904f2e7a53de (patch)
treec63c9eb998140c10abb05c3533f64dc99b6b9c88 /bfd/ChangeLog
parent1057567ea711d80f9937653179b06507827d5819 (diff)
downloadgdb-c316a17c40e44e8798b34ff84130904f2e7a53de.zip
gdb-c316a17c40e44e8798b34ff84130904f2e7a53de.tar.gz
gdb-c316a17c40e44e8798b34ff84130904f2e7a53de.tar.bz2
Fix performance regression due to ld -r memmove
The idea here is that instead of using memmove to shuffle the relocs array every time one is deleted, to add a "wrel" pointer and copy from rel[0] to wrel[0] as we go. * elf64-ppc.c (ppc64_elf_relocate_section): Use read and write pointers to reloc array, rather than memmove when deleting a reloc. Don't use RELOC_AGAINST_DISCARDED_SECTION. Adjust reloc counts at end of loop. * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r--bfd/ChangeLog8
1 files changed, 8 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 60d13b9..d46bbe0 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,11 @@
+2015-11-10 Alan Modra <amodra@gmail.com>
+
+ * elf64-ppc.c (ppc64_elf_relocate_section): Use read and write
+ pointers to reloc array, rather than memmove when deleting a
+ reloc. Don't use RELOC_AGAINST_DISCARDED_SECTION. Adjust
+ reloc counts at end of loop.
+ * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
+
2015-11-09 Dominik Vogt <vogt@linux.vnet.ibm.com>
* elf64-ppc.c (ppc64_elf_size_stubs, ppc64_elf_build_stubs): Fix left