]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Remove elf_backend_write_core_note users/palves/core-prstatus-rework
authorAlan Modra <amodra@gmail.com>
Fri, 22 Jan 2016 00:33:47 +0000 (11:03 +1030)
committerAlan Modra <amodra@gmail.com>
Fri, 22 Jan 2016 00:36:13 +0000 (11:06 +1030)
This function was added in 2007 to support powerpc gdb "gcore" writing
32-bit powerpc linux core files on a 64-bit powerpc host, when
PowerPC64 glibc lacked (and still lacks) 32-bit versions of prstatus_t
and prpsinfo_t.  Now that gdb has elfcore_write_linux_prstatus32/64
and elfcore_write_linux_prpsinfo32/64, this linux specific backend
function should disappear.

* elf-bfd.h (struct elf_backend_data): Remove
elf_backend_write_core_note.
* elf.c (elfcore_write_prpsinfo, elfcore_write_prstatus): Don't call
elf_backend_write_core_note.
* elf32-arm.c (elf32_arm_nabi_write_core_note): Delete function.
(elf_backend_write_core_note): Don't define.
* elf32-ppc.c (ppc_elf_write_core_note): Delete function.
(elf_backend_write_core_note): Don't define.
* elf64-ppc.c (ppc64_elf_write_core_note): Delete function.
(elf_backend_write_core_note): Don't define.
* elf64-x86-64.c (elf_x86_64_write_core_note): Delete function.
(elf_backend_write_core_note): Don't define.
(CORE_HEADER): Don't include.
* elfxx-aarch64.c (_bfd_aarch64_elf_write_core_note): Delete function.
* elfxx-aarch64.h (_bfd_aarch64_elf_write_core_note): Delete prototype.
(elf_backend_write_core_note): Don't define.
* elfxx-target.h (elf_backend_write_core_note): Don't define.
(elfNN_bed): Adjust.
* hosts/x86-64linux.h: Delete file.
* configure.ac (CORE_HEADER): Delete.
* configure: Regenerate.
* config.in: Regenerate.

13 files changed:
bfd/config.in
bfd/configure
bfd/configure.ac
bfd/elf-bfd.h
bfd/elf.c
bfd/elf32-arm.c
bfd/elf32-ppc.c
bfd/elf64-ppc.c
bfd/elf64-x86-64.c
bfd/elfxx-aarch64.c
bfd/elfxx-aarch64.h
bfd/elfxx-target.h
bfd/hosts/x86-64linux.h [deleted file]

index 58248bd9b7c359a47d09903981a3d0eb255829cf..fcf09a7f7a278c2d05b0112fe613bf95b9880757 100644 (file)
@@ -7,9 +7,6 @@
 #endif
 #define __CONFIG_H__ 1
 
-/* Name of host specific core header file to include in elf.c. */
-#undef CORE_HEADER
-
 /* Define to 1 if translation of program messages to the user's native
    language is requested. */
 #undef ENABLE_NLS
index c37664445142b2fe7ae1c0d6f34b11655aa24941..0dde00a8d2f144433abe780440e3820420bbdc47 100755 (executable)
@@ -14644,7 +14644,6 @@ test -n "${selarchs}" && tdefaults="${tdefaults} -DSELECT_ARCHITECTURES='${selar
 # If we are configured native, pick a core file support file.
 COREFILE=
 COREFLAG=
-CORE_HEADER=
 TRAD_HEADER=
 if test "${target}" = "${host}"; then
   case "${host}" in
@@ -14722,10 +14721,6 @@ if test "${target}" = "${host}"; then
   i[3-7]86-*-linux-*)
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/i386linux.h"'
-       case "$enable_targets"-"$want64" in
-       *x86_64-*linux*|*-true)
-         CORE_HEADER='"hosts/x86-64linux.h"'
-       esac
        ;;
   i[3-7]86-*-isc*)     COREFILE=trad-core.lo ;;
   i[3-7]86-*-aix*)     COREFILE=aix386-core.lo ;;
@@ -14876,9 +14871,6 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/vaxbsd.h"'
        ;;
-  x86_64-*-linux*)
-       CORE_HEADER='"hosts/x86-64linux.h"'
-       ;;
   x86_64-*-netbsd* | x86_64-*-openbsd*)
        COREFILE=netbsd-core.lo
        ;;
@@ -15694,13 +15686,6 @@ $as_echo "$bfd_cv_have_sys_procfs_type_win32_pstatus_t" >&6; }
 fi
 
 
