aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf32-pj.c
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2010-10-30 23:02:32 +0000
committerDimitry Andric <dim@FreeBSD.org>2010-10-30 23:02:32 +0000
commitb3cded65e92ba4d9b5e5a33fb95c4d551bda9c1b (patch)
tree69d40fbef2c0c4ee32fe97b7a28b510f2e3c2dbc /bfd/elf32-pj.c
parent7a815afd9b5121ee0f65dc1e1de1c0de6de97679 (diff)
Import the binutils master branch from the sourceware CVS repository,vendor/binutils/binutils-master-20070703-075419vendor/binutils
exactly as it was on Tue, 3 Jul 2007 07:54:19 +0000. Corresponds to git commit 397a64b350470350c8e0adb2af84439ea0f89272, which was the last commit before switching to GPLv3.
Notes
Notes: svn path=/vendor/binutils/dist/; revision=214571 svn path=/vendor/binutils/binutils-master-20070703-075419/; revision=214573; tag=vendor/binutils/binutils-master-20070703-075419
Diffstat (limited to 'bfd/elf32-pj.c')
-rw-r--r--bfd/elf32-pj.c31
1 files changed, 25 insertions, 6 deletions
diff --git a/bfd/elf32-pj.c b/bfd/elf32-pj.c
index bd0a5b49ffa8..6b2f1de70b9d 100644
--- a/bfd/elf32-pj.c
+++ b/bfd/elf32-pj.c
@@ -1,5 +1,6 @@
/* picoJava specific support for 32-bit ELF
- Copyright 1999, 2000, 2001, 2002, 2005 Free Software Foundation, Inc.
+ Copyright 1999, 2000, 2001, 2002, 2005, 2007
+ Free Software Foundation, Inc.
Contributed by Steve Chamberlan of Transmeta (sac@pobox.com).
This file is part of BFD, the Binary File Descriptor library.
@@ -18,8 +19,8 @@
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */
-#include "bfd.h"
#include "sysdep.h"
+#include "bfd.h"
#include "bfdlink.h"
#include "libbfd.h"
#include "elf-bfd.h"
@@ -291,6 +292,22 @@ pj_elf_reloc_type_lookup (bfd *abfd ATTRIBUTE_UNUSED,
return NULL;
}
+static reloc_howto_type *
+pj_elf_reloc_name_lookup (bfd *abfd ATTRIBUTE_UNUSED,
+ const char *r_name)
+{
+ unsigned int i;
+
+ for (i = 0;
+ i < sizeof (pj_elf_howto_table) / sizeof (pj_elf_howto_table[0]);
+ i++)
+ if (pj_elf_howto_table[i].name != NULL
+ && strcasecmp (pj_elf_howto_table[i].name, r_name) == 0)
+ return &pj_elf_howto_table[i];
+
+ return NULL;
+}
+
/* Given an ELF reloc, fill in the howto field of a relent. */
static void
@@ -326,8 +343,10 @@ pj_elf_final_write_processing (bfd *abfd,
#define ELF_MACHINE_CODE EM_PJ
#define ELF_MACHINE_ALT1 EM_PJ_OLD
#define ELF_MAXPAGESIZE 0x1000
-#define bfd_elf32_bfd_get_relocated_section_contents bfd_generic_get_relocated_section_contents
-#define bfd_elf32_bfd_reloc_type_lookup pj_elf_reloc_type_lookup
-#define elf_backend_final_write_processing pj_elf_final_write_processing
-#define elf_info_to_howto pj_elf_info_to_howto
+#define bfd_elf32_bfd_get_relocated_section_contents \
+ bfd_generic_get_relocated_section_contents
+#define bfd_elf32_bfd_reloc_type_lookup pj_elf_reloc_type_lookup
+#define bfd_elf32_bfd_reloc_name_lookup pj_elf_reloc_name_lookup
+#define elf_backend_final_write_processing pj_elf_final_write_processing
+#define elf_info_to_howto pj_elf_info_to_howto
#include "elf32-target.h"