Removed BFD_RELOC_V850_PCREL.
authorNick Clifton <nickc@redhat.com>
Wed, 3 Sep 1997 18:22:00 +0000 (18:22 +0000)
committerNick Clifton <nickc@redhat.com>
Wed, 3 Sep 1997 18:22:00 +0000 (18:22 +0000)
bfd/ChangeLog
bfd/bfd-in2.h
bfd/elf32-v850.c
bfd/libbfd.h

index 6ca14c62ede922918b8a793f24dc17c5a3e64ae7..e3e73811102d1c4f7bdf570e5103f98007e0ff8c 100644 (file)
@@ -1,3 +1,8 @@
+Wed Sep  3 11:23:23 1997  Nick Clifton  <nickc@cygnus.com>
+
+       * libbfd.h, bfd-in2.h, elf32-v850.c: Removed
+       BFD_RELOC_V850_16_PCREL. 
+
 Tue Sep  2 20:44:10 1997  Fred Fish  <fnf@cygnus.com>
 
        * cofflink.c (coff_link_check_ar_symbols): Handle C_SYSTEM syms
index aba89edc96df93c7767023ec04d4668610a9e486..8e7a01886caa47651b878d51b700bd461f093271 100644 (file)
@@ -1942,9 +1942,6 @@ add3, load, and store instructions. */
 /* This is a 9-bit reloc */
   BFD_RELOC_V850_9_PCREL,
 
-/* This is a 16-bit reloc */
-  BFD_RELOC_V850_16_PCREL,
-
 /* This is a 22-bit reloc */
   BFD_RELOC_V850_22_PCREL,
 
index b329f520d7c02f68d1fa9bbd98e1d0ac89983ee1..7496e845a4cddca88d865ae69317b079f8c37447 100644 (file)
@@ -83,21 +83,6 @@ static reloc_howto_type v850_elf_howto_table[] =
         0x00ffffff,                    /* dst_mask */
         true),                         /* pcrel_offset */
 
-  /* A PC relative 16 bit load/store. */
-  HOWTO (R_V850_16_PCREL,              /* type */
-        0,                             /* rightshift */
-        2,                             /* size (0 = byte, 1 = short, 2 = long) */
-        15,                            /* bitsize */
-        true,                          /* pc_relative */
-        17,                            /* bitpos */
-        complain_overflow_bitfield,    /* complain_on_overflow */
-        v850_elf_reloc,                /* special_function */
-        "R_V850_16_PCREL",             /* name */
-        false,                         /* partial_inplace */
-        0xfffe0000,                    /* src_mask */
-        0xfffe0000,                    /* dst_mask */
-        true),                         /* pcrel_offset */
-
   /* A PC relative 22 bit branch. */
   HOWTO (R_V850_22_PCREL,              /* type */
         2,                             /* rightshift */
@@ -385,7 +370,6 @@ static const struct v850_elf_reloc_map v850_elf_reloc_map[] =
 {
   { BFD_RELOC_NONE,            R_V850_NONE },
   { BFD_RELOC_V850_9_PCREL,    R_V850_9_PCREL },
-  { BFD_RELOC_V850_16_PCREL,   R_V850_16_PCREL },
   { BFD_RELOC_V850_22_PCREL,   R_V850_22_PCREL },
   { BFD_RELOC_HI16_S,          R_V850_HI16_S },
   { BFD_RELOC_HI16,            R_V850_HI16 },
@@ -502,7 +486,6 @@ v850_elf_check_relocs (abfd, info, sec, relocs)
        default:
        case R_V850_NONE:
        case R_V850_9_PCREL:
-       case R_V850_16_PCREL:
        case R_V850_22_PCREL:
        case R_V850_HI16_S:
        case R_V850_HI16:
@@ -694,19 +677,6 @@ v850_elf_reloc (abfd, reloc, symbol, data, isection, obfd, err)
          bfd_put_32 (abfd, insn, (bfd_byte *)data + reloc->address);
          return bfd_reloc_ok;
 
-       case R_V850_16_PCREL:
-         if (relocation > 0x7fff || relocation < -0x10000)
-           return bfd_reloc_overflow;
-
-         if ((relocation % 2) != 0)
-           return bfd_reloc_dangerous;
-
-         insn = bfd_get_32 (abfd, (bfd_byte *) data + reloc->address);
-         insn &= 0x1ffff;
-         insn |= ((relocation & 0xfffe) << 16);
-         bfd_put_32 (abfd, insn, (bfd_byte *) data + reloc->address);
-         return bfd_reloc_ok;
-
        case R_V850_9_PCREL:
          if (relocation > 0xff || relocation < -0x100)
            return bfd_reloc_overflow;
@@ -896,22 +866,6 @@ v850_elf_final_link_relocate (howto, input_bfd, output_bfd,
       bfd_put_16 (input_bfd, insn, hit_data);
       return bfd_reloc_ok;
     
-    case R_V850_16_PCREL:
-      value -= (input_section->output_section->vma + input_section->output_offset);
-      value -= offset;
-
-      if ((long)value > 0x7fff || (long)value < -0x10000)
-       return bfd_reloc_overflow;
-      
-      if ((value % 2) != 0)
-       return bfd_reloc_dangerous;
-      
-      insn = bfd_get_32 (input_bfd, hit_data);
-      insn &= 0x1ffff;
-      insn |= ((value & 0xfffe) << 16);
-      bfd_put_32 (input_bfd, insn, hit_data);
-      return bfd_reloc_ok;
-      
     case R_V850_22_PCREL:
       value -= (input_section->output_section->vma
                + input_section->output_offset);
index a5b4f80f195916d22c952b5d8d1790c6b2410655..c0691921124f8f6cdbf32614e630a04b4f78f392 100644 (file)
@@ -770,7 +770,6 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@",
   "BFD_RELOC_M32R_SDA16",
 /* start-sanitize-v850 */
   "BFD_RELOC_V850_9_PCREL",
-  "BFD_RELOC_V850_16_PCREL",
   "BFD_RELOC_V850_22_PCREL",
   "BFD_RELOC_V850_SDA_16_16_OFFSET",
   "BFD_RELOC_V850_SDA_15_16_OFFSET",