You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.4 KiB

commit 1437d0631b209500db8371c425e896deb66ec9f9
Author: Peter Bergner <bergner@vnet.ibm.com>
Date: Wed Mar 8 14:00:42 2017 -0600
Add support for the new 'lnia' extended mnemonic.
opcodes/
* ppc-opc.c (powerpc_opcodes) <lnia>: New extended mnemonic.
gas/
* testsuite/gas/ppc/power9.d <lnia> New test.
* testsuite/gas/ppc/power9.s: Likewise.
### a/opcodes/ChangeLog
### b/opcodes/ChangeLog
## -1,3 +1,7 @@
+2017-03-08 Peter Bergner <bergner@vnet.ibm.com>
+
+ * ppc-opc.c (powerpc_opcodes) <lnia>: New extended mnemonic.
+
2017-03-06 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c (REG_0F1E_MOD_3): New enum.
--- 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}},