[PATCH 2/2] AArch64 glibc port
Marcus Shawcroft
marcus.shawcroft@linaro.org
Wed Nov 7 12:54:00 GMT 2012
On 3 November 2012 18:21, Joseph S. Myers <joseph@codesourcery.com> wrote:
> I think each new relocation should have a comment on it, not just some of
> them.
>
> --
> Joseph S. Myers
> joseph@codesourcery.com
Revised patch and changelog attached.
/Marcus
-------------- next part --------------
2012-11-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* elf/elf.h (EM_AARCH64): New.
(R_AARCH64_NONE, R_AARCH64_ABS64, R_AARCH64_ABS32): Likewise.
(R_AARCH64_COPY, R_AARCH64_GLOB_DAT, R_AARCH64_JUMP_SLOT): Likewise.
(R_AARCH64_RELATIVE, R_AARCH64_TLS_DTPMOD64): Likewise.
(R_AARCH64_TLS_DTPREL64, R_AARCH64_TLS_TPREL64): Likewise.
(R_AARCH64_TLSDESC): Likewise.
(NT_ARM_TLS): Likewise.
(NT_ARM_HW_BREAK): Likewise.
(NT_ARM_HW_WATCH): Likewise.
-------------- next part --------------
diff --git a/elf/elf.h b/elf/elf.h
index 2524924..5a9b13f 100644
--- a/elf/elf.h
+++ b/elf/elf.h
@@ -249,6 +249,7 @@ typedef struct
#define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor */
#define EM_ARC_A5 93 /* ARC Cores Tangent-A5 */
#define EM_XTENSA 94 /* Tensilica Xtensa Architecture */
+#define EM_AARCH64 183 /* ARM AARCH64 */
#define EM_TILEPRO 188 /* Tilera TILEPro */
#define EM_TILEGX 191 /* Tilera TILE-Gx */
#define EM_NUM 192
@@ -631,6 +632,9 @@ typedef struct
#define NT_S390_LAST_BREAK 0x306 /* s390 breaking event address */
#define NT_S390_SYSTEM_CALL 0x307 /* s390 system call restart data */
#define NT_ARM_VFP 0x400 /* ARM VFP/NEON registers */
+#define NT_ARM_TLS 0x401 /* ARM TLS register */
+#define NT_ARM_HW_BREAK 0x402 /* ARM hardware breakpoint registers */
+#define NT_ARM_HW_WATCH 0x403 /* ARM hardware watchpoint registers */
/* Legal values for the note segment descriptor types for object files. */
@@ -2306,6 +2310,20 @@ typedef Elf32_Addr Elf32_Conflict;
#define SHT_ARM_ATTRIBUTES (SHT_LOPROC + 3) /* ARM attributes section. */
+/* AArch64 specific declarations. */
+
+#define R_AARCH64_NONE 0 /* No relocation. */
+#define R_AARCH64_ABS64 257 /* Direct 64 bit. */
+#define R_AARCH64_ABS32 258 /* Direct 32 bit. */
+#define R_AARCH64_COPY 1024 /* Copy symbol at runtime. */
+#define R_AARCH64_GLOB_DAT 1025 /* Create GOT entry. */
+#define R_AARCH64_JUMP_SLOT 1026 /* Create PLT entry. */
+#define R_AARCH64_RELATIVE 1027 /* Adjust by program base. */
+#define R_AARCH64_TLS_DTPMOD64 1028 /* Module number, 64 bit. */
+#define R_AARCH64_TLS_DTPREL64 1029 /* Module-relative offset, 64 bit. */
+#define R_AARCH64_TLS_TPREL64 1030 /* TP-relative offset, 64 bit. */
+#define R_AARCH64_TLSDESC 1031 /* TLS Descriptor. */
+
/* ARM relocs. */
#define R_ARM_NONE 0 /* No reloc */
More information about the Libc-alpha
mailing list