Rearrange MIPS INSN* masks

Mark Shinwell shinwell@codesourcery.com
Wed Nov 28 10:07:00 GMT 2007


We are running very short of space in the INSN* masks in
include/opcode/mips.h.  This is starting to cause trouble for patches
that provide support for new MIPS variants.  (I will be posting a
patch later today that has a need for two more INSN* masks.)

This patch rearranges the INSN_ISA* flags to obtain some more
room in the remainder of the field.  The inclusion ordering on the
various standard ISAs is non-trivial and makes this process somewhat
difficult: the details of the solution are visible in the patch below.

This has been tested on mipsisa32r2-elf, mipsisa32r2-elfoabi and
mips64el-none-linux-gnu.  OK to apply?

Mark

--


2007-11-28  Mark Shinwell  <shinwell@codesourcery.com>

	include/opcode/
	* mips.h (INSN_ISA*): Redefine certain values as an
	enumeration.  Update comments.
	(mips_isa_table): New.
	(ISA_MIPS*): Redefine to match enumeration.
	(OPCODE_IS_MEMBER): Modify to correctly test new INSN_ISA*
	values.

	opcodes/
	* mips-opc.c (I3_32, I3_33, I4_32, I4_33, I5_33): New.
	(mips_builtin_opcodes): Use these new I* values.


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: rearrange.patch
URL: <https://sourceware.org/pipermail/binutils/attachments/20071128/519af64a/attachment.ksh>


More information about the Binutils mailing list