From: Szabolcs Nagy Date: Thu, 25 Apr 2019 14:35:35 +0000 (+0100) Subject: aarch64: add STO_AARCH64_VARIANT_PCS and DT_AARCH64_VARIANT_PCS X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b95c8a3150be0c3ae9984e2c473212e5be30ccf5;p=thirdparty%2Fglibc.git 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. --- diff --git a/ChangeLog b/ChangeLog index 62687bbea92..d3d72578545 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2019-06-13 Szabolcs Nagy + + * elf/elf.h (STO_AARCH64_VARIANT_PCS): Define. + (DT_AARCH64_VARIANT_PCS): Define. + 2019-06-28 Florian Weimer [BZ #24744] diff --git a/elf/elf.h b/elf/elf.h index 7e2b072a7f7..74f7f479ce8 100644 --- a/elf/elf.h +++ b/elf/elf.h @@ -2847,6 +2847,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 */