Fix for PR1654 - implement "movstrsi" pattern to copy simple blocks of memory.
[official-gcc.git] / gcc / ch / parse.h
blob6b6b159c498206e831fd29f0b63605f2d97977e3
1 typedef union {
2 long itype;
3 tree ttype;
4 enum tree_code code;
5 char *filename;
6 int lineno;
7 } YYSTYPE;
8 extern YYSTYPE yylval;
10 enum terminal
12 /*EOF = 0,*/
13 last_char_nonterminal = 256,
14 /* Please keep these in alphabetic order, for easier reference and updating.
16 ABSOLUTE, ACCESS, AFTER, ALL, ALLOCATE, AND, ANDIF, ARRAY,
17 ARROW, ASGN, ASM_KEYWORD, ASSERT, ASSOCIATION, AT,
18 BASED, BEGINTOKEN, BIN, BIT, BITSTRING, BODY, BOOLS, BUFFER,
19 BUFFERNAME, BUFFER_CODE, BY,
20 CALL, CASE, CAUSE, CDDEL, CHAR, CHARS, COLON, COMMA, CONCAT, CONST,
21 CONTINUE, CYCLE,
22 DCL, DELAY, DIV, DO, DOT, DOWN, DYNAMIC,
23 ELSE, ELSIF, END, ENTRY, EQL, ESAC, EVENT, EVENT_CODE, EVER,
24 EXCEPTIONS, EXIT,
25 EXPR, /* an expression that has been pushed back */
26 FI, FLOATING, FOR, FORBID,
27 GENERAL, GOTO, GRANT, GT, GTE,
28 HEADEREL,
29 IF, IGNORED_DIRECTIVE, IN, INIT, INOUT, INLINE,
30 LC, LOC, LPC, LPRN, LT, LTE,
31 MOD, MODULE, MUL,
32 NAME, NE, NEW, NEWMODE, NONREF, NOT, NUMBER,
33 OD, OF, ON, OR, ORIF,
34 PARAMATTR, PERVASIVE, PLUS, POWERSET,
35 PREFIXED, PRIORITY, PROC, PROCESS,
36 RANGE, RC, READ, READTEXT, RECEIVE, RECURSIVE, REF, REGION, REM,
37 RESULT, RETURN, RETURNS, ROUND, ROW, RPC, RPRN, RPRN_COLON,
38 SAME, SC, SEIZE, SEND, SET, SHARED, SIGNAL, SIGNALNAME, SIMPLE,
39 SINGLECHAR, SPEC, START, STATIC, STEP, STOP, STREAM, STRING,
40 STRUCT, SUB, SYN, SYNMODE,
41 TERMINATE, TEXT, THEN, THIS, TIMEOUT, TO, TRUNC, TYPENAME,
42 UP, USAGE,
43 VARYING,
44 WHERE, WHILE, WITH,
45 XOR,
47 /* These tokens only used within ch-lex.l to process compiler directives */
48 ALL_STATIC_OFF, ALL_STATIC_ON, EMPTY_OFF, EMPTY_ON,
49 GRANT_FILE_SIZE, PROCESS_TYPE_TOKEN, RANGE_OFF, RANGE_ON,
50 SEND_BUFFER_DEFAULT_PRIORITY, SEND_SIGNAL_DEFAULT_PRIORITY,
51 SIGNAL_CODE, SIGNAL_MAX_LENGTH, USE_SEIZE_FILE, USE_SEIZE_FILE_RESTRICTED,
52 USE_GRANT_FILE,
54 /* These tokens are recognized, and reported as errors, by the lexer. */
55 CONTEXT, REMOTE,
57 /* These tokens are recognized in the lexer, and completely
58 ignored. They represent unimplemented features in the
59 current version of GNU CHILL. */
60 NOPACK, PACK,
62 /* These tokens are recognized in the lexer, and returned
63 as reserved tokens, to prevent users from using them
64 accidently (they'll cause a parser syntax error). They
65 represent unimplemented features in the current version
66 of GNU CHILL. */
67 POS, /*STEP, ROW,*/
69 /* This token is passed back to the parser when an the main
70 input file (not a seize file) has reached end-of-file. */
71 END_PASS_1,
73 EMPTY, UMINUS,
75 dummy_last_terminal