public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [PATCH][Binutils] aarch64: Add support for the id_aa64isar3_el1 system register
@ 2024-02-09 13:52 Yury Khrustalev
  2024-02-19 14:33 ` Nick Clifton
  0 siblings, 1 reply; 2+ messages in thread
From: Yury Khrustalev @ 2024-02-09 13:52 UTC (permalink / raw)
  To: binutils; +Cc: nickc, Richard Earnshaw

[-- Attachment #1: Type: text/plain, Size: 433 bytes --]

Hi,

[PATCH][Binutils] aarch64: Add support for the id_aa64isar3_el1 system register

AArch64 defines a read-only system register called id_aa64isar3_el1.
This patch also adds relevant tests.

Regression tested on the aarch64-none-elf and aarch64-none-linux-gnu targets
and no regressions was found.

Is this Ok for trunk? I do not have commit rights, if OK, can someone commit on my behalf?

Thanks,
Yury Khrustalev


[-- Attachment #2: 0001-PATCH-Binutils-aarch64-Add-support-for-the-id_aa64is.patch --]
[-- Type: application/octet-stream, Size: 4011 bytes --]

From e42c835e8f2ee81150f498675f2faf108bbe79f8 Mon Sep 17 00:00:00 2001
From: Yury Khrustalev <yury.khrustalev@arm.com>
Date: Tue, 6 Feb 2024 11:05:39 +0000
Subject: [PATCH] [PATCH][Binutils] aarch64: Add support for the
 id_aa64isar3_el1 system register

AArch64 defines a read-only system register called id_aa64isar3_el1.
This patch also adds relevant tests.

Regression tested on the aarch64-none-elf and aarch64-none-linux-gnu targets
and no regressions was found.

---
 gas/testsuite/gas/aarch64/sysreg-diagnostic.d | 1 +
 gas/testsuite/gas/aarch64/sysreg-diagnostic.l | 1 +
 gas/testsuite/gas/aarch64/sysreg-diagnostic.s | 1 +
 gas/testsuite/gas/aarch64/sysreg.d            | 2 ++
 gas/testsuite/gas/aarch64/sysreg.s            | 3 +++
 opcodes/aarch64-sys-regs.def                  | 1 +
 6 files changed, 9 insertions(+)

diff --git a/gas/testsuite/gas/aarch64/sysreg-diagnostic.d b/gas/testsuite/gas/aarch64/sysreg-diagnostic.d
index 7059fbe3c8e..55cdf09bb80 100644
--- a/gas/testsuite/gas/aarch64/sysreg-diagnostic.d
+++ b/gas/testsuite/gas/aarch64/sysreg-diagnostic.d
@@ -13,3 +13,4 @@ Disassembly of section \.text:
 .*:	d5330503 	mrs	x3, dbgdtrrx_el0
 .*:	d5180003 	msr	midr_el1, x3  // note: writing to a read-only register
 .*:	d5180640 	msr	id_aa64isar2_el1, x0  // note: writing to a read-only register
+.*:	d5180660 	msr	id_aa64isar3_el1, x0  // note: writing to a read-only register
diff --git a/gas/testsuite/gas/aarch64/sysreg-diagnostic.l b/gas/testsuite/gas/aarch64/sysreg-diagnostic.l
index e9a41a2a3d2..df3d3e572a9 100644
--- a/gas/testsuite/gas/aarch64/sysreg-diagnostic.l
+++ b/gas/testsuite/gas/aarch64/sysreg-diagnostic.l
@@ -3,3 +3,4 @@
 .*:5: Warning: specified register cannot be read from at operand 2 -- `mrs x3,dbgdtrtx_el0'
 .*:6: Warning: specified register cannot be written to at operand 1 -- `msr midr_el1,x3'
 .*:7: Warning: specified register cannot be written to at operand 1 -- `msr id_aa64isar2_el1,x0'
