Don't do SRA for unions with long double fields.
[oota-llvm.git] / lib / AsmParser / Lexer.cpp.cvs
1 #define yy_create_buffer llvmAsm_create_buffer
2 #define yy_delete_buffer llvmAsm_delete_buffer
3 #define yy_scan_buffer llvmAsm_scan_buffer
4 #define yy_scan_string llvmAsm_scan_string
5 #define yy_scan_bytes llvmAsm_scan_bytes
6 #define yy_flex_debug llvmAsm_flex_debug
7 #define yy_init_buffer llvmAsm_init_buffer
8 #define yy_flush_buffer llvmAsm_flush_buffer
9 #define yy_load_buffer_state llvmAsm_load_buffer_state
10 #define yy_switch_to_buffer llvmAsm_switch_to_buffer
11 #define yyin llvmAsmin
12 #define yyleng llvmAsmleng
13 #define yylex llvmAsmlex
14 #define yyout llvmAsmout
15 #define yyrestart llvmAsmrestart
16 #define yytext llvmAsmtext
17 #define yylineno llvmAsmlineno
18
19 #line 20 "Lexer.cpp"
20 /* A lexical scanner generated by flex */
21
22 /* Scanner skeleton version:
23  * $Header: /cvs/root/flex/flex/skel.c,v 1.2 2004/05/07 00:28:17 jkh Exp $
24  */
25
26 #define FLEX_SCANNER
27 #define YY_FLEX_MAJOR_VERSION 2
28 #define YY_FLEX_MINOR_VERSION 5
29
30 #include <stdio.h>
31
32
33 /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
34 #ifdef c_plusplus
35 #ifndef __cplusplus
36 #define __cplusplus
37 #endif
38 #endif
39
40
41 #ifdef __cplusplus
42
43 #include <stdlib.h>
44 #include <unistd.h>
45
46 /* Use prototypes in function declarations. */
47 #define YY_USE_PROTOS
48
49 /* The "const" storage-class-modifier is valid. */
50 #define YY_USE_CONST
51
52 #else   /* ! __cplusplus */
53
54 #if __STDC__
55
56 #define YY_USE_PROTOS
57 #define YY_USE_CONST
58
59 #endif  /* __STDC__ */
60 #endif  /* ! __cplusplus */
61
62 #ifdef __TURBOC__
63  #pragma warn -rch
64  #pragma warn -use
65 #include <io.h>
66 #include <stdlib.h>
67 #define YY_USE_CONST
68 #define YY_USE_PROTOS
69 #endif
70
71 #ifdef YY_USE_CONST
72 #define yyconst const
73 #else
74 #define yyconst
75 #endif
76
77
78 #ifdef YY_USE_PROTOS
79 #define YY_PROTO(proto) proto
80 #else
81 #define YY_PROTO(proto) ()
82 #endif
83
84 /* Returned upon end-of-file. */
85 #define YY_NULL 0
86
87 /* Promotes a possibly negative, possibly signed char to an unsigned
88  * integer for use as an array index.  If the signed char is negative,
89  * we want to instead treat it as an 8-bit unsigned char, hence the
90  * double cast.
91  */
92 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
93
94 /* Enter a start condition.  This macro really ought to take a parameter,
95  * but we do it the disgusting crufty way forced on us by the ()-less
96  * definition of BEGIN.
97  */
98 #define BEGIN yy_start = 1 + 2 *
99
100 /* Translate the current start state into a value that can be later handed
101  * to BEGIN to return to the state.  The YYSTATE alias is for lex
102  * compatibility.
103  */
104 #define YY_START ((yy_start - 1) / 2)
105 #define YYSTATE YY_START
106
107 /* Action number for EOF rule of a given start state. */
108 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
109
110 /* Special action meaning "start processing a new file". */
111 #define YY_NEW_FILE yyrestart( yyin )
112
113 #define YY_END_OF_BUFFER_CHAR 0
114
115 /* Size of default input buffer. */
116 #define YY_BUF_SIZE (16384*64)
117
118 typedef struct yy_buffer_state *YY_BUFFER_STATE;
119
120 extern int yyleng;
121 extern FILE *yyin, *yyout;
122
123 #define EOB_ACT_CONTINUE_SCAN 0
124 #define EOB_ACT_END_OF_FILE 1
125 #define EOB_ACT_LAST_MATCH 2
126
127 /* The funky do-while in the following #define is used to turn the definition
128  * int a single C statement (which needs a semi-colon terminator).  This
129  * avoids problems with code like:
130  *
131  *      if ( condition_holds )
132  *              yyless( 5 );
133  *      else
134  *              do_something_else();
135  *
136  * Prior to using the do-while the compiler would get upset at the
137  * "else" because it interpreted the "if" statement as being all
138  * done when it reached the ';' after the yyless() call.
139  */
140
141 /* Return all but the first 'n' matched characters back to the input stream. */
142
143 #define yyless(n) \
144         do \
145                 { \
146                 /* Undo effects of setting up yytext. */ \
147                 *yy_cp = yy_hold_char; \
148                 YY_RESTORE_YY_MORE_OFFSET \
149                 yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
150                 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
151                 } \
152         while ( 0 )
153
154 #define unput(c) yyunput( c, yytext_ptr )
155
156 /* The following is because we cannot portably get our hands on size_t
157  * (without autoconf's help, which isn't available because we want
158  * flex-generated scanners to compile on their own).
159  */
160 typedef unsigned int yy_size_t;
161
162
163 struct yy_buffer_state
164         {
165         FILE *yy_input_file;
166
167         char *yy_ch_buf;                /* input buffer */
168         char *yy_buf_pos;               /* current position in input buffer */
169
170         /* Size of input buffer in bytes, not including room for EOB
171          * characters.
172          */
173         yy_size_t yy_buf_size;
174
175         /* Number of characters read into yy_ch_buf, not including EOB
176          * characters.
177          */
178         int yy_n_chars;
179
180         /* Whether we "own" the buffer - i.e., we know we created it,
181          * and can realloc() it to grow it, and should free() it to
182          * delete it.
183          */
184         int yy_is_our_buffer;
185
186         /* Whether this is an "interactive" input source; if so, and
187          * if we're using stdio for input, then we want to use getc()
188          * instead of fread(), to make sure we stop fetching input after
189          * each newline.
190          */
191         int yy_is_interactive;
192
193         /* Whether we're considered to be at the beginning of a line.
194          * If so, '^' rules will be active on the next match, otherwise
195          * not.
196          */
197         int yy_at_bol;
198
199         /* Whether to try to fill the input buffer when we reach the
200          * end of it.
201          */
202         int yy_fill_buffer;
203
204         int yy_buffer_status;
205 #define YY_BUFFER_NEW 0
206 #define YY_BUFFER_NORMAL 1
207         /* When an EOF's been seen but there's still some text to process
208          * then we mark the buffer as YY_EOF_PENDING, to indicate that we
209          * shouldn't try reading from the input source any more.  We might
210          * still have a bunch of tokens to match, though, because of
211          * possible backing-up.
212          *
213          * When we actually see the EOF, we change the status to "new"
214          * (via yyrestart()), so that the user can continue scanning by
215          * just pointing yyin at a new input file.
216          */
217 #define YY_BUFFER_EOF_PENDING 2
218         };
219
220 static YY_BUFFER_STATE yy_current_buffer = 0;
221
222 /* We provide macros for accessing buffer states in case in the
223  * future we want to put the buffer states in a more general
224  * "scanner state".
225  */
226 #define YY_CURRENT_BUFFER yy_current_buffer
227
228
229 /* yy_hold_char holds the character lost when yytext is formed. */
230 static char yy_hold_char;
231
232 static int yy_n_chars;          /* number of characters read into yy_ch_buf */
233
234
235 int yyleng;
236
237 /* Points to current character in buffer. */
238 static char *yy_c_buf_p = (char *) 0;
239 static int yy_init = 1;         /* whether we need to initialize */
240 static int yy_start = 0;        /* start state number */
241
242 /* Flag which is used to allow yywrap()'s to do buffer switches
243  * instead of setting up a fresh yyin.  A bit of a hack ...
244  */
245 static int yy_did_buffer_switch_on_eof;
246
247 void yyrestart YY_PROTO(( FILE *input_file ));
248
249 void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
250 void yy_load_buffer_state YY_PROTO(( void ));
251 YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
252 void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
253 void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
254 void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
255 #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
256
257 YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
258 YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
259 YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
260
261 static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
262 static inline void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
263 static void yy_flex_free YY_PROTO(( void * ));
264
265 #define yy_new_buffer yy_create_buffer
266
267 #define yy_set_interactive(is_interactive) \
268         { \
269         if ( ! yy_current_buffer ) \
270                 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
271         yy_current_buffer->yy_is_interactive = is_interactive; \
272         }
273
274 #define yy_set_bol(at_bol) \
275         { \
276         if ( ! yy_current_buffer ) \
277                 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
278         yy_current_buffer->yy_at_bol = at_bol; \
279         }
280
281 #define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
282
283
284 #define YY_USES_REJECT
285
286 #define yywrap() 1
287 #define YY_SKIP_YYWRAP
288 typedef unsigned char YY_CHAR;
289 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
290 typedef int yy_state_type;
291 extern int yylineno;
292 int yylineno = 1;
293 extern char *yytext;
294 #define yytext_ptr yytext
295
296 static yy_state_type yy_get_previous_state YY_PROTO(( void ));
297 static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
298 static int yy_get_next_buffer YY_PROTO(( void ));
299 static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
300
301 /* Done after the current pattern has been matched and before the
302  * corresponding action - sets up yytext.
303  */
304 #define YY_DO_BEFORE_ACTION \
305         yytext_ptr = yy_bp; \
306         yyleng = (int) (yy_cp - yy_bp); \
307         yy_hold_char = *yy_cp; \
308         *yy_cp = '\0'; \
309         yy_c_buf_p = yy_cp;
310
311 #define YY_NUM_RULES 152
312 #define YY_END_OF_BUFFER 153
313 static yyconst short int yy_acclist[233] =
314     {   0,
315       153,  151,  152,  150,  151,  152,  150,  152,  151,  152,
316       151,  152,  151,  152,  151,  152,  151,  152,  151,  152,
317       140,  151,  152,  140,  151,  152,    1,  151,  152,  151,
318       152,  151,  152,  151,  152,  151,  152,  151,  152,  151,
319       152,  151,  152,  151,  152,  151,  152,  151,  152,  151,
320       152,  151,  152,  151,  152,  151,  152,  151,  152,  151,
321       152,  151,  152,  151,  152,  151,  152,  151,  152,  151,
322       152,  151,  152,  151,  152,  137,  135,  133,  143,  141,
323       145,  140,    1,  134,  144,  119,   38,   82,   64,   83,
324        78,   25,  137,  139,  133,  145,   22,  145,  146,  138,
325
326       134,   65,   77,   36,   39,    3,   67,   92,   97,   95,
327        96,   94,   93,   98,  102,  118,   87,   85,   74,   86,
328        84,   66,  100,   91,   89,   90,   88,  101,   99,   79,
329       136,  145,  145,  147,  148,  149,   76,  103,   81,   70,
330       126,   73,   80,  127,   75,   52,   24,  142,   69,  106,
331        72,   47,   26,    4,   62,   68,   71,   55,   12,  105,
332       145,   34,   32,    2,   51,    5,   56,   59,  108,   46,
333        61,   53,  128,  104,   23,   54,  125,   41,    7,   57,
334        40,  112,  111,    8,   16,  121,  124,   35,   63,  116,
335       110,  120,   27,   28,  109,  122,  117,  115,    6,   29,
336
337       107,   50,   33,   44,   45,    9,   19,   10,  113,   11,
338        49,   48,  114,   31,   58,   13,   15,   14,   60,   17,
339        30,   37,   18,  123,   20,  129,  131,  132,   42,  130,
340        43,   21
341     } ;
342
343 static yyconst short int yy_accept[607] =
344     {   0,
345         1,    1,    1,    2,    4,    7,    9,   11,   13,   15,
346        17,   19,   21,   24,   27,   30,   32,   34,   36,   38,
347        40,   42,   44,   46,   48,   50,   52,   54,   56,   58,
348        60,   62,   64,   66,   68,   70,   72,   74,   76,   76,
349        77,   77,   78,   78,   79,   80,   80,   81,   81,   82,
350        83,   83,   84,   84,   85,   86,   86,   86,   86,   86,
351        86,   86,   86,   87,   87,   87,   88,   88,   88,   88,
352        88,   88,   88,   89,   89,   89,   89,   89,   89,   89,
353        89,   89,   89,   89,   90,   90,   90,   90,   90,   90,
354        90,   90,   90,   90,   91,   91,   91,   91,   91,   91,
355
356        91,   91,   92,   92,   92,   92,   92,   92,   92,   92,
357        92,   92,   92,   92,   92,   92,   92,   92,   92,   92,
358        92,   93,   93,   93,   93,   93,   93,   93,   93,   93,
359        93,   93,   93,   93,   93,   93,   93,   94,   94,   95,
360        96,   97,   98,   99,   99,  100,  100,  100,  100,  100,
361       101,  102,  103,  103,  103,  104,  104,  104,  105,  105,
362       105,  105,  105,  106,  106,  106,  106,  106,  106,  106,
363       106,  106,  107,  107,  107,  107,  107,  107,  107,  107,
364       107,  107,  107,  107,  107,  107,  107,  107,  107,  107,
365       107,  107,  107,  107,  107,  107,  107,  108,  108,  108,
366
367       108,  108,  108,  109,  110,  111,  112,  113,  114,  114,
368       115,  116,  116,  116,  116,  117,  117,  117,  117,  117,
369       117,  118,  119,  120,  120,  120,  120,  120,  121,  122,
370       122,  122,  123,  123,  123,  123,  123,  123,  123,  123,
371       123,  124,  125,  126,  126,  127,  128,  128,  129,  130,
372       130,  130,  130,  130,  130,  130,  130,  130,  131,  131,
373       131,  132,  133,  133,  133,  133,  134,  135,  136,  137,
374       137,  137,  137,  137,  138,  138,  138,  138,  139,  139,
375       139,  139,  139,  139,  139,  139,  139,  139,  139,  139,
376       139,  139,  140,  141,  141,  141,  141,  141,  141,  142,
377
378       143,  143,  143,  143,  144,  144,  144,  144,  144,  144,
379       144,  144,  145,  146,  146,  146,  147,  147,  147,  147,
380       148,  148,  148,  148,  148,  149,  150,  150,  150,  151,
381       151,  151,  151,  151,  152,  153,  153,  153,  154,  154,
382       154,  154,  155,  155,  156,  157,  157,  157,  157,  157,
383       158,  158,  159,  159,  160,  160,  160,  161,  162,  163,
384       164,  164,  164,  165,  165,  166,  166,  166,  166,  166,
385       166,  166,  166,  166,  166,  166,  166,  167,  167,  168,
386       169,  170,  170,  170,  170,  170,  170,  170,  171,  171,
387       171,  171,  171,  172,  172,  172,  172,  172,  172,  172,
388
389       172,  172,  172,  172,  172,  172,  172,  173,  173,  173,
390       173,  173,  174,  174,  174,  174,  174,  175,  175,  176,
391       176,  176,  176,  176,  176,  176,  176,  176,  176,  177,
392       178,  178,  178,  179,  179,  179,  179,  180,  180,  180,
393       180,  181,  181,  181,  182,  183,  184,  184,  184,  185,
394       186,  186,  186,  186,  187,  187,  188,  189,  189,  189,
395       189,  190,  190,  190,  190,  190,  191,  191,  191,  191,
396       192,  193,  194,  194,  195,  196,  196,  197,  198,  198,
397       198,  198,  198,  198,  198,  198,  199,  199,  199,  200,
398       201,  201,  201,  201,  201,  201,  202,  202,  202,  202,
399
400       202,  202,  203,  203,  203,  203,  203,  203,  204,  204,
401       204,  205,  205,  205,  205,  205,  205,  205,  206,  206,
402       206,  207,  207,  207,  207,  207,  208,  208,  208,  208,
403       209,  210,  211,  212,  213,  213,  213,  214,  214,  214,
404       214,  214,  215,  215,  216,  216,  216,  217,  217,  218,
405       219,  219,  219,  219,  219,  220,  221,  221,  221,  221,
406       221,  221,  221,  221,  222,  222,  222,  222,  222,  222,
407       223,  223,  223,  223,  223,  223,  224,  224,  224,  224,
408       224,  224,  225,  225,  225,  225,  225,  225,  225,  225,
409       226,  226,  226,  226,  226,  227,  228,  229,  229,  230,
410
411       230,  231,  232,  232,  233,  233
412     } ;
413
414 static yyconst int yy_ec[256] =
415     {   0,
416         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
417         1,    1,    2,    1,    1,    1,    1,    1,    1,    1,
418         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
419         1,    2,    1,    4,    1,    5,    6,    1,    1,    1,
420         1,    1,    7,    1,    8,    9,    1,   10,   11,   12,
421        13,   13,   13,   14,   13,   15,   13,   16,   17,    1,
422         1,    1,    1,   18,   19,   19,   19,   19,   20,   19,
423         5,    5,    5,    5,   21,   22,   23,    5,    5,    5,
424         5,    5,    5,    5,    5,    5,    5,    5,    5,    5,
425         1,    1,    1,    1,   24,    1,   25,   26,   27,   28,
426
427        29,   30,   31,   32,   33,    5,   34,   35,   36,   37,
428        38,   39,   40,   41,   42,   43,   44,   45,   46,   47,
429        48,   49,    1,    1,    1,    1,    1,    1,    1,    1,
430         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
431         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
432         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
433         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
434         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
435         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
436         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
437
438         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
439         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
440         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
441         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
442         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
443         1,    1,    1,    1,    1
444     } ;
445
446 static yyconst int yy_meta[50] =
447     {   0,
448         1,    1,    2,    3,    4,    1,    5,    6,    4,    7,
449         7,    7,    7,    7,    7,    8,    1,    1,    4,    9,
450         4,    4,    4,    4,    4,    4,    4,    4,    9,    4,
451         4,    4,    4,    4,    4,    4,    4,    4,    4,    4,
452         4,    4,    4,    4,    4,    4,    4,    4,    4
453     } ;
454
455 static yyconst short int yy_base[617] =
456     {   0,
457         0,    0, 1381, 1382, 1382, 1382, 1376, 1363,   46,   52,
458        58,   66,   74, 1331,    0,   87,   76,   79,   78,   94,
459        77,  106,  109,   63,  138,  130,  141,  140,  151,  155,
460       110,  189,  175,  226,  145,  114,   38,  144, 1373, 1382,
461      1360, 1382, 1371,    0,  233,  259,  265,  119,  303, 1327,
462       323,    0, 1369,    0,  271,  146,  160,  161,   39,  165,
463       188,   64, 1356,   36,  124,  187,  190,   93,  199,  193,
464       195,  221, 1355,  121,  218,  215,  225,  224,  277,  236,
465       248,  271,  273,  175,  274,  283,  240,  284,  278,  126,
466       276,  279,  292,   35,  314,  306,  289,  331,  338,  340,
467
468       315,  343,  345,  341,  346,  347,  348,  349,  350,  359,
469       356,  354,  364,  361,  371,  363,  377,  381,  386,  389,
470      1354,  392,  393,  395,  394,  397,  396,  400,  417,  402,
471       280,  419,  357,  194,  401,  406, 1353, 1364, 1382,    0,
472       395, 1351,    0,  457,  427,  464,  485,  506, 1362, 1382,
473         0, 1349,  435,  421, 1348,  428,  440, 1347,  405,  511,
474       512,  445, 1346,  513,  446,  514,  466,  469,  471,  524,
475       526, 1345,  527,  506,  507,  470,  528,  529,  286,  508,
476       531,  530,  533,  535,  542,  544,  547,  548,  549,  551,
477       555,  407,  558,  559,  563,  564, 1344,  566,  569,  565,
478
479       574,  571, 1343, 1342, 1341, 1340, 1339, 1338,  572, 1337,
480      1336,  575,  577,  579, 1335,  613,  585,  586,  581,  591,
481      1334, 1333, 1332,  587,  589,  598,  599, 1331, 1330,  615,
482       580, 1329,  603,  620,  628,  631,  629,  632,  633,  634,
483      1328, 1327, 1326,  636, 1325, 1324,  637, 1323, 1322,  638,
484       640,  641,  647,  648,  655,  649,  654, 1321,  659,  665,
485      1382,  662,  500,  674,  685,  687,    0,    0,    0,  674,
486       680,  682,  683, 1320,  684,  685,  687, 1319,  686,  688,
487       689,  690,  691,  696,  695,  698,  702,  703,  707,  709,
488       714, 1318, 1317,  710,  720,  711,  717,  723, 1316, 1315,
489
490       727,  724,  729, 1314,  732,  730,  731,  735,  734,  739,
491       740, 1313, 1312,  741,  748, 1311,  736,  744,  749, 1310,
492       750,  754,  759,  760,    0, 1309,  764,  765,  783,  761,
493       773,  774,  766, 1308, 1307,  777,  784, 1306,  785,  788,
494       789, 1305,  791, 1304, 1303,  792,  793,  794,  796, 1302,
495       799, 1301,  800, 1300,  804,  809,  825,  837, 1299, 1298,
496       801,  816, 1297,  813, 1296,  829,  805,  837,  819,  838,
497       842,  820,  841,  845,  847,  848, 1295,  849, 1294, 1293,
498      1292,  850,  853,  854,  856,  855,  857, 1291,  861,  862,
499       863,  866, 1290,  871,  865,  872,  873,  877,  880,  881,
500
501       884,  887,  889,  890,  891,  909, 1382,  900,  899,  893,
502       902, 1289,  901,  903,  904,  908, 1288,  909, 1287,  911,
503       914,  920,  910,  928,  915,  923,  929,  947, 1382, 1286,
504       931,  936, 1285,  938,  939,  940, 1284,  941,  943,  944,
505      1283,  947,  945, 1282, 1281, 1280,  946,  949, 1279, 1278,
506       960,  952,  958, 1277,  964, 1276, 1275,  962,  968,  970,
507      1274,  979,  976,  977,  978, 1273,  981,  982,  980, 1272,
508      1271, 1270,  815, 1269, 1268,  984, 1263, 1260,  983,  986,
509       990,  992,  987, 1001,  995, 1257,  997, 1005, 1245, 1242,
510      1006, 1008, 1009, 1010, 1013, 1230, 1015, 1011, 1017, 1019,
511
512      1021, 1227, 1020, 1023, 1042, 1032, 1022, 1217, 1025, 1037,
513      1214, 1040, 1043, 1047, 1046, 1057, 1053, 1211, 1048, 1055,
514      1204, 1056, 1058, 1061, 1063, 1192, 1062, 1065, 1066, 1191,
515      1190, 1189, 1188, 1187, 1068, 1071, 1186, 1069, 1078, 1072,
516      1077, 1184, 1080, 1182, 1090, 1092, 1181, 1074, 1180, 1179,
517      1093, 1095, 1096, 1097, 1177, 1174, 1100, 1098, 1103, 1105,
518      1104, 1107, 1106, 1173, 1110, 1112, 1116, 1118, 1119, 1170,
519      1120, 1121, 1122, 1130, 1133, 1169, 1127, 1135, 1136, 1137,
520      1142,  821, 1144, 1143, 1138, 1145, 1147, 1148, 1151,  600,
521      1153, 1156, 1150, 1158,  597,  487,  404, 1160,  360, 1165,
522
523       281,  234, 1168,   90, 1382, 1209, 1215, 1222, 1231, 1238,
524      1247, 1253, 1262, 1268, 1271, 1276
525     } ;
526
527 static yyconst short int yy_def[617] =
528     {   0,
529       605,    1,  605,  605,  605,  605,  606,  607,  608,  605,
530       607,  607,  607,   13,  609,  610,  607,  607,  607,  607,
531       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
532       607,  607,  607,  607,  607,  607,  607,  607,  606,  605,
533       607,  605,  611,  612,  605,  605,   13,  607,  607,   13,
534        49,  609,  613,  614,  605,  607,  607,  607,  607,  607,
535       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
536       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
537       607,  607,  607,   25,  607,  607,  607,  607,  607,  607,
538       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
539
540       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
541       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
542       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
543       607,  607,  607,  607,  607,  607,  605,  611,  605,  612,
544       615,  607,   49,  607,   51,   49,   49,   49,  613,  605,
545       614,  607,  607,  607,  607,  607,  607,  607,  607,  607,
546       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
547       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
548       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
549       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
550
551       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
552       607,  607,  607,  607,  607,   49,  607,  607,  607,  607,
553       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
554       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
555       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
556       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
557       605,  615,  616,  605,  144,  144,  146,  147,  148,  607,
558       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
559       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
560       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
561
562       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
563       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
564       607,  607,  607,  607,  216,  607,  607,  607,  607,  607,
565       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
566       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
567       607,  607,  607,  607,  607,  607,  607,  605,  607,  607,
568       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
569       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
570       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
571       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
572
573       607,  607,  607,  607,  607,  605,  605,  607,  607,  607,
574       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
575       607,  607,  607,  607,  607,  607,  607,  605,  605,  607,
576       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
577       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
578       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
579       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
580       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
581       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
582       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
583
584       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
585       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
586       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
587       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
588       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
589       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
590       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
591       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
592       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
593       607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
594
595       607,  607,  607,  607,    0,  605,  605,  605,  605,  605,
596       605,  605,  605,  605,  605,  605
597     } ;
598
599 static yyconst short int yy_nxt[1432] =
600     {   0,
601         4,    5,    6,    7,    8,    9,   10,   11,   12,   13,
602        14,   14,   14,   14,   14,    4,   15,   16,    8,    8,
603         8,    8,    8,    8,   17,   18,   19,   20,   21,   22,
604        23,   24,   25,    8,   26,   27,   28,   29,   30,    8,
605        31,   32,   33,   34,   35,   36,   37,    8,   38,   43,
606        42,   42,  134,   42,   42,   45,   45,   45,   45,   45,
607        45,   46,   46,   46,   46,   46,   46,   47,   47,   47,
608        47,   47,   47,   42,   48,  135,  198,  156,   42,   42,
609       161,   42,   49,   50,   50,   50,   50,   50,   50,   42,
610        53,   42,   42,   42,   42,   83,   55,   55,   55,   55,
611
612        55,   55,   65,   56,   66,   42,  160,   61,   42,   42,
613        57,   62,   58,   72,   59,   67,   73,   60,   68,   63,
614        51,   42,   69,   74,   42,   42,   64,  142,   70,   42,
615        75,   71,   76,   77,   42,  166,   42,   81,  107,   42,
616        78,   42,  133,   82,   79,   42,   80,   84,   84,   84,
617        84,   84,   84,   42,   87,   42,   42,  194,  162,   42,
618        42,   42,   88,  173,   85,   91,   42,   89,   94,  131,
619        42,   90,  136,  152,   86,   42,   42,   95,   92,   97,
620        42,   98,  132,   96,   93,   99,  103,  100,  155,  101,
621        42,  102,  153,  104,  154,  105,  157,  106,  108,  119,
622
623       158,   41,   42,   42,   42,   42,  120,  257,   42,   42,
624        42,   41,  121,  163,   42,  122,  109,  110,  159,  111,
625       112,  113,  123,  114,  164,  167,  165,  170,  168,  115,
626        42,  116,  117,   42,  118,  108,   42,  169,  171,   42,
627        42,   42,   45,   45,   45,   45,   45,   45,  172,   42,
628       176,   42,  174,  124,  125,   42,  126,  177,  127,  175,
629       128,  178,  129,   42,  182,  191,  130,  141,   46,   46,
630        46,   46,   46,   46,   47,   47,   47,   47,   47,   47,
631        55,   55,   55,   55,   55,   55,   42,  179,   42,   42,
632       183,   42,   42,   42,   42,   42,   42,  295,   42,   42,
633
634       185,   42,  193,  253,   42,  180,  196,   42,  184,  186,
635       195,   41,  143,  143,  143,  143,  143,  143,   42,  181,
636       192,   42,  144,  187,  188,  189,  197,  190,  203,   42,
637        42,  144,  145,  145,  145,  145,  145,  145,  199,  209,
638       202,  145,  145,  146,  147,  148,   42,  145,  145,  145,
639       145,  145,  145,   42,  200,   42,   42,  201,   42,  204,
640        42,   42,   42,   42,   42,   42,  206,  212,  208,   42,
641       210,   42,   42,  205,   42,   42,   42,  211,   42,   42,
642       207,  256,  217,  213,  221,  218,   42,  214,  223,  228,
643       215,  225,   42,  219,  226,  216,   42,  224,  222,  230,
644
645       231,   42,  232,  229,   42,  220,  227,   42,   42,   42,
646        42,   42,   42,  233,  263,   42,   42,   42,  234,   42,
647        42,   42,   42,  263,  237,  242,  235,  240,  245,  236,
648       252,  239,   42,  241,   42,  238,   42,  275,  244,  243,
649       311,  258,  246,   42,  247,  248,  259,   41,   41,   41,
650        42,  254,  260,  255,  249,   42,  273,  250,  272,  270,
651        42,   42,  251,  264,  265,  271,  266,  266,  266,  266,
652       266,  266,   42,  267,  267,  267,  267,  267,  267,  278,
653       274,   42,  267,  267,   42,   42,   42,  280,  267,  267,
654       267,  267,  267,  267,  268,  268,  268,  268,  268,  268,
655
656       282,  283,   42,  268,  268,  284,  264,  264,  292,  268,
657       268,  268,  268,  268,  268,  269,  269,  269,  269,  269,
658       269,   42,   42,   42,  269,  269,   42,   42,   42,   42,
659       269,  269,  269,  269,  269,  269,  277,  276,  281,   42,
660       279,   42,   42,   42,   42,   42,   42,  290,   42,  291,
661        42,  287,  285,  294,  296,  288,  286,   42,  299,   42,
662       302,  301,   42,   42,   42,  300,   42,  289,  297,  303,
663        42,  298,  293,   42,   42,  305,  306,  307,   42,   42,
664        42,   42,  304,  310,   42,  312,   42,   42,  309,   42,
665        42,  308,   42,  318,   42,   42,   42,  314,  322,  313,
666
667        42,   42,   42,  317,   42,  320,   42,  315,  316,  328,
668       319,  321,   42,   42,   42,   42,  330,  331,   42,  323,
669       336,  324,  325,  325,  325,  325,  325,  325,  327,  326,
670        42,  325,  325,  329,  332,   42,  333,  325,  325,  325,
671       325,  325,  325,   42,   42,  337,   42,   42,   42,   42,
672       334,   42,   42,   42,  338,   42,   42,  335,  339,  340,
673       342,  344,   42,   42,   42,  347,  348,  341,  343,   42,
674        42,  351,  349,  346,   42,  352,  350,  355,  345,  353,
675        42,  263,  354,  358,  358,  358,  358,  358,  358,   42,
676       263,  605,   41,  605,   41,   42,  356,   42,   42,   42,
677
678        42,   42,   42,   42,   42,   42,   42,  357,  361,  364,
679        42,   42,  366,   42,  369,  359,  360,   42,   42,  362,
680       363,  365,   42,  368,   42,   42,   42,  370,  371,   42,
681       367,  376,   42,  373,  380,   42,  374,  377,   42,   42,
682       378,  372,   42,  375,   42,   42,   42,   42,  386,   42,
683        42,   42,  379,  381,   42,   42,   42,  387,  382,   42,
684       383,  385,  388,   42,   42,   42,  384,  392,  397,   42,
685       389,  390,  391,  393,   42,   42,   42,  394,  395,   42,
686        42,   42,  396,  401,  406,  407,  398,  402,   42,   42,
687       408,  405,   42,  400,  399,  411,  404,  403,   42,   42,
688
689        42,  409,  410,   42,   42,  412,   42,   42,   42,   42,
690       413,   42,  415,  414,   42,   42,   42,  417,  420,   42,
691        42,  418,  419,  416,   42,  430,  428,  429,   42,  434,
692        42,   42,  421,  424,   42,   42,   42,  426,  512,  422,
693        42,  427,  423,  431,   42,  425,  358,  358,  358,  358,
694       358,  358,   42,   42,  432,  433,   42,   42,  439,  436,
695        42,  435,   42,   42,   42,   42,  437,  438,   42,   42,
696        42,   42,   42,  441,  443,  444,   42,   42,   42,  440,
697        42,   42,  445,  442,  448,  446,   42,   42,   42,  449,
698       447,  456,   42,  450,  454,   42,   42,  458,  452,   42,
699
700       457,  453,   42,  451,   42,   42,   42,  455,   42,  461,
701       406,  407,  460,  463,   42,   42,   42,   42,   42,   42,
702       459,  464,  462,   42,   42,   42,   42,  465,  468,   42,
703        42,  473,  471,  466,  467,   42,  474,  476,   42,  469,
704       470,  477,  479,   42,   42,  472,   42,  475,  428,  429,
705       478,   42,  480,   42,   42,   42,   42,  482,   42,   42,
706        42,   42,   42,  485,   42,  484,  481,   42,  489,  483,
707       493,  494,  496,   42,  487,   42,  499,   42,  486,   42,
708       491,  492,  490,   42,  497,   42,  488,  495,  498,  505,
709       501,   42,   42,   42,   42,   42,   42,   42,   42,   42,
710
711       500,   42,   42,  502,  516,   42,  504,   42,  503,  509,
712        42,  510,   42,  507,  508,  513,   42,  514,  506,  517,
713        42,   42,  511,   42,   42,   42,   42,  515,   42,  518,
714        42,  520,   42,  519,   42,   42,   42,   42,   42,  521,
715        42,  527,  522,  528,  526,  529,  523,   42,  524,  532,
716       534,  530,   42,  535,  525,   42,  533,   42,   42,  531,
717       536,   42,   42,   42,  537,  539,  544,  541,   42,  538,
718        42,   42,   42,   42,  540,  542,   42,   42,   42,  545,
719        42,   42,  555,   42,   42,  547,   42,   42,  543,   42,
720       546,  551,   42,   42,  554,   42,  552,  557,  556,  548,
721
722       549,  553,  560,  550,  558,   42,  561,   42,   42,  559,
723        42,   42,   42,   42,  562,   42,  564,  565,   42,   42,
724        42,   42,   42,  566,  563,   42,  569,   42,  573,  571,
725       575,   42,  568,   42,   42,   42,   42,   42,  567,  572,
726       570,  574,   42,  576,  581,   42,  579,  577,   42,  582,
727        42,   42,   42,   42,  578,  586,  583,   42,   42,   42,
728        42,  580,   42,   42,  584,   42,   42,  585,   42,  592,
729       593,   42,  588,   42,  589,   42,  590,  587,  591,  598,
730        42,  594,  599,   42,   42,   42,  602,  595,   42,   42,
731       596,  597,   42,  603,   42,   42,   42,   42,  600,   42,
732
733       601,   42,   42,   42,   42,   42,   42,   42,  604,   39,
734        39,   39,   39,   39,   39,   39,   39,   39,   41,   42,
735        41,   41,   41,   41,   44,   44,   42,   44,   44,   42,
736        44,   52,   42,   52,   52,   52,   52,   52,   52,   52,
737        54,   54,   42,   54,   54,   42,   54,  138,  138,  138,
738       138,  138,  138,  138,  138,  138,  140,   42,  140,  140,
739        42,  140,  149,  149,  149,  149,  149,  149,  149,  149,
740       149,  151,   42,  151,  151,   42,  151,  262,   42,  262,
741       358,  358,  358,   42,   42,   42,   42,   42,   42,   42,
742        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
743
744        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
745        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
746        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
747        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
748        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
749        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
750        42,   42,   42,   42,   42,  150,   42,  139,  261,   42,
751        42,   42,  150,   41,  139,   42,  137,   41,   42,   40,
752       605,    3,  605,  605,  605,  605,  605,  605,  605,  605,
753       605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
754
755       605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
756       605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
757       605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
758       605
759     } ;
760
761 static yyconst short int yy_chk[1432] =
762     {   0,
763         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
764         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
765         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
766         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
767         1,    1,    1,    1,    1,    1,    1,    1,    1,    9,
768        94,   64,   37,   37,   59,    9,    9,    9,    9,    9,
769         9,   10,   10,   10,   10,   10,   10,   11,   11,   11,
770        11,   11,   11,   11,   12,   37,   94,   59,   24,   62,
771        64,   12,   13,   13,   13,   13,   13,   13,   13,   13,
772        16,   17,   21,   19,   18,   24,   16,   16,   16,   16,
773
774        16,   16,   19,   17,   19,  604,   62,   18,   68,   20,
775        17,   18,   17,   21,   17,   19,   21,   17,   20,   18,
776        13,   22,   20,   21,   23,   31,   18,   48,   20,   36,
777        22,   20,   22,   22,   48,   68,   74,   23,   31,   65,
778        22,   90,   36,   23,   22,   26,   22,   25,   25,   25,
779        25,   25,   25,   25,   26,   28,   27,   90,   65,   38,
780        35,   56,   26,   74,   25,   27,   29,   26,   28,   35,
781        30,   26,   38,   56,   25,   57,   58,   28,   27,   29,
782        60,   29,   35,   28,   27,   29,   30,   29,   58,   29,
783        33,   29,   57,   30,   57,   30,   60,   30,   32,   33,
784
785        60,   84,   66,   61,   32,   67,   33,  134,   70,  134,
786        71,   84,   33,   66,   69,   33,   32,   32,   61,   32,
787        32,   32,   33,   32,   67,   69,   67,   70,   69,   32,
788        76,   32,   32,   75,   32,   34,   72,   69,   71,   78,
789        77,   34,   45,   45,   45,   45,   45,   45,   72,  602,
790        76,   80,   75,   34,   34,   87,   34,   77,   34,   75,
791        34,   78,   34,   81,   80,   87,   34,   46,   46,   46,
792        46,   46,   46,   46,   47,   47,   47,   47,   47,   47,
793        55,   55,   55,   55,   55,   55,   82,   79,   83,   85,
794        81,   91,   79,   89,   92,  131,  601,  179,   86,   88,
795
796        83,  179,   89,  131,   97,   79,   92,   93,   82,   85,
797        91,   47,   49,   49,   49,   49,   49,   49,   49,   79,
798        88,   96,   49,   86,   86,   86,   93,   86,   97,   95,
799       101,   49,   51,   51,   51,   51,   51,   51,   95,  101,
800        96,   51,   51,   51,   51,   51,   98,   51,   51,   51,
801        51,   51,   51,   99,   95,  100,  104,   95,  102,   98,
802       103,  105,  106,  107,  108,  109,   99,  104,  100,  112,
803       102,  111,  133,   98,  110,  599,  114,  103,  116,  113,
804        99,  133,  109,  105,  111,  110,  115,  106,  112,  114,
805       107,  113,  117,  110,  113,  108,  118,  112,  111,  115,
806
807       116,  119,  117,  114,  120,  110,  113,  122,  123,  125,
808       124,  127,  126,  118,  141,  128,  135,  130,  119,  597,
809       159,  136,  192,  141,  122,  126,  119,  124,  128,  120,
810       130,  123,  129,  125,  132,  122,  154,  159,  127,  126,
811       192,  135,  128,  156,  129,  129,  136,  145,  145,  145,
812       153,  132,  136,  132,  129,  157,  156,  129,  154,  153,
813       162,  165,  129,  144,  144,  153,  144,  144,  144,  144,
814       144,  144,  144,  146,  146,  146,  146,  146,  146,  162,
815       157,  167,  146,  146,  168,  176,  169,  165,  146,  146,
816       146,  146,  146,  146,  147,  147,  147,  147,  147,  147,
817
818       167,  168,  596,  147,  147,  169,  263,  263,  176,  147,
819       147,  147,  147,  147,  147,  148,  148,  148,  148,  148,
820       148,  174,  175,  180,  148,  148,  160,  161,  164,  166,
821       148,  148,  148,  148,  148,  148,  161,  160,  166,  170,
822       164,  171,  173,  177,  178,  182,  181,  174,  183,  175,
823       184,  171,  170,  178,  180,  173,  170,  185,  182,  186,
824       184,  183,  187,  188,  189,  182,  190,  173,  181,  185,
825       191,  181,  177,  193,  194,  187,  188,  189,  195,  196,
826       200,  198,  186,  191,  199,  193,  202,  209,  190,  201,
827       212,  189,  213,  200,  214,  231,  219,  195,  212,  194,
828
829       217,  218,  224,  199,  225,  202,  220,  196,  198,  219,
830       201,  209,  595,  226,  227,  590,  224,  225,  233,  213,
831       231,  214,  216,  216,  216,  216,  216,  216,  218,  217,
832       230,  216,  216,  220,  226,  234,  227,  216,  216,  216,
833       216,  216,  216,  235,  237,  233,  236,  238,  239,  240,
834       230,  244,  247,  250,  234,  251,  252,  230,  235,  236,
835       238,  239,  253,  254,  256,  247,  250,  237,  238,  257,
836       255,  253,  251,  244,  259,  254,  252,  257,  240,  255,
837       260,  262,  256,  264,  264,  264,  264,  264,  264,  270,
838       262,  265,  265,  266,  266,  271,  259,  272,  273,  275,
839
840       276,  279,  277,  280,  281,  282,  283,  260,  272,  276,
841       285,  284,  279,  286,  282,  270,  271,  287,  288,  273,
842       275,  277,  289,  281,  290,  294,  296,  283,  284,  291,
843       280,  289,  297,  286,  295,  295,  287,  290,  298,  302,
844       291,  285,  301,  288,  303,  306,  307,  305,  302,  309,
845       308,  317,  294,  296,  310,  311,  314,  303,  297,  318,
846       297,  301,  305,  315,  319,  321,  298,  309,  317,  322,
847       306,  307,  308,  310,  323,  324,  330,  311,  314,  327,
848       328,  333,  315,  322,  329,  329,  318,  323,  331,  332,
849       330,  328,  336,  321,  319,  333,  327,  324,  329,  337,
850
851       339,  331,  332,  340,  341,  336,  343,  346,  347,  348,
852       337,  349,  340,  339,  351,  353,  361,  343,  348,  355,
853       367,  346,  347,  341,  356,  361,  357,  357,  364,  367,
854       473,  362,  349,  355,  369,  372,  582,  356,  473,  351,
855       357,  356,  353,  362,  366,  355,  358,  358,  358,  358,
856       358,  358,  368,  370,  364,  366,  373,  371,  372,  369,
857       374,  368,  375,  376,  378,  382,  370,  371,  383,  384,
858       386,  385,  387,  374,  376,  378,  389,  390,  391,  373,
859       395,  392,  382,  375,  385,  383,  394,  396,  397,  386,
860       384,  395,  398,  387,  392,  399,  400,  397,  390,  401,
861
862       396,  391,  402,  389,  403,  404,  405,  394,  410,  400,
863       406,  406,  399,  402,  409,  408,  413,  411,  414,  415,
864       398,  403,  401,  416,  418,  423,  420,  404,  409,  421,
865       425,  415,  413,  405,  408,  422,  416,  420,  426,  410,
866       411,  421,  423,  424,  427,  414,  431,  418,  428,  428,
867       422,  432,  424,  434,  435,  436,  438,  425,  439,  440,
868       443,  447,  442,  431,  448,  427,  424,  452,  436,  426,
869       442,  442,  447,  453,  434,  451,  452,  458,  432,  455,
870       439,  440,  438,  459,  448,  460,  435,  443,  451,  462,
871       455,  463,  464,  465,  462,  469,  467,  468,  479,  476,
872
873       453,  480,  483,  458,  481,  481,  460,  482,  459,  467,
874       485,  468,  487,  464,  465,  476,  484,  479,  463,  482,
875       488,  491,  469,  492,  493,  494,  498,  480,  495,  483,
876       497,  485,  499,  484,  500,  503,  501,  507,  504,  487,
877       509,  495,  488,  497,  494,  498,  491,  506,  492,  501,
878       504,  499,  510,  505,  493,  512,  503,  505,  513,  500,
879       506,  515,  514,  519,  507,  510,  516,  513,  517,  509,
880       520,  522,  516,  523,  512,  514,  524,  527,  525,  517,
881       528,  529,  535,  535,  538,  520,  536,  540,  515,  548,
882       519,  525,  541,  539,  529,  543,  527,  538,  536,  522,
883
884       523,  528,  541,  524,  539,  545,  543,  546,  551,  540,
885       552,  553,  554,  558,  545,  557,  548,  551,  559,  561,
886       560,  563,  562,  552,  546,  565,  557,  566,  561,  559,
887       563,  567,  554,  568,  569,  571,  572,  573,  553,  560,
888       558,  562,  577,  565,  571,  574,  568,  566,  575,  572,
889       578,  579,  580,  585,  567,  577,  573,  581,  584,  583,
890       586,  569,  587,  588,  574,  593,  589,  575,  591,  584,
891       585,  592,  579,  594,  580,  598,  581,  578,  583,  591,
892       600,  586,  592,  603,  576,  570,  598,  587,  564,  556,
893       588,  589,  555,  600,  550,  549,  547,  544,  593,  542,
894
895       594,  537,  534,  533,  532,  531,  530,  526,  603,  606,
896       606,  606,  606,  606,  606,  606,  606,  606,  607,  521,
897       607,  607,  607,  607,  608,  608,  518,  608,  608,  511,
898       608,  609,  508,  609,  609,  609,  609,  609,  609,  609,
899       610,  610,  502,  610,  610,  496,  610,  611,  611,  611,
900       611,  611,  611,  611,  611,  611,  612,  490,  612,  612,
901       489,  612,  613,  613,  613,  613,  613,  613,  613,  613,
902       613,  614,  486,  614,  614,  478,  614,  615,  477,  615,
903       616,  616,  616,  475,  474,  472,  471,  470,  466,  461,
904       457,  456,  454,  450,  449,  446,  445,  444,  441,  437,
905
906       433,  430,  419,  417,  412,  393,  388,  381,  380,  379,
907       377,  365,  363,  360,  359,  354,  352,  350,  345,  344,
908       342,  338,  335,  334,  326,  320,  316,  313,  312,  304,
909       300,  299,  293,  292,  278,  274,  258,  249,  248,  246,
910       245,  243,  242,  241,  232,  229,  228,  223,  222,  221,
911       215,  211,  210,  208,  207,  206,  205,  204,  203,  197,
912       172,  163,  158,  155,  152,  149,  142,  138,  137,  121,
913        73,   63,   53,   50,   43,   41,   39,   14,    8,    7,
914         3,  605,  605,  605,  605,  605,  605,  605,  605,  605,
915       605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
916
917       605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
918       605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
919       605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
920       605
921     } ;
922
923 static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
924 static char *yy_full_match;
925 static int yy_lp;
926 #define REJECT \
927 { \
928 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \
929 yy_cp = yy_full_match; /* restore poss. backed-over text */ \
930 ++yy_lp; \
931 goto find_rule; \
932 }
933 #define yymore() yymore_used_but_not_detected
934 #define YY_MORE_ADJ 0
935 #define YY_RESTORE_YY_MORE_OFFSET
936 char *yytext;
937 #line 1 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
938 #define INITIAL 0
939 /*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===//
940 //
941 //                     The LLVM Compiler Infrastructure
942 //
943 // This file was developed by the LLVM research group and is distributed under
944 // the University of Illinois Open Source License. See LICENSE.TXT for details.
945 //
946 //===----------------------------------------------------------------------===//
947 //
948 //  This file implements the flex scanner for LLVM assembly languages files.
949 //
950 //===----------------------------------------------------------------------===*/
951 #define YY_NEVER_INTERACTIVE 1
952 #line 28 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
953 #include "ParserInternals.h"
954 #include "llvm/Module.h"
955 #include "llvm/Support/MathExtras.h"
956 #include <list>
957 #include "llvmAsmParser.h"
958 #include <cctype>
959 #include <cstdlib>
960
961 void set_scan_file(FILE * F){
962   yy_switch_to_buffer(yy_create_buffer( F, YY_BUF_SIZE ) );
963 }
964 void set_scan_string (const char * str) {
965   yy_scan_string (str);
966 }
967
968 // Construct a token value for a non-obsolete token
969 #define RET_TOK(type, Enum, sym) \
970   llvmAsmlval.type = Instruction::Enum; \
971   return sym
972
973 // Construct a token value for an obsolete token
974 #define RET_TY(CTYPE, SYM) \
975   llvmAsmlval.PrimType = CTYPE;\
976   return SYM
977
978 namespace llvm {
979
980 // TODO: All of the static identifiers are figured out by the lexer,
981 // these should be hashed to reduce the lexer size
982
983
984 // atoull - Convert an ascii string of decimal digits into the unsigned long
985 // long representation... this does not have to do input error checking,
986 // because we know that the input will be matched by a suitable regex...
987 //
988 static uint64_t atoull(const char *Buffer) {
989   uint64_t Result = 0;
990   for (; *Buffer; Buffer++) {
991     uint64_t OldRes = Result;
992     Result *= 10;
993     Result += *Buffer-'0';
994     if (Result < OldRes)   // Uh, oh, overflow detected!!!
995       GenerateError("constant bigger than 64 bits detected!");
996   }
997   return Result;
998 }
999
1000 static uint64_t HexIntToVal(const char *Buffer) {
1001   uint64_t Result = 0;
1002   for (; *Buffer; ++Buffer) {
1003     uint64_t OldRes = Result;
1004     Result *= 16;
1005     char C = *Buffer;
1006     if (C >= '0' && C <= '9')
1007       Result += C-'0';
1008     else if (C >= 'A' && C <= 'F')
1009       Result += C-'A'+10;
1010     else if (C >= 'a' && C <= 'f')
1011       Result += C-'a'+10;
1012
1013     if (Result < OldRes)   // Uh, oh, overflow detected!!!
1014       GenerateError("constant bigger than 64 bits detected!");
1015   }
1016   return Result;
1017 }
1018
1019 // HexToFP - Convert the ascii string in hexadecimal format to the floating
1020 // point representation of it.
1021 //
1022 static double HexToFP(const char *Buffer) {
1023   return BitsToDouble(HexIntToVal(Buffer));   // Cast Hex constant to double
1024 }
1025
1026 static void HexToIntPair(const char *Buffer, uint64_t Pair[2]) {
1027   Pair[0] = 0;
1028   for (int i=0; i<16; i++, Buffer++) {
1029     assert(*Buffer);
1030     Pair[0] *= 16;
1031     char C = *Buffer;
1032     if (C >= '0' && C <= '9')
1033       Pair[0] += C-'0';
1034     else if (C >= 'A' && C <= 'F')
1035       Pair[0] += C-'A'+10;
1036     else if (C >= 'a' && C <= 'f')
1037       Pair[0] += C-'a'+10;
1038   }
1039   Pair[1] = 0;
1040   for (int i=0; i<16 && *Buffer; i++, Buffer++) {
1041     Pair[1] *= 16;
1042     char C = *Buffer;
1043     if (C >= '0' && C <= '9')
1044       Pair[1] += C-'0';
1045     else if (C >= 'A' && C <= 'F')
1046       Pair[1] += C-'A'+10;
1047     else if (C >= 'a' && C <= 'f')
1048       Pair[1] += C-'a'+10;
1049   }
1050   if (*Buffer)
1051     GenerateError("constant bigger than 128 bits detected!");
1052 }
1053
1054 // UnEscapeLexed - Run through the specified buffer and change \xx codes to the
1055 // appropriate character.
1056 char *UnEscapeLexed(char *Buffer, char* EndBuffer) {
1057   char *BOut = Buffer;
1058   for (char *BIn = Buffer; *BIn; ) {
1059     if (BIn[0] == '\\') {
1060       if (BIn < EndBuffer-1 && BIn[1] == '\\') {
1061         *BOut++ = '\\'; // Two \ becomes one
1062         BIn += 2;
1063       } else if (BIn < EndBuffer-2 && isxdigit(BIn[1]) && isxdigit(BIn[2])) {
1064         char Tmp = BIn[3]; BIn[3] = 0;      // Terminate string
1065         *BOut = (char)strtol(BIn+1, 0, 16); // Convert to number
1066         BIn[3] = Tmp;                       // Restore character
1067         BIn += 3;                           // Skip over handled chars
1068         ++BOut;
1069       } else {
1070         *BOut++ = *BIn++;
1071       }
1072     } else {
1073       *BOut++ = *BIn++;
1074     }
1075   }
1076   return BOut;
1077 }
1078
1079 } // End llvm namespace
1080
1081 using namespace llvm;
1082
1083 #define YY_NEVER_INTERACTIVE 1
1084 /* Comments start with a ; and go till end of line */
1085 /* Local Values and Type identifiers start with a % sign */
1086 /* Global Value identifiers start with an @ sign */
1087 /* Label identifiers end with a colon */
1088 /* Quoted names can contain any character except " and \ */
1089 /* LocalVarID/GlobalVarID: match an unnamed local variable slot ID. */
1090 /* Integer types are specified with i and a bitwidth */
1091 /* E[PN]Integer: match positive and negative literal integer values. */
1092 /* FPConstant - A Floating point constant.  Float and double only.
1093  */
1094 /* HexFPConstant - Floating point constant represented in IEEE format as a
1095  *  hexadecimal number for when exponential notation is not precise enough.
1096  *  Float and double only.
1097  */
1098 /* F80HexFPConstant - x87 long double in hexadecimal format (10 bytes)
1099  */
1100 /* F128HexFPConstant - IEEE 128-bit in hexadecimal format (16 bytes)
1101  */
1102 /* PPC128HexFPConstant - PowerPC 128-bit in hexadecimal format (16 bytes)
1103  */
1104 /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
1105  * it to deal with 64 bit numbers.
1106  */
1107 /* WSNL - shorthand for whitespace followed by newline */
1108 #line 1109 "Lexer.cpp"
1109
1110 /* Macros after this point can all be overridden by user definitions in
1111  * section 1.
1112  */
1113
1114 #ifndef YY_SKIP_YYWRAP
1115 #ifdef __cplusplus
1116 extern "C" int yywrap YY_PROTO(( void ));
1117 #else
1118 extern int yywrap YY_PROTO(( void ));
1119 #endif
1120 #endif
1121
1122 #ifndef YY_NO_UNPUT
1123 static inline void yyunput YY_PROTO(( int c, char *buf_ptr ));
1124 #endif
1125
1126 #ifndef yytext_ptr
1127 static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
1128 #endif
1129
1130 #ifdef YY_NEED_STRLEN
1131 static int yy_flex_strlen YY_PROTO(( yyconst char * ));
1132 #endif
1133
1134 #ifndef YY_NO_INPUT
1135 #ifdef __cplusplus
1136 static int yyinput YY_PROTO(( void ));
1137 #else
1138 static int input YY_PROTO(( void ));
1139 #endif
1140 #endif
1141
1142 #if YY_STACK_USED
1143 static int yy_start_stack_ptr = 0;
1144 static int yy_start_stack_depth = 0;
1145 static int *yy_start_stack = 0;
1146 #ifndef YY_NO_PUSH_STATE
1147 static void yy_push_state YY_PROTO(( int new_state ));
1148 #endif
1149 #ifndef YY_NO_POP_STATE
1150 static void yy_pop_state YY_PROTO(( void ));
1151 #endif
1152 #ifndef YY_NO_TOP_STATE
1153 static int yy_top_state YY_PROTO(( void ));
1154 #endif
1155
1156 #else
1157 #define YY_NO_PUSH_STATE 1
1158 #define YY_NO_POP_STATE 1
1159 #define YY_NO_TOP_STATE 1
1160 #endif
1161
1162 #ifdef YY_MALLOC_DECL
1163 YY_MALLOC_DECL
1164 #else
1165 #if __STDC__
1166 #ifndef __cplusplus
1167 #include <stdlib.h>
1168 #endif
1169 #else
1170 /* Just try to get by without declaring the routines.  This will fail
1171  * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1172  * or sizeof(void*) != sizeof(int).
1173  */
1174 #endif
1175 #endif
1176
1177 /* Amount of stuff to slurp up with each read. */
1178 #ifndef YY_READ_BUF_SIZE
1179 #define YY_READ_BUF_SIZE 8192
1180 #endif
1181
1182 /* Copy whatever the last rule matched to the standard output. */
1183
1184 #ifndef ECHO
1185 /* This used to be an fputs(), but since the string might contain NUL's,
1186  * we now use fwrite().
1187  */
1188 #define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
1189 #endif
1190
1191 /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
1192  * is returned in "result".
1193  */
1194 #ifndef YY_INPUT
1195 #define YY_INPUT(buf,result,max_size) \
1196         if ( yy_current_buffer->yy_is_interactive ) \
1197                 { \
1198                 int c = '*', n; \
1199                 for ( n = 0; n < max_size && \
1200                              (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1201                         buf[n] = (char) c; \
1202                 if ( c == '\n' ) \
1203                         buf[n++] = (char) c; \
1204                 if ( c == EOF && ferror( yyin ) ) \
1205                         YY_FATAL_ERROR( "input in flex scanner failed" ); \
1206                 result = n; \
1207                 } \
1208         else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1209                   && ferror( yyin ) ) \
1210                 YY_FATAL_ERROR( "input in flex scanner failed" );
1211 #endif
1212
1213 /* No semi-colon after return; correct usage is to write "yyterminate();" -
1214  * we don't want an extra ';' after the "return" because that will cause
1215  * some compilers to complain about unreachable statements.
1216  */
1217 #ifndef yyterminate
1218 #define yyterminate() return YY_NULL
1219 #endif
1220
1221 /* Number of entries by which start-condition stack grows. */
1222 #ifndef YY_START_STACK_INCR
1223 #define YY_START_STACK_INCR 25
1224 #endif
1225
1226 /* Report a fatal error. */
1227 #ifndef YY_FATAL_ERROR
1228 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1229 #endif
1230
1231 /* Default declaration of generated scanner - a define so the user can
1232  * easily add parameters.
1233  */
1234 #ifndef YY_DECL
1235 #define YY_DECL int yylex YY_PROTO(( void ))
1236 #endif
1237
1238 /* Code executed at the beginning of each rule, after yytext and yyleng
1239  * have been set up.
1240  */
1241 #ifndef YY_USER_ACTION
1242 #define YY_USER_ACTION
1243 #endif
1244
1245 /* Code executed at the end of each rule. */
1246 #ifndef YY_BREAK
1247 #define YY_BREAK break;
1248 #endif
1249
1250 #define YY_RULE_SETUP \
1251         YY_USER_ACTION
1252
1253 YY_DECL
1254         {
1255         register yy_state_type yy_current_state;
1256         register char *yy_cp, *yy_bp;
1257         register int yy_act;
1258
1259 #line 221 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1260
1261
1262 #line 1263 "Lexer.cpp"
1263
1264         if ( yy_init )
1265                 {
1266                 yy_init = 0;
1267
1268 #ifdef YY_USER_INIT
1269                 YY_USER_INIT;
1270 #endif
1271
1272                 if ( ! yy_start )
1273                         yy_start = 1;   /* first start state */
1274
1275                 if ( ! yyin )
1276                         yyin = stdin;
1277
1278                 if ( ! yyout )
1279                         yyout = stdout;
1280
1281                 if ( ! yy_current_buffer )
1282                         yy_current_buffer =
1283                                 yy_create_buffer( yyin, YY_BUF_SIZE );
1284
1285                 yy_load_buffer_state();
1286                 }
1287
1288         while ( 1 )             /* loops until end-of-file is reached */
1289                 {
1290                 yy_cp = yy_c_buf_p;
1291
1292                 /* Support of yytext. */
1293                 *yy_cp = yy_hold_char;
1294
1295                 /* yy_bp points to the position in yy_ch_buf of the start of
1296                  * the current run.
1297                  */
1298                 yy_bp = yy_cp;
1299
1300                 yy_current_state = yy_start;
1301                 yy_state_ptr = yy_state_buf;
1302                 *yy_state_ptr++ = yy_current_state;
1303 yy_match:
1304                 do
1305                         {
1306                         register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1307                         while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1308                                 {
1309                                 yy_current_state = (int) yy_def[yy_current_state];
1310                                 if ( yy_current_state >= 606 )
1311                                         yy_c = yy_meta[(unsigned int) yy_c];
1312                                 }
1313                         yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1314                         *yy_state_ptr++ = yy_current_state;
1315                         ++yy_cp;
1316                         }
1317                 while ( yy_current_state != 605 );
1318
1319 yy_find_action:
1320                 yy_current_state = *--yy_state_ptr;
1321                 yy_lp = yy_accept[yy_current_state];
1322 find_rule: /* we branch to this label when backing up */
1323                 for ( ; ; ) /* until we find what rule we matched */
1324                         {
1325                         if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] )
1326                                 {
1327                                 yy_act = yy_acclist[yy_lp];
1328                                         {
1329                                         yy_full_match = yy_cp;
1330                                         break;
1331                                         }
1332                                 }
1333                         --yy_cp;
1334                         yy_current_state = *--yy_state_ptr;
1335                         yy_lp = yy_accept[yy_current_state];
1336                         }
1337
1338                 YY_DO_BEFORE_ACTION;
1339
1340                 if ( yy_act != YY_END_OF_BUFFER )
1341                         {
1342                         int yyl;
1343                         for ( yyl = 0; yyl < yyleng; ++yyl )
1344                                 if ( yytext[yyl] == '\n' )
1345                                         ++yylineno;
1346                         }
1347
1348 do_action:      /* This label is used only to access EOF actions. */
1349
1350
1351                 switch ( yy_act )
1352         { /* beginning of action switch */
1353 case 1:
1354 YY_RULE_SETUP
1355 #line 223 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1356 { /* Ignore comments for now */ }
1357         YY_BREAK
1358 case 2:
1359 YY_RULE_SETUP
1360 #line 225 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1361 { return BEGINTOK; }
1362         YY_BREAK
1363 case 3:
1364 YY_RULE_SETUP
1365 #line 226 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1366 { return ENDTOK; }
1367         YY_BREAK
1368 case 4:
1369 YY_RULE_SETUP
1370 #line 227 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1371 { return TRUETOK;  }
1372         YY_BREAK
1373 case 5:
1374 YY_RULE_SETUP
1375 #line 228 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1376 { return FALSETOK; }
1377         YY_BREAK
1378 case 6:
1379 YY_RULE_SETUP
1380 #line 229 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1381 { return DECLARE; }
1382         YY_BREAK
1383 case 7:
1384 YY_RULE_SETUP
1385 #line 230 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1386 { return DEFINE; }
1387         YY_BREAK
1388 case 8:
1389 YY_RULE_SETUP
1390 #line 231 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1391 { return GLOBAL; }
1392         YY_BREAK
1393 case 9:
1394 YY_RULE_SETUP
1395 #line 232 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1396 { return CONSTANT; }
1397         YY_BREAK
1398 case 10:
1399 YY_RULE_SETUP
1400 #line 233 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1401 { return INTERNAL; }
1402         YY_BREAK
1403 case 11:
1404 YY_RULE_SETUP
1405 #line 234 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1406 { return LINKONCE; }
1407         YY_BREAK
1408 case 12:
1409 YY_RULE_SETUP
1410 #line 235 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1411 { return WEAK; }
1412         YY_BREAK
1413 case 13:
1414 YY_RULE_SETUP
1415 #line 236 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1416 { return APPENDING; }
1417         YY_BREAK
1418 case 14:
1419 YY_RULE_SETUP
1420 #line 237 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1421 { return DLLIMPORT; }
1422         YY_BREAK
1423 case 15:
1424 YY_RULE_SETUP
1425 #line 238 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1426 { return DLLEXPORT; }
1427         YY_BREAK
1428 case 16:
1429 YY_RULE_SETUP
1430 #line 239 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1431 { return HIDDEN; }
1432         YY_BREAK
1433 case 17:
1434 YY_RULE_SETUP
1435 #line 240 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1436 { return PROTECTED; }
1437         YY_BREAK
1438 case 18:
1439 YY_RULE_SETUP
1440 #line 241 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1441 { return EXTERN_WEAK; }
1442         YY_BREAK
1443 case 19:
1444 YY_RULE_SETUP
1445 #line 242 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1446 { return EXTERNAL; }
1447         YY_BREAK
1448 case 20:
1449 YY_RULE_SETUP
1450 #line 243 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1451 { return THREAD_LOCAL; }
1452         YY_BREAK
1453 case 21:
1454 YY_RULE_SETUP
1455 #line 244 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1456 { return ZEROINITIALIZER; }
1457         YY_BREAK
1458 case 22:
1459 YY_RULE_SETUP
1460 #line 245 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1461 { return DOTDOTDOT; }
1462         YY_BREAK
1463 case 23:
1464 YY_RULE_SETUP
1465 #line 246 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1466 { return UNDEF; }
1467         YY_BREAK
1468 case 24:
1469 YY_RULE_SETUP
1470 #line 247 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1471 { return NULL_TOK; }
1472         YY_BREAK
1473 case 25:
1474 YY_RULE_SETUP
1475 #line 248 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1476 { return TO; }
1477         YY_BREAK
1478 case 26:
1479 YY_RULE_SETUP
1480 #line 249 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1481 { return TAIL; }
1482         YY_BREAK
1483 case 27:
1484 YY_RULE_SETUP
1485 #line 250 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1486 { return TARGET; }
1487         YY_BREAK
1488 case 28:
1489 YY_RULE_SETUP
1490 #line 251 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1491 { return TRIPLE; }
1492         YY_BREAK
1493 case 29:
1494 YY_RULE_SETUP
1495 #line 252 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1496 { return DEPLIBS; }
1497         YY_BREAK
1498 case 30:
1499 YY_RULE_SETUP
1500 #line 253 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1501 { return DATALAYOUT; }
1502         YY_BREAK
1503 case 31:
1504 YY_RULE_SETUP
1505 #line 254 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1506 { return VOLATILE; }
1507         YY_BREAK
1508 case 32:
1509 YY_RULE_SETUP
1510 #line 255 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1511 { return ALIGN;  }
1512         YY_BREAK
1513 case 33:
1514 YY_RULE_SETUP
1515 #line 256 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1516 { return SECTION; }
1517         YY_BREAK
1518 case 34:
1519 YY_RULE_SETUP
1520 #line 257 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1521 { return ALIAS; }
1522         YY_BREAK
1523 case 35:
1524 YY_RULE_SETUP
1525 #line 258 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1526 { return MODULE; }
1527         YY_BREAK
1528 case 36:
1529 YY_RULE_SETUP
1530 #line 259 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1531 { return ASM_TOK; }
1532         YY_BREAK
1533 case 37:
1534 YY_RULE_SETUP
1535 #line 260 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1536 { return SIDEEFFECT; }
1537         YY_BREAK
1538 case 38:
1539 YY_RULE_SETUP
1540 #line 262 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1541 { return CC_TOK; }
1542         YY_BREAK
1543 case 39:
1544 YY_RULE_SETUP
1545 #line 263 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1546 { return CCC_TOK; }
1547         YY_BREAK
1548 case 40:
1549 YY_RULE_SETUP
1550 #line 264 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1551 { return FASTCC_TOK; }
1552         YY_BREAK
1553 case 41:
1554 YY_RULE_SETUP
1555 #line 265 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1556 { return COLDCC_TOK; }
1557         YY_BREAK
1558 case 42:
1559 YY_RULE_SETUP
1560 #line 266 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1561 { return X86_STDCALLCC_TOK; }
1562         YY_BREAK
1563 case 43:
1564 YY_RULE_SETUP
1565 #line 267 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1566 { return X86_FASTCALLCC_TOK; }
1567         YY_BREAK
1568 case 44:
1569 YY_RULE_SETUP
1570 #line 269 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1571 { return SIGNEXT; }
1572         YY_BREAK
1573 case 45:
1574 YY_RULE_SETUP
1575 #line 270 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1576 { return ZEROEXT; }
1577         YY_BREAK
1578 case 46:
1579 YY_RULE_SETUP
1580 #line 271 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1581 { return INREG; }
1582         YY_BREAK
1583 case 47:
1584 YY_RULE_SETUP
1585 #line 272 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1586 { return SRET;  }
1587         YY_BREAK
1588 case 48:
1589 YY_RULE_SETUP
1590 #line 273 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1591 { return NOUNWIND; }
1592         YY_BREAK
1593 case 49:
1594 YY_RULE_SETUP
1595 #line 274 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1596 { return NORETURN; }
1597         YY_BREAK
1598 case 50:
1599 YY_RULE_SETUP
1600 #line 275 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1601 { return NOALIAS; }
1602         YY_BREAK
1603 case 51:
1604 YY_RULE_SETUP
1605 #line 276 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1606 { return BYVAL; }
1607         YY_BREAK
1608 case 52:
1609 YY_RULE_SETUP
1610 #line 277 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1611 { return NEST; }
1612         YY_BREAK
1613 case 53:
1614 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
1615 yy_c_buf_p = yy_cp -= 1;
1616 YY_DO_BEFORE_ACTION; /* set up yytext again */
1617 YY_RULE_SETUP
1618 #line 278 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1619 { // For auto-upgrade only, drop in LLVM 3.0 
1620                   return SIGNEXT; } 
1621         YY_BREAK
1622 case 54:
1623 *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
1624 yy_c_buf_p = yy_cp -= 1;
1625 YY_DO_BEFORE_ACTION; /* set up yytext again */
1626 YY_RULE_SETUP
1627 #line 280 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1628 { // For auto-upgrade only, drop in LLVM 3.0
1629                   return ZEROEXT; } 
1630         YY_BREAK
1631 case 55:
1632 YY_RULE_SETUP
1633 #line 283 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1634 { RET_TY(Type::VoidTy,  VOID);  }
1635         YY_BREAK
1636 case 56:
1637 YY_RULE_SETUP
1638 #line 284 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1639 { RET_TY(Type::FloatTy, FLOAT); }
1640         YY_BREAK
1641 case 57:
1642 YY_RULE_SETUP
1643 #line 285 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1644 { RET_TY(Type::DoubleTy,DOUBLE);}
1645         YY_BREAK
1646 case 58:
1647 YY_RULE_SETUP
1648 #line 286 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1649 { RET_TY(Type::X86_FP80Ty, X86_FP80);}
1650         YY_BREAK
1651 case 59:
1652 YY_RULE_SETUP
1653 #line 287 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1654 { RET_TY(Type::FP128Ty, FP128);}
1655         YY_BREAK
1656 case 60:
1657 YY_RULE_SETUP
1658 #line 288 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1659 { RET_TY(Type::PPC_FP128Ty, PPC_FP128);}
1660         YY_BREAK
1661 case 61:
1662 YY_RULE_SETUP
1663 #line 289 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1664 { RET_TY(Type::LabelTy, LABEL); }
1665         YY_BREAK
1666 case 62:
1667 YY_RULE_SETUP
1668 #line 290 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1669 { return TYPE;   }
1670         YY_BREAK
1671 case 63:
1672 YY_RULE_SETUP
1673 #line 291 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1674 { return OPAQUE; }
1675         YY_BREAK
1676 case 64:
1677 YY_RULE_SETUP
1678 #line 292 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1679 { uint64_t NumBits = atoull(yytext+1);
1680                   if (NumBits < IntegerType::MIN_INT_BITS || 
1681                       NumBits > IntegerType::MAX_INT_BITS)
1682                     GenerateError("Bitwidth for integer type out of range!");
1683                   const Type* Ty = IntegerType::get(NumBits);
1684                   RET_TY(Ty, INTTYPE);
1685                 }
1686         YY_BREAK
1687 case 65:
1688 YY_RULE_SETUP
1689 #line 300 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1690 { RET_TOK(BinaryOpVal, Add, ADD); }
1691         YY_BREAK
1692 case 66:
1693 YY_RULE_SETUP
1694 #line 301 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1695 { RET_TOK(BinaryOpVal, Sub, SUB); }
1696         YY_BREAK
1697 case 67:
1698 YY_RULE_SETUP
1699 #line 302 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1700 { RET_TOK(BinaryOpVal, Mul, MUL); }
1701         YY_BREAK
1702 case 68:
1703 YY_RULE_SETUP
1704 #line 303 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1705 { RET_TOK(BinaryOpVal, UDiv, UDIV); }
1706         YY_BREAK
1707 case 69:
1708 YY_RULE_SETUP
1709 #line 304 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1710 { RET_TOK(BinaryOpVal, SDiv, SDIV); }
1711         YY_BREAK
1712 case 70:
1713 YY_RULE_SETUP
1714 #line 305 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1715 { RET_TOK(BinaryOpVal, FDiv, FDIV); }
1716         YY_BREAK
1717 case 71:
1718 YY_RULE_SETUP
1719 #line 306 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1720 { RET_TOK(BinaryOpVal, URem, UREM); }
1721         YY_BREAK
1722 case 72:
1723 YY_RULE_SETUP
1724 #line 307 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1725 { RET_TOK(BinaryOpVal, SRem, SREM); }
1726         YY_BREAK
1727 case 73:
1728 YY_RULE_SETUP
1729 #line 308 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1730 { RET_TOK(BinaryOpVal, FRem, FREM); }
1731         YY_BREAK
1732 case 74:
1733 YY_RULE_SETUP
1734 #line 309 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1735 { RET_TOK(BinaryOpVal, Shl, SHL); }
1736         YY_BREAK
1737 case 75:
1738 YY_RULE_SETUP
1739 #line 310 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1740 { RET_TOK(BinaryOpVal, LShr, LSHR); }
1741         YY_BREAK
1742 case 76:
1743 YY_RULE_SETUP
1744 #line 311 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1745 { RET_TOK(BinaryOpVal, AShr, ASHR); }
1746         YY_BREAK
1747 case 77:
1748 YY_RULE_SETUP
1749 #line 312 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1750 { RET_TOK(BinaryOpVal, And, AND); }
1751         YY_BREAK
1752 case 78:
1753 YY_RULE_SETUP
1754 #line 313 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1755 { RET_TOK(BinaryOpVal, Or , OR ); }
1756         YY_BREAK
1757 case 79:
1758 YY_RULE_SETUP
1759 #line 314 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1760 { RET_TOK(BinaryOpVal, Xor, XOR); }
1761         YY_BREAK
1762 case 80:
1763 YY_RULE_SETUP
1764 #line 315 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1765 { RET_TOK(OtherOpVal,  ICmp,  ICMP); }
1766         YY_BREAK
1767 case 81:
1768 YY_RULE_SETUP
1769 #line 316 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1770 { RET_TOK(OtherOpVal,  FCmp,  FCMP); }
1771         YY_BREAK
1772 case 82:
1773 YY_RULE_SETUP
1774 #line 318 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1775 { return EQ;  }
1776         YY_BREAK
1777 case 83:
1778 YY_RULE_SETUP
1779 #line 319 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1780 { return NE;  }
1781         YY_BREAK
1782 case 84:
1783 YY_RULE_SETUP
1784 #line 320 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1785 { return SLT; }
1786         YY_BREAK
1787 case 85:
1788 YY_RULE_SETUP
1789 #line 321 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1790 { return SGT; }
1791         YY_BREAK
1792 case 86:
1793 YY_RULE_SETUP
1794 #line 322 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1795 { return SLE; }
1796         YY_BREAK
1797 case 87:
1798 YY_RULE_SETUP
1799 #line 323 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1800 { return SGE; }
1801         YY_BREAK
1802 case 88:
1803 YY_RULE_SETUP
1804 #line 324 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1805 { return ULT; }
1806         YY_BREAK
1807 case 89:
1808 YY_RULE_SETUP
1809 #line 325 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1810 { return UGT; }
1811         YY_BREAK
1812 case 90:
1813 YY_RULE_SETUP
1814 #line 326 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1815 { return ULE; }
1816         YY_BREAK
1817 case 91:
1818 YY_RULE_SETUP
1819 #line 327 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1820 { return UGE; }
1821         YY_BREAK
1822 case 92:
1823 YY_RULE_SETUP
1824 #line 328 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1825 { return OEQ; }
1826         YY_BREAK
1827 case 93:
1828 YY_RULE_SETUP
1829 #line 329 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1830 { return ONE; }
1831         YY_BREAK
1832 case 94:
1833 YY_RULE_SETUP
1834 #line 330 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1835 { return OLT; }
1836         YY_BREAK
1837 case 95:
1838 YY_RULE_SETUP
1839 #line 331 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1840 { return OGT; }
1841         YY_BREAK
1842 case 96:
1843 YY_RULE_SETUP
1844 #line 332 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1845 { return OLE; }
1846         YY_BREAK
1847 case 97:
1848 YY_RULE_SETUP
1849 #line 333 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1850 { return OGE; }
1851         YY_BREAK
1852 case 98:
1853 YY_RULE_SETUP
1854 #line 334 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1855 { return ORD; }
1856         YY_BREAK
1857 case 99:
1858 YY_RULE_SETUP
1859 #line 335 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1860 { return UNO; }
1861         YY_BREAK
1862 case 100:
1863 YY_RULE_SETUP
1864 #line 336 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1865 { return UEQ; }
1866         YY_BREAK
1867 case 101:
1868 YY_RULE_SETUP
1869 #line 337 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1870 { return UNE; }
1871         YY_BREAK
1872 case 102:
1873 YY_RULE_SETUP
1874 #line 339 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1875 { RET_TOK(OtherOpVal, PHI, PHI_TOK); }
1876         YY_BREAK
1877 case 103:
1878 YY_RULE_SETUP
1879 #line 340 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1880 { RET_TOK(OtherOpVal, Call, CALL); }
1881         YY_BREAK
1882 case 104:
1883 YY_RULE_SETUP
1884 #line 341 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1885 { RET_TOK(CastOpVal, Trunc, TRUNC); }
1886         YY_BREAK
1887 case 105:
1888 YY_RULE_SETUP
1889 #line 342 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1890 { RET_TOK(CastOpVal, ZExt, ZEXT); }
1891         YY_BREAK
1892 case 106:
1893 YY_RULE_SETUP
1894 #line 343 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1895 { RET_TOK(CastOpVal, SExt, SEXT); }
1896         YY_BREAK
1897 case 107:
1898 YY_RULE_SETUP
1899 #line 344 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1900 { RET_TOK(CastOpVal, FPTrunc, FPTRUNC); }
1901         YY_BREAK
1902 case 108:
1903 YY_RULE_SETUP
1904 #line 345 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1905 { RET_TOK(CastOpVal, FPExt, FPEXT); }
1906         YY_BREAK
1907 case 109:
1908 YY_RULE_SETUP
1909 #line 346 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1910 { RET_TOK(CastOpVal, UIToFP, UITOFP); }
1911         YY_BREAK
1912 case 110:
1913 YY_RULE_SETUP
1914 #line 347 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1915 { RET_TOK(CastOpVal, SIToFP, SITOFP); }
1916         YY_BREAK
1917 case 111:
1918 YY_RULE_SETUP
1919 #line 348 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1920 { RET_TOK(CastOpVal, FPToUI, FPTOUI); }
1921         YY_BREAK
1922 case 112:
1923 YY_RULE_SETUP
1924 #line 349 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1925 { RET_TOK(CastOpVal, FPToSI, FPTOSI); }
1926         YY_BREAK
1927 case 113:
1928 YY_RULE_SETUP
1929 #line 350 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1930 { RET_TOK(CastOpVal, IntToPtr, INTTOPTR); }
1931         YY_BREAK
1932 case 114:
1933 YY_RULE_SETUP
1934 #line 351 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1935 { RET_TOK(CastOpVal, PtrToInt, PTRTOINT); }
1936         YY_BREAK
1937 case 115:
1938 YY_RULE_SETUP
1939 #line 352 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1940 { RET_TOK(CastOpVal, BitCast, BITCAST); }
1941         YY_BREAK
1942 case 116:
1943 YY_RULE_SETUP
1944 #line 353 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1945 { RET_TOK(OtherOpVal, Select, SELECT); }
1946         YY_BREAK
1947 case 117:
1948 YY_RULE_SETUP
1949 #line 354 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1950 { RET_TOK(OtherOpVal, VAArg , VAARG); }
1951         YY_BREAK
1952 case 118:
1953 YY_RULE_SETUP
1954 #line 355 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1955 { RET_TOK(TermOpVal, Ret, RET); }
1956         YY_BREAK
1957 case 119:
1958 YY_RULE_SETUP
1959 #line 356 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1960 { RET_TOK(TermOpVal, Br, BR); }
1961         YY_BREAK
1962 case 120:
1963 YY_RULE_SETUP
1964 #line 357 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1965 { RET_TOK(TermOpVal, Switch, SWITCH); }
1966         YY_BREAK
1967 case 121:
1968 YY_RULE_SETUP
1969 #line 358 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1970 { RET_TOK(TermOpVal, Invoke, INVOKE); }
1971         YY_BREAK
1972 case 122:
1973 YY_RULE_SETUP
1974 #line 359 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1975 { RET_TOK(TermOpVal, Unwind, UNWIND); }
1976         YY_BREAK
1977 case 123:
1978 YY_RULE_SETUP
1979 #line 360 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1980 { RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
1981         YY_BREAK
1982 case 124:
1983 YY_RULE_SETUP
1984 #line 362 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1985 { RET_TOK(MemOpVal, Malloc, MALLOC); }
1986         YY_BREAK
1987 case 125:
1988 YY_RULE_SETUP
1989 #line 363 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1990 { RET_TOK(MemOpVal, Alloca, ALLOCA); }
1991         YY_BREAK
1992 case 126:
1993 YY_RULE_SETUP
1994 #line 364 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1995 { RET_TOK(MemOpVal, Free, FREE); }
1996         YY_BREAK
1997 case 127:
1998 YY_RULE_SETUP
1999 #line 365 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2000 { RET_TOK(MemOpVal, Load, LOAD); }
2001         YY_BREAK
2002 case 128:
2003 YY_RULE_SETUP
2004 #line 366 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2005 { RET_TOK(MemOpVal, Store, STORE); }
2006         YY_BREAK
2007 case 129:
2008 YY_RULE_SETUP
2009 #line 367 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2010 { RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
2011         YY_BREAK
2012 case 130:
2013 YY_RULE_SETUP
2014 #line 369 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2015 { RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
2016         YY_BREAK
2017 case 131:
2018 YY_RULE_SETUP
2019 #line 370 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2020 { RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }
2021         YY_BREAK
2022 case 132:
2023 YY_RULE_SETUP
2024 #line 371 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2025 { RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
2026         YY_BREAK
2027 case 133:
2028 YY_RULE_SETUP
2029 #line 374 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2030 {
2031                   llvmAsmlval.StrVal = new std::string(yytext+1);   // Skip %
2032                   return LOCALVAR;
2033                 }
2034         YY_BREAK
2035 case 134:
2036 YY_RULE_SETUP
2037 #line 378 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2038 {
2039                   llvmAsmlval.StrVal = new std::string(yytext+1);   // Skip @
2040                   return GLOBALVAR;
2041                 }
2042         YY_BREAK
2043 case 135:
2044 YY_RULE_SETUP
2045 #line 382 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2046 {
2047                   yytext[yyleng-1] = 0;            // nuke colon
2048                   llvmAsmlval.StrVal = new std::string(yytext);
2049                   return LABELSTR;
2050                 }
2051         YY_BREAK
2052 case 136:
2053 YY_RULE_SETUP
2054 #line 387 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2055 {
2056                   yytext[yyleng-2] = 0;  // nuke colon, end quote
2057                   const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
2058                   llvmAsmlval.StrVal = 
2059                     new std::string(yytext+1, EndChar - yytext - 1);
2060                   return LABELSTR;
2061                 }
2062         YY_BREAK
2063 case 137:
2064 YY_RULE_SETUP
2065 #line 395 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2066 { yytext[yyleng-1] = 0;           // nuke end quote
2067                    const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
2068                    llvmAsmlval.StrVal = 
2069                      new std::string(yytext+1, EndChar - yytext - 1);
2070                    return STRINGCONSTANT;
2071                  }
2072         YY_BREAK
2073 case 138:
2074 YY_RULE_SETUP
2075 #line 401 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2076 {
2077                      yytext[yyleng-1] = 0;         // nuke end quote
2078                      const char* EndChar = 
2079                        UnEscapeLexed(yytext+2, yytext+yyleng);
2080                      llvmAsmlval.StrVal = 
2081                        new std::string(yytext+2, EndChar - yytext - 2);
2082                      return ATSTRINGCONSTANT;
2083                    }
2084         YY_BREAK
2085 case 139:
2086 YY_RULE_SETUP
2087 #line 409 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2088 {
2089                      yytext[yyleng-1] = 0;           // nuke end quote
2090                      const char* EndChar = 
2091                        UnEscapeLexed(yytext+2, yytext+yyleng);
2092                      llvmAsmlval.StrVal = 
2093                        new std::string(yytext+2, EndChar - yytext - 2);
2094                      return PCTSTRINGCONSTANT;
2095                    }
2096         YY_BREAK
2097 case 140:
2098 YY_RULE_SETUP
2099 #line 417 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2100
2101                   uint32_t numBits = ((yyleng * 64) / 19) + 1;
2102                   APInt Tmp(numBits, yytext, yyleng, 10);
2103                   uint32_t activeBits = Tmp.getActiveBits();
2104                   if (activeBits > 0 && activeBits < numBits)
2105                     Tmp.trunc(activeBits);
2106                   if (Tmp.getBitWidth() > 64) {
2107                     llvmAsmlval.APIntVal = new APInt(Tmp);
2108                     return EUAPINTVAL; 
2109                   } else {
2110                     llvmAsmlval.UInt64Val = Tmp.getZExtValue();
2111                     return EUINT64VAL;
2112                   }
2113                 }
2114         YY_BREAK
2115 case 141:
2116 YY_RULE_SETUP
2117 #line 431 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2118 {
2119                   uint32_t numBits = (((yyleng-1) * 64) / 19) + 2;
2120                   APInt Tmp(numBits, yytext, yyleng, 10);
2121                   uint32_t minBits = Tmp.getMinSignedBits();
2122                   if (minBits > 0 && minBits < numBits)
2123                     Tmp.trunc(minBits);
2124                   if (Tmp.getBitWidth() > 64) {
2125                     llvmAsmlval.APIntVal = new APInt(Tmp);
2126                     return ESAPINTVAL;
2127                   } else {
2128                     llvmAsmlval.SInt64Val = Tmp.getSExtValue();
2129                     return ESINT64VAL;
2130                   }
2131                 }
2132         YY_BREAK
2133 case 142:
2134 YY_RULE_SETUP
2135 #line 446 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2136 { int len = yyleng - 3;
2137                    uint32_t bits = len * 4;
2138                    APInt Tmp(bits, yytext+3, len, 16);
2139                    uint32_t activeBits = Tmp.getActiveBits();
2140                    if (activeBits > 0 && activeBits < bits)
2141                      Tmp.trunc(activeBits);
2142                    if (Tmp.getBitWidth() > 64) {
2143                      llvmAsmlval.APIntVal = new APInt(Tmp);
2144                      return yytext[0] == 's' ? ESAPINTVAL : EUAPINTVAL;
2145                    } else if (yytext[0] == 's') {
2146                      llvmAsmlval.SInt64Val = Tmp.getSExtValue();
2147                      return ESINT64VAL;
2148                    } else {
2149                      llvmAsmlval.UInt64Val = Tmp.getZExtValue();
2150                      return EUINT64VAL;
2151                    }
2152                  }
2153         YY_BREAK
2154 case 143:
2155 YY_RULE_SETUP
2156 #line 464 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2157 {
2158                   uint64_t Val = atoull(yytext+1);
2159                   if ((unsigned)Val != Val)
2160                     GenerateError("Invalid value number (too large)!");
2161                   llvmAsmlval.UIntVal = unsigned(Val);
2162                   return LOCALVAL_ID;
2163                 }
2164         YY_BREAK
2165 case 144:
2166 YY_RULE_SETUP
2167 #line 471 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2168 {
2169                   uint64_t Val = atoull(yytext+1);
2170                   if ((unsigned)Val != Val)
2171                     GenerateError("Invalid value number (too large)!");
2172                   llvmAsmlval.UIntVal = unsigned(Val);
2173                   return GLOBALVAL_ID;
2174                 }
2175         YY_BREAK
2176 case 145:
2177 YY_RULE_SETUP
2178 #line 479 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2179 { llvmAsmlval.FPVal = new APFloat(atof(yytext)); return FPVAL; }
2180         YY_BREAK
2181 case 146:
2182 YY_RULE_SETUP
2183 #line 480 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2184 { llvmAsmlval.FPVal = new APFloat(HexToFP(yytext+2)); 
2185                   return FPVAL; 
2186                 }
2187         YY_BREAK
2188 case 147:
2189 YY_RULE_SETUP
2190 #line 483 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2191 { uint64_t Pair[2];
2192                     HexToIntPair(yytext+3, Pair);
2193                     llvmAsmlval.FPVal = new APFloat(APInt(80, 2, Pair));
2194                     return FPVAL;
2195                 }
2196         YY_BREAK
2197 case 148:
2198 YY_RULE_SETUP
2199 #line 488 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2200 { uint64_t Pair[2];
2201                     HexToIntPair(yytext+3, Pair);
2202                     llvmAsmlval.FPVal = new APFloat(APInt(128, 2, Pair));
2203                     return FPVAL;
2204                 }
2205         YY_BREAK
2206 case 149:
2207 YY_RULE_SETUP
2208 #line 493 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2209 { uint64_t Pair[2];
2210                     HexToIntPair(yytext+3, Pair);
2211                     llvmAsmlval.FPVal = new APFloat(APInt(128, 2, Pair));
2212                     return FPVAL;
2213                 }
2214         YY_BREAK
2215 case YY_STATE_EOF(INITIAL):
2216 #line 499 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2217 {
2218                   /* Make sure to free the internal buffers for flex when we are
2219                    * done reading our input!
2220                    */
2221                   yy_delete_buffer(YY_CURRENT_BUFFER);
2222                   return EOF;
2223                 }
2224         YY_BREAK
2225 case 150:
2226 YY_RULE_SETUP
2227 #line 507 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2228 { /* Ignore whitespace */ }
2229         YY_BREAK
2230 case 151:
2231 YY_RULE_SETUP
2232 #line 508 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2233 { return yytext[0]; }
2234         YY_BREAK
2235 case 152:
2236 YY_RULE_SETUP
2237 #line 510 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2238 YY_FATAL_ERROR( "flex scanner jammed" );
2239         YY_BREAK
2240 #line 2241 "Lexer.cpp"
2241
2242         case YY_END_OF_BUFFER:
2243                 {
2244                 /* Amount of text matched not including the EOB char. */
2245                 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
2246
2247                 /* Undo the effects of YY_DO_BEFORE_ACTION. */
2248                 *yy_cp = yy_hold_char;
2249                 YY_RESTORE_YY_MORE_OFFSET
2250
2251                 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
2252                         {
2253                         /* We're scanning a new file or input source.  It's
2254                          * possible that this happened because the user
2255                          * just pointed yyin at a new source and called
2256                          * yylex().  If so, then we have to assure
2257                          * consistency between yy_current_buffer and our
2258                          * globals.  Here is the right place to do so, because
2259                          * this is the first action (other than possibly a
2260                          * back-up) that will match for the new input source.
2261                          */
2262                         yy_n_chars = yy_current_buffer->yy_n_chars;
2263                         yy_current_buffer->yy_input_file = yyin;
2264                         yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
2265                         }
2266
2267                 /* Note that here we test for yy_c_buf_p "<=" to the position
2268                  * of the first EOB in the buffer, since yy_c_buf_p will
2269                  * already have been incremented past the NUL character
2270                  * (since all states make transitions on EOB to the
2271                  * end-of-buffer state).  Contrast this with the test
2272                  * in input().
2273                  */
2274                 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
2275                         { /* This was really a NUL. */
2276                         yy_state_type yy_next_state;
2277
2278                         yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
2279
2280                         yy_current_state = yy_get_previous_state();
2281
2282                         /* Okay, we're now positioned to make the NUL
2283                          * transition.  We couldn't have
2284                          * yy_get_previous_state() go ahead and do it
2285                          * for us because it doesn't know how to deal
2286                          * with the possibility of jamming (and we don't
2287                          * want to build jamming into it because then it
2288                          * will run more slowly).
2289                          */
2290
2291                         yy_next_state = yy_try_NUL_trans( yy_current_state );
2292
2293                         yy_bp = yytext_ptr + YY_MORE_ADJ;
2294
2295                         if ( yy_next_state )
2296                                 {
2297                                 /* Consume the NUL. */
2298                                 yy_cp = ++yy_c_buf_p;
2299                                 yy_current_state = yy_next_state;
2300                                 goto yy_match;
2301                                 }
2302
2303                         else
2304                                 {
2305                                 yy_cp = yy_c_buf_p;
2306                                 goto yy_find_action;
2307                                 }
2308                         }
2309
2310                 else switch ( yy_get_next_buffer() )
2311                         {
2312                         case EOB_ACT_END_OF_FILE:
2313                                 {
2314                                 yy_did_buffer_switch_on_eof = 0;
2315
2316                                 if ( yywrap() )
2317                                         {
2318                                         /* Note: because we've taken care in
2319                                          * yy_get_next_buffer() to have set up
2320                                          * yytext, we can now set up
2321                                          * yy_c_buf_p so that if some total
2322                                          * hoser (like flex itself) wants to
2323                                          * call the scanner after we return the
2324                                          * YY_NULL, it'll still work - another
2325                                          * YY_NULL will get returned.
2326                                          */
2327                                         yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
2328
2329                                         yy_act = YY_STATE_EOF(YY_START);
2330                                         goto do_action;
2331                                         }
2332
2333                                 else
2334                                         {
2335                                         if ( ! yy_did_buffer_switch_on_eof )
2336                                                 YY_NEW_FILE;
2337                                         }
2338                                 break;
2339                                 }
2340
2341                         case EOB_ACT_CONTINUE_SCAN:
2342                                 yy_c_buf_p =
2343                                         yytext_ptr + yy_amount_of_matched_text;
2344
2345                                 yy_current_state = yy_get_previous_state();
2346
2347                                 yy_cp = yy_c_buf_p;
2348                                 yy_bp = yytext_ptr + YY_MORE_ADJ;
2349                                 goto yy_match;
2350
2351                         case EOB_ACT_LAST_MATCH:
2352                                 yy_c_buf_p =
2353                                 &yy_current_buffer->yy_ch_buf[yy_n_chars];
2354
2355                                 yy_current_state = yy_get_previous_state();
2356
2357                                 yy_cp = yy_c_buf_p;
2358                                 yy_bp = yytext_ptr + YY_MORE_ADJ;
2359                                 goto yy_find_action;
2360                         }
2361                 break;
2362                 }
2363
2364         default:
2365                 YY_FATAL_ERROR(
2366                         "fatal flex scanner internal error--no action found" );
2367         } /* end of action switch */
2368                 } /* end of scanning one token */
2369         } /* end of yylex */
2370
2371
2372 /* yy_get_next_buffer - try to read in a new buffer
2373  *
2374  * Returns a code representing an action:
2375  *      EOB_ACT_LAST_MATCH -
2376  *      EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2377  *      EOB_ACT_END_OF_FILE - end of file
2378  */
2379
2380 static int yy_get_next_buffer()
2381         {
2382         register char *dest = yy_current_buffer->yy_ch_buf;
2383         register char *source = yytext_ptr;
2384         register int number_to_move, i;
2385         int ret_val;
2386
2387         if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
2388                 YY_FATAL_ERROR(
2389                 "fatal flex scanner internal error--end of buffer missed" );
2390
2391         if ( yy_current_buffer->yy_fill_buffer == 0 )
2392                 { /* Don't try to fill the buffer, so this is an EOF. */
2393                 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
2394                         {
2395                         /* We matched a single character, the EOB, so
2396                          * treat this as a final EOF.
2397                          */
2398                         return EOB_ACT_END_OF_FILE;
2399                         }
2400
2401                 else
2402                         {
2403                         /* We matched some text prior to the EOB, first
2404                          * process it.
2405                          */
2406                         return EOB_ACT_LAST_MATCH;
2407                         }
2408                 }
2409
2410         /* Try to read more data. */
2411
2412         /* First move last chars to start of buffer. */
2413         number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
2414
2415         for ( i = 0; i < number_to_move; ++i )
2416                 *(dest++) = *(source++);
2417
2418         if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2419                 /* don't do the read, it's not guaranteed to return an EOF,
2420                  * just force an EOF
2421                  */
2422                 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
2423
2424         else
2425                 {
2426                 int num_to_read =
2427                         yy_current_buffer->yy_buf_size - number_to_move - 1;
2428
2429                 while ( num_to_read <= 0 )
2430                         { /* Not enough room in the buffer - grow it. */
2431 #ifdef YY_USES_REJECT
2432                         YY_FATAL_ERROR(
2433 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2434 #else
2435
2436                         /* just a shorter name for the current buffer */
2437                         YY_BUFFER_STATE b = yy_current_buffer;
2438
2439                         int yy_c_buf_p_offset =
2440                                 (int) (yy_c_buf_p - b->yy_ch_buf);
2441
2442                         if ( b->yy_is_our_buffer )
2443                                 {
2444                                 int new_size = b->yy_buf_size * 2;
2445
2446                                 if ( new_size <= 0 )
2447                                         b->yy_buf_size += b->yy_buf_size / 8;
2448                                 else
2449                                         b->yy_buf_size *= 2;
2450
2451                                 b->yy_ch_buf = (char *)
2452                                         /* Include room in for 2 EOB chars. */
2453                                         yy_flex_realloc( (void *) b->yy_ch_buf,
2454                                                          b->yy_buf_size + 2 );
2455                                 }
2456                         else
2457                                 /* Can't grow it, we don't own it. */
2458                                 b->yy_ch_buf = 0;
2459
2460                         if ( ! b->yy_ch_buf )
2461                                 YY_FATAL_ERROR(
2462                                 "fatal error - scanner input buffer overflow" );
2463
2464                         yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
2465
2466                         num_to_read = yy_current_buffer->yy_buf_size -
2467                                                 number_to_move - 1;
2468 #endif
2469                         }
2470
2471                 if ( num_to_read > YY_READ_BUF_SIZE )
2472                         num_to_read = YY_READ_BUF_SIZE;
2473
2474                 /* Read in more data. */
2475                 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
2476                         yy_n_chars, num_to_read );
2477
2478                 yy_current_buffer->yy_n_chars = yy_n_chars;
2479                 }
2480
2481         if ( yy_n_chars == 0 )
2482                 {
2483                 if ( number_to_move == YY_MORE_ADJ )
2484                         {
2485                         ret_val = EOB_ACT_END_OF_FILE;
2486                         yyrestart( yyin );
2487                         }
2488
2489                 else
2490                         {
2491                         ret_val = EOB_ACT_LAST_MATCH;
2492                         yy_current_buffer->yy_buffer_status =
2493                                 YY_BUFFER_EOF_PENDING;
2494                         }
2495                 }
2496
2497         else
2498                 ret_val = EOB_ACT_CONTINUE_SCAN;
2499
2500         yy_n_chars += number_to_move;
2501         yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
2502         yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
2503
2504         yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
2505
2506         return ret_val;
2507         }
2508
2509
2510 /* yy_get_previous_state - get the state just before the EOB char was reached */
2511
2512 static yy_state_type yy_get_previous_state()
2513         {
2514         register yy_state_type yy_current_state;
2515         register char *yy_cp;
2516
2517         yy_current_state = yy_start;
2518         yy_state_ptr = yy_state_buf;
2519         *yy_state_ptr++ = yy_current_state;
2520
2521         for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
2522                 {
2523                 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2524                 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2525                         {
2526                         yy_current_state = (int) yy_def[yy_current_state];
2527                         if ( yy_current_state >= 606 )
2528                                 yy_c = yy_meta[(unsigned int) yy_c];
2529                         }
2530                 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2531                 *yy_state_ptr++ = yy_current_state;
2532                 }
2533
2534         return yy_current_state;
2535         }
2536
2537
2538 /* yy_try_NUL_trans - try to make a transition on the NUL character
2539  *
2540  * synopsis
2541  *      next_state = yy_try_NUL_trans( current_state );
2542  */
2543
2544 #ifdef YY_USE_PROTOS
2545 static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
2546 #else
2547 static yy_state_type yy_try_NUL_trans( yy_current_state )
2548 yy_state_type yy_current_state;
2549 #endif
2550         {
2551         register int yy_is_jam;
2552
2553         register YY_CHAR yy_c = 1;
2554         while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2555                 {
2556                 yy_current_state = (int) yy_def[yy_current_state];
2557                 if ( yy_current_state >= 606 )
2558                         yy_c = yy_meta[(unsigned int) yy_c];
2559                 }
2560         yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2561         yy_is_jam = (yy_current_state == 605);
2562         if ( ! yy_is_jam )
2563                 *yy_state_ptr++ = yy_current_state;
2564
2565         return yy_is_jam ? 0 : yy_current_state;
2566         }
2567
2568
2569 #ifndef YY_NO_UNPUT
2570 #ifdef YY_USE_PROTOS
2571 static inline void yyunput( int c, register char *yy_bp )
2572 #else
2573 static inline void yyunput( c, yy_bp )
2574 int c;
2575 register char *yy_bp;
2576 #endif
2577         {
2578         register char *yy_cp = yy_c_buf_p;
2579
2580         /* undo effects of setting up yytext */
2581         *yy_cp = yy_hold_char;
2582
2583         if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
2584                 { /* need to shift things up to make room */
2585                 /* +2 for EOB chars. */
2586                 register int number_to_move = yy_n_chars + 2;
2587                 register char *dest = &yy_current_buffer->yy_ch_buf[
2588                                         yy_current_buffer->yy_buf_size + 2];
2589                 register char *source =
2590                                 &yy_current_buffer->yy_ch_buf[number_to_move];
2591
2592                 while ( source > yy_current_buffer->yy_ch_buf )
2593                         *--dest = *--source;
2594
2595                 yy_cp += (int) (dest - source);
2596                 yy_bp += (int) (dest - source);
2597                 yy_current_buffer->yy_n_chars =
2598                         yy_n_chars = yy_current_buffer->yy_buf_size;
2599
2600                 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
2601                         YY_FATAL_ERROR( "flex scanner push-back overflow" );
2602                 }
2603
2604         *--yy_cp = (char) c;
2605
2606         if ( c == '\n' )
2607                 --yylineno;
2608
2609         yytext_ptr = yy_bp;
2610         yy_hold_char = *yy_cp;
2611         yy_c_buf_p = yy_cp;
2612         }
2613 #endif  /* ifndef YY_NO_UNPUT */
2614
2615
2616 #ifdef __cplusplus
2617 static int yyinput()
2618 #else
2619 static int input()
2620 #endif
2621         {
2622         int c;
2623
2624         *yy_c_buf_p = yy_hold_char;
2625
2626         if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
2627                 {
2628                 /* yy_c_buf_p now points to the character we want to return.
2629                  * If this occurs *before* the EOB characters, then it's a
2630                  * valid NUL; if not, then we've hit the end of the buffer.
2631                  */
2632                 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
2633                         /* This was really a NUL. */
2634                         *yy_c_buf_p = '\0';
2635
2636                 else
2637                         { /* need more input */
2638                         int offset = yy_c_buf_p - yytext_ptr;
2639                         ++yy_c_buf_p;
2640
2641                         switch ( yy_get_next_buffer() )
2642                                 {
2643                                 case EOB_ACT_LAST_MATCH:
2644                                         /* This happens because yy_g_n_b()
2645                                          * sees that we've accumulated a
2646                                          * token and flags that we need to
2647                                          * try matching the token before
2648                                          * proceeding.  But for input(),
2649                                          * there's no matching to consider.
2650                                          * So convert the EOB_ACT_LAST_MATCH
2651                                          * to EOB_ACT_END_OF_FILE.
2652                                          */
2653
2654                                         /* Reset buffer status. */
2655                                         yyrestart( yyin );
2656
2657                                         /* fall through */
2658
2659                                 case EOB_ACT_END_OF_FILE:
2660                                         {
2661                                         if ( yywrap() )
2662                                                 return EOF;
2663
2664                                         if ( ! yy_did_buffer_switch_on_eof )
2665                                                 YY_NEW_FILE;
2666 #ifdef __cplusplus
2667                                         return yyinput();
2668 #else
2669                                         return input();
2670 #endif
2671                                         }
2672
2673                                 case EOB_ACT_CONTINUE_SCAN:
2674                                         yy_c_buf_p = yytext_ptr + offset;
2675                                         break;
2676                                 }
2677                         }
2678                 }
2679
2680         c = *(unsigned char *) yy_c_buf_p;      /* cast for 8-bit char's */
2681         *yy_c_buf_p = '\0';     /* preserve yytext */
2682         yy_hold_char = *++yy_c_buf_p;
2683
2684         if ( c == '\n' )
2685                 ++yylineno;
2686
2687         return c;
2688         }
2689
2690
2691 #ifdef YY_USE_PROTOS
2692 void yyrestart( FILE *input_file )
2693 #else
2694 void yyrestart( input_file )
2695 FILE *input_file;
2696 #endif
2697         {
2698         if ( ! yy_current_buffer )
2699                 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
2700
2701         yy_init_buffer( yy_current_buffer, input_file );
2702         yy_load_buffer_state();
2703         }
2704
2705
2706 #ifdef YY_USE_PROTOS
2707 void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
2708 #else
2709 void yy_switch_to_buffer( new_buffer )
2710 YY_BUFFER_STATE new_buffer;
2711 #endif
2712         {
2713         if ( yy_current_buffer == new_buffer )
2714                 return;
2715
2716         if ( yy_current_buffer )
2717                 {
2718                 /* Flush out information for old buffer. */
2719                 *yy_c_buf_p = yy_hold_char;
2720                 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
2721                 yy_current_buffer->yy_n_chars = yy_n_chars;
2722                 }
2723
2724         yy_current_buffer = new_buffer;
2725         yy_load_buffer_state();
2726
2727         /* We don't actually know whether we did this switch during
2728          * EOF (yywrap()) processing, but the only time this flag
2729          * is looked at is after yywrap() is called, so it's safe
2730          * to go ahead and always set it.
2731          */
2732         yy_did_buffer_switch_on_eof = 1;
2733         }
2734
2735
2736 #ifdef YY_USE_PROTOS
2737 void yy_load_buffer_state( void )
2738 #else
2739 void yy_load_buffer_state()
2740 #endif
2741         {
2742         yy_n_chars = yy_current_buffer->yy_n_chars;
2743         yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
2744         yyin = yy_current_buffer->yy_input_file;
2745         yy_hold_char = *yy_c_buf_p;
2746         }
2747
2748
2749 #ifdef YY_USE_PROTOS
2750 YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
2751 #else
2752 YY_BUFFER_STATE yy_create_buffer( file, size )
2753 FILE *file;
2754 int size;
2755 #endif
2756         {
2757         YY_BUFFER_STATE b;
2758
2759         b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
2760         if ( ! b )
2761                 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
2762
2763         b->yy_buf_size = size;
2764
2765         /* yy_ch_buf has to be 2 characters longer than the size given because
2766          * we need to put in 2 end-of-buffer characters.
2767          */
2768         b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
2769         if ( ! b->yy_ch_buf )
2770                 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
2771
2772         b->yy_is_our_buffer = 1;
2773
2774         yy_init_buffer( b, file );
2775
2776         return b;
2777         }
2778
2779
2780 #ifdef YY_USE_PROTOS
2781 void yy_delete_buffer( YY_BUFFER_STATE b )
2782 #else
2783 void yy_delete_buffer( b )
2784 YY_BUFFER_STATE b;
2785 #endif
2786         {
2787         if ( ! b )
2788                 return;
2789
2790         if ( b == yy_current_buffer )
2791                 yy_current_buffer = (YY_BUFFER_STATE) 0;
2792
2793         if ( b->yy_is_our_buffer )
2794                 yy_flex_free( (void *) b->yy_ch_buf );
2795
2796         yy_flex_free( (void *) b );
2797         }
2798
2799
2800 #ifndef YY_ALWAYS_INTERACTIVE
2801 #ifndef YY_NEVER_INTERACTIVE
2802 extern int isatty YY_PROTO(( int ));
2803 #endif
2804 #endif
2805
2806 #ifdef YY_USE_PROTOS
2807 void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
2808 #else
2809 void yy_init_buffer( b, file )
2810 YY_BUFFER_STATE b;
2811 FILE *file;
2812 #endif
2813
2814
2815         {
2816         yy_flush_buffer( b );
2817
2818         b->yy_input_file = file;
2819         b->yy_fill_buffer = 1;
2820
2821 #if YY_ALWAYS_INTERACTIVE
2822         b->yy_is_interactive = 1;
2823 #else
2824 #if YY_NEVER_INTERACTIVE
2825         b->yy_is_interactive = 0;
2826 #else
2827         b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
2828 #endif
2829 #endif
2830         }
2831
2832
2833 #ifdef YY_USE_PROTOS
2834 void yy_flush_buffer( YY_BUFFER_STATE b )
2835 #else
2836 void yy_flush_buffer( b )
2837 YY_BUFFER_STATE b;
2838 #endif
2839
2840         {
2841         if ( ! b )
2842                 return;
2843
2844         b->yy_n_chars = 0;
2845
2846         /* We always need two end-of-buffer characters.  The first causes
2847          * a transition to the end-of-buffer state.  The second causes
2848          * a jam in that state.
2849          */
2850         b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
2851         b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
2852
2853         b->yy_buf_pos = &b->yy_ch_buf[0];
2854
2855         b->yy_at_bol = 1;
2856         b->yy_buffer_status = YY_BUFFER_NEW;
2857
2858         if ( b == yy_current_buffer )
2859                 yy_load_buffer_state();
2860         }
2861
2862
2863 #ifndef YY_NO_SCAN_BUFFER
2864 #ifdef YY_USE_PROTOS
2865 YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
2866 #else
2867 YY_BUFFER_STATE yy_scan_buffer( base, size )
2868 char *base;
2869 yy_size_t size;
2870 #endif
2871         {
2872         YY_BUFFER_STATE b;
2873
2874         if ( size < 2 ||
2875              base[size-2] != YY_END_OF_BUFFER_CHAR ||
2876              base[size-1] != YY_END_OF_BUFFER_CHAR )
2877                 /* They forgot to leave room for the EOB's. */
2878                 return 0;
2879
2880         b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
2881         if ( ! b )
2882                 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
2883
2884         b->yy_buf_size = size - 2;      /* "- 2" to take care of EOB's */
2885         b->yy_buf_pos = b->yy_ch_buf = base;
2886         b->yy_is_our_buffer = 0;
2887         b->yy_input_file = 0;
2888         b->yy_n_chars = b->yy_buf_size;
2889         b->yy_is_interactive = 0;
2890         b->yy_at_bol = 1;
2891         b->yy_fill_buffer = 0;
2892         b->yy_buffer_status = YY_BUFFER_NEW;
2893
2894         yy_switch_to_buffer( b );
2895
2896         return b;
2897         }
2898 #endif
2899
2900
2901 #ifndef YY_NO_SCAN_STRING
2902 #ifdef YY_USE_PROTOS
2903 YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
2904 #else
2905 YY_BUFFER_STATE yy_scan_string( yy_str )
2906 yyconst char *yy_str;
2907 #endif
2908         {
2909         int len;
2910         for ( len = 0; yy_str[len]; ++len )
2911                 ;
2912
2913         return yy_scan_bytes( yy_str, len );
2914         }
2915 #endif
2916
2917
2918 #ifndef YY_NO_SCAN_BYTES
2919 #ifdef YY_USE_PROTOS
2920 YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
2921 #else
2922 YY_BUFFER_STATE yy_scan_bytes( bytes, len )
2923 yyconst char *bytes;
2924 int len;
2925 #endif
2926         {
2927         YY_BUFFER_STATE b;
2928         char *buf;
2929         yy_size_t n;
2930         int i;
2931
2932         /* Get memory for full buffer, including space for trailing EOB's. */
2933         n = len + 2;
2934         buf = (char *) yy_flex_alloc( n );
2935         if ( ! buf )
2936                 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
2937
2938         for ( i = 0; i < len; ++i )
2939                 buf[i] = bytes[i];
2940
2941         buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
2942
2943         b = yy_scan_buffer( buf, n );
2944         if ( ! b )
2945                 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
2946
2947         /* It's okay to grow etc. this buffer, and we should throw it
2948          * away when we're done.
2949          */
2950         b->yy_is_our_buffer = 1;
2951
2952         return b;
2953         }
2954 #endif
2955
2956
2957 #ifndef YY_NO_PUSH_STATE
2958 #ifdef YY_USE_PROTOS
2959 static void yy_push_state( int new_state )
2960 #else
2961 static void yy_push_state( new_state )
2962 int new_state;
2963 #endif
2964         {
2965         if ( yy_start_stack_ptr >= yy_start_stack_depth )
2966                 {
2967                 yy_size_t new_size;
2968
2969                 yy_start_stack_depth += YY_START_STACK_INCR;
2970                 new_size = yy_start_stack_depth * sizeof( int );
2971
2972                 if ( ! yy_start_stack )
2973                         yy_start_stack = (int *) yy_flex_alloc( new_size );
2974
2975                 else
2976                         yy_start_stack = (int *) yy_flex_realloc(
2977                                         (void *) yy_start_stack, new_size );
2978
2979                 if ( ! yy_start_stack )
2980                         YY_FATAL_ERROR(
2981                         "out of memory expanding start-condition stack" );
2982                 }
2983
2984         yy_start_stack[yy_start_stack_ptr++] = YY_START;
2985
2986         BEGIN(new_state);
2987         }
2988 #endif
2989
2990
2991 #ifndef YY_NO_POP_STATE
2992 static void yy_pop_state()
2993         {
2994         if ( --yy_start_stack_ptr < 0 )
2995                 YY_FATAL_ERROR( "start-condition stack underflow" );
2996
2997         BEGIN(yy_start_stack[yy_start_stack_ptr]);
2998         }
2999 #endif
3000
3001
3002 #ifndef YY_NO_TOP_STATE
3003 static int yy_top_state()
3004         {
3005         return yy_start_stack[yy_start_stack_ptr - 1];
3006         }
3007 #endif
3008
3009 #ifndef YY_EXIT_FAILURE
3010 #define YY_EXIT_FAILURE 2
3011 #endif
3012
3013 #ifdef YY_USE_PROTOS
3014 static void yy_fatal_error( yyconst char msg[] )
3015 #else
3016 static void yy_fatal_error( msg )
3017 char msg[];
3018 #endif
3019         {
3020         (void) fprintf( stderr, "%s\n", msg );
3021         exit( YY_EXIT_FAILURE );
3022         }
3023
3024
3025
3026 /* Redefine yyless() so it works in section 3 code. */
3027
3028 #undef yyless
3029 #define yyless(n) \
3030         do \
3031                 { \
3032                 /* Undo effects of setting up yytext. */ \
3033                 yytext[yyleng] = yy_hold_char; \
3034                 yy_c_buf_p = yytext + n; \
3035                 yy_hold_char = *yy_c_buf_p; \
3036                 *yy_c_buf_p = '\0'; \
3037                 yyleng = n; \
3038                 } \
3039         while ( 0 )
3040
3041
3042 /* Internal utility routines. */
3043
3044 #ifndef yytext_ptr
3045 #ifdef YY_USE_PROTOS
3046 static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
3047 #else
3048 static void yy_flex_strncpy( s1, s2, n )
3049 char *s1;
3050 yyconst char *s2;
3051 int n;
3052 #endif
3053         {
3054         register int i;
3055         for ( i = 0; i < n; ++i )
3056                 s1[i] = s2[i];
3057         }
3058 #endif
3059
3060 #ifdef YY_NEED_STRLEN
3061 #ifdef YY_USE_PROTOS
3062 static int yy_flex_strlen( yyconst char *s )
3063 #else
3064 static int yy_flex_strlen( s )
3065 yyconst char *s;
3066 #endif
3067         {
3068         register int n;
3069         for ( n = 0; s[n]; ++n )
3070                 ;
3071
3072         return n;
3073         }
3074 #endif
3075
3076
3077 #ifdef YY_USE_PROTOS
3078 static void *yy_flex_alloc( yy_size_t size )
3079 #else
3080 static void *yy_flex_alloc( size )
3081 yy_size_t size;
3082 #endif
3083         {
3084         return (void *) malloc( size );
3085         }
3086
3087 #ifdef YY_USE_PROTOS
3088 static inline void *yy_flex_realloc( void *ptr, yy_size_t size )
3089 #else
3090 static inline void *yy_flex_realloc( ptr, size )
3091 void *ptr;
3092 yy_size_t size;
3093 #endif
3094         {
3095         /* The cast to (char *) in the following accommodates both
3096          * implementations that use char* generic pointers, and those
3097          * that use void* generic pointers.  It works with the latter
3098          * because both ANSI C and C++ allow castless assignment from
3099          * any pointer type to void*, and deal with argument conversions
3100          * as though doing an assignment.
3101          */
3102         return (void *) realloc( (char *) ptr, size );
3103         }
3104
3105 #ifdef YY_USE_PROTOS
3106 static void yy_flex_free( void *ptr )
3107 #else
3108 static void yy_flex_free( ptr )
3109 void *ptr;
3110 #endif
3111         {
3112         free( ptr );
3113         }
3114
3115 #if YY_MAIN
3116 int main()
3117         {
3118         yylex();
3119         return 0;
3120         }
3121 #endif
3122 #line 510 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
3123