]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
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 20:37:32 +0000 (20:37 +0000)
commit9dcf357fd243bdf21892ae2a5614b26e5d506436
treec997221c72efcd11b38e630611e7edceb08dbb84
parent5d766ae78a9dd4e71d7c989e8f3bdf1fd61b8068
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.

(cherry picked from commit 5284e471d53ccb7c7a1d140bd83098607ccf4b8a)
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