1 /* 2 * Copyright 2019 Haiku, Inc. All Rights Reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef _KERNEL_ARCH_ARM64_ELF_H 6 #define _KERNEL_ARCH_ARM64_ELF_H 7 8 #define R_AARCH64_NONE 0 /* No relocation */ 9 #define R_AARCH64_ABS64 257 /* Absolute offset */ 10 #define R_AARCH64_ABS32 258 /* Absolute, 32-bit overflow check */ 11 #define R_AARCH64_ABS16 259 /* Absolute, 16-bit overflow check */ 12 #define R_AARCH64_PREL64 260 /* PC relative */ 13 #define R_AARCH64_PREL32 261 /* PC relative, 32-bit overflow check */ 14 #define R_AARCH64_PREL16 262 /* PC relative, 16-bit overflow check */ 15 #define R_AARCH64_TSTBR14 279 /* TBZ/TBNZ immediate */ 16 #define R_AARCH64_CONDBR19 280 /* Conditional branch immediate */ 17 #define R_AARCH64_JUMP26 282 /* Branch immediate */ 18 #define R_AARCH64_CALL26 283 /* Call immediate */ 19 #define R_AARCH64_COPY 1024 /* Copy data from shared object */ 20 #define R_AARCH64_GLOB_DAT 1025 /* Set GOT entry to data address */ 21 #define R_AARCH64_JUMP_SLOT 1026 /* Set GOT entry to code address */ 22 #define R_AARCH64_RELATIVE 1027 /* Add load address of shared object */ 23 #define R_AARCH64_TLS_DTPREL64 1028 /* Module-relative offset, 64 bit. */ 24 #define R_AARCH64_TLS_DTPMOD64 1029 /* Module number, 64 bit. */ 25 #define R_AARCH64_TLS_TPREL64 1030 /* TP-relative offset, 64 bit. */ 26 #define R_AARCH64_TLSDESC 1031 /* Identify the TLS descriptor */ 27 #define R_AARCH64_IRELATIVE 1032 /* STT_GNU_IFUNC relocation. */ 28 29 #endif /* _KERNEL_ARCH_ARM64_ELF_H */ 30