aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2004-01-14 03:06:02 +0000
committerIan Lance Taylor <ian@airs.com>2004-01-14 03:06:02 +0000
commit32159579f0672fc1e96f169fd5bce0151f6d9381 (patch)
tree5283caf104aaa6b2b4af0d2dbde234ce23d5396d /bfd
parent87783b8b9e34ff41cd588c28bc8bbb77c2c62753 (diff)
downloadgdb-32159579f0672fc1e96f169fd5bce0151f6d9381.zip
gdb-32159579f0672fc1e96f169fd5bce0151f6d9381.tar.gz
gdb-32159579f0672fc1e96f169fd5bce0151f6d9381.tar.bz2
* elf64-mips.c (mips_elf64_slurp_one_reloc_table): Call
mips_elf64_rtype_to_howto instead of using howto_table. * gas/mips/mips16-64.d: New test. * gas/mips/mips.exp: Run it.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf64-mips.c8
2 files changed, 9 insertions, 4 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 1fcd3f5..0ff58e4 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2004-01-13 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * elf64-mips.c (mips_elf64_slurp_one_reloc_table): Call
+ mips_elf64_rtype_to_howto instead of using howto_table.
+
2004-01-13 Daniel Jacobowitz <drow@mvista.com>
* elf32-arm.h (elf32_arm_final_link_relocate): Check that we created
diff --git a/bfd/elf64-mips.c b/bfd/elf64-mips.c
index 71c3425..fa3b494 100644
--- a/bfd/elf64-mips.c
+++ b/bfd/elf64-mips.c
@@ -2015,7 +2015,7 @@ mips_elf64_slurp_one_reloc_table (bfd *abfd, asection *asect,
arelent *relent;
bfd_vma i;
int entsize;
- reloc_howto_type *howto_table;
+ bfd_boolean rela_p;
allocated = bfd_malloc (rel_hdr->sh_size);
if (allocated == NULL)
@@ -2033,9 +2033,9 @@ mips_elf64_slurp_one_reloc_table (bfd *abfd, asection *asect,
|| entsize == sizeof (Elf64_Mips_External_Rela));
if (entsize == sizeof (Elf64_Mips_External_Rel))
- howto_table = mips_elf64_howto_table_rel;
+ rela_p = FALSE;
else
- howto_table = mips_elf64_howto_table_rela;
+ rela_p = TRUE;
for (i = 0, relent = relents;
i < reloc_count;
@@ -2148,7 +2148,7 @@ mips_elf64_slurp_one_reloc_table (bfd *abfd, asection *asect,
relent->addend = rela.r_addend;
- relent->howto = &howto_table[(int) type];
+ relent->howto = mips_elf64_rtype_to_howto (type, rela_p);
++relent;
}