2002-06-12 Chris Demetriou <cgd@broadcom.com>
[deliverable/binutils-gdb.git] / bfd / genlink.h
index fed0849847e213ed64445fe588b47a8fa9cc24ba..215666a336c87ef0d3529f1a8c781b9438f414dc 100644 (file)
@@ -1,5 +1,5 @@
 /* genlink.h -- interface to the BFD generic linker
-   Copyright 1993 Free Software Foundation, Inc.
+   Copyright 1993, 1994, 1996 Free Software Foundation, Inc.
    Written by Ian Lance Taylor, Cygnus Support.
 
 This file is part of BFD, the Binary File Descriptor library.
@@ -16,7 +16,7 @@ GNU General Public License for more details.
 
 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., 675 Mass Ave, Cambridge, MA 02139, USA.  */
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 #ifndef GENLINK_H
 #define GENLINK_H
@@ -34,14 +34,15 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /* The generic linker uses a hash table which is a derived class of
    the standard linker hash table, just as the other backend specific
    linkers do.  Do not confuse the generic linker hash table with the
-   standard BFD linker hash table it is built upon.  The generic
-   linker hash table is onl referred to in this file.  */
+   standard BFD linker hash table it is built upon.  */
 
 /* Generic linker hash table entries.  */
 
 struct generic_link_hash_entry
 {
   struct bfd_link_hash_entry root;
+  /* Whether this symbol has been written out.  */
+  boolean written;
   /* Symbol from input BFD.  */
   asymbol *sym;
 };
@@ -73,6 +74,12 @@ struct generic_link_hash_table
 #define _bfd_generic_hash_table(p) \
   ((struct generic_link_hash_table *) ((p)->hash))
 
+/* The generic linker reads in the asymbol structures for an input BFD
+   and keeps them in the outsymbol and symcount fields.  */
+
+#define _bfd_generic_link_get_symbols(abfd) ((abfd)->outsymbols)
+#define _bfd_generic_link_get_symcount(abfd) ((abfd)->symcount)
+
 /* Add the symbols of input_bfd to the symbols being built for
    output_bfd.  */
 extern boolean _bfd_generic_link_output_symbols
@@ -85,6 +92,7 @@ extern boolean _bfd_generic_link_output_symbols
 
 struct generic_write_global_symbol_info
 {
+  struct bfd_link_info *info;
   bfd *output_bfd;
   size_t *psymalloc;
 };
@@ -95,9 +103,9 @@ struct generic_write_global_symbol_info
 extern boolean _bfd_generic_link_write_global_symbol
   PARAMS ((struct generic_link_hash_entry *, PTR));
 
-/* Handle a bfd_indirect_link_order.  */
-extern boolean _bfd_generic_indirect_link_order
-  PARAMS ((bfd *, struct bfd_link_info *, asection *,
-          struct bfd_link_order *));
+/* Generic link hash table entry creation routine.  */
+struct bfd_hash_entry *_bfd_generic_link_hash_newfunc
+  PARAMS ((struct bfd_hash_entry *, struct bfd_hash_table *,
+           const char *));
 
 #endif
This page took 0.031072 seconds and 4 git commands to generate.