_libdwarf.h (179187) | _libdwarf.h (221569) |
---|---|
1/*- 2 * Copyright (c) 2007 John Birrell (jb@freebsd.org) 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * | 1/*- 2 * Copyright (c) 2007 John Birrell (jb@freebsd.org) 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * |
26 * $FreeBSD: head/lib/libdwarf/_libdwarf.h 179187 2008-05-22 02:14:23Z jb $ | 26 * $FreeBSD: head/lib/libdwarf/_libdwarf.h 221569 2011-05-07 01:05:31Z obrien $ |
27 */ 28 29#ifndef __LIBDWARF_H_ 30#define __LIBDWARF_H_ 31 32#include <sys/param.h> 33#include <sys/queue.h> 34#include <stdio.h> --- 123 unchanged lines hidden (view full) --- 158 size_t dbg_stnum; /* Section header string table section number. */ 159 int dbg_offsize; /* DWARF offset size. */ 160 Dwarf_section dbg_s[DWARF_DEBUG_SNAMES]; 161 /* Array of section information. */ 162 STAILQ_HEAD(, _Dwarf_CU) 163 dbg_cu; /* List of compilation units. */ 164 Dwarf_CU dbg_cu_current; 165 /* Ptr to the current compilation unit. */ | 27 */ 28 29#ifndef __LIBDWARF_H_ 30#define __LIBDWARF_H_ 31 32#include <sys/param.h> 33#include <sys/queue.h> 34#include <stdio.h> --- 123 unchanged lines hidden (view full) --- 158 size_t dbg_stnum; /* Section header string table section number. */ 159 int dbg_offsize; /* DWARF offset size. */ 160 Dwarf_section dbg_s[DWARF_DEBUG_SNAMES]; 161 /* Array of section information. */ 162 STAILQ_HEAD(, _Dwarf_CU) 163 dbg_cu; /* List of compilation units. */ 164 Dwarf_CU dbg_cu_current; 165 /* Ptr to the current compilation unit. */ |
166 167 STAILQ_HEAD(, _Dwarf_Func) dbg_func; /* List of functions */ |
|
166}; 167 | 168}; 169 |
170struct _Dwarf_Func { 171 Dwarf_Die func_die; 172 const char *func_name; 173 Dwarf_Addr func_low_pc; 174 Dwarf_Addr func_high_pc; 175 int func_is_inlined; 176 /* inlined instance */ 177 STAILQ_HEAD(, _Dwarf_Inlined_Func) func_inlined_instances; 178 STAILQ_ENTRY(_Dwarf_Func) func_next; 179}; 180 181struct _Dwarf_Inlined_Func { 182 struct _Dwarf_Func *ifunc_origin; 183 Dwarf_Die ifunc_abstract; 184 Dwarf_Die ifunc_concrete; 185 Dwarf_Addr ifunc_low_pc; 186 Dwarf_Addr ifunc_high_pc; 187 STAILQ_ENTRY(_Dwarf_Inlined_Func) ifunc_next; 188}; 189 190void dwarf_build_function_table(Dwarf_Debug dbg); 191 192#ifdef DWARF_DEBUG 193#include <assert.h> 194#define DWARF_ASSERT(x) assert(x) 195#else 196#define DWARF_ASSERT(x) 197#endif 198 |
|
168#endif /* !__LIBDWARF_H_ */ | 199#endif /* !__LIBDWARF_H_ */ |