diff options
Diffstat (limited to 'gdb/arch/aarch64.h')
-rw-r--r-- | gdb/arch/aarch64.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/gdb/arch/aarch64.h b/gdb/arch/aarch64.h index ee18b74..0fcdba7 100644 --- a/gdb/arch/aarch64.h +++ b/gdb/arch/aarch64.h @@ -51,6 +51,12 @@ struct aarch64_features /* Whether SME2 is supported. */ bool sme2 = false; + + /* Whether Guarded Control Stack is supported. */ + bool gcs = false; + + /* Whether Guarded Control Stack Linux features are supported. */ + bool gcs_linux = false; }; inline bool operator==(const aarch64_features &lhs, const aarch64_features &rhs) @@ -60,7 +66,9 @@ inline bool operator==(const aarch64_features &lhs, const aarch64_features &rhs) && lhs.mte == rhs.mte && lhs.tls == rhs.tls && lhs.svq == rhs.svq - && lhs.sme2 == rhs.sme2; + && lhs.sme2 == rhs.sme2 + && lhs.gcs == rhs.gcs + && lhs.gcs_linux == rhs.gcs_linux; } namespace std @@ -86,6 +94,10 @@ namespace std /* SME2 feature. */ h = h << 1 | features.sme2; + + h = h << 1 | features.gcs; + h = h << 1 | features.gcs_linux; + return h; } }; |