OSDN Git Service

* elf32-mips.c (mips_elf_calculate_relocation): Divide R_MIPS_PC16
authorian <ian>
Fri, 3 Dec 1999 06:51:54 +0000 (06:51 +0000)
committerian <ian>
Fri, 3 Dec 1999 06:51:54 +0000 (06:51 +0000)
value by 4 before storing it back in the field.  From
Koundinya. K <kk@ddeorg.soft.net>.

bfd/ChangeLog
bfd/elf32-mips.c

index f7d3ffa..7ec6946 100644 (file)
@@ -1,3 +1,9 @@
+1999-12-03  Ian Lance Taylor  <ian@zembu.com>
+
+       * 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>.
+
 Tue Nov 30 22:41:14 1999  Jeffrey A Law  (law@cygnus.com)
 
        * archures.c (bfd_mach_am33): Define.
index fe86862..6db9c23 100644 (file)
@@ -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;