blob: 0111c0095f30022226cbe81ee502c6f558e34987 [file] [log] [blame]
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001#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
Reid Spencer68a24bd2005-08-27 18:50:39 +000018
Reid Spencer9c9b63a2007-04-28 16:07:31 +000019#line 20 "Lexer.cpp"
20/* A lexical scanner generated by flex*/
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +000021
Reid Spencer9c9b63a2007-04-28 16:07:31 +000022/* Scanner skeleton version:
23 * $Header$
24 */
Reid Spencer68a24bd2005-08-27 18:50:39 +000025
Reid Spencer68a24bd2005-08-27 18:50:39 +000026#define FLEX_SCANNER
27#define YY_FLEX_MAJOR_VERSION 2
28#define YY_FLEX_MINOR_VERSION 5
29
30#include <stdio.h>
Reid Spencer9c9b63a2007-04-28 16:07:31 +000031#include <unistd.h>
Reid Spencer832254e2007-02-02 02:16:23 +000032
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +000033
Reid Spencer9c9b63a2007-04-28 16:07:31 +000034/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
35#ifdef c_plusplus
36#ifndef __cplusplus
37#define __cplusplus
38#endif
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +000039#endif
40
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +000041
42#ifdef __cplusplus
Reid Spencer832254e2007-02-02 02:16:23 +000043
Reid Spencer9c9b63a2007-04-28 16:07:31 +000044#include <stdlib.h>
45
46/* Use prototypes in function declarations. */
47#define YY_USE_PROTOS
48
Reid Spencer68a24bd2005-08-27 18:50:39 +000049/* The "const" storage-class-modifier is valid. */
50#define YY_USE_CONST
51
52#else /* ! __cplusplus */
53
54#if __STDC__
55
Reid Spencer9c9b63a2007-04-28 16:07:31 +000056#define YY_USE_PROTOS
Reid Spencer68a24bd2005-08-27 18:50:39 +000057#define YY_USE_CONST
58
59#endif /* __STDC__ */
60#endif /* ! __cplusplus */
61
Reid Spencer9c9b63a2007-04-28 16:07:31 +000062#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
Reid Spencer68a24bd2005-08-27 18:50:39 +000071#ifdef YY_USE_CONST
72#define yyconst const
73#else
74#define yyconst
75#endif
76
Reid Spencer9c9b63a2007-04-28 16:07:31 +000077
78#ifdef YY_USE_PROTOS
79#define YY_PROTO(proto) proto
80#else
81#define YY_PROTO(proto) ()
82#endif
83
Reid Spencer68a24bd2005-08-27 18:50:39 +000084/* 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 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +000098#define BEGIN yy_start = 1 + 2 *
Reid Spencer68a24bd2005-08-27 18:50:39 +000099
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 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000104#define YY_START ((yy_start - 1) / 2)
Reid Spencer68a24bd2005-08-27 18:50:39 +0000105#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". */
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000111#define YY_NEW_FILE yyrestart( yyin )
Reid Spencer68a24bd2005-08-27 18:50:39 +0000112
113#define YY_END_OF_BUFFER_CHAR 0
114
115/* Size of default input buffer. */
116#define YY_BUF_SIZE (16384*64)
117
118typedef struct yy_buffer_state *YY_BUFFER_STATE;
119
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000120extern int yyleng;
121extern FILE *yyin, *yyout;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000122
123#define EOB_ACT_CONTINUE_SCAN 0
124#define EOB_ACT_END_OF_FILE 1
125#define EOB_ACT_LAST_MATCH 2
126
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000127/* 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
Reid Spencer68a24bd2005-08-27 18:50:39 +0000143#define yyless(n) \
144 do \
145 { \
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000146 /* Undo effects of setting up yytext. */ \
147 *yy_cp = yy_hold_char; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000148 YY_RESTORE_YY_MORE_OFFSET \
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000149 yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
150 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000151 } \
152 while ( 0 )
153
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000154#define unput(c) yyunput( c, yytext_ptr )
155
156/* Some routines like yy_flex_realloc() are emitted as static but are
157 not called by all lexers. This generates warnings in some compilers,
158 notably GCC. Arrange to suppress these. */
159#ifdef __GNUC__
160#define YY_MAY_BE_UNUSED __attribute__((unused))
161#else
162#define YY_MAY_BE_UNUSED
163#endif
Reid Spencer6f407902007-01-13 05:00:46 +0000164
Reid Spencer68a24bd2005-08-27 18:50:39 +0000165/* The following is because we cannot portably get our hands on size_t
166 * (without autoconf's help, which isn't available because we want
167 * flex-generated scanners to compile on their own).
168 */
169typedef unsigned int yy_size_t;
170
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000171
Reid Spencer68a24bd2005-08-27 18:50:39 +0000172struct yy_buffer_state
173 {
174 FILE *yy_input_file;
175
176 char *yy_ch_buf; /* input buffer */
177 char *yy_buf_pos; /* current position in input buffer */
178
179 /* Size of input buffer in bytes, not including room for EOB
180 * characters.
181 */
182 yy_size_t yy_buf_size;
183
184 /* Number of characters read into yy_ch_buf, not including EOB
185 * characters.
186 */
187 int yy_n_chars;
188
189 /* Whether we "own" the buffer - i.e., we know we created it,
190 * and can realloc() it to grow it, and should free() it to
191 * delete it.
192 */
193 int yy_is_our_buffer;
194
195 /* Whether this is an "interactive" input source; if so, and
196 * if we're using stdio for input, then we want to use getc()
197 * instead of fread(), to make sure we stop fetching input after
198 * each newline.
199 */
200 int yy_is_interactive;
201
202 /* Whether we're considered to be at the beginning of a line.
203 * If so, '^' rules will be active on the next match, otherwise
204 * not.
205 */
206 int yy_at_bol;
207
208 /* Whether to try to fill the input buffer when we reach the
209 * end of it.
210 */
211 int yy_fill_buffer;
212
213 int yy_buffer_status;
214#define YY_BUFFER_NEW 0
215#define YY_BUFFER_NORMAL 1
216 /* When an EOF's been seen but there's still some text to process
217 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
218 * shouldn't try reading from the input source any more. We might
219 * still have a bunch of tokens to match, though, because of
220 * possible backing-up.
221 *
222 * When we actually see the EOF, we change the status to "new"
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000223 * (via yyrestart()), so that the user can continue scanning by
224 * just pointing yyin at a new input file.
Reid Spencer68a24bd2005-08-27 18:50:39 +0000225 */
226#define YY_BUFFER_EOF_PENDING 2
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000227 };
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000228
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000229static YY_BUFFER_STATE yy_current_buffer = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000230
231/* We provide macros for accessing buffer states in case in the
232 * future we want to put the buffer states in a more general
233 * "scanner state".
234 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000235#define YY_CURRENT_BUFFER yy_current_buffer
Reid Spencer68a24bd2005-08-27 18:50:39 +0000236
237
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000238/* yy_hold_char holds the character lost when yytext is formed. */
Reid Spencer68a24bd2005-08-27 18:50:39 +0000239static char yy_hold_char;
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000240
Reid Spencer68a24bd2005-08-27 18:50:39 +0000241static int yy_n_chars; /* number of characters read into yy_ch_buf */
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000242
243
244int yyleng;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000245
246/* Points to current character in buffer. */
247static char *yy_c_buf_p = (char *) 0;
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000248static int yy_init = 1; /* whether we need to initialize */
Reid Spencer68a24bd2005-08-27 18:50:39 +0000249static int yy_start = 0; /* start state number */
250
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000251/* Flag which is used to allow yywrap()'s to do buffer switches
252 * instead of setting up a fresh yyin. A bit of a hack ...
Reid Spencer68a24bd2005-08-27 18:50:39 +0000253 */
254static int yy_did_buffer_switch_on_eof;
255
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000256void yyrestart YY_PROTO(( FILE *input_file ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000257
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000258void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
259void yy_load_buffer_state YY_PROTO(( void ));
260YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
261void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
262void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
263void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
264#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +0000265
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000266YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
267YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
268YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000269
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000270static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
271static inline void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) YY_MAY_BE_UNUSED;
272static void yy_flex_free YY_PROTO(( void * ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000273
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000274#define yy_new_buffer yy_create_buffer
Reid Spencer68a24bd2005-08-27 18:50:39 +0000275
276#define yy_set_interactive(is_interactive) \
277 { \
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000278 if ( ! yy_current_buffer ) \
279 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
280 yy_current_buffer->yy_is_interactive = is_interactive; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000281 }
282
283#define yy_set_bol(at_bol) \
284 { \
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000285 if ( ! yy_current_buffer ) \
286 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
287 yy_current_buffer->yy_at_bol = at_bol; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000288 }
289
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000290#define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
Reid Spencer68a24bd2005-08-27 18:50:39 +0000291
292
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000293#define YY_USES_REJECT
294
295#define yywrap() 1
Reid Spencer68a24bd2005-08-27 18:50:39 +0000296#define YY_SKIP_YYWRAP
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000297typedef unsigned char YY_CHAR;
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000298FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000299typedef int yy_state_type;
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000300extern int yylineno;
301int yylineno = 1;
302extern char *yytext;
303#define yytext_ptr yytext
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000304
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000305static yy_state_type yy_get_previous_state YY_PROTO(( void ));
306static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
307static int yy_get_next_buffer YY_PROTO(( void ));
308static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000309
310/* Done after the current pattern has been matched and before the
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000311 * corresponding action - sets up yytext.
Reid Spencer68a24bd2005-08-27 18:50:39 +0000312 */
313#define YY_DO_BEFORE_ACTION \
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000314 yytext_ptr = yy_bp; \
315 yyleng = (int) (yy_cp - yy_bp); \
316 yy_hold_char = *yy_cp; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000317 *yy_cp = '\0'; \
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000318 yy_c_buf_p = yy_cp;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000319
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000320#define YY_NUM_RULES 137
321#define YY_END_OF_BUFFER 138
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000322static yyconst short int yy_acclist[218] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000323 { 0,
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000324 138, 136, 137, 135, 136, 137, 135, 137, 136, 137,
325 136, 137, 136, 137, 136, 137, 136, 137, 136, 137,
326 128, 136, 137, 128, 136, 137, 1, 136, 137, 136,
327 137, 136, 137, 136, 137, 136, 137, 136, 137, 136,
328 137, 136, 137, 136, 137, 136, 137, 136, 137, 136,
329 137, 136, 137, 136, 137, 136, 137, 136, 137, 136,
330 137, 136, 137, 136, 137, 136, 137, 136, 137, 136,
331 137, 136, 137, 136, 137, 126, 124, 122, 131, 129,
332 133, 128, 1, 123, 132, 108, 37, 71, 53, 72,
333 67, 24, 126, 122, 133, 21, 133, 134, 127, 123,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000334
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000335 54, 66, 35, 38, 3, 56, 81, 86, 84, 85,
336 83, 82, 87, 91, 107, 76, 74, 63, 75, 73,
337 55, 89, 80, 78, 79, 77, 90, 88, 68, 125,
338 133, 133, 65, 92, 70, 59, 115, 62, 69, 116,
339 64, 23, 130, 58, 95, 61, 44, 25, 4, 51,
340 57, 60, 47, 12, 94, 133, 33, 31, 2, 5,
341 48, 97, 43, 50, 117, 93, 22, 114, 40, 7,
342 49, 39, 101, 100, 8, 16, 110, 113, 34, 52,
343 105, 99, 109, 26, 27, 98, 111, 106, 104, 6,
344 28, 96, 32, 9, 18, 10, 102, 11, 46, 45,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000345
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000346 103, 30, 13, 15, 14, 29, 36, 17, 112, 19,
347 118, 120, 121, 41, 119, 42, 20
Reid Spencer68a24bd2005-08-27 18:50:39 +0000348 } ;
349
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000350static yyconst short int yy_accept[553] =
351 { 0,
352 1, 1, 1, 2, 4, 7, 9, 11, 13, 15,
353 17, 19, 21, 24, 27, 30, 32, 34, 36, 38,
354 40, 42, 44, 46, 48, 50, 52, 54, 56, 58,
355 60, 62, 64, 66, 68, 70, 72, 74, 76, 76,
356 77, 77, 78, 79, 80, 80, 81, 81, 82, 83,
357 83, 84, 84, 85, 86, 86, 86, 86, 86, 86,
358 86, 86, 87, 87, 88, 88, 88, 88, 88, 88,
359 88, 89, 89, 89, 89, 89, 89, 89, 89, 89,
360 89, 89, 90, 90, 90, 90, 90, 90, 90, 90,
361 90, 90, 91, 91, 91, 91, 91, 91, 91, 91,
362
363 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
364 92, 92, 92, 92, 92, 92, 92, 93, 93, 93,
365 93, 93, 93, 93, 93, 93, 93, 93, 93, 93,
366 93, 93, 93, 94, 95, 96, 97, 98, 98, 99,
367 99, 100, 101, 102, 102, 102, 103, 103, 103, 104,
368 104, 104, 104, 105, 105, 105, 105, 105, 105, 105,
369 105, 105, 106, 106, 106, 106, 106, 106, 106, 106,
370 106, 106, 106, 106, 106, 106, 106, 106, 106, 106,
371 106, 106, 106, 106, 106, 106, 107, 107, 107, 107,
372 108, 109, 110, 111, 112, 113, 113, 114, 115, 115,
373
374 116, 116, 116, 116, 116, 116, 117, 118, 119, 119,
375 119, 119, 120, 121, 121, 121, 122, 122, 122, 122,
376 122, 122, 122, 122, 122, 123, 124, 125, 125, 126,
377 127, 127, 128, 129, 129, 129, 129, 129, 129, 129,
378 129, 129, 130, 130, 130, 131, 132, 132, 132, 132,
379 133, 133, 133, 133, 133, 134, 134, 134, 135, 135,
380 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
381 135, 135, 136, 137, 137, 137, 137, 137, 138, 139,
382 139, 139, 139, 140, 140, 140, 140, 140, 140, 140,
383 140, 141, 142, 142, 142, 142, 142, 143, 143, 143,
384
385 144, 145, 145, 145, 146, 146, 146, 146, 147, 148,
386 148, 148, 149, 149, 149, 149, 150, 150, 151, 152,
387 152, 152, 152, 152, 153, 153, 154, 154, 155, 155,
388 155, 156, 157, 158, 159, 159, 159, 160, 160, 160,
389 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
390 161, 161, 162, 163, 163, 163, 163, 163, 163, 163,
391 164, 164, 164, 164, 164, 165, 165, 165, 165, 165,
392 165, 165, 165, 165, 165, 165, 165, 165, 166, 166,
393 166, 166, 166, 167, 167, 168, 168, 168, 168, 168,
394 168, 168, 168, 169, 169, 169, 170, 170, 170, 170,
395
396 171, 171, 171, 171, 172, 172, 172, 173, 174, 175,
397 175, 175, 176, 177, 177, 177, 177, 178, 178, 179,
398 180, 180, 180, 181, 181, 181, 182, 182, 182, 183,
399 184, 185, 185, 186, 187, 187, 188, 189, 189, 189,
400 189, 189, 189, 190, 190, 190, 191, 192, 192, 192,
401 192, 192, 192, 193, 193, 193, 193, 193, 193, 193,
402 193, 193, 194, 194, 194, 194, 194, 194, 194, 194,
403 194, 194, 195, 195, 195, 195, 195, 196, 196, 196,
404 196, 197, 198, 199, 200, 201, 202, 202, 202, 202,
405 202, 203, 203, 203, 203, 204, 204, 205, 206, 206,
406
407 206, 206, 206, 206, 206, 206, 206, 206, 206, 206,
408 207, 207, 207, 207, 207, 207, 208, 208, 208, 208,
409 208, 208, 209, 209, 209, 209, 209, 209, 210, 210,
410 210, 210, 210, 210, 210, 210, 211, 211, 211, 211,
411 211, 212, 213, 214, 214, 215, 215, 216, 217, 217,
412 218, 218
413 } ;
414
415static yyconst int yy_ec[256] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000416 { 0,
417 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
418 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
419 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
420 1, 2, 1, 4, 1, 5, 6, 1, 1, 1,
Reid Spencera54b7cb2007-01-12 07:05:14 +0000421 1, 1, 7, 1, 8, 9, 1, 10, 11, 11,
422 11, 11, 11, 12, 11, 13, 11, 14, 15, 1,
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000423 1, 1, 1, 16, 17, 17, 17, 17, 18, 17,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000424 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
425 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000426 1, 1, 1, 1, 19, 1, 20, 21, 22, 23,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000427
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000428 24, 25, 26, 27, 28, 5, 29, 30, 31, 32,
429 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
430 43, 44, 1, 1, 1, 1, 1, 1, 1, 1,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000431 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 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
438
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, 1, 1, 1, 1, 1,
444 1, 1, 1, 1, 1
445 } ;
446
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000447static yyconst int yy_meta[45] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000448 { 0,
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000449 1, 1, 2, 3, 4, 1, 1, 4, 4, 4,
450 4, 4, 4, 5, 1, 1, 4, 4, 4, 4,
451 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
452 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
453 4, 4, 4, 4
Reid Spencer68a24bd2005-08-27 18:50:39 +0000454 } ;
455
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000456static yyconst short int yy_base[560] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000457 { 0,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000458 0, 0, 1201, 1202, 1202, 1202, 1196, 1185, 35, 39,
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000459 43, 49, 55, 61, 0, 72, 64, 67, 66, 86,
Reid Spencer3025dfd2007-03-29 18:50:01 +0000460 76, 106, 91, 65, 133, 121, 117, 99, 152, 95,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000461 78, 179, 137, 211, 139, 90, 148, 93, 1194, 1202,
462 1183, 1202, 0, 49, 185, 217, 116, 238, 254, 259,
463 0, 1192, 0, 200, 125, 149, 146, 153, 177, 63,
464 154, 1181, 160, 161, 208, 185, 264, 171, 113, 210,
465 1180, 222, 260, 228, 186, 261, 271, 110, 273, 274,
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000466 230, 289, 277, 278, 240, 290, 292, 205, 291, 232,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000467 296, 1179, 299, 303, 305, 306, 310, 313, 309, 318,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000468
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000469 311, 314, 317, 322, 328, 329, 338, 331, 335, 339,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000470 333, 332, 346, 340, 352, 355, 1178, 358, 360, 361,
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000471 364, 368, 365, 369, 381, 376, 382, 388, 367, 396,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000472 384, 395, 1177, 0, 414, 1176, 429, 447, 0, 1185,
473 1202, 0, 1174, 409, 397, 1173, 420, 414, 1172, 405,
474 399, 422, 1171, 442, 431, 449, 432, 450, 437, 452,
475 456, 1170, 457, 435, 459, 460, 461, 465, 370, 469,
476 468, 472, 470, 475, 473, 476, 489, 490, 492, 494,
477 481, 497, 495, 502, 498, 1169, 503, 501, 505, 1168,
478 1167, 1166, 1165, 1164, 1163, 507, 1162, 1161, 508, 1160,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000479
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000480 537, 512, 515, 510, 525, 1159, 1158, 1157, 516, 542,
481 531, 1156, 1155, 537, 529, 1154, 553, 555, 231, 556,
482 558, 557, 559, 560, 1153, 1152, 1151, 562, 1150, 1149,
483 563, 1148, 1147, 564, 565, 509, 524, 576, 582, 568,
484 584, 1146, 572, 570, 1202, 599, 608, 614, 618, 623,
485 608, 624, 592, 625, 1145, 626, 587, 1144, 627, 628,
486 629, 630, 632, 633, 634, 637, 639, 638, 640, 580,
487 641, 1143, 1142, 648, 651, 653, 656, 1141, 1140, 657,
488 658, 659, 1139, 665, 661, 663, 667, 674, 666, 668,
489 1138, 1137, 671, 679, 670, 680, 1136, 684, 691, 0,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000490
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000491 1135, 688, 692, 1134, 693, 696, 697, 1133, 1132, 701,
492 705, 1131, 712, 714, 699, 1130, 716, 1129, 1128, 717,
493 718, 719, 703, 1127, 723, 1126, 726, 1125, 730, 732,
494 1124, 737, 1123, 1122, 731, 738, 1121, 739, 740, 743,
495 751, 742, 744, 752, 755, 756, 758, 760, 761, 1120,
496 763, 1119, 1118, 765, 766, 767, 772, 770, 773, 1117,
497 774, 777, 781, 783, 1116, 784, 788, 787, 789, 790,
498 799, 792, 794, 800, 803, 805, 807, 1115, 808, 810,
499 811, 812, 1114, 815, 1113, 817, 823, 818, 826, 831,
500 828, 829, 1112, 836, 833, 1111, 838, 698, 839, 1110,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000501
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000502 841, 842, 843, 1109, 848, 844, 1108, 1107, 1106, 851,
503 846, 1105, 1104, 845, 860, 858, 1103, 865, 1102, 1101,
504 867, 869, 1100, 870, 872, 1099, 871, 874, 1098, 1097,
505 1096, 875, 1095, 1094, 878, 1093, 1092, 876, 877, 884,
506 883, 886, 1091, 879, 894, 1090, 1089, 895, 896, 898,
507 899, 901, 1088, 902, 905, 906, 907, 909, 908, 914,
508 910, 1087, 916, 920, 924, 927, 928, 931, 935, 932,
509 936, 1086, 937, 939, 941, 944, 1085, 945, 946, 947,
510 1074, 1064, 1063, 1062, 1061, 1060, 949, 950, 951, 953,
511 1059, 966, 967, 968, 1058, 952, 1057, 1056, 969, 971,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000512
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000513 972, 977, 978, 979, 980, 983, 984, 985, 987, 1055,
514 989, 991, 992, 995, 997, 1053, 1000, 1007, 998, 1002,
515 1009, 1049, 1010, 1011, 1013, 1015, 1016, 1046, 1022, 1019,
516 1023, 1024, 1026, 1028, 1029, 1045, 1033, 1036, 371, 1030,
517 599, 522, 474, 1039, 434, 1040, 282, 279, 1043, 244,
518 1202, 1079, 1081, 212, 1086, 1089, 167, 1093, 108
Reid Spencer68a24bd2005-08-27 18:50:39 +0000519 } ;
520
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000521static yyconst short int yy_def[560] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000522 { 0,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000523 551, 1, 551, 551, 551, 551, 552, 553, 554, 551,
524 553, 553, 553, 553, 555, 556, 553, 553, 553, 553,
525 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
526 553, 553, 553, 553, 553, 553, 553, 553, 552, 551,
527 553, 551, 557, 551, 551, 553, 553, 553, 553, 553,
528 555, 558, 559, 551, 553, 553, 553, 553, 553, 553,
529 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
530 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
531 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
532 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000533
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000534 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
535 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
536 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
537 553, 553, 551, 557, 551, 553, 553, 553, 50, 558,
538 551, 559, 553, 553, 553, 553, 553, 553, 553, 553,
539 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
540 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
541 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
542 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
543 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000544
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000545 50, 553, 553, 553, 553, 553, 553, 553, 553, 553,
546 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
547 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
548 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
549 553, 553, 553, 553, 551, 551, 551, 551, 553, 553,
550 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
551 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
552 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
553 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
554 553, 553, 553, 553, 553, 553, 553, 553, 553, 201,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000555
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000556 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
557 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
558 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
559 553, 551, 553, 553, 553, 553, 553, 553, 553, 553,
560 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
561 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
562 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
563 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
564 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
565 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000566
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000567 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
568 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
569 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
570 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
571 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
572 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
573 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
574 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
575 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
576 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000577
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000578 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
579 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
580 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
581 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
582 553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
583 0, 551, 551, 551, 551, 551, 551, 551, 551
Reid Spencer68a24bd2005-08-27 18:50:39 +0000584 } ;
585
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000586static yyconst short int yy_nxt[1247] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000587 { 0,
588 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000589 14, 14, 14, 4, 15, 16, 8, 8, 8, 17,
590 18, 19, 20, 21, 22, 23, 24, 25, 8, 26,
591 27, 28, 29, 30, 8, 31, 32, 33, 34, 35,
592 36, 37, 8, 38, 44, 44, 44, 44, 45, 45,
Reid Spencer3025dfd2007-03-29 18:50:01 +0000593 45, 45, 46, 46, 46, 46, 42, 47, 44, 44,
594 44, 44, 42, 48, 49, 49, 49, 49, 42, 48,
595 49, 49, 49, 49, 42, 52, 42, 42, 42, 42,
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000596 42, 54, 54, 54, 54, 63, 55, 64, 150, 42,
Reid Spencer3025dfd2007-03-29 18:50:01 +0000597 60, 42, 81, 56, 61, 57, 50, 58, 65, 42,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000598
Reid Spencer3d6b71e2007-04-09 01:56:05 +0000599 59, 103, 62, 42, 42, 66, 42, 70, 42, 67,
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000600 71, 142, 42, 129, 79, 68, 132, 72, 69, 42,
601 80, 101, 92, 42, 136, 73, 42, 74, 75, 42,
602 42, 93, 102, 171, 42, 76, 89, 94, 42, 77,
603 85, 78, 82, 82, 82, 82, 42, 143, 86, 90,
604 42, 161, 42, 87, 83, 91, 115, 88, 127, 42,
605 130, 42, 42, 116, 84, 42, 42, 42, 146, 117,
606 134, 128, 118, 42, 42, 95, 144, 96, 145, 119,
607 131, 97, 153, 98, 42, 99, 147, 100, 104, 152,
608 42, 151, 42, 135, 45, 45, 45, 45, 42, 42,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000609
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000610 160, 105, 106, 148, 107, 108, 109, 149, 110, 54,
611 54, 54, 54, 167, 111, 43, 112, 113, 42, 114,
612 104, 42, 156, 42, 42, 48, 46, 46, 46, 46,
613 42, 183, 162, 120, 121, 42, 122, 154, 123, 155,
614 124, 42, 125, 42, 42, 42, 126, 137, 137, 137,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000615 137, 42, 174, 42, 185, 138, 313, 42, 166, 163,
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000616 180, 138, 48, 49, 49, 49, 49, 42, 139, 139,
617 139, 139, 42, 42, 42, 139, 139, 42, 139, 139,
618 139, 139, 139, 139, 42, 157, 42, 42, 158, 164,
619 42, 42, 42, 168, 169, 42, 165, 159, 82, 82,
Reid Spencer6fd36ab2006-12-29 20:35:03 +0000620
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000621 82, 82, 42, 42, 42, 42, 173, 175, 170, 42,
622 172, 182, 42, 176, 177, 178, 42, 179, 42, 42,
623 184, 181, 42, 42, 42, 186, 42, 42, 196, 191,
624 42, 42, 189, 193, 187, 42, 195, 188, 198, 190,
625 197, 42, 42, 192, 42, 42, 42, 194, 42, 199,
626 203, 42, 42, 42, 200, 202, 214, 210, 204, 42,
627 208, 206, 212, 201, 215, 42, 216, 217, 42, 209,
628 205, 42, 211, 42, 42, 207, 213, 42, 42, 218,
629 42, 42, 42, 42, 42, 221, 240, 219, 224, 42,
630 220, 226, 229, 223, 42, 42, 222, 42, 225, 236,
Reid Spencer6fd36ab2006-12-29 20:35:03 +0000631
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000632 237, 42, 228, 231, 232, 227, 230, 241, 42, 42,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000633 42, 275, 42, 233, 546, 238, 234, 239, 42, 242,
634 257, 235, 42, 246, 246, 246, 246, 42, 251, 253,
635 243, 247, 256, 42, 252, 42, 244, 247, 137, 137,
636 137, 137, 42, 254, 42, 42, 138, 42, 42, 255,
637 42, 258, 138, 248, 249, 42, 250, 250, 250, 250,
638 42, 262, 42, 42, 259, 42, 264, 260, 261, 42,
639 42, 270, 42, 42, 42, 265, 267, 263, 42, 266,
640 268, 42, 42, 42, 274, 42, 42, 42, 42, 42,
641 281, 278, 269, 272, 42, 280, 271, 282, 279, 284,
Reid Spencer6fd36ab2006-12-29 20:35:03 +0000642
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000643 273, 276, 42, 42, 277, 42, 283, 42, 42, 290,
644 42, 42, 285, 286, 42, 42, 42, 289, 42, 291,
645 42, 42, 42, 42, 288, 42, 295, 287, 42, 42,
646 292, 293, 296, 303, 297, 42, 294, 42, 42, 324,
647 305, 298, 42, 325, 42, 299, 300, 300, 300, 300,
648 42, 301, 302, 300, 300, 42, 300, 300, 300, 300,
649 300, 300, 304, 307, 310, 306, 42, 308, 42, 42,
650 42, 42, 42, 42, 309, 42, 42, 42, 42, 314,
651 316, 42, 318, 42, 312, 42, 321, 322, 317, 42,
652 311, 315, 323, 42, 320, 42, 328, 42, 326, 319,
Reid Spencer3d6b71e2007-04-09 01:56:05 +0000653
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000654 42, 327, 329, 350, 330, 42, 338, 331, 246, 246,
655 246, 246, 42, 335, 248, 248, 247, 332, 332, 332,
656 332, 42, 247, 332, 332, 332, 332, 250, 250, 250,
657 250, 42, 250, 250, 250, 250, 42, 42, 42, 42,
658 42, 42, 42, 42, 333, 42, 42, 42, 339, 342,
659 42, 42, 42, 42, 42, 334, 336, 337, 341, 349,
660 344, 42, 351, 343, 42, 340, 42, 346, 347, 42,
661 42, 42, 42, 348, 42, 345, 42, 358, 42, 42,
662 42, 42, 359, 42, 42, 352, 357, 42, 353, 354,
663 360, 355, 42, 42, 356, 365, 361, 42, 362, 363,
Reid Spencer3d6b71e2007-04-09 01:56:05 +0000664
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000665 366, 42, 364, 367, 42, 42, 42, 369, 368, 42,
666 42, 42, 42, 374, 42, 373, 42, 375, 42, 376,
667 370, 377, 371, 372, 378, 42, 379, 42, 382, 42,
668 42, 42, 42, 381, 387, 380, 42, 383, 386, 42,
669 445, 384, 385, 42, 42, 42, 332, 332, 332, 332,
670 393, 42, 42, 42, 390, 42, 42, 42, 388, 392,
671 394, 396, 397, 389, 42, 42, 391, 400, 42, 42,
672 398, 42, 401, 42, 42, 395, 42, 399, 42, 42,
673 42, 404, 406, 42, 407, 42, 42, 42, 402, 403,
674 42, 405, 408, 409, 42, 411, 42, 42, 410, 412,
Reid Spencer3d6b71e2007-04-09 01:56:05 +0000675
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000676 42, 42, 42, 42, 413, 42, 417, 42, 415, 419,
677 420, 414, 42, 42, 416, 418, 42, 422, 42, 424,
678 42, 42, 423, 42, 42, 42, 425, 421, 42, 428,
679 42, 42, 427, 432, 430, 433, 42, 426, 435, 42,
680 429, 42, 42, 437, 42, 436, 42, 431, 434, 42,
681 439, 42, 42, 438, 42, 42, 42, 42, 42, 42,
682 441, 42, 446, 442, 42, 440, 450, 451, 455, 444,
683 443, 42, 453, 42, 448, 449, 454, 447, 42, 456,
684 42, 452, 42, 42, 42, 42, 458, 42, 42, 42,
685 42, 42, 42, 465, 463, 457, 42, 42, 464, 42,
Reid Spencer3d6b71e2007-04-09 01:56:05 +0000686
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000687 460, 461, 459, 462, 466, 467, 469, 42, 42, 42,
688 470, 42, 42, 468, 42, 42, 472, 471, 42, 42,
689 42, 42, 42, 42, 478, 479, 473, 42, 477, 42,
690 474, 475, 483, 42, 480, 481, 485, 42, 476, 484,
691 42, 42, 482, 488, 42, 42, 490, 486, 42, 42,
692 42, 491, 42, 489, 42, 487, 493, 42, 42, 42,
693 42, 495, 42, 42, 42, 42, 42, 499, 492, 494,
694 502, 504, 503, 506, 500, 496, 497, 501, 498, 42,
695 42, 42, 42, 505, 42, 42, 508, 507, 511, 510,
696 42, 42, 42, 42, 512, 509, 42, 42, 42, 515,
Reid Spencer3d6b71e2007-04-09 01:56:05 +0000697
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000698 42, 517, 42, 519, 42, 42, 521, 514, 42, 513,
699 42, 42, 518, 42, 520, 42, 516, 522, 525, 527,
700 42, 523, 42, 42, 42, 524, 42, 529, 42, 42,
701 528, 530, 42, 532, 526, 42, 42, 42, 531, 42,
702 538, 42, 42, 42, 534, 536, 42, 535, 533, 42,
703 539, 537, 42, 42, 544, 540, 42, 545, 42, 42,
704 548, 541, 42, 549, 543, 542, 42, 547, 42, 42,
705 42, 42, 42, 42, 42, 42, 42, 42, 550, 39,
706 39, 39, 39, 39, 41, 41, 51, 42, 51, 51,
707 51, 53, 53, 140, 140, 140, 140, 140, 42, 42,
Reid Spencer14310612006-12-31 05:40:51 +0000708
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000709 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
710 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
711 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
712 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
713 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
714 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000715 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
716 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000717 42, 42, 42, 42, 42, 42, 42, 42, 141, 42,
718 245, 42, 42, 42, 42, 141, 42, 133, 42, 40,
Chris Lattner75466192006-05-19 21:28:53 +0000719
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000720 551, 3, 551, 551, 551, 551, 551, 551, 551, 551,
721 551, 551, 551, 551, 551, 551, 551, 551, 551, 551,
722 551, 551, 551, 551, 551, 551, 551, 551, 551, 551,
723 551, 551, 551, 551, 551, 551, 551, 551, 551, 551,
724 551, 551, 551, 551, 551, 551
Reid Spencer68a24bd2005-08-27 18:50:39 +0000725 } ;
726
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000727static yyconst short int yy_chk[1247] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000728 { 0,
729 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
730 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
731 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
732 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000733 1, 1, 1, 1, 9, 9, 9, 9, 10, 10,
Reid Spencer3025dfd2007-03-29 18:50:01 +0000734 10, 10, 11, 11, 11, 11, 11, 12, 44, 44,
735 44, 44, 12, 13, 13, 13, 13, 13, 13, 14,
736 14, 14, 14, 14, 14, 16, 60, 17, 24, 19,
737 18, 16, 16, 16, 16, 19, 17, 19, 60, 21,
738 18, 31, 24, 17, 18, 17, 13, 17, 19, 20,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000739
Reid Spencer3025dfd2007-03-29 18:50:01 +0000740 17, 31, 18, 36, 23, 20, 38, 21, 30, 20,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000741 21, 559, 28, 36, 23, 20, 38, 21, 20, 22,
Reid Spencer3025dfd2007-03-29 18:50:01 +0000742 23, 30, 28, 78, 47, 22, 69, 22, 22, 47,
743 27, 28, 30, 78, 26, 22, 27, 28, 55, 22,
744 26, 22, 25, 25, 25, 25, 25, 55, 26, 27,
745 33, 69, 35, 26, 25, 27, 33, 26, 35, 57,
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000746 37, 37, 56, 33, 25, 29, 58, 61, 57, 33,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000747 557, 35, 33, 63, 64, 29, 56, 29, 56, 33,
Reid Spencer3025dfd2007-03-29 18:50:01 +0000748 37, 29, 64, 29, 68, 29, 58, 29, 32, 63,
749 59, 61, 32, 45, 45, 45, 45, 45, 66, 75,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000750
Reid Spencer3025dfd2007-03-29 18:50:01 +0000751 68, 32, 32, 59, 32, 32, 32, 59, 32, 54,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000752 54, 54, 54, 75, 32, 554, 32, 32, 88, 32,
Reid Spencer3025dfd2007-03-29 18:50:01 +0000753 34, 65, 66, 70, 34, 46, 46, 46, 46, 46,
Reid Spencer3d6b71e2007-04-09 01:56:05 +0000754 46, 88, 70, 34, 34, 72, 34, 65, 34, 65,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000755 34, 74, 34, 81, 219, 90, 34, 48, 48, 48,
756 48, 48, 81, 85, 90, 48, 219, 550, 74, 72,
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000757 85, 48, 49, 49, 49, 49, 49, 49, 50, 50,
Reid Spencer3025dfd2007-03-29 18:50:01 +0000758 50, 50, 50, 73, 76, 50, 50, 67, 50, 50,
759 50, 50, 50, 50, 77, 67, 79, 80, 67, 73,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000760 83, 84, 548, 76, 77, 547, 73, 67, 82, 82,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000761
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000762 82, 82, 82, 86, 89, 87, 80, 83, 77, 91,
763 79, 87, 93, 84, 84, 84, 94, 84, 95, 96,
764 89, 86, 99, 97, 101, 91, 98, 102, 99, 96,
765 103, 100, 94, 97, 93, 104, 98, 93, 101, 95,
766 100, 105, 106, 96, 108, 112, 111, 97, 109, 102,
767 106, 107, 110, 114, 103, 105, 111, 109, 106, 113,
768 108, 107, 110, 104, 112, 115, 113, 114, 116, 108,
769 106, 118, 109, 119, 120, 107, 110, 121, 123, 115,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000770 129, 122, 124, 169, 539, 118, 129, 115, 120, 126,
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000771 116, 122, 124, 119, 125, 127, 118, 131, 121, 126,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000772
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +0000773 127, 128, 123, 125, 125, 122, 124, 130, 132, 130,
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000774 145, 169, 151, 125, 539, 128, 125, 128, 150, 131,
775 151, 125, 144, 135, 135, 135, 135, 148, 144, 145,
776 132, 135, 150, 147, 144, 152, 132, 135, 137, 137,
777 137, 137, 137, 147, 155, 157, 137, 545, 164, 148,
778 159, 152, 137, 138, 138, 154, 138, 138, 138, 138,
779 138, 157, 156, 158, 154, 160, 159, 155, 156, 161,
780 163, 164, 165, 166, 167, 160, 161, 158, 168, 160,
781 163, 171, 170, 173, 168, 172, 175, 543, 174, 176,
782 173, 171, 163, 166, 181, 172, 165, 174, 171, 176,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000783
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000784 167, 170, 177, 178, 170, 179, 175, 180, 183, 181,
785 182, 185, 177, 178, 188, 184, 187, 180, 189, 182,
786 196, 199, 236, 204, 179, 202, 187, 178, 203, 209,
787 183, 184, 188, 204, 189, 542, 185, 237, 205, 236,
788 209, 196, 215, 237, 211, 199, 201, 201, 201, 201,
789 214, 202, 203, 201, 201, 210, 201, 201, 201, 201,
790 201, 201, 205, 211, 215, 210, 217, 214, 218, 220,
791 222, 221, 223, 224, 214, 228, 231, 234, 235, 220,
792 222, 240, 223, 244, 218, 243, 231, 234, 222, 238,
793 217, 221, 235, 270, 228, 239, 240, 241, 238, 224,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000794
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000795 257, 239, 241, 270, 243, 253, 257, 244, 246, 246,
796 246, 246, 541, 253, 247, 247, 246, 247, 247, 247,
797 247, 251, 246, 248, 248, 248, 248, 249, 249, 249,
798 249, 249, 250, 250, 250, 250, 250, 252, 254, 256,
799 259, 260, 261, 262, 251, 263, 264, 265, 259, 262,
800 266, 268, 267, 269, 271, 252, 254, 256, 261, 269,
801 264, 274, 271, 263, 275, 260, 276, 266, 267, 277,
802 280, 281, 282, 268, 285, 265, 286, 281, 284, 289,
803 287, 290, 282, 295, 293, 274, 280, 288, 275, 276,
804 284, 276, 294, 296, 277, 289, 285, 298, 286, 287,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000805
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000806 290, 302, 288, 293, 299, 303, 305, 295, 294, 306,
807 307, 398, 315, 303, 310, 302, 323, 305, 311, 306,
808 296, 307, 298, 299, 310, 313, 311, 314, 315, 317,
809 320, 321, 322, 314, 323, 313, 325, 317, 322, 327,
810 398, 320, 321, 329, 335, 330, 332, 332, 332, 332,
811 335, 336, 338, 339, 329, 342, 340, 343, 325, 330,
812 336, 339, 340, 327, 341, 344, 329, 343, 345, 346,
813 341, 347, 344, 348, 349, 338, 351, 342, 354, 355,
814 356, 347, 349, 358, 351, 357, 359, 361, 345, 346,
815 362, 348, 354, 355, 363, 357, 364, 366, 356, 358,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000816
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000817 368, 367, 369, 370, 359, 372, 364, 373, 362, 367,
818 368, 361, 371, 374, 363, 366, 375, 370, 376, 372,
819 377, 379, 371, 380, 381, 382, 373, 369, 384, 376,
820 386, 388, 375, 381, 379, 382, 387, 374, 386, 389,
821 377, 391, 392, 388, 390, 387, 395, 380, 384, 394,
822 390, 397, 399, 389, 401, 402, 403, 406, 414, 411,
823 392, 405, 399, 394, 410, 391, 405, 405, 414, 397,
824 395, 416, 410, 415, 402, 403, 411, 401, 418, 415,
825 421, 406, 422, 424, 427, 425, 418, 428, 432, 438,
826 439, 435, 444, 432, 427, 416, 441, 440, 428, 442,
Chris Lattnere869eef2005-11-12 00:11:49 +0000827
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000828 422, 424, 421, 425, 435, 438, 440, 445, 448, 449,
829 441, 450, 451, 439, 452, 454, 444, 442, 455, 456,
830 457, 459, 458, 461, 452, 454, 445, 460, 451, 463,
831 448, 449, 458, 464, 455, 456, 460, 465, 450, 459,
832 466, 467, 457, 464, 468, 470, 466, 461, 469, 471,
833 473, 467, 474, 465, 475, 463, 469, 476, 478, 479,
834 480, 471, 487, 488, 489, 496, 490, 476, 468, 470,
835 480, 488, 487, 490, 478, 473, 474, 479, 475, 492,
836 493, 494, 499, 489, 500, 501, 493, 492, 499, 496,
837 502, 503, 504, 505, 500, 494, 506, 507, 508, 503,
Chris Lattner75466192006-05-19 21:28:53 +0000838
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000839 509, 505, 511, 507, 512, 513, 509, 502, 514, 501,
840 515, 519, 506, 517, 508, 520, 504, 511, 514, 517,
841 518, 512, 521, 523, 524, 513, 525, 519, 526, 527,
842 518, 520, 530, 523, 515, 529, 531, 532, 521, 533,
843 530, 534, 535, 540, 525, 527, 537, 526, 524, 538,
844 531, 529, 544, 546, 537, 532, 549, 538, 536, 528,
845 544, 533, 522, 546, 535, 534, 516, 540, 510, 498,
846 497, 495, 491, 486, 485, 484, 483, 482, 549, 552,
847 552, 552, 552, 552, 553, 553, 555, 481, 555, 555,
848 555, 556, 556, 558, 558, 558, 558, 558, 477, 472,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000849
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000850 462, 453, 447, 446, 443, 437, 436, 434, 433, 431,
851 430, 429, 426, 423, 420, 419, 417, 413, 412, 409,
852 408, 407, 404, 400, 396, 393, 385, 383, 378, 365,
853 360, 353, 352, 350, 337, 334, 333, 331, 328, 326,
854 324, 319, 318, 316, 312, 309, 308, 304, 301, 297,
855 292, 291, 283, 279, 278, 273, 272, 258, 255, 242,
856 233, 232, 230, 229, 227, 226, 225, 216, 213, 212,
857 208, 207, 206, 200, 198, 197, 195, 194, 193, 192,
858 191, 190, 186, 162, 153, 149, 146, 143, 140, 136,
859 133, 117, 92, 71, 62, 52, 41, 39, 8, 7,
Reid Spencer3da59db2006-11-27 01:05:10 +0000860
Anton Korobeynikov77d0f972007-04-25 14:29:12 +0000861 3, 551, 551, 551, 551, 551, 551, 551, 551, 551,
862 551, 551, 551, 551, 551, 551, 551, 551, 551, 551,
863 551, 551, 551, 551, 551, 551, 551, 551, 551, 551,
864 551, 551, 551, 551, 551, 551, 551, 551, 551, 551,
865 551, 551, 551, 551, 551, 551
Reid Spencer68a24bd2005-08-27 18:50:39 +0000866 } ;
867
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000868static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
869static char *yy_full_match;
870static int yy_lp;
871#define REJECT \
872{ \
873*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \
874yy_cp = yy_full_match; /* restore poss. backed-over text */ \
875++yy_lp; \
876goto find_rule; \
877}
Reid Spencer68a24bd2005-08-27 18:50:39 +0000878#define yymore() yymore_used_but_not_detected
879#define YY_MORE_ADJ 0
880#define YY_RESTORE_YY_MORE_OFFSET
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000881char *yytext;
882#line 1 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
883#define INITIAL 0
Reid Spencer68a24bd2005-08-27 18:50:39 +0000884/*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===//
885//
886// The LLVM Compiler Infrastructure
887//
888// This file was developed by the LLVM research group and is distributed under
889// the University of Illinois Open Source License. See LICENSE.TXT for details.
890//
891//===----------------------------------------------------------------------===//
892//
893// This file implements the flex scanner for LLVM assembly languages files.
894//
895//===----------------------------------------------------------------------===*/
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000896#define YY_NEVER_INTERACTIVE 1
897#line 28 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +0000898#include "ParserInternals.h"
899#include "llvm/Module.h"
900#include <list>
901#include "llvmAsmParser.h"
902#include <cctype>
903#include <cstdlib>
904
905void set_scan_file(FILE * F){
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000906 yy_switch_to_buffer(yy_create_buffer( F, YY_BUF_SIZE ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +0000907}
908void set_scan_string (const char * str) {
Reid Spencer9c9b63a2007-04-28 16:07:31 +0000909 yy_scan_string (str);
Reid Spencer68a24bd2005-08-27 18:50:39 +0000910}
911
Reid Spencer3ed469c2006-11-02 20:25:50 +0000912// Construct a token value for a non-obsolete token
Reid Spencer68a24bd2005-08-27 18:50:39 +0000913#define RET_TOK(type, Enum, sym) \
Reid Spencera132e042006-12-03 05:46:11 +0000914 llvmAsmlval.type = Instruction::Enum; \
915 return sym
916
Reid Spencer3ed469c2006-11-02 20:25:50 +0000917// Construct a token value for an obsolete token
Reid Spencera132e042006-12-03 05:46:11 +0000918#define RET_TY(CTYPE, SYM) \
919 llvmAsmlval.PrimType = CTYPE;\
Reid Spencer481169e2006-12-01 00:33:46 +0000920 return SYM
Reid Spencer68a24bd2005-08-27 18:50:39 +0000921
922namespace llvm {
923
924// TODO: All of the static identifiers are figured out by the lexer,
925// these should be hashed to reduce the lexer size
926
927
928// atoull - Convert an ascii string of decimal digits into the unsigned long
929// long representation... this does not have to do input error checking,
930// because we know that the input will be matched by a suitable regex...
931//
932static uint64_t atoull(const char *Buffer) {
933 uint64_t Result = 0;
934 for (; *Buffer; Buffer++) {
935 uint64_t OldRes = Result;
936 Result *= 10;
937 Result += *Buffer-'0';
938 if (Result < OldRes) // Uh, oh, overflow detected!!!
Reid Spencer61c83e02006-08-18 08:43:06 +0000939 GenerateError("constant bigger than 64 bits detected!");
Reid Spencer68a24bd2005-08-27 18:50:39 +0000940 }
941 return Result;
942}
943
944static uint64_t HexIntToVal(const char *Buffer) {
945 uint64_t Result = 0;
946 for (; *Buffer; ++Buffer) {
947 uint64_t OldRes = Result;
948 Result *= 16;
949 char C = *Buffer;
950 if (C >= '0' && C <= '9')
951 Result += C-'0';
952 else if (C >= 'A' && C <= 'F')
953 Result += C-'A'+10;
954 else if (C >= 'a' && C <= 'f')
955 Result += C-'a'+10;
956
957 if (Result < OldRes) // Uh, oh, overflow detected!!!
Reid Spencer61c83e02006-08-18 08:43:06 +0000958 GenerateError("constant bigger than 64 bits detected!");
Reid Spencer68a24bd2005-08-27 18:50:39 +0000959 }
960 return Result;
961}
962
963
964// HexToFP - Convert the ascii string in hexidecimal format to the floating
965// point representation of it.
966//
967static double HexToFP(const char *Buffer) {
968 // Behave nicely in the face of C TBAA rules... see:
969 // http://www.nullstone.com/htmls/category/aliastyp.htm
970 union {
971 uint64_t UI;
972 double FP;
973 } UIntToFP;
974 UIntToFP.UI = HexIntToVal(Buffer);
975
976 assert(sizeof(double) == sizeof(uint64_t) &&
977 "Data sizes incompatible on this target!");
978 return UIntToFP.FP; // Cast Hex constant to double
979}
980
981
982// UnEscapeLexed - Run through the specified buffer and change \xx codes to the
983// appropriate character. If AllowNull is set to false, a \00 value will cause
984// an exception to be thrown.
985//
986// If AllowNull is set to true, the return value of the function points to the
987// last character of the string in memory.
988//
989char *UnEscapeLexed(char *Buffer, bool AllowNull) {
990 char *BOut = Buffer;
991 for (char *BIn = Buffer; *BIn; ) {
992 if (BIn[0] == '\\' && isxdigit(BIn[1]) && isxdigit(BIn[2])) {
993 char Tmp = BIn[3]; BIn[3] = 0; // Terminate string
994 *BOut = (char)strtol(BIn+1, 0, 16); // Convert to number
995 if (!AllowNull && !*BOut)
Reid Spencer61c83e02006-08-18 08:43:06 +0000996 GenerateError("String literal cannot accept \\00 escape!");
Reid Spencer68a24bd2005-08-27 18:50:39 +0000997
998 BIn[3] = Tmp; // Restore character
999 BIn += 3; // Skip over handled chars
1000 ++BOut;
1001 } else {
1002 *BOut++ = *BIn++;
1003 }
1004 }
1005
1006 return BOut;
1007}
1008
1009} // End llvm namespace
1010
1011using namespace llvm;
1012
1013#define YY_NEVER_INTERACTIVE 1
1014/* Comments start with a ; and go till end of line */
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001015/* Local Values and Type identifiers start with a % sign */
1016/* Global Value identifiers start with an @ sign */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001017/* Label identifiers end with a colon */
1018/* Quoted names can contain any character except " and \ */
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001019/* LocalVarID/GlobalVarID: match an unnamed local variable slot ID. */
1020/* Integer types are specified with i and a bitwidth */
1021/* E[PN]Integer: match positive and negative literal integer values. */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001022/* FPConstant - A Floating point constant.
1023 */
1024/* HexFPConstant - Floating point constant represented in IEEE format as a
1025 * hexadecimal number for when exponential notation is not precise enough.
1026 */
1027/* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
1028 * it to deal with 64 bit numbers.
1029 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001030#line 1031 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001031
1032/* Macros after this point can all be overridden by user definitions in
1033 * section 1.
1034 */
1035
1036#ifndef YY_SKIP_YYWRAP
1037#ifdef __cplusplus
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001038extern "C" int yywrap YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001039#else
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001040extern int yywrap YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001041#endif
1042#endif
1043
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001044#ifndef YY_NO_UNPUT
1045static inline void yyunput YY_PROTO(( int c, char *buf_ptr ));
1046#endif
1047
Reid Spencer68a24bd2005-08-27 18:50:39 +00001048#ifndef yytext_ptr
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001049static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001050#endif
1051
1052#ifdef YY_NEED_STRLEN
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001053static int yy_flex_strlen YY_PROTO(( yyconst char * ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001054#endif
1055
1056#ifndef YY_NO_INPUT
1057#ifdef __cplusplus
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001058static int yyinput YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001059#else
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001060static int input YY_PROTO(( void ));
1061#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001062#endif
1063
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001064#if YY_STACK_USED
1065static int yy_start_stack_ptr = 0;
1066static int yy_start_stack_depth = 0;
1067static int *yy_start_stack = 0;
1068#ifndef YY_NO_PUSH_STATE
1069static void yy_push_state YY_PROTO(( int new_state ));
1070#endif
1071#ifndef YY_NO_POP_STATE
1072static void yy_pop_state YY_PROTO(( void ));
1073#endif
1074#ifndef YY_NO_TOP_STATE
1075static int yy_top_state YY_PROTO(( void ));
1076#endif
1077
1078#else
1079#define YY_NO_PUSH_STATE 1
1080#define YY_NO_POP_STATE 1
1081#define YY_NO_TOP_STATE 1
1082#endif
1083
1084#ifdef YY_MALLOC_DECL
1085YY_MALLOC_DECL
1086#else
1087#if __STDC__
1088#ifndef __cplusplus
1089#include <stdlib.h>
1090#endif
1091#else
1092/* Just try to get by without declaring the routines. This will fail
1093 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1094 * or sizeof(void*) != sizeof(int).
1095 */
1096#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001097#endif
1098
1099/* Amount of stuff to slurp up with each read. */
1100#ifndef YY_READ_BUF_SIZE
1101#define YY_READ_BUF_SIZE 8192
1102#endif
1103
1104/* Copy whatever the last rule matched to the standard output. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001105
Reid Spencer68a24bd2005-08-27 18:50:39 +00001106#ifndef ECHO
1107/* This used to be an fputs(), but since the string might contain NUL's,
1108 * we now use fwrite().
1109 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001110#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001111#endif
1112
1113/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1114 * is returned in "result".
1115 */
1116#ifndef YY_INPUT
1117#define YY_INPUT(buf,result,max_size) \
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001118 if ( yy_current_buffer->yy_is_interactive ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001119 { \
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001120 int c = '*', n; \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001121 for ( n = 0; n < max_size && \
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001122 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001123 buf[n] = (char) c; \
1124 if ( c == '\n' ) \
1125 buf[n++] = (char) c; \
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001126 if ( c == EOF && ferror( yyin ) ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001127 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1128 result = n; \
1129 } \
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001130 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1131 && ferror( yyin ) ) \
1132 YY_FATAL_ERROR( "input in flex scanner failed" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001133#endif
1134
1135/* No semi-colon after return; correct usage is to write "yyterminate();" -
1136 * we don't want an extra ';' after the "return" because that will cause
1137 * some compilers to complain about unreachable statements.
1138 */
1139#ifndef yyterminate
1140#define yyterminate() return YY_NULL
1141#endif
1142
1143/* Number of entries by which start-condition stack grows. */
1144#ifndef YY_START_STACK_INCR
1145#define YY_START_STACK_INCR 25
1146#endif
1147
1148/* Report a fatal error. */
1149#ifndef YY_FATAL_ERROR
1150#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1151#endif
1152
1153/* Default declaration of generated scanner - a define so the user can
1154 * easily add parameters.
1155 */
1156#ifndef YY_DECL
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001157#define YY_DECL int yylex YY_PROTO(( void ))
1158#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001159
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001160/* Code executed at the beginning of each rule, after yytext and yyleng
Reid Spencer68a24bd2005-08-27 18:50:39 +00001161 * have been set up.
1162 */
1163#ifndef YY_USER_ACTION
1164#define YY_USER_ACTION
1165#endif
1166
1167/* Code executed at the end of each rule. */
1168#ifndef YY_BREAK
1169#define YY_BREAK break;
1170#endif
1171
1172#define YY_RULE_SETUP \
1173 YY_USER_ACTION
1174
1175YY_DECL
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001176 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00001177 register yy_state_type yy_current_state;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001178 register char *yy_cp = NULL, *yy_bp = NULL;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001179 register int yy_act;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001180
1181#line 190 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001182
1183
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001184#line 1185 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001185
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001186 if ( yy_init )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001187 {
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001188 yy_init = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001189
1190#ifdef YY_USER_INIT
1191 YY_USER_INIT;
1192#endif
1193
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001194 if ( ! yy_start )
1195 yy_start = 1; /* first start state */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001196
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001197 if ( ! yyin )
1198 yyin = stdin;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001199
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001200 if ( ! yyout )
1201 yyout = stdout;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001202
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001203 if ( ! yy_current_buffer )
1204 yy_current_buffer =
1205 yy_create_buffer( yyin, YY_BUF_SIZE );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001206
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001207 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00001208 }
1209
1210 while ( 1 ) /* loops until end-of-file is reached */
1211 {
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001212 yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001213
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001214 /* Support of yytext. */
1215 *yy_cp = yy_hold_char;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001216
1217 /* yy_bp points to the position in yy_ch_buf of the start of
1218 * the current run.
1219 */
1220 yy_bp = yy_cp;
1221
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001222 yy_current_state = yy_start;
1223 yy_state_ptr = yy_state_buf;
1224 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001225yy_match:
1226 do
1227 {
1228 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1229 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1230 {
1231 yy_current_state = (int) yy_def[yy_current_state];
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001232 if ( yy_current_state >= 552 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001233 yy_c = yy_meta[(unsigned int) yy_c];
1234 }
1235 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001236 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001237 ++yy_cp;
1238 }
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001239 while ( yy_current_state != 551 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001240
1241yy_find_action:
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001242 yy_current_state = *--yy_state_ptr;
1243 yy_lp = yy_accept[yy_current_state];
1244find_rule: /* we branch to this label when backing up */
1245 for ( ; ; ) /* until we find what rule we matched */
1246 {
1247 if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] )
1248 {
1249 yy_act = yy_acclist[yy_lp];
1250 {
1251 yy_full_match = yy_cp;
1252 break;
1253 }
1254 }
1255 --yy_cp;
1256 yy_current_state = *--yy_state_ptr;
1257 yy_lp = yy_accept[yy_current_state];
1258 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001259
1260 YY_DO_BEFORE_ACTION;
1261
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001262 if ( yy_act != YY_END_OF_BUFFER )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001263 {
1264 int yyl;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001265 for ( yyl = 0; yyl < yyleng; ++yyl )
1266 if ( yytext[yyl] == '\n' )
1267 ++yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001268 }
1269
1270do_action: /* This label is used only to access EOF actions. */
1271
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001272
Reid Spencer68a24bd2005-08-27 18:50:39 +00001273 switch ( yy_act )
1274 { /* beginning of action switch */
1275case 1:
1276YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001277#line 192 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001278{ /* Ignore comments for now */ }
1279 YY_BREAK
1280case 2:
1281YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001282#line 194 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001283{ return BEGINTOK; }
1284 YY_BREAK
1285case 3:
1286YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001287#line 195 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001288{ return ENDTOK; }
1289 YY_BREAK
1290case 4:
1291YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001292#line 196 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001293{ return TRUETOK; }
1294 YY_BREAK
1295case 5:
1296YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001297#line 197 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001298{ return FALSETOK; }
1299 YY_BREAK
1300case 6:
1301YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001302#line 198 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001303{ return DECLARE; }
1304 YY_BREAK
1305case 7:
1306YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001307#line 199 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001308{ return DEFINE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001309 YY_BREAK
1310case 8:
1311YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001312#line 200 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001313{ return GLOBAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001314 YY_BREAK
1315case 9:
1316YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001317#line 201 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001318{ return CONSTANT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001319 YY_BREAK
1320case 10:
1321YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001322#line 202 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001323{ return INTERNAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001324 YY_BREAK
1325case 11:
1326YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001327#line 203 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001328{ return LINKONCE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001329 YY_BREAK
1330case 12:
1331YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001332#line 204 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001333{ return WEAK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001334 YY_BREAK
1335case 13:
1336YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001337#line 205 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001338{ return APPENDING; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001339 YY_BREAK
1340case 14:
1341YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001342#line 206 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001343{ return DLLIMPORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001344 YY_BREAK
1345case 15:
1346YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001347#line 207 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001348{ return DLLEXPORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001349 YY_BREAK
1350case 16:
1351YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001352#line 208 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov178a3522007-01-12 19:22:51 +00001353{ return HIDDEN; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001354 YY_BREAK
1355case 17:
1356YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001357#line 209 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov178a3522007-01-12 19:22:51 +00001358{ return EXTERN_WEAK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001359 YY_BREAK
1360case 18:
1361YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001362#line 210 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov178a3522007-01-12 19:22:51 +00001363{ return EXTERNAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001364 YY_BREAK
1365case 19:
1366YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001367#line 211 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001368{ return THREAD_LOCAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001369 YY_BREAK
1370case 20:
1371YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001372#line 212 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001373{ return ZEROINITIALIZER; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001374 YY_BREAK
1375case 21:
1376YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001377#line 213 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001378{ return DOTDOTDOT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001379 YY_BREAK
1380case 22:
1381YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001382#line 214 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001383{ return UNDEF; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001384 YY_BREAK
1385case 23:
1386YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001387#line 215 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001388{ return NULL_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001389 YY_BREAK
1390case 24:
1391YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001392#line 216 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001393{ return TO; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001394 YY_BREAK
1395case 25:
1396YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001397#line 217 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001398{ return TAIL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001399 YY_BREAK
1400case 26:
1401YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001402#line 218 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001403{ return TARGET; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001404 YY_BREAK
1405case 27:
1406YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001407#line 219 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001408{ return TRIPLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001409 YY_BREAK
1410case 28:
1411YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001412#line 220 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001413{ return DEPLIBS; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001414 YY_BREAK
1415case 29:
1416YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001417#line 221 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001418{ return DATALAYOUT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001419 YY_BREAK
1420case 30:
1421YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001422#line 222 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001423{ return VOLATILE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001424 YY_BREAK
1425case 31:
1426YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001427#line 223 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001428{ return ALIGN; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001429 YY_BREAK
1430case 32:
1431YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001432#line 224 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001433{ return SECTION; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001434 YY_BREAK
1435case 33:
1436YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001437#line 225 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001438{ return ALIAS; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001439 YY_BREAK
1440case 34:
1441YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001442#line 226 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001443{ return MODULE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001444 YY_BREAK
1445case 35:
1446YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001447#line 227 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001448{ return ASM_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001449 YY_BREAK
1450case 36:
1451YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001452#line 228 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001453{ return SIDEEFFECT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001454 YY_BREAK
1455case 37:
1456YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001457#line 230 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001458{ return CC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001459 YY_BREAK
1460case 38:
1461YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001462#line 231 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001463{ return CCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001464 YY_BREAK
1465case 39:
1466YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001467#line 232 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001468{ return FASTCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001469 YY_BREAK
1470case 40:
1471YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001472#line 233 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001473{ return COLDCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001474 YY_BREAK
1475case 41:
1476YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001477#line 234 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001478{ return X86_STDCALLCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001479 YY_BREAK
1480case 42:
1481YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001482#line 235 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001483{ return X86_FASTCALLCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001484 YY_BREAK
1485case 43:
1486YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001487#line 237 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001488{ return INREG; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001489 YY_BREAK
1490case 44:
1491YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001492#line 238 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001493{ return SRET; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001494 YY_BREAK
1495case 45:
1496YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001497#line 239 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001498{ return NOUNWIND; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001499 YY_BREAK
1500case 46:
1501YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001502#line 240 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001503{ return NORETURN; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001504 YY_BREAK
1505case 47:
1506YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001507#line 242 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001508{ RET_TY(Type::VoidTy, VOID); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001509 YY_BREAK
1510case 48:
1511YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001512#line 243 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001513{ RET_TY(Type::FloatTy, FLOAT); }
Reid Spencer832254e2007-02-02 02:16:23 +00001514 YY_BREAK
1515case 49:
1516YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001517#line 244 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001518{ RET_TY(Type::DoubleTy,DOUBLE);}
Reid Spencer832254e2007-02-02 02:16:23 +00001519 YY_BREAK
1520case 50:
1521YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001522#line 245 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001523{ RET_TY(Type::LabelTy, LABEL); }
Reid Spencer67d8ed92007-03-22 02:14:08 +00001524 YY_BREAK
1525case 51:
1526YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001527#line 246 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001528{ return TYPE; }
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001529 YY_BREAK
1530case 52:
1531YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001532#line 247 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001533{ return OPAQUE; }
1534 YY_BREAK
1535case 53:
1536YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001537#line 248 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
1538{ uint64_t NumBits = atoull(yytext+1);
Reid Spencera54b7cb2007-01-12 07:05:14 +00001539 if (NumBits < IntegerType::MIN_INT_BITS ||
1540 NumBits > IntegerType::MAX_INT_BITS)
1541 GenerateError("Bitwidth for integer type out of range!");
1542 const Type* Ty = IntegerType::get(NumBits);
1543 RET_TY(Ty, INTTYPE);
1544 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001545 YY_BREAK
Reid Spencer6f407902007-01-13 05:00:46 +00001546case 54:
1547YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001548#line 256 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001549{ RET_TOK(BinaryOpVal, Add, ADD); }
Reid Spencer6f407902007-01-13 05:00:46 +00001550 YY_BREAK
Reid Spencer68a24bd2005-08-27 18:50:39 +00001551case 55:
1552YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001553#line 257 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001554{ RET_TOK(BinaryOpVal, Sub, SUB); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001555 YY_BREAK
1556case 56:
1557YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001558#line 258 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001559{ RET_TOK(BinaryOpVal, Mul, MUL); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001560 YY_BREAK
1561case 57:
1562YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001563#line 259 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001564{ RET_TOK(BinaryOpVal, UDiv, UDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001565 YY_BREAK
1566case 58:
1567YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001568#line 260 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001569{ RET_TOK(BinaryOpVal, SDiv, SDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001570 YY_BREAK
1571case 59:
1572YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001573#line 261 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001574{ RET_TOK(BinaryOpVal, FDiv, FDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001575 YY_BREAK
1576case 60:
1577YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001578#line 262 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001579{ RET_TOK(BinaryOpVal, URem, UREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001580 YY_BREAK
1581case 61:
1582YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001583#line 263 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001584{ RET_TOK(BinaryOpVal, SRem, SREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001585 YY_BREAK
1586case 62:
1587YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001588#line 264 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001589{ RET_TOK(BinaryOpVal, FRem, FREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001590 YY_BREAK
1591case 63:
1592YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001593#line 265 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001594{ RET_TOK(BinaryOpVal, Shl, SHL); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001595 YY_BREAK
1596case 64:
1597YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001598#line 266 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001599{ RET_TOK(BinaryOpVal, LShr, LSHR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001600 YY_BREAK
1601case 65:
1602YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001603#line 267 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001604{ RET_TOK(BinaryOpVal, AShr, ASHR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001605 YY_BREAK
1606case 66:
1607YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001608#line 268 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001609{ RET_TOK(BinaryOpVal, And, AND); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001610 YY_BREAK
1611case 67:
1612YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001613#line 269 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001614{ RET_TOK(BinaryOpVal, Or , OR ); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001615 YY_BREAK
1616case 68:
1617YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001618#line 270 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001619{ RET_TOK(BinaryOpVal, Xor, XOR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001620 YY_BREAK
1621case 69:
1622YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001623#line 271 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001624{ RET_TOK(OtherOpVal, ICmp, ICMP); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001625 YY_BREAK
1626case 70:
1627YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001628#line 272 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001629{ RET_TOK(OtherOpVal, FCmp, FCMP); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001630 YY_BREAK
1631case 71:
1632YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001633#line 274 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001634{ return EQ; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001635 YY_BREAK
1636case 72:
1637YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001638#line 275 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001639{ return NE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001640 YY_BREAK
1641case 73:
1642YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001643#line 276 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001644{ return SLT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001645 YY_BREAK
1646case 74:
1647YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001648#line 277 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001649{ return SGT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001650 YY_BREAK
1651case 75:
1652YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001653#line 278 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001654{ return SLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001655 YY_BREAK
1656case 76:
1657YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001658#line 279 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001659{ return SGE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001660 YY_BREAK
1661case 77:
1662YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001663#line 280 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001664{ return ULT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001665 YY_BREAK
1666case 78:
1667YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001668#line 281 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001669{ return UGT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001670 YY_BREAK
1671case 79:
1672YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001673#line 282 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001674{ return ULE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001675 YY_BREAK
1676case 80:
1677YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001678#line 283 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001679{ return UGE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001680 YY_BREAK
1681case 81:
1682YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001683#line 284 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001684{ return OEQ; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001685 YY_BREAK
1686case 82:
1687YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001688#line 285 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001689{ return ONE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001690 YY_BREAK
1691case 83:
1692YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001693#line 286 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001694{ return OLT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001695 YY_BREAK
1696case 84:
1697YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001698#line 287 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001699{ return OGT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001700 YY_BREAK
1701case 85:
1702YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001703#line 288 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001704{ return OLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001705 YY_BREAK
1706case 86:
1707YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001708#line 289 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001709{ return OGE; }
Nate Begeman14b05292005-11-05 09:21:28 +00001710 YY_BREAK
1711case 87:
1712YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001713#line 290 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001714{ return ORD; }
Chris Lattnere869eef2005-11-12 00:11:49 +00001715 YY_BREAK
1716case 88:
1717YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001718#line 291 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001719{ return UNO; }
Robert Bocchino9c62b562006-01-10 19:04:32 +00001720 YY_BREAK
1721case 89:
1722YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001723#line 292 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001724{ return UEQ; }
Robert Bocchino2def1b32006-01-17 20:06:25 +00001725 YY_BREAK
1726case 90:
1727YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001728#line 293 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001729{ return UNE; }
Chris Lattner8335e842006-01-23 23:05:42 +00001730 YY_BREAK
1731case 91:
1732YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001733#line 295 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001734{ RET_TOK(OtherOpVal, PHI, PHI_TOK); }
Chris Lattner66316012006-01-24 04:14:29 +00001735 YY_BREAK
1736case 92:
1737YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001738#line 296 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001739{ RET_TOK(OtherOpVal, Call, CALL); }
Chris Lattner0e9c3762006-01-25 22:27:16 +00001740 YY_BREAK
1741case 93:
1742YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001743#line 297 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001744{ RET_TOK(CastOpVal, Trunc, TRUNC); }
Chris Lattnerd5efe842006-04-08 01:18:56 +00001745 YY_BREAK
1746case 94:
1747YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001748#line 298 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001749{ RET_TOK(CastOpVal, ZExt, ZEXT); }
Chris Lattner75466192006-05-19 21:28:53 +00001750 YY_BREAK
1751case 95:
1752YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001753#line 299 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001754{ RET_TOK(CastOpVal, SExt, SEXT); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001755 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001756case 96:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001757YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001758#line 300 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001759{ RET_TOK(CastOpVal, FPTrunc, FPTRUNC); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001760 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001761case 97:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001762YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001763#line 301 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001764{ RET_TOK(CastOpVal, FPExt, FPEXT); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001765 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001766case 98:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001767YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001768#line 302 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001769{ RET_TOK(CastOpVal, UIToFP, UITOFP); }
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001770 YY_BREAK
1771case 99:
1772YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001773#line 303 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001774{ RET_TOK(CastOpVal, SIToFP, SITOFP); }
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001775 YY_BREAK
1776case 100:
1777YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001778#line 304 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001779{ RET_TOK(CastOpVal, FPToUI, FPTOUI); }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001780 YY_BREAK
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001781case 101:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001782YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001783#line 305 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001784{ RET_TOK(CastOpVal, FPToSI, FPTOSI); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001785 YY_BREAK
1786case 102:
1787YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001788#line 306 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001789{ RET_TOK(CastOpVal, IntToPtr, INTTOPTR); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001790 YY_BREAK
1791case 103:
1792YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001793#line 307 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001794{ RET_TOK(CastOpVal, PtrToInt, PTRTOINT); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001795 YY_BREAK
1796case 104:
1797YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001798#line 308 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001799{ RET_TOK(CastOpVal, BitCast, BITCAST); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001800 YY_BREAK
1801case 105:
1802YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001803#line 309 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001804{ RET_TOK(OtherOpVal, Select, SELECT); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001805 YY_BREAK
1806case 106:
1807YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001808#line 310 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001809{ RET_TOK(OtherOpVal, VAArg , VAARG); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001810 YY_BREAK
1811case 107:
1812YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001813#line 311 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001814{ RET_TOK(TermOpVal, Ret, RET); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001815 YY_BREAK
1816case 108:
1817YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001818#line 312 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001819{ RET_TOK(TermOpVal, Br, BR); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001820 YY_BREAK
1821case 109:
1822YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001823#line 313 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001824{ RET_TOK(TermOpVal, Switch, SWITCH); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001825 YY_BREAK
1826case 110:
1827YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001828#line 314 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001829{ RET_TOK(TermOpVal, Invoke, INVOKE); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001830 YY_BREAK
1831case 111:
1832YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001833#line 315 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001834{ RET_TOK(TermOpVal, Unwind, UNWIND); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001835 YY_BREAK
1836case 112:
1837YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001838#line 316 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001839{ RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001840 YY_BREAK
1841case 113:
1842YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001843#line 318 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001844{ RET_TOK(MemOpVal, Malloc, MALLOC); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001845 YY_BREAK
1846case 114:
1847YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001848#line 319 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001849{ RET_TOK(MemOpVal, Alloca, ALLOCA); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001850 YY_BREAK
1851case 115:
1852YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001853#line 320 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001854{ RET_TOK(MemOpVal, Free, FREE); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001855 YY_BREAK
1856case 116:
1857YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001858#line 321 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001859{ RET_TOK(MemOpVal, Load, LOAD); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001860 YY_BREAK
1861case 117:
1862YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001863#line 322 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001864{ RET_TOK(MemOpVal, Store, STORE); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001865 YY_BREAK
1866case 118:
1867YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001868#line 323 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001869{ RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001870 YY_BREAK
Reid Spencer41dff5e2007-01-26 08:05:27 +00001871case 119:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001872YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001873#line 325 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001874{ RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
Reid Spencer67d8ed92007-03-22 02:14:08 +00001875 YY_BREAK
1876case 120:
1877YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001878#line 326 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001879{ RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001880 YY_BREAK
Reid Spencer3d6b71e2007-04-09 01:56:05 +00001881case 121:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001882YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001883#line 327 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001884{ RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
1885 YY_BREAK
1886case 122:
1887YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001888#line 330 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001889{
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001890 UnEscapeLexed(yytext+1);
1891 llvmAsmlval.StrVal = strdup(yytext+1); // Skip %
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001892 return LOCALVAR;
Owen Anderson1dc69692006-10-18 02:21:48 +00001893 }
1894 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001895case 123:
Owen Anderson1dc69692006-10-18 02:21:48 +00001896YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001897#line 335 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001898{
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001899 UnEscapeLexed(yytext+1);
1900 llvmAsmlval.StrVal = strdup(yytext+1); // Skip @
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001901 return GLOBALVAR;
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001902 }
1903 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001904case 124:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001905YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001906#line 340 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001907{
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001908 yytext[strlen(yytext)-1] = 0; // nuke colon
1909 UnEscapeLexed(yytext);
1910 llvmAsmlval.StrVal = strdup(yytext);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001911 return LABELSTR;
1912 }
1913 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001914case 125:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001915YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001916#line 346 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001917{
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001918 yytext[strlen(yytext)-2] = 0; // nuke colon, end quote
1919 UnEscapeLexed(yytext+1);
1920 llvmAsmlval.StrVal = strdup(yytext+1);
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001921 return LABELSTR;
1922 }
1923 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001924case 126:
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001925YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001926#line 353 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001927{ // Note that we cannot unescape a string constant here! The
1928 // string constant might contain a \00 which would not be
1929 // understood by the string stuff. It is valid to make a
1930 // [sbyte] c"Hello World\00" constant, for example.
1931 //
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001932 yytext[strlen(yytext)-1] = 0; // nuke end quote
1933 llvmAsmlval.StrVal = strdup(yytext+1); // Nuke start quote
Reid Spencer68a24bd2005-08-27 18:50:39 +00001934 return STRINGCONSTANT;
1935 }
1936 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001937case 127:
Reid Spencer6f407902007-01-13 05:00:46 +00001938YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001939#line 362 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001940{
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001941 yytext[strlen(yytext)-1] = 0; // nuke end quote
1942 llvmAsmlval.StrVal = strdup(yytext+2); // Nuke @, quote
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001943 return ATSTRINGCONSTANT;
1944 }
1945 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001946case 128:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001947YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001948#line 368 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
1949{ int len = strlen(yytext);
Reid Spencer38c91a92007-02-28 02:24:54 +00001950 uint32_t numBits = ((len * 64) / 19) + 1;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001951 APInt Tmp(numBits, yytext, len, 10);
Reid Spencer38c91a92007-02-28 02:24:54 +00001952 uint32_t activeBits = Tmp.getActiveBits();
1953 if (activeBits > 0 && activeBits < numBits)
1954 Tmp.trunc(activeBits);
1955 if (Tmp.getBitWidth() > 64) {
1956 llvmAsmlval.APIntVal = new APInt(Tmp);
1957 return EUAPINTVAL;
1958 } else {
1959 llvmAsmlval.UInt64Val = Tmp.getZExtValue();
1960 return EUINT64VAL;
1961 }
1962 }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001963 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001964case 129:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001965YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001966#line 382 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
1967{ int len = strlen(yytext);
Reid Spencerafc37822007-03-09 21:19:09 +00001968 uint32_t numBits = (((len-1) * 64) / 19) + 2;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001969 APInt Tmp(numBits, yytext, len, 10);
Reid Spencer38c91a92007-02-28 02:24:54 +00001970 uint32_t minBits = Tmp.getMinSignedBits();
1971 if (minBits > 0 && minBits < numBits)
1972 Tmp.trunc(minBits);
1973 if (Tmp.getBitWidth() > 64) {
1974 llvmAsmlval.APIntVal = new APInt(Tmp);
1975 return ESAPINTVAL;
1976 } else {
1977 llvmAsmlval.SInt64Val = Tmp.getSExtValue();
1978 return ESINT64VAL;
1979 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001980 }
1981 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001982case 130:
Reid Spencer6f407902007-01-13 05:00:46 +00001983YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001984#line 397 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
1985{ int len = strlen(yytext+3) - 3;
Reid Spencer38c91a92007-02-28 02:24:54 +00001986 uint32_t bits = len * 4;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001987 APInt Tmp(bits, yytext+3, len, 16);
Reid Spencer38c91a92007-02-28 02:24:54 +00001988 uint32_t activeBits = Tmp.getActiveBits();
1989 if (activeBits > 0 && activeBits < bits)
1990 Tmp.trunc(activeBits);
1991 if (Tmp.getBitWidth() > 64) {
1992 llvmAsmlval.APIntVal = new APInt(Tmp);
Reid Spencer9c9b63a2007-04-28 16:07:31 +00001993 return yytext[0] == 's' ? ESAPINTVAL : EUAPINTVAL;
1994 } else if (yytext[0] == 's') {
Reid Spencer38c91a92007-02-28 02:24:54 +00001995 llvmAsmlval.SInt64Val = Tmp.getSExtValue();
1996 return ESINT64VAL;
1997 } else {
1998 llvmAsmlval.UInt64Val = Tmp.getZExtValue();
1999 return EUINT64VAL;
2000 }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002001 }
Reid Spencer6f407902007-01-13 05:00:46 +00002002 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00002003case 131:
Reid Spencer6fd36ab2006-12-29 20:35:03 +00002004YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002005#line 415 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002006{
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002007 uint64_t Val = atoull(yytext+1);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002008 if ((unsigned)Val != Val)
2009 GenerateError("Invalid value number (too large)!");
2010 llvmAsmlval.UIntVal = unsigned(Val);
2011 return LOCALVAL_ID;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002012 }
2013 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00002014case 132:
Owen Anderson1dc69692006-10-18 02:21:48 +00002015YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002016#line 422 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002017{
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002018 uint64_t Val = atoull(yytext+1);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002019 if ((unsigned)Val != Val)
2020 GenerateError("Invalid value number (too large)!");
2021 llvmAsmlval.UIntVal = unsigned(Val);
2022 return GLOBALVAL_ID;
2023 }
Reid Spencer6fd36ab2006-12-29 20:35:03 +00002024 YY_BREAK
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00002025case 133:
2026YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002027#line 430 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
2028{ llvmAsmlval.FPVal = atof(yytext); return FPVAL; }
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00002029 YY_BREAK
2030case 134:
2031YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002032#line 431 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
2033{ llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002034 YY_BREAK
2035case YY_STATE_EOF(INITIAL):
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002036#line 433 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002037{
2038 /* Make sure to free the internal buffers for flex when we are
2039 * done reading our input!
2040 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002041 yy_delete_buffer(YY_CURRENT_BUFFER);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002042 return EOF;
2043 }
2044 YY_BREAK
Reid Spencer67d8ed92007-03-22 02:14:08 +00002045case 135:
2046YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002047#line 441 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00002048{ /* Ignore whitespace */ }
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00002049 YY_BREAK
2050case 136:
2051YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002052#line 442 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
2053{ return yytext[0]; }
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00002054 YY_BREAK
2055case 137:
2056YY_RULE_SETUP
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002057#line 444 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002058YY_FATAL_ERROR( "flex scanner jammed" );
2059 YY_BREAK
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002060#line 2061 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002061
2062 case YY_END_OF_BUFFER:
2063 {
2064 /* Amount of text matched not including the EOB char. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002065 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002066
2067 /* Undo the effects of YY_DO_BEFORE_ACTION. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002068 *yy_cp = yy_hold_char;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002069 YY_RESTORE_YY_MORE_OFFSET
2070
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002071 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002072 {
2073 /* We're scanning a new file or input source. It's
2074 * possible that this happened because the user
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002075 * just pointed yyin at a new source and called
2076 * yylex(). If so, then we have to assure
2077 * consistency between yy_current_buffer and our
Reid Spencer68a24bd2005-08-27 18:50:39 +00002078 * globals. Here is the right place to do so, because
2079 * this is the first action (other than possibly a
2080 * back-up) that will match for the new input source.
2081 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002082 yy_n_chars = yy_current_buffer->yy_n_chars;
2083 yy_current_buffer->yy_input_file = yyin;
2084 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002085 }
2086
2087 /* Note that here we test for yy_c_buf_p "<=" to the position
2088 * of the first EOB in the buffer, since yy_c_buf_p will
2089 * already have been incremented past the NUL character
2090 * (since all states make transitions on EOB to the
2091 * end-of-buffer state). Contrast this with the test
2092 * in input().
2093 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002094 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002095 { /* This was really a NUL. */
2096 yy_state_type yy_next_state;
2097
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002098 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002099
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002100 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002101
2102 /* Okay, we're now positioned to make the NUL
2103 * transition. We couldn't have
2104 * yy_get_previous_state() go ahead and do it
2105 * for us because it doesn't know how to deal
2106 * with the possibility of jamming (and we don't
2107 * want to build jamming into it because then it
2108 * will run more slowly).
2109 */
2110
2111 yy_next_state = yy_try_NUL_trans( yy_current_state );
2112
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002113 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002114
2115 if ( yy_next_state )
2116 {
2117 /* Consume the NUL. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002118 yy_cp = ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002119 yy_current_state = yy_next_state;
2120 goto yy_match;
2121 }
2122
2123 else
2124 {
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002125 yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002126 goto yy_find_action;
2127 }
2128 }
2129
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002130 else switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002131 {
2132 case EOB_ACT_END_OF_FILE:
2133 {
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002134 yy_did_buffer_switch_on_eof = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002135
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002136 if ( yywrap() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002137 {
2138 /* Note: because we've taken care in
2139 * yy_get_next_buffer() to have set up
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002140 * yytext, we can now set up
Reid Spencer68a24bd2005-08-27 18:50:39 +00002141 * yy_c_buf_p so that if some total
2142 * hoser (like flex itself) wants to
2143 * call the scanner after we return the
2144 * YY_NULL, it'll still work - another
2145 * YY_NULL will get returned.
2146 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002147 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002148
2149 yy_act = YY_STATE_EOF(YY_START);
2150 goto do_action;
2151 }
2152
2153 else
2154 {
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002155 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002156 YY_NEW_FILE;
2157 }
2158 break;
2159 }
2160
2161 case EOB_ACT_CONTINUE_SCAN:
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002162 yy_c_buf_p =
2163 yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002164
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002165 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002166
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002167 yy_cp = yy_c_buf_p;
2168 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002169 goto yy_match;
2170
2171 case EOB_ACT_LAST_MATCH:
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002172 yy_c_buf_p =
2173 &yy_current_buffer->yy_ch_buf[yy_n_chars];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002174
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002175 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002176
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002177 yy_cp = yy_c_buf_p;
2178 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002179 goto yy_find_action;
2180 }
2181 break;
2182 }
2183
2184 default:
2185 YY_FATAL_ERROR(
2186 "fatal flex scanner internal error--no action found" );
2187 } /* end of action switch */
2188 } /* end of scanning one token */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002189 } /* end of yylex */
2190
Reid Spencer68a24bd2005-08-27 18:50:39 +00002191
2192/* yy_get_next_buffer - try to read in a new buffer
2193 *
2194 * Returns a code representing an action:
2195 * EOB_ACT_LAST_MATCH -
2196 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2197 * EOB_ACT_END_OF_FILE - end of file
2198 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002199
2200static int yy_get_next_buffer()
2201 {
2202 register char *dest = yy_current_buffer->yy_ch_buf;
2203 register char *source = yytext_ptr;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002204 register int number_to_move, i;
2205 int ret_val;
2206
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002207 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002208 YY_FATAL_ERROR(
2209 "fatal flex scanner internal error--end of buffer missed" );
2210
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002211 if ( yy_current_buffer->yy_fill_buffer == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002212 { /* Don't try to fill the buffer, so this is an EOF. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002213 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002214 {
2215 /* We matched a single character, the EOB, so
2216 * treat this as a final EOF.
2217 */
2218 return EOB_ACT_END_OF_FILE;
2219 }
2220
2221 else
2222 {
2223 /* We matched some text prior to the EOB, first
2224 * process it.
2225 */
2226 return EOB_ACT_LAST_MATCH;
2227 }
2228 }
2229
2230 /* Try to read more data. */
2231
2232 /* First move last chars to start of buffer. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002233 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002234
2235 for ( i = 0; i < number_to_move; ++i )
2236 *(dest++) = *(source++);
2237
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002238 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002239 /* don't do the read, it's not guaranteed to return an EOF,
2240 * just force an EOF
2241 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002242 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002243
2244 else
2245 {
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002246 int num_to_read =
2247 yy_current_buffer->yy_buf_size - number_to_move - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002248
2249 while ( num_to_read <= 0 )
2250 { /* Not enough room in the buffer - grow it. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002251#ifdef YY_USES_REJECT
2252 YY_FATAL_ERROR(
2253"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2254#else
Reid Spencer68a24bd2005-08-27 18:50:39 +00002255
2256 /* just a shorter name for the current buffer */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002257 YY_BUFFER_STATE b = yy_current_buffer;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002258
2259 int yy_c_buf_p_offset =
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002260 (int) (yy_c_buf_p - b->yy_ch_buf);
Reid Spencer68a24bd2005-08-27 18:50:39 +00002261
2262 if ( b->yy_is_our_buffer )
2263 {
2264 int new_size = b->yy_buf_size * 2;
2265
2266 if ( new_size <= 0 )
2267 b->yy_buf_size += b->yy_buf_size / 8;
2268 else
2269 b->yy_buf_size *= 2;
2270
2271 b->yy_ch_buf = (char *)
2272 /* Include room in for 2 EOB chars. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002273 yy_flex_realloc( (void *) b->yy_ch_buf,
2274 b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002275 }
2276 else
2277 /* Can't grow it, we don't own it. */
2278 b->yy_ch_buf = 0;
2279
2280 if ( ! b->yy_ch_buf )
2281 YY_FATAL_ERROR(
2282 "fatal error - scanner input buffer overflow" );
2283
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002284 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002285
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002286 num_to_read = yy_current_buffer->yy_buf_size -
Reid Spencer68a24bd2005-08-27 18:50:39 +00002287 number_to_move - 1;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002288#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002289 }
2290
2291 if ( num_to_read > YY_READ_BUF_SIZE )
2292 num_to_read = YY_READ_BUF_SIZE;
2293
2294 /* Read in more data. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002295 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
2296 yy_n_chars, num_to_read );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002297
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002298 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002299 }
2300
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002301 if ( yy_n_chars == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002302 {
2303 if ( number_to_move == YY_MORE_ADJ )
2304 {
2305 ret_val = EOB_ACT_END_OF_FILE;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002306 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002307 }
2308
2309 else
2310 {
2311 ret_val = EOB_ACT_LAST_MATCH;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002312 yy_current_buffer->yy_buffer_status =
Reid Spencer68a24bd2005-08-27 18:50:39 +00002313 YY_BUFFER_EOF_PENDING;
2314 }
2315 }
2316
2317 else
2318 ret_val = EOB_ACT_CONTINUE_SCAN;
2319
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002320 yy_n_chars += number_to_move;
2321 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
2322 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002323
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002324 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002325
2326 return ret_val;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002327 }
2328
Reid Spencer68a24bd2005-08-27 18:50:39 +00002329
2330/* yy_get_previous_state - get the state just before the EOB char was reached */
2331
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002332static yy_state_type yy_get_previous_state()
2333 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002334 register yy_state_type yy_current_state;
2335 register char *yy_cp;
2336
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002337 yy_current_state = yy_start;
2338 yy_state_ptr = yy_state_buf;
2339 *yy_state_ptr++ = yy_current_state;
2340
2341 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002342 {
2343 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2344 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2345 {
2346 yy_current_state = (int) yy_def[yy_current_state];
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00002347 if ( yy_current_state >= 552 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002348 yy_c = yy_meta[(unsigned int) yy_c];
2349 }
2350 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002351 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002352 }
2353
2354 return yy_current_state;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002355 }
2356
Reid Spencer68a24bd2005-08-27 18:50:39 +00002357
2358/* yy_try_NUL_trans - try to make a transition on the NUL character
2359 *
2360 * synopsis
2361 * next_state = yy_try_NUL_trans( current_state );
2362 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002363
2364#ifdef YY_USE_PROTOS
2365static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
2366#else
2367static yy_state_type yy_try_NUL_trans( yy_current_state )
2368yy_state_type yy_current_state;
2369#endif
2370 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002371 register int yy_is_jam;
2372
2373 register YY_CHAR yy_c = 1;
2374 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2375 {
2376 yy_current_state = (int) yy_def[yy_current_state];
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00002377 if ( yy_current_state >= 552 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002378 yy_c = yy_meta[(unsigned int) yy_c];
2379 }
2380 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00002381 yy_is_jam = (yy_current_state == 551);
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002382 if ( ! yy_is_jam )
2383 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002384
2385 return yy_is_jam ? 0 : yy_current_state;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002386 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002387
2388
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002389#ifndef YY_NO_UNPUT
2390#ifdef YY_USE_PROTOS
2391static inline void yyunput( int c, register char *yy_bp )
2392#else
2393static inline void yyunput( c, yy_bp )
2394int c;
2395register char *yy_bp;
2396#endif
2397 {
2398 register char *yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002399
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002400 /* undo effects of setting up yytext */
2401 *yy_cp = yy_hold_char;
2402
2403 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002404 { /* need to shift things up to make room */
2405 /* +2 for EOB chars. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002406 register int number_to_move = yy_n_chars + 2;
2407 register char *dest = &yy_current_buffer->yy_ch_buf[
2408 yy_current_buffer->yy_buf_size + 2];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002409 register char *source =
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002410 &yy_current_buffer->yy_ch_buf[number_to_move];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002411
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002412 while ( source > yy_current_buffer->yy_ch_buf )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002413 *--dest = *--source;
2414
2415 yy_cp += (int) (dest - source);
2416 yy_bp += (int) (dest - source);
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002417 yy_current_buffer->yy_n_chars =
2418 yy_n_chars = yy_current_buffer->yy_buf_size;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002419
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002420 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002421 YY_FATAL_ERROR( "flex scanner push-back overflow" );
2422 }
2423
2424 *--yy_cp = (char) c;
2425
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002426 if ( c == '\n' )
2427 --yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002428
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002429 yytext_ptr = yy_bp;
2430 yy_hold_char = *yy_cp;
2431 yy_c_buf_p = yy_cp;
2432 }
2433#endif /* ifndef YY_NO_UNPUT */
2434
Reid Spencer6f407902007-01-13 05:00:46 +00002435
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002436#ifndef YY_NO_INPUT
Reid Spencer68a24bd2005-08-27 18:50:39 +00002437#ifdef __cplusplus
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002438static int yyinput()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002439#else
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002440static int input()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002441#endif
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002442 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002443 int c;
2444
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002445 *yy_c_buf_p = yy_hold_char;
2446
2447 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002448 {
2449 /* yy_c_buf_p now points to the character we want to return.
2450 * If this occurs *before* the EOB characters, then it's a
2451 * valid NUL; if not, then we've hit the end of the buffer.
2452 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002453 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002454 /* This was really a NUL. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002455 *yy_c_buf_p = '\0';
Reid Spencer68a24bd2005-08-27 18:50:39 +00002456
2457 else
2458 { /* need more input */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002459 int offset = yy_c_buf_p - yytext_ptr;
2460 ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002461
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002462 switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002463 {
2464 case EOB_ACT_LAST_MATCH:
2465 /* This happens because yy_g_n_b()
2466 * sees that we've accumulated a
2467 * token and flags that we need to
2468 * try matching the token before
2469 * proceeding. But for input(),
2470 * there's no matching to consider.
2471 * So convert the EOB_ACT_LAST_MATCH
2472 * to EOB_ACT_END_OF_FILE.
2473 */
2474
2475 /* Reset buffer status. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002476 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002477
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002478 /* fall through */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002479
2480 case EOB_ACT_END_OF_FILE:
2481 {
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002482 if ( yywrap() )
Reid Spencer61c83e02006-08-18 08:43:06 +00002483 return EOF;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002484
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002485 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002486 YY_NEW_FILE;
2487#ifdef __cplusplus
2488 return yyinput();
2489#else
2490 return input();
2491#endif
2492 }
2493
2494 case EOB_ACT_CONTINUE_SCAN:
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002495 yy_c_buf_p = yytext_ptr + offset;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002496 break;
2497 }
2498 }
2499 }
2500
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002501 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */
2502 *yy_c_buf_p = '\0'; /* preserve yytext */
2503 yy_hold_char = *++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002504
2505 if ( c == '\n' )
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002506 ++yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002507
2508 return c;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002509 }
2510#endif /* YY_NO_INPUT */
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002511
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002512#ifdef YY_USE_PROTOS
2513void yyrestart( FILE *input_file )
2514#else
2515void yyrestart( input_file )
2516FILE *input_file;
2517#endif
2518 {
2519 if ( ! yy_current_buffer )
2520 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
2521
2522 yy_init_buffer( yy_current_buffer, input_file );
2523 yy_load_buffer_state();
Reid Spencer6f407902007-01-13 05:00:46 +00002524 }
Reid Spencer41dff5e2007-01-26 08:05:27 +00002525
Reid Spencer68a24bd2005-08-27 18:50:39 +00002526
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002527#ifdef YY_USE_PROTOS
2528void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
2529#else
2530void yy_switch_to_buffer( new_buffer )
2531YY_BUFFER_STATE new_buffer;
2532#endif
2533 {
2534 if ( yy_current_buffer == new_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002535 return;
2536
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002537 if ( yy_current_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002538 {
2539 /* Flush out information for old buffer. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002540 *yy_c_buf_p = yy_hold_char;
2541 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
2542 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002543 }
2544
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002545 yy_current_buffer = new_buffer;
2546 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002547
2548 /* We don't actually know whether we did this switch during
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002549 * EOF (yywrap()) processing, but the only time this flag
2550 * is looked at is after yywrap() is called, so it's safe
Reid Spencer68a24bd2005-08-27 18:50:39 +00002551 * to go ahead and always set it.
2552 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002553 yy_did_buffer_switch_on_eof = 1;
2554 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002555
2556
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002557#ifdef YY_USE_PROTOS
2558void yy_load_buffer_state( void )
2559#else
2560void yy_load_buffer_state()
2561#endif
2562 {
2563 yy_n_chars = yy_current_buffer->yy_n_chars;
2564 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
2565 yyin = yy_current_buffer->yy_input_file;
2566 yy_hold_char = *yy_c_buf_p;
2567 }
2568
2569
2570#ifdef YY_USE_PROTOS
2571YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
2572#else
2573YY_BUFFER_STATE yy_create_buffer( file, size )
2574FILE *file;
2575int size;
2576#endif
2577 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002578 YY_BUFFER_STATE b;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002579
2580 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002581 if ( ! b )
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002582 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002583
2584 b->yy_buf_size = size;
2585
2586 /* yy_ch_buf has to be 2 characters longer than the size given because
2587 * we need to put in 2 end-of-buffer characters.
2588 */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002589 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002590 if ( ! b->yy_ch_buf )
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002591 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002592
2593 b->yy_is_our_buffer = 1;
2594
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002595 yy_init_buffer( b, file );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002596
2597 return b;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002598 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002599
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002600
2601#ifdef YY_USE_PROTOS
2602void yy_delete_buffer( YY_BUFFER_STATE b )
2603#else
2604void yy_delete_buffer( b )
2605YY_BUFFER_STATE b;
2606#endif
2607 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002608 if ( ! b )
2609 return;
2610
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002611 if ( b == yy_current_buffer )
2612 yy_current_buffer = (YY_BUFFER_STATE) 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002613
2614 if ( b->yy_is_our_buffer )
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002615 yy_flex_free( (void *) b->yy_ch_buf );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002616
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002617 yy_flex_free( (void *) b );
2618 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002619
2620
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002621
2622#ifdef YY_USE_PROTOS
2623void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
2624#else
2625void yy_init_buffer( b, file )
2626YY_BUFFER_STATE b;
2627FILE *file;
2628#endif
2629
2630
2631 {
2632 yy_flush_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002633
2634 b->yy_input_file = file;
2635 b->yy_fill_buffer = 1;
2636
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002637#if YY_ALWAYS_INTERACTIVE
2638 b->yy_is_interactive = 1;
2639#else
2640#if YY_NEVER_INTERACTIVE
2641 b->yy_is_interactive = 0;
2642#else
2643 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
2644#endif
2645#endif
2646 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002647
2648
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002649#ifdef YY_USE_PROTOS
2650void yy_flush_buffer( YY_BUFFER_STATE b )
2651#else
2652void yy_flush_buffer( b )
2653YY_BUFFER_STATE b;
2654#endif
2655
2656 {
2657 if ( ! b )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002658 return;
2659
2660 b->yy_n_chars = 0;
2661
2662 /* We always need two end-of-buffer characters. The first causes
2663 * a transition to the end-of-buffer state. The second causes
2664 * a jam in that state.
2665 */
2666 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
2667 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
2668
2669 b->yy_buf_pos = &b->yy_ch_buf[0];
2670
2671 b->yy_at_bol = 1;
2672 b->yy_buffer_status = YY_BUFFER_NEW;
2673
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002674 if ( b == yy_current_buffer )
2675 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002676 }
2677
2678
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002679#ifndef YY_NO_SCAN_BUFFER
2680#ifdef YY_USE_PROTOS
2681YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
2682#else
2683YY_BUFFER_STATE yy_scan_buffer( base, size )
2684char *base;
2685yy_size_t size;
2686#endif
2687 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002688 YY_BUFFER_STATE b;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002689
Reid Spencer68a24bd2005-08-27 18:50:39 +00002690 if ( size < 2 ||
2691 base[size-2] != YY_END_OF_BUFFER_CHAR ||
2692 base[size-1] != YY_END_OF_BUFFER_CHAR )
2693 /* They forgot to leave room for the EOB's. */
2694 return 0;
2695
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002696 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002697 if ( ! b )
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002698 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002699
2700 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
2701 b->yy_buf_pos = b->yy_ch_buf = base;
2702 b->yy_is_our_buffer = 0;
2703 b->yy_input_file = 0;
2704 b->yy_n_chars = b->yy_buf_size;
2705 b->yy_is_interactive = 0;
2706 b->yy_at_bol = 1;
2707 b->yy_fill_buffer = 0;
2708 b->yy_buffer_status = YY_BUFFER_NEW;
2709
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002710 yy_switch_to_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002711
2712 return b;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002713 }
2714#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002715
2716
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002717#ifndef YY_NO_SCAN_STRING
2718#ifdef YY_USE_PROTOS
2719YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
2720#else
2721YY_BUFFER_STATE yy_scan_string( yy_str )
2722yyconst char *yy_str;
2723#endif
2724 {
2725 int len;
2726 for ( len = 0; yy_str[len]; ++len )
2727 ;
2728
2729 return yy_scan_bytes( yy_str, len );
2730 }
2731#endif
2732
2733
2734#ifndef YY_NO_SCAN_BYTES
2735#ifdef YY_USE_PROTOS
2736YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
2737#else
2738YY_BUFFER_STATE yy_scan_bytes( bytes, len )
2739yyconst char *bytes;
2740int len;
2741#endif
2742 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002743 YY_BUFFER_STATE b;
2744 char *buf;
2745 yy_size_t n;
2746 int i;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002747
Reid Spencer68a24bd2005-08-27 18:50:39 +00002748 /* Get memory for full buffer, including space for trailing EOB's. */
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002749 n = len + 2;
2750 buf = (char *) yy_flex_alloc( n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002751 if ( ! buf )
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002752 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002753
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002754 for ( i = 0; i < len; ++i )
2755 buf[i] = bytes[i];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002756
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002757 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002758
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002759 b = yy_scan_buffer( buf, n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002760 if ( ! b )
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002761 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002762
2763 /* It's okay to grow etc. this buffer, and we should throw it
2764 * away when we're done.
2765 */
2766 b->yy_is_our_buffer = 1;
2767
2768 return b;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002769 }
2770#endif
2771
2772
2773#ifndef YY_NO_PUSH_STATE
2774#ifdef YY_USE_PROTOS
2775static void yy_push_state( int new_state )
2776#else
2777static void yy_push_state( new_state )
2778int new_state;
2779#endif
2780 {
2781 if ( yy_start_stack_ptr >= yy_start_stack_depth )
2782 {
2783 yy_size_t new_size;
2784
2785 yy_start_stack_depth += YY_START_STACK_INCR;
2786 new_size = yy_start_stack_depth * sizeof( int );
2787
2788 if ( ! yy_start_stack )
2789 yy_start_stack = (int *) yy_flex_alloc( new_size );
2790
2791 else
2792 yy_start_stack = (int *) yy_flex_realloc(
2793 (void *) yy_start_stack, new_size );
2794
2795 if ( ! yy_start_stack )
2796 YY_FATAL_ERROR(
2797 "out of memory expanding start-condition stack" );
2798 }
2799
2800 yy_start_stack[yy_start_stack_ptr++] = YY_START;
2801
2802 BEGIN(new_state);
2803 }
2804#endif
2805
2806
2807#ifndef YY_NO_POP_STATE
2808static void yy_pop_state()
2809 {
2810 if ( --yy_start_stack_ptr < 0 )
2811 YY_FATAL_ERROR( "start-condition stack underflow" );
2812
2813 BEGIN(yy_start_stack[yy_start_stack_ptr]);
2814 }
2815#endif
2816
2817
2818#ifndef YY_NO_TOP_STATE
2819static int yy_top_state()
2820 {
2821 return yy_start_stack[yy_start_stack_ptr - 1];
2822 }
2823#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002824
2825#ifndef YY_EXIT_FAILURE
2826#define YY_EXIT_FAILURE 2
2827#endif
2828
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002829#ifdef YY_USE_PROTOS
2830static void yy_fatal_error( yyconst char msg[] )
2831#else
2832static void yy_fatal_error( msg )
2833char msg[];
2834#endif
2835 {
2836 (void) fprintf( stderr, "%s\n", msg );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002837 exit( YY_EXIT_FAILURE );
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002838 }
2839
2840
Reid Spencer68a24bd2005-08-27 18:50:39 +00002841
2842/* Redefine yyless() so it works in section 3 code. */
2843
2844#undef yyless
2845#define yyless(n) \
2846 do \
2847 { \
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002848 /* Undo effects of setting up yytext. */ \
2849 yytext[yyleng] = yy_hold_char; \
2850 yy_c_buf_p = yytext + n; \
2851 yy_hold_char = *yy_c_buf_p; \
2852 *yy_c_buf_p = '\0'; \
2853 yyleng = n; \
Reid Spencer68a24bd2005-08-27 18:50:39 +00002854 } \
2855 while ( 0 )
2856
2857
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002858/* Internal utility routines. */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002859
2860#ifndef yytext_ptr
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002861#ifdef YY_USE_PROTOS
2862static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
2863#else
2864static void yy_flex_strncpy( s1, s2, n )
2865char *s1;
2866yyconst char *s2;
2867int n;
2868#endif
2869 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002870 register int i;
2871 for ( i = 0; i < n; ++i )
2872 s1[i] = s2[i];
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002873 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002874#endif
2875
2876#ifdef YY_NEED_STRLEN
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002877#ifdef YY_USE_PROTOS
2878static int yy_flex_strlen( yyconst char *s )
2879#else
2880static int yy_flex_strlen( s )
2881yyconst char *s;
2882#endif
2883 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002884 register int n;
2885 for ( n = 0; s[n]; ++n )
2886 ;
2887
2888 return n;
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002889 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002890#endif
2891
Reid Spencer832254e2007-02-02 02:16:23 +00002892
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002893#ifdef YY_USE_PROTOS
2894static void *yy_flex_alloc( yy_size_t size )
2895#else
2896static void *yy_flex_alloc( size )
2897yy_size_t size;
2898#endif
2899 {
2900 return (void *) malloc( size );
2901 }
2902
2903#ifdef YY_USE_PROTOS
2904static inline void *yy_flex_realloc( void *ptr, yy_size_t size )
2905#else
2906static inline void *yy_flex_realloc( ptr, size )
2907void *ptr;
2908yy_size_t size;
2909#endif
2910 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002911 /* The cast to (char *) in the following accommodates both
2912 * implementations that use char* generic pointers, and those
2913 * that use void* generic pointers. It works with the latter
2914 * because both ANSI C and C++ allow castless assignment from
2915 * any pointer type to void*, and deal with argument conversions
2916 * as though doing an assignment.
2917 */
2918 return (void *) realloc( (char *) ptr, size );
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002919 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002920
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002921#ifdef YY_USE_PROTOS
2922static void yy_flex_free( void *ptr )
2923#else
2924static void yy_flex_free( ptr )
2925void *ptr;
2926#endif
2927 {
2928 free( ptr );
2929 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002930
Reid Spencer9c9b63a2007-04-28 16:07:31 +00002931#if YY_MAIN
2932int main()
2933 {
2934 yylex();
2935 return 0;
2936 }
2937#endif
2938#line 444 "/proj/llvm/llvm-2/lib/AsmParser/Lexer.l"
Chris Lattner2fecc0f2006-02-15 07:02:59 +00002939