blob: 326bdf0ac79eed74abe8b1b57be5ac5eaad73086 [file] [log] [blame]
Reid Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +000019#line 20 "Lexer.cpp"
David Greene718fda32007-08-01 03:59:32 +000020/* A lexical scanner generated by flex */
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +000021
Reid Spencered951ea2007-05-19 07:22:10 +000022/* Scanner skeleton version:
Dale Johannesen320fc8a2007-08-03 01:03:46 +000023 * $Header: /cvs/root/flex/flex/skel.c,v 1.2 2004/05/07 00:28:17 jkh Exp $
Reid Spencered951ea2007-05-19 07:22:10 +000024 */
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
Anton Korobeynikovf52e6082007-04-29 18:38:24 +000032
Reid Spencered951ea2007-05-19 07:22:10 +000033/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
34#ifdef c_plusplus
35#ifndef __cplusplus
36#define __cplusplus
37#endif
Anton Korobeynikovf52e6082007-04-29 18:38:24 +000038#endif
39
Anton Korobeynikovf52e6082007-04-29 18:38:24 +000040
41#ifdef __cplusplus
Reid Spencer9c9b63a2007-04-28 16:07:31 +000042
Reid Spencered951ea2007-05-19 07:22:10 +000043#include <stdlib.h>
Dale Johannesen320fc8a2007-08-03 01:03:46 +000044#include <unistd.h>
Reid Spencered951ea2007-05-19 07:22:10 +000045
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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +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 Spencered951ea2007-05-19 07:22:10 +0000154#define unput(c) yyunput( c, yytext_ptr )
155
Reid Spencer68a24bd2005-08-27 18:50:39 +0000156/* The following is because we cannot portably get our hands on size_t
157 * (without autoconf's help, which isn't available because we want
158 * flex-generated scanners to compile on their own).
159 */
160typedef unsigned int yy_size_t;
161
Reid Spencered951ea2007-05-19 07:22:10 +0000162
Reid Spencer68a24bd2005-08-27 18:50:39 +0000163struct yy_buffer_state
164 {
165 FILE *yy_input_file;
166
167 char *yy_ch_buf; /* input buffer */
168 char *yy_buf_pos; /* current position in input buffer */
169
170 /* Size of input buffer in bytes, not including room for EOB
171 * characters.
172 */
173 yy_size_t yy_buf_size;
174
175 /* Number of characters read into yy_ch_buf, not including EOB
176 * characters.
177 */
178 int yy_n_chars;
179
180 /* Whether we "own" the buffer - i.e., we know we created it,
181 * and can realloc() it to grow it, and should free() it to
182 * delete it.
183 */
184 int yy_is_our_buffer;
185
186 /* Whether this is an "interactive" input source; if so, and
187 * if we're using stdio for input, then we want to use getc()
188 * instead of fread(), to make sure we stop fetching input after
189 * each newline.
190 */
191 int yy_is_interactive;
192
193 /* Whether we're considered to be at the beginning of a line.
194 * If so, '^' rules will be active on the next match, otherwise
195 * not.
196 */
197 int yy_at_bol;
198
199 /* Whether to try to fill the input buffer when we reach the
200 * end of it.
201 */
202 int yy_fill_buffer;
203
204 int yy_buffer_status;
205#define YY_BUFFER_NEW 0
206#define YY_BUFFER_NORMAL 1
207 /* When an EOF's been seen but there's still some text to process
208 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
209 * shouldn't try reading from the input source any more. We might
210 * still have a bunch of tokens to match, though, because of
211 * possible backing-up.
212 *
213 * When we actually see the EOF, we change the status to "new"
Reid Spencered951ea2007-05-19 07:22:10 +0000214 * (via yyrestart()), so that the user can continue scanning by
215 * just pointing yyin at a new input file.
Reid Spencer68a24bd2005-08-27 18:50:39 +0000216 */
217#define YY_BUFFER_EOF_PENDING 2
Anton Korobeynikovf52e6082007-04-29 18:38:24 +0000218 };
Anton Korobeynikovf52e6082007-04-29 18:38:24 +0000219
Reid Spencered951ea2007-05-19 07:22:10 +0000220static YY_BUFFER_STATE yy_current_buffer = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000221
222/* We provide macros for accessing buffer states in case in the
223 * future we want to put the buffer states in a more general
224 * "scanner state".
225 */
Reid Spencered951ea2007-05-19 07:22:10 +0000226#define YY_CURRENT_BUFFER yy_current_buffer
Reid Spencer68a24bd2005-08-27 18:50:39 +0000227
228
Reid Spencered951ea2007-05-19 07:22:10 +0000229/* yy_hold_char holds the character lost when yytext is formed. */
Reid Spencer68a24bd2005-08-27 18:50:39 +0000230static char yy_hold_char;
Reid Spencered951ea2007-05-19 07:22:10 +0000231
Reid Spencer68a24bd2005-08-27 18:50:39 +0000232static int yy_n_chars; /* number of characters read into yy_ch_buf */
Reid Spencered951ea2007-05-19 07:22:10 +0000233
234
235int yyleng;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000236
237/* Points to current character in buffer. */
238static char *yy_c_buf_p = (char *) 0;
Reid Spencered951ea2007-05-19 07:22:10 +0000239static int yy_init = 1; /* whether we need to initialize */
Reid Spencer68a24bd2005-08-27 18:50:39 +0000240static int yy_start = 0; /* start state number */
241
Reid Spencered951ea2007-05-19 07:22:10 +0000242/* Flag which is used to allow yywrap()'s to do buffer switches
243 * instead of setting up a fresh yyin. A bit of a hack ...
Reid Spencer68a24bd2005-08-27 18:50:39 +0000244 */
245static int yy_did_buffer_switch_on_eof;
246
Reid Spencered951ea2007-05-19 07:22:10 +0000247void yyrestart YY_PROTO(( FILE *input_file ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000248
Reid Spencered951ea2007-05-19 07:22:10 +0000249void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
250void yy_load_buffer_state YY_PROTO(( void ));
251YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
252void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
253void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
254void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
255#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +0000256
Reid Spencered951ea2007-05-19 07:22:10 +0000257YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
258YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
259YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000260
Reid Spencered951ea2007-05-19 07:22:10 +0000261static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
David Greene718fda32007-08-01 03:59:32 +0000262static inline void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
Reid Spencered951ea2007-05-19 07:22:10 +0000263static void yy_flex_free YY_PROTO(( void * ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000264
Reid Spencered951ea2007-05-19 07:22:10 +0000265#define yy_new_buffer yy_create_buffer
Reid Spencer68a24bd2005-08-27 18:50:39 +0000266
267#define yy_set_interactive(is_interactive) \
268 { \
Reid Spencered951ea2007-05-19 07:22:10 +0000269 if ( ! yy_current_buffer ) \
270 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
271 yy_current_buffer->yy_is_interactive = is_interactive; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000272 }
273
274#define yy_set_bol(at_bol) \
275 { \
Reid Spencered951ea2007-05-19 07:22:10 +0000276 if ( ! yy_current_buffer ) \
277 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
278 yy_current_buffer->yy_at_bol = at_bol; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000279 }
280
Reid Spencered951ea2007-05-19 07:22:10 +0000281#define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
Reid Spencer68a24bd2005-08-27 18:50:39 +0000282
283
Reid Spencered951ea2007-05-19 07:22:10 +0000284#define YY_USES_REJECT
285
286#define yywrap() 1
Reid Spencer68a24bd2005-08-27 18:50:39 +0000287#define YY_SKIP_YYWRAP
Anton Korobeynikovf52e6082007-04-29 18:38:24 +0000288typedef unsigned char YY_CHAR;
Reid Spencered951ea2007-05-19 07:22:10 +0000289FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
Anton Korobeynikovf52e6082007-04-29 18:38:24 +0000290typedef int yy_state_type;
Reid Spencered951ea2007-05-19 07:22:10 +0000291extern int yylineno;
292int yylineno = 1;
293extern char *yytext;
294#define yytext_ptr yytext
Anton Korobeynikovf52e6082007-04-29 18:38:24 +0000295
Reid Spencered951ea2007-05-19 07:22:10 +0000296static yy_state_type yy_get_previous_state YY_PROTO(( void ));
297static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
298static int yy_get_next_buffer YY_PROTO(( void ));
299static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000300
301/* Done after the current pattern has been matched and before the
Reid Spencered951ea2007-05-19 07:22:10 +0000302 * corresponding action - sets up yytext.
Reid Spencer68a24bd2005-08-27 18:50:39 +0000303 */
304#define YY_DO_BEFORE_ACTION \
Reid Spencered951ea2007-05-19 07:22:10 +0000305 yytext_ptr = yy_bp; \
306 yyleng = (int) (yy_cp - yy_bp); \
307 yy_hold_char = *yy_cp; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000308 *yy_cp = '\0'; \
Reid Spencered951ea2007-05-19 07:22:10 +0000309 yy_c_buf_p = yy_cp;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000310
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000311#define YY_NUM_RULES 149
312#define YY_END_OF_BUFFER 150
313static yyconst short int yy_acclist[230] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000314 { 0,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000315 150, 148, 149, 147, 148, 149, 147, 149, 148, 149,
316 148, 149, 148, 149, 148, 149, 148, 149, 148, 149,
317 140, 148, 149, 140, 148, 149, 1, 148, 149, 148,
318 149, 148, 149, 148, 149, 148, 149, 148, 149, 148,
319 149, 148, 149, 148, 149, 148, 149, 148, 149, 148,
320 149, 148, 149, 148, 149, 148, 149, 148, 149, 148,
321 149, 148, 149, 148, 149, 148, 149, 148, 149, 148,
322 149, 148, 149, 148, 149, 137, 135, 133, 143, 141,
323 145, 140, 1, 134, 144, 119, 38, 82, 64, 83,
324 78, 25, 137, 139, 133, 145, 22, 145, 146, 138,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000325
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000326 134, 65, 77, 36, 39, 3, 67, 92, 97, 95,
327 96, 94, 93, 98, 102, 118, 87, 85, 74, 86,
328 84, 66, 100, 91, 89, 90, 88, 101, 99, 79,
329 136, 145, 145, 76, 103, 81, 70, 126, 73, 80,
330 127, 75, 52, 24, 142, 69, 106, 72, 47, 26,
331 4, 62, 68, 71, 55, 12, 105, 145, 34, 32,
332 2, 51, 5, 56, 59, 108, 46, 61, 53, 128,
333 104, 23, 54, 125, 41, 7, 57, 40, 112, 111,
334 8, 16, 121, 124, 35, 63, 116, 110, 120, 27,
335 28, 109, 122, 117, 115, 6, 29, 107, 50, 33,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000336
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000337 44, 45, 9, 19, 10, 113, 11, 49, 48, 114,
338 31, 58, 13, 15, 14, 60, 17, 30, 37, 18,
339 123, 20, 129, 131, 132, 42, 130, 43, 21
Reid Spencer68a24bd2005-08-27 18:50:39 +0000340 } ;
341
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000342static yyconst short int yy_accept[601] =
Reid Spencered951ea2007-05-19 07:22:10 +0000343 { 0,
344 1, 1, 1, 2, 4, 7, 9, 11, 13, 15,
345 17, 19, 21, 24, 27, 30, 32, 34, 36, 38,
346 40, 42, 44, 46, 48, 50, 52, 54, 56, 58,
347 60, 62, 64, 66, 68, 70, 72, 74, 76, 76,
348 77, 77, 78, 78, 79, 80, 80, 81, 81, 82,
349 83, 83, 84, 84, 85, 86, 86, 86, 86, 86,
Reid Spencerb8f85052007-07-31 03:50:36 +0000350 86, 86, 86, 87, 87, 87, 88, 88, 88, 88,
351 88, 88, 88, 89, 89, 89, 89, 89, 89, 89,
352 89, 89, 89, 89, 90, 90, 90, 90, 90, 90,
353 90, 90, 90, 90, 91, 91, 91, 91, 91, 91,
Reid Spencered951ea2007-05-19 07:22:10 +0000354
Reid Spencerb8f85052007-07-31 03:50:36 +0000355 91, 91, 92, 92, 92, 92, 92, 92, 92, 92,
356 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000357 92, 93, 93, 93, 93, 93, 93, 93, 93, 93,
358 93, 93, 93, 93, 93, 93, 93, 94, 94, 95,
359 96, 97, 98, 99, 99, 100, 100, 101, 102, 103,
360 103, 103, 104, 104, 104, 105, 105, 105, 105, 105,
361 106, 106, 106, 106, 106, 106, 106, 106, 106, 107,
Reid Spencered951ea2007-05-19 07:22:10 +0000362 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
363 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000364 107, 107, 107, 107, 108, 108, 108, 108, 108, 108,
Reid Spencered951ea2007-05-19 07:22:10 +0000365
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000366 109, 110, 111, 112, 113, 114, 114, 115, 116, 116,
367 116, 116, 117, 117, 117, 117, 117, 117, 118, 119,
368 120, 120, 120, 120, 120, 121, 122, 122, 122, 123,
369 123, 123, 123, 123, 123, 123, 123, 123, 124, 125,
370 126, 126, 127, 128, 128, 129, 130, 130, 130, 130,
371 130, 130, 130, 130, 130, 131, 131, 131, 132, 133,
372 133, 133, 133, 134, 134, 134, 134, 134, 135, 135,
373 135, 135, 136, 136, 136, 136, 136, 136, 136, 136,
374 136, 136, 136, 136, 136, 136, 137, 138, 138, 138,
375 138, 138, 138, 139, 140, 140, 140, 140, 141, 141,
Reid Spencered951ea2007-05-19 07:22:10 +0000376
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000377 141, 141, 141, 141, 141, 141, 142, 143, 143, 143,
378 144, 144, 144, 144, 145, 145, 145, 145, 145, 146,
379 147, 147, 147, 148, 148, 148, 148, 148, 149, 150,
380 150, 150, 151, 151, 151, 151, 152, 152, 153, 154,
381 154, 154, 154, 154, 155, 155, 156, 156, 157, 157,
382 157, 158, 159, 160, 161, 161, 161, 162, 162, 163,
383 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
384 163, 164, 164, 165, 166, 167, 167, 167, 167, 167,
385 167, 167, 168, 168, 168, 168, 168, 169, 169, 169,
386 169, 169, 169, 169, 169, 169, 169, 169, 169, 169,
Reid Spencered951ea2007-05-19 07:22:10 +0000387
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000388 169, 170, 170, 170, 170, 170, 171, 171, 171, 171,
389 171, 172, 172, 173, 173, 173, 173, 173, 173, 173,
390 173, 173, 173, 174, 175, 175, 175, 176, 176, 176,
391 176, 177, 177, 177, 177, 178, 178, 178, 179, 180,
392 181, 181, 181, 182, 183, 183, 183, 183, 184, 184,
393 185, 186, 186, 186, 186, 187, 187, 187, 187, 187,
394 188, 188, 188, 188, 189, 190, 191, 191, 192, 193,
395 193, 194, 195, 195, 195, 195, 195, 195, 195, 195,
396 196, 196, 196, 197, 198, 198, 198, 198, 198, 198,
397 199, 199, 199, 199, 199, 199, 200, 200, 200, 200,
Reid Spencered951ea2007-05-19 07:22:10 +0000398
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000399 200, 200, 201, 201, 201, 202, 202, 202, 202, 202,
400 202, 202, 203, 203, 203, 204, 204, 204, 204, 204,
401 205, 205, 205, 205, 206, 207, 208, 209, 210, 210,
402 210, 211, 211, 211, 211, 211, 212, 212, 213, 213,
403 213, 214, 214, 215, 216, 216, 216, 216, 216, 217,
404 218, 218, 218, 218, 218, 218, 218, 218, 219, 219,
405 219, 219, 219, 219, 220, 220, 220, 220, 220, 220,
406 221, 221, 221, 221, 221, 221, 222, 222, 222, 222,
407 222, 222, 222, 222, 223, 223, 223, 223, 223, 224,
408 225, 226, 226, 227, 227, 228, 229, 229, 230, 230
409
Reid Spencered951ea2007-05-19 07:22:10 +0000410 } ;
411
412static yyconst int yy_ec[256] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000413 { 0,
414 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
415 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
416 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
417 1, 2, 1, 4, 1, 5, 6, 1, 1, 1,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000418 1, 1, 7, 1, 8, 9, 1, 10, 11, 12,
419 13, 13, 13, 14, 13, 15, 13, 16, 17, 1,
420 1, 1, 1, 18, 19, 19, 19, 19, 20, 19,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000421 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
422 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000423 1, 1, 1, 1, 21, 1, 22, 23, 24, 25,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000424
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000425 26, 27, 28, 29, 30, 5, 31, 32, 33, 34,
426 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
427 45, 46, 1, 1, 1, 1, 1, 1, 1, 1,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000428 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
429 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
430 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
431 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
432 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
433 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
434 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
435
436 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
437 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
438 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
439 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
440 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
441 1, 1, 1, 1, 1
442 } ;
443
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000444static yyconst int yy_meta[47] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000445 { 0,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000446 1, 1, 2, 3, 4, 1, 5, 6, 7, 8,
447 8, 8, 8, 8, 8, 9, 1, 1, 4, 10,
448 4, 4, 4, 4, 4, 10, 4, 4, 4, 4,
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000449 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000450 4, 4, 4, 4, 4, 4
Reid Spencer68a24bd2005-08-27 18:50:39 +0000451 } ;
452
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000453static yyconst short int yy_base[612] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000454 { 0,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000455 0, 0, 1335, 1336, 1336, 1336, 1330, 1317, 43, 49,
456 55, 63, 71, 1288, 0, 112, 72, 75, 74, 112,
457 58, 132, 103, 59, 161, 120, 77, 105, 180, 101,
458 84, 209, 162, 243, 127, 135, 117, 137, 1327, 1336,
459 1314, 1336, 1325, 0, 216, 1319, 272, 98, 307, 1283,
460 324, 0, 1322, 0, 250, 78, 149, 142, 144, 153,
461 171, 33, 1309, 34, 172, 174, 177, 173, 230, 178,
462 36, 167, 1308, 204, 185, 189, 226, 186, 232, 207,
463 239, 216, 220, 246, 258, 260, 272, 262, 281, 276,
464 274, 285, 277, 273, 291, 292, 129, 288, 314, 299,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000465
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000466 336, 337, 315, 339, 325, 326, 340, 341, 343, 345,
467 350, 351, 354, 355, 349, 352, 368, 356, 358, 362,
468 1307, 377, 381, 382, 383, 385, 386, 387, 398, 389,
469 388, 400, 406, 392, 405, 413, 1306, 1317, 1336, 0,
470 411, 1304, 0, 451, 0, 1315, 1336, 0, 1302, 418,
471 403, 1301, 419, 431, 1300, 423, 426, 432, 428, 1299,
472 452, 433, 454, 439, 457, 458, 459, 463, 1298, 462,
473 464, 465, 466, 467, 475, 440, 468, 476, 480, 478,
474 485, 482, 479, 494, 500, 501, 483, 503, 295, 505,
475 506, 507, 199, 1297, 508, 515, 509, 512, 517, 1296,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000476
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000477 1295, 1294, 1293, 1292, 1291, 516, 1290, 1289, 521, 518,
478 520, 1288, 551, 527, 539, 524, 540, 1287, 1286, 1285,
479 541, 556, 551, 565, 1284, 1283, 568, 567, 1282, 570,
480 522, 571, 572, 573, 577, 576, 574, 1281, 1280, 1279,
481 578, 1278, 1277, 580, 1276, 1275, 581, 529, 579, 598,
482 599, 601, 588, 605, 1274, 602, 606, 1336, 605, 544,
483 628, 620, 622, 616, 617, 620, 618, 1273, 619, 632,
484 629, 1272, 633, 631, 634, 640, 642, 643, 644, 647,
485 649, 648, 652, 651, 654, 1271, 1270, 653, 667, 656,
486 659, 663, 1269, 1268, 669, 668, 671, 1267, 675, 673,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000487
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000488 676, 678, 679, 683, 686, 1266, 1265, 689, 690, 1264,
489 693, 691, 35, 1263, 692, 700, 702, 701, 0, 1262,
490 696, 713, 732, 703, 716, 723, 724, 1261, 1260, 727,
491 722, 1259, 728, 725, 729, 1258, 734, 1257, 1256, 736,
492 739, 740, 741, 1255, 743, 1254, 744, 1253, 749, 748,
493 766, 779, 1252, 1251, 751, 754, 1250, 756, 1249, 761,
494 764, 780, 767, 771, 783, 782, 784, 785, 787, 788,
495 1248, 791, 1247, 1246, 1245, 792, 793, 794, 798, 797,
496 800, 1244, 801, 803, 809, 810, 1243, 814, 811, 816,
497 817, 815, 822, 824, 827, 830, 828, 831, 833, 857,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000498
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000499 1336, 835, 837, 839, 841, 1242, 845, 846, 853, 849,
500 1241, 852, 1240, 855, 856, 854, 860, 869, 864, 868,
501 873, 890, 1336, 1239, 871, 878, 1238, 879, 880, 882,
502 1237, 881, 884, 886, 1236, 893, 883, 1235, 1234, 1233,
503 887, 894, 1232, 1231, 890, 906, 901, 1230, 908, 1229,
504 1228, 910, 913, 914, 1227, 709, 915, 918, 919, 1226,
505 917, 920, 921, 1225, 1224, 1223, 923, 1222, 1221, 929,
506 1220, 1219, 922, 924, 941, 934, 926, 930, 946, 1218,
507 948, 949, 1216, 1212, 951, 952, 251, 953, 955, 1209,
508 956, 954, 959, 957, 961, 1205, 958, 977, 967, 978,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000509
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000510 960, 1190, 980, 981, 1186, 982, 983, 985, 987, 996,
511 992, 1173, 993, 997, 1169, 994, 999, 1001, 1002, 1158,
512 1004, 1003, 1005, 1155, 1151, 1143, 1130, 1129, 1008, 1013,
513 1127, 1014, 1010, 1016, 1026, 1126, 1028, 1125, 1031, 1027,
514 1124, 1029, 1122, 1121, 1032, 1030, 1034, 1039, 1120, 1119,
515 1042, 1043, 1044, 1045, 1048, 1046, 1049, 1118, 1051, 1047,
516 1057, 1059, 1060, 1117, 1065, 1063, 1070, 1072, 1074, 1112,
517 1068, 1075, 1076, 1079, 1080, 1111, 1081, 1083, 1087, 1082,
518 1085, 1089, 1092, 1106, 1095, 1102, 1093, 1104, 962, 755,
519 575, 1108, 477, 1105, 394, 187, 1109, 32, 1336, 1147,
Reid Spencerb8f85052007-07-31 03:50:36 +0000520
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000521 1154, 1162, 1172, 1180, 1190, 1197, 1201, 1209, 1216, 1219,
522 1225
Reid Spencer68a24bd2005-08-27 18:50:39 +0000523 } ;
524
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000525static yyconst short int yy_def[612] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000526 { 0,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000527 599, 1, 599, 599, 599, 599, 600, 601, 602, 599,
528 601, 601, 601, 13, 603, 604, 601, 601, 601, 601,
529 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
530 601, 601, 601, 601, 601, 601, 601, 601, 600, 599,
531 601, 599, 605, 606, 599, 607, 13, 601, 601, 13,
532 49, 603, 608, 609, 599, 601, 601, 601, 601, 601,
533 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
534 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
535 601, 601, 601, 25, 601, 601, 601, 601, 601, 601,
536 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000537
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000538 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
539 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
540 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
541 601, 601, 601, 601, 601, 601, 599, 605, 599, 606,
542 610, 601, 49, 601, 51, 608, 599, 609, 601, 601,
543 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
544 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
545 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
546 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
547 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000548
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000549 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
550 601, 601, 51, 601, 601, 601, 601, 601, 601, 601,
551 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
552 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
553 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
554 601, 601, 601, 601, 601, 601, 601, 599, 610, 611,
555 599, 144, 144, 601, 601, 601, 601, 601, 601, 601,
556 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
557 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
558 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000559
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000560 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
561 601, 601, 601, 601, 601, 601, 601, 601, 213, 601,
562 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
563 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
564 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
565 601, 599, 601, 601, 601, 601, 601, 601, 601, 601,
566 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
567 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
568 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
569 601, 601, 601, 601, 601, 601, 601, 601, 601, 599,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000570
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000571 599, 601, 601, 601, 601, 601, 601, 601, 601, 601,
572 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
573 601, 599, 599, 601, 601, 601, 601, 601, 601, 601,
574 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
575 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
576 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
577 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
578 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
579 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
580 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000581
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000582 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
583 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
584 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
585 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
586 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
587 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
588 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
589 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
590 601, 601, 601, 601, 601, 601, 601, 601, 601, 601,
591 601, 601, 601, 601, 601, 601, 601, 601, 0, 599,
Reid Spencerb8f85052007-07-31 03:50:36 +0000592
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000593 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
594 599
Reid Spencer68a24bd2005-08-27 18:50:39 +0000595 } ;
596
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000597static yyconst short int yy_nxt[1383] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000598 { 0,
599 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000600 14, 14, 14, 14, 14, 4, 15, 16, 8, 8,
601 8, 17, 18, 19, 20, 21, 22, 23, 24, 25,
602 8, 26, 27, 28, 29, 30, 8, 31, 32, 33,
603 34, 35, 36, 37, 8, 38, 43, 42, 42, 42,
604 42, 42, 45, 45, 45, 45, 45, 45, 46, 46,
605 46, 46, 46, 46, 47, 47, 47, 47, 47, 47,
606 42, 48, 157, 42, 42, 158, 168, 393, 42, 49,
607 50, 50, 50, 50, 50, 50, 42, 42, 83, 42,
608 42, 72, 42, 42, 73, 65, 56, 66, 91, 42,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000609
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000610 61, 74, 149, 57, 62, 58, 142, 59, 67, 107,
611 60, 92, 63, 42, 51, 53, 42, 93, 42, 64,
612 42, 55, 55, 55, 55, 55, 55, 42, 81, 103,
613 94, 134, 42, 68, 82, 42, 104, 69, 105, 95,
614 106, 87, 42, 70, 42, 96, 71, 42, 131, 88,
615 42, 135, 42, 75, 89, 76, 77, 42, 90, 42,
616 133, 132, 136, 78, 42, 200, 152, 79, 42, 80,
617 84, 84, 84, 84, 84, 84, 42, 42, 150, 153,
618 151, 154, 42, 119, 85, 155, 42, 42, 42, 42,
619 120, 169, 42, 42, 86, 42, 121, 160, 156, 122,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000620
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000621 42, 42, 42, 159, 42, 97, 123, 98, 161, 167,
622 162, 99, 163, 100, 42, 101, 171, 102, 108, 42,
623 175, 173, 42, 172, 42, 45, 45, 45, 45, 45,
624 45, 42, 179, 109, 110, 42, 111, 112, 113, 309,
625 114, 42, 176, 170, 182, 42, 115, 42, 116, 117,
626 181, 118, 108, 164, 42, 174, 165, 177, 42, 55,
627 55, 55, 55, 55, 55, 166, 42, 124, 125, 41,
628 126, 178, 127, 42, 128, 42, 129, 42, 180, 41,
629 130, 47, 47, 47, 47, 47, 47, 42, 42, 42,
630 183, 42, 42, 519, 188, 189, 42, 184, 185, 186,
Reid Spencer6fd36ab2006-12-29 20:35:03 +0000631
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000632 42, 187, 190, 42, 191, 192, 42, 42, 194, 193,
633 42, 195, 196, 201, 42, 41, 143, 143, 143, 143,
634 143, 143, 42, 199, 205, 305, 144, 202, 197, 42,
635 42, 198, 144, 145, 145, 145, 145, 145, 145, 203,
636 42, 42, 145, 145, 208, 145, 145, 145, 145, 145,
637 145, 42, 42, 204, 42, 42, 42, 206, 42, 210,
638 42, 207, 209, 211, 42, 42, 42, 42, 215, 42,
639 42, 42, 214, 42, 227, 218, 216, 42, 222, 212,
640 225, 223, 220, 42, 213, 230, 228, 231, 217, 219,
641 229, 221, 42, 224, 226, 232, 42, 42, 42, 233,
Reid Spencer6fd36ab2006-12-29 20:35:03 +0000642
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000643 42, 42, 42, 42, 42, 254, 234, 42, 250, 42,
644 239, 237, 242, 42, 249, 42, 236, 235, 42, 238,
645 42, 42, 244, 245, 240, 241, 243, 253, 42, 251,
646 260, 252, 246, 42, 42, 247, 260, 266, 42, 264,
647 248, 42, 255, 42, 267, 265, 42, 42, 42, 270,
648 256, 289, 269, 271, 42, 42, 257, 261, 262, 272,
649 263, 263, 263, 263, 263, 263, 42, 42, 268, 42,
650 276, 274, 42, 42, 42, 275, 273, 42, 42, 42,
651 42, 42, 42, 42, 279, 281, 277, 282, 280, 278,
652 42, 42, 42, 42, 42, 42, 288, 42, 42, 283,
Reid Spencer6fd36ab2006-12-29 20:35:03 +0000653
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000654 42, 286, 284, 295, 285, 293, 297, 296, 287, 42,
655 291, 290, 294, 292, 298, 42, 42, 303, 42, 299,
656 42, 42, 42, 42, 42, 300, 301, 42, 304, 306,
657 42, 42, 42, 42, 312, 42, 42, 42, 308, 42,
658 302, 316, 42, 307, 42, 313, 311, 310, 314, 322,
659 261, 261, 315, 332, 42, 42, 42, 317, 343, 318,
660 319, 319, 319, 319, 319, 319, 42, 324, 320, 319,
661 319, 42, 319, 319, 319, 319, 319, 319, 321, 323,
662 42, 325, 42, 42, 326, 42, 42, 42, 42, 42,
663 42, 42, 42, 42, 42, 42, 42, 334, 333, 327,
Reid Spencer3d6b71e2007-04-09 01:56:05 +0000664
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000665 328, 338, 336, 42, 330, 341, 342, 329, 335, 331,
666 337, 344, 340, 42, 42, 339, 42, 42, 348, 345,
667 42, 42, 347, 346, 260, 349, 599, 41, 599, 41,
668 260, 42, 42, 42, 42, 42, 350, 352, 352, 352,
669 352, 352, 352, 355, 42, 351, 42, 42, 42, 42,
670 354, 356, 357, 358, 353, 42, 360, 42, 42, 42,
671 359, 363, 42, 42, 42, 362, 42, 42, 42, 42,
672 361, 42, 365, 370, 42, 364, 371, 372, 42, 367,
673 368, 374, 42, 42, 42, 369, 42, 366, 42, 380,
674 42, 42, 373, 42, 42, 375, 381, 376, 42, 377,
Chris Lattnerce5f24e2007-07-05 17:26:49 +0000675
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000676 379, 42, 382, 378, 42, 42, 42, 42, 42, 386,
677 383, 42, 385, 384, 387, 42, 42, 42, 42, 499,
678 388, 390, 391, 389, 42, 398, 395, 396, 42, 402,
679 392, 42, 394, 400, 401, 397, 399, 42, 42, 42,
680 42, 403, 42, 42, 42, 407, 409, 42, 404, 42,
681 405, 42, 406, 408, 42, 42, 42, 411, 42, 42,
682 410, 414, 412, 42, 42, 413, 42, 422, 423, 42,
683 42, 42, 424, 420, 415, 418, 42, 421, 425, 42,
684 416, 42, 42, 417, 427, 428, 42, 419, 352, 352,
685 352, 352, 352, 352, 426, 42, 431, 42, 42, 42,
Reid Spencerb8f85052007-07-31 03:50:36 +0000686
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000687 42, 429, 42, 42, 430, 432, 42, 42, 42, 42,
688 435, 437, 42, 42, 438, 42, 42, 433, 42, 434,
689 436, 439, 440, 442, 42, 42, 42, 441, 443, 42,
690 42, 42, 42, 444, 450, 448, 446, 42, 452, 42,
691 445, 451, 42, 42, 447, 42, 42, 449, 42, 455,
692 42, 454, 42, 457, 42, 453, 42, 458, 400, 401,
693 42, 42, 456, 462, 42, 459, 461, 42, 42, 42,
694 42, 42, 460, 465, 468, 42, 464, 467, 470, 42,
695 471, 472, 463, 42, 42, 466, 42, 469, 42, 473,
696 474, 422, 423, 42, 42, 42, 42, 42, 42, 42,
Reid Spencerb8f85052007-07-31 03:50:36 +0000697
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000698 479, 42, 42, 476, 475, 42, 478, 483, 42, 42,
699 490, 477, 481, 487, 488, 492, 42, 480, 485, 484,
700 486, 42, 489, 42, 482, 42, 491, 493, 42, 42,
701 42, 495, 42, 42, 42, 42, 42, 42, 42, 42,
702 494, 42, 503, 506, 42, 42, 504, 498, 496, 42,
703 497, 501, 502, 508, 500, 510, 42, 507, 511, 513,
704 505, 42, 509, 42, 42, 512, 42, 42, 42, 42,
705 42, 42, 42, 42, 42, 42, 42, 42, 529, 514,
706 521, 522, 42, 516, 520, 523, 526, 515, 517, 518,
707 524, 527, 42, 42, 525, 42, 42, 42, 42, 531,
Reid Spencerb8f85052007-07-31 03:50:36 +0000708
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000709 42, 528, 42, 530, 535, 538, 533, 42, 42, 42,
710 536, 42, 42, 534, 42, 539, 42, 42, 42, 42,
711 42, 532, 549, 42, 541, 42, 537, 545, 42, 42,
712 548, 42, 540, 552, 542, 546, 547, 550, 543, 551,
713 544, 42, 42, 42, 42, 42, 42, 42, 554, 42,
714 553, 555, 556, 559, 42, 560, 557, 42, 42, 42,
715 42, 42, 42, 42, 42, 563, 42, 565, 558, 567,
716 569, 562, 42, 561, 42, 42, 566, 568, 42, 571,
717 42, 570, 564, 42, 573, 42, 575, 42, 576, 42,
718 42, 42, 572, 580, 42, 42, 42, 42, 42, 574,
Reid Spencerb8f85052007-07-31 03:50:36 +0000719
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000720 42, 577, 42, 578, 42, 579, 586, 42, 42, 582,
721 42, 584, 585, 583, 581, 588, 587, 42, 592, 42,
722 42, 42, 589, 42, 42, 593, 42, 42, 590, 591,
723 597, 596, 42, 42, 42, 42, 42, 42, 594, 42,
724 42, 42, 42, 595, 42, 42, 598, 39, 39, 39,
725 39, 39, 39, 39, 39, 39, 39, 41, 42, 41,
726 41, 41, 41, 41, 44, 44, 42, 44, 44, 44,
727 42, 44, 52, 42, 52, 52, 52, 52, 52, 52,
728 52, 52, 54, 54, 42, 54, 54, 54, 42, 54,
729 138, 138, 138, 138, 138, 138, 138, 138, 138, 138,
Chris Lattner75466192006-05-19 21:28:53 +0000730
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000731 140, 42, 140, 140, 140, 42, 140, 46, 46, 146,
732 146, 146, 146, 146, 146, 146, 146, 146, 146, 148,
733 42, 148, 148, 148, 42, 148, 259, 42, 259, 352,
734 352, 42, 352, 42, 42, 42, 42, 42, 42, 42,
Reid Spencered951ea2007-05-19 07:22:10 +0000735 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Chris Lattnerce5f24e2007-07-05 17:26:49 +0000736 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Reid Spencerb8f85052007-07-31 03:50:36 +0000737 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
738 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
739 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000740 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Reid Spencerb8f85052007-07-31 03:50:36 +0000741
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000742 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
743 42, 42, 42, 42, 42, 42, 42, 42, 147, 42,
744 139, 258, 42, 42, 42, 147, 41, 141, 139, 42,
745 137, 41, 42, 40, 599, 3, 599, 599, 599, 599,
746 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
747 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
748 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
749 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
750 599, 599
Reid Spencer68a24bd2005-08-27 18:50:39 +0000751 } ;
752
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000753static yyconst short int yy_chk[1383] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000754 { 0,
755 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
756 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
757 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
758 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000759 1, 1, 1, 1, 1, 1, 9, 598, 62, 64,
760 313, 71, 9, 9, 9, 9, 9, 9, 10, 10,
761 10, 10, 10, 10, 11, 11, 11, 11, 11, 11,
762 11, 12, 62, 21, 24, 64, 71, 313, 12, 13,
763 13, 13, 13, 13, 13, 13, 13, 17, 24, 19,
764 18, 21, 27, 56, 21, 19, 17, 19, 27, 31,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000765
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000766 18, 21, 56, 17, 18, 17, 48, 17, 19, 31,
767 17, 27, 18, 48, 13, 16, 30, 27, 23, 18,
768 28, 16, 16, 16, 16, 16, 16, 20, 23, 30,
769 28, 37, 37, 20, 23, 26, 30, 20, 30, 28,
770 30, 26, 35, 20, 97, 28, 20, 22, 35, 26,
771 36, 37, 38, 22, 26, 22, 22, 58, 26, 59,
772 36, 35, 38, 22, 57, 97, 58, 22, 60, 22,
773 25, 25, 25, 25, 25, 25, 25, 33, 57, 59,
774 57, 60, 72, 33, 25, 60, 61, 65, 68, 66,
775 33, 72, 67, 70, 25, 29, 33, 66, 61, 33,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000776
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000777 75, 78, 596, 65, 76, 29, 33, 29, 67, 70,
778 67, 29, 68, 29, 193, 29, 75, 29, 32, 74,
779 78, 76, 80, 75, 32, 45, 45, 45, 45, 45,
780 45, 82, 80, 32, 32, 83, 32, 32, 32, 193,
781 32, 77, 79, 74, 83, 69, 32, 79, 32, 32,
782 82, 32, 34, 69, 81, 77, 69, 79, 34, 55,
783 55, 55, 55, 55, 55, 69, 487, 34, 34, 84,
784 34, 79, 34, 85, 34, 86, 34, 88, 81, 84,
785 34, 47, 47, 47, 47, 47, 47, 87, 94, 91,
786 85, 90, 93, 487, 87, 88, 89, 86, 86, 86,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000787
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000788 92, 86, 89, 98, 90, 91, 95, 96, 93, 92,
789 189, 94, 95, 98, 100, 47, 49, 49, 49, 49,
790 49, 49, 49, 96, 100, 189, 49, 98, 95, 99,
791 103, 95, 49, 51, 51, 51, 51, 51, 51, 99,
792 105, 106, 51, 51, 103, 51, 51, 51, 51, 51,
793 51, 101, 102, 99, 104, 107, 108, 101, 109, 105,
794 110, 102, 104, 106, 115, 111, 112, 116, 110, 113,
795 114, 118, 109, 119, 115, 111, 110, 120, 113, 107,
796 114, 113, 112, 117, 108, 118, 116, 119, 110, 111,
797 117, 112, 122, 113, 114, 119, 123, 124, 125, 120,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000798
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000799 126, 127, 128, 131, 130, 134, 122, 134, 131, 595,
800 126, 124, 128, 129, 130, 132, 123, 122, 151, 125,
801 135, 133, 129, 129, 126, 127, 128, 133, 136, 132,
802 141, 132, 129, 150, 153, 129, 141, 151, 156, 150,
803 129, 157, 135, 159, 153, 150, 154, 158, 162, 157,
804 136, 176, 156, 158, 164, 176, 136, 144, 144, 159,
805 144, 144, 144, 144, 144, 144, 144, 161, 154, 163,
806 164, 162, 165, 166, 167, 163, 161, 170, 168, 171,
807 172, 173, 174, 177, 167, 168, 165, 170, 167, 166,
808 175, 178, 593, 180, 183, 179, 175, 182, 187, 170,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000809
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000810 181, 173, 171, 180, 172, 179, 182, 181, 174, 184,
811 178, 177, 179, 178, 183, 185, 186, 187, 188, 184,
812 190, 191, 192, 195, 197, 185, 186, 198, 188, 190,
813 196, 206, 199, 210, 197, 211, 209, 231, 192, 216,
814 186, 209, 214, 191, 248, 198, 196, 195, 199, 216,
815 260, 260, 206, 231, 215, 217, 221, 210, 248, 211,
816 213, 213, 213, 213, 213, 213, 223, 221, 214, 213,
817 213, 222, 213, 213, 213, 213, 213, 213, 215, 217,
818 224, 222, 228, 227, 223, 230, 232, 233, 234, 237,
819 591, 236, 235, 241, 249, 244, 247, 233, 232, 224,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000820
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000821 227, 236, 235, 253, 228, 244, 247, 227, 234, 230,
822 235, 249, 241, 250, 251, 237, 252, 256, 253, 250,
823 254, 257, 252, 251, 259, 254, 262, 262, 263, 263,
824 259, 264, 265, 267, 269, 266, 256, 261, 261, 261,
825 261, 261, 261, 266, 271, 257, 274, 270, 273, 275,
826 265, 267, 269, 270, 264, 276, 273, 277, 278, 279,
827 271, 276, 280, 282, 281, 275, 284, 283, 288, 285,
828 274, 290, 278, 283, 291, 277, 284, 285, 292, 280,
829 281, 289, 289, 296, 295, 282, 297, 279, 300, 296,
830 299, 301, 288, 302, 303, 290, 297, 291, 304, 291,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000831
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000832 295, 305, 299, 292, 308, 309, 312, 315, 311, 303,
833 300, 321, 302, 301, 304, 316, 318, 317, 324, 456,
834 305, 309, 311, 308, 456, 321, 316, 317, 322, 324,
835 312, 325, 315, 323, 323, 318, 322, 331, 326, 327,
836 334, 325, 330, 333, 335, 331, 334, 323, 326, 337,
837 327, 340, 330, 333, 341, 342, 343, 337, 345, 347,
838 335, 342, 340, 350, 349, 341, 355, 351, 351, 356,
839 590, 358, 355, 350, 343, 349, 360, 350, 356, 361,
840 345, 351, 363, 347, 360, 361, 364, 349, 352, 352,
841 352, 352, 352, 352, 358, 362, 364, 366, 365, 367,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000842
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000843 368, 362, 369, 370, 363, 365, 372, 376, 377, 378,
844 368, 370, 380, 379, 372, 381, 383, 366, 384, 367,
845 369, 376, 377, 379, 385, 386, 389, 378, 380, 388,
846 392, 390, 391, 381, 389, 386, 384, 393, 391, 394,
847 383, 390, 395, 397, 385, 396, 398, 388, 399, 394,
848 402, 393, 403, 396, 404, 392, 405, 397, 400, 400,
849 407, 408, 395, 403, 410, 398, 402, 412, 409, 416,
850 414, 415, 399, 407, 410, 417, 405, 409, 414, 419,
851 415, 416, 404, 420, 418, 408, 425, 412, 421, 417,
852 418, 422, 422, 426, 428, 429, 432, 430, 437, 433,
Chris Lattnere869eef2005-11-12 00:11:49 +0000853
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000854 425, 434, 441, 419, 418, 445, 421, 430, 436, 442,
855 441, 420, 428, 436, 436, 445, 447, 426, 433, 432,
856 434, 446, 437, 449, 429, 452, 442, 446, 453, 454,
857 457, 449, 461, 458, 459, 462, 463, 473, 467, 474,
858 447, 477, 461, 467, 470, 478, 462, 454, 452, 476,
859 453, 458, 459, 473, 457, 475, 475, 470, 476, 478,
860 463, 479, 474, 481, 482, 477, 485, 486, 488, 492,
861 489, 491, 494, 497, 493, 501, 495, 589, 499, 479,
862 489, 491, 499, 482, 488, 492, 495, 481, 485, 486,
863 493, 497, 498, 500, 494, 503, 504, 506, 507, 501,
Chris Lattner75466192006-05-19 21:28:53 +0000864
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000865 508, 498, 509, 500, 507, 510, 504, 511, 513, 516,
866 508, 510, 514, 506, 517, 511, 518, 519, 522, 521,
867 523, 503, 529, 529, 514, 533, 509, 519, 530, 532,
868 523, 534, 513, 533, 516, 521, 522, 530, 517, 532,
869 518, 535, 540, 537, 542, 546, 539, 545, 535, 547,
870 534, 537, 539, 545, 548, 546, 540, 551, 552, 553,
871 554, 556, 560, 555, 557, 551, 559, 553, 542, 555,
872 557, 548, 561, 547, 562, 563, 554, 556, 566, 560,
873 565, 559, 552, 571, 562, 567, 565, 568, 566, 569,
874 572, 573, 561, 571, 574, 575, 577, 580, 578, 563,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000875
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000876 581, 567, 579, 568, 582, 569, 578, 583, 587, 573,
877 585, 575, 577, 574, 572, 580, 579, 586, 585, 588,
878 594, 584, 581, 592, 597, 586, 576, 570, 582, 583,
879 594, 592, 564, 558, 550, 549, 544, 543, 587, 541,
880 538, 536, 531, 588, 528, 527, 597, 600, 600, 600,
881 600, 600, 600, 600, 600, 600, 600, 601, 526, 601,
882 601, 601, 601, 601, 602, 602, 525, 602, 602, 602,
883 524, 602, 603, 520, 603, 603, 603, 603, 603, 603,
884 603, 603, 604, 604, 515, 604, 604, 604, 512, 604,
885 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
Reid Spencer3da59db2006-11-27 01:05:10 +0000886
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000887 606, 505, 606, 606, 606, 502, 606, 607, 607, 608,
888 608, 608, 608, 608, 608, 608, 608, 608, 608, 609,
889 496, 609, 609, 609, 490, 609, 610, 484, 610, 611,
890 611, 483, 611, 480, 472, 471, 469, 468, 466, 465,
891 464, 460, 455, 451, 450, 448, 444, 443, 440, 439,
892 438, 435, 431, 427, 424, 413, 411, 406, 387, 382,
893 375, 374, 373, 371, 359, 357, 354, 353, 348, 346,
894 344, 339, 338, 336, 332, 329, 328, 320, 314, 310,
895 307, 306, 298, 294, 293, 287, 286, 272, 268, 255,
896 246, 245, 243, 242, 240, 239, 238, 229, 226, 225,
Reid Spencerb8f85052007-07-31 03:50:36 +0000897
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000898 220, 219, 218, 212, 208, 207, 205, 204, 203, 202,
899 201, 200, 194, 169, 160, 155, 152, 149, 146, 142,
900 138, 137, 121, 73, 63, 53, 50, 46, 43, 41,
901 39, 14, 8, 7, 3, 599, 599, 599, 599, 599,
902 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
903 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
904 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
905 599, 599, 599, 599, 599, 599, 599, 599, 599, 599,
906 599, 599
Reid Spencer68a24bd2005-08-27 18:50:39 +0000907 } ;
908
Reid Spencered951ea2007-05-19 07:22:10 +0000909static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
910static char *yy_full_match;
911static int yy_lp;
912#define REJECT \
913{ \
914*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \
915yy_cp = yy_full_match; /* restore poss. backed-over text */ \
916++yy_lp; \
917goto find_rule; \
918}
Reid Spencer68a24bd2005-08-27 18:50:39 +0000919#define yymore() yymore_used_but_not_detected
920#define YY_MORE_ADJ 0
921#define YY_RESTORE_YY_MORE_OFFSET
Reid Spencered951ea2007-05-19 07:22:10 +0000922char *yytext;
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000923#line 1 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencered951ea2007-05-19 07:22:10 +0000924#define INITIAL 0
Reid Spencer68a24bd2005-08-27 18:50:39 +0000925/*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===//
926//
927// The LLVM Compiler Infrastructure
928//
929// This file was developed by the LLVM research group and is distributed under
930// the University of Illinois Open Source License. See LICENSE.TXT for details.
931//
932//===----------------------------------------------------------------------===//
933//
934// This file implements the flex scanner for LLVM assembly languages files.
935//
936//===----------------------------------------------------------------------===*/
Reid Spencered951ea2007-05-19 07:22:10 +0000937#define YY_NEVER_INTERACTIVE 1
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000938#line 28 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +0000939#include "ParserInternals.h"
940#include "llvm/Module.h"
Chris Lattner8e008322007-05-22 06:47:55 +0000941#include "llvm/Support/MathExtras.h"
Reid Spencer68a24bd2005-08-27 18:50:39 +0000942#include <list>
943#include "llvmAsmParser.h"
944#include <cctype>
945#include <cstdlib>
946
947void set_scan_file(FILE * F){
Reid Spencered951ea2007-05-19 07:22:10 +0000948 yy_switch_to_buffer(yy_create_buffer( F, YY_BUF_SIZE ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +0000949}
950void set_scan_string (const char * str) {
Reid Spencered951ea2007-05-19 07:22:10 +0000951 yy_scan_string (str);
Reid Spencer68a24bd2005-08-27 18:50:39 +0000952}
953
Reid Spencer3ed469c2006-11-02 20:25:50 +0000954// Construct a token value for a non-obsolete token
Reid Spencer68a24bd2005-08-27 18:50:39 +0000955#define RET_TOK(type, Enum, sym) \
Reid Spencera132e042006-12-03 05:46:11 +0000956 llvmAsmlval.type = Instruction::Enum; \
957 return sym
958
Reid Spencer3ed469c2006-11-02 20:25:50 +0000959// Construct a token value for an obsolete token
Reid Spencera132e042006-12-03 05:46:11 +0000960#define RET_TY(CTYPE, SYM) \
961 llvmAsmlval.PrimType = CTYPE;\
Reid Spencer481169e2006-12-01 00:33:46 +0000962 return SYM
Reid Spencer68a24bd2005-08-27 18:50:39 +0000963
964namespace llvm {
965
966// TODO: All of the static identifiers are figured out by the lexer,
967// these should be hashed to reduce the lexer size
968
969
970// atoull - Convert an ascii string of decimal digits into the unsigned long
971// long representation... this does not have to do input error checking,
972// because we know that the input will be matched by a suitable regex...
973//
974static uint64_t atoull(const char *Buffer) {
975 uint64_t Result = 0;
976 for (; *Buffer; Buffer++) {
977 uint64_t OldRes = Result;
978 Result *= 10;
979 Result += *Buffer-'0';
980 if (Result < OldRes) // Uh, oh, overflow detected!!!
Reid Spencer61c83e02006-08-18 08:43:06 +0000981 GenerateError("constant bigger than 64 bits detected!");
Reid Spencer68a24bd2005-08-27 18:50:39 +0000982 }
983 return Result;
984}
985
986static uint64_t HexIntToVal(const char *Buffer) {
987 uint64_t Result = 0;
988 for (; *Buffer; ++Buffer) {
989 uint64_t OldRes = Result;
990 Result *= 16;
991 char C = *Buffer;
992 if (C >= '0' && C <= '9')
993 Result += C-'0';
994 else if (C >= 'A' && C <= 'F')
995 Result += C-'A'+10;
996 else if (C >= 'a' && C <= 'f')
997 Result += C-'a'+10;
998
999 if (Result < OldRes) // Uh, oh, overflow detected!!!
Reid Spencer61c83e02006-08-18 08:43:06 +00001000 GenerateError("constant bigger than 64 bits detected!");
Reid Spencer68a24bd2005-08-27 18:50:39 +00001001 }
1002 return Result;
1003}
1004
1005
1006// HexToFP - Convert the ascii string in hexidecimal format to the floating
1007// point representation of it.
1008//
1009static double HexToFP(const char *Buffer) {
Chris Lattner8e008322007-05-22 06:47:55 +00001010 return BitsToDouble(HexIntToVal(Buffer)); // Cast Hex constant to double
Reid Spencer68a24bd2005-08-27 18:50:39 +00001011}
1012
1013
1014// UnEscapeLexed - Run through the specified buffer and change \xx codes to the
Reid Spencer0a8a16b2007-05-22 18:52:55 +00001015// appropriate character.
Reid Spencere2aa9612007-05-22 19:08:16 +00001016char *UnEscapeLexed(char *Buffer, char* EndBuffer) {
Reid Spencer68a24bd2005-08-27 18:50:39 +00001017 char *BOut = Buffer;
1018 for (char *BIn = Buffer; *BIn; ) {
Reid Spencere2aa9612007-05-22 19:08:16 +00001019 if (BIn[0] == '\\') {
1020 if (BIn < EndBuffer-1 && BIn[1] == '\\') {
1021 *BOut++ = '\\'; // Two \ becomes one
1022 BIn += 2;
1023 } else if (BIn < EndBuffer-2 && isxdigit(BIn[1]) && isxdigit(BIn[2])) {
1024 char Tmp = BIn[3]; BIn[3] = 0; // Terminate string
1025 *BOut = (char)strtol(BIn+1, 0, 16); // Convert to number
1026 BIn[3] = Tmp; // Restore character
1027 BIn += 3; // Skip over handled chars
1028 ++BOut;
1029 } else {
1030 *BOut++ = *BIn++;
1031 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001032 } else {
1033 *BOut++ = *BIn++;
1034 }
1035 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001036 return BOut;
1037}
1038
1039} // End llvm namespace
1040
1041using namespace llvm;
1042
1043#define YY_NEVER_INTERACTIVE 1
1044/* Comments start with a ; and go till end of line */
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001045/* Local Values and Type identifiers start with a % sign */
1046/* Global Value identifiers start with an @ sign */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001047/* Label identifiers end with a colon */
1048/* Quoted names can contain any character except " and \ */
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001049/* LocalVarID/GlobalVarID: match an unnamed local variable slot ID. */
1050/* Integer types are specified with i and a bitwidth */
1051/* E[PN]Integer: match positive and negative literal integer values. */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001052/* FPConstant - A Floating point constant.
1053 */
1054/* HexFPConstant - Floating point constant represented in IEEE format as a
1055 * hexadecimal number for when exponential notation is not precise enough.
1056 */
1057/* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
1058 * it to deal with 64 bit numbers.
1059 */
Reid Spencerd8e616b2007-07-31 03:55:56 +00001060/* WSNL - shorthand for whitespace followed by newline */
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001061#line 1062 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001062
1063/* Macros after this point can all be overridden by user definitions in
1064 * section 1.
1065 */
1066
1067#ifndef YY_SKIP_YYWRAP
1068#ifdef __cplusplus
Reid Spencered951ea2007-05-19 07:22:10 +00001069extern "C" int yywrap YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001070#else
Reid Spencered951ea2007-05-19 07:22:10 +00001071extern int yywrap YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001072#endif
1073#endif
1074
Reid Spencered951ea2007-05-19 07:22:10 +00001075#ifndef YY_NO_UNPUT
1076static inline void yyunput YY_PROTO(( int c, char *buf_ptr ));
1077#endif
1078
Reid Spencer68a24bd2005-08-27 18:50:39 +00001079#ifndef yytext_ptr
Reid Spencered951ea2007-05-19 07:22:10 +00001080static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001081#endif
1082
1083#ifdef YY_NEED_STRLEN
Reid Spencered951ea2007-05-19 07:22:10 +00001084static int yy_flex_strlen YY_PROTO(( yyconst char * ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001085#endif
1086
1087#ifndef YY_NO_INPUT
1088#ifdef __cplusplus
Reid Spencered951ea2007-05-19 07:22:10 +00001089static int yyinput YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001090#else
Reid Spencered951ea2007-05-19 07:22:10 +00001091static int input YY_PROTO(( void ));
1092#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001093#endif
1094
Reid Spencered951ea2007-05-19 07:22:10 +00001095#if YY_STACK_USED
1096static int yy_start_stack_ptr = 0;
1097static int yy_start_stack_depth = 0;
1098static int *yy_start_stack = 0;
1099#ifndef YY_NO_PUSH_STATE
1100static void yy_push_state YY_PROTO(( int new_state ));
1101#endif
1102#ifndef YY_NO_POP_STATE
1103static void yy_pop_state YY_PROTO(( void ));
1104#endif
1105#ifndef YY_NO_TOP_STATE
1106static int yy_top_state YY_PROTO(( void ));
1107#endif
1108
1109#else
1110#define YY_NO_PUSH_STATE 1
1111#define YY_NO_POP_STATE 1
1112#define YY_NO_TOP_STATE 1
1113#endif
1114
1115#ifdef YY_MALLOC_DECL
1116YY_MALLOC_DECL
1117#else
1118#if __STDC__
1119#ifndef __cplusplus
1120#include <stdlib.h>
1121#endif
1122#else
1123/* Just try to get by without declaring the routines. This will fail
1124 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1125 * or sizeof(void*) != sizeof(int).
1126 */
1127#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001128#endif
1129
1130/* Amount of stuff to slurp up with each read. */
1131#ifndef YY_READ_BUF_SIZE
1132#define YY_READ_BUF_SIZE 8192
1133#endif
1134
1135/* Copy whatever the last rule matched to the standard output. */
Reid Spencered951ea2007-05-19 07:22:10 +00001136
Reid Spencer68a24bd2005-08-27 18:50:39 +00001137#ifndef ECHO
1138/* This used to be an fputs(), but since the string might contain NUL's,
1139 * we now use fwrite().
1140 */
Reid Spencered951ea2007-05-19 07:22:10 +00001141#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001142#endif
1143
1144/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1145 * is returned in "result".
1146 */
1147#ifndef YY_INPUT
1148#define YY_INPUT(buf,result,max_size) \
Reid Spencered951ea2007-05-19 07:22:10 +00001149 if ( yy_current_buffer->yy_is_interactive ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001150 { \
Reid Spencered951ea2007-05-19 07:22:10 +00001151 int c = '*', n; \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001152 for ( n = 0; n < max_size && \
Reid Spencered951ea2007-05-19 07:22:10 +00001153 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001154 buf[n] = (char) c; \
1155 if ( c == '\n' ) \
1156 buf[n++] = (char) c; \
Reid Spencered951ea2007-05-19 07:22:10 +00001157 if ( c == EOF && ferror( yyin ) ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001158 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1159 result = n; \
1160 } \
Reid Spencered951ea2007-05-19 07:22:10 +00001161 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1162 && ferror( yyin ) ) \
1163 YY_FATAL_ERROR( "input in flex scanner failed" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001164#endif
1165
1166/* No semi-colon after return; correct usage is to write "yyterminate();" -
1167 * we don't want an extra ';' after the "return" because that will cause
1168 * some compilers to complain about unreachable statements.
1169 */
1170#ifndef yyterminate
1171#define yyterminate() return YY_NULL
1172#endif
1173
1174/* Number of entries by which start-condition stack grows. */
1175#ifndef YY_START_STACK_INCR
1176#define YY_START_STACK_INCR 25
1177#endif
1178
1179/* Report a fatal error. */
1180#ifndef YY_FATAL_ERROR
1181#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1182#endif
1183
1184/* Default declaration of generated scanner - a define so the user can
1185 * easily add parameters.
1186 */
1187#ifndef YY_DECL
Reid Spencered951ea2007-05-19 07:22:10 +00001188#define YY_DECL int yylex YY_PROTO(( void ))
1189#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001190
Reid Spencered951ea2007-05-19 07:22:10 +00001191/* Code executed at the beginning of each rule, after yytext and yyleng
Reid Spencer68a24bd2005-08-27 18:50:39 +00001192 * have been set up.
1193 */
1194#ifndef YY_USER_ACTION
1195#define YY_USER_ACTION
1196#endif
1197
1198/* Code executed at the end of each rule. */
1199#ifndef YY_BREAK
1200#define YY_BREAK break;
1201#endif
1202
1203#define YY_RULE_SETUP \
1204 YY_USER_ACTION
1205
1206YY_DECL
Reid Spencered951ea2007-05-19 07:22:10 +00001207 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00001208 register yy_state_type yy_current_state;
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001209 register char *yy_cp, *yy_bp;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001210 register int yy_act;
Reid Spencered951ea2007-05-19 07:22:10 +00001211
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001212#line 182 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001213
1214
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001215#line 1216 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001216
Reid Spencered951ea2007-05-19 07:22:10 +00001217 if ( yy_init )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001218 {
Reid Spencered951ea2007-05-19 07:22:10 +00001219 yy_init = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001220
1221#ifdef YY_USER_INIT
1222 YY_USER_INIT;
1223#endif
1224
Reid Spencered951ea2007-05-19 07:22:10 +00001225 if ( ! yy_start )
1226 yy_start = 1; /* first start state */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001227
Reid Spencered951ea2007-05-19 07:22:10 +00001228 if ( ! yyin )
1229 yyin = stdin;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001230
Reid Spencered951ea2007-05-19 07:22:10 +00001231 if ( ! yyout )
1232 yyout = stdout;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001233
Reid Spencered951ea2007-05-19 07:22:10 +00001234 if ( ! yy_current_buffer )
1235 yy_current_buffer =
1236 yy_create_buffer( yyin, YY_BUF_SIZE );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001237
Reid Spencered951ea2007-05-19 07:22:10 +00001238 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00001239 }
1240
1241 while ( 1 ) /* loops until end-of-file is reached */
1242 {
Reid Spencered951ea2007-05-19 07:22:10 +00001243 yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001244
Reid Spencered951ea2007-05-19 07:22:10 +00001245 /* Support of yytext. */
1246 *yy_cp = yy_hold_char;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001247
1248 /* yy_bp points to the position in yy_ch_buf of the start of
1249 * the current run.
1250 */
1251 yy_bp = yy_cp;
1252
Reid Spencered951ea2007-05-19 07:22:10 +00001253 yy_current_state = yy_start;
1254 yy_state_ptr = yy_state_buf;
1255 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001256yy_match:
1257 do
1258 {
1259 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1260 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1261 {
1262 yy_current_state = (int) yy_def[yy_current_state];
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001263 if ( yy_current_state >= 600 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001264 yy_c = yy_meta[(unsigned int) yy_c];
1265 }
1266 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Reid Spencered951ea2007-05-19 07:22:10 +00001267 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001268 ++yy_cp;
1269 }
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001270 while ( yy_current_state != 599 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001271
1272yy_find_action:
Reid Spencered951ea2007-05-19 07:22:10 +00001273 yy_current_state = *--yy_state_ptr;
1274 yy_lp = yy_accept[yy_current_state];
1275find_rule: /* we branch to this label when backing up */
1276 for ( ; ; ) /* until we find what rule we matched */
1277 {
1278 if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] )
1279 {
1280 yy_act = yy_acclist[yy_lp];
1281 {
1282 yy_full_match = yy_cp;
1283 break;
1284 }
1285 }
1286 --yy_cp;
1287 yy_current_state = *--yy_state_ptr;
1288 yy_lp = yy_accept[yy_current_state];
1289 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001290
1291 YY_DO_BEFORE_ACTION;
1292
Reid Spencered951ea2007-05-19 07:22:10 +00001293 if ( yy_act != YY_END_OF_BUFFER )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001294 {
1295 int yyl;
Reid Spencered951ea2007-05-19 07:22:10 +00001296 for ( yyl = 0; yyl < yyleng; ++yyl )
1297 if ( yytext[yyl] == '\n' )
1298 ++yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001299 }
1300
1301do_action: /* This label is used only to access EOF actions. */
1302
Reid Spencered951ea2007-05-19 07:22:10 +00001303
Reid Spencer68a24bd2005-08-27 18:50:39 +00001304 switch ( yy_act )
1305 { /* beginning of action switch */
1306case 1:
1307YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001308#line 184 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001309{ /* Ignore comments for now */ }
1310 YY_BREAK
1311case 2:
1312YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001313#line 186 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001314{ return BEGINTOK; }
1315 YY_BREAK
1316case 3:
1317YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001318#line 187 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001319{ return ENDTOK; }
1320 YY_BREAK
1321case 4:
1322YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001323#line 188 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001324{ return TRUETOK; }
1325 YY_BREAK
1326case 5:
1327YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001328#line 189 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001329{ return FALSETOK; }
1330 YY_BREAK
1331case 6:
1332YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001333#line 190 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001334{ return DECLARE; }
1335 YY_BREAK
1336case 7:
1337YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001338#line 191 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001339{ return DEFINE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001340 YY_BREAK
1341case 8:
1342YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001343#line 192 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001344{ return GLOBAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001345 YY_BREAK
1346case 9:
1347YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001348#line 193 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001349{ return CONSTANT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001350 YY_BREAK
1351case 10:
1352YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001353#line 194 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001354{ return INTERNAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001355 YY_BREAK
1356case 11:
1357YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001358#line 195 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001359{ return LINKONCE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001360 YY_BREAK
1361case 12:
1362YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001363#line 196 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001364{ return WEAK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001365 YY_BREAK
1366case 13:
1367YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001368#line 197 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001369{ return APPENDING; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001370 YY_BREAK
1371case 14:
1372YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001373#line 198 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001374{ return DLLIMPORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001375 YY_BREAK
1376case 15:
1377YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001378#line 199 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001379{ return DLLEXPORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001380 YY_BREAK
1381case 16:
1382YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001383#line 200 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov178a3522007-01-12 19:22:51 +00001384{ return HIDDEN; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001385 YY_BREAK
1386case 17:
1387YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001388#line 201 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001389{ return PROTECTED; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001390 YY_BREAK
1391case 18:
1392YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001393#line 202 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001394{ return EXTERN_WEAK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001395 YY_BREAK
1396case 19:
1397YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001398#line 203 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001399{ return EXTERNAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001400 YY_BREAK
1401case 20:
1402YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001403#line 204 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001404{ return THREAD_LOCAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001405 YY_BREAK
1406case 21:
1407YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001408#line 205 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001409{ return ZEROINITIALIZER; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001410 YY_BREAK
1411case 22:
1412YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001413#line 206 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001414{ return DOTDOTDOT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001415 YY_BREAK
1416case 23:
1417YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001418#line 207 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001419{ return UNDEF; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001420 YY_BREAK
1421case 24:
1422YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001423#line 208 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001424{ return NULL_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001425 YY_BREAK
1426case 25:
1427YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001428#line 209 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001429{ return TO; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001430 YY_BREAK
1431case 26:
1432YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001433#line 210 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001434{ return TAIL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001435 YY_BREAK
1436case 27:
1437YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001438#line 211 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001439{ return TARGET; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001440 YY_BREAK
1441case 28:
1442YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001443#line 212 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001444{ return TRIPLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001445 YY_BREAK
1446case 29:
1447YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001448#line 213 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001449{ return DEPLIBS; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001450 YY_BREAK
1451case 30:
1452YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001453#line 214 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001454{ return DATALAYOUT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001455 YY_BREAK
1456case 31:
1457YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001458#line 215 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001459{ return VOLATILE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001460 YY_BREAK
1461case 32:
1462YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001463#line 216 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001464{ return ALIGN; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001465 YY_BREAK
1466case 33:
1467YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001468#line 217 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001469{ return SECTION; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001470 YY_BREAK
1471case 34:
1472YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001473#line 218 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001474{ return ALIAS; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001475 YY_BREAK
1476case 35:
1477YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001478#line 219 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001479{ return MODULE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001480 YY_BREAK
1481case 36:
1482YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001483#line 220 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001484{ return ASM_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001485 YY_BREAK
1486case 37:
1487YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001488#line 221 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001489{ return SIDEEFFECT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001490 YY_BREAK
1491case 38:
1492YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001493#line 223 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001494{ return CC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001495 YY_BREAK
1496case 39:
1497YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001498#line 224 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001499{ return CCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001500 YY_BREAK
1501case 40:
1502YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001503#line 225 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001504{ return FASTCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001505 YY_BREAK
1506case 41:
1507YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001508#line 226 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001509{ return COLDCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001510 YY_BREAK
1511case 42:
1512YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001513#line 227 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001514{ return X86_STDCALLCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001515 YY_BREAK
1516case 43:
1517YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001518#line 228 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001519{ return X86_FASTCALLCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001520 YY_BREAK
1521case 44:
1522YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001523#line 230 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001524{ return SIGNEXT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001525 YY_BREAK
1526case 45:
1527YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001528#line 231 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001529{ return ZEROEXT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001530 YY_BREAK
1531case 46:
1532YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001533#line 232 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001534{ return INREG; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001535 YY_BREAK
1536case 47:
1537YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001538#line 233 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001539{ return SRET; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001540 YY_BREAK
1541case 48:
1542YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001543#line 234 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001544{ return NOUNWIND; }
Reid Spencer832254e2007-02-02 02:16:23 +00001545 YY_BREAK
1546case 49:
1547YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001548#line 235 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001549{ return NORETURN; }
Reid Spencer832254e2007-02-02 02:16:23 +00001550 YY_BREAK
1551case 50:
1552YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001553#line 236 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001554{ return NOALIAS; }
Reid Spencer67d8ed92007-03-22 02:14:08 +00001555 YY_BREAK
1556case 51:
1557YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001558#line 237 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001559{ return BYVAL; }
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001560 YY_BREAK
1561case 52:
1562YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001563#line 238 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001564{ return NEST; }
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001565 YY_BREAK
1566case 53:
Reid Spencerb8f85052007-07-31 03:50:36 +00001567*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
1568yy_c_buf_p = yy_cp -= 1;
1569YY_DO_BEFORE_ACTION; /* set up yytext again */
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001570YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001571#line 239 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001572{ // For auto-upgrade only, drop in LLVM 3.0
1573 return SIGNEXT; }
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001574 YY_BREAK
1575case 54:
Reid Spencerb8f85052007-07-31 03:50:36 +00001576*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
1577yy_c_buf_p = yy_cp -= 1;
1578YY_DO_BEFORE_ACTION; /* set up yytext again */
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001579YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001580#line 241 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001581{ // For auto-upgrade only, drop in LLVM 3.0
1582 return ZEROEXT; }
Chris Lattnerce5f24e2007-07-05 17:26:49 +00001583 YY_BREAK
1584case 55:
1585YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001586#line 244 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001587{ RET_TY(Type::VoidTy, VOID); }
1588 YY_BREAK
1589case 56:
1590YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001591#line 245 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001592{ RET_TY(Type::FloatTy, FLOAT); }
1593 YY_BREAK
1594case 57:
1595YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001596#line 246 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001597{ RET_TY(Type::DoubleTy,DOUBLE);}
1598 YY_BREAK
1599case 58:
1600YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001601#line 247 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1602{ RET_TY(Type::X86_FP80Ty, X86_FP80);}
Reid Spencerb8f85052007-07-31 03:50:36 +00001603 YY_BREAK
1604case 59:
1605YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001606#line 248 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1607{ RET_TY(Type::FP128Ty, FP128);}
Reid Spencerb8f85052007-07-31 03:50:36 +00001608 YY_BREAK
1609case 60:
1610YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001611#line 249 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1612{ RET_TY(Type::PPC_FP128Ty, PPC_FP128);}
Reid Spencerb8f85052007-07-31 03:50:36 +00001613 YY_BREAK
1614case 61:
1615YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001616#line 250 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1617{ RET_TY(Type::LabelTy, LABEL); }
1618 YY_BREAK
1619case 62:
1620YY_RULE_SETUP
1621#line 251 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1622{ return TYPE; }
1623 YY_BREAK
1624case 63:
1625YY_RULE_SETUP
1626#line 252 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1627{ return OPAQUE; }
1628 YY_BREAK
1629case 64:
1630YY_RULE_SETUP
1631#line 253 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencered951ea2007-05-19 07:22:10 +00001632{ uint64_t NumBits = atoull(yytext+1);
Reid Spencera54b7cb2007-01-12 07:05:14 +00001633 if (NumBits < IntegerType::MIN_INT_BITS ||
1634 NumBits > IntegerType::MAX_INT_BITS)
1635 GenerateError("Bitwidth for integer type out of range!");
1636 const Type* Ty = IntegerType::get(NumBits);
1637 RET_TY(Ty, INTTYPE);
1638 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001639 YY_BREAK
Reid Spencer68a24bd2005-08-27 18:50:39 +00001640case 65:
1641YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001642#line 261 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1643{ RET_TOK(BinaryOpVal, Add, ADD); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001644 YY_BREAK
1645case 66:
1646YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001647#line 262 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1648{ RET_TOK(BinaryOpVal, Sub, SUB); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001649 YY_BREAK
1650case 67:
1651YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001652#line 263 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1653{ RET_TOK(BinaryOpVal, Mul, MUL); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001654 YY_BREAK
1655case 68:
1656YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001657#line 264 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1658{ RET_TOK(BinaryOpVal, UDiv, UDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001659 YY_BREAK
1660case 69:
1661YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001662#line 265 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1663{ RET_TOK(BinaryOpVal, SDiv, SDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001664 YY_BREAK
1665case 70:
1666YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001667#line 266 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1668{ RET_TOK(BinaryOpVal, FDiv, FDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001669 YY_BREAK
1670case 71:
1671YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001672#line 267 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1673{ RET_TOK(BinaryOpVal, URem, UREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001674 YY_BREAK
1675case 72:
1676YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001677#line 268 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1678{ RET_TOK(BinaryOpVal, SRem, SREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001679 YY_BREAK
1680case 73:
1681YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001682#line 269 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1683{ RET_TOK(BinaryOpVal, FRem, FREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001684 YY_BREAK
1685case 74:
1686YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001687#line 270 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1688{ RET_TOK(BinaryOpVal, Shl, SHL); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001689 YY_BREAK
1690case 75:
1691YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001692#line 271 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1693{ RET_TOK(BinaryOpVal, LShr, LSHR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001694 YY_BREAK
1695case 76:
1696YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001697#line 272 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1698{ RET_TOK(BinaryOpVal, AShr, ASHR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001699 YY_BREAK
1700case 77:
1701YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001702#line 273 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1703{ RET_TOK(BinaryOpVal, And, AND); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001704 YY_BREAK
1705case 78:
1706YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001707#line 274 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1708{ RET_TOK(BinaryOpVal, Or , OR ); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001709 YY_BREAK
1710case 79:
1711YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001712#line 275 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1713{ RET_TOK(BinaryOpVal, Xor, XOR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001714 YY_BREAK
1715case 80:
1716YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001717#line 276 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1718{ RET_TOK(OtherOpVal, ICmp, ICMP); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001719 YY_BREAK
1720case 81:
1721YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001722#line 277 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1723{ RET_TOK(OtherOpVal, FCmp, FCMP); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001724 YY_BREAK
1725case 82:
1726YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001727#line 279 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1728{ return EQ; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001729 YY_BREAK
1730case 83:
1731YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001732#line 280 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1733{ return NE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001734 YY_BREAK
1735case 84:
1736YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001737#line 281 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1738{ return SLT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001739 YY_BREAK
1740case 85:
1741YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001742#line 282 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1743{ return SGT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001744 YY_BREAK
1745case 86:
1746YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001747#line 283 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1748{ return SLE; }
Nate Begeman14b05292005-11-05 09:21:28 +00001749 YY_BREAK
1750case 87:
1751YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001752#line 284 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1753{ return SGE; }
Chris Lattnere869eef2005-11-12 00:11:49 +00001754 YY_BREAK
1755case 88:
1756YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001757#line 285 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1758{ return ULT; }
Robert Bocchino9c62b562006-01-10 19:04:32 +00001759 YY_BREAK
1760case 89:
1761YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001762#line 286 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1763{ return UGT; }
Robert Bocchino2def1b32006-01-17 20:06:25 +00001764 YY_BREAK
1765case 90:
1766YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001767#line 287 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1768{ return ULE; }
Chris Lattner8335e842006-01-23 23:05:42 +00001769 YY_BREAK
1770case 91:
1771YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001772#line 288 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1773{ return UGE; }
Chris Lattner66316012006-01-24 04:14:29 +00001774 YY_BREAK
1775case 92:
1776YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001777#line 289 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1778{ return OEQ; }
Chris Lattner0e9c3762006-01-25 22:27:16 +00001779 YY_BREAK
1780case 93:
1781YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001782#line 290 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1783{ return ONE; }
Chris Lattnerd5efe842006-04-08 01:18:56 +00001784 YY_BREAK
1785case 94:
1786YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001787#line 291 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1788{ return OLT; }
Chris Lattner75466192006-05-19 21:28:53 +00001789 YY_BREAK
1790case 95:
1791YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001792#line 292 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1793{ return OGT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001794 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001795case 96:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001796YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001797#line 293 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1798{ return OLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001799 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001800case 97:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001801YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001802#line 294 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1803{ return OGE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001804 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001805case 98:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001806YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001807#line 295 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1808{ return ORD; }
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001809 YY_BREAK
1810case 99:
1811YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001812#line 296 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1813{ return UNO; }
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001814 YY_BREAK
1815case 100:
1816YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001817#line 297 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1818{ return UEQ; }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001819 YY_BREAK
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001820case 101:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001821YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001822#line 298 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1823{ return UNE; }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001824 YY_BREAK
1825case 102:
1826YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001827#line 300 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1828{ RET_TOK(OtherOpVal, PHI, PHI_TOK); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001829 YY_BREAK
1830case 103:
1831YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001832#line 301 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1833{ RET_TOK(OtherOpVal, Call, CALL); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001834 YY_BREAK
1835case 104:
1836YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001837#line 302 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1838{ RET_TOK(CastOpVal, Trunc, TRUNC); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001839 YY_BREAK
1840case 105:
1841YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001842#line 303 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1843{ RET_TOK(CastOpVal, ZExt, ZEXT); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001844 YY_BREAK
1845case 106:
1846YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001847#line 304 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1848{ RET_TOK(CastOpVal, SExt, SEXT); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001849 YY_BREAK
1850case 107:
1851YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001852#line 305 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1853{ RET_TOK(CastOpVal, FPTrunc, FPTRUNC); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001854 YY_BREAK
1855case 108:
1856YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001857#line 306 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1858{ RET_TOK(CastOpVal, FPExt, FPEXT); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001859 YY_BREAK
1860case 109:
1861YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001862#line 307 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1863{ RET_TOK(CastOpVal, UIToFP, UITOFP); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001864 YY_BREAK
1865case 110:
1866YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001867#line 308 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1868{ RET_TOK(CastOpVal, SIToFP, SITOFP); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001869 YY_BREAK
1870case 111:
1871YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001872#line 309 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1873{ RET_TOK(CastOpVal, FPToUI, FPTOUI); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001874 YY_BREAK
1875case 112:
1876YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001877#line 310 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1878{ RET_TOK(CastOpVal, FPToSI, FPTOSI); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001879 YY_BREAK
1880case 113:
1881YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001882#line 311 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1883{ RET_TOK(CastOpVal, IntToPtr, INTTOPTR); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001884 YY_BREAK
1885case 114:
1886YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001887#line 312 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1888{ RET_TOK(CastOpVal, PtrToInt, PTRTOINT); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001889 YY_BREAK
1890case 115:
1891YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001892#line 313 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1893{ RET_TOK(CastOpVal, BitCast, BITCAST); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001894 YY_BREAK
1895case 116:
1896YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001897#line 314 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1898{ RET_TOK(OtherOpVal, Select, SELECT); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001899 YY_BREAK
1900case 117:
1901YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001902#line 315 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1903{ RET_TOK(OtherOpVal, VAArg , VAARG); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001904 YY_BREAK
1905case 118:
1906YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001907#line 316 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1908{ RET_TOK(TermOpVal, Ret, RET); }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001909 YY_BREAK
Reid Spencer41dff5e2007-01-26 08:05:27 +00001910case 119:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001911YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001912#line 317 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1913{ RET_TOK(TermOpVal, Br, BR); }
Reid Spencer67d8ed92007-03-22 02:14:08 +00001914 YY_BREAK
1915case 120:
1916YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001917#line 318 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1918{ RET_TOK(TermOpVal, Switch, SWITCH); }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001919 YY_BREAK
Reid Spencer3d6b71e2007-04-09 01:56:05 +00001920case 121:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001921YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001922#line 319 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1923{ RET_TOK(TermOpVal, Invoke, INVOKE); }
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001924 YY_BREAK
1925case 122:
1926YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001927#line 320 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1928{ RET_TOK(TermOpVal, Unwind, UNWIND); }
Owen Anderson1dc69692006-10-18 02:21:48 +00001929 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001930case 123:
Owen Anderson1dc69692006-10-18 02:21:48 +00001931YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001932#line 321 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1933{ RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
Chris Lattnerce5f24e2007-07-05 17:26:49 +00001934 YY_BREAK
1935case 124:
1936YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001937#line 323 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1938{ RET_TOK(MemOpVal, Malloc, MALLOC); }
Reid Spencerb8f85052007-07-31 03:50:36 +00001939 YY_BREAK
1940case 125:
1941YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001942#line 324 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1943{ RET_TOK(MemOpVal, Alloca, ALLOCA); }
Reid Spencerb8f85052007-07-31 03:50:36 +00001944 YY_BREAK
1945case 126:
1946YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001947#line 325 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1948{ RET_TOK(MemOpVal, Free, FREE); }
Reid Spencerb8f85052007-07-31 03:50:36 +00001949 YY_BREAK
1950case 127:
1951YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001952#line 326 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1953{ RET_TOK(MemOpVal, Load, LOAD); }
Reid Spencerb8f85052007-07-31 03:50:36 +00001954 YY_BREAK
1955case 128:
1956YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001957#line 327 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1958{ RET_TOK(MemOpVal, Store, STORE); }
Reid Spencerb8f85052007-07-31 03:50:36 +00001959 YY_BREAK
1960case 129:
1961YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001962#line 328 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1963{ RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
Reid Spencerb8f85052007-07-31 03:50:36 +00001964 YY_BREAK
1965case 130:
1966YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001967#line 330 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1968{ RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
1969 YY_BREAK
1970case 131:
1971YY_RULE_SETUP
1972#line 331 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1973{ RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }
1974 YY_BREAK
1975case 132:
1976YY_RULE_SETUP
1977#line 332 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
1978{ RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
1979 YY_BREAK
1980case 133:
1981YY_RULE_SETUP
1982#line 335 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001983{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00001984 llvmAsmlval.StrVal = new std::string(yytext+1); // Skip %
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001985 return LOCALVAR;
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001986 }
1987 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001988case 134:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001989YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001990#line 339 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001991{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00001992 llvmAsmlval.StrVal = new std::string(yytext+1); // Skip @
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001993 return GLOBALVAR;
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001994 }
1995 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001996case 135:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001997YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001998#line 343 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001999{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002000 yytext[yyleng-1] = 0; // nuke colon
2001 llvmAsmlval.StrVal = new std::string(yytext);
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00002002 return LABELSTR;
2003 }
2004 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002005case 136:
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00002006YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002007#line 348 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002008{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002009 yytext[yyleng-2] = 0; // nuke colon, end quote
Reid Spencere2aa9612007-05-22 19:08:16 +00002010 const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002011 llvmAsmlval.StrVal =
2012 new std::string(yytext+1, EndChar - yytext - 1);
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002013 return LABELSTR;
2014 }
2015 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002016case 137:
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002017YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002018#line 356 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002019{ yytext[yyleng-1] = 0; // nuke end quote
Reid Spencere2aa9612007-05-22 19:08:16 +00002020 const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002021 llvmAsmlval.StrVal =
2022 new std::string(yytext+1, EndChar - yytext - 1);
Reid Spencer68a24bd2005-08-27 18:50:39 +00002023 return STRINGCONSTANT;
2024 }
2025 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002026case 138:
Reid Spencer6f407902007-01-13 05:00:46 +00002027YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002028#line 362 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002029{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002030 yytext[yyleng-1] = 0; // nuke end quote
Reid Spencere2aa9612007-05-22 19:08:16 +00002031 const char* EndChar =
2032 UnEscapeLexed(yytext+2, yytext+yyleng);
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002033 llvmAsmlval.StrVal =
2034 new std::string(yytext+2, EndChar - yytext - 2);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002035 return ATSTRINGCONSTANT;
2036 }
2037 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002038case 139:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002039YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002040#line 370 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencered951ea2007-05-19 07:22:10 +00002041{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002042 yytext[yyleng-1] = 0; // nuke end quote
Reid Spencere2aa9612007-05-22 19:08:16 +00002043 const char* EndChar =
2044 UnEscapeLexed(yytext+2, yytext+yyleng);
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002045 llvmAsmlval.StrVal =
2046 new std::string(yytext+2, EndChar - yytext - 2);
Reid Spencered951ea2007-05-19 07:22:10 +00002047 return PCTSTRINGCONSTANT;
2048 }
2049 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002050case 140:
Reid Spencered951ea2007-05-19 07:22:10 +00002051YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002052#line 378 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002053{
2054 uint32_t numBits = ((yyleng * 64) / 19) + 1;
2055 APInt Tmp(numBits, yytext, yyleng, 10);
Reid Spencer38c91a92007-02-28 02:24:54 +00002056 uint32_t activeBits = Tmp.getActiveBits();
2057 if (activeBits > 0 && activeBits < numBits)
2058 Tmp.trunc(activeBits);
2059 if (Tmp.getBitWidth() > 64) {
2060 llvmAsmlval.APIntVal = new APInt(Tmp);
2061 return EUAPINTVAL;
2062 } else {
2063 llvmAsmlval.UInt64Val = Tmp.getZExtValue();
2064 return EUINT64VAL;
2065 }
2066 }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002067 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002068case 141:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002069YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002070#line 392 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002071{
2072 uint32_t numBits = (((yyleng-1) * 64) / 19) + 2;
2073 APInt Tmp(numBits, yytext, yyleng, 10);
Reid Spencer38c91a92007-02-28 02:24:54 +00002074 uint32_t minBits = Tmp.getMinSignedBits();
2075 if (minBits > 0 && minBits < numBits)
2076 Tmp.trunc(minBits);
2077 if (Tmp.getBitWidth() > 64) {
2078 llvmAsmlval.APIntVal = new APInt(Tmp);
2079 return ESAPINTVAL;
2080 } else {
2081 llvmAsmlval.SInt64Val = Tmp.getSExtValue();
2082 return ESINT64VAL;
2083 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002084 }
2085 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002086case 142:
Reid Spencer6f407902007-01-13 05:00:46 +00002087YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002088#line 407 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002089{ int len = yyleng - 3;
Reid Spencer38c91a92007-02-28 02:24:54 +00002090 uint32_t bits = len * 4;
Reid Spencered951ea2007-05-19 07:22:10 +00002091 APInt Tmp(bits, yytext+3, len, 16);
Reid Spencer38c91a92007-02-28 02:24:54 +00002092 uint32_t activeBits = Tmp.getActiveBits();
2093 if (activeBits > 0 && activeBits < bits)
2094 Tmp.trunc(activeBits);
2095 if (Tmp.getBitWidth() > 64) {
2096 llvmAsmlval.APIntVal = new APInt(Tmp);
Reid Spencered951ea2007-05-19 07:22:10 +00002097 return yytext[0] == 's' ? ESAPINTVAL : EUAPINTVAL;
2098 } else if (yytext[0] == 's') {
Reid Spencer38c91a92007-02-28 02:24:54 +00002099 llvmAsmlval.SInt64Val = Tmp.getSExtValue();
2100 return ESINT64VAL;
2101 } else {
2102 llvmAsmlval.UInt64Val = Tmp.getZExtValue();
2103 return EUINT64VAL;
2104 }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002105 }
Reid Spencer6f407902007-01-13 05:00:46 +00002106 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002107case 143:
Reid Spencer6fd36ab2006-12-29 20:35:03 +00002108YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002109#line 425 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002110{
Reid Spencered951ea2007-05-19 07:22:10 +00002111 uint64_t Val = atoull(yytext+1);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002112 if ((unsigned)Val != Val)
2113 GenerateError("Invalid value number (too large)!");
2114 llvmAsmlval.UIntVal = unsigned(Val);
2115 return LOCALVAL_ID;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002116 }
2117 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002118case 144:
Owen Anderson1dc69692006-10-18 02:21:48 +00002119YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002120#line 432 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002121{
Reid Spencered951ea2007-05-19 07:22:10 +00002122 uint64_t Val = atoull(yytext+1);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002123 if ((unsigned)Val != Val)
2124 GenerateError("Invalid value number (too large)!");
2125 llvmAsmlval.UIntVal = unsigned(Val);
2126 return GLOBALVAL_ID;
2127 }
Reid Spencer6fd36ab2006-12-29 20:35:03 +00002128 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002129case 145:
Reid Spencered951ea2007-05-19 07:22:10 +00002130YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002131#line 440 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen43421b32007-09-06 18:13:44 +00002132{ llvmAsmlval.FPVal = new APFloat(atof(yytext)); return FPVAL; }
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002133 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002134case 146:
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002135YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002136#line 441 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen43421b32007-09-06 18:13:44 +00002137{ llvmAsmlval.FPVal = new APFloat(HexToFP(yytext));
2138 return FPVAL;
2139 }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002140 YY_BREAK
2141case YY_STATE_EOF(INITIAL):
Dale Johannesen43421b32007-09-06 18:13:44 +00002142#line 445 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002143{
2144 /* Make sure to free the internal buffers for flex when we are
2145 * done reading our input!
2146 */
Reid Spencered951ea2007-05-19 07:22:10 +00002147 yy_delete_buffer(YY_CURRENT_BUFFER);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002148 return EOF;
2149 }
2150 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002151case 147:
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002152YY_RULE_SETUP
Dale Johannesen43421b32007-09-06 18:13:44 +00002153#line 453 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002154{ /* Ignore whitespace */ }
Reid Spencered951ea2007-05-19 07:22:10 +00002155 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002156case 148:
Reid Spencered951ea2007-05-19 07:22:10 +00002157YY_RULE_SETUP
Dale Johannesen43421b32007-09-06 18:13:44 +00002158#line 454 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002159{ return yytext[0]; }
2160 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002161case 149:
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002162YY_RULE_SETUP
Dale Johannesen43421b32007-09-06 18:13:44 +00002163#line 456 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002164YY_FATAL_ERROR( "flex scanner jammed" );
2165 YY_BREAK
Dale Johannesen43421b32007-09-06 18:13:44 +00002166#line 2167 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002167
2168 case YY_END_OF_BUFFER:
2169 {
2170 /* Amount of text matched not including the EOB char. */
Reid Spencered951ea2007-05-19 07:22:10 +00002171 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002172
2173 /* Undo the effects of YY_DO_BEFORE_ACTION. */
Reid Spencered951ea2007-05-19 07:22:10 +00002174 *yy_cp = yy_hold_char;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002175 YY_RESTORE_YY_MORE_OFFSET
2176
Reid Spencered951ea2007-05-19 07:22:10 +00002177 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002178 {
2179 /* We're scanning a new file or input source. It's
2180 * possible that this happened because the user
Reid Spencered951ea2007-05-19 07:22:10 +00002181 * just pointed yyin at a new source and called
2182 * yylex(). If so, then we have to assure
2183 * consistency between yy_current_buffer and our
Reid Spencer68a24bd2005-08-27 18:50:39 +00002184 * globals. Here is the right place to do so, because
2185 * this is the first action (other than possibly a
2186 * back-up) that will match for the new input source.
2187 */
Reid Spencered951ea2007-05-19 07:22:10 +00002188 yy_n_chars = yy_current_buffer->yy_n_chars;
2189 yy_current_buffer->yy_input_file = yyin;
2190 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002191 }
2192
2193 /* Note that here we test for yy_c_buf_p "<=" to the position
2194 * of the first EOB in the buffer, since yy_c_buf_p will
2195 * already have been incremented past the NUL character
2196 * (since all states make transitions on EOB to the
2197 * end-of-buffer state). Contrast this with the test
2198 * in input().
2199 */
Reid Spencered951ea2007-05-19 07:22:10 +00002200 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002201 { /* This was really a NUL. */
2202 yy_state_type yy_next_state;
2203
Reid Spencered951ea2007-05-19 07:22:10 +00002204 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002205
Reid Spencered951ea2007-05-19 07:22:10 +00002206 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002207
2208 /* Okay, we're now positioned to make the NUL
2209 * transition. We couldn't have
2210 * yy_get_previous_state() go ahead and do it
2211 * for us because it doesn't know how to deal
2212 * with the possibility of jamming (and we don't
2213 * want to build jamming into it because then it
2214 * will run more slowly).
2215 */
2216
2217 yy_next_state = yy_try_NUL_trans( yy_current_state );
2218
Reid Spencered951ea2007-05-19 07:22:10 +00002219 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002220
2221 if ( yy_next_state )
2222 {
2223 /* Consume the NUL. */
Reid Spencered951ea2007-05-19 07:22:10 +00002224 yy_cp = ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002225 yy_current_state = yy_next_state;
2226 goto yy_match;
2227 }
2228
2229 else
2230 {
Reid Spencered951ea2007-05-19 07:22:10 +00002231 yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002232 goto yy_find_action;
2233 }
2234 }
2235
Reid Spencered951ea2007-05-19 07:22:10 +00002236 else switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002237 {
2238 case EOB_ACT_END_OF_FILE:
2239 {
Reid Spencered951ea2007-05-19 07:22:10 +00002240 yy_did_buffer_switch_on_eof = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002241
Reid Spencered951ea2007-05-19 07:22:10 +00002242 if ( yywrap() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002243 {
2244 /* Note: because we've taken care in
2245 * yy_get_next_buffer() to have set up
Reid Spencered951ea2007-05-19 07:22:10 +00002246 * yytext, we can now set up
Reid Spencer68a24bd2005-08-27 18:50:39 +00002247 * yy_c_buf_p so that if some total
2248 * hoser (like flex itself) wants to
2249 * call the scanner after we return the
2250 * YY_NULL, it'll still work - another
2251 * YY_NULL will get returned.
2252 */
Reid Spencered951ea2007-05-19 07:22:10 +00002253 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002254
2255 yy_act = YY_STATE_EOF(YY_START);
2256 goto do_action;
2257 }
2258
2259 else
2260 {
Reid Spencered951ea2007-05-19 07:22:10 +00002261 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002262 YY_NEW_FILE;
2263 }
2264 break;
2265 }
2266
2267 case EOB_ACT_CONTINUE_SCAN:
Reid Spencered951ea2007-05-19 07:22:10 +00002268 yy_c_buf_p =
2269 yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002270
Reid Spencered951ea2007-05-19 07:22:10 +00002271 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002272
Reid Spencered951ea2007-05-19 07:22:10 +00002273 yy_cp = yy_c_buf_p;
2274 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002275 goto yy_match;
2276
2277 case EOB_ACT_LAST_MATCH:
Reid Spencered951ea2007-05-19 07:22:10 +00002278 yy_c_buf_p =
2279 &yy_current_buffer->yy_ch_buf[yy_n_chars];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002280
Reid Spencered951ea2007-05-19 07:22:10 +00002281 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002282
Reid Spencered951ea2007-05-19 07:22:10 +00002283 yy_cp = yy_c_buf_p;
2284 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002285 goto yy_find_action;
2286 }
2287 break;
2288 }
2289
2290 default:
2291 YY_FATAL_ERROR(
2292 "fatal flex scanner internal error--no action found" );
2293 } /* end of action switch */
2294 } /* end of scanning one token */
Reid Spencered951ea2007-05-19 07:22:10 +00002295 } /* end of yylex */
2296
Reid Spencer68a24bd2005-08-27 18:50:39 +00002297
2298/* yy_get_next_buffer - try to read in a new buffer
2299 *
2300 * Returns a code representing an action:
2301 * EOB_ACT_LAST_MATCH -
2302 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2303 * EOB_ACT_END_OF_FILE - end of file
2304 */
Reid Spencered951ea2007-05-19 07:22:10 +00002305
2306static int yy_get_next_buffer()
2307 {
2308 register char *dest = yy_current_buffer->yy_ch_buf;
2309 register char *source = yytext_ptr;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002310 register int number_to_move, i;
2311 int ret_val;
2312
Reid Spencered951ea2007-05-19 07:22:10 +00002313 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002314 YY_FATAL_ERROR(
2315 "fatal flex scanner internal error--end of buffer missed" );
2316
Reid Spencered951ea2007-05-19 07:22:10 +00002317 if ( yy_current_buffer->yy_fill_buffer == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002318 { /* Don't try to fill the buffer, so this is an EOF. */
Reid Spencered951ea2007-05-19 07:22:10 +00002319 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002320 {
2321 /* We matched a single character, the EOB, so
2322 * treat this as a final EOF.
2323 */
2324 return EOB_ACT_END_OF_FILE;
2325 }
2326
2327 else
2328 {
2329 /* We matched some text prior to the EOB, first
2330 * process it.
2331 */
2332 return EOB_ACT_LAST_MATCH;
2333 }
2334 }
2335
2336 /* Try to read more data. */
2337
2338 /* First move last chars to start of buffer. */
Reid Spencered951ea2007-05-19 07:22:10 +00002339 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002340
2341 for ( i = 0; i < number_to_move; ++i )
2342 *(dest++) = *(source++);
2343
Reid Spencered951ea2007-05-19 07:22:10 +00002344 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002345 /* don't do the read, it's not guaranteed to return an EOF,
2346 * just force an EOF
2347 */
Reid Spencered951ea2007-05-19 07:22:10 +00002348 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002349
2350 else
2351 {
Reid Spencered951ea2007-05-19 07:22:10 +00002352 int num_to_read =
2353 yy_current_buffer->yy_buf_size - number_to_move - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002354
2355 while ( num_to_read <= 0 )
2356 { /* Not enough room in the buffer - grow it. */
Reid Spencered951ea2007-05-19 07:22:10 +00002357#ifdef YY_USES_REJECT
2358 YY_FATAL_ERROR(
2359"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2360#else
Reid Spencer68a24bd2005-08-27 18:50:39 +00002361
2362 /* just a shorter name for the current buffer */
Reid Spencered951ea2007-05-19 07:22:10 +00002363 YY_BUFFER_STATE b = yy_current_buffer;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002364
2365 int yy_c_buf_p_offset =
Reid Spencered951ea2007-05-19 07:22:10 +00002366 (int) (yy_c_buf_p - b->yy_ch_buf);
Reid Spencer68a24bd2005-08-27 18:50:39 +00002367
2368 if ( b->yy_is_our_buffer )
2369 {
2370 int new_size = b->yy_buf_size * 2;
2371
2372 if ( new_size <= 0 )
2373 b->yy_buf_size += b->yy_buf_size / 8;
2374 else
2375 b->yy_buf_size *= 2;
2376
2377 b->yy_ch_buf = (char *)
2378 /* Include room in for 2 EOB chars. */
Reid Spencered951ea2007-05-19 07:22:10 +00002379 yy_flex_realloc( (void *) b->yy_ch_buf,
2380 b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002381 }
2382 else
2383 /* Can't grow it, we don't own it. */
2384 b->yy_ch_buf = 0;
2385
2386 if ( ! b->yy_ch_buf )
2387 YY_FATAL_ERROR(
2388 "fatal error - scanner input buffer overflow" );
2389
Reid Spencered951ea2007-05-19 07:22:10 +00002390 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002391
Reid Spencered951ea2007-05-19 07:22:10 +00002392 num_to_read = yy_current_buffer->yy_buf_size -
Reid Spencer68a24bd2005-08-27 18:50:39 +00002393 number_to_move - 1;
Reid Spencered951ea2007-05-19 07:22:10 +00002394#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002395 }
2396
2397 if ( num_to_read > YY_READ_BUF_SIZE )
2398 num_to_read = YY_READ_BUF_SIZE;
2399
2400 /* Read in more data. */
Reid Spencered951ea2007-05-19 07:22:10 +00002401 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
2402 yy_n_chars, num_to_read );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002403
Reid Spencered951ea2007-05-19 07:22:10 +00002404 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002405 }
2406
Reid Spencered951ea2007-05-19 07:22:10 +00002407 if ( yy_n_chars == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002408 {
2409 if ( number_to_move == YY_MORE_ADJ )
2410 {
2411 ret_val = EOB_ACT_END_OF_FILE;
Reid Spencered951ea2007-05-19 07:22:10 +00002412 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002413 }
2414
2415 else
2416 {
2417 ret_val = EOB_ACT_LAST_MATCH;
Reid Spencered951ea2007-05-19 07:22:10 +00002418 yy_current_buffer->yy_buffer_status =
Reid Spencer68a24bd2005-08-27 18:50:39 +00002419 YY_BUFFER_EOF_PENDING;
2420 }
2421 }
2422
2423 else
2424 ret_val = EOB_ACT_CONTINUE_SCAN;
2425
Reid Spencered951ea2007-05-19 07:22:10 +00002426 yy_n_chars += number_to_move;
2427 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
2428 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002429
Reid Spencered951ea2007-05-19 07:22:10 +00002430 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002431
2432 return ret_val;
Reid Spencered951ea2007-05-19 07:22:10 +00002433 }
2434
Reid Spencer68a24bd2005-08-27 18:50:39 +00002435
2436/* yy_get_previous_state - get the state just before the EOB char was reached */
2437
Reid Spencered951ea2007-05-19 07:22:10 +00002438static yy_state_type yy_get_previous_state()
2439 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002440 register yy_state_type yy_current_state;
2441 register char *yy_cp;
2442
Reid Spencered951ea2007-05-19 07:22:10 +00002443 yy_current_state = yy_start;
2444 yy_state_ptr = yy_state_buf;
2445 *yy_state_ptr++ = yy_current_state;
2446
2447 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002448 {
2449 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2450 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2451 {
2452 yy_current_state = (int) yy_def[yy_current_state];
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002453 if ( yy_current_state >= 600 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002454 yy_c = yy_meta[(unsigned int) yy_c];
2455 }
2456 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Reid Spencered951ea2007-05-19 07:22:10 +00002457 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002458 }
2459
2460 return yy_current_state;
Reid Spencered951ea2007-05-19 07:22:10 +00002461 }
2462
Reid Spencer68a24bd2005-08-27 18:50:39 +00002463
2464/* yy_try_NUL_trans - try to make a transition on the NUL character
2465 *
2466 * synopsis
2467 * next_state = yy_try_NUL_trans( current_state );
2468 */
Reid Spencered951ea2007-05-19 07:22:10 +00002469
2470#ifdef YY_USE_PROTOS
2471static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
2472#else
2473static yy_state_type yy_try_NUL_trans( yy_current_state )
2474yy_state_type yy_current_state;
2475#endif
2476 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002477 register int yy_is_jam;
2478
2479 register YY_CHAR yy_c = 1;
2480 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2481 {
2482 yy_current_state = (int) yy_def[yy_current_state];
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002483 if ( yy_current_state >= 600 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002484 yy_c = yy_meta[(unsigned int) yy_c];
2485 }
2486 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002487 yy_is_jam = (yy_current_state == 599);
Reid Spencered951ea2007-05-19 07:22:10 +00002488 if ( ! yy_is_jam )
2489 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002490
2491 return yy_is_jam ? 0 : yy_current_state;
Reid Spencered951ea2007-05-19 07:22:10 +00002492 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002493
2494
Reid Spencered951ea2007-05-19 07:22:10 +00002495#ifndef YY_NO_UNPUT
2496#ifdef YY_USE_PROTOS
2497static inline void yyunput( int c, register char *yy_bp )
2498#else
2499static inline void yyunput( c, yy_bp )
2500int c;
2501register char *yy_bp;
2502#endif
2503 {
2504 register char *yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002505
Reid Spencered951ea2007-05-19 07:22:10 +00002506 /* undo effects of setting up yytext */
2507 *yy_cp = yy_hold_char;
2508
2509 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002510 { /* need to shift things up to make room */
2511 /* +2 for EOB chars. */
Reid Spencered951ea2007-05-19 07:22:10 +00002512 register int number_to_move = yy_n_chars + 2;
2513 register char *dest = &yy_current_buffer->yy_ch_buf[
2514 yy_current_buffer->yy_buf_size + 2];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002515 register char *source =
Reid Spencered951ea2007-05-19 07:22:10 +00002516 &yy_current_buffer->yy_ch_buf[number_to_move];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002517
Reid Spencered951ea2007-05-19 07:22:10 +00002518 while ( source > yy_current_buffer->yy_ch_buf )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002519 *--dest = *--source;
2520
2521 yy_cp += (int) (dest - source);
2522 yy_bp += (int) (dest - source);
Reid Spencered951ea2007-05-19 07:22:10 +00002523 yy_current_buffer->yy_n_chars =
2524 yy_n_chars = yy_current_buffer->yy_buf_size;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002525
Reid Spencered951ea2007-05-19 07:22:10 +00002526 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002527 YY_FATAL_ERROR( "flex scanner push-back overflow" );
2528 }
2529
2530 *--yy_cp = (char) c;
2531
Reid Spencered951ea2007-05-19 07:22:10 +00002532 if ( c == '\n' )
2533 --yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002534
Reid Spencered951ea2007-05-19 07:22:10 +00002535 yytext_ptr = yy_bp;
2536 yy_hold_char = *yy_cp;
2537 yy_c_buf_p = yy_cp;
2538 }
2539#endif /* ifndef YY_NO_UNPUT */
2540
Reid Spencer6f407902007-01-13 05:00:46 +00002541
Reid Spencer68a24bd2005-08-27 18:50:39 +00002542#ifdef __cplusplus
Reid Spencered951ea2007-05-19 07:22:10 +00002543static int yyinput()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002544#else
Reid Spencered951ea2007-05-19 07:22:10 +00002545static int input()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002546#endif
Reid Spencered951ea2007-05-19 07:22:10 +00002547 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002548 int c;
2549
Reid Spencered951ea2007-05-19 07:22:10 +00002550 *yy_c_buf_p = yy_hold_char;
2551
2552 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002553 {
2554 /* yy_c_buf_p now points to the character we want to return.
2555 * If this occurs *before* the EOB characters, then it's a
2556 * valid NUL; if not, then we've hit the end of the buffer.
2557 */
Reid Spencered951ea2007-05-19 07:22:10 +00002558 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002559 /* This was really a NUL. */
Reid Spencered951ea2007-05-19 07:22:10 +00002560 *yy_c_buf_p = '\0';
Reid Spencer68a24bd2005-08-27 18:50:39 +00002561
2562 else
2563 { /* need more input */
Reid Spencered951ea2007-05-19 07:22:10 +00002564 int offset = yy_c_buf_p - yytext_ptr;
2565 ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002566
Reid Spencered951ea2007-05-19 07:22:10 +00002567 switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002568 {
2569 case EOB_ACT_LAST_MATCH:
2570 /* This happens because yy_g_n_b()
2571 * sees that we've accumulated a
2572 * token and flags that we need to
2573 * try matching the token before
2574 * proceeding. But for input(),
2575 * there's no matching to consider.
2576 * So convert the EOB_ACT_LAST_MATCH
2577 * to EOB_ACT_END_OF_FILE.
2578 */
2579
2580 /* Reset buffer status. */
Reid Spencered951ea2007-05-19 07:22:10 +00002581 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002582
Reid Spencered951ea2007-05-19 07:22:10 +00002583 /* fall through */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002584
2585 case EOB_ACT_END_OF_FILE:
2586 {
Reid Spencered951ea2007-05-19 07:22:10 +00002587 if ( yywrap() )
Reid Spencer61c83e02006-08-18 08:43:06 +00002588 return EOF;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002589
Reid Spencered951ea2007-05-19 07:22:10 +00002590 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002591 YY_NEW_FILE;
2592#ifdef __cplusplus
2593 return yyinput();
2594#else
2595 return input();
2596#endif
2597 }
2598
2599 case EOB_ACT_CONTINUE_SCAN:
Reid Spencered951ea2007-05-19 07:22:10 +00002600 yy_c_buf_p = yytext_ptr + offset;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002601 break;
2602 }
2603 }
2604 }
2605
Reid Spencered951ea2007-05-19 07:22:10 +00002606 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */
2607 *yy_c_buf_p = '\0'; /* preserve yytext */
2608 yy_hold_char = *++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002609
2610 if ( c == '\n' )
Reid Spencered951ea2007-05-19 07:22:10 +00002611 ++yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002612
2613 return c;
Reid Spencered951ea2007-05-19 07:22:10 +00002614 }
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002615
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002616
Reid Spencered951ea2007-05-19 07:22:10 +00002617#ifdef YY_USE_PROTOS
2618void yyrestart( FILE *input_file )
2619#else
2620void yyrestart( input_file )
2621FILE *input_file;
2622#endif
2623 {
2624 if ( ! yy_current_buffer )
2625 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
2626
2627 yy_init_buffer( yy_current_buffer, input_file );
2628 yy_load_buffer_state();
Reid Spencer6f407902007-01-13 05:00:46 +00002629 }
Reid Spencer41dff5e2007-01-26 08:05:27 +00002630
Reid Spencer68a24bd2005-08-27 18:50:39 +00002631
Reid Spencered951ea2007-05-19 07:22:10 +00002632#ifdef YY_USE_PROTOS
2633void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
2634#else
2635void yy_switch_to_buffer( new_buffer )
2636YY_BUFFER_STATE new_buffer;
2637#endif
2638 {
2639 if ( yy_current_buffer == new_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002640 return;
2641
Reid Spencered951ea2007-05-19 07:22:10 +00002642 if ( yy_current_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002643 {
2644 /* Flush out information for old buffer. */
Reid Spencered951ea2007-05-19 07:22:10 +00002645 *yy_c_buf_p = yy_hold_char;
2646 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
2647 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002648 }
2649
Reid Spencered951ea2007-05-19 07:22:10 +00002650 yy_current_buffer = new_buffer;
2651 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002652
2653 /* We don't actually know whether we did this switch during
Reid Spencered951ea2007-05-19 07:22:10 +00002654 * EOF (yywrap()) processing, but the only time this flag
2655 * is looked at is after yywrap() is called, so it's safe
Reid Spencer68a24bd2005-08-27 18:50:39 +00002656 * to go ahead and always set it.
2657 */
Reid Spencered951ea2007-05-19 07:22:10 +00002658 yy_did_buffer_switch_on_eof = 1;
2659 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002660
2661
Reid Spencered951ea2007-05-19 07:22:10 +00002662#ifdef YY_USE_PROTOS
2663void yy_load_buffer_state( void )
2664#else
2665void yy_load_buffer_state()
2666#endif
2667 {
2668 yy_n_chars = yy_current_buffer->yy_n_chars;
2669 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
2670 yyin = yy_current_buffer->yy_input_file;
2671 yy_hold_char = *yy_c_buf_p;
2672 }
2673
2674
2675#ifdef YY_USE_PROTOS
2676YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
2677#else
2678YY_BUFFER_STATE yy_create_buffer( file, size )
2679FILE *file;
2680int size;
2681#endif
2682 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002683 YY_BUFFER_STATE b;
Reid Spencered951ea2007-05-19 07:22:10 +00002684
2685 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002686 if ( ! b )
Reid Spencered951ea2007-05-19 07:22:10 +00002687 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002688
2689 b->yy_buf_size = size;
2690
2691 /* yy_ch_buf has to be 2 characters longer than the size given because
2692 * we need to put in 2 end-of-buffer characters.
2693 */
Reid Spencered951ea2007-05-19 07:22:10 +00002694 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002695 if ( ! b->yy_ch_buf )
Reid Spencered951ea2007-05-19 07:22:10 +00002696 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002697
2698 b->yy_is_our_buffer = 1;
2699
Reid Spencered951ea2007-05-19 07:22:10 +00002700 yy_init_buffer( b, file );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002701
2702 return b;
Reid Spencered951ea2007-05-19 07:22:10 +00002703 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002704
Reid Spencered951ea2007-05-19 07:22:10 +00002705
2706#ifdef YY_USE_PROTOS
2707void yy_delete_buffer( YY_BUFFER_STATE b )
2708#else
2709void yy_delete_buffer( b )
2710YY_BUFFER_STATE b;
2711#endif
2712 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002713 if ( ! b )
2714 return;
2715
Reid Spencered951ea2007-05-19 07:22:10 +00002716 if ( b == yy_current_buffer )
2717 yy_current_buffer = (YY_BUFFER_STATE) 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002718
2719 if ( b->yy_is_our_buffer )
Reid Spencered951ea2007-05-19 07:22:10 +00002720 yy_flex_free( (void *) b->yy_ch_buf );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002721
Reid Spencered951ea2007-05-19 07:22:10 +00002722 yy_flex_free( (void *) b );
2723 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002724
2725
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002726#ifndef YY_ALWAYS_INTERACTIVE
2727#ifndef YY_NEVER_INTERACTIVE
2728extern int isatty YY_PROTO(( int ));
2729#endif
2730#endif
Reid Spencered951ea2007-05-19 07:22:10 +00002731
2732#ifdef YY_USE_PROTOS
2733void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
2734#else
2735void yy_init_buffer( b, file )
2736YY_BUFFER_STATE b;
2737FILE *file;
2738#endif
2739
2740
2741 {
2742 yy_flush_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002743
2744 b->yy_input_file = file;
2745 b->yy_fill_buffer = 1;
2746
Reid Spencered951ea2007-05-19 07:22:10 +00002747#if YY_ALWAYS_INTERACTIVE
2748 b->yy_is_interactive = 1;
2749#else
2750#if YY_NEVER_INTERACTIVE
2751 b->yy_is_interactive = 0;
2752#else
2753 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
2754#endif
2755#endif
2756 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002757
2758
Reid Spencered951ea2007-05-19 07:22:10 +00002759#ifdef YY_USE_PROTOS
2760void yy_flush_buffer( YY_BUFFER_STATE b )
2761#else
2762void yy_flush_buffer( b )
2763YY_BUFFER_STATE b;
2764#endif
2765
2766 {
2767 if ( ! b )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002768 return;
2769
2770 b->yy_n_chars = 0;
2771
2772 /* We always need two end-of-buffer characters. The first causes
2773 * a transition to the end-of-buffer state. The second causes
2774 * a jam in that state.
2775 */
2776 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
2777 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
2778
2779 b->yy_buf_pos = &b->yy_ch_buf[0];
2780
2781 b->yy_at_bol = 1;
2782 b->yy_buffer_status = YY_BUFFER_NEW;
2783
Reid Spencered951ea2007-05-19 07:22:10 +00002784 if ( b == yy_current_buffer )
2785 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002786 }
2787
2788
Reid Spencered951ea2007-05-19 07:22:10 +00002789#ifndef YY_NO_SCAN_BUFFER
2790#ifdef YY_USE_PROTOS
2791YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
2792#else
2793YY_BUFFER_STATE yy_scan_buffer( base, size )
2794char *base;
2795yy_size_t size;
2796#endif
2797 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002798 YY_BUFFER_STATE b;
Reid Spencered951ea2007-05-19 07:22:10 +00002799
Reid Spencer68a24bd2005-08-27 18:50:39 +00002800 if ( size < 2 ||
2801 base[size-2] != YY_END_OF_BUFFER_CHAR ||
2802 base[size-1] != YY_END_OF_BUFFER_CHAR )
2803 /* They forgot to leave room for the EOB's. */
2804 return 0;
2805
Reid Spencered951ea2007-05-19 07:22:10 +00002806 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002807 if ( ! b )
Reid Spencered951ea2007-05-19 07:22:10 +00002808 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002809
2810 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
2811 b->yy_buf_pos = b->yy_ch_buf = base;
2812 b->yy_is_our_buffer = 0;
2813 b->yy_input_file = 0;
2814 b->yy_n_chars = b->yy_buf_size;
2815 b->yy_is_interactive = 0;
2816 b->yy_at_bol = 1;
2817 b->yy_fill_buffer = 0;
2818 b->yy_buffer_status = YY_BUFFER_NEW;
2819
Reid Spencered951ea2007-05-19 07:22:10 +00002820 yy_switch_to_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002821
2822 return b;
Reid Spencered951ea2007-05-19 07:22:10 +00002823 }
2824#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002825
2826
Reid Spencered951ea2007-05-19 07:22:10 +00002827#ifndef YY_NO_SCAN_STRING
2828#ifdef YY_USE_PROTOS
2829YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
2830#else
2831YY_BUFFER_STATE yy_scan_string( yy_str )
2832yyconst char *yy_str;
2833#endif
2834 {
2835 int len;
2836 for ( len = 0; yy_str[len]; ++len )
2837 ;
2838
2839 return yy_scan_bytes( yy_str, len );
2840 }
2841#endif
2842
2843
2844#ifndef YY_NO_SCAN_BYTES
2845#ifdef YY_USE_PROTOS
2846YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
2847#else
2848YY_BUFFER_STATE yy_scan_bytes( bytes, len )
2849yyconst char *bytes;
2850int len;
2851#endif
2852 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002853 YY_BUFFER_STATE b;
2854 char *buf;
2855 yy_size_t n;
2856 int i;
Reid Spencered951ea2007-05-19 07:22:10 +00002857
Reid Spencer68a24bd2005-08-27 18:50:39 +00002858 /* Get memory for full buffer, including space for trailing EOB's. */
Reid Spencered951ea2007-05-19 07:22:10 +00002859 n = len + 2;
2860 buf = (char *) yy_flex_alloc( n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002861 if ( ! buf )
Reid Spencered951ea2007-05-19 07:22:10 +00002862 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002863
Reid Spencered951ea2007-05-19 07:22:10 +00002864 for ( i = 0; i < len; ++i )
2865 buf[i] = bytes[i];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002866
Reid Spencered951ea2007-05-19 07:22:10 +00002867 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002868
Reid Spencered951ea2007-05-19 07:22:10 +00002869 b = yy_scan_buffer( buf, n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002870 if ( ! b )
Reid Spencered951ea2007-05-19 07:22:10 +00002871 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002872
2873 /* It's okay to grow etc. this buffer, and we should throw it
2874 * away when we're done.
2875 */
2876 b->yy_is_our_buffer = 1;
2877
2878 return b;
Reid Spencered951ea2007-05-19 07:22:10 +00002879 }
2880#endif
2881
2882
2883#ifndef YY_NO_PUSH_STATE
2884#ifdef YY_USE_PROTOS
2885static void yy_push_state( int new_state )
2886#else
2887static void yy_push_state( new_state )
2888int new_state;
2889#endif
2890 {
2891 if ( yy_start_stack_ptr >= yy_start_stack_depth )
2892 {
2893 yy_size_t new_size;
2894
2895 yy_start_stack_depth += YY_START_STACK_INCR;
2896 new_size = yy_start_stack_depth * sizeof( int );
2897
2898 if ( ! yy_start_stack )
2899 yy_start_stack = (int *) yy_flex_alloc( new_size );
2900
2901 else
2902 yy_start_stack = (int *) yy_flex_realloc(
2903 (void *) yy_start_stack, new_size );
2904
2905 if ( ! yy_start_stack )
2906 YY_FATAL_ERROR(
2907 "out of memory expanding start-condition stack" );
2908 }
2909
2910 yy_start_stack[yy_start_stack_ptr++] = YY_START;
2911
2912 BEGIN(new_state);
2913 }
2914#endif
2915
2916
2917#ifndef YY_NO_POP_STATE
2918static void yy_pop_state()
2919 {
2920 if ( --yy_start_stack_ptr < 0 )
2921 YY_FATAL_ERROR( "start-condition stack underflow" );
2922
2923 BEGIN(yy_start_stack[yy_start_stack_ptr]);
2924 }
2925#endif
2926
2927
2928#ifndef YY_NO_TOP_STATE
2929static int yy_top_state()
2930 {
2931 return yy_start_stack[yy_start_stack_ptr - 1];
2932 }
2933#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002934
2935#ifndef YY_EXIT_FAILURE
2936#define YY_EXIT_FAILURE 2
2937#endif
2938
Reid Spencered951ea2007-05-19 07:22:10 +00002939#ifdef YY_USE_PROTOS
2940static void yy_fatal_error( yyconst char msg[] )
2941#else
2942static void yy_fatal_error( msg )
2943char msg[];
2944#endif
2945 {
2946 (void) fprintf( stderr, "%s\n", msg );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002947 exit( YY_EXIT_FAILURE );
Reid Spencered951ea2007-05-19 07:22:10 +00002948 }
2949
2950
Reid Spencer68a24bd2005-08-27 18:50:39 +00002951
2952/* Redefine yyless() so it works in section 3 code. */
2953
2954#undef yyless
2955#define yyless(n) \
2956 do \
2957 { \
Reid Spencered951ea2007-05-19 07:22:10 +00002958 /* Undo effects of setting up yytext. */ \
2959 yytext[yyleng] = yy_hold_char; \
2960 yy_c_buf_p = yytext + n; \
2961 yy_hold_char = *yy_c_buf_p; \
2962 *yy_c_buf_p = '\0'; \
2963 yyleng = n; \
Reid Spencer68a24bd2005-08-27 18:50:39 +00002964 } \
2965 while ( 0 )
2966
2967
Reid Spencered951ea2007-05-19 07:22:10 +00002968/* Internal utility routines. */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002969
2970#ifndef yytext_ptr
Reid Spencered951ea2007-05-19 07:22:10 +00002971#ifdef YY_USE_PROTOS
2972static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
2973#else
2974static void yy_flex_strncpy( s1, s2, n )
2975char *s1;
2976yyconst char *s2;
2977int n;
2978#endif
2979 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002980 register int i;
2981 for ( i = 0; i < n; ++i )
2982 s1[i] = s2[i];
Reid Spencered951ea2007-05-19 07:22:10 +00002983 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002984#endif
2985
2986#ifdef YY_NEED_STRLEN
Reid Spencered951ea2007-05-19 07:22:10 +00002987#ifdef YY_USE_PROTOS
2988static int yy_flex_strlen( yyconst char *s )
2989#else
2990static int yy_flex_strlen( s )
2991yyconst char *s;
2992#endif
2993 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002994 register int n;
2995 for ( n = 0; s[n]; ++n )
2996 ;
2997
2998 return n;
Reid Spencered951ea2007-05-19 07:22:10 +00002999 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00003000#endif
3001
Reid Spencer9c9b63a2007-04-28 16:07:31 +00003002
Reid Spencered951ea2007-05-19 07:22:10 +00003003#ifdef YY_USE_PROTOS
3004static void *yy_flex_alloc( yy_size_t size )
3005#else
3006static void *yy_flex_alloc( size )
3007yy_size_t size;
3008#endif
3009 {
3010 return (void *) malloc( size );
3011 }
3012
3013#ifdef YY_USE_PROTOS
3014static inline void *yy_flex_realloc( void *ptr, yy_size_t size )
3015#else
3016static inline void *yy_flex_realloc( ptr, size )
3017void *ptr;
3018yy_size_t size;
3019#endif
3020 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00003021 /* The cast to (char *) in the following accommodates both
3022 * implementations that use char* generic pointers, and those
3023 * that use void* generic pointers. It works with the latter
3024 * because both ANSI C and C++ allow castless assignment from
3025 * any pointer type to void*, and deal with argument conversions
3026 * as though doing an assignment.
3027 */
3028 return (void *) realloc( (char *) ptr, size );
Reid Spencered951ea2007-05-19 07:22:10 +00003029 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00003030
Reid Spencered951ea2007-05-19 07:22:10 +00003031#ifdef YY_USE_PROTOS
3032static void yy_flex_free( void *ptr )
3033#else
3034static void yy_flex_free( ptr )
3035void *ptr;
3036#endif
3037 {
3038 free( ptr );
3039 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00003040
Reid Spencered951ea2007-05-19 07:22:10 +00003041#if YY_MAIN
3042int main()
3043 {
3044 yylex();
3045 return 0;
3046 }
3047#endif
Dale Johannesen43421b32007-09-06 18:13:44 +00003048#line 456 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Chris Lattner2fecc0f2006-02-15 07:02:59 +00003049