[committed] MIPS/BFD: Call `mips_elf32_rtype_to_howto' directly with o32

Maciej W. Rozycki macro@mips.com
Wed Mar 28 20:43:00 GMT 2018

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"), <https://sourceware.org/ml/binutils/2008-08/msg00096.html>, 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.

	* elf32-mips.c (mips_info_to_howto_rel): Call 
	`mips_elf32_rtype_to_howto' directly rather than via

 No functional change.  Regression-tested and committed.

 bfd/elf32-mips.c |    4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Index: binutils/bfd/elf32-mips.c
--- binutils.orig/bfd/elf32-mips.c	2018-03-28 00:43:28.000000000 +0100
+++ binutils/bfd/elf32-mips.c	2018-03-28 00:46:37.535127346 +0100
@@ -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 */

More information about the Binutils mailing list