MIPS16/opcodes: Free up `M' operand code

The `M' and `m' MIPS16 operand codes are functionally the same, denoting
a 7-bit register list that is encoded the same way for both SAVE and
RESTORE.  Use `m' for both instructions then, making `M' available for a
different use.

	opcodes/
	* mips16-opc.c (decode_mips16_operand) <'M'>: Remove case.
	(mips16_opcodes): Replace `M' with `m' for "restore".

	include/
	* opcode/mips.h: Remove `M' operand code.
This commit is contained in:
Maciej W. Rozycki
2018-02-20 20:51:36 +00:00
parent cd665a945e
commit 75f3166520
4 changed files with 12 additions and 5 deletions

View File

@ -1889,13 +1889,12 @@ extern int bfd_mips_num_opcodes;
"A" 8 bit PC relative address * 4 (MIPS16OP_*_IMM8)
"B" 5 bit PC relative address * 8 (MIPS16OP_*_IMM5)
"E" 5 bit PC relative address * 4 (MIPS16OP_*_IMM5)
"m" 7 bit register list for save instruction (18 bit extended)
"M" 7 bit register list for restore instruction (18 bit extended)
"m" 7 bit register list for SAVE/RESTORE instruction (18 bit extended)
Characters used so far, for quick reference when adding more:
"0123456 89"
".[]<>"
"ABCDEFGHI KLMNOPQRSTUVWXYZ"
"ABCDEFGHI KL NOPQRSTUVWXYZ"
"abcde ijklmnopqrs uvwxyz"
*/