-if test -n "$CORE_HEADER"; then
-
-cat >>confdefs.h <<_ACEOF
-#define CORE_HEADER $CORE_HEADER
-_ACEOF
-
-fi
 if test -n "$TRAD_HEADER"; then
 
 cat >>confdefs.h <<_ACEOF
index b69891c56ab81121eff1bd14d831d927b6ebd867..824599af572b3df7f736d859b71b4749f332ee33 100644 (file)
@@ -841,7 +841,6 @@ AC_SUBST(havevecs)
 # If we are configured native, pick a core file support file.
 COREFILE=
 COREFLAG=
-CORE_HEADER=
 TRAD_HEADER=
 if test "${target}" = "${host}"; then
   case "${host}" in
@@ -941,10 +940,6 @@ changequote(,)dnl
 changequote([,])dnl
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/i386linux.h"'
-       case "$enable_targets"-"$want64" in
-       *x86_64-*linux*|*-true)
-         CORE_HEADER='"hosts/x86-64linux.h"'
-       esac
        ;;
 changequote(,)dnl
   i[3-7]86-*-isc*)     COREFILE=trad-core.lo ;;
@@ -1081,9 +1076,6 @@ changequote([,])dnl
        COREFILE=trad-core.lo
        TRAD_HEADER='"hosts/vaxbsd.h"'
        ;;
-  x86_64-*-linux*)
-       CORE_HEADER='"hosts/x86-64linux.h"'
-       ;;
   x86_64-*-netbsd* | x86_64-*-openbsd*)
        COREFILE=netbsd-core.lo
        ;;
@@ -1132,10 +1124,6 @@ changequote([,])dnl
 fi
 AC_SUBST(COREFILE)
 AC_SUBST(COREFLAG)
-if test -n "$CORE_HEADER"; then
-  AC_DEFINE_UNQUOTED(CORE_HEADER, $CORE_HEADER,
-    [Name of host specific core header file to include in elf.c.])
-fi
 if test -n "$TRAD_HEADER"; then
   AC_DEFINE_UNQUOTED(TRAD_HEADER, $TRAD_HEADER,
     [Name of host specific header file to include in trad-core.c.])
index b0f5026a5f39e39b6051263d30ece8441646acd7..c14ec466c59af13e6fc230e67902e7286260e6e6 100644 (file)
@@ -1190,10 +1190,6 @@ struct elf_backend_data
   bfd_boolean (*elf_backend_grok_psinfo)
     (bfd *, Elf_Internal_Note *);
 
-  /* This function, if defined, is called to write a note to a corefile.  */
-  char *(*elf_backend_write_core_note)
-    (bfd *abfd, char *buf, int *bufsiz, int note_type, ...);
-
   /* This function, if defined, is called to convert target-specific
      section flag names into hex values.  */
   flagword (*elf_backend_lookup_section_flags_hook)
index 16d315df2ca2518da326fc2a67d17b7e3dd37122..3ef36af7551bf4a3a7e60cafbe672c6edec9622d 100644 (file)
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -9726,25 +9726,16 @@ elfcore_write_note (bfd *abfd,
 }
 
 char *
