USG_PG3/usr/source/lil/com
#define NSIZE 8 /* size of identifier names */
#define SPSIZE 400 /* size of symbol table */
#define NULL 0
#define FALSE 0
#define TRUE 1
#define ERR 2 /* created non-terminal */
#define EOF 0 /* terminals */
#define DECL 3
#define COMMA 4
#define LPAREN 5
#define RPAREN 6
#define QUOTES 7
#define SCOLON 8
#define LBRAK 9
#define RBRAK 10
#define POP 11
#define OP 12
#define ANDOP 13
#define OROP 14
#define ROP 15
#define STRING 16
#define IDENT 17
#define GOTO 18
#define IF 19
#define ELSE 20
#define DO 21
#define BREAK 22
#define WHILE 23
#define KOND 24 /* created address modes */
#define LABEL 25
#define REG 32
#define RDEC 40
#define RINC 48
#define CON 56
#define MEM 64
#define MIDX 72 /* l.s. 3 bits hold index value */
#define IREG 80 /* indirect-> add 48 */
#define IRDEC 88
#define IRINC 96
#define ICON 104
#define IMEM 112
#define IMIDX 120 /* l.s. 3 bits hold index value */
#define I 48
#define R 7
#define CRSF 128 /* created symbol */
#define SKPF 64 /* skip initiating stack entry */
#define PUBF 32 /* public symbol or used stack entry */
#define DEFF 16 /* defined symbol or immediate stack entry */
#define DCLF 8 /* declared symbol or defining stack entry */
#define BYTF 4 /* byte */
#define RDEF 2 /* redefinable symbol */
#define BCCF 1 /* bad condition code generated */
#define ATTR 4
#define NOP 0 /* operator values */
#define GOESTO 1
#define PLUS 2
#define MINUS 3
#define NOT 4
#define OR 5
#define AND 6
#define ANDNOT 7
#define XOR 8
#define ROTATE 9
#define SHIFT 10
#define GETSNOT 11
#define GETSMI 12
#define TIMES 13
#define DIVIDE 14
#define TEST 15
#define TESTAND 16
#define GETS 17
#define DSHIFT 18
#define SROTATE 19
#define PUSH 20
#define BYTE 21
#define WORD 23
#define GLOBAL 24
#define LOCAL 25
#define SIZE 26
#define CAT 27
#define MEMOP 30
#define REGOP 31
#define SYS 40
#define JSR 41
#define RTS 42
#define GE 4 /* m.s. 8 bits of conditional branch */
#define GT 6
#define NE 2
#define EQ 3
#define LT 5
#define LE 7
#define HI 0202
#define HIS 0206
#define LO 0207
#define LOS 0203
#define N 0201
#define Z 3
#define V 0205
#define C 0207
#define call jsr r5
#define return rts pc
#define args 4[r5]
#define auto 0[sp]
"reg 0(a, b, c, d, e, f)";
"2[sp](arg, arg2)";
"ATSIZE = &(mem 0(byte flags sizeof 1, byte type sizeof 1,
value, bias, size, prev))";
"SYMSIZE = &(mem 0(sat sizeof ATSIZE, name sizeof NSIZE))";
"TOKSIZE = &(mem 0(tat sizeof ATSIZE, tbran, fbran,
start, sbias, state))";