Date: Tue, 19 Jul 2022 07:37:26 GMT From: Andrew Turner <andrew@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: 8807ec6fd647 - stable/13 - Allow use of the arm64 unnamed register form Message-ID: <202207190737.26J7bQZW021603@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=8807ec6fd647d52b4a30f1b6e30532c6fe67896a commit 8807ec6fd647d52b4a30f1b6e30532c6fe67896a Author: Andrew Turner <andrew@FreeBSD.org> AuthorDate: 2022-06-29 16:34:41 +0000 Commit: Andrew Turner <andrew@FreeBSD.org> CommitDate: 2022-07-19 07:03:31 +0000 Allow use of the arm64 unnamed register form On arm64 all registers have a name that encodes op0, op1, CRn, CRm, and op2 that are used to encode the register in the instruction. As some registers we need to access may not be supportedby older compilers, or are only supported when specific extensions are enabled support this alternative form. Sponsored by: The FreeBSD Foundation (cherry picked from commit 66ba742d2e6c950611fa3d557512133b0216daa7) --- sys/arm64/include/armreg.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/arm64/include/armreg.h b/sys/arm64/include/armreg.h index 3753d550a256..27ae55f2743c 100644 --- a/sys/arm64/include/armreg.h +++ b/sys/arm64/include/armreg.h @@ -57,6 +57,12 @@ #define MRS_REG(reg) \ __MRS_REG(reg##_op0, reg##_op1, reg##_CRn, reg##_CRm, reg##_op2) +#define __MRS_REG_ALT_NAME(op0, op1, crn, crm, op2) \ + S##op0##_##op1##_C##crn##_C##crm##_##op2 +#define _MRS_REG_ALT_NAME(op0, op1, crn, crm, op2) \ + __MRS_REG_ALT_NAME(op0, op1, crn, crm, op2) +#define MRS_REG_ALT_NAME(reg) \ + _MRS_REG_ALT_NAME(reg##_op0, reg##_op1, reg##_CRn, reg##_CRm, reg##_op2) #define READ_SPECIALREG(reg) \
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202207190737.26J7bQZW021603>