MIPS16: Add ASMACRO instruction support
authorMaciej W. Rozycki <macro@imgtec.com>
Fri, 23 Dec 2016 19:40:51 +0000 (19:40 +0000)
committerMaciej W. Rozycki <macro@imgtec.com>
Fri, 23 Dec 2016 19:55:21 +0000 (19:55 +0000)
commit5284e471d53ccb7c7a1d140bd83098607ccf4b8a
treeb0c7d481500be41b59a1f8ab540dd25e9e20c599
parentbdd152861ce75c36828904cf3d10f8ce14da6cf5
MIPS16: Add ASMACRO instruction support

Add ASMACRO instruction support as per the MIPS16e ASE architecture
specifications [1][2], completing MIPS16e instruction set support.

[1] "MIPS32 Architecture for Programmers, Volume IV-a: The MIPS16e
    Application-Specific Extension to the MIPS32 Architecture", MIPS
    Technologies, Inc., Document Number: MD00076, Revision 2.63, July
    16, 2013, Section 4.1 "MIPS16e Instruction Descriptions", p. 65

[2] "MIPS64 Architecture for Programmers, Volume IV-a: The MIPS16e
    Application-Specific Extension to the MIPS64 Architecture", MIPS
    Technologies, Inc., Document Number: MD00077, Revision 2.60, June
    25, 2008, Section 1.1 "MIPS16e Instruction Descriptions", p. 66

include/
* opcode/mips.h: Document `0', `1', `2', `3', `4' and `s'
operand codes.

opcodes/
* mips16-opc.c (decode_mips16_operand): Add `0', `1', `2', `3',
`4' and `s' operand codes.
(mips16_opcodes): Add "asmacro" entry.

binutils/
* testsuite/binutils-all/mips/mips16-extend-insn.d: Update for
ASMACRO support.

gas/
* testsuite/gas/mips/mips16-asmacro.d: New test.
* testsuite/gas/mips/mips16-32@mips16-asmacro.d: New test.
* testsuite/gas/mips/mips16-64@mips16-asmacro.d: New test.
* testsuite/gas/mips/mips16-asmacro.s: New test source.
* testsuite/gas/mips/mips.exp: Run the new tests.
12 files changed:
binutils/ChangeLog
binutils/testsuite/binutils-all/mips/mips16-extend-insn.d
gas/ChangeLog
gas/testsuite/gas/mips/mips.exp
gas/testsuite/gas/mips/mips16-32@mips16-asmacro.d [new file with mode: 0644]
gas/testsuite/gas/mips/mips16-64@mips16-asmacro.d [new file with mode: 0644]
gas/testsuite/gas/mips/mips16-asmacro.d [new file with mode: 0644]
gas/testsuite/gas/mips/mips16-asmacro.s [new file with mode: 0644]
include/ChangeLog
include/opcode/mips.h
opcodes/ChangeLog
opcodes/mips16-opc.c