This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb/binutils-2_26-branch] Backport addition of scv and rfscv P9 instructions.
- From: Peter Bergner <bergner at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 28 Feb 2017 22:18:02 -0000
- Subject: [binutils-gdb/binutils-2_26-branch] Backport addition of scv and rfscv P9 instructions.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=37c204fdc2ff27e800913d7e2347732b2015d65e
commit 37c204fdc2ff27e800913d7e2347732b2015d65e
Author: Peter Bergner <bergner@vnet.ibm.com>
Date: Tue Feb 28 16:17:52 2017 -0600
Backport addition of scv and rfscv P9 instructions.
opcodes/
Apply from master.
2017-02-10 Nicholas Piggin <npiggin@gmail.com>
* ppc-opc.c (powerpc_opcodes) <scv, rfscv>: New mnemonics.
gas/
Apply from master.
2017-02-10 Nicholas Piggin <npiggin@gmail.com>
* testsuite/gas/ppc/power9.d <scv, rfscv>: New tests.
Diff:
---
gas/ChangeLog | 7 +++++++
gas/testsuite/gas/ppc/power9.d | 3 +++
gas/testsuite/gas/ppc/power9.s | 3 +++
opcodes/ChangeLog | 7 +++++++
opcodes/ppc-opc.c | 4 +++-
5 files changed, 23 insertions(+), 1 deletion(-)
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 2f783e5..5761c77 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+2017-02-28 Peter Bergner <bergner@vnet.ibm.com>
+
+ Apply from master.
+ 2017-02-10 Nicholas Piggin <npiggin@gmail.com>
+
+ * testsuite/gas/ppc/power9.d <scv, rfscv>: New tests.
+
2016-09-16 Peter Bergner <bergner@vnet.ibm.com>
Apply from master.
diff --git a/gas/testsuite/gas/ppc/power9.d b/gas/testsuite/gas/ppc/power9.d
index 4da740d..8e2f251 100644
--- a/gas/testsuite/gas/ppc/power9.d
+++ b/gas/testsuite/gas/ppc/power9.d
@@ -389,4 +389,7 @@ Disassembly of section \.text:
.*: (ff d7 04 8e|8e 04 d7 ff) mffscrni f30,0
.*: (ff d7 1c 8e|8e 1c d7 ff) mffscrni f30,3
.*: (ff f8 04 8e|8e 04 f8 ff) mffsl f31
+.*: (01 00 00 44|44 00 00 01) scv 0
+.*: (e1 0f 00 44|44 00 0f e1) scv 127
+.*: (a4 00 00 4c|4c 00 00 a4) rfscv
#pass
diff --git a/gas/testsuite/gas/ppc/power9.s b/gas/testsuite/gas/ppc/power9.s
index 5fcf4a7..45f7b5b 100644
--- a/gas/testsuite/gas/ppc/power9.s
+++ b/gas/testsuite/gas/ppc/power9.s
@@ -380,3 +380,6 @@ power9:
mffscrni 30,0
mffscrni 30,3
mffsl 31
+ scv 0
+ scv 127
+ rfscv
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index d384e52..1a22b34 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,10 @@
+2017-02-28 Peter Bergner <bergner@vnet.ibm.com>
+
+ Apply from master.
+ 2017-02-10 Nicholas Piggin <npiggin@gmail.com>
+
+ * ppc-opc.c (powerpc_opcodes) <scv, rfscv>: New mnemonics.
+
2016-09-16 Peter Bergner <bergner@vnet.ibm.com>
Apply from master.
diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
index 1e4cb6f..8190195 100644
--- a/opcodes/ppc-opc.c
+++ b/opcodes/ppc-opc.c
@@ -440,7 +440,7 @@ const struct powerpc_operand powerpc_operands[] =
#define L1 L0 + 1
{ 0x1, 21, insert_l1, extract_l1, 0 },
- /* The LEV field in a POWER SVC form instruction. */
+ /* The LEV field in a POWER SVC / POWER9 SCV form instruction. */
#define SVC_LEV L1 + 1
{ 0x7f, 5, NULL, NULL, 0 },
@@ -4178,6 +4178,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"bcla", B(16,1,1), B_MASK, COM, PPCNONE, {BO, BI, BDA}},
{"svc", SC(17,0,0), SC_MASK, POWER, PPCNONE, {SVC_LEV, FL1, FL2}},
+{"scv", SC(17,0,1), SC_MASK, POWER9, PPCNONE, {SVC_LEV}},
{"svcl", SC(17,0,1), SC_MASK, POWER, PPCNONE, {SVC_LEV, FL1, FL2}},
{"sc", SC(17,1,0), SC_MASK, PPC, PPCNONE, {LEV}},
{"svca", SC(17,1,0), SC_MASK, PWRCOM, PPCNONE, {SV}},
@@ -4427,6 +4428,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"rfi", XL(19,50), 0xffffffff, COM, PPCNONE, {0}},
{"rfci", XL(19,51), 0xffffffff, PPC403|BOOKE|PPCE300|PPCA2|PPC476, PPCNONE, {0}},
+{"rfscv", XL(19,82), 0xffffffff, POWER9, PPCNONE, {0}},
{"rfsvc", XL(19,82), 0xffffffff, POWER, PPCNONE, {0}},
{"rfgi", XL(19,102), 0xffffffff, E500MC|PPCA2, PPCNONE, {0}},