aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Christopher <echristo@gmail.com>2002-01-17 08:19:08 +0000
committerEric Christopher <echristo@gmail.com>2002-01-17 08:19:08 +0000
commit175e996239a7ca4db791e9e70fb7152c3359edb8 (patch)
treeea00f6c2871a6fa65a580eba43793fa8cc54d75e
parent8de3c354c7c3bdde03b521762ff72489eb121e94 (diff)
downloadfsf-binutils-gdb-175e996239a7ca4db791e9e70fb7152c3359edb8.zip
fsf-binutils-gdb-175e996239a7ca4db791e9e70fb7152c3359edb8.tar.gz
fsf-binutils-gdb-175e996239a7ca4db791e9e70fb7152c3359edb8.tar.bz2
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.
-rw-r--r--bfd/ChangeLog13
-rw-r--r--bfd/elf32-mips.c6
2 files changed, 14 insertions, 5 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index f72c429..cd3b3f5 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -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.
@@ -87,13 +93,14 @@
(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
@@ -129,7 +136,7 @@
* 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>
diff --git a/bfd/elf32-mips.c b/bfd/elf32-mips.c
index a4007ef..4bb1fcb 100644
--- a/bfd/elf32-mips.c
+++ b/bfd/elf32-mips.c
@@ -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))