blob: 30ddb8fa0f0d62a597645457867385a3424903cc [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"
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002132{ llvmAsmlval.FPVal = atof(yytext); return FPVAL; }
2133 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"
Reid Spencered951ea2007-05-19 07:22:10 +00002137{ llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002138 YY_BREAK
2139case YY_STATE_EOF(INITIAL):
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002140#line 443 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002141{
2142 /* Make sure to free the internal buffers for flex when we are
2143 * done reading our input!
2144 */
Reid Spencered951ea2007-05-19 07:22:10 +00002145 yy_delete_buffer(YY_CURRENT_BUFFER);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002146 return EOF;
2147 }
2148 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002149case 147:
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002150YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002151#line 451 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002152{ /* Ignore whitespace */ }
Reid Spencered951ea2007-05-19 07:22:10 +00002153 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002154case 148:
Reid Spencered951ea2007-05-19 07:22:10 +00002155YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002156#line 452 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002157{ return yytext[0]; }
2158 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002159case 149:
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002160YY_RULE_SETUP
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002161#line 454 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002162YY_FATAL_ERROR( "flex scanner jammed" );
2163 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002164#line 2165 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002165
2166 case YY_END_OF_BUFFER:
2167 {
2168 /* Amount of text matched not including the EOB char. */
Reid Spencered951ea2007-05-19 07:22:10 +00002169 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002170
2171 /* Undo the effects of YY_DO_BEFORE_ACTION. */
Reid Spencered951ea2007-05-19 07:22:10 +00002172 *yy_cp = yy_hold_char;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002173 YY_RESTORE_YY_MORE_OFFSET
2174
Reid Spencered951ea2007-05-19 07:22:10 +00002175 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002176 {
2177 /* We're scanning a new file or input source. It's
2178 * possible that this happened because the user
Reid Spencered951ea2007-05-19 07:22:10 +00002179 * just pointed yyin at a new source and called
2180 * yylex(). If so, then we have to assure
2181 * consistency between yy_current_buffer and our
Reid Spencer68a24bd2005-08-27 18:50:39 +00002182 * globals. Here is the right place to do so, because
2183 * this is the first action (other than possibly a
2184 * back-up) that will match for the new input source.
2185 */
Reid Spencered951ea2007-05-19 07:22:10 +00002186 yy_n_chars = yy_current_buffer->yy_n_chars;
2187 yy_current_buffer->yy_input_file = yyin;
2188 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002189 }
2190
2191 /* Note that here we test for yy_c_buf_p "<=" to the position
2192 * of the first EOB in the buffer, since yy_c_buf_p will
2193 * already have been incremented past the NUL character
2194 * (since all states make transitions on EOB to the
2195 * end-of-buffer state). Contrast this with the test
2196 * in input().
2197 */
Reid Spencered951ea2007-05-19 07:22:10 +00002198 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002199 { /* This was really a NUL. */
2200 yy_state_type yy_next_state;
2201
Reid Spencered951ea2007-05-19 07:22:10 +00002202 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002203
Reid Spencered951ea2007-05-19 07:22:10 +00002204 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002205
2206 /* Okay, we're now positioned to make the NUL
2207 * transition. We couldn't have
2208 * yy_get_previous_state() go ahead and do it
2209 * for us because it doesn't know how to deal
2210 * with the possibility of jamming (and we don't
2211 * want to build jamming into it because then it
2212 * will run more slowly).
2213 */
2214
2215 yy_next_state = yy_try_NUL_trans( yy_current_state );
2216
Reid Spencered951ea2007-05-19 07:22:10 +00002217 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002218
2219 if ( yy_next_state )
2220 {
2221 /* Consume the NUL. */
Reid Spencered951ea2007-05-19 07:22:10 +00002222 yy_cp = ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002223 yy_current_state = yy_next_state;
2224 goto yy_match;
2225 }
2226
2227 else
2228 {
Reid Spencered951ea2007-05-19 07:22:10 +00002229 yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002230 goto yy_find_action;
2231 }
2232 }
2233
Reid Spencered951ea2007-05-19 07:22:10 +00002234 else switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002235 {
2236 case EOB_ACT_END_OF_FILE:
2237 {
Reid Spencered951ea2007-05-19 07:22:10 +00002238 yy_did_buffer_switch_on_eof = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002239
Reid Spencered951ea2007-05-19 07:22:10 +00002240 if ( yywrap() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002241 {
2242 /* Note: because we've taken care in
2243 * yy_get_next_buffer() to have set up
Reid Spencered951ea2007-05-19 07:22:10 +00002244 * yytext, we can now set up
Reid Spencer68a24bd2005-08-27 18:50:39 +00002245 * yy_c_buf_p so that if some total
2246 * hoser (like flex itself) wants to
2247 * call the scanner after we return the
2248 * YY_NULL, it'll still work - another
2249 * YY_NULL will get returned.
2250 */
Reid Spencered951ea2007-05-19 07:22:10 +00002251 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002252
2253 yy_act = YY_STATE_EOF(YY_START);
2254 goto do_action;
2255 }
2256
2257 else
2258 {
Reid Spencered951ea2007-05-19 07:22:10 +00002259 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002260 YY_NEW_FILE;
2261 }
2262 break;
2263 }
2264
2265 case EOB_ACT_CONTINUE_SCAN:
Reid Spencered951ea2007-05-19 07:22:10 +00002266 yy_c_buf_p =
2267 yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002268
Reid Spencered951ea2007-05-19 07:22:10 +00002269 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002270
Reid Spencered951ea2007-05-19 07:22:10 +00002271 yy_cp = yy_c_buf_p;
2272 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002273 goto yy_match;
2274
2275 case EOB_ACT_LAST_MATCH:
Reid Spencered951ea2007-05-19 07:22:10 +00002276 yy_c_buf_p =
2277 &yy_current_buffer->yy_ch_buf[yy_n_chars];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002278
Reid Spencered951ea2007-05-19 07:22:10 +00002279 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002280
Reid Spencered951ea2007-05-19 07:22:10 +00002281 yy_cp = yy_c_buf_p;
2282 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002283 goto yy_find_action;
2284 }
2285 break;
2286 }
2287
2288 default:
2289 YY_FATAL_ERROR(
2290 "fatal flex scanner internal error--no action found" );
2291 } /* end of action switch */
2292 } /* end of scanning one token */
Reid Spencered951ea2007-05-19 07:22:10 +00002293 } /* end of yylex */
2294
Reid Spencer68a24bd2005-08-27 18:50:39 +00002295
2296/* yy_get_next_buffer - try to read in a new buffer
2297 *
2298 * Returns a code representing an action:
2299 * EOB_ACT_LAST_MATCH -
2300 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2301 * EOB_ACT_END_OF_FILE - end of file
2302 */
Reid Spencered951ea2007-05-19 07:22:10 +00002303
2304static int yy_get_next_buffer()
2305 {
2306 register char *dest = yy_current_buffer->yy_ch_buf;
2307 register char *source = yytext_ptr;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002308 register int number_to_move, i;
2309 int ret_val;
2310
Reid Spencered951ea2007-05-19 07:22:10 +00002311 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002312 YY_FATAL_ERROR(
2313 "fatal flex scanner internal error--end of buffer missed" );
2314
Reid Spencered951ea2007-05-19 07:22:10 +00002315 if ( yy_current_buffer->yy_fill_buffer == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002316 { /* Don't try to fill the buffer, so this is an EOF. */
Reid Spencered951ea2007-05-19 07:22:10 +00002317 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002318 {
2319 /* We matched a single character, the EOB, so
2320 * treat this as a final EOF.
2321 */
2322 return EOB_ACT_END_OF_FILE;
2323 }
2324
2325 else
2326 {
2327 /* We matched some text prior to the EOB, first
2328 * process it.
2329 */
2330 return EOB_ACT_LAST_MATCH;
2331 }
2332 }
2333
2334 /* Try to read more data. */
2335
2336 /* First move last chars to start of buffer. */
Reid Spencered951ea2007-05-19 07:22:10 +00002337 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002338
2339 for ( i = 0; i < number_to_move; ++i )
2340 *(dest++) = *(source++);
2341
Reid Spencered951ea2007-05-19 07:22:10 +00002342 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002343 /* don't do the read, it's not guaranteed to return an EOF,
2344 * just force an EOF
2345 */
Reid Spencered951ea2007-05-19 07:22:10 +00002346 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002347
2348 else
2349 {
Reid Spencered951ea2007-05-19 07:22:10 +00002350 int num_to_read =
2351 yy_current_buffer->yy_buf_size - number_to_move - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002352
2353 while ( num_to_read <= 0 )
2354 { /* Not enough room in the buffer - grow it. */
Reid Spencered951ea2007-05-19 07:22:10 +00002355#ifdef YY_USES_REJECT
2356 YY_FATAL_ERROR(
2357"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2358#else
Reid Spencer68a24bd2005-08-27 18:50:39 +00002359
2360 /* just a shorter name for the current buffer */
Reid Spencered951ea2007-05-19 07:22:10 +00002361 YY_BUFFER_STATE b = yy_current_buffer;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002362
2363 int yy_c_buf_p_offset =
Reid Spencered951ea2007-05-19 07:22:10 +00002364 (int) (yy_c_buf_p - b->yy_ch_buf);
Reid Spencer68a24bd2005-08-27 18:50:39 +00002365
2366 if ( b->yy_is_our_buffer )
2367 {
2368 int new_size = b->yy_buf_size * 2;
2369
2370 if ( new_size <= 0 )
2371 b->yy_buf_size += b->yy_buf_size / 8;
2372 else
2373 b->yy_buf_size *= 2;
2374
2375 b->yy_ch_buf = (char *)
2376 /* Include room in for 2 EOB chars. */
Reid Spencered951ea2007-05-19 07:22:10 +00002377 yy_flex_realloc( (void *) b->yy_ch_buf,
2378 b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002379 }
2380 else
2381 /* Can't grow it, we don't own it. */
2382 b->yy_ch_buf = 0;
2383
2384 if ( ! b->yy_ch_buf )
2385 YY_FATAL_ERROR(
2386 "fatal error - scanner input buffer overflow" );
2387
Reid Spencered951ea2007-05-19 07:22:10 +00002388 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002389
Reid Spencered951ea2007-05-19 07:22:10 +00002390 num_to_read = yy_current_buffer->yy_buf_size -
Reid Spencer68a24bd2005-08-27 18:50:39 +00002391 number_to_move - 1;
Reid Spencered951ea2007-05-19 07:22:10 +00002392#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002393 }
2394
2395 if ( num_to_read > YY_READ_BUF_SIZE )
2396 num_to_read = YY_READ_BUF_SIZE;
2397
2398 /* Read in more data. */
Reid Spencered951ea2007-05-19 07:22:10 +00002399 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
2400 yy_n_chars, num_to_read );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002401
Reid Spencered951ea2007-05-19 07:22:10 +00002402 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002403 }
2404
Reid Spencered951ea2007-05-19 07:22:10 +00002405 if ( yy_n_chars == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002406 {
2407 if ( number_to_move == YY_MORE_ADJ )
2408 {
2409 ret_val = EOB_ACT_END_OF_FILE;
Reid Spencered951ea2007-05-19 07:22:10 +00002410 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002411 }
2412
2413 else
2414 {
2415 ret_val = EOB_ACT_LAST_MATCH;
Reid Spencered951ea2007-05-19 07:22:10 +00002416 yy_current_buffer->yy_buffer_status =
Reid Spencer68a24bd2005-08-27 18:50:39 +00002417 YY_BUFFER_EOF_PENDING;
2418 }
2419 }
2420
2421 else
2422 ret_val = EOB_ACT_CONTINUE_SCAN;
2423
Reid Spencered951ea2007-05-19 07:22:10 +00002424 yy_n_chars += number_to_move;
2425 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
2426 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002427
Reid Spencered951ea2007-05-19 07:22:10 +00002428 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002429
2430 return ret_val;
Reid Spencered951ea2007-05-19 07:22:10 +00002431 }
2432
Reid Spencer68a24bd2005-08-27 18:50:39 +00002433
2434/* yy_get_previous_state - get the state just before the EOB char was reached */
2435
Reid Spencered951ea2007-05-19 07:22:10 +00002436static yy_state_type yy_get_previous_state()
2437 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002438 register yy_state_type yy_current_state;
2439 register char *yy_cp;
2440
Reid Spencered951ea2007-05-19 07:22:10 +00002441 yy_current_state = yy_start;
2442 yy_state_ptr = yy_state_buf;
2443 *yy_state_ptr++ = yy_current_state;
2444
2445 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002446 {
2447 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2448 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2449 {
2450 yy_current_state = (int) yy_def[yy_current_state];
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002451 if ( yy_current_state >= 600 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002452 yy_c = yy_meta[(unsigned int) yy_c];
2453 }
2454 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Reid Spencered951ea2007-05-19 07:22:10 +00002455 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002456 }
2457
2458 return yy_current_state;
Reid Spencered951ea2007-05-19 07:22:10 +00002459 }
2460
Reid Spencer68a24bd2005-08-27 18:50:39 +00002461
2462/* yy_try_NUL_trans - try to make a transition on the NUL character
2463 *
2464 * synopsis
2465 * next_state = yy_try_NUL_trans( current_state );
2466 */
Reid Spencered951ea2007-05-19 07:22:10 +00002467
2468#ifdef YY_USE_PROTOS
2469static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
2470#else
2471static yy_state_type yy_try_NUL_trans( yy_current_state )
2472yy_state_type yy_current_state;
2473#endif
2474 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002475 register int yy_is_jam;
2476
2477 register YY_CHAR yy_c = 1;
2478 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2479 {
2480 yy_current_state = (int) yy_def[yy_current_state];
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002481 if ( yy_current_state >= 600 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002482 yy_c = yy_meta[(unsigned int) yy_c];
2483 }
2484 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002485 yy_is_jam = (yy_current_state == 599);
Reid Spencered951ea2007-05-19 07:22:10 +00002486 if ( ! yy_is_jam )
2487 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002488
2489 return yy_is_jam ? 0 : yy_current_state;
Reid Spencered951ea2007-05-19 07:22:10 +00002490 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002491
2492
Reid Spencered951ea2007-05-19 07:22:10 +00002493#ifndef YY_NO_UNPUT
2494#ifdef YY_USE_PROTOS
2495static inline void yyunput( int c, register char *yy_bp )
2496#else
2497static inline void yyunput( c, yy_bp )
2498int c;
2499register char *yy_bp;
2500#endif
2501 {
2502 register char *yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002503
Reid Spencered951ea2007-05-19 07:22:10 +00002504 /* undo effects of setting up yytext */
2505 *yy_cp = yy_hold_char;
2506
2507 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002508 { /* need to shift things up to make room */
2509 /* +2 for EOB chars. */
Reid Spencered951ea2007-05-19 07:22:10 +00002510 register int number_to_move = yy_n_chars + 2;
2511 register char *dest = &yy_current_buffer->yy_ch_buf[
2512 yy_current_buffer->yy_buf_size + 2];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002513 register char *source =
Reid Spencered951ea2007-05-19 07:22:10 +00002514 &yy_current_buffer->yy_ch_buf[number_to_move];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002515
Reid Spencered951ea2007-05-19 07:22:10 +00002516 while ( source > yy_current_buffer->yy_ch_buf )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002517 *--dest = *--source;
2518
2519 yy_cp += (int) (dest - source);
2520 yy_bp += (int) (dest - source);
Reid Spencered951ea2007-05-19 07:22:10 +00002521 yy_current_buffer->yy_n_chars =
2522 yy_n_chars = yy_current_buffer->yy_buf_size;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002523
Reid Spencered951ea2007-05-19 07:22:10 +00002524 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002525 YY_FATAL_ERROR( "flex scanner push-back overflow" );
2526 }
2527
2528 *--yy_cp = (char) c;
2529
Reid Spencered951ea2007-05-19 07:22:10 +00002530 if ( c == '\n' )
2531 --yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002532
Reid Spencered951ea2007-05-19 07:22:10 +00002533 yytext_ptr = yy_bp;
2534 yy_hold_char = *yy_cp;
2535 yy_c_buf_p = yy_cp;
2536 }
2537#endif /* ifndef YY_NO_UNPUT */
2538
Reid Spencer6f407902007-01-13 05:00:46 +00002539
Reid Spencer68a24bd2005-08-27 18:50:39 +00002540#ifdef __cplusplus
Reid Spencered951ea2007-05-19 07:22:10 +00002541static int yyinput()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002542#else
Reid Spencered951ea2007-05-19 07:22:10 +00002543static int input()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002544#endif
Reid Spencered951ea2007-05-19 07:22:10 +00002545 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002546 int c;
2547
Reid Spencered951ea2007-05-19 07:22:10 +00002548 *yy_c_buf_p = yy_hold_char;
2549
2550 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002551 {
2552 /* yy_c_buf_p now points to the character we want to return.
2553 * If this occurs *before* the EOB characters, then it's a
2554 * valid NUL; if not, then we've hit the end of the buffer.
2555 */
Reid Spencered951ea2007-05-19 07:22:10 +00002556 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002557 /* This was really a NUL. */
Reid Spencered951ea2007-05-19 07:22:10 +00002558 *yy_c_buf_p = '\0';
Reid Spencer68a24bd2005-08-27 18:50:39 +00002559
2560 else
2561 { /* need more input */
Reid Spencered951ea2007-05-19 07:22:10 +00002562 int offset = yy_c_buf_p - yytext_ptr;
2563 ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002564
Reid Spencered951ea2007-05-19 07:22:10 +00002565 switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002566 {
2567 case EOB_ACT_LAST_MATCH:
2568 /* This happens because yy_g_n_b()
2569 * sees that we've accumulated a
2570 * token and flags that we need to
2571 * try matching the token before
2572 * proceeding. But for input(),
2573 * there's no matching to consider.
2574 * So convert the EOB_ACT_LAST_MATCH
2575 * to EOB_ACT_END_OF_FILE.
2576 */
2577
2578 /* Reset buffer status. */
Reid Spencered951ea2007-05-19 07:22:10 +00002579 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002580
Reid Spencered951ea2007-05-19 07:22:10 +00002581 /* fall through */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002582
2583 case EOB_ACT_END_OF_FILE:
2584 {
Reid Spencered951ea2007-05-19 07:22:10 +00002585 if ( yywrap() )
Reid Spencer61c83e02006-08-18 08:43:06 +00002586 return EOF;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002587
Reid Spencered951ea2007-05-19 07:22:10 +00002588 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002589 YY_NEW_FILE;
2590#ifdef __cplusplus
2591 return yyinput();
2592#else
2593 return input();
2594#endif
2595 }
2596
2597 case EOB_ACT_CONTINUE_SCAN:
Reid Spencered951ea2007-05-19 07:22:10 +00002598 yy_c_buf_p = yytext_ptr + offset;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002599 break;
2600 }
2601 }
2602 }
2603
Reid Spencered951ea2007-05-19 07:22:10 +00002604 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */
2605 *yy_c_buf_p = '\0'; /* preserve yytext */
2606 yy_hold_char = *++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002607
2608 if ( c == '\n' )
Reid Spencered951ea2007-05-19 07:22:10 +00002609 ++yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002610
2611 return c;
Reid Spencered951ea2007-05-19 07:22:10 +00002612 }
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002613
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002614
Reid Spencered951ea2007-05-19 07:22:10 +00002615#ifdef YY_USE_PROTOS
2616void yyrestart( FILE *input_file )
2617#else
2618void yyrestart( input_file )
2619FILE *input_file;
2620#endif
2621 {
2622 if ( ! yy_current_buffer )
2623 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
2624
2625 yy_init_buffer( yy_current_buffer, input_file );
2626 yy_load_buffer_state();
Reid Spencer6f407902007-01-13 05:00:46 +00002627 }
Reid Spencer41dff5e2007-01-26 08:05:27 +00002628
Reid Spencer68a24bd2005-08-27 18:50:39 +00002629
Reid Spencered951ea2007-05-19 07:22:10 +00002630#ifdef YY_USE_PROTOS
2631void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
2632#else
2633void yy_switch_to_buffer( new_buffer )
2634YY_BUFFER_STATE new_buffer;
2635#endif
2636 {
2637 if ( yy_current_buffer == new_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002638 return;
2639
Reid Spencered951ea2007-05-19 07:22:10 +00002640 if ( yy_current_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002641 {
2642 /* Flush out information for old buffer. */
Reid Spencered951ea2007-05-19 07:22:10 +00002643 *yy_c_buf_p = yy_hold_char;
2644 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
2645 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002646 }
2647
Reid Spencered951ea2007-05-19 07:22:10 +00002648 yy_current_buffer = new_buffer;
2649 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002650
2651 /* We don't actually know whether we did this switch during
Reid Spencered951ea2007-05-19 07:22:10 +00002652 * EOF (yywrap()) processing, but the only time this flag
2653 * is looked at is after yywrap() is called, so it's safe
Reid Spencer68a24bd2005-08-27 18:50:39 +00002654 * to go ahead and always set it.
2655 */
Reid Spencered951ea2007-05-19 07:22:10 +00002656 yy_did_buffer_switch_on_eof = 1;
2657 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002658
2659
Reid Spencered951ea2007-05-19 07:22:10 +00002660#ifdef YY_USE_PROTOS
2661void yy_load_buffer_state( void )
2662#else
2663void yy_load_buffer_state()
2664#endif
2665 {
2666 yy_n_chars = yy_current_buffer->yy_n_chars;
2667 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
2668 yyin = yy_current_buffer->yy_input_file;
2669 yy_hold_char = *yy_c_buf_p;
2670 }
2671
2672
2673#ifdef YY_USE_PROTOS
2674YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
2675#else
2676YY_BUFFER_STATE yy_create_buffer( file, size )
2677FILE *file;
2678int size;
2679#endif
2680 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002681 YY_BUFFER_STATE b;
Reid Spencered951ea2007-05-19 07:22:10 +00002682
2683 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002684 if ( ! b )
Reid Spencered951ea2007-05-19 07:22:10 +00002685 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002686
2687 b->yy_buf_size = size;
2688
2689 /* yy_ch_buf has to be 2 characters longer than the size given because
2690 * we need to put in 2 end-of-buffer characters.
2691 */
Reid Spencered951ea2007-05-19 07:22:10 +00002692 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002693 if ( ! b->yy_ch_buf )
Reid Spencered951ea2007-05-19 07:22:10 +00002694 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002695
2696 b->yy_is_our_buffer = 1;
2697
Reid Spencered951ea2007-05-19 07:22:10 +00002698 yy_init_buffer( b, file );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002699
2700 return b;
Reid Spencered951ea2007-05-19 07:22:10 +00002701 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002702
Reid Spencered951ea2007-05-19 07:22:10 +00002703
2704#ifdef YY_USE_PROTOS
2705void yy_delete_buffer( YY_BUFFER_STATE b )
2706#else
2707void yy_delete_buffer( b )
2708YY_BUFFER_STATE b;
2709#endif
2710 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002711 if ( ! b )
2712 return;
2713
Reid Spencered951ea2007-05-19 07:22:10 +00002714 if ( b == yy_current_buffer )
2715 yy_current_buffer = (YY_BUFFER_STATE) 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002716
2717 if ( b->yy_is_our_buffer )
Reid Spencered951ea2007-05-19 07:22:10 +00002718 yy_flex_free( (void *) b->yy_ch_buf );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002719
Reid Spencered951ea2007-05-19 07:22:10 +00002720 yy_flex_free( (void *) b );
2721 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002722
2723
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002724#ifndef YY_ALWAYS_INTERACTIVE
2725#ifndef YY_NEVER_INTERACTIVE
2726extern int isatty YY_PROTO(( int ));
2727#endif
2728#endif
Reid Spencered951ea2007-05-19 07:22:10 +00002729
2730#ifdef YY_USE_PROTOS
2731void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
2732#else
2733void yy_init_buffer( b, file )
2734YY_BUFFER_STATE b;
2735FILE *file;
2736#endif
2737
2738
2739 {
2740 yy_flush_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002741
2742 b->yy_input_file = file;
2743 b->yy_fill_buffer = 1;
2744
Reid Spencered951ea2007-05-19 07:22:10 +00002745#if YY_ALWAYS_INTERACTIVE
2746 b->yy_is_interactive = 1;
2747#else
2748#if YY_NEVER_INTERACTIVE
2749 b->yy_is_interactive = 0;
2750#else
2751 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
2752#endif
2753#endif
2754 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002755
2756
Reid Spencered951ea2007-05-19 07:22:10 +00002757#ifdef YY_USE_PROTOS
2758void yy_flush_buffer( YY_BUFFER_STATE b )
2759#else
2760void yy_flush_buffer( b )
2761YY_BUFFER_STATE b;
2762#endif
2763
2764 {
2765 if ( ! b )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002766 return;
2767
2768 b->yy_n_chars = 0;
2769
2770 /* We always need two end-of-buffer characters. The first causes
2771 * a transition to the end-of-buffer state. The second causes
2772 * a jam in that state.
2773 */
2774 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
2775 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
2776
2777 b->yy_buf_pos = &b->yy_ch_buf[0];
2778
2779 b->yy_at_bol = 1;
2780 b->yy_buffer_status = YY_BUFFER_NEW;
2781
Reid Spencered951ea2007-05-19 07:22:10 +00002782 if ( b == yy_current_buffer )
2783 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002784 }
2785
2786
Reid Spencered951ea2007-05-19 07:22:10 +00002787#ifndef YY_NO_SCAN_BUFFER
2788#ifdef YY_USE_PROTOS
2789YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
2790#else
2791YY_BUFFER_STATE yy_scan_buffer( base, size )
2792char *base;
2793yy_size_t size;
2794#endif
2795 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002796 YY_BUFFER_STATE b;
Reid Spencered951ea2007-05-19 07:22:10 +00002797
Reid Spencer68a24bd2005-08-27 18:50:39 +00002798 if ( size < 2 ||
2799 base[size-2] != YY_END_OF_BUFFER_CHAR ||
2800 base[size-1] != YY_END_OF_BUFFER_CHAR )
2801 /* They forgot to leave room for the EOB's. */
2802 return 0;
2803
Reid Spencered951ea2007-05-19 07:22:10 +00002804 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002805 if ( ! b )
Reid Spencered951ea2007-05-19 07:22:10 +00002806 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002807
2808 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
2809 b->yy_buf_pos = b->yy_ch_buf = base;
2810 b->yy_is_our_buffer = 0;
2811 b->yy_input_file = 0;
2812 b->yy_n_chars = b->yy_buf_size;
2813 b->yy_is_interactive = 0;
2814 b->yy_at_bol = 1;
2815 b->yy_fill_buffer = 0;
2816 b->yy_buffer_status = YY_BUFFER_NEW;
2817
Reid Spencered951ea2007-05-19 07:22:10 +00002818 yy_switch_to_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002819
2820 return b;
Reid Spencered951ea2007-05-19 07:22:10 +00002821 }
2822#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002823
2824
Reid Spencered951ea2007-05-19 07:22:10 +00002825#ifndef YY_NO_SCAN_STRING
2826#ifdef YY_USE_PROTOS
2827YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
2828#else
2829YY_BUFFER_STATE yy_scan_string( yy_str )
2830yyconst char *yy_str;
2831#endif
2832 {
2833 int len;
2834 for ( len = 0; yy_str[len]; ++len )
2835 ;
2836
2837 return yy_scan_bytes( yy_str, len );
2838 }
2839#endif
2840
2841
2842#ifndef YY_NO_SCAN_BYTES
2843#ifdef YY_USE_PROTOS
2844YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
2845#else
2846YY_BUFFER_STATE yy_scan_bytes( bytes, len )
2847yyconst char *bytes;
2848int len;
2849#endif
2850 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002851 YY_BUFFER_STATE b;
2852 char *buf;
2853 yy_size_t n;
2854 int i;
Reid Spencered951ea2007-05-19 07:22:10 +00002855
Reid Spencer68a24bd2005-08-27 18:50:39 +00002856 /* Get memory for full buffer, including space for trailing EOB's. */
Reid Spencered951ea2007-05-19 07:22:10 +00002857 n = len + 2;
2858 buf = (char *) yy_flex_alloc( n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002859 if ( ! buf )
Reid Spencered951ea2007-05-19 07:22:10 +00002860 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002861
Reid Spencered951ea2007-05-19 07:22:10 +00002862 for ( i = 0; i < len; ++i )
2863 buf[i] = bytes[i];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002864
Reid Spencered951ea2007-05-19 07:22:10 +00002865 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002866
Reid Spencered951ea2007-05-19 07:22:10 +00002867 b = yy_scan_buffer( buf, n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002868 if ( ! b )
Reid Spencered951ea2007-05-19 07:22:10 +00002869 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002870
2871 /* It's okay to grow etc. this buffer, and we should throw it
2872 * away when we're done.
2873 */
2874 b->yy_is_our_buffer = 1;
2875
2876 return b;
Reid Spencered951ea2007-05-19 07:22:10 +00002877 }
2878#endif
2879
2880
2881#ifndef YY_NO_PUSH_STATE
2882#ifdef YY_USE_PROTOS
2883static void yy_push_state( int new_state )
2884#else
2885static void yy_push_state( new_state )
2886int new_state;
2887#endif
2888 {
2889 if ( yy_start_stack_ptr >= yy_start_stack_depth )
2890 {
2891 yy_size_t new_size;
2892
2893 yy_start_stack_depth += YY_START_STACK_INCR;
2894 new_size = yy_start_stack_depth * sizeof( int );
2895
2896 if ( ! yy_start_stack )
2897 yy_start_stack = (int *) yy_flex_alloc( new_size );
2898
2899 else
2900 yy_start_stack = (int *) yy_flex_realloc(
2901 (void *) yy_start_stack, new_size );
2902
2903 if ( ! yy_start_stack )
2904 YY_FATAL_ERROR(
2905 "out of memory expanding start-condition stack" );
2906 }
2907
2908 yy_start_stack[yy_start_stack_ptr++] = YY_START;
2909
2910 BEGIN(new_state);
2911 }
2912#endif
2913
2914
2915#ifndef YY_NO_POP_STATE
2916static void yy_pop_state()
2917 {
2918 if ( --yy_start_stack_ptr < 0 )
2919 YY_FATAL_ERROR( "start-condition stack underflow" );
2920
2921 BEGIN(yy_start_stack[yy_start_stack_ptr]);
2922 }
2923#endif
2924
2925
2926#ifndef YY_NO_TOP_STATE
2927static int yy_top_state()
2928 {
2929 return yy_start_stack[yy_start_stack_ptr - 1];
2930 }
2931#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002932
2933#ifndef YY_EXIT_FAILURE
2934#define YY_EXIT_FAILURE 2
2935#endif
2936
Reid Spencered951ea2007-05-19 07:22:10 +00002937#ifdef YY_USE_PROTOS
2938static void yy_fatal_error( yyconst char msg[] )
2939#else
2940static void yy_fatal_error( msg )
2941char msg[];
2942#endif
2943 {
2944 (void) fprintf( stderr, "%s\n", msg );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002945 exit( YY_EXIT_FAILURE );
Reid Spencered951ea2007-05-19 07:22:10 +00002946 }
2947
2948
Reid Spencer68a24bd2005-08-27 18:50:39 +00002949
2950/* Redefine yyless() so it works in section 3 code. */
2951
2952#undef yyless
2953#define yyless(n) \
2954 do \
2955 { \
Reid Spencered951ea2007-05-19 07:22:10 +00002956 /* Undo effects of setting up yytext. */ \
2957 yytext[yyleng] = yy_hold_char; \
2958 yy_c_buf_p = yytext + n; \
2959 yy_hold_char = *yy_c_buf_p; \
2960 *yy_c_buf_p = '\0'; \
2961 yyleng = n; \
Reid Spencer68a24bd2005-08-27 18:50:39 +00002962 } \
2963 while ( 0 )
2964
2965
Reid Spencered951ea2007-05-19 07:22:10 +00002966/* Internal utility routines. */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002967
2968#ifndef yytext_ptr
Reid Spencered951ea2007-05-19 07:22:10 +00002969#ifdef YY_USE_PROTOS
2970static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
2971#else
2972static void yy_flex_strncpy( s1, s2, n )
2973char *s1;
2974yyconst char *s2;
2975int n;
2976#endif
2977 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002978 register int i;
2979 for ( i = 0; i < n; ++i )
2980 s1[i] = s2[i];
Reid Spencered951ea2007-05-19 07:22:10 +00002981 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002982#endif
2983
2984#ifdef YY_NEED_STRLEN
Reid Spencered951ea2007-05-19 07:22:10 +00002985#ifdef YY_USE_PROTOS
2986static int yy_flex_strlen( yyconst char *s )
2987#else
2988static int yy_flex_strlen( s )
2989yyconst char *s;
2990#endif
2991 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002992 register int n;
2993 for ( n = 0; s[n]; ++n )
2994 ;
2995
2996 return n;
Reid Spencered951ea2007-05-19 07:22:10 +00002997 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002998#endif
2999
Reid Spencer9c9b63a2007-04-28 16:07:31 +00003000
Reid Spencered951ea2007-05-19 07:22:10 +00003001#ifdef YY_USE_PROTOS
3002static void *yy_flex_alloc( yy_size_t size )
3003#else
3004static void *yy_flex_alloc( size )
3005yy_size_t size;
3006#endif
3007 {
3008 return (void *) malloc( size );
3009 }
3010
3011#ifdef YY_USE_PROTOS
3012static inline void *yy_flex_realloc( void *ptr, yy_size_t size )
3013#else
3014static inline void *yy_flex_realloc( ptr, size )
3015void *ptr;
3016yy_size_t size;
3017#endif
3018 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00003019 /* The cast to (char *) in the following accommodates both
3020 * implementations that use char* generic pointers, and those
3021 * that use void* generic pointers. It works with the latter
3022 * because both ANSI C and C++ allow castless assignment from
3023 * any pointer type to void*, and deal with argument conversions
3024 * as though doing an assignment.
3025 */
3026 return (void *) realloc( (char *) ptr, size );
Reid Spencered951ea2007-05-19 07:22:10 +00003027 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00003028
Reid Spencered951ea2007-05-19 07:22:10 +00003029#ifdef YY_USE_PROTOS
3030static void yy_flex_free( void *ptr )
3031#else
3032static void yy_flex_free( ptr )
3033void *ptr;
3034#endif
3035 {
3036 free( ptr );
3037 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00003038
Reid Spencered951ea2007-05-19 07:22:10 +00003039#if YY_MAIN
3040int main()
3041 {
3042 yylex();
3043 return 0;
3044 }
3045#endif
Dale Johannesen320fc8a2007-08-03 01:03:46 +00003046#line 454 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Chris Lattner2fecc0f2006-02-15 07:02:59 +00003047