Tue Nov 5 10:21:02 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
[deliverable/binutils-gdb.git] / gdb / xcoffsolib.h
index cda53217f8ee63b5fd5fce57b6311a15e13860c9..2b75d22fecdce5eda41b3901cb750c61a9908111 100644 (file)
@@ -1,5 +1,5 @@
 /* Data structures for RS/6000 shared libraries, for GDB.
-   Copyright 1991, 1992 Free Software Foundation, Inc.
+   Copyright 1991, 1992, 1994 Free Software Foundation, Inc.
 
 This file is part of GDB.
 
@@ -15,32 +15,32 @@ 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.  */
 
-/*
-   the vmap struct is used to describe the virtual address space of
+/* The vmap struct is used to describe the virtual address space of
    the target we are manipulating.  The first entry is always the "exec"
    file.  Subsequent entries correspond to other objects that are
    mapped into the address space of a process created from the "exec" file.
    These are either in response to exec()ing the file, in which case all
    shared libraries are loaded, or a "load" system call, followed by the
-   user's issuance of a "load" command. */
+   user's issuance of a "load" command.  */
 
 struct vmap {
-       struct vmap *nxt;       /* ^ to next in chain                   */
-       bfd *bfd;               /* BFD for mappable object library      */
-       char *name;             /* ^ to object file name                */
-       char *member;           /* ^ to member name                     */
-       CORE_ADDR tstart;       /* virtual addr where member is mapped  */
-       CORE_ADDR tend;         /* virtual upper bound of member        */
-       CORE_ADDR tadj;         /* heuristically derived adjustment     */
-       CORE_ADDR dstart;       /* virtual address of data start        */
-       CORE_ADDR dend;         /* vitrual address of data end          */
-
-       CORE_ADDR ostart;       /* objext start ???                     */
-       unsigned  loaded:1;     /* True if symbols are loaded           */
-       unsigned  reloced:1;    /* True, if symbols relocated           */
-       unsigned  padding:14;
+  struct vmap *nxt;    /* ptr to next in chain                 */
+  bfd *bfd;            /* BFD for mappable object library      */
+  char *name;          /* ptr to object file name              */
+  char *member;                /* ptr to member name                   */
+  CORE_ADDR tstart;    /* virtual addr where member is mapped  */
+  CORE_ADDR tend;      /* virtual upper bound of member        */
+  CORE_ADDR tadj;      /* heuristically derived adjustment     */
+  CORE_ADDR dstart;    /* virtual address of data start        */
+  CORE_ADDR dend;      /* vitrual address of data end          */
+
+  /* This is NULL for the exec-file.  */
+  struct objfile *objfile;
+  
+  unsigned  loaded:1;  /* True if symbols are loaded           */
+  unsigned  padding:15;
 };
 
 
@@ -50,3 +50,10 @@ struct vmap_and_bfd {
 };
 
 extern struct vmap *vmap;
+
+extern void
+add_text_to_loadinfo PARAMS ((CORE_ADDR textaddr, CORE_ADDR dataaddr));
+
+/* Hook for symbol table relocation at runtime. */
+
+extern void (*xcoff_relocate_symtab_hook) PARAMS ((unsigned int));
This page took 0.023976 seconds and 4 git commands to generate.