summaryrefslogtreecommitdiff
path: root/bfd/elf32-mips.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1999-12-03 06:51:54 +0000
committerIan Lance Taylor <ian@airs.com>1999-12-03 06:51:54 +0000
commitb4cdd3349306b8ca35f4c6e4059d2d01c1872e4d (patch)
tree88ea4246844b2ebfe2b0e8bd418b5d6e8f86e82d /bfd/elf32-mips.c
parent9f7a019b37670753daa216a72eb9a805bd20148b (diff)
downloadbinutils-redhat-b4cdd3349306b8ca35f4c6e4059d2d01c1872e4d.tar.gz
* elf32-mips.c (mips_elf_calculate_relocation): Divide R_MIPS_PC16
value by 4 before storing it back in the field. From Koundinya. K <kk@ddeorg.soft.net>.
Diffstat (limited to 'bfd/elf32-mips.c')
-rw-r--r--bfd/elf32-mips.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/bfd/elf32-mips.c b/bfd/elf32-mips.c
index fe86862641..6db9c239e7 100644
--- a/bfd/elf32-mips.c
+++ b/bfd/elf32-mips.c
@@ -6103,6 +6103,7 @@ mips_elf_calculate_relocation (abfd,
case R_MIPS_PC16:
value = mips_elf_sign_extend (addend, 16) + symbol - p;
+ value = (bfd_vma) ((bfd_signed_vma) value / 4);
overflowed_p = mips_elf_overflow_p (value, 16);
break;