diff options
author | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2019-04-25 15:35:35 +0100 |
---|---|---|
committer | Szabolcs Nagy <szabolcs.nagy@arm.com> | 2019-06-13 09:44:44 +0100 |
commit | 55f82d328d2dd1c7c13c1992f4b9bf9c95b57551 (patch) | |
tree | 898ae82406ce102a0703d56c8f1aa7610832e3bb | |
parent | 119269606996258ee0a53ff9e5828d474ee0f698 (diff) | |
download | glibc-55f82d328d2dd1c7c13c1992f4b9bf9c95b57551.tar.gz glibc-55f82d328d2dd1c7c13c1992f4b9bf9c95b57551.tar.xz glibc-55f82d328d2dd1c7c13c1992f4b9bf9c95b57551.zip |
aarch64: add STO_AARCH64_VARIANT_PCS and DT_AARCH64_VARIANT_PCS
STO_AARCH64_VARIANT_PCS is a non-visibility st_other flag for marking symbols that reference functions that may follow a variant PCS with different register usage convention from the base PCS. DT_AARCH64_VARIANT_PCS is a dynamic tag that marks ELF modules that have R_*_JUMP_SLOT relocations for symbols marked with STO_AARCH64_VARIANT_PCS (i.e. have variant PCS calls via a PLT). * elf/elf.h (STO_AARCH64_VARIANT_PCS): Define. (DT_AARCH64_VARIANT_PCS): Define.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | elf/elf.h | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index 2afedc1422..456b9ba8bb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2019-06-13 Szabolcs Nagy <szabolcs.nagy@arm.com> + + * elf/elf.h (STO_AARCH64_VARIANT_PCS): Define. + (DT_AARCH64_VARIANT_PCS): Define. + 2019-06-12 Adhemerval Zanella <adhemerval.zanella@linaro.org> * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile diff --git a/elf/elf.h b/elf/elf.h index bb13c870e2..7c6d6094ed 100644 --- a/elf/elf.h +++ b/elf/elf.h @@ -2864,6 +2864,13 @@ enum #define R_AARCH64_TLSDESC 1031 /* TLS Descriptor. */ #define R_AARCH64_IRELATIVE 1032 /* STT_GNU_IFUNC relocation. */ +/* AArch64 specific values for the Dyn d_tag field. */ +#define DT_AARCH64_VARIANT_PCS (DT_LOPROC + 5) +#define DT_AARCH64_NUM 6 + +/* AArch64 specific values for the st_other field. */ +#define STO_AARCH64_VARIANT_PCS 0x80 + /* ARM relocs. */ #define R_ARM_NONE 0 /* No reloc */ |