blob: d11bfa03b38cb99526144a4d367894b0c83c4b6d [file] [log] [blame]
Owen Anderson1dc69692006-10-18 02:21:48 +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
Owen Anderson1dc69692006-10-18 02:21:48 +000019#line 20 "Lexer.cpp"
Reid Spencer3ed469c2006-11-02 20:25:50 +000020/* A lexical scanner generated by flex*/
Reid Spencer68a24bd2005-08-27 18:50:39 +000021
Owen Anderson1dc69692006-10-18 02:21:48 +000022/* Scanner skeleton version:
23 * $Header$
24 */
25
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 Spencer3ed469c2006-11-02 20:25:50 +000031#include <unistd.h>
Reid Spencer68a24bd2005-08-27 18:50:39 +000032
33
Owen Anderson1dc69692006-10-18 02:21:48 +000034/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
35#ifdef c_plusplus
36#ifndef __cplusplus
37#define __cplusplus
38#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +000039#endif
40
41
42#ifdef __cplusplus
43
Owen Anderson1dc69692006-10-18 02:21:48 +000044#include <stdlib.h>
Owen Anderson1dc69692006-10-18 02:21:48 +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
Owen Anderson1dc69692006-10-18 02:21:48 +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
Owen Anderson1dc69692006-10-18 02:21:48 +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
Owen Anderson1dc69692006-10-18 02:21:48 +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 */
Owen Anderson1dc69692006-10-18 02:21:48 +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 */
Owen Anderson1dc69692006-10-18 02:21:48 +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". */
Owen Anderson1dc69692006-10-18 02:21:48 +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
Owen Anderson1dc69692006-10-18 02:21:48 +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
Owen Anderson1dc69692006-10-18 02:21:48 +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 { \
Owen Anderson1dc69692006-10-18 02:21:48 +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 \
Owen Anderson1dc69692006-10-18 02:21:48 +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
Owen Anderson1dc69692006-10-18 02:21:48 +0000154#define unput(c) yyunput( c, yytext_ptr )
Reid Spencer68a24bd2005-08-27 18:50:39 +0000155
Reid Spencer3ed469c2006-11-02 20:25:50 +0000156/* Some routines like yy_flex_realloc() are emitted as static but are
157 not called by all lexers. This generates warnings in some compilers,
158 notably GCC. Arrange to suppress these. */
159#ifdef __GNUC__
160#define YY_MAY_BE_UNUSED __attribute__((unused))
161#else
162#define YY_MAY_BE_UNUSED
163#endif
164
Reid Spencer68a24bd2005-08-27 18:50:39 +0000165/* The following is because we cannot portably get our hands on size_t
166 * (without autoconf's help, which isn't available because we want
167 * flex-generated scanners to compile on their own).
168 */
169typedef unsigned int yy_size_t;
170
Owen Anderson1dc69692006-10-18 02:21:48 +0000171
Reid Spencer68a24bd2005-08-27 18:50:39 +0000172struct yy_buffer_state
173 {
174 FILE *yy_input_file;
175
176 char *yy_ch_buf; /* input buffer */
177 char *yy_buf_pos; /* current position in input buffer */
178
179 /* Size of input buffer in bytes, not including room for EOB
180 * characters.
181 */
182 yy_size_t yy_buf_size;
183
184 /* Number of characters read into yy_ch_buf, not including EOB
185 * characters.
186 */
187 int yy_n_chars;
188
189 /* Whether we "own" the buffer - i.e., we know we created it,
190 * and can realloc() it to grow it, and should free() it to
191 * delete it.
192 */
193 int yy_is_our_buffer;
194
195 /* Whether this is an "interactive" input source; if so, and
196 * if we're using stdio for input, then we want to use getc()
197 * instead of fread(), to make sure we stop fetching input after
198 * each newline.
199 */
200 int yy_is_interactive;
201
202 /* Whether we're considered to be at the beginning of a line.
203 * If so, '^' rules will be active on the next match, otherwise
204 * not.
205 */
206 int yy_at_bol;
207
208 /* Whether to try to fill the input buffer when we reach the
209 * end of it.
210 */
211 int yy_fill_buffer;
212
213 int yy_buffer_status;
214#define YY_BUFFER_NEW 0
215#define YY_BUFFER_NORMAL 1
216 /* When an EOF's been seen but there's still some text to process
217 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
218 * shouldn't try reading from the input source any more. We might
219 * still have a bunch of tokens to match, though, because of
220 * possible backing-up.
221 *
222 * When we actually see the EOF, we change the status to "new"
Owen Anderson1dc69692006-10-18 02:21:48 +0000223 * (via yyrestart()), so that the user can continue scanning by
224 * just pointing yyin at a new input file.
Reid Spencer68a24bd2005-08-27 18:50:39 +0000225 */
226#define YY_BUFFER_EOF_PENDING 2
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +0000227 };
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +0000228
Owen Anderson1dc69692006-10-18 02:21:48 +0000229static YY_BUFFER_STATE yy_current_buffer = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000230
231/* We provide macros for accessing buffer states in case in the
232 * future we want to put the buffer states in a more general
233 * "scanner state".
234 */
Owen Anderson1dc69692006-10-18 02:21:48 +0000235#define YY_CURRENT_BUFFER yy_current_buffer
Reid Spencer68a24bd2005-08-27 18:50:39 +0000236
237
Owen Anderson1dc69692006-10-18 02:21:48 +0000238/* yy_hold_char holds the character lost when yytext is formed. */
Reid Spencer68a24bd2005-08-27 18:50:39 +0000239static char yy_hold_char;
Owen Anderson1dc69692006-10-18 02:21:48 +0000240
Reid Spencer68a24bd2005-08-27 18:50:39 +0000241static int yy_n_chars; /* number of characters read into yy_ch_buf */
Owen Anderson1dc69692006-10-18 02:21:48 +0000242
243
244int yyleng;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000245
246/* Points to current character in buffer. */
247static char *yy_c_buf_p = (char *) 0;
Owen Anderson1dc69692006-10-18 02:21:48 +0000248static int yy_init = 1; /* whether we need to initialize */
Reid Spencer68a24bd2005-08-27 18:50:39 +0000249static int yy_start = 0; /* start state number */
250
Owen Anderson1dc69692006-10-18 02:21:48 +0000251/* Flag which is used to allow yywrap()'s to do buffer switches
252 * instead of setting up a fresh yyin. A bit of a hack ...
Reid Spencer68a24bd2005-08-27 18:50:39 +0000253 */
254static int yy_did_buffer_switch_on_eof;
255
Owen Anderson1dc69692006-10-18 02:21:48 +0000256void yyrestart YY_PROTO(( FILE *input_file ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000257
Owen Anderson1dc69692006-10-18 02:21:48 +0000258void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
259void yy_load_buffer_state YY_PROTO(( void ));
260YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
261void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
262void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
263void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
264#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +0000265
Owen Anderson1dc69692006-10-18 02:21:48 +0000266YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
267YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
268YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000269
Owen Anderson1dc69692006-10-18 02:21:48 +0000270static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
Reid Spencer3ed469c2006-11-02 20:25:50 +0000271static inline void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) YY_MAY_BE_UNUSED;
Owen Anderson1dc69692006-10-18 02:21:48 +0000272static void yy_flex_free YY_PROTO(( void * ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000273
Owen Anderson1dc69692006-10-18 02:21:48 +0000274#define yy_new_buffer yy_create_buffer
Reid Spencer68a24bd2005-08-27 18:50:39 +0000275
276#define yy_set_interactive(is_interactive) \
277 { \
Owen Anderson1dc69692006-10-18 02:21:48 +0000278 if ( ! yy_current_buffer ) \
279 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
280 yy_current_buffer->yy_is_interactive = is_interactive; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000281 }
282
283#define yy_set_bol(at_bol) \
284 { \
Owen Anderson1dc69692006-10-18 02:21:48 +0000285 if ( ! yy_current_buffer ) \
286 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
287 yy_current_buffer->yy_at_bol = at_bol; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000288 }
289
Owen Anderson1dc69692006-10-18 02:21:48 +0000290#define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
Reid Spencer68a24bd2005-08-27 18:50:39 +0000291
292
Owen Anderson1dc69692006-10-18 02:21:48 +0000293#define YY_USES_REJECT
294
295#define yywrap() 1
Reid Spencer68a24bd2005-08-27 18:50:39 +0000296#define YY_SKIP_YYWRAP
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +0000297typedef unsigned char YY_CHAR;
Owen Anderson1dc69692006-10-18 02:21:48 +0000298FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +0000299typedef int yy_state_type;
Owen Anderson1dc69692006-10-18 02:21:48 +0000300extern int yylineno;
301int yylineno = 1;
302extern char *yytext;
303#define yytext_ptr yytext
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +0000304
Owen Anderson1dc69692006-10-18 02:21:48 +0000305static yy_state_type yy_get_previous_state YY_PROTO(( void ));
306static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
307static int yy_get_next_buffer YY_PROTO(( void ));
308static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
Reid Spencer68a24bd2005-08-27 18:50:39 +0000309
310/* Done after the current pattern has been matched and before the
Owen Anderson1dc69692006-10-18 02:21:48 +0000311 * corresponding action - sets up yytext.
Reid Spencer68a24bd2005-08-27 18:50:39 +0000312 */
313#define YY_DO_BEFORE_ACTION \
Owen Anderson1dc69692006-10-18 02:21:48 +0000314 yytext_ptr = yy_bp; \
315 yyleng = (int) (yy_cp - yy_bp); \
316 yy_hold_char = *yy_cp; \
Reid Spencer68a24bd2005-08-27 18:50:39 +0000317 *yy_cp = '\0'; \
Owen Anderson1dc69692006-10-18 02:21:48 +0000318 yy_c_buf_p = yy_cp;
Reid Spencer68a24bd2005-08-27 18:50:39 +0000319
Reid Spencer3ed469c2006-11-02 20:25:50 +0000320#define YY_NUM_RULES 120
321#define YY_END_OF_BUFFER 121
322static yyconst short int yy_acclist[198] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000323 { 0,
Reid Spencer3ed469c2006-11-02 20:25:50 +0000324 121, 119, 120, 118, 119, 120, 118, 120, 119, 120,
325 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
326 111, 119, 120, 111, 119, 120, 1, 119, 120, 119,
327 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
328 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
329 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
330 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
331 120, 110, 108, 107, 107, 114, 112, 116, 111, 1,
332 93, 41, 75, 23, 110, 107, 107, 115, 116, 20,
333 116, 117, 63, 74, 39, 34, 42, 66, 3, 54,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000334
Reid Spencer3ed469c2006-11-02 20:25:50 +0000335 65, 25, 83, 70, 92, 87, 88, 64, 76, 109,
336 116, 116, 49, 84, 85, 69, 100, 73, 101, 56,
337 22, 113, 68, 72, 26, 4, 61, 67, 55, 71,
338 48, 11, 116, 36, 2, 5, 58, 60, 50, 78,
339 82, 80, 81, 79, 77, 52, 102, 51, 57, 21,
340 90, 99, 45, 59, 30, 24, 44, 7, 95, 33,
341 98, 38, 62, 86, 94, 27, 28, 96, 53, 91,
342 89, 43, 6, 29, 37, 8, 17, 9, 10, 35,
343 12, 14, 13, 32, 40, 15, 31, 97, 103, 105,
344 106, 16, 46, 104, 18, 47, 19
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000345
Reid Spencer68a24bd2005-08-27 18:50:39 +0000346 } ;
347
Reid Spencer3ed469c2006-11-02 20:25:50 +0000348static yyconst short int yy_accept[527] =
Owen Anderson1dc69692006-10-18 02:21:48 +0000349 { 0,
350 1, 1, 1, 2, 4, 7, 9, 11, 13, 15,
351 17, 19, 21, 24, 27, 30, 32, 34, 36, 38,
352 40, 42, 44, 46, 48, 50, 52, 54, 56, 58,
353 60, 62, 64, 66, 68, 70, 72, 72, 73, 73,
354 74, 75, 76, 77, 77, 78, 78, 79, 80, 80,
355 81, 81, 81, 81, 81, 81, 81, 81, 81, 82,
356 82, 83, 83, 83, 83, 83, 83, 83, 83, 83,
357 83, 83, 83, 83, 83, 83, 83, 83, 83, 83,
Reid Spencer3ed469c2006-11-02 20:25:50 +0000358 83, 83, 83, 83, 83, 83, 83, 83, 84, 84,
Owen Anderson1dc69692006-10-18 02:21:48 +0000359 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
360
Reid Spencer3ed469c2006-11-02 20:25:50 +0000361 84, 84, 84, 85, 85, 85, 85, 85, 85, 85,
362 85, 85, 85, 85, 85, 85, 85, 85, 85, 86,
363 87, 89, 90, 91, 92, 92, 93, 94, 94, 94,
364 95, 95, 96, 96, 97, 97, 97, 97, 98, 98,
365 98, 98, 98, 98, 98, 99, 99, 99, 100, 100,
366 100, 100, 100, 100, 100, 100, 100, 100, 100, 100,
367 101, 101, 101, 101, 101, 101, 101, 101, 101, 102,
368 103, 103, 103, 104, 104, 105, 106, 106, 106, 106,
369 106, 106, 106, 107, 107, 108, 108, 108, 108, 108,
Owen Anderson1dc69692006-10-18 02:21:48 +0000370 109, 109, 109, 109, 109, 109, 109, 109, 109, 109,
371
Reid Spencer3ed469c2006-11-02 20:25:50 +0000372 109, 109, 109, 109, 109, 109, 109, 109, 109, 109,
Owen Anderson1dc69692006-10-18 02:21:48 +0000373 109, 109, 109, 109, 110, 110, 111, 112, 112, 112,
374 112, 113, 113, 113, 113, 113, 114, 115, 116, 116,
Chris Lattner1ae022f2006-10-22 06:08:13 +0000375 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
Reid Spencer3ed469c2006-11-02 20:25:50 +0000376 116, 116, 116, 116, 117, 117, 118, 119, 119, 119,
377 119, 119, 119, 119, 119, 119, 119, 120, 121, 121,
378 121, 122, 122, 122, 123, 123, 124, 124, 124, 124,
379 124, 124, 124, 124, 124, 124, 125, 125, 125, 126,
380 126, 126, 127, 128, 128, 129, 130, 130, 130, 130,
381 130, 130, 131, 131, 131, 131, 131, 132, 132, 133,
Owen Anderson1dc69692006-10-18 02:21:48 +0000382
Reid Spencer3ed469c2006-11-02 20:25:50 +0000383 133, 133, 134, 135, 135, 135, 136, 136, 136, 136,
384 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
385 137, 137, 138, 138, 138, 138, 138, 138, 138, 139,
386 139, 139, 139, 139, 139, 139, 140, 140, 140, 141,
387 142, 143, 144, 145, 146, 147, 147, 147, 148, 148,
388 148, 148, 149, 150, 151, 151, 151, 151, 151, 151,
389 152, 152, 152, 152, 152, 152, 153, 153, 154, 154,
390 154, 154, 154, 154, 154, 154, 155, 156, 157, 157,
391 157, 158, 158, 159, 159, 159, 159, 160, 160, 161,
392 162, 163, 164, 164, 164, 165, 165, 165, 166, 167,
Owen Anderson1dc69692006-10-18 02:21:48 +0000393
Reid Spencer3ed469c2006-11-02 20:25:50 +0000394 168, 168, 168, 169, 170, 171, 172, 172, 172, 172,
395 172, 172, 172, 173, 173, 174, 175, 175, 175, 175,
396 175, 175, 175, 175, 175, 175, 175, 175, 176, 176,
397 176, 176, 176, 176, 176, 176, 176, 176, 177, 177,
398 177, 177, 177, 178, 178, 178, 178, 178, 179, 180,
399 180, 180, 180, 180, 180, 181, 181, 181, 181, 182,
400 182, 183, 184, 184, 184, 184, 184, 184, 184, 184,
401 184, 184, 184, 184, 184, 184, 185, 185, 185, 185,
402 185, 185, 185, 185, 186, 186, 186, 186, 186, 186,
403 187, 187, 187, 187, 187, 188, 188, 188, 189, 189,
Owen Anderson1dc69692006-10-18 02:21:48 +0000404
Reid Spencer3ed469c2006-11-02 20:25:50 +0000405 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
406 189, 189, 190, 190, 191, 192, 193, 193, 194, 194,
407 195, 196, 197, 197, 198, 198
Owen Anderson1dc69692006-10-18 02:21:48 +0000408 } ;
409
410static yyconst int yy_ec[256] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000411 { 0,
412 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
413 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
414 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
415 1, 2, 1, 4, 1, 5, 6, 1, 1, 1,
416 1, 1, 7, 1, 8, 9, 1, 10, 11, 11,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000417 11, 11, 11, 12, 11, 13, 11, 14, 15, 1,
418 1, 1, 1, 1, 16, 16, 16, 16, 17, 16,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000419 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
420 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000421 1, 1, 1, 1, 18, 1, 19, 20, 21, 22,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000422
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000423 23, 24, 25, 26, 27, 5, 28, 29, 30, 31,
424 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
425 42, 43, 1, 1, 1, 1, 1, 1, 1, 1,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000426 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
427 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
428 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
429 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
430 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
431 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
432 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
433
434 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
435 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
436 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
437 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
438 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
439 1, 1, 1, 1, 1
440 } ;
441
Owen Anderson1dc69692006-10-18 02:21:48 +0000442static yyconst int yy_meta[44] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000443 { 0,
444 1, 1, 2, 1, 3, 1, 1, 3, 3, 3,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000445 3, 3, 3, 4, 1, 3, 3, 3, 3, 3,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000446 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
447 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000448 3, 3, 3
Reid Spencer68a24bd2005-08-27 18:50:39 +0000449 } ;
450
Reid Spencer3ed469c2006-11-02 20:25:50 +0000451static yyconst short int yy_base[531] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000452 { 0,
Reid Spencer3ed469c2006-11-02 20:25:50 +0000453 0, 0, 1140, 1141, 1141, 1141, 1135, 1124, 36, 40,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000454 44, 50, 56, 62, 0, 63, 66, 81, 89, 47,
Reid Spencer3ed469c2006-11-02 20:25:50 +0000455 100, 97, 76, 96, 111, 49, 113, 110, 68, 140,
456 126, 171, 119, 118, 139, 133, 1133, 1141, 1122, 1141,
457 0, 176, 184, 199, 204, 70, 209, 224, 229, 0,
458 117, 130, 150, 72, 160, 151, 159, 123, 1121, 230,
459 178, 31, 69, 168, 240, 95, 233, 165, 241, 243,
460 242, 156, 244, 246, 187, 251, 253, 254, 211, 258,
461 256, 263, 260, 265, 190, 267, 283, 1120, 271, 274,
462 270, 285, 289, 290, 291, 292, 294, 295, 297, 299,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000463
Reid Spencer3ed469c2006-11-02 20:25:50 +0000464 296, 308, 1119, 311, 300, 318, 320, 322, 323, 330,
465 325, 328, 327, 337, 342, 216, 336, 345, 1118, 0,
466 362, 366, 1117, 380, 397, 0, 1116, 370, 349, 1115,
467 373, 1114, 355, 1113, 371, 372, 384, 1112, 392, 326,
468 399, 398, 401, 402, 1111, 405, 404, 406, 411, 412,
469 409, 413, 415, 422, 423, 425, 424, 426, 428, 429,
470 435, 442, 374, 443, 444, 445, 446, 447, 1110, 1109,
471 448, 449, 1108, 450, 1107, 1106, 476, 454, 455, 464,
472 459, 488, 1105, 470, 1104, 490, 489, 460, 492, 1103,
473 493, 494, 495, 496, 501, 502, 504, 507, 508, 512,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000474
Reid Spencer3ed469c2006-11-02 20:25:50 +0000475 514, 517, 519, 520, 521, 518, 457, 522, 526, 530,
476 539, 540, 541, 1102, 524, 1141, 550, 564, 568, 572,
477 577, 578, 458, 579, 580, 1101, 1100, 1099, 581, 582,
478 583, 584, 550, 585, 525, 586, 589, 551, 590, 587,
479 607, 591, 594, 1098, 592, 1097, 1096, 603, 611, 610,
480 593, 613, 617, 620, 621, 622, 1095, 1094, 623, 625,
481 1093, 624, 626, 0, 627, 1092, 629, 638, 630, 643,
482 644, 646, 628, 647, 654, 1091, 656, 661, 1090, 660,
483 658, 1089, 1088, 662, 1087, 1086, 659, 664, 672, 675,
484 676, 1085, 677, 678, 679, 681, 1084, 682, 1083, 684,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000485
Reid Spencer3ed469c2006-11-02 20:25:50 +0000486 683, 690, 1082, 692, 695, 1081, 700, 704, 710, 711,
487 691, 713, 701, 702, 714, 715, 718, 722, 724, 1080,
488 726, 1079, 725, 727, 728, 729, 730, 736, 1078, 737,
489 740, 743, 746, 748, 751, 1077, 735, 738, 1076, 1075,
490 1074, 1073, 1072, 1071, 1070, 756, 758, 1069, 762, 759,
491 763, 1068, 1067, 1066, 764, 766, 767, 765, 769, 1065,
492 770, 776, 778, 777, 779, 1064, 781, 1063, 784, 785,
493 786, 790, 791, 797, 798, 1062, 1061, 1060, 802, 795,
494 1059, 803, 1058, 808, 811, 804, 1057, 805, 1056, 1055,
495 1054, 1053, 810, 821, 1052, 823, 824, 1051, 1050, 1049,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000496
Reid Spencer3ed469c2006-11-02 20:25:50 +0000497 822, 825, 1048, 1047, 1046, 1045, 826, 827, 828, 829,
498 830, 833, 1044, 839, 1043, 1042, 840, 843, 844, 845,
499 846, 850, 848, 851, 852, 853, 854, 1041, 858, 863,
500 868, 869, 871, 875, 877, 878, 879, 1040, 881, 885,
501 886, 882, 1037, 887, 889, 888, 894, 1028, 1026, 897,
502 895, 892, 900, 907, 1025, 912, 916, 914, 1024, 917,
503 1023, 1021, 918, 920, 922, 925, 926, 924, 928, 931,
504 933, 932, 934, 936, 938, 1020, 941, 944, 937, 948,
505 949, 950, 952, 1019, 957, 961, 962, 963, 964, 1018,
506 965, 966, 967, 968, 1013, 969, 972, 1010, 973, 976,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000507
Reid Spencer3ed469c2006-11-02 20:25:50 +0000508 982, 984, 990, 991, 992, 993, 994, 996, 997, 998,
509 999, 1006, 1000, 896, 893, 633, 1005, 632, 1007, 385,
510 354, 353, 1008, 301, 1141, 1043, 1045, 226, 1049, 166
Reid Spencer68a24bd2005-08-27 18:50:39 +0000511 } ;
512
Reid Spencer3ed469c2006-11-02 20:25:50 +0000513static yyconst short int yy_def[531] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000514 { 0,
Reid Spencer3ed469c2006-11-02 20:25:50 +0000515 525, 1, 525, 525, 525, 525, 526, 527, 528, 525,
516 527, 527, 527, 527, 529, 527, 527, 527, 527, 527,
517 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
518 527, 527, 527, 527, 527, 527, 526, 525, 527, 525,
519 530, 530, 525, 525, 527, 527, 527, 527, 527, 529,
520 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
521 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
522 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
523 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
524 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000525
Reid Spencer3ed469c2006-11-02 20:25:50 +0000526 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
527 527, 527, 527, 527, 527, 527, 527, 527, 525, 530,
528 530, 525, 527, 527, 527, 49, 527, 527, 527, 527,
529 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
530 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
531 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
532 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
533 527, 527, 527, 527, 527, 527, 49, 527, 527, 527,
534 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
535 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000536
Reid Spencer3ed469c2006-11-02 20:25:50 +0000537 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
538 527, 527, 527, 527, 527, 525, 525, 525, 525, 527,
539 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
540 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
541 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
542 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
543 527, 527, 527, 177, 527, 527, 527, 527, 527, 527,
544 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
545 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
546 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000547
Reid Spencer3ed469c2006-11-02 20:25:50 +0000548 527, 525, 527, 527, 527, 527, 527, 527, 527, 527,
549 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
550 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
551 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
552 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
553 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
554 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
555 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
556 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
557 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000558
Reid Spencer3ed469c2006-11-02 20:25:50 +0000559 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
560 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
561 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
562 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
563 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
564 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
565 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
566 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
567 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
568 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000569
Reid Spencer3ed469c2006-11-02 20:25:50 +0000570 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
571 527, 527, 527, 527, 527, 527, 527, 527, 527, 527,
572 527, 527, 527, 527, 0, 525, 525, 525, 525, 525
Reid Spencer68a24bd2005-08-27 18:50:39 +0000573 } ;
574
Reid Spencer3ed469c2006-11-02 20:25:50 +0000575static yyconst short int yy_nxt[1185] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000576 { 0,
577 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000578 14, 14, 14, 4, 15, 8, 8, 8, 16, 17,
579 18, 19, 20, 21, 22, 8, 23, 8, 24, 25,
580 26, 27, 28, 8, 29, 30, 31, 32, 33, 34,
581 35, 8, 36, 42, 40, 43, 43, 43, 43, 44,
Reid Spencer3ed469c2006-11-02 20:25:50 +0000582 44, 44, 44, 45, 45, 45, 45, 40, 46, 139,
583 40, 140, 40, 40, 47, 48, 48, 48, 48, 40,
584 47, 48, 48, 48, 48, 40, 40, 69, 123, 40,
585 85, 40, 40, 40, 51, 40, 86, 70, 56, 40,
586 91, 52, 57, 53, 40, 54, 49, 58, 55, 60,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000587
Reid Spencer3ed469c2006-11-02 20:25:50 +0000588 59, 61, 40, 141, 131, 77, 78, 64, 40, 40,
589 40, 65, 62, 40, 79, 66, 63, 67, 71, 75,
590 68, 72, 80, 40, 40, 76, 40, 81, 73, 82,
591 40, 40, 40, 145, 74, 89, 40, 113, 127, 40,
592 115, 90, 83, 40, 102, 87, 40, 88, 84, 92,
593 114, 116, 40, 40, 135, 118, 128, 103, 129, 93,
594 104, 94, 95, 40, 40, 96, 97, 105, 120, 40,
595 117, 130, 40, 40, 98, 133, 99, 100, 40, 101,
596 92, 40, 153, 134, 40, 121, 121, 121, 121, 132,
597 106, 40, 107, 43, 43, 43, 43, 108, 138, 109,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000598
Reid Spencer3ed469c2006-11-02 20:25:50 +0000599 40, 110, 147, 40, 142, 111, 112, 122, 44, 44,
600 44, 44, 47, 45, 45, 45, 45, 40, 124, 124,
601 124, 124, 40, 156, 40, 125, 170, 213, 41, 40,
602 162, 125, 47, 48, 48, 48, 48, 40, 126, 126,
603 126, 126, 40, 40, 126, 126, 40, 126, 126, 126,
604 126, 126, 126, 40, 40, 40, 40, 40, 136, 40,
605 143, 146, 148, 149, 40, 137, 40, 40, 155, 40,
606 151, 40, 144, 40, 165, 154, 40, 152, 40, 150,
607 40, 168, 157, 40, 40, 158, 166, 40, 163, 159,
608 160, 167, 161, 169, 164, 171, 40, 173, 40, 175,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000609
Reid Spencer3ed469c2006-11-02 20:25:50 +0000610 174, 172, 40, 40, 40, 40, 176, 40, 40, 40,
611 40, 180, 40, 40, 40, 187, 179, 188, 190, 181,
612 183, 40, 191, 184, 40, 177, 185, 182, 189, 186,
613 178, 40, 196, 40, 192, 40, 40, 194, 40, 40,
614 40, 40, 193, 40, 207, 208, 198, 205, 195, 40,
615 40, 201, 199, 206, 200, 40, 202, 209, 40, 197,
616 212, 230, 40, 210, 203, 211, 40, 40, 40, 204,
617 214, 121, 121, 121, 121, 217, 217, 217, 217, 215,
618 223, 225, 218, 40, 40, 40, 40, 40, 218, 124,
619 124, 124, 124, 40, 222, 224, 125, 40, 40, 226,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000620
Reid Spencer3ed469c2006-11-02 20:25:50 +0000621 227, 255, 125, 219, 220, 40, 221, 221, 221, 221,
622 40, 40, 40, 229, 40, 40, 232, 40, 40, 40,
623 228, 231, 40, 237, 40, 40, 40, 235, 40, 233,
624 234, 236, 238, 239, 240, 40, 40, 40, 40, 40,
625 245, 40, 40, 249, 242, 246, 241, 248, 40, 243,
626 251, 252, 247, 244, 250, 40, 40, 40, 40, 40,
627 40, 40, 40, 40, 254, 257, 253, 40, 40, 258,
628 40, 40, 40, 40, 259, 294, 261, 40, 304, 256,
629 263, 268, 262, 40, 260, 264, 264, 264, 264, 276,
630 265, 264, 264, 266, 264, 264, 264, 264, 264, 264,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000631
Reid Spencer3ed469c2006-11-02 20:25:50 +0000632 267, 40, 40, 40, 273, 40, 40, 40, 40, 40,
633 269, 275, 270, 274, 40, 40, 271, 40, 272, 280,
634 40, 40, 279, 282, 283, 40, 277, 40, 281, 278,
635 40, 40, 40, 40, 40, 40, 288, 40, 40, 40,
636 284, 290, 287, 40, 286, 285, 291, 289, 296, 293,
637 292, 297, 40, 40, 40, 301, 295, 298, 300, 217,
638 217, 217, 217, 40, 40, 313, 218, 299, 311, 316,
639 219, 219, 218, 302, 302, 302, 302, 302, 302, 302,
640 302, 221, 221, 221, 221, 40, 221, 221, 221, 221,
Chris Lattner1ae022f2006-10-22 06:08:13 +0000641 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000642
Reid Spencer3ed469c2006-11-02 20:25:50 +0000643 40, 307, 40, 40, 40, 40, 40, 40, 303, 305,
644 306, 312, 310, 320, 321, 314, 40, 315, 308, 309,
645 40, 318, 317, 40, 40, 319, 40, 326, 322, 324,
646 40, 323, 325, 40, 40, 40, 40, 40, 40, 40,
647 40, 40, 40, 40, 328, 40, 40, 327, 329, 336,
648 331, 40, 330, 333, 332, 337, 40, 40, 338, 40,
649 40, 334, 335, 339, 345, 340, 342, 40, 344, 40,
650 346, 40, 40, 40, 40, 40, 347, 40, 348, 341,
651 343, 349, 350, 353, 352, 40, 351, 354, 40, 40,
652 40, 40, 40, 356, 40, 40, 40, 40, 355, 302,
Chris Lattnere869eef2005-11-12 00:11:49 +0000653
Reid Spencer3ed469c2006-11-02 20:25:50 +0000654 302, 302, 302, 360, 40, 40, 357, 363, 40, 365,
655 366, 358, 359, 40, 40, 40, 367, 40, 362, 364,
656 368, 361, 369, 40, 40, 372, 40, 40, 40, 371,
657 370, 40, 373, 374, 375, 40, 376, 40, 40, 40,
658 40, 40, 40, 40, 380, 377, 381, 382, 40, 40,
659 40, 40, 379, 40, 378, 383, 40, 384, 387, 40,
660 386, 40, 389, 390, 40, 385, 394, 388, 391, 40,
661 392, 40, 40, 393, 395, 40, 40, 40, 40, 40,
662 40, 397, 40, 40, 396, 400, 402, 398, 403, 40,
663 40, 40, 40, 405, 40, 399, 408, 40, 40, 40,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000664
Reid Spencer3ed469c2006-11-02 20:25:50 +0000665 401, 404, 407, 40, 40, 413, 406, 411, 40, 410,
666 40, 40, 415, 409, 412, 40, 40, 40, 40, 419,
667 420, 40, 425, 40, 40, 426, 416, 414, 417, 418,
668 423, 421, 422, 424, 40, 40, 40, 40, 40, 40,
669 40, 40, 40, 40, 427, 429, 40, 430, 431, 435,
670 432, 428, 40, 40, 433, 436, 40, 40, 40, 40,
671 437, 40, 434, 40, 40, 40, 40, 40, 444, 438,
672 439, 40, 445, 443, 440, 449, 40, 441, 446, 447,
673 448, 40, 40, 442, 40, 452, 453, 454, 40, 450,
674 40, 40, 40, 455, 40, 40, 451, 457, 40, 40,
675
676 40, 40, 40, 459, 463, 40, 40, 40, 40, 40,
677 40, 456, 470, 40, 458, 464, 467, 469, 460, 465,
678 40, 461, 462, 468, 466, 40, 472, 40, 471, 40,
679 40, 40, 473, 40, 474, 40, 477, 40, 40, 40,
680 475, 40, 478, 480, 40, 40, 40, 40, 483, 40,
681 40, 40, 487, 476, 40, 481, 489, 40, 479, 485,
682 486, 40, 40, 40, 488, 40, 482, 484, 490, 492,
683 40, 494, 495, 491, 40, 40, 40, 40, 40, 40,
684 40, 40, 40, 498, 493, 40, 40, 502, 496, 40,
685 499, 500, 501, 504, 507, 40, 509, 40, 505, 497,
686
687 506, 508, 503, 40, 40, 40, 40, 40, 510, 40,
688 40, 40, 40, 40, 511, 516, 517, 518, 40, 40,
689 40, 40, 513, 40, 512, 522, 40, 515, 514, 523,
690 521, 40, 40, 40, 40, 520, 40, 40, 40, 40,
691 519, 40, 524, 37, 37, 37, 37, 39, 39, 50,
Chris Lattner1ae022f2006-10-22 06:08:13 +0000692 40, 50, 50, 40, 40, 40, 40, 40, 40, 40,
Chris Lattner0e9c3762006-01-25 22:27:16 +0000693 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
Chris Lattnerd5efe842006-04-08 01:18:56 +0000694 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
695 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
Chris Lattner75466192006-05-19 21:28:53 +0000696 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
Chris Lattner75466192006-05-19 21:28:53 +0000697
Reid Spencer3ed469c2006-11-02 20:25:50 +0000698 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
699 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
700 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
701 40, 216, 40, 40, 40, 40, 119, 40, 38, 525,
702 3, 525, 525, 525, 525, 525, 525, 525, 525, 525,
703 525, 525, 525, 525, 525, 525, 525, 525, 525, 525,
704 525, 525, 525, 525, 525, 525, 525, 525, 525, 525,
705 525, 525, 525, 525, 525, 525, 525, 525, 525, 525,
706 525, 525, 525, 525
Reid Spencer68a24bd2005-08-27 18:50:39 +0000707 } ;
708
Reid Spencer3ed469c2006-11-02 20:25:50 +0000709static yyconst short int yy_chk[1185] =
Reid Spencer68a24bd2005-08-27 18:50:39 +0000710 { 0,
711 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
712 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
713 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
714 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000715 1, 1, 1, 9, 62, 9, 9, 9, 9, 10,
716 10, 10, 10, 11, 11, 11, 11, 11, 12, 62,
717 20, 62, 26, 12, 13, 13, 13, 13, 13, 13,
718 14, 14, 14, 14, 14, 14, 16, 20, 46, 17,
Reid Spencer3ed469c2006-11-02 20:25:50 +0000719 26, 29, 63, 46, 16, 54, 26, 20, 17, 23,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000720 29, 16, 17, 16, 18, 16, 13, 17, 16, 18,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000721
Reid Spencer3ed469c2006-11-02 20:25:50 +0000722 17, 18, 19, 63, 54, 23, 23, 19, 66, 24,
723 22, 19, 18, 21, 24, 19, 18, 19, 21, 22,
724 19, 21, 24, 28, 25, 22, 27, 24, 21, 25,
725 51, 34, 33, 66, 21, 28, 58, 33, 51, 31,
726 34, 28, 25, 52, 31, 27, 36, 27, 25, 30,
727 33, 35, 35, 30, 58, 36, 52, 31, 52, 30,
728 31, 30, 30, 53, 56, 30, 30, 31, 530, 72,
729 35, 53, 57, 55, 30, 56, 30, 30, 68, 30,
730 32, 64, 72, 57, 32, 42, 42, 42, 42, 55,
731 32, 61, 32, 43, 43, 43, 43, 32, 61, 32,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000732
Reid Spencer3ed469c2006-11-02 20:25:50 +0000733 75, 32, 68, 85, 64, 32, 32, 44, 44, 44,
734 44, 44, 45, 45, 45, 45, 45, 45, 47, 47,
735 47, 47, 47, 75, 79, 47, 85, 116, 528, 116,
736 79, 47, 48, 48, 48, 48, 48, 48, 49, 49,
737 49, 49, 49, 60, 49, 49, 67, 49, 49, 49,
738 49, 49, 49, 65, 69, 71, 70, 73, 60, 74,
739 65, 67, 69, 70, 76, 60, 77, 78, 74, 81,
740 71, 80, 65, 83, 81, 73, 82, 71, 84, 70,
741 86, 83, 76, 91, 89, 77, 81, 90, 80, 78,
742 78, 82, 78, 84, 80, 86, 87, 89, 92, 91,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000743
Reid Spencer3ed469c2006-11-02 20:25:50 +0000744 90, 87, 93, 94, 95, 96, 91, 97, 98, 101,
745 99, 95, 100, 105, 524, 97, 94, 98, 100, 95,
746 96, 102, 101, 96, 104, 92, 96, 95, 99, 96,
747 93, 106, 105, 107, 102, 108, 109, 104, 111, 140,
748 113, 112, 102, 110, 113, 113, 107, 111, 104, 117,
749 114, 110, 108, 112, 109, 115, 110, 113, 118, 106,
750 115, 140, 129, 114, 110, 114, 522, 521, 133, 110,
751 117, 121, 121, 121, 121, 122, 122, 122, 122, 118,
752 129, 133, 122, 128, 135, 136, 131, 163, 122, 124,
753 124, 124, 124, 124, 128, 131, 124, 137, 520, 135,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000754
Reid Spencer3ed469c2006-11-02 20:25:50 +0000755 136, 163, 124, 125, 125, 139, 125, 125, 125, 125,
756 125, 142, 141, 139, 143, 144, 142, 147, 146, 148,
757 137, 141, 151, 147, 149, 150, 152, 146, 153, 143,
758 144, 146, 148, 149, 150, 154, 155, 157, 156, 158,
759 154, 159, 160, 157, 151, 155, 150, 156, 161, 152,
760 159, 160, 155, 153, 158, 162, 164, 165, 166, 167,
761 168, 171, 172, 174, 162, 165, 161, 178, 179, 166,
762 207, 223, 181, 188, 167, 207, 171, 180, 223, 164,
763 174, 181, 172, 184, 168, 177, 177, 177, 177, 188,
764 178, 177, 177, 179, 177, 177, 177, 177, 177, 177,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000765
Reid Spencer3ed469c2006-11-02 20:25:50 +0000766 180, 182, 187, 186, 184, 189, 191, 192, 193, 194,
767 182, 187, 182, 186, 195, 196, 182, 197, 182, 193,
768 198, 199, 192, 195, 196, 200, 189, 201, 194, 191,
769 202, 206, 203, 204, 205, 208, 201, 215, 235, 209,
770 197, 203, 200, 210, 199, 198, 204, 202, 209, 206,
771 205, 210, 211, 212, 213, 215, 208, 211, 213, 217,
772 217, 217, 217, 233, 238, 235, 217, 212, 233, 238,
773 218, 218, 217, 218, 218, 218, 218, 219, 219, 219,
774 219, 220, 220, 220, 220, 220, 221, 221, 221, 221,
775 221, 222, 224, 225, 229, 230, 231, 232, 234, 236,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000776
Reid Spencer3ed469c2006-11-02 20:25:50 +0000777 240, 229, 237, 239, 242, 245, 251, 243, 222, 224,
778 225, 234, 232, 242, 243, 236, 248, 237, 230, 231,
779 241, 240, 239, 250, 249, 241, 252, 251, 245, 249,
780 253, 248, 250, 254, 255, 256, 259, 262, 260, 263,
781 265, 273, 267, 269, 253, 518, 516, 252, 254, 265,
782 256, 268, 255, 260, 259, 267, 270, 271, 268, 272,
783 274, 262, 263, 269, 273, 270, 271, 275, 272, 277,
784 274, 281, 287, 280, 278, 284, 275, 288, 277, 270,
785 271, 278, 280, 287, 284, 289, 281, 288, 290, 291,
786 293, 294, 295, 290, 296, 298, 301, 300, 289, 302,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000787
Reid Spencer3ed469c2006-11-02 20:25:50 +0000788 302, 302, 302, 295, 311, 304, 291, 300, 305, 301,
789 304, 293, 294, 307, 313, 314, 305, 308, 298, 300,
790 307, 296, 308, 309, 310, 311, 312, 315, 316, 310,
791 309, 317, 312, 313, 314, 318, 315, 319, 323, 321,
792 324, 325, 326, 327, 319, 316, 321, 323, 337, 328,
793 330, 338, 318, 331, 317, 324, 332, 325, 328, 333,
794 327, 334, 331, 332, 335, 326, 337, 330, 333, 346,
795 334, 347, 350, 335, 338, 349, 351, 355, 358, 356,
796 357, 347, 359, 361, 346, 351, 356, 349, 357, 362,
797 364, 363, 365, 359, 367, 350, 363, 369, 370, 371,
Reid Spencer68a24bd2005-08-27 18:50:39 +0000798
Reid Spencer3ed469c2006-11-02 20:25:50 +0000799 355, 358, 362, 372, 373, 370, 361, 367, 380, 365,
800 374, 375, 372, 364, 369, 379, 382, 386, 388, 379,
801 379, 384, 386, 393, 385, 388, 373, 371, 374, 375,
802 384, 380, 382, 385, 394, 401, 396, 397, 402, 407,
803 408, 409, 410, 411, 393, 396, 412, 397, 401, 409,
804 402, 394, 414, 417, 407, 410, 418, 419, 420, 421,
805 411, 423, 408, 422, 424, 425, 426, 427, 421, 412,
806 414, 429, 422, 420, 417, 426, 430, 418, 423, 424,
807 425, 431, 432, 419, 433, 430, 431, 432, 434, 427,
808 435, 436, 437, 433, 439, 442, 429, 435, 440, 441,
Chris Lattnere869eef2005-11-12 00:11:49 +0000809
Reid Spencer3ed469c2006-11-02 20:25:50 +0000810 444, 446, 445, 437, 442, 452, 515, 447, 451, 514,
811 450, 434, 452, 453, 436, 444, 447, 451, 439, 445,
812 454, 440, 441, 450, 446, 456, 454, 458, 453, 457,
813 460, 463, 456, 464, 457, 465, 463, 468, 466, 467,
814 458, 469, 464, 466, 470, 472, 471, 473, 469, 474,
815 479, 475, 473, 460, 477, 467, 475, 478, 465, 471,
816 472, 480, 481, 482, 474, 483, 468, 470, 477, 479,
817 485, 481, 482, 478, 486, 487, 488, 489, 491, 492,
818 493, 494, 496, 486, 480, 497, 499, 491, 483, 500,
819 487, 488, 489, 493, 497, 501, 500, 502, 494, 485,
Chris Lattner75466192006-05-19 21:28:53 +0000820
Reid Spencer3ed469c2006-11-02 20:25:50 +0000821 496, 499, 492, 503, 504, 505, 506, 507, 501, 508,
822 509, 510, 511, 513, 502, 507, 508, 509, 517, 512,
823 519, 523, 504, 498, 503, 517, 495, 506, 505, 519,
824 513, 490, 484, 476, 462, 511, 461, 459, 455, 449,
825 510, 448, 523, 526, 526, 526, 526, 527, 527, 529,
826 443, 529, 529, 438, 428, 416, 415, 413, 406, 405,
827 404, 403, 400, 399, 398, 395, 392, 391, 390, 389,
828 387, 383, 381, 378, 377, 376, 368, 366, 360, 354,
829 353, 352, 348, 345, 344, 343, 342, 341, 340, 339,
830 336, 329, 322, 320, 306, 303, 299, 297, 292, 286,
Anton Korobeynikovbcb97702006-09-17 20:25:45 +0000831
Reid Spencer3ed469c2006-11-02 20:25:50 +0000832 285, 283, 282, 279, 276, 266, 261, 258, 257, 247,
833 246, 244, 228, 227, 226, 214, 190, 185, 183, 176,
834 175, 173, 170, 169, 145, 138, 134, 132, 130, 127,
835 123, 119, 103, 88, 59, 39, 37, 8, 7, 3,
836 525, 525, 525, 525, 525, 525, 525, 525, 525, 525,
837 525, 525, 525, 525, 525, 525, 525, 525, 525, 525,
838 525, 525, 525, 525, 525, 525, 525, 525, 525, 525,
839 525, 525, 525, 525, 525, 525, 525, 525, 525, 525,
840 525, 525, 525, 525
Reid Spencer68a24bd2005-08-27 18:50:39 +0000841 } ;
842
Owen Anderson1dc69692006-10-18 02:21:48 +0000843static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
844static char *yy_full_match;
845static int yy_lp;
846#define REJECT \
847{ \
848*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \
849yy_cp = yy_full_match; /* restore poss. backed-over text */ \
850++yy_lp; \
851goto find_rule; \
852}
Reid Spencer68a24bd2005-08-27 18:50:39 +0000853#define yymore() yymore_used_but_not_detected
854#define YY_MORE_ADJ 0
855#define YY_RESTORE_YY_MORE_OFFSET
Owen Anderson1dc69692006-10-18 02:21:48 +0000856char *yytext;
Reid Spencer3ed469c2006-11-02 20:25:50 +0000857#line 1 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +0000858#define INITIAL 0
Reid Spencer68a24bd2005-08-27 18:50:39 +0000859/*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===//
860//
861// The LLVM Compiler Infrastructure
862//
863// This file was developed by the LLVM research group and is distributed under
864// the University of Illinois Open Source License. See LICENSE.TXT for details.
865//
866//===----------------------------------------------------------------------===//
867//
868// This file implements the flex scanner for LLVM assembly languages files.
869//
870//===----------------------------------------------------------------------===*/
Owen Anderson1dc69692006-10-18 02:21:48 +0000871#define YY_NEVER_INTERACTIVE 1
Reid Spencer3ed469c2006-11-02 20:25:50 +0000872#line 28 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +0000873#include "ParserInternals.h"
874#include "llvm/Module.h"
875#include <list>
876#include "llvmAsmParser.h"
877#include <cctype>
878#include <cstdlib>
879
880void set_scan_file(FILE * F){
Owen Anderson1dc69692006-10-18 02:21:48 +0000881 yy_switch_to_buffer(yy_create_buffer( F, YY_BUF_SIZE ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +0000882}
883void set_scan_string (const char * str) {
Owen Anderson1dc69692006-10-18 02:21:48 +0000884 yy_scan_string (str);
Reid Spencer68a24bd2005-08-27 18:50:39 +0000885}
886
Reid Spencer3ed469c2006-11-02 20:25:50 +0000887// Construct a token value for a non-obsolete token
Reid Spencer68a24bd2005-08-27 18:50:39 +0000888#define RET_TOK(type, Enum, sym) \
Reid Spencer3ed469c2006-11-02 20:25:50 +0000889 llvmAsmlval.type.opcode = Instruction::Enum; \
890 llvmAsmlval.type.obsolete = false; \
891 return sym
892
893// Construct a token value for an obsolete token
894#define RET_TOK_OBSOLETE(type, Enum, sym) \
895 llvmAsmlval.type.opcode = Instruction::Enum; \
896 llvmAsmlval.type.obsolete = true; \
897 return sym
898
Reid Spencer68a24bd2005-08-27 18:50:39 +0000899
900namespace llvm {
901
902// TODO: All of the static identifiers are figured out by the lexer,
903// these should be hashed to reduce the lexer size
904
905
906// atoull - Convert an ascii string of decimal digits into the unsigned long
907// long representation... this does not have to do input error checking,
908// because we know that the input will be matched by a suitable regex...
909//
910static uint64_t atoull(const char *Buffer) {
911 uint64_t Result = 0;
912 for (; *Buffer; Buffer++) {
913 uint64_t OldRes = Result;
914 Result *= 10;
915 Result += *Buffer-'0';
916 if (Result < OldRes) // Uh, oh, overflow detected!!!
Reid Spencer61c83e02006-08-18 08:43:06 +0000917 GenerateError("constant bigger than 64 bits detected!");
Reid Spencer68a24bd2005-08-27 18:50:39 +0000918 }
919 return Result;
920}
921
922static uint64_t HexIntToVal(const char *Buffer) {
923 uint64_t Result = 0;
924 for (; *Buffer; ++Buffer) {
925 uint64_t OldRes = Result;
926 Result *= 16;
927 char C = *Buffer;
928 if (C >= '0' && C <= '9')
929 Result += C-'0';
930 else if (C >= 'A' && C <= 'F')
931 Result += C-'A'+10;
932 else if (C >= 'a' && C <= 'f')
933 Result += C-'a'+10;
934
935 if (Result < OldRes) // Uh, oh, overflow detected!!!
Reid Spencer61c83e02006-08-18 08:43:06 +0000936 GenerateError("constant bigger than 64 bits detected!");
Reid Spencer68a24bd2005-08-27 18:50:39 +0000937 }
938 return Result;
939}
940
941
942// HexToFP - Convert the ascii string in hexidecimal format to the floating
943// point representation of it.
944//
945static double HexToFP(const char *Buffer) {
946 // Behave nicely in the face of C TBAA rules... see:
947 // http://www.nullstone.com/htmls/category/aliastyp.htm
948 union {
949 uint64_t UI;
950 double FP;
951 } UIntToFP;
952 UIntToFP.UI = HexIntToVal(Buffer);
953
954 assert(sizeof(double) == sizeof(uint64_t) &&
955 "Data sizes incompatible on this target!");
956 return UIntToFP.FP; // Cast Hex constant to double
957}
958
959
960// UnEscapeLexed - Run through the specified buffer and change \xx codes to the
961// appropriate character. If AllowNull is set to false, a \00 value will cause
962// an exception to be thrown.
963//
964// If AllowNull is set to true, the return value of the function points to the
965// last character of the string in memory.
966//
967char *UnEscapeLexed(char *Buffer, bool AllowNull) {
968 char *BOut = Buffer;
969 for (char *BIn = Buffer; *BIn; ) {
970 if (BIn[0] == '\\' && isxdigit(BIn[1]) && isxdigit(BIn[2])) {
971 char Tmp = BIn[3]; BIn[3] = 0; // Terminate string
972 *BOut = (char)strtol(BIn+1, 0, 16); // Convert to number
973 if (!AllowNull && !*BOut)
Reid Spencer61c83e02006-08-18 08:43:06 +0000974 GenerateError("String literal cannot accept \\00 escape!");
Reid Spencer68a24bd2005-08-27 18:50:39 +0000975
976 BIn[3] = Tmp; // Restore character
977 BIn += 3; // Skip over handled chars
978 ++BOut;
979 } else {
980 *BOut++ = *BIn++;
981 }
982 }
983
984 return BOut;
985}
986
987} // End llvm namespace
988
989using namespace llvm;
990
991#define YY_NEVER_INTERACTIVE 1
992/* Comments start with a ; and go till end of line */
993/* Variable(Value) identifiers start with a % sign */
994/* Label identifiers end with a colon */
995/* Quoted names can contain any character except " and \ */
996/* [PN]Integer: match positive and negative literal integer values that
997 * are preceeded by a '%' character. These represent unnamed variable slots.
998 */
999/* E[PN]Integer: match positive and negative literal integer values */
1000/* FPConstant - A Floating point constant.
1001 */
1002/* HexFPConstant - Floating point constant represented in IEEE format as a
1003 * hexadecimal number for when exponential notation is not precise enough.
1004 */
1005/* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
1006 * it to deal with 64 bit numbers.
1007 */
Reid Spencer3ed469c2006-11-02 20:25:50 +00001008#line 1009 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001009
1010/* Macros after this point can all be overridden by user definitions in
1011 * section 1.
1012 */
1013
1014#ifndef YY_SKIP_YYWRAP
1015#ifdef __cplusplus
Owen Anderson1dc69692006-10-18 02:21:48 +00001016extern "C" int yywrap YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001017#else
Owen Anderson1dc69692006-10-18 02:21:48 +00001018extern int yywrap YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001019#endif
1020#endif
1021
Owen Anderson1dc69692006-10-18 02:21:48 +00001022#ifndef YY_NO_UNPUT
1023static inline void yyunput YY_PROTO(( int c, char *buf_ptr ));
1024#endif
1025
Reid Spencer68a24bd2005-08-27 18:50:39 +00001026#ifndef yytext_ptr
Owen Anderson1dc69692006-10-18 02:21:48 +00001027static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001028#endif
1029
1030#ifdef YY_NEED_STRLEN
Owen Anderson1dc69692006-10-18 02:21:48 +00001031static int yy_flex_strlen YY_PROTO(( yyconst char * ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001032#endif
1033
1034#ifndef YY_NO_INPUT
1035#ifdef __cplusplus
Owen Anderson1dc69692006-10-18 02:21:48 +00001036static int yyinput YY_PROTO(( void ));
Reid Spencer68a24bd2005-08-27 18:50:39 +00001037#else
Owen Anderson1dc69692006-10-18 02:21:48 +00001038static int input YY_PROTO(( void ));
1039#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001040#endif
1041
Owen Anderson1dc69692006-10-18 02:21:48 +00001042#if YY_STACK_USED
1043static int yy_start_stack_ptr = 0;
1044static int yy_start_stack_depth = 0;
1045static int *yy_start_stack = 0;
1046#ifndef YY_NO_PUSH_STATE
1047static void yy_push_state YY_PROTO(( int new_state ));
1048#endif
1049#ifndef YY_NO_POP_STATE
1050static void yy_pop_state YY_PROTO(( void ));
1051#endif
1052#ifndef YY_NO_TOP_STATE
1053static int yy_top_state YY_PROTO(( void ));
1054#endif
1055
1056#else
1057#define YY_NO_PUSH_STATE 1
1058#define YY_NO_POP_STATE 1
1059#define YY_NO_TOP_STATE 1
1060#endif
1061
1062#ifdef YY_MALLOC_DECL
1063YY_MALLOC_DECL
1064#else
1065#if __STDC__
1066#ifndef __cplusplus
1067#include <stdlib.h>
1068#endif
1069#else
1070/* Just try to get by without declaring the routines. This will fail
1071 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1072 * or sizeof(void*) != sizeof(int).
1073 */
1074#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001075#endif
1076
1077/* Amount of stuff to slurp up with each read. */
1078#ifndef YY_READ_BUF_SIZE
1079#define YY_READ_BUF_SIZE 8192
1080#endif
1081
1082/* Copy whatever the last rule matched to the standard output. */
Owen Anderson1dc69692006-10-18 02:21:48 +00001083
Reid Spencer68a24bd2005-08-27 18:50:39 +00001084#ifndef ECHO
1085/* This used to be an fputs(), but since the string might contain NUL's,
1086 * we now use fwrite().
1087 */
Owen Anderson1dc69692006-10-18 02:21:48 +00001088#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001089#endif
1090
1091/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1092 * is returned in "result".
1093 */
1094#ifndef YY_INPUT
1095#define YY_INPUT(buf,result,max_size) \
Owen Anderson1dc69692006-10-18 02:21:48 +00001096 if ( yy_current_buffer->yy_is_interactive ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001097 { \
Owen Anderson1dc69692006-10-18 02:21:48 +00001098 int c = '*', n; \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001099 for ( n = 0; n < max_size && \
Owen Anderson1dc69692006-10-18 02:21:48 +00001100 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001101 buf[n] = (char) c; \
1102 if ( c == '\n' ) \
1103 buf[n++] = (char) c; \
Owen Anderson1dc69692006-10-18 02:21:48 +00001104 if ( c == EOF && ferror( yyin ) ) \
Reid Spencer68a24bd2005-08-27 18:50:39 +00001105 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1106 result = n; \
1107 } \
Owen Anderson1dc69692006-10-18 02:21:48 +00001108 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1109 && ferror( yyin ) ) \
1110 YY_FATAL_ERROR( "input in flex scanner failed" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001111#endif
1112
1113/* No semi-colon after return; correct usage is to write "yyterminate();" -
1114 * we don't want an extra ';' after the "return" because that will cause
1115 * some compilers to complain about unreachable statements.
1116 */
1117#ifndef yyterminate
1118#define yyterminate() return YY_NULL
1119#endif
1120
1121/* Number of entries by which start-condition stack grows. */
1122#ifndef YY_START_STACK_INCR
1123#define YY_START_STACK_INCR 25
1124#endif
1125
1126/* Report a fatal error. */
1127#ifndef YY_FATAL_ERROR
1128#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1129#endif
1130
1131/* Default declaration of generated scanner - a define so the user can
1132 * easily add parameters.
1133 */
1134#ifndef YY_DECL
Owen Anderson1dc69692006-10-18 02:21:48 +00001135#define YY_DECL int yylex YY_PROTO(( void ))
1136#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00001137
Owen Anderson1dc69692006-10-18 02:21:48 +00001138/* Code executed at the beginning of each rule, after yytext and yyleng
Reid Spencer68a24bd2005-08-27 18:50:39 +00001139 * have been set up.
1140 */
1141#ifndef YY_USER_ACTION
1142#define YY_USER_ACTION
1143#endif
1144
1145/* Code executed at the end of each rule. */
1146#ifndef YY_BREAK
1147#define YY_BREAK break;
1148#endif
1149
1150#define YY_RULE_SETUP \
1151 YY_USER_ACTION
1152
1153YY_DECL
Owen Anderson1dc69692006-10-18 02:21:48 +00001154 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00001155 register yy_state_type yy_current_state;
Reid Spencer3ed469c2006-11-02 20:25:50 +00001156 register char *yy_cp = NULL, *yy_bp = NULL;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001157 register int yy_act;
Owen Anderson1dc69692006-10-18 02:21:48 +00001158
Reid Spencer3ed469c2006-11-02 20:25:50 +00001159#line 189 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001160
1161
Reid Spencer3ed469c2006-11-02 20:25:50 +00001162#line 1163 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001163
Owen Anderson1dc69692006-10-18 02:21:48 +00001164 if ( yy_init )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001165 {
Owen Anderson1dc69692006-10-18 02:21:48 +00001166 yy_init = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001167
1168#ifdef YY_USER_INIT
1169 YY_USER_INIT;
1170#endif
1171
Owen Anderson1dc69692006-10-18 02:21:48 +00001172 if ( ! yy_start )
1173 yy_start = 1; /* first start state */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001174
Owen Anderson1dc69692006-10-18 02:21:48 +00001175 if ( ! yyin )
1176 yyin = stdin;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001177
Owen Anderson1dc69692006-10-18 02:21:48 +00001178 if ( ! yyout )
1179 yyout = stdout;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001180
Owen Anderson1dc69692006-10-18 02:21:48 +00001181 if ( ! yy_current_buffer )
1182 yy_current_buffer =
1183 yy_create_buffer( yyin, YY_BUF_SIZE );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001184
Owen Anderson1dc69692006-10-18 02:21:48 +00001185 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00001186 }
1187
1188 while ( 1 ) /* loops until end-of-file is reached */
1189 {
Owen Anderson1dc69692006-10-18 02:21:48 +00001190 yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001191
Owen Anderson1dc69692006-10-18 02:21:48 +00001192 /* Support of yytext. */
1193 *yy_cp = yy_hold_char;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001194
1195 /* yy_bp points to the position in yy_ch_buf of the start of
1196 * the current run.
1197 */
1198 yy_bp = yy_cp;
1199
Owen Anderson1dc69692006-10-18 02:21:48 +00001200 yy_current_state = yy_start;
1201 yy_state_ptr = yy_state_buf;
1202 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001203yy_match:
1204 do
1205 {
1206 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1207 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1208 {
1209 yy_current_state = (int) yy_def[yy_current_state];
Reid Spencer3ed469c2006-11-02 20:25:50 +00001210 if ( yy_current_state >= 526 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001211 yy_c = yy_meta[(unsigned int) yy_c];
1212 }
1213 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Owen Anderson1dc69692006-10-18 02:21:48 +00001214 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001215 ++yy_cp;
1216 }
Reid Spencer3ed469c2006-11-02 20:25:50 +00001217 while ( yy_current_state != 525 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00001218
1219yy_find_action:
Owen Anderson1dc69692006-10-18 02:21:48 +00001220 yy_current_state = *--yy_state_ptr;
1221 yy_lp = yy_accept[yy_current_state];
1222find_rule: /* we branch to this label when backing up */
1223 for ( ; ; ) /* until we find what rule we matched */
1224 {
1225 if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] )
1226 {
1227 yy_act = yy_acclist[yy_lp];
1228 {
1229 yy_full_match = yy_cp;
1230 break;
1231 }
1232 }
1233 --yy_cp;
1234 yy_current_state = *--yy_state_ptr;
1235 yy_lp = yy_accept[yy_current_state];
1236 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001237
1238 YY_DO_BEFORE_ACTION;
1239
Owen Anderson1dc69692006-10-18 02:21:48 +00001240 if ( yy_act != YY_END_OF_BUFFER )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001241 {
1242 int yyl;
Owen Anderson1dc69692006-10-18 02:21:48 +00001243 for ( yyl = 0; yyl < yyleng; ++yyl )
1244 if ( yytext[yyl] == '\n' )
1245 ++yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001246 }
1247
1248do_action: /* This label is used only to access EOF actions. */
1249
Owen Anderson1dc69692006-10-18 02:21:48 +00001250
Reid Spencer68a24bd2005-08-27 18:50:39 +00001251 switch ( yy_act )
1252 { /* beginning of action switch */
1253case 1:
1254YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001255#line 191 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001256{ /* Ignore comments for now */ }
1257 YY_BREAK
1258case 2:
1259YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001260#line 193 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001261{ return BEGINTOK; }
1262 YY_BREAK
1263case 3:
1264YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001265#line 194 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001266{ return ENDTOK; }
1267 YY_BREAK
1268case 4:
1269YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001270#line 195 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001271{ return TRUETOK; }
1272 YY_BREAK
1273case 5:
1274YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001275#line 196 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001276{ return FALSETOK; }
1277 YY_BREAK
1278case 6:
1279YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001280#line 197 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001281{ return DECLARE; }
1282 YY_BREAK
1283case 7:
1284YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001285#line 198 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001286{ return GLOBAL; }
1287 YY_BREAK
1288case 8:
1289YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001290#line 199 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001291{ return CONSTANT; }
1292 YY_BREAK
1293case 9:
1294YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001295#line 200 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001296{ return INTERNAL; }
1297 YY_BREAK
1298case 10:
1299YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001300#line 201 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001301{ return LINKONCE; }
1302 YY_BREAK
1303case 11:
1304YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001305#line 202 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001306{ return WEAK; }
1307 YY_BREAK
1308case 12:
1309YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001310#line 203 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001311{ return APPENDING; }
1312 YY_BREAK
1313case 13:
1314YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001315#line 204 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001316{ return DLLIMPORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001317 YY_BREAK
1318case 14:
1319YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001320#line 205 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001321{ return DLLEXPORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001322 YY_BREAK
1323case 15:
1324YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001325#line 206 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001326{ return EXTERN_WEAK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001327 YY_BREAK
1328case 16:
1329YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001330#line 207 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001331{ return EXTERNAL; } /* Deprecated, turn into external */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001332 YY_BREAK
1333case 17:
1334YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001335#line 208 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001336{ return EXTERNAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001337 YY_BREAK
1338case 18:
1339YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001340#line 209 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001341{ return IMPLEMENTATION; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001342 YY_BREAK
1343case 19:
1344YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001345#line 210 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001346{ return ZEROINITIALIZER; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001347 YY_BREAK
1348case 20:
1349YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001350#line 211 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001351{ return DOTDOTDOT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001352 YY_BREAK
1353case 21:
1354YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001355#line 212 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001356{ return UNDEF; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001357 YY_BREAK
1358case 22:
1359YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001360#line 213 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001361{ return NULL_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001362 YY_BREAK
1363case 23:
1364YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001365#line 214 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001366{ return TO; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001367 YY_BREAK
1368case 24:
1369YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001370#line 215 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001371{ RET_TOK(TermOpVal, Unwind, UNWIND); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001372 YY_BREAK
1373case 25:
1374YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001375#line 216 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001376{ return NOT; } /* Deprecated, turned into XOR */
Reid Spencer68a24bd2005-08-27 18:50:39 +00001377 YY_BREAK
1378case 26:
1379YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001380#line 217 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001381{ return TAIL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001382 YY_BREAK
1383case 27:
1384YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001385#line 218 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001386{ return TARGET; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001387 YY_BREAK
1388case 28:
1389YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001390#line 219 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001391{ return TRIPLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001392 YY_BREAK
1393case 29:
1394YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001395#line 220 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001396{ return DEPLIBS; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001397 YY_BREAK
1398case 30:
1399YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001400#line 221 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001401{ return ENDIAN; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001402 YY_BREAK
1403case 31:
1404YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001405#line 222 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001406{ return POINTERSIZE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001407 YY_BREAK
1408case 32:
1409YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001410#line 223 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Chris Lattner1ae022f2006-10-22 06:08:13 +00001411{ return DATALAYOUT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001412 YY_BREAK
1413case 33:
1414YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001415#line 224 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001416{ return LITTLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001417 YY_BREAK
1418case 34:
1419YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001420#line 225 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001421{ return BIG; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001422 YY_BREAK
1423case 35:
1424YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001425#line 226 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001426{ return VOLATILE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001427 YY_BREAK
1428case 36:
1429YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001430#line 227 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001431{ return ALIGN; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001432 YY_BREAK
1433case 37:
1434YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001435#line 228 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001436{ return SECTION; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001437 YY_BREAK
1438case 38:
1439YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001440#line 229 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001441{ return MODULE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001442 YY_BREAK
1443case 39:
1444YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001445#line 230 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001446{ return ASM_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001447 YY_BREAK
1448case 40:
1449YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001450#line 231 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001451{ return SIDEEFFECT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001452 YY_BREAK
1453case 41:
1454YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001455#line 233 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001456{ return CC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001457 YY_BREAK
1458case 42:
1459YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001460#line 234 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001461{ return CCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001462 YY_BREAK
1463case 43:
1464YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001465#line 235 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001466{ return CSRETCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001467 YY_BREAK
1468case 44:
1469YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001470#line 236 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001471{ return FASTCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001472 YY_BREAK
1473case 45:
1474YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001475#line 237 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001476{ return COLDCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001477 YY_BREAK
1478case 46:
1479YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001480#line 238 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001481{ return X86_STDCALLCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001482 YY_BREAK
1483case 47:
1484YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001485#line 239 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001486{ return X86_FASTCALLCC_TOK; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001487 YY_BREAK
1488case 48:
1489YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001490#line 241 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001491{ llvmAsmlval.PrimType = Type::VoidTy ; return VOID; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001492 YY_BREAK
1493case 49:
1494YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001495#line 242 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001496{ llvmAsmlval.PrimType = Type::BoolTy ; return BOOL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001497 YY_BREAK
1498case 50:
1499YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001500#line 243 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001501{ llvmAsmlval.PrimType = Type::SByteTy ; return SBYTE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001502 YY_BREAK
1503case 51:
1504YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001505#line 244 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001506{ llvmAsmlval.PrimType = Type::UByteTy ; return UBYTE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001507 YY_BREAK
1508case 52:
1509YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001510#line 245 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001511{ llvmAsmlval.PrimType = Type::ShortTy ; return SHORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001512 YY_BREAK
1513case 53:
1514YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001515#line 246 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001516{ llvmAsmlval.PrimType = Type::UShortTy; return USHORT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001517 YY_BREAK
1518case 54:
1519YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001520#line 247 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001521{ llvmAsmlval.PrimType = Type::IntTy ; return INT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001522 YY_BREAK
1523case 55:
1524YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001525#line 248 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001526{ llvmAsmlval.PrimType = Type::UIntTy ; return UINT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001527 YY_BREAK
1528case 56:
1529YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001530#line 249 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001531{ llvmAsmlval.PrimType = Type::LongTy ; return LONG; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001532 YY_BREAK
1533case 57:
1534YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001535#line 250 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001536{ llvmAsmlval.PrimType = Type::ULongTy ; return ULONG; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001537 YY_BREAK
1538case 58:
1539YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001540#line 251 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001541{ llvmAsmlval.PrimType = Type::FloatTy ; return FLOAT; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001542 YY_BREAK
1543case 59:
1544YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001545#line 252 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001546{ llvmAsmlval.PrimType = Type::DoubleTy; return DOUBLE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001547 YY_BREAK
1548case 60:
1549YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001550#line 253 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001551{ llvmAsmlval.PrimType = Type::LabelTy ; return LABEL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001552 YY_BREAK
1553case 61:
1554YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001555#line 254 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001556{ return TYPE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001557 YY_BREAK
1558case 62:
1559YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001560#line 255 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001561{ return OPAQUE; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001562 YY_BREAK
1563case 63:
1564YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001565#line 257 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001566{ RET_TOK(BinaryOpVal, Add, ADD); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001567 YY_BREAK
1568case 64:
1569YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001570#line 258 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001571{ RET_TOK(BinaryOpVal, Sub, SUB); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001572 YY_BREAK
1573case 65:
1574YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001575#line 259 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001576{ RET_TOK(BinaryOpVal, Mul, MUL); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001577 YY_BREAK
1578case 66:
1579YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001580#line 260 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1581{ RET_TOK_OBSOLETE(BinaryOpVal, UDiv, UDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001582 YY_BREAK
1583case 67:
1584YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001585#line 261 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1586{ RET_TOK(BinaryOpVal, UDiv, UDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001587 YY_BREAK
1588case 68:
1589YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001590#line 262 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1591{ RET_TOK(BinaryOpVal, SDiv, SDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001592 YY_BREAK
1593case 69:
1594YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001595#line 263 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1596{ RET_TOK(BinaryOpVal, FDiv, FDIV); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001597 YY_BREAK
1598case 70:
1599YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001600#line 264 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1601{ RET_TOK_OBSOLETE(BinaryOpVal, URem, UREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001602 YY_BREAK
1603case 71:
1604YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001605#line 265 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1606{ RET_TOK(BinaryOpVal, URem, UREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001607 YY_BREAK
1608case 72:
1609YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001610#line 266 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1611{ RET_TOK(BinaryOpVal, SRem, SREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001612 YY_BREAK
1613case 73:
1614YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001615#line 267 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1616{ RET_TOK(BinaryOpVal, FRem, FREM); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001617 YY_BREAK
1618case 74:
1619YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001620#line 268 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1621{ RET_TOK(BinaryOpVal, And, AND); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001622 YY_BREAK
1623case 75:
1624YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001625#line 269 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1626{ RET_TOK(BinaryOpVal, Or , OR ); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001627 YY_BREAK
1628case 76:
1629YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001630#line 270 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1631{ RET_TOK(BinaryOpVal, Xor, XOR); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001632 YY_BREAK
1633case 77:
1634YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001635#line 271 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1636{ RET_TOK(BinaryOpVal, SetNE, SETNE); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001637 YY_BREAK
1638case 78:
1639YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001640#line 272 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1641{ RET_TOK(BinaryOpVal, SetEQ, SETEQ); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001642 YY_BREAK
1643case 79:
1644YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001645#line 273 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1646{ RET_TOK(BinaryOpVal, SetLT, SETLT); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001647 YY_BREAK
1648case 80:
1649YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001650#line 274 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1651{ RET_TOK(BinaryOpVal, SetGT, SETGT); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001652 YY_BREAK
1653case 81:
1654YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001655#line 275 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1656{ RET_TOK(BinaryOpVal, SetLE, SETLE); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001657 YY_BREAK
1658case 82:
1659YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001660#line 276 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1661{ RET_TOK(BinaryOpVal, SetGE, SETGE); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001662 YY_BREAK
1663case 83:
1664YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001665#line 278 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1666{ RET_TOK(OtherOpVal, PHI, PHI_TOK); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001667 YY_BREAK
1668case 84:
1669YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001670#line 279 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1671{ RET_TOK(OtherOpVal, Call, CALL); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001672 YY_BREAK
1673case 85:
1674YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001675#line 280 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1676{ RET_TOK(OtherOpVal, Cast, CAST); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001677 YY_BREAK
1678case 86:
1679YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001680#line 281 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1681{ RET_TOK(OtherOpVal, Select, SELECT); }
Nate Begeman14b05292005-11-05 09:21:28 +00001682 YY_BREAK
1683case 87:
1684YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001685#line 282 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1686{ RET_TOK(OtherOpVal, Shl, SHL); }
Chris Lattnere869eef2005-11-12 00:11:49 +00001687 YY_BREAK
1688case 88:
1689YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001690#line 283 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1691{ RET_TOK(OtherOpVal, Shr, SHR); }
Robert Bocchino9c62b562006-01-10 19:04:32 +00001692 YY_BREAK
1693case 89:
1694YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001695#line 284 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1696{ return VANEXT_old; }
Robert Bocchino2def1b32006-01-17 20:06:25 +00001697 YY_BREAK
1698case 90:
1699YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001700#line 285 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1701{ return VAARG_old; }
Chris Lattner8335e842006-01-23 23:05:42 +00001702 YY_BREAK
1703case 91:
1704YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001705#line 286 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1706{ RET_TOK(OtherOpVal, VAArg , VAARG); }
Chris Lattner66316012006-01-24 04:14:29 +00001707 YY_BREAK
1708case 92:
1709YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001710#line 287 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1711{ RET_TOK(TermOpVal, Ret, RET); }
Chris Lattner0e9c3762006-01-25 22:27:16 +00001712 YY_BREAK
1713case 93:
1714YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001715#line 288 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1716{ RET_TOK(TermOpVal, Br, BR); }
Chris Lattnerd5efe842006-04-08 01:18:56 +00001717 YY_BREAK
1718case 94:
1719YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001720#line 289 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1721{ RET_TOK(TermOpVal, Switch, SWITCH); }
Chris Lattner75466192006-05-19 21:28:53 +00001722 YY_BREAK
1723case 95:
1724YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001725#line 290 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1726{ RET_TOK(TermOpVal, Invoke, INVOKE); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001727 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001728case 96:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001729YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001730#line 291 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1731{ RET_TOK(TermOpVal, Unwind, UNWIND); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001732 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001733case 97:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001734YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001735#line 292 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1736{ RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001737 YY_BREAK
Chris Lattner75466192006-05-19 21:28:53 +00001738case 98:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001739YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001740#line 294 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1741{ RET_TOK(MemOpVal, Malloc, MALLOC); }
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001742 YY_BREAK
1743case 99:
1744YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001745#line 295 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1746{ RET_TOK(MemOpVal, Alloca, ALLOCA); }
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001747 YY_BREAK
1748case 100:
1749YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001750#line 296 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1751{ RET_TOK(MemOpVal, Free, FREE); }
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001752 YY_BREAK
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001753case 101:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001754YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001755#line 297 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1756{ RET_TOK(MemOpVal, Load, LOAD); }
1757 YY_BREAK
1758case 102:
1759YY_RULE_SETUP
1760#line 298 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1761{ RET_TOK(MemOpVal, Store, STORE); }
1762 YY_BREAK
1763case 103:
1764YY_RULE_SETUP
1765#line 299 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1766{ RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
1767 YY_BREAK
1768case 104:
1769YY_RULE_SETUP
1770#line 301 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1771{ RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
1772 YY_BREAK
1773case 105:
1774YY_RULE_SETUP
1775#line 302 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1776{ RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }
1777 YY_BREAK
1778case 106:
1779YY_RULE_SETUP
1780#line 303 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
1781{ RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
1782 YY_BREAK
1783case 107:
1784YY_RULE_SETUP
1785#line 306 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001786{
Owen Anderson1dc69692006-10-18 02:21:48 +00001787 UnEscapeLexed(yytext+1);
1788 llvmAsmlval.StrVal = strdup(yytext+1); // Skip %
1789 return VAR_ID;
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001790 }
1791 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001792case 108:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001793YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001794#line 311 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001795{
Owen Anderson1dc69692006-10-18 02:21:48 +00001796 yytext[strlen(yytext)-1] = 0; // nuke colon
1797 UnEscapeLexed(yytext);
1798 llvmAsmlval.StrVal = strdup(yytext);
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001799 return LABELSTR;
1800 }
1801 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001802case 109:
Anton Korobeynikov43e3aad2006-09-14 18:25:26 +00001803YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001804#line 317 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001805{
1806 yytext[strlen(yytext)-2] = 0; // nuke colon, end quote
1807 UnEscapeLexed(yytext+1);
1808 llvmAsmlval.StrVal = strdup(yytext+1);
1809 return LABELSTR;
1810 }
1811 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001812case 110:
Owen Anderson1dc69692006-10-18 02:21:48 +00001813YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001814#line 324 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001815{ // Note that we cannot unescape a string constant here! The
1816 // string constant might contain a \00 which would not be
1817 // understood by the string stuff. It is valid to make a
1818 // [sbyte] c"Hello World\00" constant, for example.
1819 //
Owen Anderson1dc69692006-10-18 02:21:48 +00001820 yytext[strlen(yytext)-1] = 0; // nuke end quote
1821 llvmAsmlval.StrVal = strdup(yytext+1); // Nuke start quote
Reid Spencer68a24bd2005-08-27 18:50:39 +00001822 return STRINGCONSTANT;
1823 }
1824 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001825case 111:
Chris Lattner75466192006-05-19 21:28:53 +00001826YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001827#line 335 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001828{ llvmAsmlval.UInt64Val = atoull(yytext); return EUINT64VAL; }
1829 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001830case 112:
Owen Anderson1dc69692006-10-18 02:21:48 +00001831YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001832#line 336 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001833{
Owen Anderson1dc69692006-10-18 02:21:48 +00001834 uint64_t Val = atoull(yytext+1);
Reid Spencer68a24bd2005-08-27 18:50:39 +00001835 // +1: we have bigger negative range
1836 if (Val > (uint64_t)INT64_MAX+1)
Reid Spencer61c83e02006-08-18 08:43:06 +00001837 GenerateError("Constant too large for signed 64 bits!");
Reid Spencer68a24bd2005-08-27 18:50:39 +00001838 llvmAsmlval.SInt64Val = -Val;
1839 return ESINT64VAL;
1840 }
1841 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001842case 113:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001843YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001844#line 344 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001845{
Owen Anderson1dc69692006-10-18 02:21:48 +00001846 llvmAsmlval.UInt64Val = HexIntToVal(yytext+3);
1847 return yytext[0] == 's' ? ESINT64VAL : EUINT64VAL;
1848 }
1849 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001850case 114:
Owen Anderson1dc69692006-10-18 02:21:48 +00001851YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001852#line 349 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001853{
1854 uint64_t Val = atoull(yytext+1);
Reid Spencer68a24bd2005-08-27 18:50:39 +00001855 if ((unsigned)Val != Val)
Reid Spencer61c83e02006-08-18 08:43:06 +00001856 GenerateError("Invalid value number (too large)!");
Reid Spencer68a24bd2005-08-27 18:50:39 +00001857 llvmAsmlval.UIntVal = unsigned(Val);
1858 return UINTVAL;
1859 }
1860 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001861case 115:
Reid Spencer68a24bd2005-08-27 18:50:39 +00001862YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001863#line 356 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001864{
Owen Anderson1dc69692006-10-18 02:21:48 +00001865 uint64_t Val = atoull(yytext+2);
Reid Spencer68a24bd2005-08-27 18:50:39 +00001866 // +1: we have bigger negative range
1867 if (Val > (uint64_t)INT32_MAX+1)
Reid Spencer61c83e02006-08-18 08:43:06 +00001868 GenerateError("Constant too large for signed 32 bits!");
Reid Spencer68a24bd2005-08-27 18:50:39 +00001869 llvmAsmlval.SIntVal = (int)-Val;
1870 return SINTVAL;
1871 }
1872 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001873case 116:
Chris Lattner75466192006-05-19 21:28:53 +00001874YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001875#line 365 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001876{ llvmAsmlval.FPVal = atof(yytext); return FPVAL; }
1877 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001878case 117:
Owen Anderson1dc69692006-10-18 02:21:48 +00001879YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001880#line 366 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001881{ llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; }
Reid Spencer68a24bd2005-08-27 18:50:39 +00001882 YY_BREAK
1883case YY_STATE_EOF(INITIAL):
Reid Spencer3ed469c2006-11-02 20:25:50 +00001884#line 368 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001885{
1886 /* Make sure to free the internal buffers for flex when we are
1887 * done reading our input!
1888 */
Owen Anderson1dc69692006-10-18 02:21:48 +00001889 yy_delete_buffer(YY_CURRENT_BUFFER);
Reid Spencer68a24bd2005-08-27 18:50:39 +00001890 return EOF;
1891 }
1892 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001893case 118:
Chris Lattner75466192006-05-19 21:28:53 +00001894YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001895#line 376 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001896{ /* Ignore whitespace */ }
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001897 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001898case 119:
Anton Korobeynikovbcb97702006-09-17 20:25:45 +00001899YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001900#line 377 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Owen Anderson1dc69692006-10-18 02:21:48 +00001901{ return yytext[0]; }
1902 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001903case 120:
Owen Anderson1dc69692006-10-18 02:21:48 +00001904YY_RULE_SETUP
Reid Spencer3ed469c2006-11-02 20:25:50 +00001905#line 379 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001906YY_FATAL_ERROR( "flex scanner jammed" );
1907 YY_BREAK
Reid Spencer3ed469c2006-11-02 20:25:50 +00001908#line 1909 "Lexer.cpp"
Reid Spencer68a24bd2005-08-27 18:50:39 +00001909
1910 case YY_END_OF_BUFFER:
1911 {
1912 /* Amount of text matched not including the EOB char. */
Owen Anderson1dc69692006-10-18 02:21:48 +00001913 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001914
1915 /* Undo the effects of YY_DO_BEFORE_ACTION. */
Owen Anderson1dc69692006-10-18 02:21:48 +00001916 *yy_cp = yy_hold_char;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001917 YY_RESTORE_YY_MORE_OFFSET
1918
Owen Anderson1dc69692006-10-18 02:21:48 +00001919 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001920 {
1921 /* We're scanning a new file or input source. It's
1922 * possible that this happened because the user
Owen Anderson1dc69692006-10-18 02:21:48 +00001923 * just pointed yyin at a new source and called
1924 * yylex(). If so, then we have to assure
1925 * consistency between yy_current_buffer and our
Reid Spencer68a24bd2005-08-27 18:50:39 +00001926 * globals. Here is the right place to do so, because
1927 * this is the first action (other than possibly a
1928 * back-up) that will match for the new input source.
1929 */
Owen Anderson1dc69692006-10-18 02:21:48 +00001930 yy_n_chars = yy_current_buffer->yy_n_chars;
1931 yy_current_buffer->yy_input_file = yyin;
1932 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001933 }
1934
1935 /* Note that here we test for yy_c_buf_p "<=" to the position
1936 * of the first EOB in the buffer, since yy_c_buf_p will
1937 * already have been incremented past the NUL character
1938 * (since all states make transitions on EOB to the
1939 * end-of-buffer state). Contrast this with the test
1940 * in input().
1941 */
Owen Anderson1dc69692006-10-18 02:21:48 +00001942 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001943 { /* This was really a NUL. */
1944 yy_state_type yy_next_state;
1945
Owen Anderson1dc69692006-10-18 02:21:48 +00001946 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001947
Owen Anderson1dc69692006-10-18 02:21:48 +00001948 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00001949
1950 /* Okay, we're now positioned to make the NUL
1951 * transition. We couldn't have
1952 * yy_get_previous_state() go ahead and do it
1953 * for us because it doesn't know how to deal
1954 * with the possibility of jamming (and we don't
1955 * want to build jamming into it because then it
1956 * will run more slowly).
1957 */
1958
1959 yy_next_state = yy_try_NUL_trans( yy_current_state );
1960
Owen Anderson1dc69692006-10-18 02:21:48 +00001961 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001962
1963 if ( yy_next_state )
1964 {
1965 /* Consume the NUL. */
Owen Anderson1dc69692006-10-18 02:21:48 +00001966 yy_cp = ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001967 yy_current_state = yy_next_state;
1968 goto yy_match;
1969 }
1970
1971 else
1972 {
Owen Anderson1dc69692006-10-18 02:21:48 +00001973 yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001974 goto yy_find_action;
1975 }
1976 }
1977
Owen Anderson1dc69692006-10-18 02:21:48 +00001978 else switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001979 {
1980 case EOB_ACT_END_OF_FILE:
1981 {
Owen Anderson1dc69692006-10-18 02:21:48 +00001982 yy_did_buffer_switch_on_eof = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001983
Owen Anderson1dc69692006-10-18 02:21:48 +00001984 if ( yywrap() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00001985 {
1986 /* Note: because we've taken care in
1987 * yy_get_next_buffer() to have set up
Owen Anderson1dc69692006-10-18 02:21:48 +00001988 * yytext, we can now set up
Reid Spencer68a24bd2005-08-27 18:50:39 +00001989 * yy_c_buf_p so that if some total
1990 * hoser (like flex itself) wants to
1991 * call the scanner after we return the
1992 * YY_NULL, it'll still work - another
1993 * YY_NULL will get returned.
1994 */
Owen Anderson1dc69692006-10-18 02:21:48 +00001995 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00001996
1997 yy_act = YY_STATE_EOF(YY_START);
1998 goto do_action;
1999 }
2000
2001 else
2002 {
Owen Anderson1dc69692006-10-18 02:21:48 +00002003 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002004 YY_NEW_FILE;
2005 }
2006 break;
2007 }
2008
2009 case EOB_ACT_CONTINUE_SCAN:
Owen Anderson1dc69692006-10-18 02:21:48 +00002010 yy_c_buf_p =
2011 yytext_ptr + yy_amount_of_matched_text;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002012
Owen Anderson1dc69692006-10-18 02:21:48 +00002013 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002014
Owen Anderson1dc69692006-10-18 02:21:48 +00002015 yy_cp = yy_c_buf_p;
2016 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002017 goto yy_match;
2018
2019 case EOB_ACT_LAST_MATCH:
Owen Anderson1dc69692006-10-18 02:21:48 +00002020 yy_c_buf_p =
2021 &yy_current_buffer->yy_ch_buf[yy_n_chars];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002022
Owen Anderson1dc69692006-10-18 02:21:48 +00002023 yy_current_state = yy_get_previous_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002024
Owen Anderson1dc69692006-10-18 02:21:48 +00002025 yy_cp = yy_c_buf_p;
2026 yy_bp = yytext_ptr + YY_MORE_ADJ;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002027 goto yy_find_action;
2028 }
2029 break;
2030 }
2031
2032 default:
2033 YY_FATAL_ERROR(
2034 "fatal flex scanner internal error--no action found" );
2035 } /* end of action switch */
2036 } /* end of scanning one token */
Owen Anderson1dc69692006-10-18 02:21:48 +00002037 } /* end of yylex */
2038
Reid Spencer68a24bd2005-08-27 18:50:39 +00002039
2040/* yy_get_next_buffer - try to read in a new buffer
2041 *
2042 * Returns a code representing an action:
2043 * EOB_ACT_LAST_MATCH -
2044 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2045 * EOB_ACT_END_OF_FILE - end of file
2046 */
Owen Anderson1dc69692006-10-18 02:21:48 +00002047
2048static int yy_get_next_buffer()
2049 {
2050 register char *dest = yy_current_buffer->yy_ch_buf;
2051 register char *source = yytext_ptr;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002052 register int number_to_move, i;
2053 int ret_val;
2054
Owen Anderson1dc69692006-10-18 02:21:48 +00002055 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002056 YY_FATAL_ERROR(
2057 "fatal flex scanner internal error--end of buffer missed" );
2058
Owen Anderson1dc69692006-10-18 02:21:48 +00002059 if ( yy_current_buffer->yy_fill_buffer == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002060 { /* Don't try to fill the buffer, so this is an EOF. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002061 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002062 {
2063 /* We matched a single character, the EOB, so
2064 * treat this as a final EOF.
2065 */
2066 return EOB_ACT_END_OF_FILE;
2067 }
2068
2069 else
2070 {
2071 /* We matched some text prior to the EOB, first
2072 * process it.
2073 */
2074 return EOB_ACT_LAST_MATCH;
2075 }
2076 }
2077
2078 /* Try to read more data. */
2079
2080 /* First move last chars to start of buffer. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002081 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002082
2083 for ( i = 0; i < number_to_move; ++i )
2084 *(dest++) = *(source++);
2085
Owen Anderson1dc69692006-10-18 02:21:48 +00002086 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002087 /* don't do the read, it's not guaranteed to return an EOF,
2088 * just force an EOF
2089 */
Owen Anderson1dc69692006-10-18 02:21:48 +00002090 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002091
2092 else
2093 {
Owen Anderson1dc69692006-10-18 02:21:48 +00002094 int num_to_read =
2095 yy_current_buffer->yy_buf_size - number_to_move - 1;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002096
2097 while ( num_to_read <= 0 )
2098 { /* Not enough room in the buffer - grow it. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002099#ifdef YY_USES_REJECT
2100 YY_FATAL_ERROR(
2101"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2102#else
Reid Spencer68a24bd2005-08-27 18:50:39 +00002103
2104 /* just a shorter name for the current buffer */
Owen Anderson1dc69692006-10-18 02:21:48 +00002105 YY_BUFFER_STATE b = yy_current_buffer;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002106
2107 int yy_c_buf_p_offset =
Owen Anderson1dc69692006-10-18 02:21:48 +00002108 (int) (yy_c_buf_p - b->yy_ch_buf);
Reid Spencer68a24bd2005-08-27 18:50:39 +00002109
2110 if ( b->yy_is_our_buffer )
2111 {
2112 int new_size = b->yy_buf_size * 2;
2113
2114 if ( new_size <= 0 )
2115 b->yy_buf_size += b->yy_buf_size / 8;
2116 else
2117 b->yy_buf_size *= 2;
2118
2119 b->yy_ch_buf = (char *)
2120 /* Include room in for 2 EOB chars. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002121 yy_flex_realloc( (void *) b->yy_ch_buf,
2122 b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002123 }
2124 else
2125 /* Can't grow it, we don't own it. */
2126 b->yy_ch_buf = 0;
2127
2128 if ( ! b->yy_ch_buf )
2129 YY_FATAL_ERROR(
2130 "fatal error - scanner input buffer overflow" );
2131
Owen Anderson1dc69692006-10-18 02:21:48 +00002132 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002133
Owen Anderson1dc69692006-10-18 02:21:48 +00002134 num_to_read = yy_current_buffer->yy_buf_size -
Reid Spencer68a24bd2005-08-27 18:50:39 +00002135 number_to_move - 1;
Owen Anderson1dc69692006-10-18 02:21:48 +00002136#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002137 }
2138
2139 if ( num_to_read > YY_READ_BUF_SIZE )
2140 num_to_read = YY_READ_BUF_SIZE;
2141
2142 /* Read in more data. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002143 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
2144 yy_n_chars, num_to_read );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002145
Owen Anderson1dc69692006-10-18 02:21:48 +00002146 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002147 }
2148
Owen Anderson1dc69692006-10-18 02:21:48 +00002149 if ( yy_n_chars == 0 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002150 {
2151 if ( number_to_move == YY_MORE_ADJ )
2152 {
2153 ret_val = EOB_ACT_END_OF_FILE;
Owen Anderson1dc69692006-10-18 02:21:48 +00002154 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002155 }
2156
2157 else
2158 {
2159 ret_val = EOB_ACT_LAST_MATCH;
Owen Anderson1dc69692006-10-18 02:21:48 +00002160 yy_current_buffer->yy_buffer_status =
Reid Spencer68a24bd2005-08-27 18:50:39 +00002161 YY_BUFFER_EOF_PENDING;
2162 }
2163 }
2164
2165 else
2166 ret_val = EOB_ACT_CONTINUE_SCAN;
2167
Owen Anderson1dc69692006-10-18 02:21:48 +00002168 yy_n_chars += number_to_move;
2169 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
2170 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002171
Owen Anderson1dc69692006-10-18 02:21:48 +00002172 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002173
2174 return ret_val;
Owen Anderson1dc69692006-10-18 02:21:48 +00002175 }
2176
Reid Spencer68a24bd2005-08-27 18:50:39 +00002177
2178/* yy_get_previous_state - get the state just before the EOB char was reached */
2179
Owen Anderson1dc69692006-10-18 02:21:48 +00002180static yy_state_type yy_get_previous_state()
2181 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002182 register yy_state_type yy_current_state;
2183 register char *yy_cp;
2184
Owen Anderson1dc69692006-10-18 02:21:48 +00002185 yy_current_state = yy_start;
2186 yy_state_ptr = yy_state_buf;
2187 *yy_state_ptr++ = yy_current_state;
2188
2189 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002190 {
2191 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2192 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2193 {
2194 yy_current_state = (int) yy_def[yy_current_state];
Reid Spencer3ed469c2006-11-02 20:25:50 +00002195 if ( yy_current_state >= 526 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002196 yy_c = yy_meta[(unsigned int) yy_c];
2197 }
2198 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Owen Anderson1dc69692006-10-18 02:21:48 +00002199 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002200 }
2201
2202 return yy_current_state;
Owen Anderson1dc69692006-10-18 02:21:48 +00002203 }
2204
Reid Spencer68a24bd2005-08-27 18:50:39 +00002205
2206/* yy_try_NUL_trans - try to make a transition on the NUL character
2207 *
2208 * synopsis
2209 * next_state = yy_try_NUL_trans( current_state );
2210 */
Owen Anderson1dc69692006-10-18 02:21:48 +00002211
2212#ifdef YY_USE_PROTOS
2213static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
2214#else
2215static yy_state_type yy_try_NUL_trans( yy_current_state )
2216yy_state_type yy_current_state;
2217#endif
2218 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002219 register int yy_is_jam;
2220
2221 register YY_CHAR yy_c = 1;
2222 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2223 {
2224 yy_current_state = (int) yy_def[yy_current_state];
Reid Spencer3ed469c2006-11-02 20:25:50 +00002225 if ( yy_current_state >= 526 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002226 yy_c = yy_meta[(unsigned int) yy_c];
2227 }
2228 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
Reid Spencer3ed469c2006-11-02 20:25:50 +00002229 yy_is_jam = (yy_current_state == 525);
Owen Anderson1dc69692006-10-18 02:21:48 +00002230 if ( ! yy_is_jam )
2231 *yy_state_ptr++ = yy_current_state;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002232
2233 return yy_is_jam ? 0 : yy_current_state;
Owen Anderson1dc69692006-10-18 02:21:48 +00002234 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002235
2236
Owen Anderson1dc69692006-10-18 02:21:48 +00002237#ifndef YY_NO_UNPUT
2238#ifdef YY_USE_PROTOS
2239static inline void yyunput( int c, register char *yy_bp )
2240#else
2241static inline void yyunput( c, yy_bp )
2242int c;
2243register char *yy_bp;
2244#endif
2245 {
2246 register char *yy_cp = yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002247
Owen Anderson1dc69692006-10-18 02:21:48 +00002248 /* undo effects of setting up yytext */
2249 *yy_cp = yy_hold_char;
2250
2251 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002252 { /* need to shift things up to make room */
2253 /* +2 for EOB chars. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002254 register int number_to_move = yy_n_chars + 2;
2255 register char *dest = &yy_current_buffer->yy_ch_buf[
2256 yy_current_buffer->yy_buf_size + 2];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002257 register char *source =
Owen Anderson1dc69692006-10-18 02:21:48 +00002258 &yy_current_buffer->yy_ch_buf[number_to_move];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002259
Owen Anderson1dc69692006-10-18 02:21:48 +00002260 while ( source > yy_current_buffer->yy_ch_buf )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002261 *--dest = *--source;
2262
2263 yy_cp += (int) (dest - source);
2264 yy_bp += (int) (dest - source);
Owen Anderson1dc69692006-10-18 02:21:48 +00002265 yy_current_buffer->yy_n_chars =
2266 yy_n_chars = yy_current_buffer->yy_buf_size;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002267
Owen Anderson1dc69692006-10-18 02:21:48 +00002268 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002269 YY_FATAL_ERROR( "flex scanner push-back overflow" );
2270 }
2271
2272 *--yy_cp = (char) c;
2273
Owen Anderson1dc69692006-10-18 02:21:48 +00002274 if ( c == '\n' )
2275 --yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002276
Owen Anderson1dc69692006-10-18 02:21:48 +00002277 yytext_ptr = yy_bp;
2278 yy_hold_char = *yy_cp;
2279 yy_c_buf_p = yy_cp;
2280 }
2281#endif /* ifndef YY_NO_UNPUT */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002282
Owen Anderson1dc69692006-10-18 02:21:48 +00002283
Reid Spencer3ed469c2006-11-02 20:25:50 +00002284#ifndef YY_NO_INPUT
Reid Spencer68a24bd2005-08-27 18:50:39 +00002285#ifdef __cplusplus
Owen Anderson1dc69692006-10-18 02:21:48 +00002286static int yyinput()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002287#else
Owen Anderson1dc69692006-10-18 02:21:48 +00002288static int input()
Reid Spencer68a24bd2005-08-27 18:50:39 +00002289#endif
Owen Anderson1dc69692006-10-18 02:21:48 +00002290 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002291 int c;
2292
Owen Anderson1dc69692006-10-18 02:21:48 +00002293 *yy_c_buf_p = yy_hold_char;
2294
2295 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002296 {
2297 /* yy_c_buf_p now points to the character we want to return.
2298 * If this occurs *before* the EOB characters, then it's a
2299 * valid NUL; if not, then we've hit the end of the buffer.
2300 */
Owen Anderson1dc69692006-10-18 02:21:48 +00002301 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002302 /* This was really a NUL. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002303 *yy_c_buf_p = '\0';
Reid Spencer68a24bd2005-08-27 18:50:39 +00002304
2305 else
2306 { /* need more input */
Owen Anderson1dc69692006-10-18 02:21:48 +00002307 int offset = yy_c_buf_p - yytext_ptr;
2308 ++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002309
Owen Anderson1dc69692006-10-18 02:21:48 +00002310 switch ( yy_get_next_buffer() )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002311 {
2312 case EOB_ACT_LAST_MATCH:
2313 /* This happens because yy_g_n_b()
2314 * sees that we've accumulated a
2315 * token and flags that we need to
2316 * try matching the token before
2317 * proceeding. But for input(),
2318 * there's no matching to consider.
2319 * So convert the EOB_ACT_LAST_MATCH
2320 * to EOB_ACT_END_OF_FILE.
2321 */
2322
2323 /* Reset buffer status. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002324 yyrestart( yyin );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002325
Owen Anderson1dc69692006-10-18 02:21:48 +00002326 /* fall through */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002327
2328 case EOB_ACT_END_OF_FILE:
2329 {
Owen Anderson1dc69692006-10-18 02:21:48 +00002330 if ( yywrap() )
Reid Spencer61c83e02006-08-18 08:43:06 +00002331 return EOF;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002332
Owen Anderson1dc69692006-10-18 02:21:48 +00002333 if ( ! yy_did_buffer_switch_on_eof )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002334 YY_NEW_FILE;
2335#ifdef __cplusplus
2336 return yyinput();
2337#else
2338 return input();
2339#endif
2340 }
2341
2342 case EOB_ACT_CONTINUE_SCAN:
Owen Anderson1dc69692006-10-18 02:21:48 +00002343 yy_c_buf_p = yytext_ptr + offset;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002344 break;
2345 }
2346 }
2347 }
2348
Owen Anderson1dc69692006-10-18 02:21:48 +00002349 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */
2350 *yy_c_buf_p = '\0'; /* preserve yytext */
2351 yy_hold_char = *++yy_c_buf_p;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002352
2353 if ( c == '\n' )
Owen Anderson1dc69692006-10-18 02:21:48 +00002354 ++yylineno;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002355
2356 return c;
2357 }
Reid Spencer3ed469c2006-11-02 20:25:50 +00002358#endif /* YY_NO_INPUT */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002359
Owen Anderson1dc69692006-10-18 02:21:48 +00002360#ifdef YY_USE_PROTOS
2361void yyrestart( FILE *input_file )
2362#else
2363void yyrestart( input_file )
2364FILE *input_file;
2365#endif
2366 {
2367 if ( ! yy_current_buffer )
2368 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
2369
2370 yy_init_buffer( yy_current_buffer, input_file );
2371 yy_load_buffer_state();
2372 }
2373
2374
2375#ifdef YY_USE_PROTOS
2376void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
2377#else
2378void yy_switch_to_buffer( new_buffer )
2379YY_BUFFER_STATE new_buffer;
2380#endif
2381 {
2382 if ( yy_current_buffer == new_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002383 return;
2384
Owen Anderson1dc69692006-10-18 02:21:48 +00002385 if ( yy_current_buffer )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002386 {
2387 /* Flush out information for old buffer. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002388 *yy_c_buf_p = yy_hold_char;
2389 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
2390 yy_current_buffer->yy_n_chars = yy_n_chars;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002391 }
2392
Owen Anderson1dc69692006-10-18 02:21:48 +00002393 yy_current_buffer = new_buffer;
2394 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002395
2396 /* We don't actually know whether we did this switch during
Owen Anderson1dc69692006-10-18 02:21:48 +00002397 * EOF (yywrap()) processing, but the only time this flag
2398 * is looked at is after yywrap() is called, so it's safe
Reid Spencer68a24bd2005-08-27 18:50:39 +00002399 * to go ahead and always set it.
2400 */
Owen Anderson1dc69692006-10-18 02:21:48 +00002401 yy_did_buffer_switch_on_eof = 1;
2402 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002403
2404
Owen Anderson1dc69692006-10-18 02:21:48 +00002405#ifdef YY_USE_PROTOS
2406void yy_load_buffer_state( void )
2407#else
2408void yy_load_buffer_state()
2409#endif
2410 {
2411 yy_n_chars = yy_current_buffer->yy_n_chars;
2412 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
2413 yyin = yy_current_buffer->yy_input_file;
2414 yy_hold_char = *yy_c_buf_p;
2415 }
2416
2417
2418#ifdef YY_USE_PROTOS
2419YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
2420#else
2421YY_BUFFER_STATE yy_create_buffer( file, size )
2422FILE *file;
2423int size;
2424#endif
2425 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002426 YY_BUFFER_STATE b;
Owen Anderson1dc69692006-10-18 02:21:48 +00002427
2428 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002429 if ( ! b )
Owen Anderson1dc69692006-10-18 02:21:48 +00002430 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002431
2432 b->yy_buf_size = size;
2433
2434 /* yy_ch_buf has to be 2 characters longer than the size given because
2435 * we need to put in 2 end-of-buffer characters.
2436 */
Owen Anderson1dc69692006-10-18 02:21:48 +00002437 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002438 if ( ! b->yy_ch_buf )
Owen Anderson1dc69692006-10-18 02:21:48 +00002439 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002440
2441 b->yy_is_our_buffer = 1;
2442
Owen Anderson1dc69692006-10-18 02:21:48 +00002443 yy_init_buffer( b, file );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002444
2445 return b;
Owen Anderson1dc69692006-10-18 02:21:48 +00002446 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002447
Owen Anderson1dc69692006-10-18 02:21:48 +00002448
2449#ifdef YY_USE_PROTOS
2450void yy_delete_buffer( YY_BUFFER_STATE b )
2451#else
2452void yy_delete_buffer( b )
2453YY_BUFFER_STATE b;
2454#endif
2455 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002456 if ( ! b )
2457 return;
2458
Owen Anderson1dc69692006-10-18 02:21:48 +00002459 if ( b == yy_current_buffer )
2460 yy_current_buffer = (YY_BUFFER_STATE) 0;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002461
2462 if ( b->yy_is_our_buffer )
Owen Anderson1dc69692006-10-18 02:21:48 +00002463 yy_flex_free( (void *) b->yy_ch_buf );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002464
Owen Anderson1dc69692006-10-18 02:21:48 +00002465 yy_flex_free( (void *) b );
2466 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002467
2468
Owen Anderson1dc69692006-10-18 02:21:48 +00002469
2470#ifdef YY_USE_PROTOS
2471void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
2472#else
2473void yy_init_buffer( b, file )
2474YY_BUFFER_STATE b;
2475FILE *file;
2476#endif
2477
2478
2479 {
2480 yy_flush_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002481
2482 b->yy_input_file = file;
2483 b->yy_fill_buffer = 1;
2484
Owen Anderson1dc69692006-10-18 02:21:48 +00002485#if YY_ALWAYS_INTERACTIVE
2486 b->yy_is_interactive = 1;
2487#else
2488#if YY_NEVER_INTERACTIVE
2489 b->yy_is_interactive = 0;
2490#else
2491 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
2492#endif
2493#endif
2494 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002495
2496
Owen Anderson1dc69692006-10-18 02:21:48 +00002497#ifdef YY_USE_PROTOS
2498void yy_flush_buffer( YY_BUFFER_STATE b )
2499#else
2500void yy_flush_buffer( b )
2501YY_BUFFER_STATE b;
2502#endif
2503
2504 {
2505 if ( ! b )
Reid Spencer68a24bd2005-08-27 18:50:39 +00002506 return;
2507
2508 b->yy_n_chars = 0;
2509
2510 /* We always need two end-of-buffer characters. The first causes
2511 * a transition to the end-of-buffer state. The second causes
2512 * a jam in that state.
2513 */
2514 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
2515 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
2516
2517 b->yy_buf_pos = &b->yy_ch_buf[0];
2518
2519 b->yy_at_bol = 1;
2520 b->yy_buffer_status = YY_BUFFER_NEW;
2521
Owen Anderson1dc69692006-10-18 02:21:48 +00002522 if ( b == yy_current_buffer )
2523 yy_load_buffer_state();
Reid Spencer68a24bd2005-08-27 18:50:39 +00002524 }
2525
2526
Owen Anderson1dc69692006-10-18 02:21:48 +00002527#ifndef YY_NO_SCAN_BUFFER
2528#ifdef YY_USE_PROTOS
2529YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
2530#else
2531YY_BUFFER_STATE yy_scan_buffer( base, size )
2532char *base;
2533yy_size_t size;
2534#endif
2535 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002536 YY_BUFFER_STATE b;
Owen Anderson1dc69692006-10-18 02:21:48 +00002537
Reid Spencer68a24bd2005-08-27 18:50:39 +00002538 if ( size < 2 ||
2539 base[size-2] != YY_END_OF_BUFFER_CHAR ||
2540 base[size-1] != YY_END_OF_BUFFER_CHAR )
2541 /* They forgot to leave room for the EOB's. */
2542 return 0;
2543
Owen Anderson1dc69692006-10-18 02:21:48 +00002544 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002545 if ( ! b )
Owen Anderson1dc69692006-10-18 02:21:48 +00002546 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002547
2548 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
2549 b->yy_buf_pos = b->yy_ch_buf = base;
2550 b->yy_is_our_buffer = 0;
2551 b->yy_input_file = 0;
2552 b->yy_n_chars = b->yy_buf_size;
2553 b->yy_is_interactive = 0;
2554 b->yy_at_bol = 1;
2555 b->yy_fill_buffer = 0;
2556 b->yy_buffer_status = YY_BUFFER_NEW;
2557
Owen Anderson1dc69692006-10-18 02:21:48 +00002558 yy_switch_to_buffer( b );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002559
2560 return b;
Owen Anderson1dc69692006-10-18 02:21:48 +00002561 }
2562#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002563
2564
Owen Anderson1dc69692006-10-18 02:21:48 +00002565#ifndef YY_NO_SCAN_STRING
2566#ifdef YY_USE_PROTOS
2567YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
2568#else
2569YY_BUFFER_STATE yy_scan_string( yy_str )
2570yyconst char *yy_str;
2571#endif
2572 {
2573 int len;
2574 for ( len = 0; yy_str[len]; ++len )
2575 ;
2576
2577 return yy_scan_bytes( yy_str, len );
2578 }
2579#endif
2580
2581
2582#ifndef YY_NO_SCAN_BYTES
2583#ifdef YY_USE_PROTOS
2584YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
2585#else
2586YY_BUFFER_STATE yy_scan_bytes( bytes, len )
2587yyconst char *bytes;
2588int len;
2589#endif
2590 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002591 YY_BUFFER_STATE b;
2592 char *buf;
2593 yy_size_t n;
2594 int i;
Owen Anderson1dc69692006-10-18 02:21:48 +00002595
Reid Spencer68a24bd2005-08-27 18:50:39 +00002596 /* Get memory for full buffer, including space for trailing EOB's. */
Owen Anderson1dc69692006-10-18 02:21:48 +00002597 n = len + 2;
2598 buf = (char *) yy_flex_alloc( n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002599 if ( ! buf )
Owen Anderson1dc69692006-10-18 02:21:48 +00002600 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002601
Owen Anderson1dc69692006-10-18 02:21:48 +00002602 for ( i = 0; i < len; ++i )
2603 buf[i] = bytes[i];
Reid Spencer68a24bd2005-08-27 18:50:39 +00002604
Owen Anderson1dc69692006-10-18 02:21:48 +00002605 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
Reid Spencer68a24bd2005-08-27 18:50:39 +00002606
Owen Anderson1dc69692006-10-18 02:21:48 +00002607 b = yy_scan_buffer( buf, n );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002608 if ( ! b )
Owen Anderson1dc69692006-10-18 02:21:48 +00002609 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002610
2611 /* It's okay to grow etc. this buffer, and we should throw it
2612 * away when we're done.
2613 */
2614 b->yy_is_our_buffer = 1;
2615
2616 return b;
Owen Anderson1dc69692006-10-18 02:21:48 +00002617 }
2618#endif
2619
2620
2621#ifndef YY_NO_PUSH_STATE
2622#ifdef YY_USE_PROTOS
2623static void yy_push_state( int new_state )
2624#else
2625static void yy_push_state( new_state )
2626int new_state;
2627#endif
2628 {
2629 if ( yy_start_stack_ptr >= yy_start_stack_depth )
2630 {
2631 yy_size_t new_size;
2632
2633 yy_start_stack_depth += YY_START_STACK_INCR;
2634 new_size = yy_start_stack_depth * sizeof( int );
2635
2636 if ( ! yy_start_stack )
2637 yy_start_stack = (int *) yy_flex_alloc( new_size );
2638
2639 else
2640 yy_start_stack = (int *) yy_flex_realloc(
2641 (void *) yy_start_stack, new_size );
2642
2643 if ( ! yy_start_stack )
2644 YY_FATAL_ERROR(
2645 "out of memory expanding start-condition stack" );
2646 }
2647
2648 yy_start_stack[yy_start_stack_ptr++] = YY_START;
2649
2650 BEGIN(new_state);
2651 }
2652#endif
2653
2654
2655#ifndef YY_NO_POP_STATE
2656static void yy_pop_state()
2657 {
2658 if ( --yy_start_stack_ptr < 0 )
2659 YY_FATAL_ERROR( "start-condition stack underflow" );
2660
2661 BEGIN(yy_start_stack[yy_start_stack_ptr]);
2662 }
2663#endif
2664
2665
2666#ifndef YY_NO_TOP_STATE
2667static int yy_top_state()
2668 {
2669 return yy_start_stack[yy_start_stack_ptr - 1];
2670 }
2671#endif
Reid Spencer68a24bd2005-08-27 18:50:39 +00002672
2673#ifndef YY_EXIT_FAILURE
2674#define YY_EXIT_FAILURE 2
2675#endif
2676
Owen Anderson1dc69692006-10-18 02:21:48 +00002677#ifdef YY_USE_PROTOS
2678static void yy_fatal_error( yyconst char msg[] )
2679#else
2680static void yy_fatal_error( msg )
2681char msg[];
2682#endif
2683 {
2684 (void) fprintf( stderr, "%s\n", msg );
Reid Spencer68a24bd2005-08-27 18:50:39 +00002685 exit( YY_EXIT_FAILURE );
Owen Anderson1dc69692006-10-18 02:21:48 +00002686 }
2687
2688
Reid Spencer68a24bd2005-08-27 18:50:39 +00002689
2690/* Redefine yyless() so it works in section 3 code. */
2691
2692#undef yyless
2693#define yyless(n) \
2694 do \
2695 { \
Owen Anderson1dc69692006-10-18 02:21:48 +00002696 /* Undo effects of setting up yytext. */ \
2697 yytext[yyleng] = yy_hold_char; \
2698 yy_c_buf_p = yytext + n; \
2699 yy_hold_char = *yy_c_buf_p; \
2700 *yy_c_buf_p = '\0'; \
2701 yyleng = n; \
Reid Spencer68a24bd2005-08-27 18:50:39 +00002702 } \
2703 while ( 0 )
2704
2705
Owen Anderson1dc69692006-10-18 02:21:48 +00002706/* Internal utility routines. */
Reid Spencer68a24bd2005-08-27 18:50:39 +00002707
2708#ifndef yytext_ptr
Owen Anderson1dc69692006-10-18 02:21:48 +00002709#ifdef YY_USE_PROTOS
2710static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
2711#else
2712static void yy_flex_strncpy( s1, s2, n )
2713char *s1;
2714yyconst char *s2;
2715int n;
2716#endif
2717 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002718 register int i;
2719 for ( i = 0; i < n; ++i )
2720 s1[i] = s2[i];
Owen Anderson1dc69692006-10-18 02:21:48 +00002721 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002722#endif
2723
2724#ifdef YY_NEED_STRLEN
Owen Anderson1dc69692006-10-18 02:21:48 +00002725#ifdef YY_USE_PROTOS
2726static int yy_flex_strlen( yyconst char *s )
2727#else
2728static int yy_flex_strlen( s )
2729yyconst char *s;
2730#endif
2731 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002732 register int n;
2733 for ( n = 0; s[n]; ++n )
2734 ;
2735
2736 return n;
Owen Anderson1dc69692006-10-18 02:21:48 +00002737 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002738#endif
2739
Reid Spencer68a24bd2005-08-27 18:50:39 +00002740
Owen Anderson1dc69692006-10-18 02:21:48 +00002741#ifdef YY_USE_PROTOS
2742static void *yy_flex_alloc( yy_size_t size )
2743#else
2744static void *yy_flex_alloc( size )
2745yy_size_t size;
2746#endif
2747 {
2748 return (void *) malloc( size );
2749 }
2750
2751#ifdef YY_USE_PROTOS
2752static inline void *yy_flex_realloc( void *ptr, yy_size_t size )
2753#else
2754static inline void *yy_flex_realloc( ptr, size )
2755void *ptr;
2756yy_size_t size;
2757#endif
2758 {
Reid Spencer68a24bd2005-08-27 18:50:39 +00002759 /* The cast to (char *) in the following accommodates both
2760 * implementations that use char* generic pointers, and those
2761 * that use void* generic pointers. It works with the latter
2762 * because both ANSI C and C++ allow castless assignment from
2763 * any pointer type to void*, and deal with argument conversions
2764 * as though doing an assignment.
2765 */
2766 return (void *) realloc( (char *) ptr, size );
Owen Anderson1dc69692006-10-18 02:21:48 +00002767 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002768
Owen Anderson1dc69692006-10-18 02:21:48 +00002769#ifdef YY_USE_PROTOS
2770static void yy_flex_free( void *ptr )
2771#else
2772static void yy_flex_free( ptr )
2773void *ptr;
2774#endif
2775 {
2776 free( ptr );
2777 }
Reid Spencer68a24bd2005-08-27 18:50:39 +00002778
Owen Anderson1dc69692006-10-18 02:21:48 +00002779#if YY_MAIN
2780int main()
2781 {
2782 yylex();
2783 return 0;
2784 }
2785#endif
Reid Spencer3ed469c2006-11-02 20:25:50 +00002786#line 379 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
Chris Lattner2fecc0f2006-02-15 07:02:59 +00002787