aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf32-arm.h
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2004-10-13 03:09:28 +0000
committerMark Mitchell <mark@codesourcery.com>2004-10-13 03:09:28 +0000
commit2a1b9a480accc2f7049279646ba33cd887eb3abe (patch)
tree729ae827b8fb94015c46b30d23b1ab266e438b29 /bfd/elf32-arm.h
parent09c112daa3a9b33a03b9272da7e9e19e8d63dc91 (diff)
downloadgdb-2a1b9a480accc2f7049279646ba33cd887eb3abe.zip
gdb-2a1b9a480accc2f7049279646ba33cd887eb3abe.tar.gz
gdb-2a1b9a480accc2f7049279646ba33cd887eb3abe.tar.bz2
* elf32-arm.h (elf32_arm_finish_dynamic_symbol): Make .rel.plt
relocations use a virtual address, not a section offset.
Diffstat (limited to 'bfd/elf32-arm.h')
-rw-r--r--bfd/elf32-arm.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/bfd/elf32-arm.h b/bfd/elf32-arm.h
index c51cdeb..a74004d 100644
--- a/bfd/elf32-arm.h
+++ b/bfd/elf32-arm.h
@@ -3853,7 +3853,8 @@ elf32_arm_finish_dynamic_symbol (bfd * output_bfd, struct bfd_link_info * info,
splt->contents + h->plt.offset + 4 * i);
/* Fill in the entry in the .rel.plt section. */
- rel.r_offset = (splt->output_offset
+ rel.r_offset = (splt->output_section->vma
+ + splt->output_offset
+ h->plt.offset + 4 * (i - 1));
rel.r_info = ELF32_R_INFO (h->dynindx, R_ARM_GLOB_DAT);
}