Index: uspace/lib/c/include/rtld/elf_dyn.h
===================================================================
--- uspace/lib/c/include/rtld/elf_dyn.h	(revision f2d88f3fc01df99a1e5292a3a395c0754a4ef3fa)
+++ uspace/lib/c/include/rtld/elf_dyn.h	(revision f4a0b43bd67ed28dcf1ec2a46857f5af15ec1425)
@@ -39,6 +39,9 @@
 #include <libarch/rtld/elf_dyn.h>
 
-#define ELF32_R_SYM(i) ((i)>>8)
+#define ELF32_R_SYM(i) ((i) >> 8)
 #define ELF32_R_TYPE(i) ((unsigned char)(i))
+
+#define ELF64_R_SYM(i) ((i) >> 32)
+#define ELF64_R_TYPE(i) ((i) & 0xffffffffL)
 
 struct elf32_dyn {
@@ -47,4 +50,12 @@
 		elf_word d_val;
 		elf32_addr d_ptr;
+	} d_un;
+};
+
+struct elf64_dyn {
+	elf_sxword d_tag;
+	union {
+		elf_xword d_val;
+		elf64_addr d_ptr;
 	} d_un;
 };
@@ -61,8 +72,25 @@
 };
 
+struct elf64_rel {
+	elf64_addr r_offset;
+	elf_xword r_info;
+};
+
+struct elf64_rela {
+	elf64_addr r_offset;
+	elf_xword r_info;
+	elf_sxword r_addend;
+};
+
 #ifdef __32_BITS__
 typedef struct elf32_dyn elf_dyn_t;
 typedef struct elf32_rel elf_rel_t;
 typedef struct elf32_rela elf_rela_t;
+#endif
+
+#ifdef __64_BITS__
+typedef struct elf64_dyn elf_dyn_t;
+typedef struct elf64_rel elf_rel_t;
+typedef struct elf64_rela elf_rela_t;
 #endif
 
