OSDN Git Service

2002-01-16 Eric Christopher <echristo@redhat.com>
authorechristo <echristo>
Thu, 17 Jan 2002 08:19:08 +0000 (08:19 +0000)
committerechristo <echristo>
Thu, 17 Jan 2002 08:19:08 +0000 (08:19 +0000)
* elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp
on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of
relocations requiring gp0 and gp.

bfd/ChangeLog
bfd/elf32-mips.c

index f72c429..cd3b3f5 100644 (file)
@@ -1,6 +1,12 @@
+2002-01-16  Eric Christopher  <echristo@redhat.com>
+
+       * elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp
+       on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of
+       relocations requiring gp0 and gp.
+
 2002-01-16  Richard Earnshaw  <rearnsha@arm.com>
 
-       * elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle 
+       * elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle
        EF_ARM_VFP_FLOAT.
        (elf32_arm_print_private_bfd_data): Likewise.
 
        (xstormy16_reloc_type_lookup): Use 'table' field to locate correct
        howto entry.
 
+>>>>>>> 1.1263
 2002-01-10  Michael Snyder  <msnyder@redhat.com>
 
        * elf.c (elfcore_write_prstatus): Use long instead of pid_t;
        (elfcore_write_pstatus): Use long instead of pid_t;
        * elf-bfd.h: Change prototypes to use long instead of pid_t;
 
-2002-01-09  Jason Thorpe  <thorpej@wasabisystems.com> 
+2002-01-09  Jason Thorpe  <thorpej@wasabisystems.com>
 
        * elf.c: Update copyright years.
        (elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO
        * configure: Regenerate.
        * elf32-sh-nbsd.c: New file.
        * targets.c: Update copyright years.
-       (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and 
+       (_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
        bfd_elf32_shnbsd_vec.
 
 2002-01-07  Aldy Hernandez  <aldyh@redhat.com>
index a4007ef..4bb1fcb 100644 (file)
@@ -6735,7 +6735,8 @@ mips_elf_calculate_relocation (abfd,
   /* Calls from 16-bit code to 32-bit code and vice versa require the
      special jalx instruction.  */
   *require_jalxp = (!info->relocateable
-                   && ((r_type == R_MIPS16_26) != target_is_16_bit_code_p));
+                   && (((r_type == R_MIPS16_26) != target_is_16_bit_code_p
+                        || ((r_type == R_MIPS_26) == target_is_16_bit_code_p))));
 
   local_p = mips_elf_local_relocation_p (input_bfd, relocation,
                                         local_sections, true);
@@ -6790,6 +6791,7 @@ mips_elf_calculate_relocation (abfd,
 
     case R_MIPS_HI16:
     case R_MIPS_LO16:
+    case R_MIPS16_GPREL:
     case R_MIPS_GPREL16:
     case R_MIPS_GPREL32:
     case R_MIPS_LITERAL:
@@ -9758,7 +9760,7 @@ _bfd_elf32_mips_discard_info (abfd, cookie, info)
   cookie->rel = cookie->rels;
   cookie->relend =
     cookie->rels + o->reloc_count * bed->s->int_rels_per_ext_rel;
-      
+
   for (i = 0, skip = 0; i < o->_raw_size; i ++)
     {
       if (_bfd_elf32_reloc_symbol_deleted_p (i * PDR_SIZE, cookie))