2 Copyright © 1995-2011, The AROS Development Team. All rights reserved.
5 Desc: Structures and TagItem for debug.library
9 #ifndef LIBRARIES_DEBUG_H
10 #define LIBRARIES_DEBUG_H
12 #include <exec/lists.h>
13 #include <exec/nodes.h>
16 /* Tags for DecodeLocation() */
17 #define DL_Dummy (TAG_USER + 0x03e00000)
18 #define DL_ModuleName (DL_Dummy + 1)
19 #define DL_SegmentName (DL_Dummy + 2)
20 #define DL_SegmentPointer (DL_Dummy + 3)
21 #define DL_SegmentNumber (DL_Dummy + 4)
22 #define DL_SegmentStart (DL_Dummy + 5)
23 #define DL_SegmentEnd (DL_Dummy + 6)
24 #define DL_SymbolName (DL_Dummy + 7)
25 #define DL_SymbolStart (DL_Dummy + 8)
26 #define DL_SymbolEnd (DL_Dummy + 9)
27 #define DL_FirstSegment (DL_Dummy + 10)
29 /* Known debug information types */
32 #define DEBUG_PARTHENOPE 2
35 /* ELF module debug information */
42 /* Kickstart module debug information (pointed to by KRN_DebugInfo ti_Data) */
45 struct ELF_ModuleInfo
*Next
; /* Pointer to next module in list */
46 const char *Name
; /* Pointer to module name */
47 unsigned short Type
; /* DEBUG_ELF, for convenience */
48 struct elfheader
*eh
; /* ELF file header */
49 struct sheader
*sh
; /* ELF section header */
52 /* Structure received as message of EnumerateSymbols hook */
55 LONG si_Size
; /* Size of the structure */
56 CONST_STRPTR si_ModuleName
;
57 CONST_STRPTR si_SymbolName
;
62 /* Parthenope module debug information (pointed to by KRN_DebugInfo ti_Data)
64 * (This structure has the same layout as Parthenope's "module_t")
66 struct Parthenope_ModuleInfo
{
67 struct MinNode m_node
;
72 struct MinList m_symbols
;
75 struct Parthenope_Symbol
{
76 struct MinNode s_node
;
82 /* HUNK module debug information */