Fix build breakage from last commit (window-nat.c:windows_create_inferior)
[deliverable/binutils-gdb.git] / bfd / libcoff-in.h
index 6b6eb287e42789fb4b4e6341da4aace6e257ce91..f469d5dcb94833d474dbc2582bcbee4f296c823f 100644 (file)
@@ -1,5 +1,5 @@
 /* BFD COFF object file private structure.
 /* BFD COFF object file private structure.
-   Copyright (C) 1990-2014 Free Software Foundation, Inc.
+   Copyright (C) 1990-2017 Free Software Foundation, Inc.
    Written by Cygnus Support.
 
    This file is part of BFD, the Binary File Descriptor library.
    Written by Cygnus Support.
 
    This file is part of BFD, the Binary File Descriptor library.
    MA 02110-1301, USA.  */
 
 #include "bfdlink.h"
    MA 02110-1301, USA.  */
 
 #include "bfdlink.h"
+#include "coff-bfd.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 /* Object file tdata; access macros.  */
 
 
 /* Object file tdata; access macros.  */
 
@@ -187,36 +192,6 @@ struct xcoff_tdata
    macro is only ever applied to an asymbol.  */
 #define coffsymbol(asymbol) ((coff_symbol_type *)(&((asymbol)->the_bfd)))
 
    macro is only ever applied to an asymbol.  */
 #define coffsymbol(asymbol) ((coff_symbol_type *)(&((asymbol)->the_bfd)))
 
-/* The used_by_bfd field of a section may be set to a pointer to this
-   structure.  */
-
-struct coff_section_tdata
-{
-  /* The relocs, swapped into COFF internal form.  This may be NULL.  */
-  struct internal_reloc *relocs;
-  /* If this is TRUE, the relocs entry may not be freed.  */
-  bfd_boolean keep_relocs;
-  /* The section contents.  This may be NULL.  */
-  bfd_byte *contents;
-  /* If this is TRUE, the contents entry may not be freed.  */
-  bfd_boolean keep_contents;
-  /* Information cached by coff_find_nearest_line.  */
-  bfd_vma offset;
-  unsigned int i;
-  const char *function;
-  /* Optional information about a COMDAT entry; NULL if not COMDAT. */
-  struct coff_comdat_info *comdat;
-  int line_base;
-  /* A pointer used for .stab linking optimizations.  */
-  void * stab_info;
-  /* Available for individual backends.  */
-  void * tdata;
-};
-
-/* An accessor macro for the coff_section_tdata structure.  */
-#define coff_section_data(abfd, sec) \
-  ((struct coff_section_tdata *) (sec)->used_by_bfd)
-
 /* Tdata for sections in XCOFF files.  This is used by the linker.  */
 
 struct xcoff_section_tdata
 /* Tdata for sections in XCOFF files.  This is used by the linker.  */
 
 struct xcoff_section_tdata
@@ -290,6 +265,16 @@ struct coff_link_hash_table
   struct stab_info stab_info;
 };
 
   struct stab_info stab_info;
 };
 
+struct coff_reloc_cookie
+{
+  struct internal_reloc *         rels;
+  struct internal_reloc *         rel;
+  struct internal_reloc *         relend;
+  struct coff_symbol_struct *     symbols;     /* Symtab for input bfd.  */
+  bfd *                           abfd;
+  struct coff_link_hash_entry **  sym_hashes;
+};
+
 /* Look up an entry in a COFF linker hash table.  */
 
 #define coff_link_hash_lookup(table, string, create, copy, follow)     \
 /* Look up an entry in a COFF linker hash table.  */
 
 #define coff_link_hash_lookup(table, string, create, copy, follow)     \
@@ -320,8 +305,6 @@ extern long coff_canonicalize_symtab
   (bfd *, asymbol **);
 extern int coff_count_linenumbers
   (bfd *);
   (bfd *, asymbol **);
 extern int coff_count_linenumbers
   (bfd *);
-extern struct coff_symbol_struct *coff_symbol_from
-  (bfd *, asymbol *);
 extern bfd_boolean coff_renumber_symbols
   (bfd *, int *);
 extern void coff_mangle_symbols
 extern bfd_boolean coff_renumber_symbols
   (bfd *, int *);
 extern void coff_mangle_symbols
@@ -329,8 +312,8 @@ extern void coff_mangle_symbols
 extern bfd_boolean coff_write_symbols
   (bfd *);
 extern bfd_boolean coff_write_alien_symbol
 extern bfd_boolean coff_write_symbols
   (bfd *);
 extern bfd_boolean coff_write_alien_symbol
-  (bfd *, asymbol *, struct internal_syment *, bfd_vma *,
-   bfd_size_type *, asection **, bfd_size_type *);
+  (bfd *, asymbol *, struct internal_syment *, union internal_auxent *,
+   bfd_vma *, bfd_size_type *, asection **, bfd_size_type *);
 extern bfd_boolean coff_write_linenumbers
   (bfd *);
 extern alent *coff_get_lineno
 extern bfd_boolean coff_write_linenumbers
   (bfd *);
 extern alent *coff_get_lineno
@@ -353,6 +336,8 @@ extern void coff_print_symbol
   (bfd *, void * filep, asymbol *, bfd_print_symbol_type);
 extern void coff_get_symbol_info
   (bfd *, asymbol *, symbol_info *ret);
   (bfd *, void * filep, asymbol *, bfd_print_symbol_type);
 extern void coff_get_symbol_info
   (bfd *, asymbol *, symbol_info *ret);
+#define coff_get_symbol_version_string \
+  _bfd_nosymbols_get_symbol_version_string
 extern bfd_boolean _bfd_coff_is_local_label_name
   (bfd *, const char *);
 extern asymbol *coff_bfd_make_debug_symbol
 extern bfd_boolean _bfd_coff_is_local_label_name
   (bfd *, const char *);
 extern asymbol *coff_bfd_make_debug_symbol
@@ -587,6 +572,8 @@ extern bfd_boolean _bfd_coff_link_input_bfd
 extern bfd_boolean _bfd_coff_reloc_link_order
   (bfd *, struct coff_final_link_info *, asection *,
    struct bfd_link_order *);
 extern bfd_boolean _bfd_coff_reloc_link_order
   (bfd *, struct coff_final_link_info *, asection *,
    struct bfd_link_order *);
+extern bfd_boolean bfd_coff_gc_sections
+  (bfd *, struct bfd_link_info *);
 
 
 #define coff_get_section_contents_in_window \
 
 
 #define coff_get_section_contents_in_window \
This page took 0.02566 seconds and 4 git commands to generate.