From 8205a328f8b852086652841dfc2aff4ca0b16d45 Mon Sep 17 00:00:00 2001 From: "Maciej W. Rozycki" Date: Wed, 28 Mar 2018 21:37:37 +0100 Subject: [PATCH] MIPS/BFD: Call `mips_elf32_rtype_to_howto' directly with o32 Call `mips_elf32_rtype_to_howto' directly rather than via the `->elf_backend_mips_rtype_to_howto' method in the o32 backend, complementing commit 861fb55ab50a ("Defer allocation of R_MIPS_REL32 GOT slots"), , and reverting the change to `mips_info_to_howto_rel' originally made with commit 0a44bf6950b3 ("mips-vxworks support"), . With `mips_vxworks_rtype_to_howto' gone there is a single backend method used across all o32 targets, so there in no need for the indirection and the associated extra cost. This also makes the o32 backend consistent with the n32 and n64 backends. bfd/ * elf32-mips.c (mips_info_to_howto_rel): Call `mips_elf32_rtype_to_howto' directly rather than via `->elf_backend_mips_rtype_to_howto'. --- bfd/ChangeLog | 6 ++++++ bfd/elf32-mips.c | 4 +--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index b88eb6c01f4..2f820917a54 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2018-02-28 Maciej W. Rozycki + + * elf32-mips.c (mips_info_to_howto_rel): Call + `mips_elf32_rtype_to_howto' directly rather than via + `->elf_backend_mips_rtype_to_howto'. + 2018-03-28 Renlin Li PR ld/22970 diff --git a/bfd/elf32-mips.c b/bfd/elf32-mips.c index d6005ff53f7..37676778e15 100644 --- a/bfd/elf32-mips.c +++ b/bfd/elf32-mips.c @@ -2235,12 +2235,10 @@ mips_elf32_rtype_to_howto (bfd *abfd, static bfd_boolean mips_info_to_howto_rel (bfd *abfd, arelent *cache_ptr, Elf_Internal_Rela *dst) { - const struct elf_backend_data *bed; unsigned int r_type; r_type = ELF32_R_TYPE (dst->r_info); - bed = get_elf_backend_data (abfd); - cache_ptr->howto = bed->elf_backend_mips_rtype_to_howto (abfd, r_type, FALSE); + cache_ptr->howto = mips_elf32_rtype_to_howto (abfd, r_type, FALSE); if (cache_ptr->howto == NULL) { /* xgettext:c-format */ -- 2.30.2