summaryrefslogtreecommitdiff
path: root/bfd/elf64-mips.c
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
commit4362a0af2492bd3c9afe43ac201025e46d2d60cc (patch)
treea1eb0454a784184e171515fb90eab320152fe4c2 /bfd/elf64-mips.c
parentcfb1383872c80d65d4256103a23a3faca4d85bd8 (diff)
downloadbinutils-redhat-4362a0af2492bd3c9afe43ac201025e46d2d60cc.tar.gz
* 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/elf64-mips.c')
-rw-r--r--bfd/elf64-mips.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/bfd/elf64-mips.c b/bfd/elf64-mips.c
index 71c3425eaa..fa3b494b99 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;
}