-elfcore_write_prpsinfo (bfd  *abfd,
+elfcore_write_prpsinfo (bfd *abfd ATTRIBUTE_UNUSED,
                        char *buf,
-                       int  *bufsiz,
-                       const char *fname,
-                       const char *psargs)
+                       int *bufsiz ATTRIBUTE_UNUSED,
+                       const char *fname ATTRIBUTE_UNUSED,
+                       const char *psargs ATTRIBUTE_UNUSED)
 {
-  const struct elf_backend_data *bed = get_elf_backend_data (abfd);
-
-  if (bed->elf_backend_write_core_note != NULL)
-    {
-      char *ret;
-      ret = (*bed->elf_backend_write_core_note) (abfd, buf, bufsiz,
-                                                NT_PRPSINFO, fname, psargs);
-      if (ret != NULL)
-       return ret;
-    }
-
 #if defined (HAVE_PRPSINFO_T) || defined (HAVE_PSINFO_T)
 #if defined (HAVE_PRPSINFO32_T) || defined (HAVE_PSINFO32_T)
+  const struct elf_backend_data *bed = get_elf_backend_data (abfd);
+
   if (bed->s->elfclass == ELFCLASS32)
     {
 #if defined (HAVE_PSINFO32_T)
@@ -9843,27 +9834,17 @@ elfcore_write_linux_prstatus64
 }
 
 char *
-elfcore_write_prstatus (bfd *abfd,
+elfcore_write_prstatus (bfd *abfd ATTRIBUTE_UNUSED,
                        char *buf,
-                       int *bufsiz,
-                       long pid,
-                       int cursig,
-                       const void *gregs)
+                       int *bufsiz ATTRIBUTE_UNUSED,
+                       long pid ATTRIBUTE_UNUSED,
+                       int cursig ATTRIBUTE_UNUSED,
+                       const void *gregs ATTRIBUTE_UNUSED)
 {
-  const struct elf_backend_data *bed = get_elf_backend_data (abfd);
-
-  if (bed->elf_backend_write_core_note != NULL)
-    {
-      char *ret;
-      ret = (*bed->elf_backend_write_core_note) (abfd, buf, bufsiz,
-                                                NT_PRSTATUS,
-                                                pid, cursig, gregs);
-      if (ret != NULL)
-       return ret;
-    }
-
 #if defined (HAVE_PRSTATUS_T)
 #if defined (HAVE_PRSTATUS32_T)
+  const struct elf_backend_data *bed = get_elf_backend_data (abfd);
+
   if (bed->s->elfclass == ELFCLASS32)
     {
       prstatus32_t prstat;
index 81ebf67a3af03d82e4c34a9ad5112f2dbe55fe55..b63701f33e6f019bb5ede0445fbb329106433f70 100644 (file)
@@ -2050,54 +2050,6 @@ elf32_arm_nabi_grok_psinfo (bfd *abfd, Elf_Internal_Note *note)
   return TRUE;
 }
 
-static char *
-elf32_arm_nabi_write_core_note (bfd *abfd, char *buf, int *bufsiz,
-                               int note_type, ...)
-{
-  switch (note_type)
-    {
-    default:
-      return NULL;
-
-    case NT_PRPSINFO:
-      {
-       char data[124];
-       va_list ap;
-
-       va_start (ap, note_type);
-       memset (data, 0, sizeof (data));
-       strncpy (data + 28, va_arg (ap, const char *), 16);
-       strncpy (data + 44, va_arg (ap, const char *), 80);
-       va_end (ap);
-
-       return elfcore_write_note (abfd, buf, bufsiz,
-                                  "CORE", note_type, data, sizeof (data));
-      }
-
-    case NT_PRSTATUS:
-      {
-       char data[148];
-       va_list ap;
-       long pid;
-       int cursig;
-       const void *greg;
-
-       va_start (ap, note_type);
-       memset (data, 0, sizeof (data));
-       pid = va_arg (ap, long);
-       bfd_put_32 (abfd, pid, data + 24);
-       cursig = va_arg (ap, int);
-       bfd_put_16 (abfd, cursig, data + 12);
-       greg = va_arg (ap, const void *);
-       memcpy (data + 72, greg, 72);
-       va_end (ap);
-
-       return elfcore_write_note (abfd, buf, bufsiz,
-                                  "CORE", note_type, data, sizeof (data));
-      }
-    }
-}
-
 #define TARGET_LITTLE_SYM               arm_elf32_le_vec
 #define TARGET_LITTLE_NAME              "elf32-littlearm"
 #define TARGET_BIG_SYM                  arm_elf32_be_vec
@@ -2105,7 +2057,6 @@ elf32_arm_nabi_write_core_note (bfd *abfd, char *buf, int *bufsiz,
 
 #define elf_backend_grok_prstatus      elf32_arm_nabi_grok_prstatus
 #define elf_backend_grok_psinfo                elf32_arm_nabi_grok_psinfo
-#define elf_backend_write_core_note    elf32_arm_nabi_write_core_note
 
 typedef unsigned long int insn32;
 typedef unsigned short int insn16;
index 369a5e6f401743dfa7312e1be399ca571564bb44..9cd96fa6b8e8e9f72a2a78dbc28e27e6b3d2d0d2 100644 (file)
@@ -2307,52 +2307,6 @@ elfcore_write_ppc_linux_prpsinfo32
                             "CORE", NT_PRPSINFO, &data, sizeof (data));
 }
 
-static char *
-ppc_elf_write_core_note (bfd *abfd, char *buf, int *bufsiz, int note_type, ...)
-{
-  switch (note_type)
-    {
-    default:
-      return NULL;
-
-    case NT_PRPSINFO:
-      {
-       char data[128];
-       va_list ap;
-
-       va_start (ap, note_type);
-       memset (data, 0, sizeof (data));
-       strncpy (data + 32, va_arg (ap, const char *), 16);
-       strncpy (data + 48, va_arg (ap, const char *), 80);
-       va_end (ap);
-       return elfcore_write_note (abfd, buf, bufsiz,
-                                  "CORE", note_type, data, sizeof (data));
-      }
-
-    case NT_PRSTATUS:
-      {
-       char data[268];
-       va_list ap;
-       long pid;
-       int cursig;
-       const void *greg;
-
-       va_start (ap, note_type);
-       memset (data, 0, 72);
-       pid = va_arg (ap, long);
-       bfd_put_32 (abfd, pid, data + 24);
-       cursig = va_arg (ap, int);
-       bfd_put_16 (abfd, cursig, data + 12);
-       greg = va_arg (ap, const void *);
-       memcpy (data + 72, greg, 192);
-       memset (data + 264, 0, 4);
-       va_end (ap);
-       return elfcore_write_note (abfd, buf, bufsiz,
-                                  "CORE", note_type, data, sizeof (data));
-      }
-    }
-}
-
 static flagword
 ppc_elf_lookup_section_flags (char *flag_name)
 {
@@ -10746,7 +10700,6 @@ ppc_elf_finish_dynamic_sections (bfd *output_bfd,
 #define elf_backend_modify_segment_map         ppc_elf_modify_segment_map
 #define elf_backend_grok_prstatus              ppc_elf_grok_prstatus
 #define elf_backend_grok_psinfo                        ppc_elf_grok_psinfo
-#define elf_backend_write_core_note            ppc_elf_write_core_note
 #define elf_backend_reloc_type_class           ppc_elf_reloc_type_class
 #define elf_backend_begin_write_processing     ppc_elf_begin_write_processing
 #define elf_backend_final_write_processing     ppc_elf_final_write_processing
index f9c37b5b3decfa2b1c4d201b9f0b0fcdc23f430c..63e14951e93e691de3eef68864a0613aa33d1057 100644 (file)
@@ -90,7 +90,6 @@ static bfd_vma opd_entry_value
 #define elf_backend_object_p                 ppc64_elf_object_p
 #define elf_backend_grok_prstatus            ppc64_elf_grok_prstatus
 #define elf_backend_grok_psinfo                      ppc64_elf_grok_psinfo
-#define elf_backend_write_core_note          ppc64_elf_write_core_note
 #define elf_backend_create_dynamic_sections   ppc64_elf_create_dynamic_sections
 #define elf_backend_copy_indirect_symbol      ppc64_elf_copy_indirect_symbol
 #define elf_backend_add_symbol_hook          ppc64_elf_add_symbol_hook
@@ -2947,53 +2946,6 @@ ppc64_elf_grok_psinfo (bfd *abfd, Elf_Internal_Note *note)
   return TRUE;
 }
 
-static char *
-ppc64_elf_write_core_note (bfd *abfd, char *buf, int *bufsiz, int note_type,
-                          ...)
-{
-  switch (note_type)
-    {
-    default:
-      return NULL;
-
-    case NT_PRPSINFO:
-      {
-       char data[136];
-       va_list ap;
-
-       va_start (ap, note_type);
-       memset (data, 0, sizeof (data));
-       strncpy (data + 40, va_arg (ap, const char *), 16);
-       strncpy (data + 56, va_arg (ap, const char *), 80);
-       va_end (ap);
-       return elfcore_write_note (abfd, buf, bufsiz,
-                                  "CORE", note_type, data, sizeof (data));
-      }
-
-    case NT_PRSTATUS:
-      {
-       char data[504];
-       va_list ap;
-       long pid;
-       int cursig;
-       const void *greg;
-
-       va_start (ap, note_type);
-       memset (data, 0, 112);
-       pid = va_arg (ap, long);
-       bfd_put_32 (abfd, pid, data + 32);
-       cursig = va_arg (ap, int);
-       bfd_put_16 (abfd, cursig, data + 12);
-       greg = va_arg (ap, const void *);
-       memcpy (data + 112, greg, 384);
-       memset (data + 496, 0, 8);
-       va_end (ap);
-       return elfcore_write_note (abfd, buf, bufsiz,
-                                  "CORE", note_type, data, sizeof (data));
-      }
-    }
-}
-
 /* Add extra PPC sections.  */
 
 static const struct bfd_elf_special_section ppc64_elf_special_sections[]=
index bbdb03a58cfaba82a57b196d253555a07abac508..824354ae1ef5a8bee6a8dfff4ad9c051f6a57da9 100644 (file)
 #include "opcode/i386.h"
 #include "elf/x86-64.h"
 
-#ifdef CORE_HEADER
-#include <stdarg.h>
-#include CORE_HEADER
-#endif
-
 /* In case we're on a 32-bit machine, construct a 64-bit "-1" value.  */
 #define MINUS_ONE (~ (bfd_vma) 0)
 
@@ -436,94 +431,6 @@ elf_x86_64_grok_psinfo (bfd *abfd, Elf_Internal_Note *note)
 
   return TRUE;
 }
-
-#ifdef CORE_HEADER
-static char *
-elf_x86_64_write_core_note (bfd *abfd, char *buf, int *bufsiz,
-                           int note_type, ...)
-{
-  const struct elf_backend_data *bed = get_elf_backend_data (abfd);
-  va_list ap;
-  const char *fname, *psargs;
-  long pid;
-  int cursig;
-  const void *gregs;
-
-  switch (note_type)
-    {
-    default:
-      return NULL;
-
-    case NT_PRPSINFO:
-      va_start (ap, note_type);
-      fname = va_arg (ap, const char *);
-      psargs = va_arg (ap, const char *);
-      va_end (ap);
-
-      if (bed->s->elfclass == ELFCLASS32)
-       {
-         prpsinfo32_t data;
-         memset (&data, 0, sizeof (data));
-         strncpy (data.pr_fname, fname, sizeof (data.pr_fname));
-         strncpy (data.pr_psargs, psargs, sizeof (data.pr_psargs));
-         return elfcore_write_note (abfd, buf, bufsiz, "CORE", note_type,
-                                    &data, sizeof (data));
-       }
-      else
-       {
-         prpsinfo64_t data;
-         memset (&data, 0, sizeof (data));
-         strncpy (data.pr_fname, fname, sizeof (data.pr_fname));
-         strncpy (data.pr_psargs, psargs, sizeof (data.pr_psargs));
-         return elfcore_write_note (abfd, buf, bufsiz, "CORE", note_type,
-                                    &data, sizeof (data));
-       }
-      /* NOTREACHED */
-
-    case NT_PRSTATUS:
-      va_start (ap, note_type);
-      pid = va_arg (ap, long);
-      cursig = va_arg (ap, int);
-      gregs = va_arg (ap, const void *);
-      va_end (ap);
-
-      if (bed->s->elfclass == ELFCLASS32)
-       {
-         if (bed->elf_machine_code == EM_X86_64)
-           {
-             prstatusx32_t prstat;
-             memset (&prstat, 0, sizeof (prstat));
-             prstat.pr_pid = pid;
-             prstat.pr_cursig = cursig;
-             memcpy (&prstat.pr_reg, gregs, sizeof (prstat.pr_reg));
-             return elfcore_write_note (abfd, buf, bufsiz, "CORE", note_type,
-                                        &prstat, sizeof (prstat));
-           }
-         else
-           {
-             prstatus32_t prstat;
-             memset (&prstat, 0, sizeof (prstat));
-             prstat.pr_pid = pid;
-             prstat.pr_cursig = cursig;
-             memcpy (&prstat.pr_reg, gregs, sizeof (prstat.pr_reg));
-             return elfcore_write_note (abfd, buf, bufsiz, "CORE", note_type,
-                                        &prstat, sizeof (prstat));
-           }
-       }
-      else
-       {
-         prstatus64_t prstat;
-         memset (&prstat, 0, sizeof (prstat));
-         prstat.pr_pid = pid;
-         prstat.pr_cursig = cursig;
-         memcpy (&prstat.pr_reg, gregs, sizeof (prstat.pr_reg));
-         return elfcore_write_note (abfd, buf, bufsiz, "CORE", note_type,
-                                    &prstat, sizeof (prstat));
-       }
-    }
-  /* NOTREACHED */
-}
-#endif
 \f
 /* Functions for the x86-64 ELF linker.         */
 
@@ -6359,9 +6266,6 @@ static const struct bfd_elf_special_section
 #define elf_backend_gc_sweep_hook          elf_x86_64_gc_sweep_hook
 #define elf_backend_grok_prstatus          elf_x86_64_grok_prstatus
 #define elf_backend_grok_psinfo                    elf_x86_64_grok_psinfo
-#ifdef CORE_HEADER
-#define elf_backend_write_core_note        elf_x86_64_write_core_note
-#endif
 #define elf_backend_reloc_type_class       elf_x86_64_reloc_type_class
 #define elf_backend_relocate_section       elf_x86_64_relocate_section
 #define elf_backend_size_dynamic_sections   elf_x86_64_size_dynamic_sections
index 498171cba894fad222c80d9f48a08681b5f1b81c..a0dcf9fa71b1d465a0d24d78000503ba8b3b89ec 100644 (file)
@@ -611,51 +611,3 @@ _bfd_aarch64_elf_grok_psinfo (bfd *abfd, Elf_Internal_Note *note)
 
   return TRUE;
 }
