diff options
author | Srinath Parvathaneni <srinath.parvathaneni@arm.com> | 2024-01-30 08:59:53 +0000 |
---|---|---|
committer | srinath <srinath.parvathaneni@arm.com> | 2024-01-30 08:59:55 +0000 |
commit | ba52022915e0a474600cdb17ae5f9ac0b057e83d (patch) | |
tree | 5c7ba90fce8f7284a830c7446e952e02b68ef996 /binutils | |
parent | b960445a45981873c5b1718824ea9d3b5749433a (diff) | |
download | gdb-ba52022915e0a474600cdb17ae5f9ac0b057e83d.zip gdb-ba52022915e0a474600cdb17ae5f9ac0b057e83d.tar.gz gdb-ba52022915e0a474600cdb17ae5f9ac0b057e83d.tar.bz2 |
aarch64: Add support for GCS in AArch64 linker.users/ARM/gcs-binutils-gdb-master
This patch adds support for GCS in AArch64 linker.
This patch implements the following:
1) Defines GNU_PROPERTY_AARCH64_FEATURE_1_GCS bit for GCS in
GNU_PROPERTY_AARCH64_FEATURE_1_AND macro.
2) Adds readelf support to read and print the GNU properties
in AArch64.
Displaying notes found in: .note.gnu.property
[ ]+Owner[ ]+Data size[ ]+Description
GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0
Properties: AArch64 feature: GCS
3) Adds support for -z experimental-gcs linker option and document
all the values allowed with option (-z experimental-gcs[=always|never|implicit]).
-z experimental-gcs is equivalent to -z experimental-gcs=always and
when option is not passed in the command line, it defaults to implicit.
4) Adds support for -z experimental-gcs-report linker option and document
all the values allowed with this option (-z experimental-gcs-report[=none|warning|error]).
-z experimental-gcs-report is equivalent to -z experimental-gcs-report=none
and when option is not passed in the command line, it defaults to none.
The ABI changes adding GNU_PROPERTY_AARCH64_FEATURE_1_GCS to the
GNU property GNU_PROPERTY_AARCH64_FEATURE_1_AND is merged into main and
can be found below.
https://github.com/ARM-software/abi-aa/blob/main/sysvabi64/sysvabi64.rst
Diffstat (limited to 'binutils')
-rw-r--r-- | binutils/readelf.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/binutils/readelf.c b/binutils/readelf.c index e3bf680..bcef2be 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -20638,6 +20638,10 @@ decode_aarch64_feature_1_and (unsigned int bitmask) printf ("PAC"); break; + case GNU_PROPERTY_AARCH64_FEATURE_1_GCS: + printf ("GCS"); + break; + default: printf (_("<unknown: %x>"), bit); break; |