Parametrized sizes for big or small machines using BORS macro
Added support for rcsid string from table.
This commit is contained in:
parent
4daed9da6a
commit
584b41a09e
|
@ -22,22 +22,31 @@ static char rcsid[]="$Header$";
|
||||||
* Author: Hans van Staveren
|
* Author: Hans van Staveren
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#ifdef vax | vax2 | vax4
|
||||||
|
#define BIG
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef BIG
|
||||||
|
#define BORS(x,y) x
|
||||||
|
#else
|
||||||
|
#define BORS(x,y) y
|
||||||
|
#endif
|
||||||
/* Tunable constants */
|
/* Tunable constants */
|
||||||
|
|
||||||
#define MAXALLREG 5 /* Maximum number of allocates per rule */
|
#define MAXALLREG 5 /* Maximum number of allocates per rule */
|
||||||
#define MAXREGS 32 /* Total number of registers */
|
#define MAXREGS BORS(36,32) /* Total number of registers */
|
||||||
#define MAXREGVARS 8 /* Maximum regvars per type */
|
#define MAXREGVARS 8 /* Maximum regvars per type */
|
||||||
#define MAXPROPS 16 /* Total number of register properties */
|
#define MAXPROPS 16 /* Total number of register properties */
|
||||||
#define MAXTOKENS 32 /* Different kind of tokens */
|
#define MAXTOKENS BORS(75,32) /* Different kind of tokens */
|
||||||
#define MAXSETS 80 /* Number of tokenexpressions definable */
|
#define MAXSETS BORS(100,80) /* Number of tokenexpressions definable */
|
||||||
#define MAXEMPATLEN 25 /* Maximum length of EM-pattern/replacement */
|
#define MAXEMPATLEN 25 /* Maximum length of EM-pattern/replacement */
|
||||||
#define TOKENSIZE 5 /* Maximum number of fields in token struct */
|
#define TOKENSIZE 5 /* Maximum number of fields in token struct */
|
||||||
#define MAXINSTANCE 120 /* Maximum number of different tokeninstances */
|
#define MAXINSTANCE BORS(175,120) /* Maximum number of different tokeninstances */
|
||||||
#define MAXSTRINGS 400 /* Maximum number of different codestrings */
|
#define MAXSTRINGS BORS(600,400)/* Maximum number of different codestrings */
|
||||||
#define MAXPATTERN 6000 /* Maximum number of bytes in pattern[] */
|
#define MAXPATTERN BORS(7000,6000) /* Maximum number of bytes in pattern[] */
|
||||||
#define MAXNODES 350 /* Maximum number of expression nodes */
|
#define MAXNODES BORS(450,350) /* Maximum number of expression nodes */
|
||||||
#define MAXMEMBERS 2 /* Maximum number of subregisters per reg */
|
#define MAXMEMBERS 2 /* Maximum number of subregisters per reg */
|
||||||
#define NMOVES 30 /* Maximum number of move definitions */
|
#define NMOVES BORS(50,30) /* Maximum number of move definitions */
|
||||||
#define MAXC1 20 /* Maximum of coercions type 1 */
|
#define MAXC1 20 /* Maximum of coercions type 1 */
|
||||||
#define MAXC2 20 /* Maximum of coercions type 2 */
|
#define MAXC2 20 /* Maximum of coercions type 2 */
|
||||||
#define MAXC3 20 /* Maximum of coercions type 3 */
|
#define MAXC3 20 /* Maximum of coercions type 3 */
|
||||||
|
@ -279,11 +288,17 @@ int rvnumbers[4][MAXREGVARS]; /* The register numbers */
|
||||||
%nonassoc '$'
|
%nonassoc '$'
|
||||||
%%
|
%%
|
||||||
machinespec
|
machinespec
|
||||||
: constants registersection tokensection
|
: rcsid constants registersection tokensection
|
||||||
{ inbetween(); }
|
{ inbetween(); }
|
||||||
expressionsection codesection movesection testsection stacksection
|
expressionsection codesection movesection testsection stacksection
|
||||||
;
|
;
|
||||||
|
|
||||||
|
rcsid
|
||||||
|
: /* empty */
|
||||||
|
| STRING
|
||||||
|
{ strlookup($1); }
|
||||||
|
;
|
||||||
|
|
||||||
constants
|
constants
|
||||||
: /* empty */
|
: /* empty */
|
||||||
| constants CIDENT '=' NUMBER
|
| constants CIDENT '=' NUMBER
|
||||||
|
|
Loading…
Reference in a new issue