/*=====================================================================*/
+/*
typedef union {
int i_obj_id;
Byte *pb_info;
} LibGoblin_ObjInfo_Link;
-
+*/
/*=====================================================================*/
typedef struct {
#define OBJINFO_TYPE_PROGHDR 0x03
#define OBJINFO_TYPE_SECTION 0x04
#define OBJINFO_TYPE_OBJFILE 0x05
-#define OBJINFO_TYPE_FUNCTION 0x06
-#define OBJINFO_TYPE_OBJECT 0x07
-#define OBJINFO_TYPE_COMMON 0x08
-#define OBJINFO_TYPE_TLS 0x09
-#define OBJINFO_TYPE_REL 0x0a
-#define OBJINFO_TYPE_TYPE_SINGLE 0x0e
-#define OBJINFO_TYPE_TYPE_MULTI 0x0f
+#define OBJINFO_TYPE_TYPE_MULTI 0x06
+#define OBJINFO_TYPE_TYPE_SINGLE 0x07
+#define OBJINFO_TYPE_TYPEDEF 0x08
+#define OBJINFO_TYPE_FUNCTION 0x09
+#define OBJINFO_TYPE_OBJECT 0x0a
+#define OBJINFO_TYPE_COMMON 0x0b
+#define OBJINFO_TYPE_TLS 0x0c
+#define OBJINFO_TYPE_REL 0x0d
#define OBJINFO_TYPE_NONE 0x7f
typedef struct {
} objfile;
struct {
- Byte b_type; // st_info - Type and binding information.
- Byte b_binding; // st_info - Type and binding information.
- Byte b_visibility; // st_other - Reserved (not used).
- Word w_secindex; // st_shndx - Section index of symbol.
- } symbol;
-
- struct {
DWord dw_size;
- LibGoblin_ObjInfo_Link t_link;
+ Byte b_encoding;
+ Byte b_bit_offset;
+ Byte b_bit_size;
+ Byte b_endianity;
+ Byte b_addr_class;
+ Byte b_prototyped;
} type;
+ struct {
+ int i_objid_parent;
+ Byte b_prototyped;
+ Byte b_external;
+ Byte b_inline;
+
+ } function;
} info;
struct {
+ Byte b_type; // st_info - Type and binding information.
+ Byte b_binding; // st_info - Type and binding information.
+ Byte b_visibility; // st_other - Reserved (not used).
+ Word w_secindex; // st_shndx - Section index of symbol.
+ } elfsym;
+
+ struct {
int i_binfo_origin;
int i_dynsym_index;
struct {
Byte *pb_info;
+ int i_objid_type;
+ Byte *pb_dwinfo_type;
} dwarf;
int i_secid;
int i_srcid; // SourceInfo struct ID
+ DWord dw_srcline;
Byte b_elf_flags;
Word w_secid; // ==OLD== SectionInfo ItemIndex belong with this object.
DWARF_AbbrevEntry *p_abbrev;
QWord qw_abbrev_unreadsz;
+ LibGoblin_Index_DWARFInfo *p_offset;
+ int i_alloced_offset;
+ int i_max_offset;
+
int i_objfiles;
int i_maxvals;
int i_used; // ObjectInfo Items
int i_topid; // Top-Ptr ObjectInfo
- LibGoblin_Index_DWARFInfo *p_offset;
- int i_alloced_offset;
- int i_max_offset;
} objinfo;
LibGoblin_AddressInfo *p_addrinfo;