bfd/
[deliverable/binutils-gdb.git] / bfd / elf32-pj.c
index bd0a5b49ffa88948c590e76980d2fdf2af3f54a7..b7a101829bd8f095017ae46ab2b29f0f0841f34b 100644 (file)
@@ -1,12 +1,13 @@
 /* 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.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
+   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 +293,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 +344,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"
This page took 0.0248 seconds and 4 git commands to generate.