This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH] xc16x: Add elf32_xc16x_rtype_to_howto
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: binutils at sourceware dot org
- Date: Tue, 11 Dec 2018 06:03:09 -0800
- Subject: [PATCH] xc16x: Add elf32_xc16x_rtype_to_howto
Add elf32_xc16x_rtype_to_howto to get reloc_howto_type pointer from
ELF32_R_TYPE.
* elf32-xc16x.c (elf32_xc16x_rtype_to_howto): New function.
(elf32_xc16x_relocate_section): Call elf32_xc16x_rtype_to_howto
instead of xc16x_reloc_type_lookup to get reloc_howto_type.
---
bfd/ChangeLog | 6 ++++++
bfd/elf32-xc16x.c | 11 ++++++++++-
2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index aa8be343f5..b88fe7eb95 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2018-12-11 H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf32-xc16x.c (elf32_xc16x_rtype_to_howto): New function.
+ (elf32_xc16x_relocate_section): Call elf32_xc16x_rtype_to_howto
+ instead of xc16x_reloc_type_lookup to get reloc_howto_type.
+
2018-12-07 H.J. Lu <hongjiu.lu@intel.com>
PR ld/23958
diff --git a/bfd/elf32-xc16x.c b/bfd/elf32-xc16x.c
index 66fe33dcb5..b94cadf0d3 100644
--- a/bfd/elf32-xc16x.c
+++ b/bfd/elf32-xc16x.c
@@ -220,6 +220,15 @@ xc16x_reloc_name_lookup (bfd *abfd ATTRIBUTE_UNUSED,
return NULL;
}
+static reloc_howto_type *
+elf32_xc16x_rtype_to_howto (bfd *abfd ATTRIBUTE_UNUSED, unsigned r_type)
+{
+ if (r_type < ARRAY_SIZE (xc16x_elf_howto_table))
+ return & xc16x_elf_howto_table[r_type];
+
+ return NULL;
+}
+
/* For a particular operand this function is
called to finalise the type of relocation. */
@@ -388,7 +397,7 @@ elf32_xc16x_relocate_section (bfd *output_bfd,
or sections discarded by a linker script, we just want the
section contents cleared. Avoid any special processing. */
reloc_howto_type *howto;
- howto = xc16x_reloc_type_lookup (input_bfd, r_type);
+ howto = elf32_xc16x_rtype_to_howto (input_bfd, r_type);
RELOC_AGAINST_DISCARDED_SECTION (info, input_bfd, input_section,
rel, 1, relend, howto, 0, contents);
}
--
2.19.2