1cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
2cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 3 "i386_lex.c"
3cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
4cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define  YY_INT_ALIGNED short int
5cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
6cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* A lexical scanner generated by flex */
7cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
8cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_create_buffer i386__create_buffer
9cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_delete_buffer i386__delete_buffer
10cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_flex_debug i386__flex_debug
11cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_init_buffer i386__init_buffer
12cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_flush_buffer i386__flush_buffer
13cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_load_buffer_state i386__load_buffer_state
14cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_switch_to_buffer i386__switch_to_buffer
15cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyin i386_in
16cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyleng i386_leng
17cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yylex i386_lex
18cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yylineno i386_lineno
19cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyout i386_out
20cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyrestart i386_restart
21cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yytext i386_text
22cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yywrap i386_wrap
23cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyalloc i386_alloc
24cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyrealloc i386_realloc
25cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyfree i386_free
26cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
27cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define FLEX_SCANNER
28cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_FLEX_MAJOR_VERSION 2
29cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_FLEX_MINOR_VERSION 5
30cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_FLEX_SUBMINOR_VERSION 35
31cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#if YY_FLEX_SUBMINOR_VERSION > 0
32cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define FLEX_BETA
33cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
34cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
35cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* First, we deal with  platform-specific or compiler-specific issues. */
36cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
37cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* begin standard C headers. */
38cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <stdio.h>
39cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <string.h>
40cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <errno.h>
41cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <stdlib.h>
42cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
43cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* end standard C headers. */
44cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
45cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* flex integer type definitions */
46cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
47cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef FLEXINT_H
48cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define FLEXINT_H
49cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
50cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
51cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
52cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
53cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
54cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
55cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * if you want the limit (max/min) macros for int types.
56cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
57cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef __STDC_LIMIT_MACROS
58cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define __STDC_LIMIT_MACROS 1
59cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
60cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
61cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <inttypes.h>
62cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef int8_t flex_int8_t;
63cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef uint8_t flex_uint8_t;
64cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef int16_t flex_int16_t;
65cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef uint16_t flex_uint16_t;
66cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef int32_t flex_int32_t;
67cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef uint32_t flex_uint32_t;
68cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#else
69cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef signed char flex_int8_t;
70cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef short int flex_int16_t;
71cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef int flex_int32_t;
72cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef unsigned char flex_uint8_t;
73cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef unsigned short int flex_uint16_t;
74cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef unsigned int flex_uint32_t;
75cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif /* ! C99 */
76cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
77cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Limits of integral types. */
78cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef INT8_MIN
79cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define INT8_MIN               (-128)
80cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
81cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef INT16_MIN
82cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define INT16_MIN              (-32767-1)
83cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
84cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef INT32_MIN
85cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define INT32_MIN              (-2147483647-1)
86cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
87cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef INT8_MAX
88cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define INT8_MAX               (127)
89cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
90cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef INT16_MAX
91cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define INT16_MAX              (32767)
92cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
93cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef INT32_MAX
94cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define INT32_MAX              (2147483647)
95cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
96cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef UINT8_MAX
97cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define UINT8_MAX              (255U)
98cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
99cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef UINT16_MAX
100cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define UINT16_MAX             (65535U)
101cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
102cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef UINT32_MAX
103cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define UINT32_MAX             (4294967295U)
104cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
105cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
106cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif /* ! FLEXINT_H */
107cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
108cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef __cplusplus
109cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
110cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* The "const" storage-class-modifier is valid. */
111cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_USE_CONST
112cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
113cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#else	/* ! __cplusplus */
114cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
115cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* C99 requires __STDC__ to be defined as 1. */
116cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#if defined (__STDC__)
117cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
118cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_USE_CONST
119cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
120cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif	/* defined (__STDC__) */
121cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif	/* ! __cplusplus */
122cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
123cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef YY_USE_CONST
124cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyconst const
125cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#else
126cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyconst
127cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
128cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
129cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Returned upon end-of-file. */
130cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_NULL 0
131cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
132cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Promotes a possibly negative, possibly signed char to an unsigned
133cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * integer for use as an array index.  If the signed char is negative,
134cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * we want to instead treat it as an 8-bit unsigned char, hence the
135cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * double cast.
136cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
137cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
138cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
139cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Enter a start condition.  This macro really ought to take a parameter,
140cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * but we do it the disgusting crufty way forced on us by the ()-less
141cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * definition of BEGIN.
142cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
143cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define BEGIN (yy_start) = 1 + 2 *
144cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
145cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Translate the current start state into a value that can be later handed
146cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * to BEGIN to return to the state.  The YYSTATE alias is for lex
147cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * compatibility.
148cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
149cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_START (((yy_start) - 1) / 2)
150cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YYSTATE YY_START
151cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
152cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Action number for EOF rule of a given start state. */
153cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
154cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
155cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Special action meaning "start processing a new file". */
156cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_NEW_FILE i386_restart(i386_in  )
157cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
158cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_END_OF_BUFFER_CHAR 0
159cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
160cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Size of default input buffer. */
161cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_BUF_SIZE
162cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_BUF_SIZE 16384
163cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
164cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
165cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* The state buf must be large enough to hold one state per character in the main buffer.
166cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
167cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
168cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
169cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_TYPEDEF_YY_BUFFER_STATE
170cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_TYPEDEF_YY_BUFFER_STATE
171cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef struct yy_buffer_state *YY_BUFFER_STATE;
172cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
173cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
174cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengextern int i386_leng;
175cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
176cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengextern FILE *i386_in, *i386_out;
177cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
178cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define EOB_ACT_CONTINUE_SCAN 0
179cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define EOB_ACT_END_OF_FILE 1
180cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define EOB_ACT_LAST_MATCH 2
181cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
182cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires
183cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     *       access to the local variable yy_act. Since yyless() is a macro, it would break
184cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     *       existing scanners that call yyless() from OUTSIDE i386_lex.
185cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     *       One obvious solution it to make yy_act a global. I tried that, and saw
186cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     *       a 5% performance hit in a non-i386_lineno scanner, because yy_act is
187cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     *       normally declared as a register variable-- so it is not worth it.
188cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     */
189cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    #define  YY_LESS_LINENO(n) \
190cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng            do { \
191cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng                int yyl;\
192cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng                for ( yyl = n; yyl < i386_leng; ++yyl )\
193cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng                    if ( i386_text[yyl] == '\n' )\
194cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng                        --i386_lineno;\
195cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng            }while(0)
196cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
197cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Return all but the first "n" matched characters back to the input stream. */
198cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyless(n) \
199cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	do \
200cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{ \
201cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Undo effects of setting up i386_text. */ \
202cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        int yyless_macro_arg = (n); \
203cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        YY_LESS_LINENO(yyless_macro_arg);\
204cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		*yy_cp = (yy_hold_char); \
205cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_RESTORE_YY_MORE_OFFSET \
206cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
207cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_DO_BEFORE_ACTION; /* set up i386_text again */ \
208cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		} \
209cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	while ( 0 )
210cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
211cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define unput(c) yyunput( c, (yytext_ptr)  )
212cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
213cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_TYPEDEF_YY_SIZE_T
214cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_TYPEDEF_YY_SIZE_T
215cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef size_t yy_size_t;
216cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
217cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
218cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_STRUCT_YY_BUFFER_STATE
219cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_STRUCT_YY_BUFFER_STATE
220cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstruct yy_buffer_state
221cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	{
222cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	FILE *yy_input_file;
223cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
224cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	char *yy_ch_buf;		/* input buffer */
225cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	char *yy_buf_pos;		/* current position in input buffer */
226cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
227cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Size of input buffer in bytes, not including room for EOB
228cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * characters.
229cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
230cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	yy_size_t yy_buf_size;
231cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
232cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Number of characters read into yy_ch_buf, not including EOB
233cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * characters.
234cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
235cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int yy_n_chars;
236cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
237cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Whether we "own" the buffer - i.e., we know we created it,
238cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * and can realloc() it to grow it, and should free() it to
239cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * delete it.
240cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
241cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int yy_is_our_buffer;
242cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
243cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Whether this is an "interactive" input source; if so, and
244cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * if we're using stdio for input, then we want to use getc()
245cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * instead of fread(), to make sure we stop fetching input after
246cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * each newline.
247cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
248cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int yy_is_interactive;
249cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
250cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Whether we're considered to be at the beginning of a line.
251cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * If so, '^' rules will be active on the next match, otherwise
252cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * not.
253cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
254cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int yy_at_bol;
255cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
256cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    int yy_bs_lineno; /**< The line count. */
257cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    int yy_bs_column; /**< The column count. */
258cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
259cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Whether to try to fill the input buffer when we reach the
260cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * end of it.
261cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
262cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int yy_fill_buffer;
263cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
264cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int yy_buffer_status;
265cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
266cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_BUFFER_NEW 0
267cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_BUFFER_NORMAL 1
268cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* When an EOF's been seen but there's still some text to process
269cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
270cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * shouldn't try reading from the input source any more.  We might
271cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * still have a bunch of tokens to match, though, because of
272cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * possible backing-up.
273cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 *
274cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * When we actually see the EOF, we change the status to "new"
275cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * (via i386_restart()), so that the user can continue scanning by
276cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * just pointing i386_in at a new input file.
277cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
278cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_BUFFER_EOF_PENDING 2
279cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
280cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	};
281cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif /* !YY_STRUCT_YY_BUFFER_STATE */
282cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
283cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Stack of input buffers. */
284cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
285cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
286cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
287cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
288cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* We provide macros for accessing buffer states in case in the
289cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * future we want to put the buffer states in a more general
290cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * "scanner state".
291cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
292cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * Returns the top of the stack, or NULL.
293cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
294cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
295cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
296cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng                          : NULL)
297cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
298cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Same as previous macro, but useful when we know that the buffer stack is not
299cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * NULL or when we need an lvalue. For internal use only.
300cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
301cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
302cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
303cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* yy_hold_char holds the character lost when i386_text is formed. */
304cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic char yy_hold_char;
305cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_n_chars;		/* number of characters read into yy_ch_buf */
306cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_leng;
307cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
308cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Points to current character in buffer. */
309cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic char *yy_c_buf_p = (char *) 0;
310cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_init = 0;		/* whether we need to initialize */
311cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_start = 0;	/* start state number */
312cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
313cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Flag which is used to allow i386_wrap()'s to do buffer switches
314cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * instead of setting up a fresh i386_in.  A bit of a hack ...
315cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
316cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_did_buffer_switch_on_eof;
317cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
318cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_restart (FILE *input_file  );
319cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386__switch_to_buffer (YY_BUFFER_STATE new_buffer  );
320cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_BUFFER_STATE i386__create_buffer (FILE *file,int size  );
321cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386__delete_buffer (YY_BUFFER_STATE b  );
322cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386__flush_buffer (YY_BUFFER_STATE b  );
323cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_push_buffer_state (YY_BUFFER_STATE new_buffer  );
324cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_pop_buffer_state (void );
325cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
326cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void i386_ensure_buffer_stack (void );
327cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void i386__load_buffer_state (void );
328cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void i386__init_buffer (YY_BUFFER_STATE b,FILE *file  );
329cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
330cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_FLUSH_BUFFER i386__flush_buffer(YY_CURRENT_BUFFER )
331cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
332cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_BUFFER_STATE i386__scan_buffer (char *base,yy_size_t size  );
333cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_BUFFER_STATE i386__scan_string (yyconst char *yy_str  );
334cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_BUFFER_STATE i386__scan_bytes (yyconst char *bytes,int len  );
335cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
336cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid *i386_alloc (yy_size_t  );
337cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid *i386_realloc (void *,yy_size_t  );
338cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_free (void *  );
339cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
340cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_new_buffer i386__create_buffer
341cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
342cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_set_interactive(is_interactive) \
343cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	{ \
344cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( ! YY_CURRENT_BUFFER ){ \
345cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        i386_ensure_buffer_stack (); \
346cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE =    \
347cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng            i386__create_buffer(i386_in,YY_BUF_SIZE ); \
348cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	} \
349cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
350cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	}
351cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
352cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yy_set_bol(at_bol) \
353cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	{ \
354cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( ! YY_CURRENT_BUFFER ){\
355cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        i386_ensure_buffer_stack (); \
356cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE =    \
357cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng            i386__create_buffer(i386_in,YY_BUF_SIZE ); \
358cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	} \
359cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
360cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	}
361cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
362cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
363cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
364cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Begin user sect3 */
365cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
366cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define i386_wrap(n) 1
367cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_SKIP_YYWRAP
368cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
369cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef unsigned char YY_CHAR;
370cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
371cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengFILE *i386_in = (FILE *) 0, *i386_out = (FILE *) 0;
372cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
373cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengtypedef int yy_state_type;
374cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
375cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengextern int i386_lineno;
376cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
377cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_lineno = 1;
378cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
379cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengextern char *i386_text;
380cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yytext_ptr i386_text
381cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
382cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yy_state_type yy_get_previous_state (void );
383cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yy_state_type yy_try_NUL_trans (yy_state_type current_state  );
384cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_get_next_buffer (void );
385cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void yy_fatal_error (yyconst char msg[]  );
386cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
387cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Done after the current pattern has been matched and before the
388cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * corresponding action - sets up i386_text.
389cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
390cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_DO_BEFORE_ACTION \
391cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yytext_ptr) = yy_bp; \
392cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386_leng = (size_t) (yy_cp - yy_bp); \
393cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_hold_char) = *yy_cp; \
394cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	*yy_cp = '\0'; \
395cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_c_buf_p) = yy_cp;
396cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
397cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_NUM_RULES 21
398cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_END_OF_BUFFER 22
399cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* This struct is not used in this scanner,
400cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   but its presence is necessary. */
401cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstruct yy_trans_info
402cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	{
403cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	flex_int32_t yy_verify;
404cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	flex_int32_t yy_nxt;
405cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	};
406cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yyconst flex_int16_t yy_accept[62] =
407cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    {   0,
408cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        0,    0,    0,    0,   22,   20,   17,   15,   20,    5,
409cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       20,   14,   16,   19,   18,   15,   12,    7,    8,   13,
410cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       11,   11,   19,   14,   16,   17,    6,    0,    0,    0,
411cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        5,    0,    9,   18,   11,   11,    0,    0,    0,    0,
412cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       11,    0,    0,    0,    0,   11,    1,    0,    0,    0,
413cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       11,    0,    0,    0,   11,    2,    3,    0,   10,    4,
414cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        0
415cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    } ;
416cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
417cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yyconst flex_int32_t yy_ec[256] =
418cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    {   0,
419cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
420cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        2,    2,    2,    1,    1,    1,    1,    1,    1,    1,
421cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
422cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    2,    1,    1,    4,    1,    5,    1,    1,    1,
423cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    6,    1,    1,    7,    8,    9,   10,
424cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       10,   10,   10,   10,   10,   10,   10,   11,    1,    1,
425cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,   12,   13,   13,   14,   13,   13,
426cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       13,   13,   15,   13,   13,   16,   13,   17,   13,   13,
427cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       13,   13,   13,   13,   13,   18,   13,   13,   13,   13,
428cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,   13,    1,   19,   13,   13,   13,
429cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
430cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       20,   21,   13,   13,   22,   13,   23,   13,   24,   25,
431cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       26,   27,   13,   28,   29,   13,   30,   13,   13,   31,
432cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       32,   13,   33,    1,   34,    1,    1,    1,    1,    1,
433cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
434cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
435cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
436cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
437cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
438cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
439cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
440cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
441cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
442cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
443cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
444cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
445cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
446cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1
447cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    } ;
448cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
449cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yyconst flex_int32_t yy_meta[35] =
450cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    {   0,
451cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        1,    1,    1,    1,    1,    1,    2,    2,    2,    2,
452cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        3,    2,    2,    2,    2,    2,    2,    2,    2,    2,
453cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
454cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        2,    2,    1,    3
455cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    } ;
456cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
457cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yyconst flex_int16_t yy_base[65] =
458cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    {   0,
459cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        0,   32,   65,    3,  113,  114,    9,   11,   19,    7,
460cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       78,   16,  114,  114,   18,   20,  114,  114,  114,  114,
461cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        0,   94,   76,   23,  114,   25,  114,   90,   80,    0,
462cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       41,   73,  114,   36,    0,   88,   76,   44,   42,   37,
463cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       49,   37,   38,   37,   31,   40,  114,   33,   32,   28,
464cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       37,   16,   14,   12,   17,  114,  114,    5,    0,  114,
465cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng      114,   99,  101,    2
466cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    } ;
467cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
468cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yyconst flex_int16_t yy_def[65] =
469cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    {   0,
470cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       62,   62,   61,    3,   61,   61,   61,   61,   61,   61,
471cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       63,   61,   61,   61,   61,   61,   61,   61,   61,   61,
472cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       64,   64,   63,   61,   61,   61,   61,   61,   61,   61,
473cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       61,   63,   61,   61,   64,   64,   61,   61,   61,   61,
474cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       64,   61,   61,   61,   61,   64,   61,   61,   61,   61,
475cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       64,   61,   61,   61,   64,   61,   61,   61,   64,   61,
476cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        0,   61,   61,   61
477cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    } ;
478cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
479cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yyconst flex_int16_t yy_nxt[149] =
480cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    {   0,
481cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       61,    7,    8,   35,    9,   24,   25,   10,   10,   10,
482cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       26,   26,   26,   26,   31,   31,   31,   26,   26,   34,
483cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       34,   34,   34,   27,   34,   34,   26,   26,   60,   39,
484cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       59,   40,   11,    7,   12,   13,    9,   34,   34,   10,
485cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       10,   10,   28,   58,   57,   29,   56,   30,   31,   31,
486cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       31,   55,   54,   53,   52,   51,   50,   49,   48,   47,
487cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       46,   45,   44,   43,   11,   14,   15,   16,   14,   14,
488cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       17,   14,   18,   19,   14,   20,   21,   21,   21,   22,
489cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       21,   21,   21,   21,   21,   21,   21,   21,   21,   21,
490cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       21,   21,   21,   21,   21,   21,   21,   23,   14,    6,
491cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
492cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        6,    6,   32,   32,   42,   41,   33,   38,   37,   33,
493cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       36,   33,   61,    5,   61,   61,   61,   61,   61,   61,
494cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
495cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
496cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       61,   61,   61,   61,   61,   61,   61,   61
497cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    } ;
498cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
499cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yyconst flex_int16_t yy_chk[149] =
500cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    {   0,
501cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        0,    1,    1,   64,    1,    4,    4,    1,    1,    1,
502cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        7,    7,    8,    8,   10,   10,   10,   12,   12,   15,
503cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       15,   16,   16,    9,   24,   24,   26,   26,   58,   30,
504cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       55,   30,    1,    2,    2,    2,    2,   34,   34,    2,
505cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        2,    2,    9,   54,   53,    9,   52,    9,   31,   31,
506cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       31,   51,   50,   49,   48,   46,   45,   44,   43,   42,
507cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       41,   40,   39,   38,    2,    3,    3,    3,    3,    3,
508cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
509cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
510cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        3,    3,    3,    3,    3,    3,    3,    3,    3,   62,
511cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
512cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       62,   62,   63,   63,   37,   36,   32,   29,   28,   23,
513cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       22,   11,    5,   61,   61,   61,   61,   61,   61,   61,
514cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
515cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
516cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng       61,   61,   61,   61,   61,   61,   61,   61
517cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    } ;
518cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
519cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Table of booleans, true if rule could match eol. */
520cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yyconst flex_int32_t yy_rule_can_match_eol[22] =
521cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    {   0,
522cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0,
523cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    0, 0,     };
524cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
525cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic yy_state_type yy_last_accepting_state;
526cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic char *yy_last_accepting_cpos;
527cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
528cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengextern int i386__flex_debug;
529cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386__flex_debug = 0;
530cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
531cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* The intent behind this definition is that it'll catch
532cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * any uses of REJECT which flex missed.
533cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
534cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define REJECT reject_used_but_not_detected
535cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yymore() yymore_used_but_not_detected
536cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_MORE_ADJ 0
537cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_RESTORE_YY_MORE_OFFSET
538cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengchar *i386_text;
539cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 1 "i386_lex.l"
540cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 2 "i386_lex.l"
541cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Copyright (C) 2004, 2005, 2007, 2008 Red Hat, Inc.
542cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   Written by Ulrich Drepper <drepper@redhat.com>, 2004.
543cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
544cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   Red Hat elfutils is free software; you can redistribute it and/or modify
545cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   it under the terms of the GNU General Public License as published by the
546cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   Free Software Foundation; version 2 of the License.
547cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
548cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   Red Hat elfutils is distributed in the hope that it will be useful, but
549cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   WITHOUT ANY WARRANTY; without even the implied warranty of
550cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
551cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   General Public License for more details.
552cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
553cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   You should have received a copy of the GNU General Public License along
554cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   with Red Hat elfutils; if not, write to the Free Software Foundation,
555cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
556cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
557cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   Red Hat elfutils is an included package of the Open Invention Network.
558cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   An included package of the Open Invention Network is a package for which
559cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   Open Invention Network licensees cross-license their patents.  No patent
560cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   license is granted, either expressly or impliedly, by designation as an
561cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   included package.  Should you wish to participate in the Open Invention
562cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   Network licensing program, please visit www.openinventionnetwork.com
563cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   <http://www.openinventionnetwork.com>.  */
564cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
565cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef HAVE_CONFIG_H
566cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng# include <config.h>
567cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
568cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
569cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <ctype.h>
570cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <error.h>
571cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <libintl.h>
572cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
573cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <system.h>
574cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include "i386_parse.h"
575cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
576cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
577cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void eat_to_eol (void);
578cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void invalid_char (int ch);
579cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
580cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 581 "i386_lex.c"
581cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
582cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define INITIAL 0
583cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define MAIN 1
584cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
585cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_NO_UNISTD_H
586cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Special case for "unistd.h", since it is non-ANSI. We include it way
587cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * down here because we want the user's section 1 to have been scanned first.
588cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * The user has a chance to override it with an option.
589cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
590cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#include <unistd.h>
591cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
592cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
593cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_EXTRA_TYPE
594cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_EXTRA_TYPE void *
595cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
596cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
597cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_init_globals (void );
598cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
599cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Accessor methods to globals.
600cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng   These are made visible to non-reentrant scanners for convenience. */
601cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
602cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_lex_destroy (void );
603cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
604cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_get_debug (void );
605cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
606cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_set_debug (int debug_flag  );
607cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
608cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_EXTRA_TYPE i386_get_extra (void );
609cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
610cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_set_extra (YY_EXTRA_TYPE user_defined  );
611cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
612cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengFILE *i386_get_in (void );
613cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
614cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_set_in  (FILE * in_str  );
615cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
616cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengFILE *i386_get_out (void );
617cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
618cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_set_out  (FILE * out_str  );
619cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
620cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_get_leng (void );
621cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
622cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengchar *i386_get_text (void );
623cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
624cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_get_lineno (void );
625cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
626cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_set_lineno (int line_number  );
627cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
628cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Macros after this point can all be overridden by user definitions in
629cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * section 1.
630cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
631cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
632cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_SKIP_YYWRAP
633cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef __cplusplus
634cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengextern "C" int i386_wrap (void );
635cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#else
636cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengextern int i386_wrap (void );
637cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
638cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
639cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
640cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    static void yyunput (int c,char *buf_ptr  );
641cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
642cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef yytext_ptr
643cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void yy_flex_strncpy (char *,yyconst char *,int );
644cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
645cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
646cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef YY_NEED_STRLEN
647cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_flex_strlen (yyconst char * );
648cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
649cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
650cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_NO_INPUT
651cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
652cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef __cplusplus
653cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yyinput (void );
654cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#else
655cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int input (void );
656cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
657cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
658cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
659cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
660cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Amount of stuff to slurp up with each read. */
661cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_READ_BUF_SIZE
662cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_READ_BUF_SIZE 8192
663cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
664cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
665cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Copy whatever the last rule matched to the standard output. */
666cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef ECHO
667cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* This used to be an fputs(), but since the string might contain NUL's,
668cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * we now use fwrite().
669cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
670cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define ECHO fwrite( i386_text, i386_leng, 1, i386_out )
671cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
672cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
673cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
674cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * is returned in "result".
675cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
676cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_INPUT
677cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_INPUT(buf,result,max_size) \
678cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
679cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{ \
680cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		int c = '*'; \
681cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		unsigned n; \
682cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		for ( n = 0; n < max_size && \
683cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			     (c = getc( i386_in )) != EOF && c != '\n'; ++n ) \
684cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			buf[n] = (char) c; \
685cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( c == '\n' ) \
686cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			buf[n++] = (char) c; \
687cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( c == EOF && ferror( i386_in ) ) \
688cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_FATAL_ERROR( "input in flex scanner failed" ); \
689cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		result = n; \
690cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		} \
691cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	else \
692cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{ \
693cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		errno=0; \
694cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		while ( (result = fread(buf, 1, max_size, i386_in))==0 && ferror(i386_in)) \
695cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{ \
696cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			if( errno != EINTR) \
697cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				{ \
698cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				YY_FATAL_ERROR( "input in flex scanner failed" ); \
699cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				break; \
700cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				} \
701cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			errno=0; \
702cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			clearerr(i386_in); \
703cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			} \
704cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}\
705cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng\
706cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
707cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
708cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
709cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* No semi-colon after return; correct usage is to write "yyterminate();" -
710cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * we don't want an extra ';' after the "return" because that will cause
711cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * some compilers to complain about unreachable statements.
712cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
713cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef yyterminate
714cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyterminate() return YY_NULL
715cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
716cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
717cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Number of entries by which start-condition stack grows. */
718cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_START_STACK_INCR
719cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_START_STACK_INCR 25
720cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
721cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
722cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Report a fatal error. */
723cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_FATAL_ERROR
724cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
725cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
726cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
727cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* end tables serialization structures and prototypes */
728cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
729cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Default declaration of generated scanner - a define so the user can
730cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * easily add parameters.
731cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
732cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_DECL
733cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_DECL_IS_OURS 1
734cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
735cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengextern int i386_lex (void);
736cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
737cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_DECL int i386_lex (void)
738cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif /* !YY_DECL */
739cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
740cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Code executed at the beginning of each rule, after i386_text and i386_leng
741cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * have been set up.
742cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
743cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_USER_ACTION
744cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_USER_ACTION
745cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
746cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
747cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Code executed at the end of each rule. */
748cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_BREAK
749cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_BREAK break;
750cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
751cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
752cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_RULE_SETUP \
753cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( i386_leng > 0 ) \
754cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
755cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				(i386_text[i386_leng - 1] == '\n'); \
756cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_USER_ACTION
757cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
758cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** The main scanner function which does all the work.
759cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
760cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_DECL
761cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
762cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register yy_state_type yy_current_state;
763cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register char *yy_cp, *yy_bp;
764cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register int yy_act;
765cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
766cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 54 "i386_lex.l"
767cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
768cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
769cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 770 "i386_lex.c"
770cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
771cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( !(yy_init) )
772cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
773cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_init) = 1;
774cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
775cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef YY_USER_INIT
776cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_USER_INIT;
777cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
778cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
779cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( ! (yy_start) )
780cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			(yy_start) = 1;	/* first start state */
781cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
782cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( ! i386_in )
783cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			i386_in = stdin;
784cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
785cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( ! i386_out )
786cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			i386_out = stdout;
787cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
788cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( ! YY_CURRENT_BUFFER ) {
789cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			i386_ensure_buffer_stack ();
790cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_CURRENT_BUFFER_LVALUE =
791cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				i386__create_buffer(i386_in,YY_BUF_SIZE );
792cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
793cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
794cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		i386__load_buffer_state( );
795cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
796cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
797cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	while ( 1 )		/* loops until end-of-file is reached */
798cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
799cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_cp = (yy_c_buf_p);
800cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
801cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Support of i386_text. */
802cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		*yy_cp = (yy_hold_char);
803cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
804cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* yy_bp points to the position in yy_ch_buf of the start of
805cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * the current run.
806cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 */
807cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_bp = yy_cp;
808cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
809cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_current_state = (yy_start);
810cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_current_state += YY_AT_BOL();
811cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengyy_match:
812cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		do
813cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
814cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
815cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			if ( yy_accept[yy_current_state] )
816cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				{
817cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				(yy_last_accepting_state) = yy_current_state;
818cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				(yy_last_accepting_cpos) = yy_cp;
819cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				}
820cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
821cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				{
822cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_current_state = (int) yy_def[yy_current_state];
823cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				if ( yy_current_state >= 62 )
824cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					yy_c = yy_meta[(unsigned int) yy_c];
825cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				}
826cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
827cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			++yy_cp;
828cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
829cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		while ( yy_current_state != 61 );
830cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_cp = (yy_last_accepting_cpos);
831cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_current_state = (yy_last_accepting_state);
832cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
833cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengyy_find_action:
834cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_act = yy_accept[yy_current_state];
835cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
836cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_DO_BEFORE_ACTION;
837cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
838cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )
839cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
840cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			int yyl;
841cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			for ( yyl = 0; yyl < i386_leng; ++yyl )
842cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				if ( i386_text[yyl] == '\n' )
843cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
844cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    i386_lineno++;
845cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng;
846cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
847cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
848cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengdo_action:	/* This label is used only to access EOF actions. */
849cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
850cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		switch ( yy_act )
851cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	{ /* beginning of action switch */
852cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			case 0: /* must back up */
853cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			/* undo the effects of YY_DO_BEFORE_ACTION */
854cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			*yy_cp = (yy_hold_char);
855cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			yy_cp = (yy_last_accepting_cpos);
856cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			yy_current_state = (yy_last_accepting_state);
857cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			goto yy_find_action;
858cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
859cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 1:
860cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
861cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 56 "i386_lex.l"
862cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return kMASK; }
863cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
864cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 2:
865cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
866cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 58 "i386_lex.l"
867cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return kPREFIX; }
868cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
869cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 3:
870cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
871cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 59 "i386_lex.l"
872cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return kSUFFIX; }
873cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
874cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 4:
875cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
876cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 61 "i386_lex.l"
877cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return kSYNONYM; }
878cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
879cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 5:
880cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
881cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 63 "i386_lex.l"
882cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ i386_lval.num = strtoul (i386_text, NULL, 10);
883cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				  return kNUMBER; }
884cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
885cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 6:
886cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
887cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 66 "i386_lex.l"
888cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ BEGIN (MAIN); return kPERCPERC; }
889cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
890cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 7:
891cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
892cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 69 "i386_lex.l"
893cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return '0'; }
894cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
895cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 8:
896cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
897cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 70 "i386_lex.l"
898cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return '1'; }
899cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
900cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 9:
901cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
902cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 72 "i386_lex.l"
903cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ i386_lval.str = xstrndup (i386_text + 1,
904cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng							    i386_leng - 2);
905cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				  return kBITFIELD; }
906cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
907cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 10:
908cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
909cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 76 "i386_lex.l"
910cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ i386_lval.str = (void *) -1l;
911cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				  return kID; }
912cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
913cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 11:
914cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
915cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 79 "i386_lex.l"
916cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ i386_lval.str = xstrndup (i386_text, i386_leng);
917cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				  return kID; }
918cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
919cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 12:
920cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
921cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 82 "i386_lex.l"
922cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return ','; }
923cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
924cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 13:
925cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
926cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 84 "i386_lex.l"
927cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return ':'; }
928cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
929cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 14:
930cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* rule 14 can match eol */
931cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
932cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 86 "i386_lex.l"
933cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ /* IGNORE */ }
934cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
935cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 15:
936cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* rule 15 can match eol */
937cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
938cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 88 "i386_lex.l"
939cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return '\n'; }
940cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
941cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 16:
942cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
943cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 90 "i386_lex.l"
944cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ eat_to_eol (); }
945cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
946cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 17:
947cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* rule 17 can match eol */
948cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
949cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 92 "i386_lex.l"
950cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ /* IGNORE */ }
951cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
952cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 18:
953cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* rule 18 can match eol */
954cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
955cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 94 "i386_lex.l"
956cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ return kSPACE; }
957cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
958cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 19:
959cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
960cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 96 "i386_lex.l"
961cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ i386_lval.ch = *i386_text; return kCHAR; }
962cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
963cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 20:
964cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
965cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 98 "i386_lex.l"
966cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{ invalid_char (*i386_text); }
967cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
968cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase 21:
969cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_RULE_SETUP
970cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 101 "i386_lex.l"
971cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengECHO;
972cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BREAK
973cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 974 "i386_lex.c"
974cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase YY_STATE_EOF(INITIAL):
975cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengcase YY_STATE_EOF(MAIN):
976cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	yyterminate();
977cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
978cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	case YY_END_OF_BUFFER:
979cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
980cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Amount of text matched not including the EOB char. */
981cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
982cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
983cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Undo the effects of YY_DO_BEFORE_ACTION. */
984cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		*yy_cp = (yy_hold_char);
985cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_RESTORE_YY_MORE_OFFSET
986cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
987cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
988cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
989cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			/* We're scanning a new file or input source.  It's
990cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * possible that this happened because the user
991cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * just pointed i386_in at a new source and called
992cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * i386_lex().  If so, then we have to assure
993cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * consistency between YY_CURRENT_BUFFER and our
994cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * globals.  Here is the right place to do so, because
995cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * this is the first action (other than possibly a
996cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * back-up) that will match for the new input source.
997cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 */
998cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
999cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_CURRENT_BUFFER_LVALUE->yy_input_file = i386_in;
1000cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
1001cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1002cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1003cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Note that here we test for yy_c_buf_p "<=" to the position
1004cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * of the first EOB in the buffer, since yy_c_buf_p will
1005cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * already have been incremented past the NUL character
1006cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * (since all states make transitions on EOB to the
1007cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * end-of-buffer state).  Contrast this with the test
1008cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * in input().
1009cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 */
1010cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
1011cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{ /* This was really a NUL. */
1012cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			yy_state_type yy_next_state;
1013cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1014cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			(yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
1015cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1016cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			yy_current_state = yy_get_previous_state(  );
1017cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1018cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			/* Okay, we're now positioned to make the NUL
1019cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * transition.  We couldn't have
1020cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * yy_get_previous_state() go ahead and do it
1021cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * for us because it doesn't know how to deal
1022cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * with the possibility of jamming (and we don't
1023cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * want to build jamming into it because then it
1024cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * will run more slowly).
1025cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 */
1026cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1027cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			yy_next_state = yy_try_NUL_trans( yy_current_state );
1028cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1029cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			yy_bp = (yytext_ptr) + YY_MORE_ADJ;
1030cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1031cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			if ( yy_next_state )
1032cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				{
1033cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				/* Consume the NUL. */
1034cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_cp = ++(yy_c_buf_p);
1035cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_current_state = yy_next_state;
1036cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				goto yy_match;
1037cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				}
1038cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1039cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			else
1040cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				{
1041cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_cp = (yy_last_accepting_cpos);
1042cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_current_state = (yy_last_accepting_state);
1043cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				goto yy_find_action;
1044cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				}
1045cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1046cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1047cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		else switch ( yy_get_next_buffer(  ) )
1048cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
1049cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			case EOB_ACT_END_OF_FILE:
1050cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				{
1051cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				(yy_did_buffer_switch_on_eof) = 0;
1052cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1053cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				if ( i386_wrap( ) )
1054cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					{
1055cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					/* Note: because we've taken care in
1056cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * yy_get_next_buffer() to have set up
1057cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * i386_text, we can now set up
1058cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * yy_c_buf_p so that if some total
1059cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * hoser (like flex itself) wants to
1060cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * call the scanner after we return the
1061cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * YY_NULL, it'll still work - another
1062cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * YY_NULL will get returned.
1063cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 */
1064cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					(yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
1065cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1066cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					yy_act = YY_STATE_EOF(YY_START);
1067cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					goto do_action;
1068cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					}
1069cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1070cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				else
1071cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					{
1072cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					if ( ! (yy_did_buffer_switch_on_eof) )
1073cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng						YY_NEW_FILE;
1074cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					}
1075cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				break;
1076cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				}
1077cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1078cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			case EOB_ACT_CONTINUE_SCAN:
1079cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				(yy_c_buf_p) =
1080cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					(yytext_ptr) + yy_amount_of_matched_text;
1081cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1082cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_current_state = yy_get_previous_state(  );
1083cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1084cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_cp = (yy_c_buf_p);
1085cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
1086cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				goto yy_match;
1087cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1088cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			case EOB_ACT_LAST_MATCH:
1089cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				(yy_c_buf_p) =
1090cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
1091cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1092cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_current_state = yy_get_previous_state(  );
1093cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1094cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_cp = (yy_c_buf_p);
1095cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
1096cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				goto yy_find_action;
1097cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1098cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		break;
1099cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1100cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1101cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	default:
1102cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_FATAL_ERROR(
1103cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			"fatal flex scanner internal error--no action found" );
1104cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	} /* end of action switch */
1105cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		} /* end of scanning one token */
1106cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng} /* end of i386_lex */
1107cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1108cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* yy_get_next_buffer - try to read in a new buffer
1109cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1110cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * Returns a code representing an action:
1111cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *	EOB_ACT_LAST_MATCH -
1112cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *	EOB_ACT_CONTINUE_SCAN - continue scanning from current position
1113cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *	EOB_ACT_END_OF_FILE - end of file
1114cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1115cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_get_next_buffer (void)
1116cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1117cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    	register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
1118cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register char *source = (yytext_ptr);
1119cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register int number_to_move, i;
1120cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int ret_val;
1121cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1122cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
1123cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_FATAL_ERROR(
1124cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		"fatal flex scanner internal error--end of buffer missed" );
1125cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1126cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
1127cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{ /* Don't try to fill the buffer, so this is an EOF. */
1128cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
1129cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
1130cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			/* We matched a single character, the EOB, so
1131cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * treat this as a final EOF.
1132cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 */
1133cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			return EOB_ACT_END_OF_FILE;
1134cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1135cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1136cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		else
1137cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
1138cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			/* We matched some text prior to the EOB, first
1139cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 * process it.
1140cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			 */
1141cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			return EOB_ACT_LAST_MATCH;
1142cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1143cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1144cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1145cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Try to read more data. */
1146cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1147cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* First move last chars to start of buffer. */
1148cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
1149cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1150cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	for ( i = 0; i < number_to_move; ++i )
1151cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		*(dest++) = *(source++);
1152cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1153cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
1154cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* don't do the read, it's not guaranteed to return an EOF,
1155cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * just force an EOF
1156cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 */
1157cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
1158cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1159cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	else
1160cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
1161cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			int num_to_read =
1162cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
1163cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1164cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		while ( num_to_read <= 0 )
1165cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{ /* Not enough room in the buffer - grow it. */
1166cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1167cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			/* just a shorter name for the current buffer */
1168cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
1169cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1170cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			int yy_c_buf_p_offset =
1171cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				(int) ((yy_c_buf_p) - b->yy_ch_buf);
1172cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1173cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			if ( b->yy_is_our_buffer )
1174cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				{
1175cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				int new_size = b->yy_buf_size * 2;
1176cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1177cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				if ( new_size <= 0 )
1178cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					b->yy_buf_size += b->yy_buf_size / 8;
1179cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				else
1180cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					b->yy_buf_size *= 2;
1181cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1182cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				b->yy_ch_buf = (char *)
1183cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					/* Include room in for 2 EOB chars. */
1184cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					i386_realloc((void *) b->yy_ch_buf,b->yy_buf_size + 2  );
1185cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				}
1186cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			else
1187cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				/* Can't grow it, we don't own it. */
1188cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				b->yy_ch_buf = 0;
1189cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1190cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			if ( ! b->yy_ch_buf )
1191cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				YY_FATAL_ERROR(
1192cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				"fatal error - scanner input buffer overflow" );
1193cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1194cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			(yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
1195cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1196cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
1197cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng						number_to_move - 1;
1198cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1199cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1200cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1201cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( num_to_read > YY_READ_BUF_SIZE )
1202cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			num_to_read = YY_READ_BUF_SIZE;
1203cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1204cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Read in more data. */
1205cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
1206cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			(yy_n_chars), (size_t) num_to_read );
1207cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1208cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
1209cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1210cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1211cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( (yy_n_chars) == 0 )
1212cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
1213cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( number_to_move == YY_MORE_ADJ )
1214cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
1215cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			ret_val = EOB_ACT_END_OF_FILE;
1216cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			i386_restart(i386_in  );
1217cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1218cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1219cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		else
1220cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
1221cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			ret_val = EOB_ACT_LAST_MATCH;
1222cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
1223cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				YY_BUFFER_EOF_PENDING;
1224cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1225cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1226cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1227cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	else
1228cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		ret_val = EOB_ACT_CONTINUE_SCAN;
1229cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1230cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
1231cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Extend the array by 50%, plus the number we really need. */
1232cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
1233cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) i386_realloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size  );
1234cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
1235cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
1236cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	}
1237cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1238cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_n_chars) += number_to_move;
1239cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
1240cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
1241cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1242cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
1243cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1244cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return ret_val;
1245cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1246cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1247cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* yy_get_previous_state - get the state just before the EOB char was reached */
1248cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1249cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    static yy_state_type yy_get_previous_state (void)
1250cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1251cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register yy_state_type yy_current_state;
1252cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register char *yy_cp;
1253cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1254cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	yy_current_state = (yy_start);
1255cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	yy_current_state += YY_AT_BOL();
1256cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1257cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
1258cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
1259cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
1260cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( yy_accept[yy_current_state] )
1261cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
1262cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			(yy_last_accepting_state) = yy_current_state;
1263cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			(yy_last_accepting_cpos) = yy_cp;
1264cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1265cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1266cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{
1267cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			yy_current_state = (int) yy_def[yy_current_state];
1268cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			if ( yy_current_state >= 62 )
1269cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				yy_c = yy_meta[(unsigned int) yy_c];
1270cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1271cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1272cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1273cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1274cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return yy_current_state;
1275cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1276cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1277cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* yy_try_NUL_trans - try to make a transition on the NUL character
1278cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1279cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * synopsis
1280cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *	next_state = yy_try_NUL_trans( current_state );
1281cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1282cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state )
1283cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1284cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register int yy_is_jam;
1285cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    	register char *yy_cp = (yy_c_buf_p);
1286cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1287cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register YY_CHAR yy_c = 1;
1288cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( yy_accept[yy_current_state] )
1289cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
1290cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_last_accepting_state) = yy_current_state;
1291cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_last_accepting_cpos) = yy_cp;
1292cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1293cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1294cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
1295cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_current_state = (int) yy_def[yy_current_state];
1296cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( yy_current_state >= 62 )
1297cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			yy_c = yy_meta[(unsigned int) yy_c];
1298cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1299cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1300cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	yy_is_jam = (yy_current_state == 61);
1301cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1302cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return yy_is_jam ? 0 : yy_current_state;
1303cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1304cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1305cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    static void yyunput (int c, register char * yy_bp )
1306cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1307cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register char *yy_cp;
1308cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1309cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    yy_cp = (yy_c_buf_p);
1310cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1311cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* undo effects of setting up i386_text */
1312cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	*yy_cp = (yy_hold_char);
1313cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1314cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
1315cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{ /* need to shift things up to make room */
1316cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* +2 for EOB chars. */
1317cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		register int number_to_move = (yy_n_chars) + 2;
1318cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
1319cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
1320cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		register char *source =
1321cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
1322cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1323cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
1324cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			*--dest = *--source;
1325cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1326cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_cp += (int) (dest - source);
1327cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		yy_bp += (int) (dest - source);
1328cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
1329cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
1330cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1331cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
1332cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_FATAL_ERROR( "flex scanner push-back overflow" );
1333cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1334cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1335cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	*--yy_cp = (char) c;
1336cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1337cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    if ( c == '\n' ){
1338cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        --i386_lineno;
1339cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    }
1340cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1341cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yytext_ptr) = yy_bp;
1342cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_hold_char) = *yy_cp;
1343cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_c_buf_p) = yy_cp;
1344cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1345cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1346cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_NO_INPUT
1347cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef __cplusplus
1348cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    static int yyinput (void)
1349cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#else
1350cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    static int input  (void)
1351cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
1352cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1353cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1354cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int c;
1355cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1356cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	*(yy_c_buf_p) = (yy_hold_char);
1357cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1358cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
1359cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
1360cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* yy_c_buf_p now points to the character we want to return.
1361cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * If this occurs *before* the EOB characters, then it's a
1362cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * valid NUL; if not, then we've hit the end of the buffer.
1363cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 */
1364cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
1365cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			/* This was really a NUL. */
1366cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			*(yy_c_buf_p) = '\0';
1367cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1368cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		else
1369cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			{ /* need more input */
1370cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			int offset = (yy_c_buf_p) - (yytext_ptr);
1371cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			++(yy_c_buf_p);
1372cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1373cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			switch ( yy_get_next_buffer(  ) )
1374cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				{
1375cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				case EOB_ACT_LAST_MATCH:
1376cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					/* This happens because yy_g_n_b()
1377cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * sees that we've accumulated a
1378cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * token and flags that we need to
1379cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * try matching the token before
1380cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * proceeding.  But for input(),
1381cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * there's no matching to consider.
1382cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * So convert the EOB_ACT_LAST_MATCH
1383cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 * to EOB_ACT_END_OF_FILE.
1384cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					 */
1385cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1386cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					/* Reset buffer status. */
1387cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					i386_restart(i386_in );
1388cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1389cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					/*FALLTHROUGH*/
1390cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1391cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				case EOB_ACT_END_OF_FILE:
1392cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					{
1393cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					if ( i386_wrap( ) )
1394cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng						return EOF;
1395cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1396cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					if ( ! (yy_did_buffer_switch_on_eof) )
1397cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng						YY_NEW_FILE;
1398cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef __cplusplus
1399cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					return yyinput();
1400cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#else
1401cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					return input();
1402cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
1403cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					}
1404cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1405cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				case EOB_ACT_CONTINUE_SCAN:
1406cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					(yy_c_buf_p) = (yytext_ptr) + offset;
1407cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng					break;
1408cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng				}
1409cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			}
1410cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1411cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1412cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	c = *(unsigned char *) (yy_c_buf_p);	/* cast for 8-bit char's */
1413cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	*(yy_c_buf_p) = '\0';	/* preserve i386_text */
1414cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_hold_char) = *++(yy_c_buf_p);
1415cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1416cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
1417cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( YY_CURRENT_BUFFER_LVALUE->yy_at_bol )
1418cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1419cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    i386_lineno++;
1420cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng;
1421cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1422cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return c;
1423cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1424cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif	/* ifndef YY_NO_INPUT */
1425cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1426cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Immediately switch to a different input stream.
1427cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param input_file A readable stream.
1428cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1429cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @note This function does not reset the start condition to @c INITIAL .
1430cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1431cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    void i386_restart  (FILE * input_file )
1432cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1433cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1434cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( ! YY_CURRENT_BUFFER ){
1435cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        i386_ensure_buffer_stack ();
1436cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE =
1437cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng            i386__create_buffer(i386_in,YY_BUF_SIZE );
1438cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	}
1439cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1440cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386__init_buffer(YY_CURRENT_BUFFER,input_file );
1441cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386__load_buffer_state( );
1442cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1443cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1444cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Switch to a different input buffer.
1445cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param new_buffer The new input buffer.
1446cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1447cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1448cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    void i386__switch_to_buffer  (YY_BUFFER_STATE  new_buffer )
1449cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1450cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1451cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* TODO. We should be able to replace this entire function body
1452cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * with
1453cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 *		i386_pop_buffer_state();
1454cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 *		i386_push_buffer_state(new_buffer);
1455cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     */
1456cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386_ensure_buffer_stack ();
1457cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( YY_CURRENT_BUFFER == new_buffer )
1458cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		return;
1459cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1460cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( YY_CURRENT_BUFFER )
1461cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
1462cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Flush out information for old buffer. */
1463cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		*(yy_c_buf_p) = (yy_hold_char);
1464cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
1465cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
1466cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1467cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1468cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_CURRENT_BUFFER_LVALUE = new_buffer;
1469cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386__load_buffer_state( );
1470cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1471cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* We don't actually know whether we did this switch during
1472cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * EOF (i386_wrap()) processing, but the only time this flag
1473cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * is looked at is after i386_wrap() is called, so it's safe
1474cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * to go ahead and always set it.
1475cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
1476cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_did_buffer_switch_on_eof) = 1;
1477cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1478cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1479cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void i386__load_buffer_state  (void)
1480cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1481cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    	(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
1482cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
1483cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386_in = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
1484cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_hold_char) = *(yy_c_buf_p);
1485cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1486cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1487cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Allocate and initialize an input buffer state.
1488cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param file A readable stream.
1489cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
1490cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1491cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @return the allocated buffer state.
1492cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1493cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    YY_BUFFER_STATE i386__create_buffer  (FILE * file, int  size )
1494cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1495cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BUFFER_STATE b;
1496cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1497cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b = (YY_BUFFER_STATE) i386_alloc(sizeof( struct yy_buffer_state )  );
1498cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( ! b )
1499cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_FATAL_ERROR( "out of dynamic memory in i386__create_buffer()" );
1500cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1501cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_buf_size = size;
1502cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1503cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* yy_ch_buf has to be 2 characters longer than the size given because
1504cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * we need to put in 2 end-of-buffer characters.
1505cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
1506cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_ch_buf = (char *) i386_alloc(b->yy_buf_size + 2  );
1507cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( ! b->yy_ch_buf )
1508cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_FATAL_ERROR( "out of dynamic memory in i386__create_buffer()" );
1509cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1510cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_is_our_buffer = 1;
1511cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1512cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386__init_buffer(b,file );
1513cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1514cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return b;
1515cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1516cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1517cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Destroy the buffer.
1518cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param b a buffer created with i386__create_buffer()
1519cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1520cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1521cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    void i386__delete_buffer (YY_BUFFER_STATE  b )
1522cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1523cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1524cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( ! b )
1525cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		return;
1526cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1527cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
1528cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
1529cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1530cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( b->yy_is_our_buffer )
1531cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		i386_free((void *) b->yy_ch_buf  );
1532cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1533cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386_free((void *) b  );
1534cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1535cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1536cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Initializes or reinitializes a buffer.
1537cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * This function is sometimes called more than once on the same buffer,
1538cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * such as during a i386_restart() or at EOF.
1539cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1540cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    static void i386__init_buffer  (YY_BUFFER_STATE  b, FILE * file )
1541cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1542cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1543cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int oerrno = errno;
1544cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1545cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386__flush_buffer(b );
1546cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1547cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_input_file = file;
1548cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_fill_buffer = 1;
1549cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1550cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    /* If b is the current buffer, then i386__init_buffer was _probably_
1551cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     * called from i386_restart() or through yy_get_next_buffer.
1552cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     * In that case, we don't want to reset the lineno or column.
1553cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     */
1554cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    if (b != YY_CURRENT_BUFFER){
1555cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        b->yy_bs_lineno = 1;
1556cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        b->yy_bs_column = 0;
1557cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    }
1558cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1559cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        b->yy_is_interactive = 0;
1560cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1561cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	errno = oerrno;
1562cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1563cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1564cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Discard all buffered characters. On the next scan, YY_INPUT will be called.
1565cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
1566cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1567cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1568cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    void i386__flush_buffer (YY_BUFFER_STATE  b )
1569cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1570cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    	if ( ! b )
1571cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		return;
1572cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1573cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_n_chars = 0;
1574cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1575cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* We always need two end-of-buffer characters.  The first causes
1576cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * a transition to the end-of-buffer state.  The second causes
1577cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * a jam in that state.
1578cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
1579cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
1580cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
1581cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1582cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_buf_pos = &b->yy_ch_buf[0];
1583cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1584cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_at_bol = 1;
1585cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_buffer_status = YY_BUFFER_NEW;
1586cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1587cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( b == YY_CURRENT_BUFFER )
1588cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		i386__load_buffer_state( );
1589cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1590cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1591cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Pushes the new state onto the stack. The new state becomes
1592cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *  the current state. This function will allocate the stack
1593cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *  if necessary.
1594cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *  @param new_buffer The new state.
1595cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1596cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1597cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_push_buffer_state (YY_BUFFER_STATE new_buffer )
1598cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1599cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    	if (new_buffer == NULL)
1600cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		return;
1601cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1602cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386_ensure_buffer_stack();
1603cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1604cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* This block is copied from i386__switch_to_buffer. */
1605cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( YY_CURRENT_BUFFER )
1606cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{
1607cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Flush out information for old buffer. */
1608cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		*(yy_c_buf_p) = (yy_hold_char);
1609cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
1610cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
1611cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		}
1612cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1613cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Only push if top exists. Otherwise, replace top. */
1614cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if (YY_CURRENT_BUFFER)
1615cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_buffer_stack_top)++;
1616cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_CURRENT_BUFFER_LVALUE = new_buffer;
1617cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1618cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* copied from i386__switch_to_buffer. */
1619cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386__load_buffer_state( );
1620cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_did_buffer_switch_on_eof) = 1;
1621cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1622cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1623cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Removes and deletes the top of the stack, if present.
1624cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *  The next element becomes the new top.
1625cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1626cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1627cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_pop_buffer_state (void)
1628cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1629cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    	if (!YY_CURRENT_BUFFER)
1630cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		return;
1631cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1632cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386__delete_buffer(YY_CURRENT_BUFFER );
1633cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_CURRENT_BUFFER_LVALUE = NULL;
1634cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ((yy_buffer_stack_top) > 0)
1635cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		--(yy_buffer_stack_top);
1636cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1637cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if (YY_CURRENT_BUFFER) {
1638cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		i386__load_buffer_state( );
1639cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_did_buffer_switch_on_eof) = 1;
1640cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	}
1641cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1642cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1643cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Allocates the stack if it does not exist.
1644cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *  Guarantees space for at least one push.
1645cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1646cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void i386_ensure_buffer_stack (void)
1647cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1648cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int num_to_alloc;
1649cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1650cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if (!(yy_buffer_stack)) {
1651cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1652cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* First allocation is just for 2 elements, since we don't know if this
1653cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * scanner will even need a stack. We use 2 instead of 1 to avoid an
1654cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		 * immediate realloc on the next call.
1655cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng         */
1656cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		num_to_alloc = 1;
1657cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_buffer_stack) = (struct yy_buffer_state**)i386_alloc
1658cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng								(num_to_alloc * sizeof(struct yy_buffer_state*)
1659cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng								);
1660cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( ! (yy_buffer_stack) )
1661cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_FATAL_ERROR( "out of dynamic memory in i386_ensure_buffer_stack()" );
1662cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1663cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
1664cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1665cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_buffer_stack_max) = num_to_alloc;
1666cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_buffer_stack_top) = 0;
1667cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		return;
1668cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	}
1669cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1670cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
1671cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1672cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Increase the buffer to prepare for a possible push. */
1673cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		int grow_size = 8 /* arbitrary grow size */;
1674cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1675cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		num_to_alloc = (yy_buffer_stack_max) + grow_size;
1676cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_buffer_stack) = (struct yy_buffer_state**)i386_realloc
1677cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng								((yy_buffer_stack),
1678cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng								num_to_alloc * sizeof(struct yy_buffer_state*)
1679cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng								);
1680cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		if ( ! (yy_buffer_stack) )
1681cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng			YY_FATAL_ERROR( "out of dynamic memory in i386_ensure_buffer_stack()" );
1682cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1683cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* zero only the new slots.*/
1684cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
1685cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_buffer_stack_max) = num_to_alloc;
1686cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	}
1687cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1688cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1689cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Setup the input buffer state to scan directly from a user-specified character buffer.
1690cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param base the character buffer
1691cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param size the size in bytes of the character buffer
1692cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1693cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @return the newly allocated buffer state object.
1694cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1695cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_BUFFER_STATE i386__scan_buffer  (char * base, yy_size_t  size )
1696cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1697cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BUFFER_STATE b;
1698cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1699cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( size < 2 ||
1700cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	     base[size-2] != YY_END_OF_BUFFER_CHAR ||
1701cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	     base[size-1] != YY_END_OF_BUFFER_CHAR )
1702cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* They forgot to leave room for the EOB's. */
1703cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		return 0;
1704cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1705cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b = (YY_BUFFER_STATE) i386_alloc(sizeof( struct yy_buffer_state )  );
1706cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( ! b )
1707cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_FATAL_ERROR( "out of dynamic memory in i386__scan_buffer()" );
1708cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1709cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_buf_size = size - 2;	/* "- 2" to take care of EOB's */
1710cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_buf_pos = b->yy_ch_buf = base;
1711cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_is_our_buffer = 0;
1712cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_input_file = 0;
1713cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_n_chars = b->yy_buf_size;
1714cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_is_interactive = 0;
1715cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_at_bol = 1;
1716cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_fill_buffer = 0;
1717cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_buffer_status = YY_BUFFER_NEW;
1718cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1719cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386__switch_to_buffer(b  );
1720cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1721cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return b;
1722cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1723cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1724cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Setup the input buffer state to scan a string. The next call to i386_lex() will
1725cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * scan from a @e copy of @a str.
1726cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param yystr a NUL-terminated string to scan
1727cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1728cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @return the newly allocated buffer state object.
1729cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @note If you want to scan bytes that may contain NUL values, then use
1730cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *       i386__scan_bytes() instead.
1731cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1732cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_BUFFER_STATE i386__scan_string (yyconst char * yystr )
1733cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1734cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1735cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return i386__scan_bytes(yystr,strlen(yystr) );
1736cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1737cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1738cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Setup the input buffer state to scan the given bytes. The next call to i386_lex() will
1739cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * scan from a @e copy of @a bytes.
1740cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param bytes the byte buffer to scan
1741cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param len the number of bytes in the buffer pointed to by @a bytes.
1742cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1743cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @return the newly allocated buffer state object.
1744cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1745cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengYY_BUFFER_STATE i386__scan_bytes  (yyconst char * yybytes, int  _yybytes_len )
1746cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1747cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	YY_BUFFER_STATE b;
1748cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	char *buf;
1749cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	yy_size_t n;
1750cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	int i;
1751cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1752cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Get memory for full buffer, including space for trailing EOB's. */
1753cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	n = _yybytes_len + 2;
1754cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	buf = (char *) i386_alloc(n  );
1755cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( ! buf )
1756cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_FATAL_ERROR( "out of dynamic memory in i386__scan_bytes()" );
1757cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1758cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	for ( i = 0; i < _yybytes_len; ++i )
1759cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		buf[i] = yybytes[i];
1760cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1761cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
1762cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1763cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b = i386__scan_buffer(buf,n );
1764cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	if ( ! b )
1765cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_FATAL_ERROR( "bad buffer in i386__scan_bytes()" );
1766cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1767cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* It's okay to grow etc. this buffer, and we should throw it
1768cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * away when we're done.
1769cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
1770cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	b->yy_is_our_buffer = 1;
1771cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1772cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return b;
1773cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1774cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1775cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef YY_EXIT_FAILURE
1776cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YY_EXIT_FAILURE 2
1777cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
1778cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1779cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void yy_fatal_error (yyconst char* msg )
1780cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1781cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    	(void) fprintf( stderr, "%s\n", msg );
1782cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	exit( YY_EXIT_FAILURE );
1783cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1784cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1785cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Redefine yyless() so it works in section 3 code. */
1786cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1787cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#undef yyless
1788cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define yyless(n) \
1789cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	do \
1790cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		{ \
1791cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		/* Undo effects of setting up i386_text. */ \
1792cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        int yyless_macro_arg = (n); \
1793cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        YY_LESS_LINENO(yyless_macro_arg);\
1794cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		i386_text[i386_leng] = (yy_hold_char); \
1795cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_c_buf_p) = i386_text + yyless_macro_arg; \
1796cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		(yy_hold_char) = *(yy_c_buf_p); \
1797cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		*(yy_c_buf_p) = '\0'; \
1798cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		i386_leng = yyless_macro_arg; \
1799cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		} \
1800cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	while ( 0 )
1801cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1802cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Accessor  methods (get/set functions) to struct members. */
1803cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1804cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Get the current line number.
1805cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1806cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1807cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_get_lineno  (void)
1808cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1809cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1810cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    return i386_lineno;
1811cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1812cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1813cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Get the input stream.
1814cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1815cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1816cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengFILE *i386_get_in  (void)
1817cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1818cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        return i386_in;
1819cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1820cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1821cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Get the output stream.
1822cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1823cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1824cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben ChengFILE *i386_get_out  (void)
1825cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1826cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        return i386_out;
1827cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1828cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1829cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Get the length of the current token.
1830cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1831cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1832cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_get_leng  (void)
1833cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1834cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        return i386_leng;
1835cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1836cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1837cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Get the current token.
1838cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1839cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1840cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1841cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengchar *i386_get_text  (void)
1842cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1843cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        return i386_text;
1844cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1845cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1846cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Set the current line number.
1847cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param line_number
1848cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1849cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1850cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_set_lineno (int  line_number )
1851cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1852cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1853cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    i386_lineno = line_number;
1854cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1855cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1856cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/** Set the input stream. This does not discard the current
1857cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * input buffer.
1858cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @param in_str A readable stream.
1859cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng *
1860cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * @see i386__switch_to_buffer
1861cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1862cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_set_in (FILE *  in_str )
1863cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1864cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        i386_in = in_str ;
1865cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1866cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1867cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_set_out (FILE *  out_str )
1868cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1869cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        i386_out = out_str ;
1870cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1871cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1872cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_get_debug  (void)
1873cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1874cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        return i386__flex_debug;
1875cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1876cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1877cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_set_debug (int  bdebug )
1878cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1879cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        i386__flex_debug = bdebug ;
1880cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1881cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1882cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_init_globals (void)
1883cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1884cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng        /* Initialization is the same as for the non-reentrant scanner.
1885cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     * This function is called from i386_lex_destroy(), so don't allocate here.
1886cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     */
1887cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1888cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    /* We do not touch i386_lineno unless the option is enabled. */
1889cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    i386_lineno =  1;
1890cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1891cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    (yy_buffer_stack) = 0;
1892cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    (yy_buffer_stack_top) = 0;
1893cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    (yy_buffer_stack_max) = 0;
1894cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    (yy_c_buf_p) = (char *) 0;
1895cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    (yy_init) = 0;
1896cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    (yy_start) = 0;
1897cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1898cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* Defined in main.c */
1899cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef YY_STDINIT
1900cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    i386_in = stdin;
1901cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    i386_out = stdout;
1902cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#else
1903cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    i386_in = (FILE *) 0;
1904cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    i386_out = (FILE *) 0;
1905cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
1906cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1907cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    /* For future reference: Set errno on error, since we are called by
1908cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     * i386_lex_init()
1909cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     */
1910cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    return 0;
1911cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1912cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1913cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/* i386_lex_destroy is for both reentrant and non-reentrant scanners. */
1914cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengint i386_lex_destroy  (void)
1915cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1916cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1917cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    /* Pop the buffer stack, destroying each element. */
1918cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	while(YY_CURRENT_BUFFER){
1919cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		i386__delete_buffer(YY_CURRENT_BUFFER  );
1920cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		YY_CURRENT_BUFFER_LVALUE = NULL;
1921cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		i386_pop_buffer_state();
1922cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	}
1923cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1924cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* Destroy the stack itself. */
1925cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	i386_free((yy_buffer_stack) );
1926cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	(yy_buffer_stack) = NULL;
1927cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1928cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    /* Reset the globals. This is important in a non-reentrant scanner so the next time
1929cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng     * i386_lex() is called, initialization will occur. */
1930cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    yy_init_globals( );
1931cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1932cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    return 0;
1933cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1934cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1935cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng/*
1936cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng * Internal utility routines.
1937cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng */
1938cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1939cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifndef yytext_ptr
1940cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
1941cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1942cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register int i;
1943cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	for ( i = 0; i < n; ++i )
1944cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		s1[i] = s2[i];
1945cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1946cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
1947cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1948cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#ifdef YY_NEED_STRLEN
1949cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic int yy_flex_strlen (yyconst char * s )
1950cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1951cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	register int n;
1952cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	for ( n = 0; s[n]; ++n )
1953cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		;
1954cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1955cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return n;
1956cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1957cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#endif
1958cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1959cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid *i386_alloc (yy_size_t  size )
1960cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1961cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return (void *) malloc( size );
1962cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1963cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1964cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid *i386_realloc  (void * ptr, yy_size_t  size )
1965cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1966cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	/* The cast to (char *) in the following accommodates both
1967cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * implementations that use char* generic pointers, and those
1968cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * that use void* generic pointers.  It works with the latter
1969cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * because both ANSI C and C++ allow castless assignment from
1970cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * any pointer type to void*, and deal with argument conversions
1971cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 * as though doing an assignment.
1972cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 */
1973cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	return (void *) realloc( (char *) ptr, size );
1974cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1975cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1976cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengvoid i386_free (void * ptr )
1977cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1978cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	free( (char *) ptr );	/* see i386_realloc() for (char *) cast */
1979cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1980cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1981cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#define YYTABLES_NAME "yytables"
1982cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1983cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng#line 101 "i386_lex.l"
1984cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1985cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1986cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1987cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void
1988cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengeat_to_eol (void)
1989cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
1990cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng  while (1)
1991cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    {
1992cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng      int c = input ();
1993cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1994cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng      if (c == EOF || c == '\n')
1995cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	break;
1996cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng    }
1997cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
1998cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
1999cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chengstatic void
2000cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Chenginvalid_char (int ch)
2001cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng{
2002cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng  error (0, 0, (isascii (ch)
2003cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		? gettext ("invalid character '%c' at line %d; ignored")
2004cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng		: gettext ("invalid character '\\%o' at line %d; ignored")),
2005cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng	 ch, i386_lineno);
2006cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng}
2007cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
2008cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng// Local Variables:
2009cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng// mode: C
2010cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng// End:
2011cc6695e2684ce93cdf8bd2da63d55d2cf49ff076Ben Cheng
2012