]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Do not convert reloc addend to PC rel, it will be handled later on.
authorNick Clifton <nickc@redhat.com>
Sat, 10 Feb 2001 20:09:18 +0000 (20:09 +0000)
committerNick Clifton <nickc@redhat.com>
Sat, 10 Feb 2001 20:09:18 +0000 (20:09 +0000)
bfd/ChangeLog
bfd/elf32-v850.c

index 4ca558385f69ada0caff4965143fee5a36ea91ef..07e4679633d41123756ca85c4c110ada3ca5d69e 100644 (file)
@@ -1,3 +1,8 @@
+2001-02-10  Nick Clifton  <nickc@redhat.com>
+
+       * elf32-v850.c (v850_elf_reloc): Do not convert reloc addend to PC
+       rel, it will be handled later on.
+
 2001-02-09  David Mosberger  <davidm@hpl.hp.com>
 
        * elfxx-ia64.c (is_unwind_section_name): New function.  Returns
index 67fede0512c04572f8441facaa6f2d81945aeae9..e71866c3aa39d3376b5188619c7c581e7fb80f08 100644 (file)
@@ -1300,6 +1300,21 @@ v850_elf_reloc (abfd, reloc, symbol, data, isection, obfd, err)
   relocation += symbol->section->output_offset;
   relocation += reloc->addend;
 
+#if 0 /* Since this reloc is going to be processed later on, we should
+        not make it pc-relative here.  To test this, try assembling and
+        linking this program:
+
+               .text
+               .globl _start
+               nop
+       _start:         
+               jr foo
+
+               .section ".foo","ax"
+               nop
+       foo:
+               nop
+      */
   if (reloc->howto->pc_relative == true)
     {
       /* Here the variable relocation holds the final address of the
@@ -1309,6 +1324,7 @@ v850_elf_reloc (abfd, reloc, symbol, data, isection, obfd, err)
       /* Deal with pcrel_offset */
       relocation -= reloc->address;
     }
+#endif
 
   reloc->addend = relocation;
   return bfd_reloc_ok;