2004-11-12 Bob Wilson <bob.wilson@acm.org>
include/ChangeLog * xtensa-isa-internal.h (xtensa_interface_internal): Add class_id. * xtensa-isa.h (xtensa_interface_class_id): New prototype. bfd/ChangeLog * xtensa-isa.c (xtensa_interface_class_id): New. gas/ChangeLog * config/tc-xtensa.c (finish_vinsn): Clear pending instruction if there is a conflict. (check_t1_t2_reads_and_writes): Check for both reads and writes to interfaces that are related as determined by xtensa_interface_class_id.
This commit is contained in:
		| @@ -1,3 +1,8 @@ | ||||
| 2004-11-12  Bob Wilson  <bob.wilson@acm.org> | ||||
|  | ||||
| 	* xtensa-isa-internal.h (xtensa_interface_internal): Add class_id. | ||||
| 	* xtensa-isa.h (xtensa_interface_class_id): New prototype. | ||||
|  | ||||
| 2004-11-08  Inderpreet Singh   <inderpreetb@nioda.hcltech.com> | ||||
| 	    Vineet Sharma      <vineets@noida.hcltech.com> | ||||
|  | ||||
|   | ||||
| @@ -131,6 +131,7 @@ typedef struct xtensa_interface_internal_struct | ||||
|   const char *name;			/* Interface name.  */ | ||||
|   int num_bits;				/* Width of the interface.  */ | ||||
|   uint32 flags;				/* See XTENSA_INTERFACE_* flags.  */ | ||||
|   int class_id;				/* Class of related interfaces.  */ | ||||
|   char inout;				/* "i" or "o".  */ | ||||
| } xtensa_interface_internal; | ||||
|  | ||||
|   | ||||
| @@ -755,6 +755,19 @@ xtensa_interface_inout (xtensa_isa isa, xtensa_interface intf); | ||||
| extern int | ||||
| xtensa_interface_has_side_effect (xtensa_isa isa, xtensa_interface intf); | ||||
|  | ||||
|  | ||||
| /* Some interfaces may be related such that accessing one interface | ||||
|    has side effects on a set of related interfaces.  The interfaces | ||||
|    are partitioned into equivalence classes of related interfaces, and | ||||
|    each class is assigned a unique identifier number.  This function | ||||
|    returns the class identifier for an interface, or XTENSA_UNDEFINED | ||||
|    on error.  These identifiers can be compared to determine if two | ||||
|    interfaces are related; the specific values of the identifiers have | ||||
|    no particular meaning otherwise.  */ | ||||
|  | ||||
| extern int | ||||
| xtensa_interface_class_id (xtensa_isa isa, xtensa_interface intf); | ||||
|  | ||||
|  | ||||
| /* Functional Units.  */ | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user