xref: /illumos-gate/usr/src/lib/libdwarf/common/dwarf_die_deliv.h (revision 4d9fdb46b215739778ebc12079842c9905586999)
1bc1f688bSRobert Mustacchi /*
2bc1f688bSRobert Mustacchi 
3bc1f688bSRobert Mustacchi   Copyright (C) 2000 Silicon Graphics, Inc.  All Rights Reserved.
4*4d9fdb46SRobert Mustacchi   Portions Copyright (C) 2008-2011  David Anderson. All Rights Reserved.
5bc1f688bSRobert Mustacchi 
6bc1f688bSRobert Mustacchi   This program is free software; you can redistribute it and/or modify it
7bc1f688bSRobert Mustacchi   under the terms of version 2.1 of the GNU Lesser General Public License
8bc1f688bSRobert Mustacchi   as published by the Free Software Foundation.
9bc1f688bSRobert Mustacchi 
10bc1f688bSRobert Mustacchi   This program is distributed in the hope that it would be useful, but
11bc1f688bSRobert Mustacchi   WITHOUT ANY WARRANTY; without even the implied warranty of
12bc1f688bSRobert Mustacchi   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13bc1f688bSRobert Mustacchi 
14bc1f688bSRobert Mustacchi   Further, this software is distributed without any warranty that it is
15bc1f688bSRobert Mustacchi   free of the rightful claim of any third person regarding infringement
16bc1f688bSRobert Mustacchi   or the like.  Any license provided herein, whether implied or
17bc1f688bSRobert Mustacchi   otherwise, applies only to this software file.  Patent licenses, if
18bc1f688bSRobert Mustacchi   any, provided herein do not apply to combinations of this program with
19bc1f688bSRobert Mustacchi   other software, or any other product whatsoever.
20bc1f688bSRobert Mustacchi 
21bc1f688bSRobert Mustacchi   You should have received a copy of the GNU Lesser General Public
22bc1f688bSRobert Mustacchi   License along with this program; if not, write the Free Software
23bc1f688bSRobert Mustacchi   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston MA 02110-1301,
24bc1f688bSRobert Mustacchi   USA.
25bc1f688bSRobert Mustacchi 
26bc1f688bSRobert Mustacchi */
27bc1f688bSRobert Mustacchi 
28bc1f688bSRobert Mustacchi 
29bc1f688bSRobert Mustacchi 
30bc1f688bSRobert Mustacchi 
31bc1f688bSRobert Mustacchi /*
32*4d9fdb46SRobert Mustacchi     This struct holds information about an abbreviation.
33bc1f688bSRobert Mustacchi     It is put in the hash table for abbreviations for
34bc1f688bSRobert Mustacchi     a compile-unit.
35*4d9fdb46SRobert Mustacchi 
36*4d9fdb46SRobert Mustacchi     It's by dwarf_finish().
37bc1f688bSRobert Mustacchi */
38bc1f688bSRobert Mustacchi struct Dwarf_Abbrev_List_s {
39*4d9fdb46SRobert Mustacchi     Dwarf_Unsigned abl_code;
40*4d9fdb46SRobert Mustacchi     Dwarf_Half abl_tag;
41*4d9fdb46SRobert Mustacchi     Dwarf_Half abl_has_child;
42*4d9fdb46SRobert Mustacchi     /* Section global offset of this abbrev entry. */
43*4d9fdb46SRobert Mustacchi     Dwarf_Off      abl_goffset;
44bc1f688bSRobert Mustacchi 
45*4d9fdb46SRobert Mustacchi     /*  Singly linked synonym list in case of duplicate
46*4d9fdb46SRobert Mustacchi         hash. */
47*4d9fdb46SRobert Mustacchi     struct Dwarf_Abbrev_List_s *abl_next;
48bc1f688bSRobert Mustacchi 
49*4d9fdb46SRobert Mustacchi     /*  Points to start of attribute/form pairs in
50*4d9fdb46SRobert Mustacchi         the .debug_abbrev section for the abbrev. */
51*4d9fdb46SRobert Mustacchi     Dwarf_Byte_Ptr abl_abbrev_ptr;
52bc1f688bSRobert Mustacchi 
53*4d9fdb46SRobert Mustacchi     /*  The number of at/form[/implicitvalue] pairs
54*4d9fdb46SRobert Mustacchi         in this abbrev. */
55*4d9fdb46SRobert Mustacchi     Dwarf_Unsigned abl_count;
56bc1f688bSRobert Mustacchi };
57