diff options
author | Andrew Carlotti <andrew.carlotti@arm.com> | 2024-07-30 16:26:04 +0100 |
---|---|---|
committer | Andrew Carlotti <andrew.carlotti@arm.com> | 2025-01-10 14:12:06 +0000 |
commit | 20385cb92cbd4a1934661ab97a162c1e25935836 (patch) | |
tree | 3675ba724ca7c834c7ba12d542652a2a75447875 /gcc | |
parent | 76b7f60ffdb26c56d2c71bbeddf7da601de0e50e (diff) | |
download | gcc-20385cb92cbd4a1934661ab97a162c1e25935836.zip gcc-20385cb92cbd4a1934661ab97a162c1e25935836.tar.gz gcc-20385cb92cbd4a1934661ab97a162c1e25935836.tar.bz2 |
aarch64: Use PAUTH instead of V8_3A in some places
gcc/ChangeLog:
* config/aarch64/aarch64.cc
(aarch64_expand_epilogue): Use TARGET_PAUTH.
* config/aarch64/aarch64.md: Update comment.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/aarch64/aarch64.cc | 6 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64.md | 8 |
2 files changed, 7 insertions, 7 deletions
diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc index 6fe0fa2..ad31e9d 100644 --- a/gcc/config/aarch64/aarch64.cc +++ b/gcc/config/aarch64/aarch64.cc @@ -10283,12 +10283,12 @@ aarch64_expand_epilogue (rtx_call_insn *sibcall) 1) Sibcalls don't return in a normal way, so if we're about to call one we must authenticate. - 2) The RETAA instruction is not available before ARMv8.3-A, so if we are - generating code for !TARGET_ARMV8_3 we can't use it and must + 2) The RETAA instruction is not available without FEAT_PAuth, so if we + are generating code for !TARGET_PAUTH we can't use it and must explicitly authenticate. */ if (aarch64_return_address_signing_enabled () - && (sibcall || !TARGET_ARMV8_3)) + && (sibcall || !TARGET_PAUTH)) { switch (aarch64_ra_sign_key) { diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 0ed3c93..44f5b7a 100644 --- a/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md @@ -7846,11 +7846,11 @@ [(set_attr "type" "f_cvtf2i")] ) -;; Pointer authentication patterns are always provided. In architecture -;; revisions prior to ARMv8.3-A these HINT instructions operate as NOPs. +;; Pointer authentication patterns are always provided. On targets that +;; don't implement FEAT_PAuth these HINT instructions operate as NOPs. ;; This lets the user write portable software which authenticates pointers -;; when run on something which implements ARMv8.3-A, and which runs -;; correctly, but does not authenticate pointers, where ARMv8.3-A is not +;; when run on something which implements FEAT_PAuth, and which runs +;; correctly, but does not authenticate pointers, where FEAT_PAuth is not ;; implemented. ;; Signing/Authenticating R30 using SP as the salt. |