diff options
author | Alan Modra <amodra@gmail.com> | 2020-02-04 21:34:45 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2020-02-04 21:56:29 +1030 |
commit | 24872cb30211b650a9360edd2476a6a1dd033cbb (patch) | |
tree | 69bca77da9e86cd47cb524adc21a1ee052132cd8 /bfd/elf32-ppc.c | |
parent | e8b791227f26871ae0030465f77c14f225135c28 (diff) | |
download | gdb-24872cb30211b650a9360edd2476a6a1dd033cbb.zip gdb-24872cb30211b650a9360edd2476a6a1dd033cbb.tar.gz gdb-24872cb30211b650a9360edd2476a6a1dd033cbb.tar.bz2 |
Minor fix for R_PPC_VLE_ADDR20
It is incorrect to "continue" in the ppc_elf_relocate_section reloc
processing loop except when editing or deleting relocs. The normal
loop processing arranges to write the relocs if shuffling them over a
deleted entry. Deleting only happens for debug sections currently and
those sections won't contain R_PPC_VLE_ADDR20 relocs, so this patch
doesn't fix a bug that would trigger with any normal object file.
* elf32-ppc.c (ppc_elf_relocate_section): After applying
R_PPC_VLE_ADDR20, goto copy_reloc.
Diffstat (limited to 'bfd/elf32-ppc.c')
-rw-r--r-- | bfd/elf32-ppc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c index 8c2d394..839d5ff 100644 --- a/bfd/elf32-ppc.c +++ b/bfd/elf32-ppc.c @@ -8780,7 +8780,7 @@ ppc_elf_relocate_section (bfd *output_bfd, case R_PPC_VLE_ADDR20: ppc_elf_vle_split20 (output_bfd, contents + rel->r_offset, relocation); - continue; + goto copy_reloc; /* Relocate against the beginning of the section. */ case R_PPC_SECTOFF: |