+.*:8: Warning: specified register cannot be written to at operand 1 -- `msr id_aa64isar3_el1,x0'
diff --git a/gas/testsuite/gas/aarch64/sysreg-diagnostic.s b/gas/testsuite/gas/aarch64/sysreg-diagnostic.s
index a689cdceae5..d8e48c682a5 100644
--- a/gas/testsuite/gas/aarch64/sysreg-diagnostic.s
+++ b/gas/testsuite/gas/aarch64/sysreg-diagnostic.s
@@ -5,3 +5,4 @@
 	mrs     x3, dbgdtrtx_el0
 	msr     midr_el1, x3
 	msr	id_aa64isar2_el1, x0
+	msr	id_aa64isar3_el1, x0
diff --git a/gas/testsuite/gas/aarch64/sysreg.d b/gas/testsuite/gas/aarch64/sysreg.d
index 704666d48c8..d10175837f2 100644
--- a/gas/testsuite/gas/aarch64/sysreg.d
+++ b/gas/testsuite/gas/aarch64/sysreg.d
@@ -31,3 +31,5 @@ Disassembly of section \.text:
   5c:	d5110300 	msr	trcstatr, x0
   60:	d5380640 	mrs	x0, id_aa64isar2_el1
   64:	d538065e 	mrs	x30, id_aa64isar2_el1
+  68:	d5380660 	mrs	x0, id_aa64isar3_el1
+  6c:	d538067e 	mrs	x30, id_aa64isar3_el1
diff --git a/gas/testsuite/gas/aarch64/sysreg.s b/gas/testsuite/gas/aarch64/sysreg.s
index f2e75a863a1..a3f5b793620 100644
--- a/gas/testsuite/gas/aarch64/sysreg.s
+++ b/gas/testsuite/gas/aarch64/sysreg.s
@@ -33,3 +33,6 @@
 
 	mrs x0, id_aa64isar2_el1
 	mrs x30, id_aa64isar2_el1
+
+	mrs x0, id_aa64isar3_el1
+	mrs x30, id_aa64isar3_el1
diff --git a/opcodes/aarch64-sys-regs.def b/opcodes/aarch64-sys-regs.def
index 6a948171d6e..8b65673a5d6 100644
--- a/opcodes/aarch64-sys-regs.def
+++ b/opcodes/aarch64-sys-regs.def
@@ -521,6 +521,7 @@
   SYSREG ("id_aa64isar0_el1",	CPENC (3,0,0,6,0),	F_REG_READ,		AARCH64_NO_FEATURES)
   SYSREG ("id_aa64isar1_el1",	CPENC (3,0,0,6,1),	F_REG_READ,		AARCH64_NO_FEATURES)
   SYSREG ("id_aa64isar2_el1",	CPENC (3,0,0,6,2),	F_REG_READ,		AARCH64_NO_FEATURES)
+  SYSREG ("id_aa64isar3_el1",	CPENC (3,0,0,6,3),	F_REG_READ,		AARCH64_NO_FEATURES)
   SYSREG ("id_aa64mmfr0_el1",	CPENC (3,0,0,7,0),	F_REG_READ,		AARCH64_NO_FEATURES)
   SYSREG ("id_aa64mmfr1_el1",	CPENC (3,0,0,7,1),	F_REG_READ,		AARCH64_NO_FEATURES)
   SYSREG ("id_aa64mmfr2_el1",	CPENC (3,0,0,7,2),	F_REG_READ,		AARCH64_NO_FEATURES)
-- 
2.39.3


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH][Binutils] aarch64: Add support for the id_aa64isar3_el1 system register
  2024-02-09 13:52 [PATCH][Binutils] aarch64: Add support for the id_aa64isar3_el1 system register Yury Khrustalev
@ 2024-02-19 14:33 ` Nick Clifton
  0 siblings, 0 replies; 2+ messages in thread
From: Nick Clifton @ 2024-02-19 14:33 UTC (permalink / raw)
  To: Yury Khrustalev, binutils; +Cc: Richard Earnshaw

Hi Yury,

> [PATCH][Binutils] aarch64: Add support for the id_aa64isar3_el1 system register

Approved and applied.

Cheers
   Nick



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-02-19 14:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-02-09 13:52 [PATCH][Binutils] aarch64: Add support for the id_aa64isar3_el1 system register Yury Khrustalev
2024-02-19 14:33 ` Nick Clifton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).