This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb/binutils-2_28-branch] Add support for the new 'lnia' extended mnemonic.
- From: Peter Bergner <bergner at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 8 Mar 2017 22:01:05 -0000
- Subject: [binutils-gdb/binutils-2_28-branch] Add support for the new 'lnia' extended mnemonic.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=539a3a0e4f0411285b55c0d52c609cd5d20d4539
commit 539a3a0e4f0411285b55c0d52c609cd5d20d4539
Author: Peter Bergner <bergner@vnet.ibm.com>
Date: Wed Mar 8 16:00:54 2017 -0600
Add support for the new 'lnia' extended mnemonic.
opcodes/
Apply from master.
2017-03-08 Peter Bergner <bergner@vnet.ibm.com>
* ppc-opc.c (powerpc_opcodes) <lnia>: New extended mnemonic.
gas/
Apply from master.
2017-03-08 Peter Bergner <bergner@vnet.ibm.com>
* testsuite/gas/ppc/power9.d <lnia> New test.
* testsuite/gas/ppc/power9.s: Likewise.
Diff:
---
gas/ChangeLog | 7 +++++++
gas/testsuite/gas/ppc/power9.d | 5 +++--
gas/testsuite/gas/ppc/power9.s | 1 +
opcodes/ChangeLog | 6 ++++++
opcodes/ppc-opc.c | 3 +++
5 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/gas/ChangeLog b/gas/ChangeLog
index fa9ecbe..95b380a 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+2017-03-08 Peter Bergner <bergner@vnet.ibm.com>
+
+ Apply from master.
+ 2017-03-08 Peter Bergner <bergner@vnet.ibm.com>
+ * testsuite/gas/ppc/power9.d <lnia> New test.
+ * testsuite/gas/ppc/power9.s: Likewise.
+
2017-03-02 Tristan Gingold <gingold@adacore.com>
* configure: Regenerate.
diff --git a/gas/testsuite/gas/ppc/power9.d b/gas/testsuite/gas/ppc/power9.d
index 9ba53d0..a67898f 100644
--- a/gas/testsuite/gas/ppc/power9.d
+++ b/gas/testsuite/gas/ppc/power9.d
@@ -312,8 +312,9 @@ Disassembly of section \.text:
.*: (f1 31 9d 6f|6f 9d 31 f1) xscvdphp vs41,vs51
.*: (f1 58 a7 6f|6f a7 58 f1) xvcvhpsp vs42,vs52
.*: (f1 79 af 6f|6f af 79 f1) xvcvsphp vs43,vs53
-.*: (4c 60 00 04|04 00 60 4c) addpcis r3,0
-.*: (4c 60 00 04|04 00 60 4c) addpcis r3,0
+.*: (4c 60 00 04|04 00 60 4c) lnia r3
+.*: (4c 60 00 04|04 00 60 4c) lnia r3
+.*: (4c 60 00 04|04 00 60 4c) lnia r3
.*: (4c 80 00 05|05 00 80 4c) addpcis r4,1
.*: (4c 80 00 05|05 00 80 4c) addpcis r4,1
.*: (4c bf ff c4|c4 ff bf 4c) addpcis r5,-2
diff --git a/gas/testsuite/gas/ppc/power9.s b/gas/testsuite/gas/ppc/power9.s
index 27f1122..4e3530f 100644
--- a/gas/testsuite/gas/ppc/power9.s
+++ b/gas/testsuite/gas/ppc/power9.s
@@ -303,6 +303,7 @@ power9:
xscvdphp 41,51
xvcvhpsp 42,52
xvcvsphp 43,53
+ lnia 3
addpcis 3,0
subpcis 3,0
addpcis 4,1
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 3a19442..0c0eb5a 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,9 @@
+2017-03-08 Peter Bergner <bergner@vnet.ibm.com>
+
+ Apply from master.
+ 2017-03-08 Peter Bergner <bergner@vnet.ibm.com>
+ * ppc-opc.c (powerpc_opcodes) <lnia>: New extended mnemonic.
+
2017-03-07 Alan Modra <amodra@gmail.com>
Apply from master
diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
index 30fd789..f7d1dcd 100644
--- a/opcodes/ppc-opc.c
+++ b/opcodes/ppc-opc.c
@@ -2552,6 +2552,8 @@ extract_vleil (unsigned long insn,
/* An DX form instruction. */
#define DX(op, xop) (OP (op) | ((((unsigned long)(xop)) & 0x1f) << 1))
#define DX_MASK DX (0x3f, 0x1f)
+/* An DX form instruction with the D bits specified. */
+#define NODX_MASK (DX_MASK | 0x1fffc1)
/* An EVSEL form instruction. */
#define EVSEL(op, xop) (OP (op) | (((unsigned long)(xop)) & 0xff) << 3)
@@ -4264,6 +4266,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"mcrf", XL(19,0), XLBB_MASK|(3<<21)|(3<<16), COM, PPCVLE, {BF, BFA}},
+{"lnia", DX(19,2), NODX_MASK, POWER9, PPCVLE, {RT}},
{"addpcis", DX(19,2), DX_MASK, POWER9, PPCVLE, {RT, DXD}},
{"subpcis", DX(19,2), DX_MASK, POWER9, PPCVLE, {RT, NDXD}},