aboutsummaryrefslogtreecommitdiff
path: root/binutils
diff options
context:
space:
mode:
authorSrinath Parvathaneni <srinath.parvathaneni@arm.com>2024-01-30 08:59:53 +0000
committersrinath <srinath.parvathaneni@arm.com>2024-01-30 08:59:55 +0000
commitba52022915e0a474600cdb17ae5f9ac0b057e83d (patch)
tree5c7ba90fce8f7284a830c7446e952e02b68ef996 /binutils
parentb960445a45981873c5b1718824ea9d3b5749433a (diff)
downloadgdb-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.c4
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;