Usermode/libc++ - Implement map::insert and map::erase
[tpg/acess2.git] / Usermode / Libraries / ld-acess.so_src / elf64.h
index 237b75c..9d04e8a 100644 (file)
@@ -9,8 +9,11 @@
 
 #define ELFCLASS64     2
 
+#define EM_X86_64      62
+
 typedef uint16_t       Elf64_Half;
 typedef uint32_t       Elf64_Word;
+
 typedef uint64_t       Elf64_Addr;
 typedef uint64_t       Elf64_Off;
 typedef uint64_t       Elf64_Xword;
@@ -32,7 +35,7 @@ typedef struct
        Elf64_Half      e_shentsize;
        Elf64_Half      e_shnum;
        Elf64_Half      e_shstrndx;
-} Elf64_Ehdr;
+} __attribute__((packed)) Elf64_Ehdr;
 
 typedef struct
 {
@@ -66,7 +69,7 @@ typedef struct
        union {
                Elf64_Xword     d_val;
                Elf64_Addr      d_ptr;
-       } d_un;
+       };// d_un;
 } Elf64_Dyn;
 
 typedef struct
@@ -94,6 +97,8 @@ typedef struct
 
 #define ELF64_R_SYM(info)      ((info) >> 32)
 #define ELF64_R_TYPE(info)     ((info) & 0xFFFFFFFF)
+#define ELF64_ST_BIND(i)       ((i)>>4)
+#define ELF64_ST_TYPE(i)       ((i)&0xF)
 
 enum eElf64_RelocTypes_x86_64
 {

UCC git Repository :: git.ucc.asn.au