Fix a couple of bogus email addresses in my Changelog entries.
[platform/upstream/binutils.git] / include / bfdlink.h
index 51bbd5e..9a57dfe 100644 (file)
@@ -1,6 +1,6 @@
 /* bfdlink.h -- header file for BFD link routines
-   Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003
-   Free Software Foundation, Inc.
+   Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003,
+   2004 Free Software Foundation, Inc.
    Written by Steve Chamberlain and Ian Lance Taylor, Cygnus Support.
 
    This file is part of BFD, the Binary File Descriptor library.
@@ -81,6 +81,7 @@ struct bfd_link_hash_entry
 {
   /* Base hash table entry structure.  */
   struct bfd_hash_entry root;
+
   /* Type of this entry.  */
   enum bfd_link_hash_type type;
 
@@ -102,7 +103,8 @@ struct bfd_link_hash_entry
      symbol is undefined and becomes defined, this field will
      automatically be non-NULL since the symbol will have been on the
      undefined symbol list.  */
-  struct bfd_link_hash_entry *next;
+  struct bfd_link_hash_entry *und_next;
+
   /* A union of information depending upon the type.  */
   union
     {
@@ -283,8 +285,8 @@ struct bfd_link_info
   /* TRUE if global symbols in discarded sections should be stripped.  */
   unsigned int strip_discarded: 1;
 
-  /* TRUE if relaxation is being finalized.  */
-  unsigned int relax_finalizing: 1;
+  /* TRUE if the final relax pass is needed.  */
+  unsigned int need_relax_finalize: 1;
 
   /* TRUE if generating a position independent executable.  */
   unsigned int pie: 1;
@@ -300,10 +302,13 @@ struct bfd_link_info
      flags.  */
   unsigned int noexecstack: 1;
 
+  /* TRUE if PT_GNU_RELRO segment should be created.  */
+  unsigned int relro: 1;
+
   /* What to do with unresolved symbols in an object file.
-     When producing static binaries the default is GENERATE_ERROR.
-     When producing dynamic binaries the default is IGNORE.  The
-     assumption with dynamic binaries is that the reference will be
+     When producing executables the default is GENERATE_ERROR.
+     When producing shared libraries the default is IGNORE.  The
+     assumption with shared libraries is that the reference will be
      resolved at load/execution time.  */
   enum report_method unresolved_syms_in_objects;
 
@@ -321,6 +326,11 @@ struct bfd_link_info
      whether to include an object from an archive. */
   enum bfd_link_common_skip_ar_aymbols common_skip_ar_aymbols;
 
+  /* Char that may appear as the first char of a symbol, but should be
+     skipped (like symbol_leading_char) when looking up symbols in
+     wrap_hash.  Used by PowerPC Linux for 'dot' symbols.  */
+  char wrap_char;
+
   /* Function callbacks.  */
   const struct bfd_link_callbacks *callbacks;
 
@@ -384,6 +394,9 @@ struct bfd_link_info
 
   /* May be used to set DT_FLAGS_1 for ELF. */
   bfd_vma flags_1;
+
+  /* Start and end of RELRO region.  */
+  bfd_vma relro_start, relro_end;
 };
 
 /* This structures holds a set of callback functions.  These are
@@ -543,7 +556,7 @@ struct bfd_link_order
          /* Section to include.  If this is used, then
             section->output_section must be the section the
             link_order is attached to, section->output_offset must
-            equal the link_order offset field, and section->_raw_size
+            equal the link_order offset field, and section->size
             must equal the link_order size field.  Maybe these
             restrictions should be relaxed someday.  */
          asection *section;