[ include/opcode/ChangeLog ]
2002-01-22 Graydon Hoare <graydon@redhat.com> * cgen.h (CGEN_MAYBE_MULTI_IFLD): New structure. (CGEN_OPERAND): Add CGEN_MAYBE_MULTI_IFLD field. [ opcodes/ChangeLog ] 2002-01-22 Graydon Hoare <graydon@redhat.com> * fr30-asm.c: Regenerate. * fr30-desc.c: Likewise. * fr30-desc.h: Likewise. * fr30-dis.c: Likewise. * fr30-ibld.c: Likewise. * fr30-opc.c: Likewise. * fr30-opc.h: Likewise. * m32r-asm.c: Likewise. * m32r-desc.c: Likewise. * m32r-desc.h: Likewise. * m32r-dis.c: Likewise. * m32r-ibld.c: Likewise. * m32r-opc.c: Likewise. * m32r-opc.h: Likewise. * m32r-opinst.c: Likewise. * openrisc-asm.c: Likewise. * openrisc-desc.c: Likewise. * openrisc-desc.h: Likewise. * openrisc-dis.c: Likewise. * openrisc-ibld.c: Likewise. * openrisc-opc.c: Likewise. * openrisc-opc.h: Likewise. * xstormy16-desc.c: Likewise. [ cgen/ChangeLog ] 2002-01-22 Graydon Hoare <graydon@redhat.com> * desc-cpu.scm (ifld-number-cache): Add. (ifld-number): Add. (gen-maybe-multi-ifld-of-op): Add. (gen-maybe-multi-ifld): Add. (gen-multi-ifield-nodes): Add. (cgen-desc.c): Add call to gen-multi-ifield-nodes.
This commit is contained in:
		| @@ -1,3 +1,8 @@ | ||||
| 2002-01-22  Graydon Hoare  <graydon@redhat.com> | ||||
|  | ||||
| 	* cgen.h (CGEN_MAYBE_MULTI_IFLD): New structure. | ||||
| 	(CGEN_OPERAND): Add CGEN_MAYBE_MULTI_IFLD field. | ||||
|  | ||||
| 2002-01-21  Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at> | ||||
|  | ||||
| 	* h8300.h: Comment typo fix. | ||||
|   | ||||
| @@ -609,6 +609,23 @@ enum cgen_operand_type { CGEN_OPERAND_MAX }; | ||||
| /* "nil" indicator for the operand instance table */ | ||||
| #define CGEN_OPERAND_NIL CGEN_OPERAND_MAX | ||||
|  | ||||
| /* A tree of these structs represents the multi-ifield | ||||
|    structure of an operand's hw-index value, if it exists.  */ | ||||
|  | ||||
| struct cgen_ifld; | ||||
|  | ||||
| typedef struct cgen_maybe_multi_ifield | ||||
| { | ||||
|   int count; /* 0: indexed by single cgen_ifld (possibly null: dead entry); | ||||
| 		n: indexed by array of more cgen_maybe_multi_ifields.  */ | ||||
|   union | ||||
|   { | ||||
|     struct cgen_maybe_multi_ifield * multi; | ||||
|     struct cgen_ifld * leaf; | ||||
|   } val; | ||||
| } | ||||
| CGEN_MAYBE_MULTI_IFLD; | ||||
|  | ||||
| /* This struct defines each entry in the operand table.  */ | ||||
|  | ||||
| typedef struct | ||||
| @@ -637,6 +654,11 @@ typedef struct | ||||
|      May be unused for a modifier.  */ | ||||
|   unsigned char length; | ||||
|  | ||||
|   /* The (possibly-multi) ifield used as an index for this operand, if it | ||||
|      is indexed by a field at all. This substitutes / extends the start and | ||||
|      length fields above, but unsure at this time whether they are used | ||||
|      anywhere.  */ | ||||
|   CGEN_MAYBE_MULTI_IFLD index_fields; | ||||
| #if 0 /* ??? Interesting idea but relocs tend to get too complicated, | ||||
| 	 and ABI dependent, for simple table lookups to work.  */ | ||||
|   /* Ideally this would be the internal (external?) reloc type.  */ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user