blob: c25333adeac1fd07246f63185a3d704865011751 [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 Johannesenc72cd7e2007-09-11 18:33:39 +0000311#define YY_NUM_RULES 152
312#define YY_END_OF_BUFFER 153
313static yyconst short int yy_acclist[233] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000314 { 0,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000315 153, 151, 152, 150, 151, 152, 150, 152, 151, 152,
316 151, 152, 151, 152, 151, 152, 151, 152, 151, 152,
317 140, 151, 152, 140, 151, 152, 1, 151, 152, 151,
318 152, 151, 152, 151, 152, 151, 152, 151, 152, 151,
319 152, 151, 152, 151, 152, 151, 152, 151, 152, 151,
320 152, 151, 152, 151, 152, 151, 152, 151, 152, 151,
321 152, 151, 152, 151, 152, 151, 152, 151, 152, 151,
322 152, 151, 152, 151, 152, 137, 135, 133, 143, 141,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000323 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,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000329 136, 145, 145, 147, 148, 149, 76, 103, 81, 70,
330 126, 73, 80, 127, 75, 52, 24, 142, 69, 106,
331 72, 47, 26, 4, 62, 68, 71, 55, 12, 105,
332 145, 34, 32, 2, 51, 5, 56, 59, 108, 46,
333 61, 53, 128, 104, 23, 54, 125, 41, 7, 57,
334 40, 112, 111, 8, 16, 121, 124, 35, 63, 116,
335 110, 120, 27, 28, 109, 122, 117, 115, 6, 29,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000336
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000337 107, 50, 33, 44, 45, 9, 19, 10, 113, 11,
338 49, 48, 114, 31, 58, 13, 15, 14, 60, 17,
339 30, 37, 18, 123, 20, 129, 131, 132, 42, 130,
340 43, 21
Reid Spencer68a24bd2005-08-27 18:50:39 +0000341 } ;
342
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000343static yyconst short int yy_accept[607] =
Reid Spencered951ea2007-05-19 07:22:10 +0000344 { 0,
345 1, 1, 1, 2, 4, 7, 9, 11, 13, 15,
346 17, 19, 21, 24, 27, 30, 32, 34, 36, 38,
347 40, 42, 44, 46, 48, 50, 52, 54, 56, 58,
348 60, 62, 64, 66, 68, 70, 72, 74, 76, 76,
349 77, 77, 78, 78, 79, 80, 80, 81, 81, 82,
350 83, 83, 84, 84, 85, 86, 86, 86, 86, 86,
Reid Spencerb8f85052007-07-31 03:50:36 +0000351 86, 86, 86, 87, 87, 87, 88, 88, 88, 88,
352 88, 88, 88, 89, 89, 89, 89, 89, 89, 89,
353 89, 89, 89, 89, 90, 90, 90, 90, 90, 90,
354 90, 90, 90, 90, 91, 91, 91, 91, 91, 91,
Reid Spencered951ea2007-05-19 07:22:10 +0000355
Reid Spencerb8f85052007-07-31 03:50:36 +0000356 91, 91, 92, 92, 92, 92, 92, 92, 92, 92,
357 92, 92, 92, 92, 92, 92, 92, 92, 92, 92,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000358 92, 93, 93, 93, 93, 93, 93, 93, 93, 93,
359 93, 93, 93, 93, 93, 93, 93, 94, 94, 95,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000360 96, 97, 98, 99, 99, 100, 100, 100, 100, 100,
361 101, 102, 103, 103, 103, 104, 104, 104, 105, 105,
362 105, 105, 105, 106, 106, 106, 106, 106, 106, 106,
363 106, 106, 107, 107, 107, 107, 107, 107, 107, 107,
Reid Spencered951ea2007-05-19 07:22:10 +0000364 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000365 107, 107, 107, 107, 107, 107, 107, 108, 108, 108,
Reid Spencered951ea2007-05-19 07:22:10 +0000366
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000367 108, 108, 108, 109, 110, 111, 112, 113, 114, 114,
368 115, 116, 116, 116, 116, 117, 117, 117, 117, 117,
369 117, 118, 119, 120, 120, 120, 120, 120, 121, 122,
370 122, 122, 123, 123, 123, 123, 123, 123, 123, 123,
371 123, 124, 125, 126, 126, 127, 128, 128, 129, 130,
372 130, 130, 130, 130, 130, 130, 130, 130, 131, 131,
373 131, 132, 133, 133, 133, 133, 134, 135, 136, 137,
374 137, 137, 137, 137, 138, 138, 138, 138, 139, 139,
375 139, 139, 139, 139, 139, 139, 139, 139, 139, 139,
376 139, 139, 140, 141, 141, 141, 141, 141, 141, 142,
Reid Spencered951ea2007-05-19 07:22:10 +0000377
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000378 143, 143, 143, 143, 144, 144, 144, 144, 144, 144,
379 144, 144, 145, 146, 146, 146, 147, 147, 147, 147,
380 148, 148, 148, 148, 148, 149, 150, 150, 150, 151,
381 151, 151, 151, 151, 152, 153, 153, 153, 154, 154,
382 154, 154, 155, 155, 156, 157, 157, 157, 157, 157,
383 158, 158, 159, 159, 160, 160, 160, 161, 162, 163,
384 164, 164, 164, 165, 165, 166, 166, 166, 166, 166,
385 166, 166, 166, 166, 166, 166, 166, 167, 167, 168,
386 169, 170, 170, 170, 170, 170, 170, 170, 171, 171,
387 171, 171, 171, 172, 172, 172, 172, 172, 172, 172,
Reid Spencered951ea2007-05-19 07:22:10 +0000388
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000389 172, 172, 172, 172, 172, 172, 172, 173, 173, 173,
390 173, 173, 174, 174, 174, 174, 174, 175, 175, 176,
391 176, 176, 176, 176, 176, 176, 176, 176, 176, 177,
392 178, 178, 178, 179, 179, 179, 179, 180, 180, 180,
393 180, 181, 181, 181, 182, 183, 184, 184, 184, 185,
394 186, 186, 186, 186, 187, 187, 188, 189, 189, 189,
395 189, 190, 190, 190, 190, 190, 191, 191, 191, 191,
396 192, 193, 194, 194, 195, 196, 196, 197, 198, 198,
397 198, 198, 198, 198, 198, 198, 199, 199, 199, 200,
398 201, 201, 201, 201, 201, 201, 202, 202, 202, 202,
Reid Spencered951ea2007-05-19 07:22:10 +0000399
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000400 202, 202, 203, 203, 203, 203, 203, 203, 204, 204,
401 204, 205, 205, 205, 205, 205, 205, 205, 206, 206,
402 206, 207, 207, 207, 207, 207, 208, 208, 208, 208,
403 209, 210, 211, 212, 213, 213, 213, 214, 214, 214,
404 214, 214, 215, 215, 216, 216, 216, 217, 217, 218,
405 219, 219, 219, 219, 219, 220, 221, 221, 221, 221,
406 221, 221, 221, 221, 222, 222, 222, 222, 222, 222,
407 223, 223, 223, 223, 223, 223, 224, 224, 224, 224,
408 224, 224, 225, 225, 225, 225, 225, 225, 225, 225,
409 226, 226, 226, 226, 226, 227, 228, 229, 229, 230,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000410
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000411 230, 231, 232, 232, 233, 233
Reid Spencered951ea2007-05-19 07:22:10 +0000412 } ;
413
414static yyconst int yy_ec[256] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000415 { 0,
416 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
417 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
418 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
419 1, 2, 1, 4, 1, 5, 6, 1, 1, 1,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000420 1, 1, 7, 1, 8, 9, 1, 10, 11, 12,
421 13, 13, 13, 14, 13, 15, 13, 16, 17, 1,
422 1, 1, 1, 18, 19, 19, 19, 19, 20, 19,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000423 5, 5, 5, 5, 21, 22, 23, 5, 5, 5,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000424 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000425 1, 1, 1, 1, 24, 1, 25, 26, 27, 28,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000426
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000427 29, 30, 31, 32, 33, 5, 34, 35, 36, 37,
428 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
429 48, 49, 1, 1, 1, 1, 1, 1, 1, 1,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000430 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
431 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
432 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
433 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
434 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
435 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
436 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
437
438 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
439 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
440 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
441 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
442 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
443 1, 1, 1, 1, 1
444 } ;
445
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000446static yyconst int yy_meta[50] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000447 { 0,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000448 1, 1, 2, 3, 4, 1, 5, 6, 4, 7,
449 7, 7, 7, 7, 7, 8, 1, 1, 4, 9,
450 4, 4, 4, 4, 4, 4, 4, 4, 9, 4,
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +0000451 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000452 4, 4, 4, 4, 4, 4, 4, 4, 4
Reid Spencer68a24bd2005-08-27 18:50:39 +0000453 } ;
454
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000455static yyconst short int yy_base[617] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000456 { 0,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000457 0, 0, 1381, 1382, 1382, 1382, 1376, 1363, 46, 52,
458 58, 66, 74, 1331, 0, 87, 76, 79, 78, 94,
459 77, 106, 109, 63, 138, 130, 141, 140, 151, 155,
460 110, 189, 175, 226, 145, 114, 38, 144, 1373, 1382,
461 1360, 1382, 1371, 0, 233, 259, 265, 119, 303, 1327,
462 323, 0, 1369, 0, 271, 146, 160, 161, 39, 165,
463 188, 64, 1356, 36, 124, 187, 190, 93, 199, 193,
464 195, 221, 1355, 121, 218, 215, 225, 224, 277, 236,
465 248, 271, 273, 175, 274, 283, 240, 284, 278, 126,
466 276, 279, 292, 35, 314, 306, 289, 331, 338, 340,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000467
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000468 315, 343, 345, 341, 346, 347, 348, 349, 350, 359,
469 356, 354, 364, 361, 371, 363, 377, 381, 386, 389,
470 1354, 392, 393, 395, 394, 397, 396, 400, 417, 402,
471 280, 419, 357, 194, 401, 406, 1353, 1364, 1382, 0,
472 395, 1351, 0, 457, 427, 464, 485, 506, 1362, 1382,
473 0, 1349, 435, 421, 1348, 428, 440, 1347, 405, 511,
474 512, 445, 1346, 513, 446, 514, 466, 469, 471, 524,
475 526, 1345, 527, 506, 507, 470, 528, 529, 286, 508,
476 531, 530, 533, 535, 542, 544, 547, 548, 549, 551,
477 555, 407, 558, 559, 563, 564, 1344, 566, 569, 565,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000478
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000479 574, 571, 1343, 1342, 1341, 1340, 1339, 1338, 572, 1337,
480 1336, 575, 577, 579, 1335, 613, 585, 586, 581, 591,
481 1334, 1333, 1332, 587, 589, 598, 599, 1331, 1330, 615,
482 580, 1329, 603, 620, 628, 631, 629, 632, 633, 634,
483 1328, 1327, 1326, 636, 1325, 1324, 637, 1323, 1322, 638,
484 640, 641, 647, 648, 655, 649, 654, 1321, 659, 665,
485 1382, 662, 500, 674, 685, 687, 0, 0, 0, 674,
486 680, 682, 683, 1320, 684, 685, 687, 1319, 686, 688,
487 689, 690, 691, 696, 695, 698, 702, 703, 707, 709,
488 714, 1318, 1317, 710, 720, 711, 717, 723, 1316, 1315,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000489
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000490 727, 724, 729, 1314, 732, 730, 731, 735, 734, 739,
491 740, 1313, 1312, 741, 748, 1311, 736, 744, 749, 1310,
492 750, 754, 759, 760, 0, 1309, 764, 765, 783, 761,
493 773, 774, 766, 1308, 1307, 777, 784, 1306, 785, 788,
494 789, 1305, 791, 1304, 1303, 792, 793, 794, 796, 1302,
495 799, 1301, 800, 1300, 804, 809, 825, 837, 1299, 1298,
496 801, 816, 1297, 813, 1296, 829, 805, 837, 819, 838,
497 842, 820, 841, 845, 847, 848, 1295, 849, 1294, 1293,
498 1292, 850, 853, 854, 856, 855, 857, 1291, 861, 862,
499 863, 866, 1290, 871, 865, 872, 873, 877, 880, 881,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000500
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000501 884, 887, 889, 890, 891, 909, 1382, 900, 899, 893,
502 902, 1289, 901, 903, 904, 908, 1288, 909, 1287, 911,
503 914, 920, 910, 928, 915, 923, 929, 947, 1382, 1286,
504 931, 936, 1285, 938, 939, 940, 1284, 941, 943, 944,
505 1283, 947, 945, 1282, 1281, 1280, 946, 949, 1279, 1278,
506 960, 952, 958, 1277, 964, 1276, 1275, 962, 968, 970,
507 1274, 979, 976, 977, 978, 1273, 981, 982, 980, 1272,
508 1271, 1270, 815, 1269, 1268, 984, 1263, 1260, 983, 986,
509 990, 992, 987, 1001, 995, 1257, 997, 1005, 1245, 1242,
510 1006, 1008, 1009, 1010, 1013, 1230, 1015, 1011, 1017, 1019,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000511
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000512 1021, 1227, 1020, 1023, 1042, 1032, 1022, 1217, 1025, 1037,
513 1214, 1040, 1043, 1047, 1046, 1057, 1053, 1211, 1048, 1055,
514 1204, 1056, 1058, 1061, 1063, 1192, 1062, 1065, 1066, 1191,
515 1190, 1189, 1188, 1187, 1068, 1071, 1186, 1069, 1078, 1072,
516 1077, 1184, 1080, 1182, 1090, 1092, 1181, 1074, 1180, 1179,
517 1093, 1095, 1096, 1097, 1177, 1174, 1100, 1098, 1103, 1105,
518 1104, 1107, 1106, 1173, 1110, 1112, 1116, 1118, 1119, 1170,
519 1120, 1121, 1122, 1130, 1133, 1169, 1127, 1135, 1136, 1137,
520 1142, 821, 1144, 1143, 1138, 1145, 1147, 1148, 1151, 600,
521 1153, 1156, 1150, 1158, 597, 487, 404, 1160, 360, 1165,
Reid Spencerb8f85052007-07-31 03:50:36 +0000522
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000523 281, 234, 1168, 90, 1382, 1209, 1215, 1222, 1231, 1238,
524 1247, 1253, 1262, 1268, 1271, 1276
Reid Spencer68a24bd2005-08-27 18:50:39 +0000525 } ;
526
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000527static yyconst short int yy_def[617] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000528 { 0,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000529 605, 1, 605, 605, 605, 605, 606, 607, 608, 605,
530 607, 607, 607, 13, 609, 610, 607, 607, 607, 607,
531 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
532 607, 607, 607, 607, 607, 607, 607, 607, 606, 605,
533 607, 605, 611, 612, 605, 605, 13, 607, 607, 13,
534 49, 609, 613, 614, 605, 607, 607, 607, 607, 607,
535 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
536 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
537 607, 607, 607, 25, 607, 607, 607, 607, 607, 607,
538 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000539
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000540 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
541 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
542 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
543 607, 607, 607, 607, 607, 607, 605, 611, 605, 612,
544 615, 607, 49, 607, 51, 49, 49, 49, 613, 605,
545 614, 607, 607, 607, 607, 607, 607, 607, 607, 607,
546 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
547 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
548 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
549 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000550
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000551 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
552 607, 607, 607, 607, 607, 49, 607, 607, 607, 607,
553 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
554 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
555 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
556 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
557 605, 615, 616, 605, 144, 144, 146, 147, 148, 607,
558 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
559 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
560 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000561
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000562 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
563 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
564 607, 607, 607, 607, 216, 607, 607, 607, 607, 607,
565 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
566 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
567 607, 607, 607, 607, 607, 607, 607, 605, 607, 607,
568 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
569 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
570 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
571 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000572
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000573 607, 607, 607, 607, 607, 605, 605, 607, 607, 607,
574 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
575 607, 607, 607, 607, 607, 607, 607, 605, 605, 607,
576 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
577 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
578 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
579 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
580 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
581 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
582 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000583
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000584 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
585 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
586 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
587 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
588 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
589 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
590 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
591 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
592 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
593 607, 607, 607, 607, 607, 607, 607, 607, 607, 607,
Reid Spencerb8f85052007-07-31 03:50:36 +0000594
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000595 607, 607, 607, 607, 0, 605, 605, 605, 605, 605,
596 605, 605, 605, 605, 605, 605
Reid Spencer68a24bd2005-08-27 18:50:39 +0000597 } ;
598
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000599static yyconst short int yy_nxt[1432] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000600 { 0,
601 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000602 14, 14, 14, 14, 14, 4, 15, 16, 8, 8,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000603 8, 8, 8, 8, 17, 18, 19, 20, 21, 22,
604 23, 24, 25, 8, 26, 27, 28, 29, 30, 8,
605 31, 32, 33, 34, 35, 36, 37, 8, 38, 43,
606 42, 42, 134, 42, 42, 45, 45, 45, 45, 45,
607 45, 46, 46, 46, 46, 46, 46, 47, 47, 47,
608 47, 47, 47, 42, 48, 135, 198, 156, 42, 42,
609 161, 42, 49, 50, 50, 50, 50, 50, 50, 42,
610 53, 42, 42, 42, 42, 83, 55, 55, 55, 55,
611
612 55, 55, 65, 56, 66, 42, 160, 61, 42, 42,
613 57, 62, 58, 72, 59, 67, 73, 60, 68, 63,
614 51, 42, 69, 74, 42, 42, 64, 142, 70, 42,
615 75, 71, 76, 77, 42, 166, 42, 81, 107, 42,
616 78, 42, 133, 82, 79, 42, 80, 84, 84, 84,
617 84, 84, 84, 42, 87, 42, 42, 194, 162, 42,
618 42, 42, 88, 173, 85, 91, 42, 89, 94, 131,
619 42, 90, 136, 152, 86, 42, 42, 95, 92, 97,
620 42, 98, 132, 96, 93, 99, 103, 100, 155, 101,
621 42, 102, 153, 104, 154, 105, 157, 106, 108, 119,
622
623 158, 41, 42, 42, 42, 42, 120, 257, 42, 42,
624 42, 41, 121, 163, 42, 122, 109, 110, 159, 111,
625 112, 113, 123, 114, 164, 167, 165, 170, 168, 115,
626 42, 116, 117, 42, 118, 108, 42, 169, 171, 42,
627 42, 42, 45, 45, 45, 45, 45, 45, 172, 42,
628 176, 42, 174, 124, 125, 42, 126, 177, 127, 175,
629 128, 178, 129, 42, 182, 191, 130, 141, 46, 46,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000630 46, 46, 46, 46, 47, 47, 47, 47, 47, 47,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000631 55, 55, 55, 55, 55, 55, 42, 179, 42, 42,
632 183, 42, 42, 42, 42, 42, 42, 295, 42, 42,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000633
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000634 185, 42, 193, 253, 42, 180, 196, 42, 184, 186,
635 195, 41, 143, 143, 143, 143, 143, 143, 42, 181,
636 192, 42, 144, 187, 188, 189, 197, 190, 203, 42,
637 42, 144, 145, 145, 145, 145, 145, 145, 199, 209,
638 202, 145, 145, 146, 147, 148, 42, 145, 145, 145,
639 145, 145, 145, 42, 200, 42, 42, 201, 42, 204,
640 42, 42, 42, 42, 42, 42, 206, 212, 208, 42,
641 210, 42, 42, 205, 42, 42, 42, 211, 42, 42,
642 207, 256, 217, 213, 221, 218, 42, 214, 223, 228,
643 215, 225, 42, 219, 226, 216, 42, 224, 222, 230,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000644
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000645 231, 42, 232, 229, 42, 220, 227, 42, 42, 42,
646 42, 42, 42, 233, 263, 42, 42, 42, 234, 42,
647 42, 42, 42, 263, 237, 242, 235, 240, 245, 236,
648 252, 239, 42, 241, 42, 238, 42, 275, 244, 243,
649 311, 258, 246, 42, 247, 248, 259, 41, 41, 41,
650 42, 254, 260, 255, 249, 42, 273, 250, 272, 270,
651 42, 42, 251, 264, 265, 271, 266, 266, 266, 266,
652 266, 266, 42, 267, 267, 267, 267, 267, 267, 278,
653 274, 42, 267, 267, 42, 42, 42, 280, 267, 267,
654 267, 267, 267, 267, 268, 268, 268, 268, 268, 268,
Reid Spencer6fd36ab2006-12-29 20:35:03 +0000655
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000656 282, 283, 42, 268, 268, 284, 264, 264, 292, 268,
657 268, 268, 268, 268, 268, 269, 269, 269, 269, 269,
658 269, 42, 42, 42, 269, 269, 42, 42, 42, 42,
659 269, 269, 269, 269, 269, 269, 277, 276, 281, 42,
660 279, 42, 42, 42, 42, 42, 42, 290, 42, 291,
661 42, 287, 285, 294, 296, 288, 286, 42, 299, 42,
662 302, 301, 42, 42, 42, 300, 42, 289, 297, 303,
663 42, 298, 293, 42, 42, 305, 306, 307, 42, 42,
664 42, 42, 304, 310, 42, 312, 42, 42, 309, 42,
665 42, 308, 42, 318, 42, 42, 42, 314, 322, 313,
Reid Spencer6fd36ab2006-12-29 20:35:03 +0000666
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000667 42, 42, 42, 317, 42, 320, 42, 315, 316, 328,
668 319, 321, 42, 42, 42, 42, 330, 331, 42, 323,
669 336, 324, 325, 325, 325, 325, 325, 325, 327, 326,
670 42, 325, 325, 329, 332, 42, 333, 325, 325, 325,
671 325, 325, 325, 42, 42, 337, 42, 42, 42, 42,
672 334, 42, 42, 42, 338, 42, 42, 335, 339, 340,
673 342, 344, 42, 42, 42, 347, 348, 341, 343, 42,
674 42, 351, 349, 346, 42, 352, 350, 355, 345, 353,
675 42, 263, 354, 358, 358, 358, 358, 358, 358, 42,
676 263, 605, 41, 605, 41, 42, 356, 42, 42, 42,
Reid Spencer6fd36ab2006-12-29 20:35:03 +0000677
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000678 42, 42, 42, 42, 42, 42, 42, 357, 361, 364,
679 42, 42, 366, 42, 369, 359, 360, 42, 42, 362,
680 363, 365, 42, 368, 42, 42, 42, 370, 371, 42,
681 367, 376, 42, 373, 380, 42, 374, 377, 42, 42,
682 378, 372, 42, 375, 42, 42, 42, 42, 386, 42,
683 42, 42, 379, 381, 42, 42, 42, 387, 382, 42,
684 383, 385, 388, 42, 42, 42, 384, 392, 397, 42,
685 389, 390, 391, 393, 42, 42, 42, 394, 395, 42,
686 42, 42, 396, 401, 406, 407, 398, 402, 42, 42,
687 408, 405, 42, 400, 399, 411, 404, 403, 42, 42,
Reid Spencer3d6b71e2007-04-09 01:56:05 +0000688
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000689 42, 409, 410, 42, 42, 412, 42, 42, 42, 42,
690 413, 42, 415, 414, 42, 42, 42, 417, 420, 42,
691 42, 418, 419, 416, 42, 430, 428, 429, 42, 434,
692 42, 42, 421, 424, 42, 42, 42, 426, 512, 422,
693 42, 427, 423, 431, 42, 425, 358, 358, 358, 358,
694 358, 358, 42, 42, 432, 433, 42, 42, 439, 436,
695 42, 435, 42, 42, 42, 42, 437, 438, 42, 42,
696 42, 42, 42, 441, 443, 444, 42, 42, 42, 440,
697 42, 42, 445, 442, 448, 446, 42, 42, 42, 449,
698 447, 456, 42, 450, 454, 42, 42, 458, 452, 42,
Chris Lattnerce5f24e2007-07-05 17:26:49 +0000699
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000700 457, 453, 42, 451, 42, 42, 42, 455, 42, 461,
701 406, 407, 460, 463, 42, 42, 42, 42, 42, 42,
702 459, 464, 462, 42, 42, 42, 42, 465, 468, 42,
703 42, 473, 471, 466, 467, 42, 474, 476, 42, 469,
704 470, 477, 479, 42, 42, 472, 42, 475, 428, 429,
705 478, 42, 480, 42, 42, 42, 42, 482, 42, 42,
706 42, 42, 42, 485, 42, 484, 481, 42, 489, 483,
707 493, 494, 496, 42, 487, 42, 499, 42, 486, 42,
708 491, 492, 490, 42, 497, 42, 488, 495, 498, 505,
709 501, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Reid Spencerb8f85052007-07-31 03:50:36 +0000710
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000711 500, 42, 42, 502, 516, 42, 504, 42, 503, 509,
712 42, 510, 42, 507, 508, 513, 42, 514, 506, 517,
713 42, 42, 511, 42, 42, 42, 42, 515, 42, 518,
714 42, 520, 42, 519, 42, 42, 42, 42, 42, 521,
715 42, 527, 522, 528, 526, 529, 523, 42, 524, 532,
716 534, 530, 42, 535, 525, 42, 533, 42, 42, 531,
717 536, 42, 42, 42, 537, 539, 544, 541, 42, 538,
718 42, 42, 42, 42, 540, 542, 42, 42, 42, 545,
719 42, 42, 555, 42, 42, 547, 42, 42, 543, 42,
720 546, 551, 42, 42, 554, 42, 552, 557, 556, 548,
Reid Spencerb8f85052007-07-31 03:50:36 +0000721
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000722 549, 553, 560, 550, 558, 42, 561, 42, 42, 559,
723 42, 42, 42, 42, 562, 42, 564, 565, 42, 42,
724 42, 42, 42, 566, 563, 42, 569, 42, 573, 571,
725 575, 42, 568, 42, 42, 42, 42, 42, 567, 572,
726 570, 574, 42, 576, 581, 42, 579, 577, 42, 582,
727 42, 42, 42, 42, 578, 586, 583, 42, 42, 42,
728 42, 580, 42, 42, 584, 42, 42, 585, 42, 592,
729 593, 42, 588, 42, 589, 42, 590, 587, 591, 598,
730 42, 594, 599, 42, 42, 42, 602, 595, 42, 42,
731 596, 597, 42, 603, 42, 42, 42, 42, 600, 42,
Reid Spencerb8f85052007-07-31 03:50:36 +0000732
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000733 601, 42, 42, 42, 42, 42, 42, 42, 604, 39,
734 39, 39, 39, 39, 39, 39, 39, 39, 41, 42,
735 41, 41, 41, 41, 44, 44, 42, 44, 44, 42,
736 44, 52, 42, 52, 52, 52, 52, 52, 52, 52,
737 54, 54, 42, 54, 54, 42, 54, 138, 138, 138,
738 138, 138, 138, 138, 138, 138, 140, 42, 140, 140,
739 42, 140, 149, 149, 149, 149, 149, 149, 149, 149,
740 149, 151, 42, 151, 151, 42, 151, 262, 42, 262,
741 358, 358, 358, 42, 42, 42, 42, 42, 42, 42,
742 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Reid Spencerb8f85052007-07-31 03:50:36 +0000743
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000744 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Reid Spencered951ea2007-05-19 07:22:10 +0000745 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Chris Lattnerce5f24e2007-07-05 17:26:49 +0000746 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Reid Spencerb8f85052007-07-31 03:50:36 +0000747 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
748 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
749 42, 42, 42, 42, 42, 42, 42, 42, 42, 42,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000750 42, 42, 42, 42, 42, 150, 42, 139, 261, 42,
751 42, 42, 150, 41, 139, 42, 137, 41, 42, 40,
752 605, 3, 605, 605, 605, 605, 605, 605, 605, 605,
753 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
Reid Spencerb8f85052007-07-31 03:50:36 +0000754
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000755 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
756 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
757 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
758 605
Reid Spencer68a24bd2005-08-27 18:50:39 +0000759 } ;
760
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000761static yyconst short int yy_chk[1432] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000762 { 0,
763 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
764 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
765 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
766 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000767 1, 1, 1, 1, 1, 1, 1, 1, 1, 9,
768 94, 64, 37, 37, 59, 9, 9, 9, 9, 9,
769 9, 10, 10, 10, 10, 10, 10, 11, 11, 11,
770 11, 11, 11, 11, 12, 37, 94, 59, 24, 62,
771 64, 12, 13, 13, 13, 13, 13, 13, 13, 13,
772 16, 17, 21, 19, 18, 24, 16, 16, 16, 16,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000773
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000774 16, 16, 19, 17, 19, 604, 62, 18, 68, 20,
775 17, 18, 17, 21, 17, 19, 21, 17, 20, 18,
776 13, 22, 20, 21, 23, 31, 18, 48, 20, 36,
777 22, 20, 22, 22, 48, 68, 74, 23, 31, 65,
778 22, 90, 36, 23, 22, 26, 22, 25, 25, 25,
779 25, 25, 25, 25, 26, 28, 27, 90, 65, 38,
780 35, 56, 26, 74, 25, 27, 29, 26, 28, 35,
781 30, 26, 38, 56, 25, 57, 58, 28, 27, 29,
782 60, 29, 35, 28, 27, 29, 30, 29, 58, 29,
783 33, 29, 57, 30, 57, 30, 60, 30, 32, 33,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000784
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000785 60, 84, 66, 61, 32, 67, 33, 134, 70, 134,
786 71, 84, 33, 66, 69, 33, 32, 32, 61, 32,
787 32, 32, 33, 32, 67, 69, 67, 70, 69, 32,
788 76, 32, 32, 75, 32, 34, 72, 69, 71, 78,
789 77, 34, 45, 45, 45, 45, 45, 45, 72, 602,
790 76, 80, 75, 34, 34, 87, 34, 77, 34, 75,
791 34, 78, 34, 81, 80, 87, 34, 46, 46, 46,
792 46, 46, 46, 46, 47, 47, 47, 47, 47, 47,
793 55, 55, 55, 55, 55, 55, 82, 79, 83, 85,
794 81, 91, 79, 89, 92, 131, 601, 179, 86, 88,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000795
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000796 83, 179, 89, 131, 97, 79, 92, 93, 82, 85,
797 91, 47, 49, 49, 49, 49, 49, 49, 49, 79,
798 88, 96, 49, 86, 86, 86, 93, 86, 97, 95,
799 101, 49, 51, 51, 51, 51, 51, 51, 95, 101,
800 96, 51, 51, 51, 51, 51, 98, 51, 51, 51,
801 51, 51, 51, 99, 95, 100, 104, 95, 102, 98,
802 103, 105, 106, 107, 108, 109, 99, 104, 100, 112,
803 102, 111, 133, 98, 110, 599, 114, 103, 116, 113,
804 99, 133, 109, 105, 111, 110, 115, 106, 112, 114,
805 107, 113, 117, 110, 113, 108, 118, 112, 111, 115,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000806
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000807 116, 119, 117, 114, 120, 110, 113, 122, 123, 125,
808 124, 127, 126, 118, 141, 128, 135, 130, 119, 597,
809 159, 136, 192, 141, 122, 126, 119, 124, 128, 120,
810 130, 123, 129, 125, 132, 122, 154, 159, 127, 126,
811 192, 135, 128, 156, 129, 129, 136, 145, 145, 145,
812 153, 132, 136, 132, 129, 157, 156, 129, 154, 153,
813 162, 165, 129, 144, 144, 153, 144, 144, 144, 144,
814 144, 144, 144, 146, 146, 146, 146, 146, 146, 162,
815 157, 167, 146, 146, 168, 176, 169, 165, 146, 146,
816 146, 146, 146, 146, 147, 147, 147, 147, 147, 147,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000817
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000818 167, 168, 596, 147, 147, 169, 263, 263, 176, 147,
819 147, 147, 147, 147, 147, 148, 148, 148, 148, 148,
820 148, 174, 175, 180, 148, 148, 160, 161, 164, 166,
821 148, 148, 148, 148, 148, 148, 161, 160, 166, 170,
822 164, 171, 173, 177, 178, 182, 181, 174, 183, 175,
823 184, 171, 170, 178, 180, 173, 170, 185, 182, 186,
824 184, 183, 187, 188, 189, 182, 190, 173, 181, 185,
825 191, 181, 177, 193, 194, 187, 188, 189, 195, 196,
826 200, 198, 186, 191, 199, 193, 202, 209, 190, 201,
827 212, 189, 213, 200, 214, 231, 219, 195, 212, 194,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000828
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000829 217, 218, 224, 199, 225, 202, 220, 196, 198, 219,
830 201, 209, 595, 226, 227, 590, 224, 225, 233, 213,
831 231, 214, 216, 216, 216, 216, 216, 216, 218, 217,
832 230, 216, 216, 220, 226, 234, 227, 216, 216, 216,
833 216, 216, 216, 235, 237, 233, 236, 238, 239, 240,
834 230, 244, 247, 250, 234, 251, 252, 230, 235, 236,
835 238, 239, 253, 254, 256, 247, 250, 237, 238, 257,
836 255, 253, 251, 244, 259, 254, 252, 257, 240, 255,
837 260, 262, 256, 264, 264, 264, 264, 264, 264, 270,
838 262, 265, 265, 266, 266, 271, 259, 272, 273, 275,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000839
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000840 276, 279, 277, 280, 281, 282, 283, 260, 272, 276,
841 285, 284, 279, 286, 282, 270, 271, 287, 288, 273,
842 275, 277, 289, 281, 290, 294, 296, 283, 284, 291,
843 280, 289, 297, 286, 295, 295, 287, 290, 298, 302,
844 291, 285, 301, 288, 303, 306, 307, 305, 302, 309,
845 308, 317, 294, 296, 310, 311, 314, 303, 297, 318,
846 297, 301, 305, 315, 319, 321, 298, 309, 317, 322,
847 306, 307, 308, 310, 323, 324, 330, 311, 314, 327,
848 328, 333, 315, 322, 329, 329, 318, 323, 331, 332,
849 330, 328, 336, 321, 319, 333, 327, 324, 329, 337,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000850
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000851 339, 331, 332, 340, 341, 336, 343, 346, 347, 348,
852 337, 349, 340, 339, 351, 353, 361, 343, 348, 355,
853 367, 346, 347, 341, 356, 361, 357, 357, 364, 367,
854 473, 362, 349, 355, 369, 372, 582, 356, 473, 351,
855 357, 356, 353, 362, 366, 355, 358, 358, 358, 358,
856 358, 358, 368, 370, 364, 366, 373, 371, 372, 369,
857 374, 368, 375, 376, 378, 382, 370, 371, 383, 384,
858 386, 385, 387, 374, 376, 378, 389, 390, 391, 373,
859 395, 392, 382, 375, 385, 383, 394, 396, 397, 386,
860 384, 395, 398, 387, 392, 399, 400, 397, 390, 401,
Chris Lattnere869eef2005-11-12 00:11:49 +0000861
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000862 396, 391, 402, 389, 403, 404, 405, 394, 410, 400,
863 406, 406, 399, 402, 409, 408, 413, 411, 414, 415,
864 398, 403, 401, 416, 418, 423, 420, 404, 409, 421,
865 425, 415, 413, 405, 408, 422, 416, 420, 426, 410,
866 411, 421, 423, 424, 427, 414, 431, 418, 428, 428,
867 422, 432, 424, 434, 435, 436, 438, 425, 439, 440,
868 443, 447, 442, 431, 448, 427, 424, 452, 436, 426,
869 442, 442, 447, 453, 434, 451, 452, 458, 432, 455,
870 439, 440, 438, 459, 448, 460, 435, 443, 451, 462,
871 455, 463, 464, 465, 462, 469, 467, 468, 479, 476,
Chris Lattner75466192006-05-19 21:28:53 +0000872
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000873 453, 480, 483, 458, 481, 481, 460, 482, 459, 467,
874 485, 468, 487, 464, 465, 476, 484, 479, 463, 482,
875 488, 491, 469, 492, 493, 494, 498, 480, 495, 483,
876 497, 485, 499, 484, 500, 503, 501, 507, 504, 487,
877 509, 495, 488, 497, 494, 498, 491, 506, 492, 501,
878 504, 499, 510, 505, 493, 512, 503, 505, 513, 500,
879 506, 515, 514, 519, 507, 510, 516, 513, 517, 509,
880 520, 522, 516, 523, 512, 514, 524, 527, 525, 517,
881 528, 529, 535, 535, 538, 520, 536, 540, 515, 548,
882 519, 525, 541, 539, 529, 543, 527, 538, 536, 522,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000883
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000884 523, 528, 541, 524, 539, 545, 543, 546, 551, 540,
885 552, 553, 554, 558, 545, 557, 548, 551, 559, 561,
886 560, 563, 562, 552, 546, 565, 557, 566, 561, 559,
887 563, 567, 554, 568, 569, 571, 572, 573, 553, 560,
888 558, 562, 577, 565, 571, 574, 568, 566, 575, 572,
889 578, 579, 580, 585, 567, 577, 573, 581, 584, 583,
890 586, 569, 587, 588, 574, 593, 589, 575, 591, 584,
891 585, 592, 579, 594, 580, 598, 581, 578, 583, 591,
892 600, 586, 592, 603, 576, 570, 598, 587, 564, 556,
893 588, 589, 555, 600, 550, 549, 547, 544, 593, 542,
894
895 594, 537, 534, 533, 532, 531, 530, 526, 603, 606,
896 606, 606, 606, 606, 606, 606, 606, 606, 607, 521,
897 607, 607, 607, 607, 608, 608, 518, 608, 608, 511,
898 608, 609, 508, 609, 609, 609, 609, 609, 609, 609,
899 610, 610, 502, 610, 610, 496, 610, 611, 611, 611,
900 611, 611, 611, 611, 611, 611, 612, 490, 612, 612,
901 489, 612, 613, 613, 613, 613, 613, 613, 613, 613,
902 613, 614, 486, 614, 614, 478, 614, 615, 477, 615,
903 616, 616, 616, 475, 474, 472, 471, 470, 466, 461,
904 457, 456, 454, 450, 449, 446, 445, 444, 441, 437,
905
906 433, 430, 419, 417, 412, 393, 388, 381, 380, 379,
907 377, 365, 363, 360, 359, 354, 352, 350, 345, 344,
908 342, 338, 335, 334, 326, 320, 316, 313, 312, 304,
909 300, 299, 293, 292, 278, 274, 258, 249, 248, 246,
910 245, 243, 242, 241, 232, 229, 228, 223, 222, 221,
911 215, 211, 210, 208, 207, 206, 205, 204, 203, 197,
912 172, 163, 158, 155, 152, 149, 142, 138, 137, 121,
913 73, 63, 53, 50, 43, 41, 39, 14, 8, 7,
914 3, 605, 605, 605, 605, 605, 605, 605, 605, 605,
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000915 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
Reid Spencer3da59db2006-11-27 01:05:10 +0000916
Dale Johannesenc72cd7e2007-09-11 18:33:39 +0000917 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
918 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
919 605, 605, 605, 605, 605, 605, 605, 605, 605, 605,
920 605
Reid Spencer68a24bd2005-08-27 18:50:39 +0000921 } ;
922
Reid Spencered951ea2007-05-19 07:22:10 +0000923static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
924static char *yy_full_match;
925static int yy_lp;
926#define REJECT \
927{ \
928*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \
929yy_cp = yy_full_match; /* restore poss. backed-over text */ \
930++yy_lp; \
931goto find_rule; \
932}
Reid Spencer68a24bd2005-08-27 18:50:39 +0000933#define yymore() yymore_used_but_not_detected
934#define YY_MORE_ADJ 0
935#define YY_RESTORE_YY_MORE_OFFSET
Reid Spencered951ea2007-05-19 07:22:10 +0000936char *yytext;
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000937#line 1 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencered951ea2007-05-19 07:22:10 +0000938#define INITIAL 0
Reid Spencer68a24bd2005-08-27 18:50:39 +0000939/*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===//
940//
941// The LLVM Compiler Infrastructure
942//
943// This file was developed by the LLVM research group and is distributed under
944// the University of Illinois Open Source License. See LICENSE.TXT for details.
945//
946//===----------------------------------------------------------------------===//
947//
948// This file implements the flex scanner for LLVM assembly languages files.
949//
950//===----------------------------------------------------------------------===*/
Reid Spencered951ea2007-05-19 07:22:10 +0000951#define YY_NEVER_INTERACTIVE 1
Dale Johannesen320fc8a2007-08-03 01:03:46 +0000952#line 28 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +0000953#include "ParserInternals.h"
954#include "llvm/Module.h"
Chris Lattner8e008322007-05-22 06:47:55 +0000955#include "llvm/Support/MathExtras.h"
Reid Spencer68a24bd2005-08-27 18:50:39 +0000956#include <list>
957#include "llvmAsmParser.h"
958#include <cctype>
959#include <cstdlib>
960
961void set_scan_file(FILE * F){
Reid Spencered951ea2007-05-19 07:22:10 +0000962 yy_switch_to_buffer(yy_create_buffer( F, YY_BUF_SIZE ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +0000963}
964void set_scan_string (const char * str) {
Reid Spencered951ea2007-05-19 07:22:10 +0000965 yy_scan_string (str);
Reid Spencer68a24bd2005-08-27 18:50:39 +0000966}
967
Reid Spencer3ed469c2006-11-02 20:25:50 +0000968// Construct a token value for a non-obsolete token
Reid Spencer68a24bd2005-08-27 18:50:39 +0000969#define RET_TOK(type, Enum, sym) \
Reid Spencera132e042006-12-03 05:46:11 +0000970 llvmAsmlval.type = Instruction::Enum; \
971 return sym
972
Reid Spencer3ed469c2006-11-02 20:25:50 +0000973// Construct a token value for an obsolete token
Reid Spencera132e042006-12-03 05:46:11 +0000974#define RET_TY(CTYPE, SYM) \
975 llvmAsmlval.PrimType = CTYPE;\
Reid Spencer481169e2006-12-01 00:33:46 +0000976 return SYM
Reid Spencer68a24bd2005-08-27 18:50:39 +0000977
978namespace llvm {
979
980// TODO: All of the static identifiers are figured out by the lexer,
981// these should be hashed to reduce the lexer size
982
983
984// atoull - Convert an ascii string of decimal digits into the unsigned long
985// long representation... this does not have to do input error checking,
986// because we know that the input will be matched by a suitable regex...
987//
988static uint64_t atoull(const char *Buffer) {
989 uint64_t Result = 0;
990 for (; *Buffer; Buffer++) {
991 uint64_t OldRes = Result;
992 Result *= 10;
993 Result += *Buffer-'0';
994 if (Result < OldRes) // Uh, oh, overflow detected!!!
Reid Spencer61c83e02006-08-18 08:43:06 +0000995 GenerateError("constant bigger than 64 bits detected!");
Reid Spencer68a24bd2005-08-27 18:50:39 +0000996 }
997 return Result;
998}
999
1000static uint64_t HexIntToVal(const char *Buffer) {
1001 uint64_t Result = 0;
1002 for (; *Buffer; ++Buffer) {
1003 uint64_t OldRes = Result;
1004 Result *= 16;
1005 char C = *Buffer;
1006 if (C >= '0' && C <= '9')
1007 Result += C-'0';
1008 else if (C >= 'A' && C <= 'F')
1009 Result += C-'A'+10;
1010 else if (C >= 'a' && C <= 'f')
1011 Result += C-'a'+10;
1012
1013 if (Result < OldRes) // Uh, oh, overflow detected!!!
Reid Spencer61c83e02006-08-18 08:43:06 +00001014 GenerateError("constant bigger than 64 bits detected!");
Reid Spencer68a24bd2005-08-27 18:50:39 +00001015 }
1016 return Result;
1017}
1018
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001019// HexToFP - Convert the ascii string in hexadecimal format to the floating
Reid Spencer68a24bd2005-08-27 18:50:39 +00001020// point representation of it.
1021//
1022static double HexToFP(const char *Buffer) {
Chris Lattner8e008322007-05-22 06:47:55 +00001023 return BitsToDouble(HexIntToVal(Buffer)); // Cast Hex constant to double
Reid Spencer68a24bd2005-08-27 18:50:39 +00001024}
1025
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001026static void HexToIntPair(const char *Buffer, uint64_t Pair[2]) {
1027 Pair[0] = 0;
1028 for (int i=0; i<16; i++, Buffer++) {
1029 assert(*Buffer);
1030 Pair[0] *= 16;
1031 char C = *Buffer;
1032 if (C >= '0' && C <= '9')
1033 Pair[0] += C-'0';
1034 else if (C >= 'A' && C <= 'F')
1035 Pair[0] += C-'A'+10;
1036 else if (C >= 'a' && C <= 'f')
1037 Pair[0] += C-'a'+10;
1038 }
1039 Pair[1] = 0;
1040 for (int i=0; i<16 && *Buffer; i++, Buffer++) {
1041 Pair[1] *= 16;
1042 char C = *Buffer;
1043 if (C >= '0' && C <= '9')
1044 Pair[1] += C-'0';
1045 else if (C >= 'A' && C <= 'F')
1046 Pair[1] += C-'A'+10;
1047 else if (C >= 'a' && C <= 'f')
1048 Pair[1] += C-'a'+10;
1049 }
1050 if (*Buffer)
1051 GenerateError("constant bigger than 128 bits detected!");
1052}
Reid Spencer68a24bd2005-08-27 18:50:39 +00001053
1054// UnEscapeLexed - Run through the specified buffer and change \xx codes to the
Reid Spencer0a8a16b2007-05-22 18:52:55 +00001055// appropriate character.
Reid Spencere2aa9612007-05-22 19:08:16 +00001056char *UnEscapeLexed(char *Buffer, char* EndBuffer) {
Reid Spencer68a24bd2005-08-27 18:50:39 +00001057 char *BOut = Buffer;
1058 for (char *BIn = Buffer; *BIn; ) {
Reid Spencere2aa9612007-05-22 19:08:16 +00001059 if (BIn[0] == '\\') {
1060 if (BIn < EndBuffer-1 && BIn[1] == '\\') {
1061 *BOut++ = '\\'; // Two \ becomes one
1062 BIn += 2;
1063 } else if (BIn < EndBuffer-2 && isxdigit(BIn[1]) && isxdigit(BIn[2])) {
1064 char Tmp = BIn[3]; BIn[3] = 0; // Terminate string
1065 *BOut = (char)strtol(BIn+1, 0, 16); // Convert to number
1066 BIn[3] = Tmp; // Restore character
1067 BIn += 3; // Skip over handled chars
1068 ++BOut;
1069 } else {
1070 *BOut++ = *BIn++;
1071 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001072 } else {
1073 *BOut++ = *BIn++;
1074 }
1075 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001076 return BOut;
1077}
1078
1079} // End llvm namespace
1080
1081using namespace llvm;
1082
1083#define YY_NEVER_INTERACTIVE 1
1084/* Comments start with a ; and go till end of line */
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001085/* Local Values and Type identifiers start with a % sign */
1086/* Global Value identifiers start with an @ sign */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001087/* Label identifiers end with a colon */
1088/* Quoted names can contain any character except " and \ */
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00001089/* LocalVarID/GlobalVarID: match an unnamed local variable slot ID. */
1090/* Integer types are specified with i and a bitwidth */
1091/* E[PN]Integer: match positive and negative literal integer values. */
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001092/* FPConstant - A Floating point constant. Float and double only.
Reid Spencer68a24bd2005-08-27 18:50:39 +00001093 */
1094/* HexFPConstant - Floating point constant represented in IEEE format as a
1095 * hexadecimal number for when exponential notation is not precise enough.
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001096 * Float and double only.
1097 */
1098/* F80HexFPConstant - x87 long double in hexadecimal format (10 bytes)
1099 */
1100/* F128HexFPConstant - IEEE 128-bit in hexadecimal format (16 bytes)
1101 */
1102/* PPC128HexFPConstant - PowerPC 128-bit in hexadecimal format (16 bytes)
Reid Spencer68a24bd2005-08-27 18:50:39 +00001103 */
1104/* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
1105 * it to deal with 64 bit numbers.
1106 */
Reid Spencerd8e616b2007-07-31 03:55:56 +00001107/* WSNL - shorthand for whitespace followed by newline */
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001108#line 1109 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001109
1110/* Macros after this point can all be overridden by user definitions in
1111 * section 1.
1112 */
1113
1114#ifndef YY_SKIP_YYWRAP
1115#ifdef __cplusplus
Reid Spencered951ea2007-05-19 07:22:10 +00001116extern "C" int yywrap YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001117#else
Reid Spencered951ea2007-05-19 07:22:10 +00001118extern int yywrap YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001119#endif
1120#endif
1121
Reid Spencered951ea2007-05-19 07:22:10 +00001122#ifndef YY_NO_UNPUT
1123static inline void yyunput YY_PROTO(( int c, char *buf_ptr ));
1124#endif
1125
Reid Spencer68a24bd2005-08-27 18:50:39 +00001126#ifndef yytext_ptr
Reid Spencered951ea2007-05-19 07:22:10 +00001127static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001128#endif
1129
1130#ifdef YY_NEED_STRLEN
Reid Spencered951ea2007-05-19 07:22:10 +00001131static int yy_flex_strlen YY_PROTO(( yyconst char * ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001132#endif
1133
1134#ifndef YY_NO_INPUT
1135#ifdef __cplusplus
Reid Spencered951ea2007-05-19 07:22:10 +00001136static int yyinput YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001137#else
Reid Spencered951ea2007-05-19 07:22:10 +00001138static int input YY_PROTO(( void ));
1139#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001140#endif
1141
Reid Spencered951ea2007-05-19 07:22:10 +00001142#if YY_STACK_USED
1143static int yy_start_stack_ptr = 0;
1144static int yy_start_stack_depth = 0;
1145static int *yy_start_stack = 0;
1146#ifndef YY_NO_PUSH_STATE
1147static void yy_push_state YY_PROTO(( int new_state ));
1148#endif
1149#ifndef YY_NO_POP_STATE
1150static void yy_pop_state YY_PROTO(( void ));
1151#endif
1152#ifndef YY_NO_TOP_STATE
1153static int yy_top_state YY_PROTO(( void ));
1154#endif
1155
1156#else
1157#define YY_NO_PUSH_STATE 1
1158#define YY_NO_POP_STATE 1
1159#define YY_NO_TOP_STATE 1
1160#endif
1161
1162#ifdef YY_MALLOC_DECL
1163YY_MALLOC_DECL
1164#else
1165#if __STDC__
1166#ifndef __cplusplus
1167#include <stdlib.h>
1168#endif
1169#else
1170/* Just try to get by without declaring the routines. This will fail
1171 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1172 * or sizeof(void*) != sizeof(int).
1173 */
1174#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001175#endif
1176
1177/* Amount of stuff to slurp up with each read. */
1178#ifndef YY_READ_BUF_SIZE
1179#define YY_READ_BUF_SIZE 8192
1180#endif
1181
1182/* Copy whatever the last rule matched to the standard output. */
Reid Spencered951ea2007-05-19 07:22:10 +00001183
Reid Spencer68a24bd2005-08-27 18:50:39 +00001184#ifndef ECHO
1185/* This used to be an fputs(), but since the string might contain NUL's,
1186 * we now use fwrite().
1187 */
Reid Spencered951ea2007-05-19 07:22:10 +00001188#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001189#endif
1190
1191/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1192 * is returned in "result".
1193 */
1194#ifndef YY_INPUT
1195#define YY_INPUT(buf,result,max_size) \
Reid Spencered951ea2007-05-19 07:22:10 +00001196 if ( yy_current_buffer->yy_is_interactive ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001197 { \
Reid Spencered951ea2007-05-19 07:22:10 +00001198 int c = '*', n; \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001199 for ( n = 0; n < max_size && \
Reid Spencered951ea2007-05-19 07:22:10 +00001200 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001201 buf[n] = (char) c; \
1202 if ( c == '\n' ) \
1203 buf[n++] = (char) c; \
Reid Spencered951ea2007-05-19 07:22:10 +00001204 if ( c == EOF && ferror( yyin ) ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001205 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1206 result = n; \
1207 } \
Reid Spencered951ea2007-05-19 07:22:10 +00001208 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1209 && ferror( yyin ) ) \
1210 YY_FATAL_ERROR( "input in flex scanner failed" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001211#endif
1212
1213/* No semi-colon after return; correct usage is to write "yyterminate();" -
1214 * we don't want an extra ';' after the "return" because that will cause
1215 * some compilers to complain about unreachable statements.
1216 */
1217#ifndef yyterminate
1218#define yyterminate() return YY_NULL
1219#endif
1220
1221/* Number of entries by which start-condition stack grows. */
1222#ifndef YY_START_STACK_INCR
1223#define YY_START_STACK_INCR 25
1224#endif
1225
1226/* Report a fatal error. */
1227#ifndef YY_FATAL_ERROR
1228#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1229#endif
1230
1231/* Default declaration of generated scanner - a define so the user can
1232 * easily add parameters.
1233 */
1234#ifndef YY_DECL
Reid Spencered951ea2007-05-19 07:22:10 +00001235#define YY_DECL int yylex YY_PROTO(( void ))
1236#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001237
Reid Spencered951ea2007-05-19 07:22:10 +00001238/* Code executed at the beginning of each rule, after yytext and yyleng
Reid Spencer68a24bd2005-08-27 18:50:39 +00001239 * have been set up.
1240 */
1241#ifndef YY_USER_ACTION
1242#define YY_USER_ACTION
1243#endif
1244
1245/* Code executed at the end of each rule. */
1246#ifndef YY_BREAK
1247#define YY_BREAK break;
1248#endif
1249
1250#define YY_RULE_SETUP \
1251 YY_USER_ACTION
1252
1253YY_DECL
Reid Spencered951ea2007-05-19 07:22:10 +00001254 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00001255 register yy_state_type yy_current_state;
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001256 register char *yy_cp, *yy_bp;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001257 register int yy_act;
Reid Spencered951ea2007-05-19 07:22:10 +00001258
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001259#line 221 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001260
1261
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001262#line 1263 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001263
Reid Spencered951ea2007-05-19 07:22:10 +00001264 if ( yy_init )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001265 {
Reid Spencered951ea2007-05-19 07:22:10 +00001266 yy_init = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001267
1268#ifdef YY_USER_INIT
1269 YY_USER_INIT;
1270#endif
1271
Reid Spencered951ea2007-05-19 07:22:10 +00001272 if ( ! yy_start )
1273 yy_start = 1; /* first start state */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001274
Reid Spencered951ea2007-05-19 07:22:10 +00001275 if ( ! yyin )
1276 yyin = stdin;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001277
Reid Spencered951ea2007-05-19 07:22:10 +00001278 if ( ! yyout )
1279 yyout = stdout;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001280
Reid Spencered951ea2007-05-19 07:22:10 +00001281 if ( ! yy_current_buffer )
1282 yy_current_buffer =
1283 yy_create_buffer( yyin, YY_BUF_SIZE );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001284
Reid Spencered951ea2007-05-19 07:22:10 +00001285 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00001286 }
1287
1288 while ( 1 ) /* loops until end-of-file is reached */
1289 {
Reid Spencered951ea2007-05-19 07:22:10 +00001290 yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001291
Reid Spencered951ea2007-05-19 07:22:10 +00001292 /* Support of yytext. */
1293 *yy_cp = yy_hold_char;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001294
1295 /* yy_bp points to the position in yy_ch_buf of the start of
1296 * the current run.
1297 */
1298 yy_bp = yy_cp;
1299
Reid Spencered951ea2007-05-19 07:22:10 +00001300 yy_current_state = yy_start;
1301 yy_state_ptr = yy_state_buf;
1302 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001303yy_match:
1304 do
1305 {
1306 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1307 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1308 {
1309 yy_current_state = (int) yy_def[yy_current_state];
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001310 if ( yy_current_state >= 606 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001311 yy_c = yy_meta[(unsigned int) yy_c];
1312 }
1313 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Reid Spencered951ea2007-05-19 07:22:10 +00001314 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001315 ++yy_cp;
1316 }
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001317 while ( yy_current_state != 605 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001318
1319yy_find_action:
Reid Spencered951ea2007-05-19 07:22:10 +00001320 yy_current_state = *--yy_state_ptr;
1321 yy_lp = yy_accept[yy_current_state];
1322find_rule: /* we branch to this label when backing up */
1323 for ( ; ; ) /* until we find what rule we matched */
1324 {
1325 if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] )
1326 {
1327 yy_act = yy_acclist[yy_lp];
1328 {
1329 yy_full_match = yy_cp;
1330 break;
1331 }
1332 }
1333 --yy_cp;
1334 yy_current_state = *--yy_state_ptr;
1335 yy_lp = yy_accept[yy_current_state];
1336 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001337
1338 YY_DO_BEFORE_ACTION;
1339
Reid Spencered951ea2007-05-19 07:22:10 +00001340 if ( yy_act != YY_END_OF_BUFFER )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001341 {
1342 int yyl;
Reid Spencered951ea2007-05-19 07:22:10 +00001343 for ( yyl = 0; yyl < yyleng; ++yyl )
1344 if ( yytext[yyl] == '\n' )
1345 ++yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001346 }
1347
1348do_action: /* This label is used only to access EOF actions. */
1349
Reid Spencered951ea2007-05-19 07:22:10 +00001350
Reid Spencer68a24bd2005-08-27 18:50:39 +00001351 switch ( yy_act )
1352 { /* beginning of action switch */
1353case 1:
1354YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001355#line 223 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001356{ /* Ignore comments for now */ }
1357 YY_BREAK
1358case 2:
1359YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001360#line 225 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001361{ return BEGINTOK; }
1362 YY_BREAK
1363case 3:
1364YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001365#line 226 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001366{ return ENDTOK; }
1367 YY_BREAK
1368case 4:
1369YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001370#line 227 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001371{ return TRUETOK; }
1372 YY_BREAK
1373case 5:
1374YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001375#line 228 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001376{ return FALSETOK; }
1377 YY_BREAK
1378case 6:
1379YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001380#line 229 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001381{ return DECLARE; }
1382 YY_BREAK
1383case 7:
1384YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001385#line 230 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001386{ return DEFINE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001387 YY_BREAK
1388case 8:
1389YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001390#line 231 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001391{ return GLOBAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001392 YY_BREAK
1393case 9:
1394YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001395#line 232 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001396{ return CONSTANT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001397 YY_BREAK
1398case 10:
1399YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001400#line 233 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001401{ return INTERNAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001402 YY_BREAK
1403case 11:
1404YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001405#line 234 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001406{ return LINKONCE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001407 YY_BREAK
1408case 12:
1409YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001410#line 235 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001411{ return WEAK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001412 YY_BREAK
1413case 13:
1414YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001415#line 236 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001416{ return APPENDING; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001417 YY_BREAK
1418case 14:
1419YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001420#line 237 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001421{ return DLLIMPORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001422 YY_BREAK
1423case 15:
1424YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001425#line 238 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer6fd36ab2006-12-29 20:35:03 +00001426{ return DLLEXPORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001427 YY_BREAK
1428case 16:
1429YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001430#line 239 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov178a3522007-01-12 19:22:51 +00001431{ return HIDDEN; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001432 YY_BREAK
1433case 17:
1434YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001435#line 240 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001436{ return PROTECTED; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001437 YY_BREAK
1438case 18:
1439YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001440#line 241 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001441{ return EXTERN_WEAK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001442 YY_BREAK
1443case 19:
1444YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001445#line 242 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001446{ return EXTERNAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001447 YY_BREAK
1448case 20:
1449YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001450#line 243 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001451{ return THREAD_LOCAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001452 YY_BREAK
1453case 21:
1454YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001455#line 244 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001456{ return ZEROINITIALIZER; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001457 YY_BREAK
1458case 22:
1459YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001460#line 245 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001461{ return DOTDOTDOT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001462 YY_BREAK
1463case 23:
1464YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001465#line 246 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001466{ return UNDEF; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001467 YY_BREAK
1468case 24:
1469YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001470#line 247 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001471{ return NULL_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001472 YY_BREAK
1473case 25:
1474YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001475#line 248 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001476{ return TO; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001477 YY_BREAK
1478case 26:
1479YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001480#line 249 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001481{ return TAIL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001482 YY_BREAK
1483case 27:
1484YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001485#line 250 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001486{ return TARGET; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001487 YY_BREAK
1488case 28:
1489YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001490#line 251 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001491{ return TRIPLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001492 YY_BREAK
1493case 29:
1494YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001495#line 252 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001496{ return DEPLIBS; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001497 YY_BREAK
1498case 30:
1499YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001500#line 253 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001501{ return DATALAYOUT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001502 YY_BREAK
1503case 31:
1504YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001505#line 254 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001506{ return VOLATILE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001507 YY_BREAK
1508case 32:
1509YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001510#line 255 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001511{ return ALIGN; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001512 YY_BREAK
1513case 33:
1514YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001515#line 256 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001516{ return SECTION; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001517 YY_BREAK
1518case 34:
1519YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001520#line 257 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001521{ return ALIAS; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001522 YY_BREAK
1523case 35:
1524YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001525#line 258 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001526{ return MODULE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001527 YY_BREAK
1528case 36:
1529YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001530#line 259 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001531{ return ASM_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001532 YY_BREAK
1533case 37:
1534YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001535#line 260 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001536{ return SIDEEFFECT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001537 YY_BREAK
1538case 38:
1539YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001540#line 262 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001541{ return CC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001542 YY_BREAK
1543case 39:
1544YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001545#line 263 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001546{ return CCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001547 YY_BREAK
1548case 40:
1549YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001550#line 264 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001551{ return FASTCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001552 YY_BREAK
1553case 41:
1554YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001555#line 265 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001556{ return COLDCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001557 YY_BREAK
1558case 42:
1559YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001560#line 266 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001561{ return X86_STDCALLCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001562 YY_BREAK
1563case 43:
1564YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001565#line 267 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001566{ return X86_FASTCALLCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001567 YY_BREAK
1568case 44:
1569YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001570#line 269 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001571{ return SIGNEXT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001572 YY_BREAK
1573case 45:
1574YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001575#line 270 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001576{ return ZEROEXT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001577 YY_BREAK
1578case 46:
1579YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001580#line 271 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001581{ return INREG; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001582 YY_BREAK
1583case 47:
1584YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001585#line 272 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001586{ return SRET; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001587 YY_BREAK
1588case 48:
1589YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001590#line 273 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001591{ return NOUNWIND; }
Reid Spencer832254e2007-02-02 02:16:23 +00001592 YY_BREAK
1593case 49:
1594YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001595#line 274 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001596{ return NORETURN; }
Reid Spencer832254e2007-02-02 02:16:23 +00001597 YY_BREAK
1598case 50:
1599YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001600#line 275 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001601{ return NOALIAS; }
Reid Spencer67d8ed92007-03-22 02:14:08 +00001602 YY_BREAK
1603case 51:
1604YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001605#line 276 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001606{ return BYVAL; }
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00001607 YY_BREAK
1608case 52:
1609YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001610#line 277 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001611{ return NEST; }
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001612 YY_BREAK
1613case 53:
Reid Spencerb8f85052007-07-31 03:50:36 +00001614*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
1615yy_c_buf_p = yy_cp -= 1;
1616YY_DO_BEFORE_ACTION; /* set up yytext again */
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001617YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001618#line 278 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001619{ // For auto-upgrade only, drop in LLVM 3.0
1620 return SIGNEXT; }
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001621 YY_BREAK
1622case 54:
Reid Spencerb8f85052007-07-31 03:50:36 +00001623*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
1624yy_c_buf_p = yy_cp -= 1;
1625YY_DO_BEFORE_ACTION; /* set up yytext again */
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00001626YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001627#line 280 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001628{ // For auto-upgrade only, drop in LLVM 3.0
1629 return ZEROEXT; }
Chris Lattnerce5f24e2007-07-05 17:26:49 +00001630 YY_BREAK
1631case 55:
1632YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001633#line 283 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001634{ RET_TY(Type::VoidTy, VOID); }
1635 YY_BREAK
1636case 56:
1637YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001638#line 284 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001639{ RET_TY(Type::FloatTy, FLOAT); }
1640 YY_BREAK
1641case 57:
1642YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001643#line 285 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencerb8f85052007-07-31 03:50:36 +00001644{ RET_TY(Type::DoubleTy,DOUBLE);}
1645 YY_BREAK
1646case 58:
1647YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001648#line 286 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001649{ RET_TY(Type::X86_FP80Ty, X86_FP80);}
Reid Spencerb8f85052007-07-31 03:50:36 +00001650 YY_BREAK
1651case 59:
1652YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001653#line 287 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001654{ RET_TY(Type::FP128Ty, FP128);}
Reid Spencerb8f85052007-07-31 03:50:36 +00001655 YY_BREAK
1656case 60:
1657YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001658#line 288 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001659{ RET_TY(Type::PPC_FP128Ty, PPC_FP128);}
Reid Spencerb8f85052007-07-31 03:50:36 +00001660 YY_BREAK
1661case 61:
1662YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001663#line 289 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001664{ RET_TY(Type::LabelTy, LABEL); }
1665 YY_BREAK
1666case 62:
1667YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001668#line 290 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001669{ return TYPE; }
1670 YY_BREAK
1671case 63:
1672YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001673#line 291 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001674{ return OPAQUE; }
1675 YY_BREAK
1676case 64:
1677YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001678#line 292 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencered951ea2007-05-19 07:22:10 +00001679{ uint64_t NumBits = atoull(yytext+1);
Reid Spencera54b7cb2007-01-12 07:05:14 +00001680 if (NumBits < IntegerType::MIN_INT_BITS ||
1681 NumBits > IntegerType::MAX_INT_BITS)
1682 GenerateError("Bitwidth for integer type out of range!");
1683 const Type* Ty = IntegerType::get(NumBits);
1684 RET_TY(Ty, INTTYPE);
1685 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001686 YY_BREAK
Reid Spencer68a24bd2005-08-27 18:50:39 +00001687case 65:
1688YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001689#line 300 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001690{ RET_TOK(BinaryOpVal, Add, ADD); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001691 YY_BREAK
1692case 66:
1693YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001694#line 301 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001695{ RET_TOK(BinaryOpVal, Sub, SUB); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001696 YY_BREAK
1697case 67:
1698YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001699#line 302 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001700{ RET_TOK(BinaryOpVal, Mul, MUL); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001701 YY_BREAK
1702case 68:
1703YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001704#line 303 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001705{ RET_TOK(BinaryOpVal, UDiv, UDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001706 YY_BREAK
1707case 69:
1708YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001709#line 304 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001710{ RET_TOK(BinaryOpVal, SDiv, SDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001711 YY_BREAK
1712case 70:
1713YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001714#line 305 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001715{ RET_TOK(BinaryOpVal, FDiv, FDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001716 YY_BREAK
1717case 71:
1718YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001719#line 306 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001720{ RET_TOK(BinaryOpVal, URem, UREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001721 YY_BREAK
1722case 72:
1723YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001724#line 307 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001725{ RET_TOK(BinaryOpVal, SRem, SREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001726 YY_BREAK
1727case 73:
1728YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001729#line 308 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001730{ RET_TOK(BinaryOpVal, FRem, FREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001731 YY_BREAK
1732case 74:
1733YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001734#line 309 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001735{ RET_TOK(BinaryOpVal, Shl, SHL); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001736 YY_BREAK
1737case 75:
1738YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001739#line 310 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001740{ RET_TOK(BinaryOpVal, LShr, LSHR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001741 YY_BREAK
1742case 76:
1743YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001744#line 311 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001745{ RET_TOK(BinaryOpVal, AShr, ASHR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001746 YY_BREAK
1747case 77:
1748YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001749#line 312 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001750{ RET_TOK(BinaryOpVal, And, AND); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001751 YY_BREAK
1752case 78:
1753YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001754#line 313 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001755{ RET_TOK(BinaryOpVal, Or , OR ); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001756 YY_BREAK
1757case 79:
1758YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001759#line 314 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001760{ RET_TOK(BinaryOpVal, Xor, XOR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001761 YY_BREAK
1762case 80:
1763YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001764#line 315 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001765{ RET_TOK(OtherOpVal, ICmp, ICMP); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001766 YY_BREAK
1767case 81:
1768YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001769#line 316 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001770{ RET_TOK(OtherOpVal, FCmp, FCMP); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001771 YY_BREAK
1772case 82:
1773YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001774#line 318 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001775{ return EQ; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001776 YY_BREAK
1777case 83:
1778YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001779#line 319 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001780{ return NE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001781 YY_BREAK
1782case 84:
1783YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001784#line 320 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001785{ return SLT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001786 YY_BREAK
1787case 85:
1788YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001789#line 321 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001790{ return SGT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001791 YY_BREAK
1792case 86:
1793YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001794#line 322 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001795{ return SLE; }
Nate Begeman14b05292005-11-05 09:21:28 +00001796 YY_BREAK
1797case 87:
1798YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001799#line 323 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001800{ return SGE; }
Chris Lattnere869eef2005-11-12 00:11:49 +00001801 YY_BREAK
1802case 88:
1803YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001804#line 324 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001805{ return ULT; }
Robert Bocchino9c62b562006-01-10 19:04:32 +00001806 YY_BREAK
1807case 89:
1808YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001809#line 325 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001810{ return UGT; }
Robert Bocchino2def1b32006-01-17 20:06:25 +00001811 YY_BREAK
1812case 90:
1813YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001814#line 326 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001815{ return ULE; }
Chris Lattner8335e842006-01-23 23:05:42 +00001816 YY_BREAK
1817case 91:
1818YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001819#line 327 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001820{ return UGE; }
Chris Lattner66316012006-01-24 04:14:29 +00001821 YY_BREAK
1822case 92:
1823YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001824#line 328 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001825{ return OEQ; }
Chris Lattner0e9c3762006-01-25 22:27:16 +00001826 YY_BREAK
1827case 93:
1828YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001829#line 329 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001830{ return ONE; }
Chris Lattnerd5efe842006-04-08 01:18:56 +00001831 YY_BREAK
1832case 94:
1833YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001834#line 330 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001835{ return OLT; }
Chris Lattner75466192006-05-19 21:28:53 +00001836 YY_BREAK
1837case 95:
1838YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001839#line 331 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001840{ return OGT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001841 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001842case 96:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001843YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001844#line 332 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001845{ return OLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001846 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001847case 97:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001848YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001849#line 333 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001850{ return OGE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001851 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001852case 98:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001853YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001854#line 334 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001855{ return ORD; }
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001856 YY_BREAK
1857case 99:
1858YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001859#line 335 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001860{ return UNO; }
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001861 YY_BREAK
1862case 100:
1863YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001864#line 336 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001865{ return UEQ; }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001866 YY_BREAK
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001867case 101:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001868YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001869#line 337 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001870{ return UNE; }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001871 YY_BREAK
1872case 102:
1873YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001874#line 339 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001875{ RET_TOK(OtherOpVal, PHI, PHI_TOK); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001876 YY_BREAK
1877case 103:
1878YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001879#line 340 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001880{ RET_TOK(OtherOpVal, Call, CALL); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001881 YY_BREAK
1882case 104:
1883YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001884#line 341 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001885{ RET_TOK(CastOpVal, Trunc, TRUNC); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001886 YY_BREAK
1887case 105:
1888YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001889#line 342 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001890{ RET_TOK(CastOpVal, ZExt, ZEXT); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001891 YY_BREAK
1892case 106:
1893YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001894#line 343 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001895{ RET_TOK(CastOpVal, SExt, SEXT); }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001896 YY_BREAK
1897case 107:
1898YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001899#line 344 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001900{ RET_TOK(CastOpVal, FPTrunc, FPTRUNC); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001901 YY_BREAK
1902case 108:
1903YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001904#line 345 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001905{ RET_TOK(CastOpVal, FPExt, FPEXT); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001906 YY_BREAK
1907case 109:
1908YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001909#line 346 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001910{ RET_TOK(CastOpVal, UIToFP, UITOFP); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001911 YY_BREAK
1912case 110:
1913YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001914#line 347 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001915{ RET_TOK(CastOpVal, SIToFP, SITOFP); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001916 YY_BREAK
1917case 111:
1918YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001919#line 348 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001920{ RET_TOK(CastOpVal, FPToUI, FPTOUI); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001921 YY_BREAK
1922case 112:
1923YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001924#line 349 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001925{ RET_TOK(CastOpVal, FPToSI, FPTOSI); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001926 YY_BREAK
1927case 113:
1928YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001929#line 350 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001930{ RET_TOK(CastOpVal, IntToPtr, INTTOPTR); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001931 YY_BREAK
1932case 114:
1933YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001934#line 351 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001935{ RET_TOK(CastOpVal, PtrToInt, PTRTOINT); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001936 YY_BREAK
1937case 115:
1938YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001939#line 352 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001940{ RET_TOK(CastOpVal, BitCast, BITCAST); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001941 YY_BREAK
1942case 116:
1943YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001944#line 353 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001945{ RET_TOK(OtherOpVal, Select, SELECT); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001946 YY_BREAK
1947case 117:
1948YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001949#line 354 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001950{ RET_TOK(OtherOpVal, VAArg , VAARG); }
Reid Spencer3da59db2006-11-27 01:05:10 +00001951 YY_BREAK
1952case 118:
1953YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001954#line 355 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001955{ RET_TOK(TermOpVal, Ret, RET); }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001956 YY_BREAK
Reid Spencer41dff5e2007-01-26 08:05:27 +00001957case 119:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001958YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001959#line 356 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001960{ RET_TOK(TermOpVal, Br, BR); }
Reid Spencer67d8ed92007-03-22 02:14:08 +00001961 YY_BREAK
1962case 120:
1963YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001964#line 357 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001965{ RET_TOK(TermOpVal, Switch, SWITCH); }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001966 YY_BREAK
Reid Spencer3d6b71e2007-04-09 01:56:05 +00001967case 121:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001968YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001969#line 358 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001970{ RET_TOK(TermOpVal, Invoke, INVOKE); }
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001971 YY_BREAK
1972case 122:
1973YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001974#line 359 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001975{ RET_TOK(TermOpVal, Unwind, UNWIND); }
Owen Anderson1dc69692006-10-18 02:21:48 +00001976 YY_BREAK
Anton Korobeynikov77d0f972007-04-25 14:29:12 +00001977case 123:
Owen Anderson1dc69692006-10-18 02:21:48 +00001978YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001979#line 360 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001980{ RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
Chris Lattnerce5f24e2007-07-05 17:26:49 +00001981 YY_BREAK
1982case 124:
1983YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001984#line 362 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001985{ RET_TOK(MemOpVal, Malloc, MALLOC); }
Reid Spencerb8f85052007-07-31 03:50:36 +00001986 YY_BREAK
1987case 125:
1988YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001989#line 363 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001990{ RET_TOK(MemOpVal, Alloca, ALLOCA); }
Reid Spencerb8f85052007-07-31 03:50:36 +00001991 YY_BREAK
1992case 126:
1993YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001994#line 364 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00001995{ RET_TOK(MemOpVal, Free, FREE); }
Reid Spencerb8f85052007-07-31 03:50:36 +00001996 YY_BREAK
1997case 127:
1998YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00001999#line 365 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002000{ RET_TOK(MemOpVal, Load, LOAD); }
Reid Spencerb8f85052007-07-31 03:50:36 +00002001 YY_BREAK
2002case 128:
2003YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002004#line 366 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002005{ RET_TOK(MemOpVal, Store, STORE); }
Reid Spencerb8f85052007-07-31 03:50:36 +00002006 YY_BREAK
2007case 129:
2008YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002009#line 367 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002010{ RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
Reid Spencerb8f85052007-07-31 03:50:36 +00002011 YY_BREAK
2012case 130:
2013YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002014#line 369 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002015{ RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
2016 YY_BREAK
2017case 131:
2018YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002019#line 370 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002020{ RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }
2021 YY_BREAK
2022case 132:
2023YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002024#line 371 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002025{ RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
2026 YY_BREAK
2027case 133:
2028YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002029#line 374 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002030{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002031 llvmAsmlval.StrVal = new std::string(yytext+1); // Skip %
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002032 return LOCALVAR;
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002033 }
2034 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002035case 134:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002036YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002037#line 378 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002038{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002039 llvmAsmlval.StrVal = new std::string(yytext+1); // Skip @
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002040 return GLOBALVAR;
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002041 }
2042 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002043case 135:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002044YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002045#line 382 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00002046{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002047 yytext[yyleng-1] = 0; // nuke colon
2048 llvmAsmlval.StrVal = new std::string(yytext);
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00002049 return LABELSTR;
2050 }
2051 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002052case 136:
Lauro Ramos Venancioc7635522007-04-12 18:32:50 +00002053YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002054#line 387 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002055{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002056 yytext[yyleng-2] = 0; // nuke colon, end quote
Reid Spencere2aa9612007-05-22 19:08:16 +00002057 const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002058 llvmAsmlval.StrVal =
2059 new std::string(yytext+1, EndChar - yytext - 1);
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002060 return LABELSTR;
2061 }
2062 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002063case 137:
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002064YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002065#line 395 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002066{ yytext[yyleng-1] = 0; // nuke end quote
Reid Spencere2aa9612007-05-22 19:08:16 +00002067 const char* EndChar = UnEscapeLexed(yytext+1, yytext+yyleng);
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002068 llvmAsmlval.StrVal =
2069 new std::string(yytext+1, EndChar - yytext - 1);
Reid Spencer68a24bd2005-08-27 18:50:39 +00002070 return STRINGCONSTANT;
2071 }
2072 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002073case 138:
Reid Spencer6f407902007-01-13 05:00:46 +00002074YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002075#line 401 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002076{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002077 yytext[yyleng-1] = 0; // nuke end quote
Reid Spencere2aa9612007-05-22 19:08:16 +00002078 const char* EndChar =
2079 UnEscapeLexed(yytext+2, yytext+yyleng);
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002080 llvmAsmlval.StrVal =
2081 new std::string(yytext+2, EndChar - yytext - 2);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002082 return ATSTRINGCONSTANT;
2083 }
2084 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002085case 139:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002086YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002087#line 409 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencered951ea2007-05-19 07:22:10 +00002088{
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002089 yytext[yyleng-1] = 0; // nuke end quote
Reid Spencere2aa9612007-05-22 19:08:16 +00002090 const char* EndChar =
2091 UnEscapeLexed(yytext+2, yytext+yyleng);
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002092 llvmAsmlval.StrVal =
2093 new std::string(yytext+2, EndChar - yytext - 2);
Reid Spencered951ea2007-05-19 07:22:10 +00002094 return PCTSTRINGCONSTANT;
2095 }
2096 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002097case 140:
Reid Spencered951ea2007-05-19 07:22:10 +00002098YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002099#line 417 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002100{
2101 uint32_t numBits = ((yyleng * 64) / 19) + 1;
2102 APInt Tmp(numBits, yytext, yyleng, 10);
Reid Spencer38c91a92007-02-28 02:24:54 +00002103 uint32_t activeBits = Tmp.getActiveBits();
2104 if (activeBits > 0 && activeBits < numBits)
2105 Tmp.trunc(activeBits);
2106 if (Tmp.getBitWidth() > 64) {
2107 llvmAsmlval.APIntVal = new APInt(Tmp);
2108 return EUAPINTVAL;
2109 } else {
2110 llvmAsmlval.UInt64Val = Tmp.getZExtValue();
2111 return EUINT64VAL;
2112 }
2113 }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002114 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002115case 141:
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002116YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002117#line 431 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002118{
2119 uint32_t numBits = (((yyleng-1) * 64) / 19) + 2;
2120 APInt Tmp(numBits, yytext, yyleng, 10);
Reid Spencer38c91a92007-02-28 02:24:54 +00002121 uint32_t minBits = Tmp.getMinSignedBits();
2122 if (minBits > 0 && minBits < numBits)
2123 Tmp.trunc(minBits);
2124 if (Tmp.getBitWidth() > 64) {
2125 llvmAsmlval.APIntVal = new APInt(Tmp);
2126 return ESAPINTVAL;
2127 } else {
2128 llvmAsmlval.SInt64Val = Tmp.getSExtValue();
2129 return ESINT64VAL;
2130 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002131 }
2132 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002133case 142:
Reid Spencer6f407902007-01-13 05:00:46 +00002134YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002135#line 446 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer0a8a16b2007-05-22 18:52:55 +00002136{ int len = yyleng - 3;
Reid Spencer38c91a92007-02-28 02:24:54 +00002137 uint32_t bits = len * 4;
Reid Spencered951ea2007-05-19 07:22:10 +00002138 APInt Tmp(bits, yytext+3, len, 16);
Reid Spencer38c91a92007-02-28 02:24:54 +00002139 uint32_t activeBits = Tmp.getActiveBits();
2140 if (activeBits > 0 && activeBits < bits)
2141 Tmp.trunc(activeBits);
2142 if (Tmp.getBitWidth() > 64) {
2143 llvmAsmlval.APIntVal = new APInt(Tmp);
Reid Spencered951ea2007-05-19 07:22:10 +00002144 return yytext[0] == 's' ? ESAPINTVAL : EUAPINTVAL;
2145 } else if (yytext[0] == 's') {
Reid Spencer38c91a92007-02-28 02:24:54 +00002146 llvmAsmlval.SInt64Val = Tmp.getSExtValue();
2147 return ESINT64VAL;
2148 } else {
2149 llvmAsmlval.UInt64Val = Tmp.getZExtValue();
2150 return EUINT64VAL;
2151 }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002152 }
Reid Spencer6f407902007-01-13 05:00:46 +00002153 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002154case 143:
Reid Spencer6fd36ab2006-12-29 20:35:03 +00002155YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002156#line 464 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002157{
Reid Spencered951ea2007-05-19 07:22:10 +00002158 uint64_t Val = atoull(yytext+1);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002159 if ((unsigned)Val != Val)
2160 GenerateError("Invalid value number (too large)!");
2161 llvmAsmlval.UIntVal = unsigned(Val);
2162 return LOCALVAL_ID;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002163 }
2164 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002165case 144:
Owen Anderson1dc69692006-10-18 02:21:48 +00002166YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002167#line 471 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002168{
Reid Spencered951ea2007-05-19 07:22:10 +00002169 uint64_t Val = atoull(yytext+1);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002170 if ((unsigned)Val != Val)
2171 GenerateError("Invalid value number (too large)!");
2172 llvmAsmlval.UIntVal = unsigned(Val);
2173 return GLOBALVAL_ID;
2174 }
Reid Spencer6fd36ab2006-12-29 20:35:03 +00002175 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002176case 145:
Reid Spencered951ea2007-05-19 07:22:10 +00002177YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002178#line 479 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen43421b32007-09-06 18:13:44 +00002179{ llvmAsmlval.FPVal = new APFloat(atof(yytext)); return FPVAL; }
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002180 YY_BREAK
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002181case 146:
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002182YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002183#line 480 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Dale Johannesen43421b32007-09-06 18:13:44 +00002184{ llvmAsmlval.FPVal = new APFloat(HexToFP(yytext));
2185 return FPVAL;
2186 }
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002187 YY_BREAK
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002188case 147:
2189YY_RULE_SETUP
2190#line 483 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2191{ uint64_t Pair[2];
2192 HexToIntPair(yytext, Pair);
2193 llvmAsmlval.FPVal = new APFloat(APInt(80, 2, Pair));
2194 return FPVAL;
2195 }
2196 YY_BREAK
2197case 148:
2198YY_RULE_SETUP
2199#line 488 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2200{ uint64_t Pair[2];
2201 HexToIntPair(yytext, Pair);
2202 llvmAsmlval.FPVal = new APFloat(APInt(128, 2, Pair));
2203 return FPVAL;
2204 }
2205 YY_BREAK
2206case 149:
2207YY_RULE_SETUP
2208#line 493 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
2209{ uint64_t Pair[2];
2210 HexToIntPair(yytext, Pair);
2211 llvmAsmlval.FPVal = new APFloat(APInt(128, 2, Pair));
2212 return FPVAL;
2213 }
2214 YY_BREAK
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002215case YY_STATE_EOF(INITIAL):
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002216#line 499 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002217{
2218 /* Make sure to free the internal buffers for flex when we are
2219 * done reading our input!
2220 */
Reid Spencered951ea2007-05-19 07:22:10 +00002221 yy_delete_buffer(YY_CURRENT_BUFFER);
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002222 return EOF;
2223 }
2224 YY_BREAK
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002225case 150:
Anton Korobeynikovf52e6082007-04-29 18:38:24 +00002226YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002227#line 507 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002228{ /* Ignore whitespace */ }
Reid Spencered951ea2007-05-19 07:22:10 +00002229 YY_BREAK
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002230case 151:
Reid Spencered951ea2007-05-19 07:22:10 +00002231YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002232#line 508 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002233{ return yytext[0]; }
2234 YY_BREAK
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002235case 152:
Chris Lattnerce5f24e2007-07-05 17:26:49 +00002236YY_RULE_SETUP
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002237#line 510 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002238YY_FATAL_ERROR( "flex scanner jammed" );
2239 YY_BREAK
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002240#line 2241 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00002241
2242 case YY_END_OF_BUFFER:
2243 {
2244 /* Amount of text matched not including the EOB char. */
Reid Spencered951ea2007-05-19 07:22:10 +00002245 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002246
2247 /* Undo the effects of YY_DO_BEFORE_ACTION. */
Reid Spencered951ea2007-05-19 07:22:10 +00002248 *yy_cp = yy_hold_char;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002249 YY_RESTORE_YY_MORE_OFFSET
2250
Reid Spencered951ea2007-05-19 07:22:10 +00002251 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002252 {
2253 /* We're scanning a new file or input source. It's
2254 * possible that this happened because the user
Reid Spencered951ea2007-05-19 07:22:10 +00002255 * just pointed yyin at a new source and called
2256 * yylex(). If so, then we have to assure
2257 * consistency between yy_current_buffer and our
Reid Spencer68a24bd2005-08-27 18:50:39 +00002258 * globals. Here is the right place to do so, because
2259 * this is the first action (other than possibly a
2260 * back-up) that will match for the new input source.
2261 */
Reid Spencered951ea2007-05-19 07:22:10 +00002262 yy_n_chars = yy_current_buffer->yy_n_chars;
2263 yy_current_buffer->yy_input_file = yyin;
2264 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002265 }
2266
2267 /* Note that here we test for yy_c_buf_p "<=" to the position
2268 * of the first EOB in the buffer, since yy_c_buf_p will
2269 * already have been incremented past the NUL character
2270 * (since all states make transitions on EOB to the
2271 * end-of-buffer state). Contrast this with the test
2272 * in input().
2273 */
Reid Spencered951ea2007-05-19 07:22:10 +00002274 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002275 { /* This was really a NUL. */
2276 yy_state_type yy_next_state;
2277
Reid Spencered951ea2007-05-19 07:22:10 +00002278 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002279
Reid Spencered951ea2007-05-19 07:22:10 +00002280 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002281
2282 /* Okay, we're now positioned to make the NUL
2283 * transition. We couldn't have
2284 * yy_get_previous_state() go ahead and do it
2285 * for us because it doesn't know how to deal
2286 * with the possibility of jamming (and we don't
2287 * want to build jamming into it because then it
2288 * will run more slowly).
2289 */
2290
2291 yy_next_state = yy_try_NUL_trans( yy_current_state );
2292
Reid Spencered951ea2007-05-19 07:22:10 +00002293 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002294
2295 if ( yy_next_state )
2296 {
2297 /* Consume the NUL. */
Reid Spencered951ea2007-05-19 07:22:10 +00002298 yy_cp = ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002299 yy_current_state = yy_next_state;
2300 goto yy_match;
2301 }
2302
2303 else
2304 {
Reid Spencered951ea2007-05-19 07:22:10 +00002305 yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002306 goto yy_find_action;
2307 }
2308 }
2309
Reid Spencered951ea2007-05-19 07:22:10 +00002310 else switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002311 {
2312 case EOB_ACT_END_OF_FILE:
2313 {
Reid Spencered951ea2007-05-19 07:22:10 +00002314 yy_did_buffer_switch_on_eof = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002315
Reid Spencered951ea2007-05-19 07:22:10 +00002316 if ( yywrap() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002317 {
2318 /* Note: because we've taken care in
2319 * yy_get_next_buffer() to have set up
Reid Spencered951ea2007-05-19 07:22:10 +00002320 * yytext, we can now set up
Reid Spencer68a24bd2005-08-27 18:50:39 +00002321 * yy_c_buf_p so that if some total
2322 * hoser (like flex itself) wants to
2323 * call the scanner after we return the
2324 * YY_NULL, it'll still work - another
2325 * YY_NULL will get returned.
2326 */
Reid Spencered951ea2007-05-19 07:22:10 +00002327 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002328
2329 yy_act = YY_STATE_EOF(YY_START);
2330 goto do_action;
2331 }
2332
2333 else
2334 {
Reid Spencered951ea2007-05-19 07:22:10 +00002335 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002336 YY_NEW_FILE;
2337 }
2338 break;
2339 }
2340
2341 case EOB_ACT_CONTINUE_SCAN:
Reid Spencered951ea2007-05-19 07:22:10 +00002342 yy_c_buf_p =
2343 yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002344
Reid Spencered951ea2007-05-19 07:22:10 +00002345 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002346
Reid Spencered951ea2007-05-19 07:22:10 +00002347 yy_cp = yy_c_buf_p;
2348 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002349 goto yy_match;
2350
2351 case EOB_ACT_LAST_MATCH:
Reid Spencered951ea2007-05-19 07:22:10 +00002352 yy_c_buf_p =
2353 &yy_current_buffer->yy_ch_buf[yy_n_chars];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002354
Reid Spencered951ea2007-05-19 07:22:10 +00002355 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002356
Reid Spencered951ea2007-05-19 07:22:10 +00002357 yy_cp = yy_c_buf_p;
2358 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002359 goto yy_find_action;
2360 }
2361 break;
2362 }
2363
2364 default:
2365 YY_FATAL_ERROR(
2366 "fatal flex scanner internal error--no action found" );
2367 } /* end of action switch */
2368 } /* end of scanning one token */
Reid Spencered951ea2007-05-19 07:22:10 +00002369 } /* end of yylex */
2370
Reid Spencer68a24bd2005-08-27 18:50:39 +00002371
2372/* yy_get_next_buffer - try to read in a new buffer
2373 *
2374 * Returns a code representing an action:
2375 * EOB_ACT_LAST_MATCH -
2376 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2377 * EOB_ACT_END_OF_FILE - end of file
2378 */
Reid Spencered951ea2007-05-19 07:22:10 +00002379
2380static int yy_get_next_buffer()
2381 {
2382 register char *dest = yy_current_buffer->yy_ch_buf;
2383 register char *source = yytext_ptr;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002384 register int number_to_move, i;
2385 int ret_val;
2386
Reid Spencered951ea2007-05-19 07:22:10 +00002387 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002388 YY_FATAL_ERROR(
2389 "fatal flex scanner internal error--end of buffer missed" );
2390
Reid Spencered951ea2007-05-19 07:22:10 +00002391 if ( yy_current_buffer->yy_fill_buffer == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002392 { /* Don't try to fill the buffer, so this is an EOF. */
Reid Spencered951ea2007-05-19 07:22:10 +00002393 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002394 {
2395 /* We matched a single character, the EOB, so
2396 * treat this as a final EOF.
2397 */
2398 return EOB_ACT_END_OF_FILE;
2399 }
2400
2401 else
2402 {
2403 /* We matched some text prior to the EOB, first
2404 * process it.
2405 */
2406 return EOB_ACT_LAST_MATCH;
2407 }
2408 }
2409
2410 /* Try to read more data. */
2411
2412 /* First move last chars to start of buffer. */
Reid Spencered951ea2007-05-19 07:22:10 +00002413 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002414
2415 for ( i = 0; i < number_to_move; ++i )
2416 *(dest++) = *(source++);
2417
Reid Spencered951ea2007-05-19 07:22:10 +00002418 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002419 /* don't do the read, it's not guaranteed to return an EOF,
2420 * just force an EOF
2421 */
Reid Spencered951ea2007-05-19 07:22:10 +00002422 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002423
2424 else
2425 {
Reid Spencered951ea2007-05-19 07:22:10 +00002426 int num_to_read =
2427 yy_current_buffer->yy_buf_size - number_to_move - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002428
2429 while ( num_to_read <= 0 )
2430 { /* Not enough room in the buffer - grow it. */
Reid Spencered951ea2007-05-19 07:22:10 +00002431#ifdef YY_USES_REJECT
2432 YY_FATAL_ERROR(
2433"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2434#else
Reid Spencer68a24bd2005-08-27 18:50:39 +00002435
2436 /* just a shorter name for the current buffer */
Reid Spencered951ea2007-05-19 07:22:10 +00002437 YY_BUFFER_STATE b = yy_current_buffer;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002438
2439 int yy_c_buf_p_offset =
Reid Spencered951ea2007-05-19 07:22:10 +00002440 (int) (yy_c_buf_p - b->yy_ch_buf);
Reid Spencer68a24bd2005-08-27 18:50:39 +00002441
2442 if ( b->yy_is_our_buffer )
2443 {
2444 int new_size = b->yy_buf_size * 2;
2445
2446 if ( new_size <= 0 )
2447 b->yy_buf_size += b->yy_buf_size / 8;
2448 else
2449 b->yy_buf_size *= 2;
2450
2451 b->yy_ch_buf = (char *)
2452 /* Include room in for 2 EOB chars. */
Reid Spencered951ea2007-05-19 07:22:10 +00002453 yy_flex_realloc( (void *) b->yy_ch_buf,
2454 b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002455 }
2456 else
2457 /* Can't grow it, we don't own it. */
2458 b->yy_ch_buf = 0;
2459
2460 if ( ! b->yy_ch_buf )
2461 YY_FATAL_ERROR(
2462 "fatal error - scanner input buffer overflow" );
2463
Reid Spencered951ea2007-05-19 07:22:10 +00002464 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002465
Reid Spencered951ea2007-05-19 07:22:10 +00002466 num_to_read = yy_current_buffer->yy_buf_size -
Reid Spencer68a24bd2005-08-27 18:50:39 +00002467 number_to_move - 1;
Reid Spencered951ea2007-05-19 07:22:10 +00002468#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002469 }
2470
2471 if ( num_to_read > YY_READ_BUF_SIZE )
2472 num_to_read = YY_READ_BUF_SIZE;
2473
2474 /* Read in more data. */
Reid Spencered951ea2007-05-19 07:22:10 +00002475 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
2476 yy_n_chars, num_to_read );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002477
Reid Spencered951ea2007-05-19 07:22:10 +00002478 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002479 }
2480
Reid Spencered951ea2007-05-19 07:22:10 +00002481 if ( yy_n_chars == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002482 {
2483 if ( number_to_move == YY_MORE_ADJ )
2484 {
2485 ret_val = EOB_ACT_END_OF_FILE;
Reid Spencered951ea2007-05-19 07:22:10 +00002486 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002487 }
2488
2489 else
2490 {
2491 ret_val = EOB_ACT_LAST_MATCH;
Reid Spencered951ea2007-05-19 07:22:10 +00002492 yy_current_buffer->yy_buffer_status =
Reid Spencer68a24bd2005-08-27 18:50:39 +00002493 YY_BUFFER_EOF_PENDING;
2494 }
2495 }
2496
2497 else
2498 ret_val = EOB_ACT_CONTINUE_SCAN;
2499
Reid Spencered951ea2007-05-19 07:22:10 +00002500 yy_n_chars += number_to_move;
2501 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
2502 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002503
Reid Spencered951ea2007-05-19 07:22:10 +00002504 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002505
2506 return ret_val;
Reid Spencered951ea2007-05-19 07:22:10 +00002507 }
2508
Reid Spencer68a24bd2005-08-27 18:50:39 +00002509
2510/* yy_get_previous_state - get the state just before the EOB char was reached */
2511
Reid Spencered951ea2007-05-19 07:22:10 +00002512static yy_state_type yy_get_previous_state()
2513 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002514 register yy_state_type yy_current_state;
2515 register char *yy_cp;
2516
Reid Spencered951ea2007-05-19 07:22:10 +00002517 yy_current_state = yy_start;
2518 yy_state_ptr = yy_state_buf;
2519 *yy_state_ptr++ = yy_current_state;
2520
2521 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002522 {
2523 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2524 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2525 {
2526 yy_current_state = (int) yy_def[yy_current_state];
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002527 if ( yy_current_state >= 606 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002528 yy_c = yy_meta[(unsigned int) yy_c];
2529 }
2530 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Reid Spencered951ea2007-05-19 07:22:10 +00002531 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002532 }
2533
2534 return yy_current_state;
Reid Spencered951ea2007-05-19 07:22:10 +00002535 }
2536
Reid Spencer68a24bd2005-08-27 18:50:39 +00002537
2538/* yy_try_NUL_trans - try to make a transition on the NUL character
2539 *
2540 * synopsis
2541 * next_state = yy_try_NUL_trans( current_state );
2542 */
Reid Spencered951ea2007-05-19 07:22:10 +00002543
2544#ifdef YY_USE_PROTOS
2545static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
2546#else
2547static yy_state_type yy_try_NUL_trans( yy_current_state )
2548yy_state_type yy_current_state;
2549#endif
2550 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002551 register int yy_is_jam;
2552
2553 register YY_CHAR yy_c = 1;
2554 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2555 {
2556 yy_current_state = (int) yy_def[yy_current_state];
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002557 if ( yy_current_state >= 606 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002558 yy_c = yy_meta[(unsigned int) yy_c];
2559 }
2560 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00002561 yy_is_jam = (yy_current_state == 605);
Reid Spencered951ea2007-05-19 07:22:10 +00002562 if ( ! yy_is_jam )
2563 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002564
2565 return yy_is_jam ? 0 : yy_current_state;
Reid Spencered951ea2007-05-19 07:22:10 +00002566 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002567
2568
Reid Spencered951ea2007-05-19 07:22:10 +00002569#ifndef YY_NO_UNPUT
2570#ifdef YY_USE_PROTOS
2571static inline void yyunput( int c, register char *yy_bp )
2572#else
2573static inline void yyunput( c, yy_bp )
2574int c;
2575register char *yy_bp;
2576#endif
2577 {
2578 register char *yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002579
Reid Spencered951ea2007-05-19 07:22:10 +00002580 /* undo effects of setting up yytext */
2581 *yy_cp = yy_hold_char;
2582
2583 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002584 { /* need to shift things up to make room */
2585 /* +2 for EOB chars. */
Reid Spencered951ea2007-05-19 07:22:10 +00002586 register int number_to_move = yy_n_chars + 2;
2587 register char *dest = &yy_current_buffer->yy_ch_buf[
2588 yy_current_buffer->yy_buf_size + 2];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002589 register char *source =
Reid Spencered951ea2007-05-19 07:22:10 +00002590 &yy_current_buffer->yy_ch_buf[number_to_move];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002591
Reid Spencered951ea2007-05-19 07:22:10 +00002592 while ( source > yy_current_buffer->yy_ch_buf )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002593 *--dest = *--source;
2594
2595 yy_cp += (int) (dest - source);
2596 yy_bp += (int) (dest - source);
Reid Spencered951ea2007-05-19 07:22:10 +00002597 yy_current_buffer->yy_n_chars =
2598 yy_n_chars = yy_current_buffer->yy_buf_size;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002599
Reid Spencered951ea2007-05-19 07:22:10 +00002600 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002601 YY_FATAL_ERROR( "flex scanner push-back overflow" );
2602 }
2603
2604 *--yy_cp = (char) c;
2605
Reid Spencered951ea2007-05-19 07:22:10 +00002606 if ( c == '\n' )
2607 --yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002608
Reid Spencered951ea2007-05-19 07:22:10 +00002609 yytext_ptr = yy_bp;
2610 yy_hold_char = *yy_cp;
2611 yy_c_buf_p = yy_cp;
2612 }
2613#endif /* ifndef YY_NO_UNPUT */
2614
Reid Spencer6f407902007-01-13 05:00:46 +00002615
Reid Spencer68a24bd2005-08-27 18:50:39 +00002616#ifdef __cplusplus
Reid Spencered951ea2007-05-19 07:22:10 +00002617static int yyinput()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002618#else
Reid Spencered951ea2007-05-19 07:22:10 +00002619static int input()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002620#endif
Reid Spencered951ea2007-05-19 07:22:10 +00002621 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002622 int c;
2623
Reid Spencered951ea2007-05-19 07:22:10 +00002624 *yy_c_buf_p = yy_hold_char;
2625
2626 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002627 {
2628 /* yy_c_buf_p now points to the character we want to return.
2629 * If this occurs *before* the EOB characters, then it's a
2630 * valid NUL; if not, then we've hit the end of the buffer.
2631 */
Reid Spencered951ea2007-05-19 07:22:10 +00002632 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002633 /* This was really a NUL. */
Reid Spencered951ea2007-05-19 07:22:10 +00002634 *yy_c_buf_p = '\0';
Reid Spencer68a24bd2005-08-27 18:50:39 +00002635
2636 else
2637 { /* need more input */
Reid Spencered951ea2007-05-19 07:22:10 +00002638 int offset = yy_c_buf_p - yytext_ptr;
2639 ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002640
Reid Spencered951ea2007-05-19 07:22:10 +00002641 switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002642 {
2643 case EOB_ACT_LAST_MATCH:
2644 /* This happens because yy_g_n_b()
2645 * sees that we've accumulated a
2646 * token and flags that we need to
2647 * try matching the token before
2648 * proceeding. But for input(),
2649 * there's no matching to consider.
2650 * So convert the EOB_ACT_LAST_MATCH
2651 * to EOB_ACT_END_OF_FILE.
2652 */
2653
2654 /* Reset buffer status. */
Reid Spencered951ea2007-05-19 07:22:10 +00002655 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002656
Reid Spencered951ea2007-05-19 07:22:10 +00002657 /* fall through */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002658
2659 case EOB_ACT_END_OF_FILE:
2660 {
Reid Spencered951ea2007-05-19 07:22:10 +00002661 if ( yywrap() )
Reid Spencer61c83e02006-08-18 08:43:06 +00002662 return EOF;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002663
Reid Spencered951ea2007-05-19 07:22:10 +00002664 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002665 YY_NEW_FILE;
2666#ifdef __cplusplus
2667 return yyinput();
2668#else
2669 return input();
2670#endif
2671 }
2672
2673 case EOB_ACT_CONTINUE_SCAN:
Reid Spencered951ea2007-05-19 07:22:10 +00002674 yy_c_buf_p = yytext_ptr + offset;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002675 break;
2676 }
2677 }
2678 }
2679
Reid Spencered951ea2007-05-19 07:22:10 +00002680 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */
2681 *yy_c_buf_p = '\0'; /* preserve yytext */
2682 yy_hold_char = *++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002683
2684 if ( c == '\n' )
Reid Spencered951ea2007-05-19 07:22:10 +00002685 ++yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002686
2687 return c;
Reid Spencered951ea2007-05-19 07:22:10 +00002688 }
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002689
Anton Korobeynikov9adeaa22007-01-28 13:37:39 +00002690
Reid Spencered951ea2007-05-19 07:22:10 +00002691#ifdef YY_USE_PROTOS
2692void yyrestart( FILE *input_file )
2693#else
2694void yyrestart( input_file )
2695FILE *input_file;
2696#endif
2697 {
2698 if ( ! yy_current_buffer )
2699 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
2700
2701 yy_init_buffer( yy_current_buffer, input_file );
2702 yy_load_buffer_state();
Reid Spencer6f407902007-01-13 05:00:46 +00002703 }
Reid Spencer41dff5e2007-01-26 08:05:27 +00002704
Reid Spencer68a24bd2005-08-27 18:50:39 +00002705
Reid Spencered951ea2007-05-19 07:22:10 +00002706#ifdef YY_USE_PROTOS
2707void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
2708#else
2709void yy_switch_to_buffer( new_buffer )
2710YY_BUFFER_STATE new_buffer;
2711#endif
2712 {
2713 if ( yy_current_buffer == new_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002714 return;
2715
Reid Spencered951ea2007-05-19 07:22:10 +00002716 if ( yy_current_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002717 {
2718 /* Flush out information for old buffer. */
Reid Spencered951ea2007-05-19 07:22:10 +00002719 *yy_c_buf_p = yy_hold_char;
2720 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
2721 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002722 }
2723
Reid Spencered951ea2007-05-19 07:22:10 +00002724 yy_current_buffer = new_buffer;
2725 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002726
2727 /* We don't actually know whether we did this switch during
Reid Spencered951ea2007-05-19 07:22:10 +00002728 * EOF (yywrap()) processing, but the only time this flag
2729 * is looked at is after yywrap() is called, so it's safe
Reid Spencer68a24bd2005-08-27 18:50:39 +00002730 * to go ahead and always set it.
2731 */
Reid Spencered951ea2007-05-19 07:22:10 +00002732 yy_did_buffer_switch_on_eof = 1;
2733 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002734
2735
Reid Spencered951ea2007-05-19 07:22:10 +00002736#ifdef YY_USE_PROTOS
2737void yy_load_buffer_state( void )
2738#else
2739void yy_load_buffer_state()
2740#endif
2741 {
2742 yy_n_chars = yy_current_buffer->yy_n_chars;
2743 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
2744 yyin = yy_current_buffer->yy_input_file;
2745 yy_hold_char = *yy_c_buf_p;
2746 }
2747
2748
2749#ifdef YY_USE_PROTOS
2750YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
2751#else
2752YY_BUFFER_STATE yy_create_buffer( file, size )
2753FILE *file;
2754int size;
2755#endif
2756 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002757 YY_BUFFER_STATE b;
Reid Spencered951ea2007-05-19 07:22:10 +00002758
2759 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002760 if ( ! b )
Reid Spencered951ea2007-05-19 07:22:10 +00002761 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002762
2763 b->yy_buf_size = size;
2764
2765 /* yy_ch_buf has to be 2 characters longer than the size given because
2766 * we need to put in 2 end-of-buffer characters.
2767 */
Reid Spencered951ea2007-05-19 07:22:10 +00002768 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002769 if ( ! b->yy_ch_buf )
Reid Spencered951ea2007-05-19 07:22:10 +00002770 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002771
2772 b->yy_is_our_buffer = 1;
2773
Reid Spencered951ea2007-05-19 07:22:10 +00002774 yy_init_buffer( b, file );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002775
2776 return b;
Reid Spencered951ea2007-05-19 07:22:10 +00002777 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002778
Reid Spencered951ea2007-05-19 07:22:10 +00002779
2780#ifdef YY_USE_PROTOS
2781void yy_delete_buffer( YY_BUFFER_STATE b )
2782#else
2783void yy_delete_buffer( b )
2784YY_BUFFER_STATE b;
2785#endif
2786 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002787 if ( ! b )
2788 return;
2789
Reid Spencered951ea2007-05-19 07:22:10 +00002790 if ( b == yy_current_buffer )
2791 yy_current_buffer = (YY_BUFFER_STATE) 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002792
2793 if ( b->yy_is_our_buffer )
Reid Spencered951ea2007-05-19 07:22:10 +00002794 yy_flex_free( (void *) b->yy_ch_buf );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002795
Reid Spencered951ea2007-05-19 07:22:10 +00002796 yy_flex_free( (void *) b );
2797 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002798
2799
Dale Johannesen320fc8a2007-08-03 01:03:46 +00002800#ifndef YY_ALWAYS_INTERACTIVE
2801#ifndef YY_NEVER_INTERACTIVE
2802extern int isatty YY_PROTO(( int ));
2803#endif
2804#endif
Reid Spencered951ea2007-05-19 07:22:10 +00002805
2806#ifdef YY_USE_PROTOS
2807void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
2808#else
2809void yy_init_buffer( b, file )
2810YY_BUFFER_STATE b;
2811FILE *file;
2812#endif
2813
2814
2815 {
2816 yy_flush_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002817
2818 b->yy_input_file = file;
2819 b->yy_fill_buffer = 1;
2820
Reid Spencered951ea2007-05-19 07:22:10 +00002821#if YY_ALWAYS_INTERACTIVE
2822 b->yy_is_interactive = 1;
2823#else
2824#if YY_NEVER_INTERACTIVE
2825 b->yy_is_interactive = 0;
2826#else
2827 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
2828#endif
2829#endif
2830 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002831
2832
Reid Spencered951ea2007-05-19 07:22:10 +00002833#ifdef YY_USE_PROTOS
2834void yy_flush_buffer( YY_BUFFER_STATE b )
2835#else
2836void yy_flush_buffer( b )
2837YY_BUFFER_STATE b;
2838#endif
2839
2840 {
2841 if ( ! b )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002842 return;
2843
2844 b->yy_n_chars = 0;
2845
2846 /* We always need two end-of-buffer characters. The first causes
2847 * a transition to the end-of-buffer state. The second causes
2848 * a jam in that state.
2849 */
2850 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
2851 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
2852
2853 b->yy_buf_pos = &b->yy_ch_buf[0];
2854
2855 b->yy_at_bol = 1;
2856 b->yy_buffer_status = YY_BUFFER_NEW;
2857
Reid Spencered951ea2007-05-19 07:22:10 +00002858 if ( b == yy_current_buffer )
2859 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002860 }
2861
2862
Reid Spencered951ea2007-05-19 07:22:10 +00002863#ifndef YY_NO_SCAN_BUFFER
2864#ifdef YY_USE_PROTOS
2865YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
2866#else
2867YY_BUFFER_STATE yy_scan_buffer( base, size )
2868char *base;
2869yy_size_t size;
2870#endif
2871 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002872 YY_BUFFER_STATE b;
Reid Spencered951ea2007-05-19 07:22:10 +00002873
Reid Spencer68a24bd2005-08-27 18:50:39 +00002874 if ( size < 2 ||
2875 base[size-2] != YY_END_OF_BUFFER_CHAR ||
2876 base[size-1] != YY_END_OF_BUFFER_CHAR )
2877 /* They forgot to leave room for the EOB's. */
2878 return 0;
2879
Reid Spencered951ea2007-05-19 07:22:10 +00002880 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002881 if ( ! b )
Reid Spencered951ea2007-05-19 07:22:10 +00002882 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002883
2884 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
2885 b->yy_buf_pos = b->yy_ch_buf = base;
2886 b->yy_is_our_buffer = 0;
2887 b->yy_input_file = 0;
2888 b->yy_n_chars = b->yy_buf_size;
2889 b->yy_is_interactive = 0;
2890 b->yy_at_bol = 1;
2891 b->yy_fill_buffer = 0;
2892 b->yy_buffer_status = YY_BUFFER_NEW;
2893
Reid Spencered951ea2007-05-19 07:22:10 +00002894 yy_switch_to_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002895
2896 return b;
Reid Spencered951ea2007-05-19 07:22:10 +00002897 }
2898#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002899
2900
Reid Spencered951ea2007-05-19 07:22:10 +00002901#ifndef YY_NO_SCAN_STRING
2902#ifdef YY_USE_PROTOS
2903YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
2904#else
2905YY_BUFFER_STATE yy_scan_string( yy_str )
2906yyconst char *yy_str;
2907#endif
2908 {
2909 int len;
2910 for ( len = 0; yy_str[len]; ++len )
2911 ;
2912
2913 return yy_scan_bytes( yy_str, len );
2914 }
2915#endif
2916
2917
2918#ifndef YY_NO_SCAN_BYTES
2919#ifdef YY_USE_PROTOS
2920YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
2921#else
2922YY_BUFFER_STATE yy_scan_bytes( bytes, len )
2923yyconst char *bytes;
2924int len;
2925#endif
2926 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002927 YY_BUFFER_STATE b;
2928 char *buf;
2929 yy_size_t n;
2930 int i;
Reid Spencered951ea2007-05-19 07:22:10 +00002931
Reid Spencer68a24bd2005-08-27 18:50:39 +00002932 /* Get memory for full buffer, including space for trailing EOB's. */
Reid Spencered951ea2007-05-19 07:22:10 +00002933 n = len + 2;
2934 buf = (char *) yy_flex_alloc( n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002935 if ( ! buf )
Reid Spencered951ea2007-05-19 07:22:10 +00002936 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002937
Reid Spencered951ea2007-05-19 07:22:10 +00002938 for ( i = 0; i < len; ++i )
2939 buf[i] = bytes[i];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002940
Reid Spencered951ea2007-05-19 07:22:10 +00002941 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002942
Reid Spencered951ea2007-05-19 07:22:10 +00002943 b = yy_scan_buffer( buf, n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002944 if ( ! b )
Reid Spencered951ea2007-05-19 07:22:10 +00002945 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002946
2947 /* It's okay to grow etc. this buffer, and we should throw it
2948 * away when we're done.
2949 */
2950 b->yy_is_our_buffer = 1;
2951
2952 return b;
Reid Spencered951ea2007-05-19 07:22:10 +00002953 }
2954#endif
2955
2956
2957#ifndef YY_NO_PUSH_STATE
2958#ifdef YY_USE_PROTOS
2959static void yy_push_state( int new_state )
2960#else
2961static void yy_push_state( new_state )
2962int new_state;
2963#endif
2964 {
2965 if ( yy_start_stack_ptr >= yy_start_stack_depth )
2966 {
2967 yy_size_t new_size;
2968
2969 yy_start_stack_depth += YY_START_STACK_INCR;
2970 new_size = yy_start_stack_depth * sizeof( int );
2971
2972 if ( ! yy_start_stack )
2973 yy_start_stack = (int *) yy_flex_alloc( new_size );
2974
2975 else
2976 yy_start_stack = (int *) yy_flex_realloc(
2977 (void *) yy_start_stack, new_size );
2978
2979 if ( ! yy_start_stack )
2980 YY_FATAL_ERROR(
2981 "out of memory expanding start-condition stack" );
2982 }
2983
2984 yy_start_stack[yy_start_stack_ptr++] = YY_START;
2985
2986 BEGIN(new_state);
2987 }
2988#endif
2989
2990
2991#ifndef YY_NO_POP_STATE
2992static void yy_pop_state()
2993 {
2994 if ( --yy_start_stack_ptr < 0 )
2995 YY_FATAL_ERROR( "start-condition stack underflow" );
2996
2997 BEGIN(yy_start_stack[yy_start_stack_ptr]);
2998 }
2999#endif
3000
3001
3002#ifndef YY_NO_TOP_STATE
3003static int yy_top_state()
3004 {
3005 return yy_start_stack[yy_start_stack_ptr - 1];
3006 }
3007#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00003008
3009#ifndef YY_EXIT_FAILURE
3010#define YY_EXIT_FAILURE 2
3011#endif
3012
Reid Spencered951ea2007-05-19 07:22:10 +00003013#ifdef YY_USE_PROTOS
3014static void yy_fatal_error( yyconst char msg[] )
3015#else
3016static void yy_fatal_error( msg )
3017char msg[];
3018#endif
3019 {
3020 (void) fprintf( stderr, "%s\n", msg );
Reid Spencer68a24bd2005-08-27 18:50:39 +00003021 exit( YY_EXIT_FAILURE );
Reid Spencered951ea2007-05-19 07:22:10 +00003022 }
3023
3024
Reid Spencer68a24bd2005-08-27 18:50:39 +00003025
3026/* Redefine yyless() so it works in section 3 code. */
3027
3028#undef yyless
3029#define yyless(n) \
3030 do \
3031 { \
Reid Spencered951ea2007-05-19 07:22:10 +00003032 /* Undo effects of setting up yytext. */ \
3033 yytext[yyleng] = yy_hold_char; \
3034 yy_c_buf_p = yytext + n; \
3035 yy_hold_char = *yy_c_buf_p; \
3036 *yy_c_buf_p = '\0'; \
3037 yyleng = n; \
Reid Spencer68a24bd2005-08-27 18:50:39 +00003038 } \
3039 while ( 0 )
3040
3041
Reid Spencered951ea2007-05-19 07:22:10 +00003042/* Internal utility routines. */
Reid Spencer68a24bd2005-08-27 18:50:39 +00003043
3044#ifndef yytext_ptr
Reid Spencered951ea2007-05-19 07:22:10 +00003045#ifdef YY_USE_PROTOS
3046static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
3047#else
3048static void yy_flex_strncpy( s1, s2, n )
3049char *s1;
3050yyconst char *s2;
3051int n;
3052#endif
3053 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00003054 register int i;
3055 for ( i = 0; i < n; ++i )
3056 s1[i] = s2[i];
Reid Spencered951ea2007-05-19 07:22:10 +00003057 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00003058#endif
3059
3060#ifdef YY_NEED_STRLEN
Reid Spencered951ea2007-05-19 07:22:10 +00003061#ifdef YY_USE_PROTOS
3062static int yy_flex_strlen( yyconst char *s )
3063#else
3064static int yy_flex_strlen( s )
3065yyconst char *s;
3066#endif
3067 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00003068 register int n;
3069 for ( n = 0; s[n]; ++n )
3070 ;
3071
3072 return n;
Reid Spencered951ea2007-05-19 07:22:10 +00003073 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00003074#endif
3075
Reid Spencer9c9b63a2007-04-28 16:07:31 +00003076
Reid Spencered951ea2007-05-19 07:22:10 +00003077#ifdef YY_USE_PROTOS
3078static void *yy_flex_alloc( yy_size_t size )
3079#else
3080static void *yy_flex_alloc( size )
3081yy_size_t size;
3082#endif
3083 {
3084 return (void *) malloc( size );
3085 }
3086
3087#ifdef YY_USE_PROTOS
3088static inline void *yy_flex_realloc( void *ptr, yy_size_t size )
3089#else
3090static inline void *yy_flex_realloc( ptr, size )
3091void *ptr;
3092yy_size_t size;
3093#endif
3094 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00003095 /* The cast to (char *) in the following accommodates both
3096 * implementations that use char* generic pointers, and those
3097 * that use void* generic pointers. It works with the latter
3098 * because both ANSI C and C++ allow castless assignment from
3099 * any pointer type to void*, and deal with argument conversions
3100 * as though doing an assignment.
3101 */
3102 return (void *) realloc( (char *) ptr, size );
Reid Spencered951ea2007-05-19 07:22:10 +00003103 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00003104
Reid Spencered951ea2007-05-19 07:22:10 +00003105#ifdef YY_USE_PROTOS
3106static void yy_flex_free( void *ptr )
3107#else
3108static void yy_flex_free( ptr )
3109void *ptr;
3110#endif
3111 {
3112 free( ptr );
3113 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00003114
Reid Spencered951ea2007-05-19 07:22:10 +00003115#if YY_MAIN
3116int main()
3117 {
3118 yylex();
3119 return 0;
3120 }
3121#endif
Dale Johannesenc72cd7e2007-09-11 18:33:39 +00003122#line 510 "/Volumes/MacOS9/gcc/llvm/lib/AsmParser/Lexer.l"
Chris Lattner2fecc0f2006-02-15 07:02:59 +00003123