Binutils portion of fix for syntax array elements when max
operands is greater than 127. 2001-02-02 Patrick Macdonald <patrickm@redhat.com> * cgen.h (CGEN_SYNTAX_CHAR_TYPE): Typedef as unsigned short. (CGEN_MAX_SYNTAX_ELEMENTS): Rename from CGEN_MAX_SYNTAX_BYTES. (CGEN_SYNTAX): Define using CGEN_MAX_SYNTAX_ELEMENTS. * fr30-desc.h: Regenerate with CGEN_MAX_SYNTAX_ELEMENTS. * m32r-desc.h: Regenerate.
This commit is contained in:
parent
86ddecc5fc
commit
0715dc88cf
5 changed files with 18 additions and 11 deletions
|
@ -736,25 +736,21 @@ typedef struct
|
|||
the data is recorded in the parse/insert/extract/print switch statements. */
|
||||
|
||||
/* This should be at least as large as necessary for any target. */
|
||||
#define CGEN_MAX_SYNTAX_BYTES 40
|
||||
#define CGEN_MAX_SYNTAX_ELEMENTS 40
|
||||
|
||||
/* A target may know its own precise maximum. Assert that it falls below
|
||||
the above limit. */
|
||||
#ifdef CGEN_ACTUAL_MAX_SYNTAX_BYTES
|
||||
#if CGEN_ACTUAL_MAX_SYNTAX_BYTES > CGEN_MAX_SYNTAX_BYTES
|
||||
#error "CGEN_ACTUAL_MAX_SYNTAX_BYTES too high - enlarge CGEN_MAX_SYNTAX_BYTES"
|
||||
#ifdef CGEN_ACTUAL_MAX_SYNTAX_ELEMENTS
|
||||
#if CGEN_ACTUAL_MAX_SYNTAX_ELEMENTS > CGEN_MAX_SYNTAX_ELEMENTS
|
||||
#error "CGEN_ACTUAL_MAX_SYNTAX_ELEMENTS too high - enlarge CGEN_MAX_SYNTAX_ELEMENTS"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(MAX_OPERANDS) || MAX_OPERANDS <= 127
|
||||
typedef unsigned char CGEN_SYNTAX_CHAR_TYPE;
|
||||
#else
|
||||
typedef unsigned short CGEN_SYNTAX_CHAR_TYPE;
|
||||
#endif
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CGEN_SYNTAX_CHAR_TYPE syntax[CGEN_MAX_SYNTAX_BYTES];
|
||||
CGEN_SYNTAX_CHAR_TYPE syntax[CGEN_MAX_SYNTAX_ELEMENTS];
|
||||
} CGEN_SYNTAX;
|
||||
|
||||
#define CGEN_SYNTAX_STRING(syn) (syn->syntax)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue