X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fxcoffsolib.h;h=fb17e3f637ae9917b4c759d5299166528459aea3;hb=852164b6e8c92597cd72b08061808bdace471f7e;hp=77d691bda83a91c45db1e84f7d3521d3735b0e0f;hpb=8b0b198558d0fc981f129e2e3dcbe00a0f308449;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/xcoffsolib.h b/gdb/xcoffsolib.h index 77d691bda8..fb17e3f637 100644 --- a/gdb/xcoffsolib.h +++ b/gdb/xcoffsolib.h @@ -1,21 +1,21 @@ /* Data structures for RS/6000 shared libraries, for GDB. - Copyright 1991, 1992, 1994, 1997 Free Software Foundation, Inc. + Copyright (C) 1991, 1992, 1993, 1994, 1996, 1997, 2000, 2007, 2008, 2009 + Free Software Foundation, Inc. -This file is part of GDB. + This file is part of GDB. -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. -This program 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 General Public License for more details. + This program 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 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ /* The vmap struct is used to describe the virtual address space of the target we are manipulating. The first entry is always the "exec" @@ -25,34 +25,40 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ shared libraries are loaded, or a "load" system call, followed by the user's issuance of a "load" command. */ -struct vmap { - 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 tvma; /* virtual addr of text section in object file */ - CORE_ADDR toffs; /* offset of text section in object file */ - CORE_ADDR dstart; /* virtual address of data start */ - CORE_ADDR dend; /* virtual address of data end */ - CORE_ADDR dvma; /* virtual addr of data section in object file */ - - /* This is NULL for the exec-file. */ - struct objfile *objfile; - - unsigned loaded:1; /* True if symbols are loaded */ - unsigned padding:15; -}; - - -struct vmap_and_bfd { - bfd *pbfd; - struct vmap *pvmap; -}; +#ifndef XCOFFSOLIB_H +#define XCOFFSOLIB_H + +struct vmap + { + 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 tvma; /* virtual addr of text section in object file */ + CORE_ADDR toffs; /* offset of text section in object file */ + CORE_ADDR dstart; /* virtual address of data start */ + CORE_ADDR dend; /* virtual address of data end */ + CORE_ADDR dvma; /* virtual addr of data section in object file */ + + /* This is NULL for the exec-file. */ + struct objfile *objfile; + + unsigned loaded:1; /* True if symbols are loaded */ + unsigned padding:15; + }; + + +struct vmap_and_bfd + { + bfd *pbfd; + struct vmap *pvmap; + }; extern struct vmap *vmap; -/* Hook for symbol table relocation at runtime. */ +/* Add symbols for a vmap. */ +extern int vmap_add_symbols (struct vmap *vp); -extern void (*xcoff_relocate_symtab_hook) PARAMS ((unsigned int)); +#endif