gdb/remote-fileio.c: Eliminate custom SIGINT signal handler
[deliverable/binutils-gdb.git] / bfd / elf32-i960.c
index 30b229b38121c3cc0a37818dc5a58eb4632b86e1..12d62049f2e54dba67573bbc7d8524d67ef03d1b 100644 (file)
@@ -1,12 +1,11 @@
 /* Intel 960 specific support for 32-bit ELF
 /* Intel 960 specific support for 32-bit ELF
-   Copyright 1999, 2000, 2001, 2002, 2003, 2005, 2007
-   Free Software Foundation, Inc.
+   Copyright (C) 1999-2016 Free Software Foundation, Inc.
 
    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
 
    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,
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
@@ -19,8 +18,8 @@
    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 "sysdep.h"
+#include "bfd.h"
 #include "libbfd.h"
 #include "elf-bfd.h"
 #include "elf/i960.h"
 #include "libbfd.h"
 #include "elf-bfd.h"
 #include "elf/i960.h"
@@ -47,7 +46,7 @@ static bfd_reloc_status_type
 elf32_i960_relocate (bfd *abfd ATTRIBUTE_UNUSED,
                     arelent *reloc_entry,
                     asymbol *symbol,
 elf32_i960_relocate (bfd *abfd ATTRIBUTE_UNUSED,
                     arelent *reloc_entry,
                     asymbol *symbol,
-                    PTR data ATTRIBUTE_UNUSED,
+                    void * data ATTRIBUTE_UNUSED,
                     asection *input_section,
                     bfd *output_bfd,
                     char **error_message ATTRIBUTE_UNUSED)
                     asection *input_section,
                     bfd *output_bfd,
                     char **error_message ATTRIBUTE_UNUSED)
@@ -84,7 +83,7 @@ elf32_i960_relocate (bfd *abfd ATTRIBUTE_UNUSED,
 
 static reloc_howto_type elf_howto_table[]=
 {
 
 static reloc_howto_type elf_howto_table[]=
 {
-  HOWTO (R_960_NONE, 0, 0, 0, FALSE, 0, complain_overflow_bitfield,
+  HOWTO (R_960_NONE, 0, 3, 0, FALSE, 0, complain_overflow_dont,
         elf32_i960_relocate, "R_960_NONE", TRUE,
         0x00000000, 0x00000000, FALSE),
   EMPTY_HOWTO (1),
         elf32_i960_relocate, "R_960_NONE", TRUE,
         0x00000000, 0x00000000, FALSE),
   EMPTY_HOWTO (1),
@@ -133,7 +132,13 @@ elf32_i960_info_to_howto_rel (bfd *abfd ATTRIBUTE_UNUSED,
   enum elf_i960_reloc_type type;
 
   type = (enum elf_i960_reloc_type) ELF32_R_TYPE (dst->r_info);
   enum elf_i960_reloc_type type;
 
   type = (enum elf_i960_reloc_type) ELF32_R_TYPE (dst->r_info);
-  BFD_ASSERT (type < R_960_max);
+
+  /* PR 17521: file: 9609b8d6.  */
+  if (type >= R_960_max)
+    {
+      _bfd_error_handler (_("%B: invalid i960 reloc number: %d"), abfd, type);
+      type = 0;
+    }
 
   cache_ptr->howto = &elf_howto_table[(int) type];
 }
 
   cache_ptr->howto = &elf_howto_table[(int) type];
 }
@@ -159,7 +164,7 @@ elf32_i960_reloc_name_lookup (bfd *abfd ATTRIBUTE_UNUSED,
   return NULL;
 }
 
   return NULL;
 }
 
-#define TARGET_LITTLE_SYM      bfd_elf32_i960_vec
+#define TARGET_LITTLE_SYM      i960_elf32_vec
 #define TARGET_LITTLE_NAME     "elf32-i960"
 #define ELF_ARCH               bfd_arch_i960
 #define ELF_MACHINE_CODE       EM_960
 #define TARGET_LITTLE_NAME     "elf32-i960"
 #define ELF_ARCH               bfd_arch_i960
 #define ELF_MACHINE_CODE       EM_960
This page took 0.024362 seconds and 4 git commands to generate.