-
-char *
-_bfd_aarch64_elf_write_core_note (bfd *abfd, char *buf, int *bufsiz, int note_type,
-                                 ...)
-{
-  switch (note_type)
-    {
-    default:
-      return NULL;
-
-    case NT_PRPSINFO:
-      {
-        char data[136];
-        va_list ap;
-
-        va_start (ap, note_type);
-        memset (data, 0, sizeof (data));
-        strncpy (data + 40, va_arg (ap, const char *), 16);
-        strncpy (data + 56, va_arg (ap, const char *), 80);
-        va_end (ap);
-
-        return elfcore_write_note (abfd, buf, bufsiz, "CORE",
-                                  note_type, data, sizeof (data));
-      }
-
-    case NT_PRSTATUS:
-      {
-        char data[392];
-        va_list ap;
-        long pid;
-        int cursig;
-        const void *greg;
-
-        va_start (ap, note_type);
-        memset (data, 0, sizeof (data));
-        pid = va_arg (ap, long);
-        bfd_put_32 (abfd, pid, data + 32);
-        cursig = va_arg (ap, int);
-        bfd_put_16 (abfd, cursig, data + 12);
-        greg = va_arg (ap, const void *);
-        memcpy (data + 112, greg, 272);
-        va_end (ap);
-
-        return elfcore_write_note (abfd, buf, bufsiz, "CORE",
-                                  note_type, data, sizeof (data));
-      }
-    }
-}
index 2a3dd81ae51c1528ca656016f7beba38a557c649..5f625438c7c2597babbb17bf73cfa3233c169f7e 100644 (file)
@@ -58,10 +58,6 @@ _bfd_aarch64_elf_grok_prstatus (bfd *, Elf_Internal_Note *);
 extern bfd_boolean
 _bfd_aarch64_elf_grok_psinfo (bfd *, Elf_Internal_Note *);
 
