Fix performance regression on x86 with ld -r
authorH.J. Lu <hjl.tools@gmail.com>
Tue, 10 Nov 2015 07:49:02 +0000 (23:49 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Tue, 10 Nov 2015 08:00:04 +0000 (00:00 -0800)
commit60f2e42e00083accdcdbdda399534082bf309d1e
tree8b35187979e66adbacca26926c1bbdfbe0c6f3ca
parent6637a4265e6144f5a9ad29e9fa08aba4bd959cb9
Fix performance regression on x86 with ld -r

Similar fix to "commit c316a17c40e44e8798b34ff84130904f2e7a53de".

* elf32-i386.c (elf_i386_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.
* elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
bfd/ChangeLog
bfd/elf32-i386.c
bfd/elf64-x86-64.c