Commit | Line | Data |
---|---|---|
b41db250 | 1 | /* Copyright (c) 1980 Regents of the University of California */ |
12044a7d | 2 | /* "@(#)astoks.H 4.4 %G%" */ |
b41db250 RH |
3 | /* |
4 | * Message to the wary: The order of tokens has been | |
5 | * hand optimized and assigned to that all switch statements | |
6 | * are implemented by a casel instruction on the VAX. | |
7 | * there are 4 switch statements that have to be worried about: | |
8 | * l) Per character switch in the character scanner (scan_dot_s) | |
9 | * 2) Per token switch in the buffer manager (yylex) | |
10 | * 3) Per keyword switch in the parser (yyparse) | |
11 | * 4) Leading token switch for argments to opcodes | |
12 | * | |
13 | * You can't just add new tokens willy-nilly; make sure that you | |
14 | * add them into the proper order! | |
15 | */ | |
16 | # define FIRSTTOKEN AWKFIXESME | |
17 | ||
18 | /* | |
19 | * Tokens between ISPACE and INSTn are used by the per keyword switch | |
20 | */ | |
21 | # define ISPACE AWKFIXESME | |
22 | # define IBYTE AWKFIXESME | |
23 | # define IWORD AWKFIXESME | |
24 | # define IINT AWKFIXESME | |
25 | # define ILONG AWKFIXESME | |
26 | # define IQUAD AWKFIXESME | |
27 | # define IOCTA AWKFIXESME | |
28 | # define IDATA AWKFIXESME | |
29 | # define IGLOBAL AWKFIXESME | |
30 | # define ISET AWKFIXESME | |
31 | # define ITEXT AWKFIXESME | |
32 | # define ICOMM AWKFIXESME | |
33 | # define ILCOMM AWKFIXESME | |
34 | # define IFFLOAT AWKFIXESME | |
35 | # define IDFLOAT AWKFIXESME | |
36 | # define IGFLOAT AWKFIXESME | |
37 | # define IHFLOAT AWKFIXESME | |
38 | # define IORG AWKFIXESME | |
39 | # define IASCII AWKFIXESME | |
40 | # define IASCIZ AWKFIXESME | |
41 | # define ILSYM AWKFIXESME | |
42 | # define IFILE AWKFIXESME | |
43 | # define ILINENO AWKFIXESME | |
44 | # define IABORT AWKFIXESME | |
45 | # define IFILL AWKFIXESME | |
46 | /* | |
47 | * Tokens between ISTAB and REG are used in the per token switch | |
48 | */ | |
49 | # define ISTAB AWKFIXESME | |
50 | # define ISTABSTR AWKFIXESME | |
51 | # define ISTABNONE AWKFIXESME | |
52 | # define ISTABDOT AWKFIXESME | |
53 | # define IJXXX AWKFIXESME | |
54 | # define IALIGN AWKFIXESME | |
55 | # define INST0 AWKFIXESME | |
56 | # define INSTn AWKFIXESME | |
57 | ||
58 | # define BFINT AWKFIXESME | |
59 | # define PARSEEOF AWKFIXESME | |
60 | # define ILINESKIP AWKFIXESME | |
61 | # define VOID AWKFIXESME | |
62 | # define SKIP AWKFIXESME | |
63 | # define INT AWKFIXESME | |
64 | # define BIGNUM AWKFIXESME | |
65 | # define NAME AWKFIXESME | |
66 | # define STRING AWKFIXESME | |
67 | /* | |
68 | * Tokens between SIZESPEC and REGOP are used in the instruction | |
69 | * argument switch | |
70 | */ | |
71 | # define SIZESPEC AWKFIXESME | |
72 | # define REG AWKFIXESME | |
73 | # define MUL AWKFIXESME | |
74 | # define LITOP AWKFIXESME | |
75 | # define LP AWKFIXESME | |
76 | # define MP AWKFIXESME | |
77 | /* | |
78 | * Tokens between REGOP and DIV are used in the per character switch | |
79 | */ | |
b41db250 RH |
80 | # define REGOP AWKFIXESME /*the percent sign*/ |
81 | # define NL AWKFIXESME | |
82 | # define SCANEOF AWKFIXESME | |
83 | # define BADCHAR AWKFIXESME | |
84 | # define SP AWKFIXESME | |
85 | # define ALPH AWKFIXESME | |
86 | # define DIG AWKFIXESME | |
87 | # define SQ AWKFIXESME | |
88 | # define DQ AWKFIXESME | |
89 | # define SH AWKFIXESME | |
90 | # define LSH AWKFIXESME | |
91 | # define RSH AWKFIXESME | |
92 | # define MINUS AWKFIXESME | |
93 | # define SIZEQUOTE AWKFIXESME | |
94 | /* | |
95 | * Tokens between XOR and RP are used at random (primarily by the | |
96 | * expression analyzer), and not used in any switch | |
97 | */ | |
98 | # define XOR AWKFIXESME | |
99 | # define DIV AWKFIXESME | |
100 | ||
101 | # define SEMI AWKFIXESME | |
102 | # define COLON AWKFIXESME | |
103 | # define PLUS AWKFIXESME | |
104 | # define IOR AWKFIXESME | |
105 | # define AND AWKFIXESME | |
106 | # define TILDE AWKFIXESME | |
107 | # define ORNOT AWKFIXESME | |
108 | # define CM AWKFIXESME | |
109 | # define LB AWKFIXESME | |
110 | # define RB AWKFIXESME | |
111 | # define RP AWKFIXESME | |
112 | ||
113 | # define LASTTOKEN AWKFIXESME |