-extern char *
-_bfd_aarch64_elf_write_core_note (bfd *, char *, int *, int, ...);
-
 #define elf_backend_add_symbol_hook    _bfd_aarch64_elf_add_symbol_hook
 #define elf_backend_grok_prstatus      _bfd_aarch64_elf_grok_prstatus
 #define elf_backend_grok_psinfo         _bfd_aarch64_elf_grok_psinfo
-#define elf_backend_write_core_note     _bfd_aarch64_elf_write_core_note
index b3227ed3c521ad4e7dacbd0f0d433f4b45e4ba5f..78277001fb6bd1bd958366383e8bdaa64a97c5fa 100644 (file)
 #ifndef elf_backend_grok_psinfo
 #define elf_backend_grok_psinfo                        NULL
 #endif
-#ifndef elf_backend_write_core_note
-#define elf_backend_write_core_note            NULL
-#endif
 #ifndef elf_backend_lookup_section_flags_hook
 #define elf_backend_lookup_section_flags_hook  NULL
 #endif
@@ -762,7 +759,6 @@ static struct elf_backend_data elfNN_bed =
   elf_backend_sort_relocs_p,
   elf_backend_grok_prstatus,
   elf_backend_grok_psinfo,
-  elf_backend_write_core_note,
   elf_backend_lookup_section_flags_hook,
   elf_backend_reloc_type_class,
   elf_backend_discard_info,
