01917d
commit 1437d0631b209500db8371c425e896deb66ec9f9
01917d
Author: Peter Bergner <bergner@vnet.ibm.com>
01917d
Date:   Wed Mar 8 14:00:42 2017 -0600
01917d
01917d
    Add support for the new 'lnia' extended mnemonic.
01917d
    
01917d
    opcodes/
01917d
            * ppc-opc.c (powerpc_opcodes) <lnia>: New extended mnemonic.
01917d
    
01917d
    gas/
01917d
            * testsuite/gas/ppc/power9.d <lnia> New test.
01917d
            * testsuite/gas/ppc/power9.s: Likewise.
01917d
01917d
### a/opcodes/ChangeLog
01917d
### b/opcodes/ChangeLog
01917d
## -1,3 +1,7 @@
01917d
+2017-03-08  Peter Bergner  <bergner@vnet.ibm.com>
01917d
+
01917d
+	* ppc-opc.c (powerpc_opcodes) <lnia>: New extended mnemonic.
01917d
+
01917d
 2017-03-06  H.J. Lu  <hongjiu.lu@intel.com>
01917d
 
01917d
 	* i386-dis.c (REG_0F1E_MOD_3): New enum.
01917d
--- a/opcodes/ppc-opc.c
01917d
+++ b/opcodes/ppc-opc.c
01917d
@@ -2552,6 +2552,8 @@ extract_vleil (unsigned long insn,
01917d
 /* An DX form instruction.  */
01917d
 #define DX(op, xop) (OP (op) | ((((unsigned long)(xop)) & 0x1f) << 1))
01917d
 #define DX_MASK DX (0x3f, 0x1f)
01917d
+/* An DX form instruction with the D bits specified.  */
01917d
+#define NODX_MASK (DX_MASK | 0x1fffc1)
01917d
 
01917d
 /* An EVSEL form instruction.  */
01917d
 #define EVSEL(op, xop) (OP (op) | (((unsigned long)(xop)) & 0xff) << 3)
01917d
@@ -4264,6 +4266,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
01917d
 
01917d
 {"mcrf",     XL(19,0), XLBB_MASK|(3<<21)|(3<<16), COM,	PPCVLE,		{BF, BFA}},
01917d
 
01917d
+{"lnia",     DX(19,2),		NODX_MASK,   POWER9,	PPCVLE,		{RT}},
01917d
 {"addpcis",  DX(19,2),		DX_MASK,     POWER9,	PPCVLE,		{RT, DXD}},
01917d
 {"subpcis",  DX(19,2),		DX_MASK,     POWER9,	PPCVLE,		{RT, NDXD}},
01917d