diff --git a/bfd/hosts/x86-64linux.h b/bfd/hosts/x86-64linux.h
deleted file mode 100644 (file)
index 4e420a1..0000000
+++ /dev/null
@@ -1,232 +0,0 @@
-/* Copyright (C) 2006-2016 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, write to the Free
-   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307 USA.  */
-
-/* This is somewhat modelled after the file of the same name on SVR4
-   systems.  It provides a definition of the core file format for ELF
-   used on Linux.  It doesn't have anything to do with the /proc file
-   system, even though Linux has one.
-
-   Anyway, the whole purpose of this file is for GDB and GDB only.
-   Don't read too much into it.  Don't use it for anything other than
-   GDB unless you know what you are doing.  */
-
-#include <features.h>
-#include <sys/time.h>
-#include <sys/types.h>
-
-/* We define here only the symbols differing from their 64-bit variant.  */
-#include <sys/procfs.h>
-
-#ifdef HAVE_STDINT_H
-#include <stdint.h>
-#else
-typedef unsigned int uint32_t;
-typedef unsigned long long int uint64_t;
-#endif
-
-/* Unsigned 64-bit integer aligned to 8 bytes.  */
-typedef uint64_t __attribute__ ((__aligned__ (8))) a8_uint64_t;
-
-#undef HAVE_PRPSINFO32_T
-#define HAVE_PRPSINFO32_T
-#undef HAVE_PRPSINFO32_T_PR_PID
-#define HAVE_PRPSINFO32_T_PR_PID
-
-#undef HAVE_PRSTATUS32_T
-#define HAVE_PRSTATUS32_T
-
-/* These are the 32-bit x86 structures.  */
-
-struct user_regs32_struct
-{
-  int32_t ebx;
-  int32_t ecx;
-  int32_t edx;
-  int32_t esi;
-  int32_t edi;
-  int32_t ebp;
-  int32_t eax;
-  int32_t xds;
-  int32_t xes;
-  int32_t xfs;
-  int32_t xgs;
-  int32_t orig_eax;
-  int32_t eip;
-  int32_t xcs;
-  int32_t eflags;
-  int32_t esp;
-  int32_t xss;
-};
-
-struct user_regs64_struct
-{
-  a8_uint64_t r15;
-  a8_uint64_t r14;
-  a8_uint64_t r13;
-  a8_uint64_t r12;
-  a8_uint64_t rbp;
-  a8_uint64_t rbx;
-  a8_uint64_t r11;
-  a8_uint64_t r10;
-  a8_uint64_t r9;
-  a8_uint64_t r8;
-  a8_uint64_t rax;
-  a8_uint64_t rcx;
-  a8_uint64_t rdx;
-  a8_uint64_t rsi;
-  a8_uint64_t rdi;
-  a8_uint64_t orig_rax;
-  a8_uint64_t rip;
-  a8_uint64_t cs;
-  a8_uint64_t eflags;
-  a8_uint64_t rsp;
-  a8_uint64_t ss;
-  a8_uint64_t fs_base;
-  a8_uint64_t gs_base;
-  a8_uint64_t ds;
-  a8_uint64_t es;
-  a8_uint64_t fs;
-  a8_uint64_t gs;
-};
-
-/* Type for a general-purpose register.  */
-typedef uint32_t elf_greg32_t;
-typedef a8_uint64_t elf_greg64_t;
-
-/* And the whole bunch of them.  We could have used `struct
-   user_regs_struct' directly in the typedef, but tradition says that
-   the register set is an array, which does have some peculiar
-   semantics, so leave it that way.  */
-#define ELF_NGREG32 (sizeof (struct user_regs32_struct) / sizeof(elf_greg32_t))
-typedef elf_greg32_t elf_gregset32_t[ELF_NGREG32];
-#define ELF_NGREG64 (sizeof (struct user_regs64_struct) / sizeof(elf_greg64_t))
-typedef elf_greg64_t elf_gregset64_t[ELF_NGREG64];
-
-/* Definitions to generate Intel SVR4-like core files.  These mostly
-   have the same names as the SVR4 types with "elf_" tacked on the
-   front to prevent clashes with Linux definitions, and the typedef
-   forms have been avoided.  This is mostly like the SVR4 structure,
-   but more Linuxy, with things that Linux does not support and which
-   GDB doesn't really use excluded.  */
-
-struct prstatus32_timeval
-  {
-    int tv_sec;
-    int tv_usec;
-  };
-
-struct prstatus64_timeval
-  {
-    a8_uint64_t tv_sec;
-    a8_uint64_t tv_usec;
-  };
-
-struct elf_prstatus32
-  {
-    struct elf_siginfo pr_info;                /* Info associated with signal.  */
-    short int pr_cursig;               /* Current signal.  */
-    unsigned int pr_sigpend;           /* Set of pending signals.  */
-    unsigned int pr_sighold;           /* Set of held signals.  */
-    pid_t pr_pid;
-    pid_t pr_ppid;
-    pid_t pr_pgrp;
-    pid_t pr_sid;
-    struct prstatus32_timeval pr_utime;                /* User time.  */
-    struct prstatus32_timeval pr_stime;                /* System time.  */
-    struct prstatus32_timeval pr_cutime;       /* Cumulative user time.  */
-    struct prstatus32_timeval pr_cstime;       /* Cumulative system time.  */
-    elf_gregset32_t pr_reg;            /* GP registers.  */
-    int pr_fpvalid;                    /* True if math copro being used.  */
-  };
-
-struct elf_prstatusx32
-  {
-    struct elf_siginfo pr_info;                /* Info associated with signal.  */
-    short int pr_cursig;               /* Current signal.  */
-    unsigned int pr_sigpend;           /* Set of pending signals.  */
-    unsigned int pr_sighold;           /* Set of held signals.  */
-    pid_t pr_pid;
-    pid_t pr_ppid;
-    pid_t pr_pgrp;
-    pid_t pr_sid;
-    struct prstatus32_timeval pr_utime;                /* User time.  */
-    struct prstatus32_timeval pr_stime;                /* System time.  */
-    struct prstatus32_timeval pr_cutime;       /* Cumulative user time.  */
-    struct prstatus32_timeval pr_cstime;       /* Cumulative system time.  */
-    elf_gregset64_t pr_reg;            /* GP registers.  */
-    int pr_fpvalid;                    /* True if math copro being used.  */
-  };
-
-struct elf_prstatus64
-  {
-    struct elf_siginfo pr_info;        /* Info associated with signal.  */
-    short int pr_cursig;               /* Current signal.  */
-    a8_uint64_t pr_sigpend;            /* Set of pending signals.  */
-    a8_uint64_t pr_sighold;            /* Set of held signals.  */
-    pid_t pr_pid;
-    pid_t pr_ppid;
-    pid_t pr_pgrp;
-    pid_t pr_sid;
-    struct prstatus64_timeval pr_utime;                /* User time.  */
-    struct prstatus64_timeval pr_stime;                /* System time.  */
-    struct prstatus64_timeval pr_cutime;       /* Cumulative user time.  */
-    struct prstatus64_timeval pr_cstime;       /* Cumulative system time.  */
-    elf_gregset64_t pr_reg;            /* GP registers.  */
-    int pr_fpvalid;                    /* True if math copro being used.  */
-  };
-
-struct elf_prpsinfo32
-  {
-    char pr_state;                     /* Numeric process state.  */
-    char pr_sname;                     /* Char for pr_state.  */
-    char pr_zomb;                      /* Zombie.  */
-    char pr_nice;                      /* Nice val.  */
-    unsigned int pr_flag;              /* Flags.  */
-    unsigned short int pr_uid;
-    unsigned short int pr_gid;
-    int pr_pid, pr_ppid, pr_pgrp, pr_sid;
-    /* Lots missing */
-    char pr_fname[16];                 /* Filename of executable.  */
-    char pr_psargs[ELF_PRARGSZ];       /* Initial part of arg list.  */
-  };
-
-struct elf_prpsinfo64
-  {
-    char pr_state;                     /* Numeric process state.  */
-    char pr_sname;                     /* Char for pr_state.  */
-    char pr_zomb;                      /* Zombie.  */
-    char pr_nice;                      /* Nice val.  */
-    a8_uint64_t pr_flag;               /* Flags.  */
-    unsigned int pr_uid;
-    unsigned int pr_gid;
-    int pr_pid, pr_ppid, pr_pgrp, pr_sid;
-    /* Lots missing */
-    char pr_fname[16];                 /* Filename of executable.  */
-    char pr_psargs[ELF_PRARGSZ];       /* Initial part of arg list.  */
-  };
-
-/* The rest of this file provides the types for emulation of the
-   Solaris <proc_service.h> interfaces that should be implemented by
-   users of libthread_db.  */
-
-/* Process status and info.  In the end we do provide typedefs for them.  */
-typedef struct elf_prstatus32 prstatus32_t;
-typedef struct elf_prstatusx32 prstatusx32_t;
-typedef struct elf_prstatus64 prstatus64_t;
-typedef struct elf_prpsinfo32 prpsinfo32_t;
-typedef struct elf_prpsinfo64 prpsinfo64_t;