yosys-master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
verilog_lexer.cc File Reference
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <stdlib.h>
#include "kernel/log.h"
#include "verilog_frontend.h"
#include "frontends/ast/ast.h"
#include "verilog_parser.tab.h"
#include <unistd.h>
+ Include dependency graph for verilog_lexer.cc:

Go to the source code of this file.

Data Structures

struct  yy_buffer_state
 
struct  yy_trans_info
 

Namespaces

 VERILOG_FRONTEND
 

Macros

#define YY_INT_ALIGNED   short int
 
#define yy_create_buffer   frontend_verilog_yy_create_buffer
 
#define yy_delete_buffer   frontend_verilog_yy_delete_buffer
 
#define yy_flex_debug   frontend_verilog_yy_flex_debug
 
#define yy_init_buffer   frontend_verilog_yy_init_buffer
 
#define yy_flush_buffer   frontend_verilog_yy_flush_buffer
 
#define yy_load_buffer_state   frontend_verilog_yy_load_buffer_state
 
#define yy_switch_to_buffer   frontend_verilog_yy_switch_to_buffer
 
#define yyin   frontend_verilog_yyin
 
#define yyleng   frontend_verilog_yyleng
 
#define yylex   frontend_verilog_yylex
 
#define yylineno   frontend_verilog_yylineno
 
#define yyout   frontend_verilog_yyout
 
#define yyrestart   frontend_verilog_yyrestart
 
#define yytext   frontend_verilog_yytext
 
#define yywrap   frontend_verilog_yywrap
 
#define yyalloc   frontend_verilog_yyalloc
 
#define yyrealloc   frontend_verilog_yyrealloc
 
#define yyfree   frontend_verilog_yyfree
 
#define FLEX_SCANNER
 
#define YY_FLEX_MAJOR_VERSION   2
 
#define YY_FLEX_MINOR_VERSION   5
 
#define YY_FLEX_SUBMINOR_VERSION   35
 
#define FLEX_BETA
 
#define FLEXINT_H
 
#define INT8_MIN   (-128)
 
#define INT16_MIN   (-32767-1)
 
#define INT32_MIN   (-2147483647-1)
 
#define INT8_MAX   (127)
 
#define INT16_MAX   (32767)
 
#define INT32_MAX   (2147483647)
 
#define UINT8_MAX   (255U)
 
#define UINT16_MAX   (65535U)
 
#define UINT32_MAX   (4294967295U)
 
#define yyconst
 
#define YY_NULL   0
 
#define YY_SC_TO_UI(c)   ((unsigned int) (unsigned char) c)
 
#define BEGIN   (yy_start) = 1 + 2 *
 
#define YY_START   (((yy_start) - 1) / 2)
 
#define YYSTATE   YY_START
 
#define YY_STATE_EOF(state)   (YY_END_OF_BUFFER + state + 1)
 
#define YY_NEW_FILE   frontend_verilog_yyrestart(frontend_verilog_yyin )
 
#define YY_END_OF_BUFFER_CHAR   0
 
#define YY_BUF_SIZE   16384
 
#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
 
#define YY_TYPEDEF_YY_BUFFER_STATE
 
#define EOB_ACT_CONTINUE_SCAN   0
 
#define EOB_ACT_END_OF_FILE   1
 
#define EOB_ACT_LAST_MATCH   2
 
#define YY_LESS_LINENO(n)
 
#define yyless(n)
 
#define unput(c)   yyunput( c, (yytext_ptr) )
 
#define YY_TYPEDEF_YY_SIZE_T
 
#define YY_STRUCT_YY_BUFFER_STATE
 
#define YY_BUFFER_NEW   0
 
#define YY_BUFFER_NORMAL   1
 
#define YY_BUFFER_EOF_PENDING   2
 
#define YY_CURRENT_BUFFER
 
#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]
 
#define YY_FLUSH_BUFFER   frontend_verilog_yy_flush_buffer(YY_CURRENT_BUFFER )
 
#define yy_new_buffer   frontend_verilog_yy_create_buffer
 
#define yy_set_interactive(is_interactive)
 
#define yy_set_bol(at_bol)
 
#define YY_AT_BOL()   (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
 
#define frontend_verilog_yywrap(n)   1
 
#define YY_SKIP_YYWRAP
 
#define yytext_ptr   frontend_verilog_yytext
 
#define YY_DO_BEFORE_ACTION
 
#define YY_NUM_RULES   115
 
#define YY_END_OF_BUFFER   116
 
#define REJECT   reject_used_but_not_detected
 
#define yymore()   ((yy_more_flag) = 1)
 
#define YY_MORE_ADJ   (yy_more_len)
 
#define YY_RESTORE_YY_MORE_OFFSET
 
#define SV_KEYWORD(_tok)
 
#define YY_INPUT(buf, result, max_size)   result = readsome(*VERILOG_FRONTEND::lexin, buf, max_size)
 
#define INITIAL   0
 
#define COMMENT   1
 
#define STRING   2
 
#define SYNOPSYS_TRANSLATE_OFF   3
 
#define SYNOPSYS_FLAGS   4
 
#define IMPORT_DPI   5
 
#define YY_EXTRA_TYPE   void *
 
#define YY_READ_BUF_SIZE   8192
 
#define ECHO   do { if (fwrite( frontend_verilog_yytext, frontend_verilog_yyleng, 1, frontend_verilog_yyout )) {} } while (0)
 
#define yyterminate()   return YY_NULL
 
#define YY_START_STACK_INCR   25
 
#define YY_FATAL_ERROR(msg)   yy_fatal_error( msg )
 
#define YY_DECL_IS_OURS   1
 
#define YY_DECL   int frontend_verilog_yylex (void)
 
#define YY_USER_ACTION
 
#define YY_BREAK   break;
 
#define YY_RULE_SETUP   YY_USER_ACTION
 
#define YY_EXIT_FAILURE   2
 
#define yyless(n)
 
#define YYTABLES_NAME   "yytables"
 

Typedefs

typedef signed char flex_int8_t
 
typedef short int flex_int16_t
 
typedef int flex_int32_t
 
typedef unsigned char flex_uint8_t
 
typedef unsigned short int flex_uint16_t
 
typedef unsigned int flex_uint32_t
 
typedef struct yy_buffer_stateYY_BUFFER_STATE
 
typedef size_t yy_size_t
 
typedef unsigned char YY_CHAR
 
typedef int yy_state_type
 

Functions

void frontend_verilog_yyrestart (FILE *input_file)
 
void frontend_verilog_yy_switch_to_buffer (YY_BUFFER_STATE new_buffer)
 
YY_BUFFER_STATE frontend_verilog_yy_create_buffer (FILE *file, int size)
 
void frontend_verilog_yy_delete_buffer (YY_BUFFER_STATE b)
 
void frontend_verilog_yy_flush_buffer (YY_BUFFER_STATE b)
 
void frontend_verilog_yypush_buffer_state (YY_BUFFER_STATE new_buffer)
 
void frontend_verilog_yypop_buffer_state (void)
 
static void frontend_verilog_yyensure_buffer_stack (void)
 
static void frontend_verilog_yy_load_buffer_state (void)
 
static void frontend_verilog_yy_init_buffer (YY_BUFFER_STATE b, FILE *file)
 
YY_BUFFER_STATE frontend_verilog_yy_scan_buffer (char *base, yy_size_t size)
 
YY_BUFFER_STATE frontend_verilog_yy_scan_string (yyconst char *yy_str)
 
YY_BUFFER_STATE frontend_verilog_yy_scan_bytes (yyconst char *bytes, int len)
 
void * frontend_verilog_yyalloc (yy_size_t)
 
void * frontend_verilog_yyrealloc (void *, yy_size_t)
 
void frontend_verilog_yyfree (void *)
 
static yy_state_type yy_get_previous_state (void)
 
static yy_state_type yy_try_NUL_trans (yy_state_type current_state)
 
static int yy_get_next_buffer (void)
 
static void yy_fatal_error (yyconst char msg[])
 
static int yy_init_globals (void)
 
int frontend_verilog_yylex_destroy (void)
 
int frontend_verilog_yyget_debug (void)
 
void frontend_verilog_yyset_debug (int debug_flag)
 
YY_EXTRA_TYPE frontend_verilog_yyget_extra (void)
 
void frontend_verilog_yyset_extra (YY_EXTRA_TYPE user_defined)
 
FILE * frontend_verilog_yyget_in (void)
 
void frontend_verilog_yyset_in (FILE *in_str)
 
FILE * frontend_verilog_yyget_out (void)
 
void frontend_verilog_yyset_out (FILE *out_str)
 
int frontend_verilog_yyget_leng (void)
 
char * frontend_verilog_yyget_text (void)
 
int frontend_verilog_yyget_lineno (void)
 
void frontend_verilog_yyset_lineno (int line_number)
 
static int input (void)
 
int frontend_verilog_yylex (void)
 
 if (!(yy_init))
 
 while (1)
 
int isatty (int)
 
static void yy_fatal_error (yyconst char *msg)
 
void * frontend_verilog_avoid_input_warnings ()
 

Variables

int frontend_verilog_yyleng
 
FILE * frontend_verilog_yyin = (FILE *) 0
 
FILE * frontend_verilog_yyout = (FILE *) 0
 
static size_t yy_buffer_stack_top = 0
 
static size_t yy_buffer_stack_max = 0
 
static YY_BUFFER_STATEyy_buffer_stack = 0
 
static char yy_hold_char
 
static int yy_n_chars
 
static char * yy_c_buf_p = (char *) 0
 
static int yy_init = 0
 
static int yy_start = 0
 
static int yy_did_buffer_switch_on_eof
 
int frontend_verilog_yylineno = 1
 
char * frontend_verilog_yytext
 
static yyconst flex_int16_t yy_accept [569]
 
static yyconst flex_int32_t yy_ec [256]
 
static yyconst flex_int32_t yy_meta [67]
 
static yyconst flex_int16_t yy_base [592]
 
static yyconst flex_int16_t yy_def [592]
 
static yyconst flex_int16_t yy_nxt [1121]
 
static yyconst flex_int16_t yy_chk [1121]
 
static yyconst flex_int32_t yy_rule_can_match_eol [116]
 
static yy_state_type yy_last_accepting_state
 
static char * yy_last_accepting_cpos
 
int frontend_verilog_yy_flex_debug = 0
 
static int yy_more_flag = 0
 
static int yy_more_len = 0
 
std::vector< std::string > VERILOG_FRONTEND::fn_stack
 
std::vector< int > VERILOG_FRONTEND::ln_stack
 
 YY_DECL
 
register char * yy_cp
 
register char * yy_bp
 
register int yy_act
 

Macro Definition Documentation

#define BEGIN   (yy_start) = 1 + 2 *

Definition at line 145 of file verilog_lexer.cc.

#define COMMENT   1

Definition at line 1022 of file verilog_lexer.cc.

#define ECHO   do { if (fwrite( frontend_verilog_yytext, frontend_verilog_yyleng, 1, frontend_verilog_yyout )) {} } while (0)

Definition at line 1116 of file verilog_lexer.cc.

#define EOB_ACT_CONTINUE_SCAN   0

Definition at line 188 of file verilog_lexer.cc.

#define EOB_ACT_END_OF_FILE   1

Definition at line 189 of file verilog_lexer.cc.

#define EOB_ACT_LAST_MATCH   2

Definition at line 190 of file verilog_lexer.cc.

#define FLEX_BETA

Definition at line 33 of file verilog_lexer.cc.

#define FLEX_SCANNER

Definition at line 28 of file verilog_lexer.cc.

#define FLEXINT_H

Definition at line 49 of file verilog_lexer.cc.

#define frontend_verilog_yywrap (   n)    1

Definition at line 376 of file verilog_lexer.cc.

#define IMPORT_DPI   5

Definition at line 1026 of file verilog_lexer.cc.

#define INITIAL   0

Definition at line 1021 of file verilog_lexer.cc.

#define INT16_MAX   (32767)

Definition at line 91 of file verilog_lexer.cc.

#define INT16_MIN   (-32767-1)

Definition at line 82 of file verilog_lexer.cc.

#define INT32_MAX   (2147483647)

Definition at line 94 of file verilog_lexer.cc.

#define INT32_MIN   (-2147483647-1)

Definition at line 85 of file verilog_lexer.cc.

#define INT8_MAX   (127)

Definition at line 88 of file verilog_lexer.cc.

#define INT8_MIN   (-128)

Definition at line 79 of file verilog_lexer.cc.

#define REJECT   reject_used_but_not_detected

Definition at line 939 of file verilog_lexer.cc.

#define STRING   2

Definition at line 1023 of file verilog_lexer.cc.

#define SV_KEYWORD (   _tok)
Value:
if (sv_mode) return _tok; \
log("Lexer warning: The SystemVerilog keyword `%s' (at %s:%d) is not "\
"recognized unless read_verilog is called with -sv!\n", frontend_verilog_yytext, \
frontend_verilog_yylval.string = new std::string(std::string("\\") + frontend_verilog_yytext); \
return TOK_ID;
char * frontend_verilog_yytext
YYSTYPE frontend_verilog_yylval
std::string current_filename
Definition: ast.cc:49
void log(const char *format,...)
Definition: log.cc:180
int frontend_verilog_yyget_lineno(void)

Definition at line 1003 of file verilog_lexer.cc.

#define SYNOPSYS_FLAGS   4

Definition at line 1025 of file verilog_lexer.cc.

#define SYNOPSYS_TRANSLATE_OFF   3

Definition at line 1024 of file verilog_lexer.cc.

#define UINT16_MAX   (65535U)

Definition at line 100 of file verilog_lexer.cc.

#define UINT32_MAX   (4294967295U)

Definition at line 103 of file verilog_lexer.cc.

#define UINT8_MAX   (255U)

Definition at line 97 of file verilog_lexer.cc.

#define unput (   c)    yyunput( c, (yytext_ptr) )

Definition at line 221 of file verilog_lexer.cc.

#define YY_AT_BOL ( )    (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)

Definition at line 372 of file verilog_lexer.cc.

#define YY_BREAK   break;

Definition at line 1195 of file verilog_lexer.cc.

#define YY_BUF_SIZE   16384

Definition at line 171 of file verilog_lexer.cc.

#define YY_BUFFER_EOF_PENDING   2

Definition at line 288 of file verilog_lexer.cc.

#define YY_BUFFER_NEW   0

Definition at line 276 of file verilog_lexer.cc.

#define YY_BUFFER_NORMAL   1

Definition at line 277 of file verilog_lexer.cc.

#define yy_create_buffer   frontend_verilog_yy_create_buffer

Definition at line 9 of file verilog_lexer.cc.

#define YY_CURRENT_BUFFER
Value:
: NULL)
static YY_BUFFER_STATE * yy_buffer_stack
static size_t yy_buffer_stack_top
#define NULL

Definition at line 304 of file verilog_lexer.cc.

#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]

Definition at line 311 of file verilog_lexer.cc.

#define YY_DECL   int frontend_verilog_yylex (void)

Definition at line 1183 of file verilog_lexer.cc.

#define YY_DECL_IS_OURS   1

Definition at line 1179 of file verilog_lexer.cc.

#define yy_delete_buffer   frontend_verilog_yy_delete_buffer

Definition at line 10 of file verilog_lexer.cc.

#define YY_DO_BEFORE_ACTION
Value:
*yy_cp = '\0'; \
static char * yy_c_buf_p
int frontend_verilog_yyleng
register char * yy_bp
static char yy_hold_char
#define yytext_ptr
static int yy_more_len
register char * yy_cp

Definition at line 400 of file verilog_lexer.cc.

#define YY_END_OF_BUFFER   116

Definition at line 409 of file verilog_lexer.cc.

#define YY_END_OF_BUFFER_CHAR   0

Definition at line 160 of file verilog_lexer.cc.

#define YY_EXIT_FAILURE   2

Definition at line 2774 of file verilog_lexer.cc.

#define YY_EXTRA_TYPE   void *

Definition at line 1037 of file verilog_lexer.cc.

#define YY_FATAL_ERROR (   msg)    yy_fatal_error( msg )

Definition at line 1170 of file verilog_lexer.cc.

#define yy_flex_debug   frontend_verilog_yy_flex_debug

Definition at line 11 of file verilog_lexer.cc.

#define YY_FLEX_MAJOR_VERSION   2

Definition at line 29 of file verilog_lexer.cc.

#define YY_FLEX_MINOR_VERSION   5

Definition at line 30 of file verilog_lexer.cc.

#define YY_FLEX_SUBMINOR_VERSION   35

Definition at line 31 of file verilog_lexer.cc.

#define yy_flush_buffer   frontend_verilog_yy_flush_buffer

Definition at line 13 of file verilog_lexer.cc.

#define YY_FLUSH_BUFFER   frontend_verilog_yy_flush_buffer(YY_CURRENT_BUFFER )

Definition at line 340 of file verilog_lexer.cc.

#define yy_init_buffer   frontend_verilog_yy_init_buffer

Definition at line 12 of file verilog_lexer.cc.

#define YY_INPUT (   buf,
  result,
  max_size 
)    result = readsome(*VERILOG_FRONTEND::lexin, buf, max_size)

Definition at line 1011 of file verilog_lexer.cc.

#define YY_INT_ALIGNED   short int

Definition at line 5 of file verilog_lexer.cc.

#define YY_LESS_LINENO (   n)
Value:
do { \
int yyl;\
for ( yyl = n; yyl < frontend_verilog_yyleng; ++yyl )\
if ( frontend_verilog_yytext[yyl] == '\n' )\
}while(0)
char * frontend_verilog_yytext
int frontend_verilog_yyleng
int frontend_verilog_yylineno
tuple n
Definition: fsm/generate.py:59

Definition at line 199 of file verilog_lexer.cc.

#define yy_load_buffer_state   frontend_verilog_yy_load_buffer_state

Definition at line 14 of file verilog_lexer.cc.

#define YY_MORE_ADJ   (yy_more_len)

Definition at line 943 of file verilog_lexer.cc.

#define yy_new_buffer   frontend_verilog_yy_create_buffer

Definition at line 350 of file verilog_lexer.cc.

Definition at line 158 of file verilog_lexer.cc.

#define YY_NULL   0

Definition at line 132 of file verilog_lexer.cc.

#define YY_NUM_RULES   115

Definition at line 408 of file verilog_lexer.cc.

#define YY_READ_BUF_SIZE   8192

Definition at line 1107 of file verilog_lexer.cc.

#define YY_RESTORE_YY_MORE_OFFSET

Definition at line 944 of file verilog_lexer.cc.

#define YY_RULE_SETUP   YY_USER_ACTION

Definition at line 1198 of file verilog_lexer.cc.

#define YY_SC_TO_UI (   c)    ((unsigned int) (unsigned char) c)

Definition at line 139 of file verilog_lexer.cc.

#define yy_set_bol (   at_bol)
Value:
{ \
} \
YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
}
#define YY_CURRENT_BUFFER
FILE * frontend_verilog_yyin
#define YY_BUF_SIZE
if(!(yy_init))
static void frontend_verilog_yyensure_buffer_stack(void)
YY_BUFFER_STATE frontend_verilog_yy_create_buffer(FILE *file, int size)
#define YY_CURRENT_BUFFER_LVALUE

Definition at line 362 of file verilog_lexer.cc.

#define yy_set_interactive (   is_interactive)
Value:
{ \
} \
YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
}
#define YY_CURRENT_BUFFER
FILE * frontend_verilog_yyin
#define YY_BUF_SIZE
if(!(yy_init))
static void frontend_verilog_yyensure_buffer_stack(void)
YY_BUFFER_STATE frontend_verilog_yy_create_buffer(FILE *file, int size)
#define YY_CURRENT_BUFFER_LVALUE

Definition at line 352 of file verilog_lexer.cc.

#define YY_SKIP_YYWRAP

Definition at line 377 of file verilog_lexer.cc.

#define YY_START   (((yy_start) - 1) / 2)

Definition at line 151 of file verilog_lexer.cc.

#define YY_START_STACK_INCR   25

Definition at line 1165 of file verilog_lexer.cc.

#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))

Definition at line 177 of file verilog_lexer.cc.

#define YY_STATE_EOF (   state)    (YY_END_OF_BUFFER + state + 1)

Definition at line 155 of file verilog_lexer.cc.

#define YY_STRUCT_YY_BUFFER_STATE

Definition at line 229 of file verilog_lexer.cc.

#define yy_switch_to_buffer   frontend_verilog_yy_switch_to_buffer

Definition at line 15 of file verilog_lexer.cc.

#define YY_TYPEDEF_YY_BUFFER_STATE

Definition at line 180 of file verilog_lexer.cc.

#define YY_TYPEDEF_YY_SIZE_T

Definition at line 224 of file verilog_lexer.cc.

#define YY_USER_ACTION

Definition at line 1190 of file verilog_lexer.cc.

Definition at line 24 of file verilog_lexer.cc.

#define yyconst

Definition at line 128 of file verilog_lexer.cc.

#define yyfree   frontend_verilog_yyfree

Definition at line 26 of file verilog_lexer.cc.

#define yyin   frontend_verilog_yyin

Definition at line 16 of file verilog_lexer.cc.

#define yyleng   frontend_verilog_yyleng

Definition at line 17 of file verilog_lexer.cc.

#define yyless (   n)
Value:
do \
{ \
/* Undo effects of setting up frontend_verilog_yytext. */ \
int yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
YY_DO_BEFORE_ACTION; /* set up frontend_verilog_yytext again */ \
} \
while ( 0 )
static char * yy_c_buf_p
#define YY_RESTORE_YY_MORE_OFFSET
#define YY_MORE_ADJ
while(1)
register char * yy_bp
tuple n
Definition: fsm/generate.py:59
static char yy_hold_char
#define YY_DO_BEFORE_ACTION
#define YY_LESS_LINENO(n)
register char * yy_cp

Definition at line 2786 of file verilog_lexer.cc.

#define yyless (   n)
Value:
do \
{ \
/* Undo effects of setting up frontend_verilog_yytext. */ \
int yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
(yy_c_buf_p) = frontend_verilog_yytext + yyless_macro_arg; \
*(yy_c_buf_p) = '\0'; \
frontend_verilog_yyleng = yyless_macro_arg; \
} \
while ( 0 )
char * frontend_verilog_yytext
static char * yy_c_buf_p
int frontend_verilog_yyleng
while(1)
tuple n
Definition: fsm/generate.py:59
static char yy_hold_char
#define YY_LESS_LINENO(n)

Definition at line 2786 of file verilog_lexer.cc.

#define yylex   frontend_verilog_yylex

Definition at line 18 of file verilog_lexer.cc.

#define yylineno   frontend_verilog_yylineno

Definition at line 19 of file verilog_lexer.cc.

#define yymore ( )    ((yy_more_flag) = 1)

Definition at line 942 of file verilog_lexer.cc.

#define yyout   frontend_verilog_yyout

Definition at line 20 of file verilog_lexer.cc.

#define yyrealloc   frontend_verilog_yyrealloc

Definition at line 25 of file verilog_lexer.cc.

#define yyrestart   frontend_verilog_yyrestart

Definition at line 21 of file verilog_lexer.cc.

#define YYSTATE   YY_START

Definition at line 152 of file verilog_lexer.cc.

#define YYTABLES_NAME   "yytables"

Definition at line 2979 of file verilog_lexer.cc.

#define yyterminate ( )    return YY_NULL

Definition at line 1160 of file verilog_lexer.cc.

#define yytext   frontend_verilog_yytext

Definition at line 22 of file verilog_lexer.cc.

#define yytext_ptr   frontend_verilog_yytext

Definition at line 390 of file verilog_lexer.cc.

#define yywrap   frontend_verilog_yywrap

Definition at line 23 of file verilog_lexer.cc.

Typedef Documentation

typedef short int flex_int16_t

Definition at line 71 of file verilog_lexer.cc.

typedef int flex_int32_t

Definition at line 72 of file verilog_lexer.cc.

typedef signed char flex_int8_t

Definition at line 70 of file verilog_lexer.cc.

typedef unsigned short int flex_uint16_t

Definition at line 74 of file verilog_lexer.cc.

typedef unsigned int flex_uint32_t

Definition at line 75 of file verilog_lexer.cc.

typedef unsigned char flex_uint8_t

Definition at line 73 of file verilog_lexer.cc.

Definition at line 181 of file verilog_lexer.cc.

typedef unsigned char YY_CHAR

Definition at line 379 of file verilog_lexer.cc.

typedef size_t yy_size_t

Definition at line 225 of file verilog_lexer.cc.

typedef int yy_state_type

Definition at line 383 of file verilog_lexer.cc.

Function Documentation

void* frontend_verilog_avoid_input_warnings ( )

Definition at line 2986 of file verilog_lexer.cc.

2986  {
2987  return (void*)&yyinput;
2988 }
YY_BUFFER_STATE frontend_verilog_yy_create_buffer ( FILE *  file,
int  size 
)

Allocate and initialize an input buffer state.

Parameters
fileA readable stream.
sizeThe character buffer size in bytes. When in doubt, use YY_BUF_SIZE.
Returns
the allocated buffer state.

Definition at line 2487 of file verilog_lexer.cc.

2488 {
2489  YY_BUFFER_STATE b;
2490 
2491  b = (YY_BUFFER_STATE) frontend_verilog_yyalloc(sizeof( struct yy_buffer_state ) );
2492  if ( ! b )
2493  YY_FATAL_ERROR( "out of dynamic memory in frontend_verilog_yy_create_buffer()" );
2494 
2495  b->yy_buf_size = size;
2496 
2497  /* yy_ch_buf has to be 2 characters longer than the size given because
2498  * we need to put in 2 end-of-buffer characters.
2499  */
2500  b->yy_ch_buf = (char *) frontend_verilog_yyalloc(b->yy_buf_size + 2 );
2501  if ( ! b->yy_ch_buf )
2502  YY_FATAL_ERROR( "out of dynamic memory in frontend_verilog_yy_create_buffer()" );
2503 
2504  b->yy_is_our_buffer = 1;
2505 
2507 
2508  return b;
2509 }
yy_size_t yy_buf_size
Definition: ilang_lexer.cc:240
void * frontend_verilog_yyalloc(yy_size_t)
static void frontend_verilog_yy_init_buffer(YY_BUFFER_STATE b, FILE *file)
struct yy_buffer_state * YY_BUFFER_STATE
#define YY_FATAL_ERROR(msg)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void frontend_verilog_yy_delete_buffer ( YY_BUFFER_STATE  b)

Destroy the buffer.

Parameters
ba buffer created with frontend_verilog_yy_create_buffer()

Definition at line 2515 of file verilog_lexer.cc.

2516 {
2517 
2518  if ( ! b )
2519  return;
2520 
2521  if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
2523 
2524  if ( b->yy_is_our_buffer )
2525  frontend_verilog_yyfree((void *) b->yy_ch_buf );
2526 
2527  frontend_verilog_yyfree((void *) b );
2528 }
#define YY_CURRENT_BUFFER
struct yy_buffer_state * YY_BUFFER_STATE
#define YY_CURRENT_BUFFER_LVALUE
void frontend_verilog_yyfree(void *)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void frontend_verilog_yy_flush_buffer ( YY_BUFFER_STATE  b)

Discard all buffered characters. On the next scan, YY_INPUT will be called.

Parameters
bthe buffer state to be flushed, usually YY_CURRENT_BUFFER.

Definition at line 2566 of file verilog_lexer.cc.

2567 {
2568  if ( ! b )
2569  return;
2570 
2571  b->yy_n_chars = 0;
2572 
2573  /* We always need two end-of-buffer characters. The first causes
2574  * a transition to the end-of-buffer state. The second causes
2575  * a jam in that state.
2576  */
2579 
2580  b->yy_buf_pos = &b->yy_ch_buf[0];
2581 
2582  b->yy_at_bol = 1;
2584 
2585  if ( b == YY_CURRENT_BUFFER )
2587 }
#define YY_CURRENT_BUFFER
#define YY_BUFFER_NEW
#define YY_END_OF_BUFFER_CHAR
static void frontend_verilog_yy_load_buffer_state(void)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void frontend_verilog_yy_init_buffer ( YY_BUFFER_STATE  b,
FILE *  file 
)
static

Definition at line 2538 of file verilog_lexer.cc.

2540 {
2541  int oerrno = errno;
2542 
2544 
2545  b->yy_input_file = file;
2546  b->yy_fill_buffer = 1;
2547 
2548  /* If b is the current buffer, then frontend_verilog_yy_init_buffer was _probably_
2549  * called from frontend_verilog_yyrestart() or through yy_get_next_buffer.
2550  * In that case, we don't want to reset the lineno or column.
2551  */
2552  if (b != YY_CURRENT_BUFFER){
2553  b->yy_bs_lineno = 1;
2554  b->yy_bs_column = 0;
2555  }
2556 
2557  b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
2558 
2559  errno = oerrno;
2560 }
FILE * yy_input_file
Definition: ilang_lexer.cc:232
#define YY_CURRENT_BUFFER
void frontend_verilog_yy_flush_buffer(YY_BUFFER_STATE b)
int isatty(int)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void frontend_verilog_yy_load_buffer_state ( void  )
static

Definition at line 2473 of file verilog_lexer.cc.

2474 {
2475  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
2476  (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
2478  (yy_hold_char) = *(yy_c_buf_p);
2479 }
static char * yy_c_buf_p
FILE * frontend_verilog_yyin
static char yy_hold_char
#define yytext_ptr
static int yy_n_chars
#define YY_CURRENT_BUFFER_LVALUE

+ Here is the caller graph for this function:

YY_BUFFER_STATE frontend_verilog_yy_scan_buffer ( char *  base,
yy_size_t  size 
)

Setup the input buffer state to scan directly from a user-specified character buffer.

Parameters
basethe character buffer
sizethe size in bytes of the character buffer
Returns
the newly allocated buffer state object.

Definition at line 2693 of file verilog_lexer.cc.

2694 {
2695  YY_BUFFER_STATE b;
2696 
2697  if ( size < 2 ||
2698  base[size-2] != YY_END_OF_BUFFER_CHAR ||
2699  base[size-1] != YY_END_OF_BUFFER_CHAR )
2700  /* They forgot to leave room for the EOB's. */
2701  return 0;
2702 
2703  b = (YY_BUFFER_STATE) frontend_verilog_yyalloc(sizeof( struct yy_buffer_state ) );
2704  if ( ! b )
2705  YY_FATAL_ERROR( "out of dynamic memory in frontend_verilog_yy_scan_buffer()" );
2706 
2707  b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
2708  b->yy_buf_pos = b->yy_ch_buf = base;
2709  b->yy_is_our_buffer = 0;
2710  b->yy_input_file = 0;
2711  b->yy_n_chars = b->yy_buf_size;
2712  b->yy_is_interactive = 0;
2713  b->yy_at_bol = 1;
2714  b->yy_fill_buffer = 0;
2716 
2718 
2719  return b;
2720 }
FILE * yy_input_file
Definition: ilang_lexer.cc:232
yy_size_t yy_buf_size
Definition: ilang_lexer.cc:240
#define YY_BUFFER_NEW
void * frontend_verilog_yyalloc(yy_size_t)
#define YY_END_OF_BUFFER_CHAR
struct yy_buffer_state * YY_BUFFER_STATE
void frontend_verilog_yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)
#define YY_FATAL_ERROR(msg)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

YY_BUFFER_STATE frontend_verilog_yy_scan_bytes ( yyconst char *  yybytes,
int  _yybytes_len 
)

Setup the input buffer state to scan the given bytes. The next call to frontend_verilog_yylex() will scan from a copy of bytes.

Parameters
yybytesthe byte buffer to scan
_yybytes_lenthe number of bytes in the buffer pointed to by bytes.
Returns
the newly allocated buffer state object.

Definition at line 2743 of file verilog_lexer.cc.

2744 {
2745  YY_BUFFER_STATE b;
2746  char *buf;
2747  yy_size_t n;
2748  int i;
2749 
2750  /* Get memory for full buffer, including space for trailing EOB's. */
2751  n = _yybytes_len + 2;
2752  buf = (char *) frontend_verilog_yyalloc(n );
2753  if ( ! buf )
2754  YY_FATAL_ERROR( "out of dynamic memory in frontend_verilog_yy_scan_bytes()" );
2755 
2756  for ( i = 0; i < _yybytes_len; ++i )
2757  buf[i] = yybytes[i];
2758 
2759  buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
2760 
2761  b = frontend_verilog_yy_scan_buffer(buf,n );
2762  if ( ! b )
2763  YY_FATAL_ERROR( "bad buffer in frontend_verilog_yy_scan_bytes()" );
2764 
2765  /* It's okay to grow etc. this buffer, and we should throw it
2766  * away when we're done.
2767  */
2768  b->yy_is_our_buffer = 1;
2769 
2770  return b;
2771 }
tuple n
Definition: fsm/generate.py:59
void * frontend_verilog_yyalloc(yy_size_t)
#define YY_END_OF_BUFFER_CHAR
size_t yy_size_t
Definition: ilang_lexer.cc:225
#define YY_FATAL_ERROR(msg)
YY_BUFFER_STATE frontend_verilog_yy_scan_buffer(char *base, yy_size_t size)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

YY_BUFFER_STATE frontend_verilog_yy_scan_string ( yyconst char *  yystr)

Setup the input buffer state to scan a string. The next call to frontend_verilog_yylex() will scan from a copy of str.

Parameters
yystra NUL-terminated string to scan
Returns
the newly allocated buffer state object.
Note
If you want to scan bytes that may contain NUL values, then use frontend_verilog_yy_scan_bytes() instead.

Definition at line 2730 of file verilog_lexer.cc.

2731 {
2732 
2733  return frontend_verilog_yy_scan_bytes(yystr,strlen(yystr) );
2734 }
YY_BUFFER_STATE frontend_verilog_yy_scan_bytes(yyconst char *bytes, int len)

+ Here is the call graph for this function:

void frontend_verilog_yy_switch_to_buffer ( YY_BUFFER_STATE  new_buffer)

Switch to a different input buffer.

Parameters
new_bufferThe new input buffer.

Definition at line 2442 of file verilog_lexer.cc.

2443 {
2444 
2445  /* TODO. We should be able to replace this entire function body
2446  * with
2447  * frontend_verilog_yypop_buffer_state();
2448  * frontend_verilog_yypush_buffer_state(new_buffer);
2449  */
2451  if ( YY_CURRENT_BUFFER == new_buffer )
2452  return;
2453 
2454  if ( YY_CURRENT_BUFFER )
2455  {
2456  /* Flush out information for old buffer. */
2457  *(yy_c_buf_p) = (yy_hold_char);
2458  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
2459  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2460  }
2461 
2462  YY_CURRENT_BUFFER_LVALUE = new_buffer;
2464 
2465  /* We don't actually know whether we did this switch during
2466  * EOF (frontend_verilog_yywrap()) processing, but the only time this flag
2467  * is looked at is after frontend_verilog_yywrap() is called, so it's safe
2468  * to go ahead and always set it.
2469  */
2471 }
static char * yy_c_buf_p
#define YY_CURRENT_BUFFER
static char yy_hold_char
static int yy_did_buffer_switch_on_eof
static void frontend_verilog_yy_load_buffer_state(void)
static void frontend_verilog_yyensure_buffer_stack(void)
static int yy_n_chars
#define YY_CURRENT_BUFFER_LVALUE

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void * frontend_verilog_yyalloc ( yy_size_t  size)

Definition at line 2957 of file verilog_lexer.cc.

2958 {
2959  return (void *) malloc( size );
2960 }
void * malloc(YYSIZE_T)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void frontend_verilog_yyensure_buffer_stack ( void  )
static

Definition at line 2644 of file verilog_lexer.cc.

2645 {
2646  int num_to_alloc;
2647 
2648  if (!(yy_buffer_stack)) {
2649 
2650  /* First allocation is just for 2 elements, since we don't know if this
2651  * scanner will even need a stack. We use 2 instead of 1 to avoid an
2652  * immediate realloc on the next call.
2653  */
2654  num_to_alloc = 1;
2656  (num_to_alloc * sizeof(struct yy_buffer_state*)
2657  );
2658  if ( ! (yy_buffer_stack) )
2659  YY_FATAL_ERROR( "out of dynamic memory in frontend_verilog_yyensure_buffer_stack()" );
2660 
2661  memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
2662 
2663  (yy_buffer_stack_max) = num_to_alloc;
2664  (yy_buffer_stack_top) = 0;
2665  return;
2666  }
2667 
2668  if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
2669 
2670  /* Increase the buffer to prepare for a possible push. */
2671  int grow_size = 8 /* arbitrary grow size */;
2672 
2673  num_to_alloc = (yy_buffer_stack_max) + grow_size;
2675  ((yy_buffer_stack),
2676  num_to_alloc * sizeof(struct yy_buffer_state*)
2677  );
2678  if ( ! (yy_buffer_stack) )
2679  YY_FATAL_ERROR( "out of dynamic memory in frontend_verilog_yyensure_buffer_stack()" );
2680 
2681  /* zero only the new slots.*/
2682  memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
2683  (yy_buffer_stack_max) = num_to_alloc;
2684  }
2685 }
static size_t yy_buffer_stack_max
void * frontend_verilog_yyrealloc(void *, yy_size_t)
void * frontend_verilog_yyalloc(yy_size_t)
static YY_BUFFER_STATE * yy_buffer_stack
static size_t yy_buffer_stack_top
#define YY_FATAL_ERROR(msg)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void frontend_verilog_yyfree ( void *  ptr)

Definition at line 2974 of file verilog_lexer.cc.

2975 {
2976  free( (char *) ptr ); /* see frontend_verilog_yyrealloc() for (char *) cast */
2977 }
void free(void *)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int frontend_verilog_yyget_debug ( void  )

Definition at line 2870 of file verilog_lexer.cc.

2871 {
2873 }
int frontend_verilog_yy_flex_debug
YY_EXTRA_TYPE frontend_verilog_yyget_extra ( void  )
FILE * frontend_verilog_yyget_in ( void  )

Get the input stream.

Definition at line 2814 of file verilog_lexer.cc.

2815 {
2816  return frontend_verilog_yyin;
2817 }
FILE * frontend_verilog_yyin
int frontend_verilog_yyget_leng ( void  )

Get the length of the current token.

Definition at line 2830 of file verilog_lexer.cc.

2831 {
2832  return frontend_verilog_yyleng;
2833 }
int frontend_verilog_yyleng
int frontend_verilog_yyget_lineno ( void  )

Get the current line number.

Definition at line 2805 of file verilog_lexer.cc.

2806 {
2807 
2809 }
int frontend_verilog_yylineno

+ Here is the caller graph for this function:

FILE * frontend_verilog_yyget_out ( void  )

Get the output stream.

Definition at line 2822 of file verilog_lexer.cc.

2823 {
2824  return frontend_verilog_yyout;
2825 }
FILE * frontend_verilog_yyout
char * frontend_verilog_yyget_text ( void  )

Get the current token.

Definition at line 2839 of file verilog_lexer.cc.

2840 {
2841  return frontend_verilog_yytext;
2842 }
char * frontend_verilog_yytext
int frontend_verilog_yylex ( void  )
int frontend_verilog_yylex_destroy ( void  )

Definition at line 2912 of file verilog_lexer.cc.

2913 {
2914 
2915  /* Pop the buffer stack, destroying each element. */
2916  while(YY_CURRENT_BUFFER){
2920  }
2921 
2922  /* Destroy the stack itself. */
2924  (yy_buffer_stack) = NULL;
2925 
2926  /* Reset the globals. This is important in a non-reentrant scanner so the next time
2927  * frontend_verilog_yylex() is called, initialization will occur. */
2928  yy_init_globals( );
2929 
2930  return 0;
2931 }
#define YY_CURRENT_BUFFER
static YY_BUFFER_STATE * yy_buffer_stack
static int yy_init_globals(void)
#define NULL
void frontend_verilog_yypop_buffer_state(void)
void frontend_verilog_yy_delete_buffer(YY_BUFFER_STATE b)
#define YY_CURRENT_BUFFER_LVALUE
void frontend_verilog_yyfree(void *)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void frontend_verilog_yypop_buffer_state ( void  )

Removes and deletes the top of the stack, if present. The next element becomes the new top.

Definition at line 2625 of file verilog_lexer.cc.

2626 {
2627  if (!YY_CURRENT_BUFFER)
2628  return;
2629 
2632  if ((yy_buffer_stack_top) > 0)
2633  --(yy_buffer_stack_top);
2634 
2635  if (YY_CURRENT_BUFFER) {
2638  }
2639 }
#define YY_CURRENT_BUFFER
static size_t yy_buffer_stack_top
#define NULL
static int yy_did_buffer_switch_on_eof
static void frontend_verilog_yy_load_buffer_state(void)
void frontend_verilog_yy_delete_buffer(YY_BUFFER_STATE b)
#define YY_CURRENT_BUFFER_LVALUE

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void frontend_verilog_yypush_buffer_state ( YY_BUFFER_STATE  new_buffer)

Pushes the new state onto the stack. The new state becomes the current state. This function will allocate the stack if necessary.

Parameters
new_bufferThe new state.

Definition at line 2595 of file verilog_lexer.cc.

2596 {
2597  if (new_buffer == NULL)
2598  return;
2599 
2601 
2602  /* This block is copied from frontend_verilog_yy_switch_to_buffer. */
2603  if ( YY_CURRENT_BUFFER )
2604  {
2605  /* Flush out information for old buffer. */
2606  *(yy_c_buf_p) = (yy_hold_char);
2607  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
2608  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2609  }
2610 
2611  /* Only push if top exists. Otherwise, replace top. */
2612  if (YY_CURRENT_BUFFER)
2613  (yy_buffer_stack_top)++;
2614  YY_CURRENT_BUFFER_LVALUE = new_buffer;
2615 
2616  /* copied from frontend_verilog_yy_switch_to_buffer. */
2619 }
static char * yy_c_buf_p
#define YY_CURRENT_BUFFER
static char yy_hold_char
static size_t yy_buffer_stack_top
#define NULL
static int yy_did_buffer_switch_on_eof
static void frontend_verilog_yy_load_buffer_state(void)
static void frontend_verilog_yyensure_buffer_stack(void)
static int yy_n_chars
#define YY_CURRENT_BUFFER_LVALUE

+ Here is the call graph for this function:

void * frontend_verilog_yyrealloc ( void *  ptr,
yy_size_t  size 
)

Definition at line 2962 of file verilog_lexer.cc.

2963 {
2964  /* The cast to (char *) in the following accommodates both
2965  * implementations that use char* generic pointers, and those
2966  * that use void* generic pointers. It works with the latter
2967  * because both ANSI C and C++ allow castless assignment from
2968  * any pointer type to void*, and deal with argument conversions
2969  * as though doing an assignment.
2970  */
2971  return (void *) realloc( (char *) ptr, size );
2972 }

+ Here is the caller graph for this function:

void frontend_verilog_yyrestart ( FILE *  input_file)

Immediately switch to a different input stream.

Parameters
input_fileA readable stream.
Note
This function does not reset the start condition to INITIAL .

Definition at line 2425 of file verilog_lexer.cc.

2426 {
2427 
2428  if ( ! YY_CURRENT_BUFFER ){
2432  }
2433 
2436 }
#define YY_CURRENT_BUFFER
FILE * frontend_verilog_yyin
static void frontend_verilog_yy_init_buffer(YY_BUFFER_STATE b, FILE *file)
#define YY_BUF_SIZE
static void frontend_verilog_yy_load_buffer_state(void)
static void frontend_verilog_yyensure_buffer_stack(void)
YY_BUFFER_STATE frontend_verilog_yy_create_buffer(FILE *file, int size)
static void input_file(std::istream &f, std::string filename)
Definition: preproc.cc:196
#define YY_CURRENT_BUFFER_LVALUE

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void frontend_verilog_yyset_debug ( int  debug_flag)

Definition at line 2875 of file verilog_lexer.cc.

2876 {
2878 }
int frontend_verilog_yy_flex_debug
void frontend_verilog_yyset_extra ( YY_EXTRA_TYPE  user_defined)
void frontend_verilog_yyset_in ( FILE *  in_str)

Set the input stream. This does not discard the current input buffer.

Parameters
in_strA readable stream.
See Also
frontend_verilog_yy_switch_to_buffer

Definition at line 2860 of file verilog_lexer.cc.

2861 {
2862  frontend_verilog_yyin = in_str ;
2863 }
FILE * frontend_verilog_yyin
void frontend_verilog_yyset_lineno ( int  line_number)

Set the current line number.

Parameters
line_number

Definition at line 2848 of file verilog_lexer.cc.

2849 {
2850 
2851  frontend_verilog_yylineno = line_number;
2852 }
int frontend_verilog_yylineno

+ Here is the caller graph for this function:

void frontend_verilog_yyset_out ( FILE *  out_str)

Definition at line 2865 of file verilog_lexer.cc.

2866 {
2867  frontend_verilog_yyout = out_str ;
2868 }
FILE * frontend_verilog_yyout
if ( yy_init)

Definition at line 1214 of file verilog_lexer.cc.

1215  {
1216  (yy_init) = 1;
1217 
1218 #ifdef YY_USER_INIT
1219  YY_USER_INIT;
1220 #endif
1221 
1222  if ( ! (yy_start) )
1223  (yy_start) = 1; /* first start state */
1224 
1225  if ( ! frontend_verilog_yyin )
1226  frontend_verilog_yyin = stdin;
1227 
1228  if ( ! frontend_verilog_yyout )
1229  frontend_verilog_yyout = stdout;
1230 
1231  if ( ! YY_CURRENT_BUFFER ) {
1235  }
1236 
1238  }
static int yy_init
#define YY_CURRENT_BUFFER
FILE * frontend_verilog_yyout
FILE * frontend_verilog_yyin
#define YY_BUF_SIZE
static int yy_start
static void frontend_verilog_yy_load_buffer_state(void)
static void frontend_verilog_yyensure_buffer_stack(void)
YY_BUFFER_STATE frontend_verilog_yy_create_buffer(FILE *file, int size)
#define YY_CURRENT_BUFFER_LVALUE

+ Here is the call graph for this function:

static int input ( void  )
static

Definition at line 2345 of file verilog_lexer.cc.

2348 {
2349  int c;
2350 
2351  *(yy_c_buf_p) = (yy_hold_char);
2352 
2353  if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
2354  {
2355  /* yy_c_buf_p now points to the character we want to return.
2356  * If this occurs *before* the EOB characters, then it's a
2357  * valid NUL; if not, then we've hit the end of the buffer.
2358  */
2359  if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
2360  /* This was really a NUL. */
2361  *(yy_c_buf_p) = '\0';
2362 
2363  else
2364  { /* need more input */
2365  int offset = (yy_c_buf_p) - (yytext_ptr);
2366  ++(yy_c_buf_p);
2367 
2368  switch ( yy_get_next_buffer( ) )
2369  {
2370  case EOB_ACT_LAST_MATCH:
2371  /* This happens because yy_g_n_b()
2372  * sees that we've accumulated a
2373  * token and flags that we need to
2374  * try matching the token before
2375  * proceeding. But for input(),
2376  * there's no matching to consider.
2377  * So convert the EOB_ACT_LAST_MATCH
2378  * to EOB_ACT_END_OF_FILE.
2379  */
2380 
2381  /* Reset buffer status. */
2383 
2384  /*FALLTHROUGH*/
2385 
2386  case EOB_ACT_END_OF_FILE:
2387  {
2388  if ( frontend_verilog_yywrap( ) )
2389  return EOF;
2390 
2391  if ( ! (yy_did_buffer_switch_on_eof) )
2392  YY_NEW_FILE;
2393 #ifdef __cplusplus
2394  return yyinput();
2395 #else
2396  return input();
2397 #endif
2398  }
2399 
2400  case EOB_ACT_CONTINUE_SCAN:
2401  (yy_c_buf_p) = (yytext_ptr) + offset;
2402  break;
2403  }
2404  }
2405  }
2406 
2407  c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
2408  *(yy_c_buf_p) = '\0'; /* preserve frontend_verilog_yytext */
2409  (yy_hold_char) = *++(yy_c_buf_p);
2410 
2411  if ( c == '\n' )
2412 
2414 ;
2415 
2416  return c;
2417 }
static char * yy_c_buf_p
#define frontend_verilog_yywrap(n)
#define EOB_ACT_LAST_MATCH
void frontend_verilog_yyrestart(FILE *input_file)
int frontend_verilog_yylineno
FILE * frontend_verilog_yyin
#define YY_NEW_FILE
static char yy_hold_char
#define yytext_ptr
#define YY_END_OF_BUFFER_CHAR
static int yy_get_next_buffer(void)
#define EOB_ACT_CONTINUE_SCAN
static int yy_did_buffer_switch_on_eof
#define EOB_ACT_END_OF_FILE
static int input(void)
static int yy_n_chars
#define YY_CURRENT_BUFFER_LVALUE

+ Here is the call graph for this function:

int isatty ( int  )

+ Here is the caller graph for this function:

while ( )

Definition at line 1240 of file verilog_lexer.cc.

1241  {
1242  (yy_more_len) = 0;
1243  if ( (yy_more_flag) )
1244  {
1245  (yy_more_len) = (yy_c_buf_p) - (yytext_ptr);
1246  (yy_more_flag) = 0;
1247  }
1248  yy_cp = (yy_c_buf_p);
1249 
1250  /* Support of frontend_verilog_yytext. */
1251  *yy_cp = (yy_hold_char);
1252 
1253  /* yy_bp points to the position in yy_ch_buf of the start of
1254  * the current run.
1255  */
1256  yy_bp = yy_cp;
1257 
1258  yy_current_state = (yy_start);
1259 yy_match:
1260  do
1261  {
1262  register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1263  if ( yy_accept[yy_current_state] )
1264  {
1265  (yy_last_accepting_state) = yy_current_state;
1267  }
1268  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1269  {
1270  yy_current_state = (int) yy_def[yy_current_state];
1271  if ( yy_current_state >= 569 )
1272  yy_c = yy_meta[(unsigned int) yy_c];
1273  }
1274  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1275  ++yy_cp;
1276  }
1277  while ( yy_base[yy_current_state] != 1054 );
1278 
1279 yy_find_action:
1280  yy_act = yy_accept[yy_current_state];
1281  if ( yy_act == 0 )
1282  { /* have to back up */
1284  yy_current_state = (yy_last_accepting_state);
1285  yy_act = yy_accept[yy_current_state];
1286  }
1287 
1289 
1291  {
1292  int yyl;
1293  for ( yyl = (yy_more_len); yyl < frontend_verilog_yyleng; ++yyl )
1294  if ( frontend_verilog_yytext[yyl] == '\n' )
1295 
1297 ;
1298  }
1299 
1300 do_action: /* This label is used only to access EOF actions. */
1301 
1302  switch ( yy_act )
1303  { /* beginning of action switch */
1304  case 0: /* must back up */
1305  /* undo the effects of YY_DO_BEFORE_ACTION */
1306  *yy_cp = (yy_hold_char);
1308  yy_current_state = (yy_last_accepting_state);
1309  goto yy_find_action;
1310 
1311 case 1:
1313 #line 84 "frontends/verilog/verilog_lexer.l"
1314 {
1315  fn_stack.push_back(current_filename);
1319 }
1320  YY_BREAK
1321 case 2:
1322 /* rule 2 can match eol */
1324 #line 91 "frontends/verilog/verilog_lexer.l"
1325 {
1326  current_filename = fn_stack.back();
1327  fn_stack.pop_back();
1329  ln_stack.pop_back();
1330 }
1331  YY_BREAK
1332 case 3:
1333 /* rule 3 can match eol */
1335 #line 98 "frontends/verilog/verilog_lexer.l"
1336 {
1337  char *p = frontend_verilog_yytext + 5;
1338  while (*p == ' ' || *p == '\t') p++;
1340  while (*p && *p != ' ' && *p != '\t') p++;
1341  while (*p == ' ' || *p == '\t') p++;
1342  char *q = *p ? p + 1 : p;
1343  while (*q && *q != '"') q++;
1344  current_filename = std::string(p).substr(1, q-p-1);
1345 }
1346  YY_BREAK
1347 case 4:
1349 #line 109 "frontends/verilog/verilog_lexer.l"
1350 {
1351  log_error("Can't open include file `%s'!\n", frontend_verilog_yytext + 15);
1352 }
1353  YY_BREAK
1354 case 5:
1356 #line 113 "frontends/verilog/verilog_lexer.l"
1357 /* ignore timescale directive */
1358  YY_BREAK
1359 case 6:
1361 #line 115 "frontends/verilog/verilog_lexer.l"
1362 {
1363  char *p = frontend_verilog_yytext;
1364  while (*p != 0 && *p != ' ' && *p != '\t') p++;
1365  while (*p == ' ' || *p == '\t') p++;
1366  if (!strcmp(p, "none"))
1368  else if (!strcmp(p, "wire"))
1370  else
1371  frontend_verilog_yyerror("Unsupported default nettype: %s", p);
1372 }
1373  YY_BREAK
1374 case 7:
1376 #line 127 "frontends/verilog/verilog_lexer.l"
1377 {
1378  frontend_verilog_yyerror("Unimplemented compiler directive or undefined macro %s.", frontend_verilog_yytext);
1379 }
1380  YY_BREAK
1381 case 8:
1383 #line 131 "frontends/verilog/verilog_lexer.l"
1384 { return TOK_MODULE; }
1385  YY_BREAK
1386 case 9:
1388 #line 132 "frontends/verilog/verilog_lexer.l"
1389 { return TOK_ENDMODULE; }
1390  YY_BREAK
1391 case 10:
1393 #line 133 "frontends/verilog/verilog_lexer.l"
1394 { return TOK_FUNCTION; }
1395  YY_BREAK
1396 case 11:
1398 #line 134 "frontends/verilog/verilog_lexer.l"
1399 { return TOK_ENDFUNCTION; }
1400  YY_BREAK
1401 case 12:
1403 #line 135 "frontends/verilog/verilog_lexer.l"
1404 { return TOK_TASK; }
1405  YY_BREAK
1406 case 13:
1408 #line 136 "frontends/verilog/verilog_lexer.l"
1409 { return TOK_ENDTASK; }
1410  YY_BREAK
1411 case 14:
1413 #line 137 "frontends/verilog/verilog_lexer.l"
1414 { return TOK_PARAMETER; }
1415  YY_BREAK
1416 case 15:
1418 #line 138 "frontends/verilog/verilog_lexer.l"
1419 { return TOK_LOCALPARAM; }
1420  YY_BREAK
1421 case 16:
1423 #line 139 "frontends/verilog/verilog_lexer.l"
1424 { return TOK_DEFPARAM; }
1425  YY_BREAK
1426 case 17:
1428 #line 140 "frontends/verilog/verilog_lexer.l"
1429 { return TOK_ASSIGN; }
1430  YY_BREAK
1431 case 18:
1433 #line 141 "frontends/verilog/verilog_lexer.l"
1434 { return TOK_ALWAYS; }
1435  YY_BREAK
1436 case 19:
1438 #line 142 "frontends/verilog/verilog_lexer.l"
1439 { return TOK_INITIAL; }
1440  YY_BREAK
1441 case 20:
1443 #line 143 "frontends/verilog/verilog_lexer.l"
1444 { return TOK_BEGIN; }
1445  YY_BREAK
1446 case 21:
1448 #line 144 "frontends/verilog/verilog_lexer.l"
1449 { return TOK_END; }
1450  YY_BREAK
1451 case 22:
1453 #line 145 "frontends/verilog/verilog_lexer.l"
1454 { return TOK_IF; }
1455  YY_BREAK
1456 case 23:
1458 #line 146 "frontends/verilog/verilog_lexer.l"
1459 { return TOK_ELSE; }
1460  YY_BREAK
1461 case 24:
1463 #line 147 "frontends/verilog/verilog_lexer.l"
1464 { return TOK_FOR; }
1465  YY_BREAK
1466 case 25:
1468 #line 148 "frontends/verilog/verilog_lexer.l"
1469 { return TOK_POSEDGE; }
1470  YY_BREAK
1471 case 26:
1473 #line 149 "frontends/verilog/verilog_lexer.l"
1474 { return TOK_NEGEDGE; }
1475  YY_BREAK
1476 case 27:
1478 #line 150 "frontends/verilog/verilog_lexer.l"
1479 { return TOK_OR; }
1480  YY_BREAK
1481 case 28:
1483 #line 151 "frontends/verilog/verilog_lexer.l"
1484 { return TOK_CASE; }
1485  YY_BREAK
1486 case 29:
1488 #line 152 "frontends/verilog/verilog_lexer.l"
1489 { return TOK_CASEX; }
1490  YY_BREAK
1491 case 30:
1493 #line 153 "frontends/verilog/verilog_lexer.l"
1494 { return TOK_CASEZ; }
1495  YY_BREAK
1496 case 31:
1498 #line 154 "frontends/verilog/verilog_lexer.l"
1499 { return TOK_ENDCASE; }
1500  YY_BREAK
1501 case 32:
1503 #line 155 "frontends/verilog/verilog_lexer.l"
1504 { return TOK_DEFAULT; }
1505  YY_BREAK
1506 case 33:
1508 #line 156 "frontends/verilog/verilog_lexer.l"
1509 { return TOK_GENERATE; }
1510  YY_BREAK
1511 case 34:
1513 #line 157 "frontends/verilog/verilog_lexer.l"
1514 { return TOK_ENDGENERATE; }
1515  YY_BREAK
1516 case 35:
1518 #line 158 "frontends/verilog/verilog_lexer.l"
1519 { return TOK_WHILE; }
1520  YY_BREAK
1521 case 36:
1523 #line 159 "frontends/verilog/verilog_lexer.l"
1524 { return TOK_REPEAT; }
1525  YY_BREAK
1526 case 37:
1528 #line 161 "frontends/verilog/verilog_lexer.l"
1529 { SV_KEYWORD(TOK_ALWAYS); }
1530  YY_BREAK
1531 case 38:
1533 #line 162 "frontends/verilog/verilog_lexer.l"
1534 { SV_KEYWORD(TOK_ALWAYS); }
1535  YY_BREAK
1536 case 39:
1538 #line 163 "frontends/verilog/verilog_lexer.l"
1539 { SV_KEYWORD(TOK_ALWAYS); }
1540  YY_BREAK
1541 case 40:
1543 #line 165 "frontends/verilog/verilog_lexer.l"
1544 { SV_KEYWORD(TOK_ASSERT); }
1545  YY_BREAK
1546 case 41:
1548 #line 166 "frontends/verilog/verilog_lexer.l"
1550  YY_BREAK
1551 case 42:
1553 #line 167 "frontends/verilog/verilog_lexer.l"
1554 { SV_KEYWORD(TOK_REG); }
1555  YY_BREAK
1556 case 43:
1558 #line 168 "frontends/verilog/verilog_lexer.l"
1559 { SV_KEYWORD(TOK_REG); }
1560  YY_BREAK
1561 case 44:
1563 #line 170 "frontends/verilog/verilog_lexer.l"
1564 { return TOK_INPUT; }
1565  YY_BREAK
1566 case 45:
1568 #line 171 "frontends/verilog/verilog_lexer.l"
1569 { return TOK_OUTPUT; }
1570  YY_BREAK
1571 case 46:
1573 #line 172 "frontends/verilog/verilog_lexer.l"
1574 { return TOK_INOUT; }
1575  YY_BREAK
1576 case 47:
1578 #line 173 "frontends/verilog/verilog_lexer.l"
1579 { return TOK_WIRE; }
1580  YY_BREAK
1581 case 48:
1583 #line 174 "frontends/verilog/verilog_lexer.l"
1584 { return TOK_REG; }
1585  YY_BREAK
1586 case 49:
1588 #line 175 "frontends/verilog/verilog_lexer.l"
1589 { return TOK_INTEGER; }
1590  YY_BREAK
1591 case 50:
1593 #line 176 "frontends/verilog/verilog_lexer.l"
1594 { return TOK_SIGNED; }
1595  YY_BREAK
1596 case 51:
1598 #line 177 "frontends/verilog/verilog_lexer.l"
1599 { return TOK_GENVAR; }
1600  YY_BREAK
1601 case 52:
1603 #line 178 "frontends/verilog/verilog_lexer.l"
1604 { return TOK_REAL; }
1605  YY_BREAK
1606 case 53:
1608 #line 180 "frontends/verilog/verilog_lexer.l"
1609 {
1611  return TOK_CONST;
1612 }
1613  YY_BREAK
1614 case 54:
1615 /* rule 54 can match eol */
1617 #line 185 "frontends/verilog/verilog_lexer.l"
1618 {
1620  return TOK_CONST;
1621 }
1622  YY_BREAK
1623 case 55:
1625 #line 190 "frontends/verilog/verilog_lexer.l"
1626 {
1628  return TOK_REALVAL;
1629 }
1630  YY_BREAK
1631 case 56:
1633 #line 195 "frontends/verilog/verilog_lexer.l"
1634 {
1636  return TOK_REALVAL;
1637 }
1638  YY_BREAK
1639 case 57:
1641 #line 200 "frontends/verilog/verilog_lexer.l"
1642 { BEGIN(STRING); }
1643  YY_BREAK
1644 case 58:
1646 #line 201 "frontends/verilog/verilog_lexer.l"
1647 { yymore(); }
1648  YY_BREAK
1649 case 59:
1651 #line 202 "frontends/verilog/verilog_lexer.l"
1652 {
1653  BEGIN(0);
1654  char *yystr = strdup(frontend_verilog_yytext);
1655  yystr[strlen(frontend_verilog_yytext) - 1] = 0;
1656  int i = 0, j = 0;
1657  while (yystr[i]) {
1658  if (yystr[i] == '\\' && yystr[i + 1]) {
1659  i++;
1660  if (yystr[i] == 'n')
1661  yystr[i] = '\n';
1662  else if (yystr[i] == 't')
1663  yystr[i] = '\t';
1664  else if ('0' <= yystr[i] && yystr[i] <= '7') {
1665  yystr[i] = yystr[i] - '0';
1666  if ('0' <= yystr[i + 1] && yystr[i + 1] <= '7') {
1667  yystr[i + 1] = yystr[i] * 8 + yystr[i + 1] - '0';
1668  i++;
1669  }
1670  if ('0' <= yystr[i + 1] && yystr[i + 1] <= '7') {
1671  yystr[i + 1] = yystr[i] * 8 + yystr[i + 1] - '0';
1672  i++;
1673  }
1674  }
1675  }
1676  yystr[j++] = yystr[i++];
1677  }
1678  yystr[j] = 0;
1679  frontend_verilog_yylval.string = new std::string(yystr);
1680  free(yystr);
1681  return TOK_STRING;
1682 }
1683  YY_BREAK
1684 case 60:
1686 #line 233 "frontends/verilog/verilog_lexer.l"
1687 { yymore(); }
1688  YY_BREAK
1689 case 61:
1691 #line 235 "frontends/verilog/verilog_lexer.l"
1692 {
1694  return TOK_PRIMITIVE;
1695 }
1696  YY_BREAK
1697 case 62:
1699 #line 240 "frontends/verilog/verilog_lexer.l"
1700 { return TOK_SUPPLY0; }
1701  YY_BREAK
1702 case 63:
1704 #line 241 "frontends/verilog/verilog_lexer.l"
1705 { return TOK_SUPPLY1; }
1706  YY_BREAK
1707 case 64:
1709 #line 243 "frontends/verilog/verilog_lexer.l"
1710 {
1712  return TOK_ID;
1713 }
1714  YY_BREAK
1715 case 65:
1717 #line 248 "frontends/verilog/verilog_lexer.l"
1718 { return TOK_TO_SIGNED; }
1719  YY_BREAK
1720 case 66:
1722 #line 249 "frontends/verilog/verilog_lexer.l"
1723 { return TOK_TO_UNSIGNED; }
1724  YY_BREAK
1725 case 67:
1727 #line 251 "frontends/verilog/verilog_lexer.l"
1728 {
1729  frontend_verilog_yylval.string = new std::string(std::string("\\") + frontend_verilog_yytext);
1730  return TOK_ID;
1731 }
1732  YY_BREAK
1733 case 68:
1735 #line 256 "frontends/verilog/verilog_lexer.l"
1736 {
1737  log("Warning: Found one of those horrible `(synopsys|synthesis) translate_off' comments.\n");
1738  log("It is strongly suggested to use `ifdef constructs instead!\n");
1740 }
1741  YY_BREAK
1742 case 69:
1744 #line 261 "frontends/verilog/verilog_lexer.l"
1745 /* ignore synopsys translate_off body */
1746  YY_BREAK
1747 case 70:
1748 /* rule 70 can match eol */
1750 #line 262 "frontends/verilog/verilog_lexer.l"
1751 /* ignore synopsys translate_off body */
1752  YY_BREAK
1753 case 71:
1755 #line 263 "frontends/verilog/verilog_lexer.l"
1756 { BEGIN(0); }
1757  YY_BREAK
1758 case 72:
1760 #line 265 "frontends/verilog/verilog_lexer.l"
1761 {
1763 }
1764  YY_BREAK
1765 case 73:
1767 #line 268 "frontends/verilog/verilog_lexer.l"
1768 {
1769  log("Warning: Found one of those horrible `(synopsys|synthesis) full_case' comments.\n");
1770  log("It is strongly suggested to use verilog x-values and default branches instead!\n");
1771  return TOK_SYNOPSYS_FULL_CASE;
1772 }
1773  YY_BREAK
1774 case 74:
1776 #line 273 "frontends/verilog/verilog_lexer.l"
1777 {
1778  log("Warning: Found one of those horrible `(synopsys|synthesis) parallel_case' comments.\n");
1779  log("It is strongly suggested to use verilog `parallel_case' attributes instead!\n");
1781 }
1782  YY_BREAK
1783 case 75:
1785 #line 278 "frontends/verilog/verilog_lexer.l"
1786 /* ignore everything else */
1787  YY_BREAK
1788 case 76:
1790 #line 279 "frontends/verilog/verilog_lexer.l"
1791 { BEGIN(0); }
1792  YY_BREAK
1793 case 77:
1794 /* rule 77 can match eol */
1796 #line 281 "frontends/verilog/verilog_lexer.l"
1797 {
1798  BEGIN(IMPORT_DPI);
1799  return TOK_DPI_FUNCTION;
1800 }
1801  YY_BREAK
1802 case 78:
1804 #line 286 "frontends/verilog/verilog_lexer.l"
1805 {
1806  frontend_verilog_yylval.string = new std::string(std::string("\\") + frontend_verilog_yytext);
1807  return TOK_ID;
1808 }
1809  YY_BREAK
1810 case 79:
1811 /* rule 79 can match eol */
1813 #line 291 "frontends/verilog/verilog_lexer.l"
1814 /* ignore whitespaces */
1815  YY_BREAK
1816 case 80:
1818 #line 293 "frontends/verilog/verilog_lexer.l"
1819 {
1820  BEGIN(0);
1821  return *frontend_verilog_yytext;
1822 }
1823  YY_BREAK
1824 case 81:
1826 #line 298 "frontends/verilog/verilog_lexer.l"
1827 {
1828  return *frontend_verilog_yytext;
1829 }
1830  YY_BREAK
1831 case 82:
1833 #line 302 "frontends/verilog/verilog_lexer.l"
1834 {
1836  return TOK_ID;
1837 }
1838  YY_BREAK
1839 case 83:
1841 #line 307 "frontends/verilog/verilog_lexer.l"
1842 { return ATTR_BEGIN; }
1843  YY_BREAK
1844 case 84:
1846 #line 308 "frontends/verilog/verilog_lexer.l"
1847 { return ATTR_END; }
1848  YY_BREAK
1849 case 85:
1851 #line 310 "frontends/verilog/verilog_lexer.l"
1852 { return DEFATTR_BEGIN; }
1853  YY_BREAK
1854 case 86:
1856 #line 311 "frontends/verilog/verilog_lexer.l"
1857 { return DEFATTR_END; }
1858  YY_BREAK
1859 case 87:
1861 #line 313 "frontends/verilog/verilog_lexer.l"
1862 { return OP_POW; }
1863  YY_BREAK
1864 case 88:
1866 #line 314 "frontends/verilog/verilog_lexer.l"
1867 { return OP_LOR; }
1868  YY_BREAK
1869 case 89:
1871 #line 315 "frontends/verilog/verilog_lexer.l"
1872 { return OP_LAND; }
1873  YY_BREAK
1874 case 90:
1876 #line 316 "frontends/verilog/verilog_lexer.l"
1877 { return OP_EQ; }
1878  YY_BREAK
1879 case 91:
1881 #line 317 "frontends/verilog/verilog_lexer.l"
1882 { return OP_NE; }
1883  YY_BREAK
1884 case 92:
1886 #line 318 "frontends/verilog/verilog_lexer.l"
1887 { return OP_LE; }
1888  YY_BREAK
1889 case 93:
1891 #line 319 "frontends/verilog/verilog_lexer.l"
1892 { return OP_GE; }
1893  YY_BREAK
1894 case 94:
1896 #line 321 "frontends/verilog/verilog_lexer.l"
1897 { return OP_EQX; }
1898  YY_BREAK
1899 case 95:
1901 #line 322 "frontends/verilog/verilog_lexer.l"
1902 { return OP_NEX; }
1903  YY_BREAK
1904 case 96:
1906 #line 324 "frontends/verilog/verilog_lexer.l"
1907 { return OP_NAND; }
1908  YY_BREAK
1909 case 97:
1911 #line 325 "frontends/verilog/verilog_lexer.l"
1912 { return OP_NOR; }
1913  YY_BREAK
1914 case 98:
1916 #line 326 "frontends/verilog/verilog_lexer.l"
1917 { return OP_XNOR; }
1918  YY_BREAK
1919 case 99:
1921 #line 327 "frontends/verilog/verilog_lexer.l"
1922 { return OP_XNOR; }
1923  YY_BREAK
1924 case 100:
1926 #line 329 "frontends/verilog/verilog_lexer.l"
1927 { return OP_SHL; }
1928  YY_BREAK
1929 case 101:
1931 #line 330 "frontends/verilog/verilog_lexer.l"
1932 { return OP_SHR; }
1933  YY_BREAK
1934 case 102:
1936 #line 331 "frontends/verilog/verilog_lexer.l"
1937 { return OP_SSHL; }
1938  YY_BREAK
1939 case 103:
1941 #line 332 "frontends/verilog/verilog_lexer.l"
1942 { return OP_SSHR; }
1943  YY_BREAK
1944 case 104:
1946 #line 334 "frontends/verilog/verilog_lexer.l"
1947 { return TOK_POS_INDEXED; }
1948  YY_BREAK
1949 case 105:
1951 #line 335 "frontends/verilog/verilog_lexer.l"
1952 { return TOK_NEG_INDEXED; }
1953  YY_BREAK
1954 case 106:
1956 #line 337 "frontends/verilog/verilog_lexer.l"
1957 { BEGIN(COMMENT); }
1958  YY_BREAK
1959 case 107:
1961 #line 338 "frontends/verilog/verilog_lexer.l"
1962 /* ignore comment body */
1963  YY_BREAK
1964 case 108:
1965 /* rule 108 can match eol */
1967 #line 339 "frontends/verilog/verilog_lexer.l"
1968 /* ignore comment body */
1969  YY_BREAK
1970 case 109:
1972 #line 340 "frontends/verilog/verilog_lexer.l"
1973 { BEGIN(0); }
1974  YY_BREAK
1975 case 110:
1976 /* rule 110 can match eol */
1978 #line 342 "frontends/verilog/verilog_lexer.l"
1979 /* ignore whitespaces */
1980  YY_BREAK
1981 case 111:
1982 /* rule 111 can match eol */
1984 #line 343 "frontends/verilog/verilog_lexer.l"
1985 /* ignore continuation sequence */
1986  YY_BREAK
1987 case 112:
1989 #line 344 "frontends/verilog/verilog_lexer.l"
1990 /* ignore one-line comments */
1991  YY_BREAK
1992 case 113:
1994 #line 345 "frontends/verilog/verilog_lexer.l"
1995 /* ignore simulation timings */
1996  YY_BREAK
1997 case 114:
1999 #line 347 "frontends/verilog/verilog_lexer.l"
2000 { return *frontend_verilog_yytext; }
2001  YY_BREAK
2002 case 115:
2004 #line 349 "frontends/verilog/verilog_lexer.l"
2005 ECHO;
2006  YY_BREAK
2007 #line 2008 "frontends/verilog/verilog_lexer.cc"
2008 case YY_STATE_EOF(INITIAL):
2009 case YY_STATE_EOF(COMMENT):
2010 case YY_STATE_EOF(STRING):
2011 case YY_STATE_EOF(SYNOPSYS_TRANSLATE_OFF):
2012 case YY_STATE_EOF(SYNOPSYS_FLAGS):
2013 case YY_STATE_EOF(IMPORT_DPI):
2014  yyterminate();
2015 
2016  case YY_END_OF_BUFFER:
2017  {
2018  /* Amount of text matched not including the EOB char. */
2019  int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
2020 
2021  /* Undo the effects of YY_DO_BEFORE_ACTION. */
2022  *yy_cp = (yy_hold_char);
2024 
2025  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
2026  {
2027  /* We're scanning a new file or input source. It's
2028  * possible that this happened because the user
2029  * just pointed frontend_verilog_yyin at a new source and called
2030  * frontend_verilog_yylex(). If so, then we have to assure
2031  * consistency between YY_CURRENT_BUFFER and our
2032  * globals. Here is the right place to do so, because
2033  * this is the first action (other than possibly a
2034  * back-up) that will match for the new input source.
2035  */
2036  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
2038  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
2039  }
2040 
2041  /* Note that here we test for yy_c_buf_p "<=" to the position
2042  * of the first EOB in the buffer, since yy_c_buf_p will
2043  * already have been incremented past the NUL character
2044  * (since all states make transitions on EOB to the
2045  * end-of-buffer state). Contrast this with the test
2046  * in input().
2047  */
2048  if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
2049  { /* This was really a NUL. */
2050  yy_state_type yy_next_state;
2051 
2052  (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
2053 
2054  yy_current_state = yy_get_previous_state( );
2055 
2056  /* Okay, we're now positioned to make the NUL
2057  * transition. We couldn't have
2058  * yy_get_previous_state() go ahead and do it
2059  * for us because it doesn't know how to deal
2060  * with the possibility of jamming (and we don't
2061  * want to build jamming into it because then it
2062  * will run more slowly).
2063  */
2064 
2065  yy_next_state = yy_try_NUL_trans( yy_current_state );
2066 
2068 
2069  if ( yy_next_state )
2070  {
2071  /* Consume the NUL. */
2072  yy_cp = ++(yy_c_buf_p);
2073  yy_current_state = yy_next_state;
2074  goto yy_match;
2075  }
2076 
2077  else
2078  {
2079  yy_cp = (yy_c_buf_p);
2080  goto yy_find_action;
2081  }
2082  }
2083 
2084  else switch ( yy_get_next_buffer( ) )
2085  {
2086  case EOB_ACT_END_OF_FILE:
2087  {
2089 
2090  if ( frontend_verilog_yywrap( ) )
2091  {
2092  /* Note: because we've taken care in
2093  * yy_get_next_buffer() to have set up
2094  * frontend_verilog_yytext, we can now set up
2095  * yy_c_buf_p so that if some total
2096  * hoser (like flex itself) wants to
2097  * call the scanner after we return the
2098  * YY_NULL, it'll still work - another
2099  * YY_NULL will get returned.
2100  */
2102 
2103  yy_act = YY_STATE_EOF(YY_START);
2104  goto do_action;
2105  }
2106 
2107  else
2108  {
2109  if ( ! (yy_did_buffer_switch_on_eof) )
2110  YY_NEW_FILE;
2111  }
2112  break;
2113  }
2114 
2115  case EOB_ACT_CONTINUE_SCAN:
2116  (yy_c_buf_p) =
2117  (yytext_ptr) + yy_amount_of_matched_text;
2118 
2119  yy_current_state = yy_get_previous_state( );
2120 
2121  yy_cp = (yy_c_buf_p);
2123  goto yy_match;
2124 
2125  case EOB_ACT_LAST_MATCH:
2126  (yy_c_buf_p) =
2127  &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
2128 
2129  yy_current_state = yy_get_previous_state( );
2130 
2131  yy_cp = (yy_c_buf_p);
2133  goto yy_find_action;
2134  }
2135  break;
2136  }
2137 
2138  default:
2140  "fatal flex scanner internal error--no action found" );
2141  } /* end of action switch */
2142  } /* end of scanning one token */
static yyconst flex_int16_t yy_accept[569]
char * frontend_verilog_yytext
static yyconst flex_int16_t yy_chk[1121]
static char * yy_c_buf_p
YYSTYPE frontend_verilog_yylval
#define YY_RESTORE_YY_MORE_OFFSET
int frontend_verilog_yyleng
void free(void *)
static yyconst flex_int16_t yy_def[592]
#define frontend_verilog_yywrap(n)
#define YY_MORE_ADJ
static char * yy_last_accepting_cpos
YOSYS_NAMESPACE_END void frontend_verilog_yyerror(char const *fmt,...)
#define EOB_ACT_LAST_MATCH
static yyconst flex_int32_t yy_meta[67]
void log_error(const char *format,...)
Definition: log.cc:204
unsigned char YY_CHAR
Definition: ilang_lexer.cc:379
register char * yy_bp
#define COMMENT
register int yy_act
int frontend_verilog_yylineno
static yy_state_type yy_get_previous_state(void)
FILE * frontend_verilog_yyin
#define YY_NEW_FILE
static char yy_hold_char
static int yy_more_flag
#define SYNOPSYS_TRANSLATE_OFF
#define YY_START
#define YY_BUFFER_NEW
#define yytext_ptr
#define YY_STATE_EOF(state)
static yyconst flex_int16_t yy_base[592]
#define yymore()
static int yy_more_len
#define YY_DO_BEFORE_ACTION
int yy_state_type
Definition: ilang_lexer.cc:383
#define SV_KEYWORD(_tok)
void frontend_verilog_yyset_lineno(int line_number)
#define YY_RULE_SETUP
static int yy_get_next_buffer(void)
#define YY_BREAK
static yy_state_type yy_try_NUL_trans(yy_state_type current_state)
#define BEGIN
#define EOB_ACT_CONTINUE_SCAN
std::string current_filename
Definition: ast.cc:49
static int yy_did_buffer_switch_on_eof
#define STRING
static int yy_start
#define YY_SC_TO_UI(c)
void log(const char *format,...)
Definition: log.cc:180
static yyconst flex_int16_t yy_nxt[1121]
static yyconst flex_int32_t yy_ec[256]
#define YY_BUFFER_NORMAL
static yyconst flex_int32_t yy_rule_can_match_eol[116]
std::vector< int > ln_stack
#define EOB_ACT_END_OF_FILE
#define yyterminate()
static yy_state_type yy_last_accepting_state
#define ECHO
#define YY_FATAL_ERROR(msg)
#define YY_END_OF_BUFFER
register char * yy_cp
static int yy_n_chars
#define IMPORT_DPI
std::vector< std::string > fn_stack
#define YY_CURRENT_BUFFER_LVALUE
#define SYNOPSYS_FLAGS
int frontend_verilog_yyget_lineno(void)
#define INITIAL

+ Here is the call graph for this function:

static void yy_fatal_error ( yyconst char  msg[])
static
static void yy_fatal_error ( yyconst char *  msg)
static

Definition at line 2777 of file verilog_lexer.cc.

2778 {
2779  (void) fprintf( stderr, "%s\n", msg );
2780  exit( YY_EXIT_FAILURE );
2781 }
#define YY_EXIT_FAILURE
static int yy_get_next_buffer ( void  )
static

Definition at line 2152 of file verilog_lexer.cc.

2153 {
2154  register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
2155  register char *source = (yytext_ptr);
2156  register int number_to_move, i;
2157  int ret_val;
2158 
2159  if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
2161  "fatal flex scanner internal error--end of buffer missed" );
2162 
2163  if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
2164  { /* Don't try to fill the buffer, so this is an EOF. */
2165  if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
2166  {
2167  /* We matched a single character, the EOB, so
2168  * treat this as a final EOF.
2169  */
2170  return EOB_ACT_END_OF_FILE;
2171  }
2172 
2173  else
2174  {
2175  /* We matched some text prior to the EOB, first
2176  * process it.
2177  */
2178  return EOB_ACT_LAST_MATCH;
2179  }
2180  }
2181 
2182  /* Try to read more data. */
2183 
2184  /* First move last chars to start of buffer. */
2185  number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
2186 
2187  for ( i = 0; i < number_to_move; ++i )
2188  *(dest++) = *(source++);
2189 
2190  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2191  /* don't do the read, it's not guaranteed to return an EOF,
2192  * just force an EOF
2193  */
2194  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
2195 
2196  else
2197  {
2198  int num_to_read =
2199  YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
2200 
2201  while ( num_to_read <= 0 )
2202  { /* Not enough room in the buffer - grow it. */
2203 
2204  /* just a shorter name for the current buffer */
2206 
2207  int yy_c_buf_p_offset =
2208  (int) ((yy_c_buf_p) - b->yy_ch_buf);
2209 
2210  if ( b->yy_is_our_buffer )
2211  {
2212  int new_size = b->yy_buf_size * 2;
2213 
2214  if ( new_size <= 0 )
2215  b->yy_buf_size += b->yy_buf_size / 8;
2216  else
2217  b->yy_buf_size *= 2;
2218 
2219  b->yy_ch_buf = (char *)
2220  /* Include room in for 2 EOB chars. */
2221  frontend_verilog_yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 );
2222  }
2223  else
2224  /* Can't grow it, we don't own it. */
2225  b->yy_ch_buf = 0;
2226 
2227  if ( ! b->yy_ch_buf )
2229  "fatal error - scanner input buffer overflow" );
2230 
2231  (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
2232 
2233  num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
2234  number_to_move - 1;
2235 
2236  }
2237 
2238  if ( num_to_read > YY_READ_BUF_SIZE )
2239  num_to_read = YY_READ_BUF_SIZE;
2240 
2241  /* Read in more data. */
2242  YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
2243  (yy_n_chars), (size_t) num_to_read );
2244 
2245  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2246  }
2247 
2248  if ( (yy_n_chars) == 0 )
2249  {
2250  if ( number_to_move == YY_MORE_ADJ )
2251  {
2252  ret_val = EOB_ACT_END_OF_FILE;
2254  }
2255 
2256  else
2257  {
2258  ret_val = EOB_ACT_LAST_MATCH;
2259  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
2261  }
2262  }
2263 
2264  else
2265  ret_val = EOB_ACT_CONTINUE_SCAN;
2266 
2267  if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
2268  /* Extend the array by 50%, plus the number we really need. */
2269  yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
2270  YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) frontend_verilog_yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
2271  if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
2272  YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
2273  }
2274 
2275  (yy_n_chars) += number_to_move;
2278 
2279  (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
2280 
2281  return ret_val;
2282 }
static char * yy_c_buf_p
#define YY_CURRENT_BUFFER
#define YY_MORE_ADJ
#define EOB_ACT_LAST_MATCH
void frontend_verilog_yyrestart(FILE *input_file)
FILE * frontend_verilog_yyin
yy_size_t yy_buf_size
Definition: ilang_lexer.cc:240
void * frontend_verilog_yyrealloc(void *, yy_size_t)
#define yytext_ptr
#define YY_END_OF_BUFFER_CHAR
size_t yy_size_t
Definition: ilang_lexer.cc:225
#define EOB_ACT_CONTINUE_SCAN
#define YY_INPUT(buf, result, max_size)
#define YY_READ_BUF_SIZE
#define EOB_ACT_END_OF_FILE
#define YY_BUFFER_EOF_PENDING
#define YY_FATAL_ERROR(msg)
static int yy_n_chars
#define YY_CURRENT_BUFFER_LVALUE

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static yy_state_type yy_get_previous_state ( void  )
static

Definition at line 2286 of file verilog_lexer.cc.

2287 {
2288  register yy_state_type yy_current_state;
2289  register char *yy_cp;
2290 
2291  yy_current_state = (yy_start);
2292 
2293  for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
2294  {
2295  register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2296  if ( yy_accept[yy_current_state] )
2297  {
2298  (yy_last_accepting_state) = yy_current_state;
2299  (yy_last_accepting_cpos) = yy_cp;
2300  }
2301  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2302  {
2303  yy_current_state = (int) yy_def[yy_current_state];
2304  if ( yy_current_state >= 569 )
2305  yy_c = yy_meta[(unsigned int) yy_c];
2306  }
2307  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2308  }
2309 
2310  return yy_current_state;
2311 }
static yyconst flex_int16_t yy_accept[569]
static yyconst flex_int16_t yy_chk[1121]
static char * yy_c_buf_p
static yyconst flex_int16_t yy_def[592]
#define YY_MORE_ADJ
static char * yy_last_accepting_cpos
static yyconst flex_int32_t yy_meta[67]
unsigned char YY_CHAR
Definition: ilang_lexer.cc:379
#define yytext_ptr
static yyconst flex_int16_t yy_base[592]
int yy_state_type
Definition: ilang_lexer.cc:383
static int yy_start
#define YY_SC_TO_UI(c)
static yyconst flex_int16_t yy_nxt[1121]
static yyconst flex_int32_t yy_ec[256]
static yy_state_type yy_last_accepting_state
register char * yy_cp

+ Here is the caller graph for this function:

static int yy_init_globals ( void  )
static

Definition at line 2880 of file verilog_lexer.cc.

2881 {
2882  /* Initialization is the same as for the non-reentrant scanner.
2883  * This function is called from frontend_verilog_yylex_destroy(), so don't allocate here.
2884  */
2885 
2886  /* We do not touch frontend_verilog_yylineno unless the option is enabled. */
2888 
2889  (yy_buffer_stack) = 0;
2890  (yy_buffer_stack_top) = 0;
2891  (yy_buffer_stack_max) = 0;
2892  (yy_c_buf_p) = (char *) 0;
2893  (yy_init) = 0;
2894  (yy_start) = 0;
2895 
2896 /* Defined in main.c */
2897 #ifdef YY_STDINIT
2898  frontend_verilog_yyin = stdin;
2899  frontend_verilog_yyout = stdout;
2900 #else
2901  frontend_verilog_yyin = (FILE *) 0;
2902  frontend_verilog_yyout = (FILE *) 0;
2903 #endif
2904 
2905  /* For future reference: Set errno on error, since we are called by
2906  * frontend_verilog_yylex_init()
2907  */
2908  return 0;
2909 }
static size_t yy_buffer_stack_max
static char * yy_c_buf_p
static int yy_init
FILE * frontend_verilog_yyout
int frontend_verilog_yylineno
FILE * frontend_verilog_yyin
static YY_BUFFER_STATE * yy_buffer_stack
static size_t yy_buffer_stack_top
static int yy_start

+ Here is the caller graph for this function:

static yy_state_type yy_try_NUL_trans ( yy_state_type  current_state)
static

Definition at line 2318 of file verilog_lexer.cc.

2319 {
2320  register int yy_is_jam;
2321  register char *yy_cp = (yy_c_buf_p);
2322 
2323  register YY_CHAR yy_c = 1;
2324  if ( yy_accept[yy_current_state] )
2325  {
2326  (yy_last_accepting_state) = yy_current_state;
2327  (yy_last_accepting_cpos) = yy_cp;
2328  }
2329  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2330  {
2331  yy_current_state = (int) yy_def[yy_current_state];
2332  if ( yy_current_state >= 569 )
2333  yy_c = yy_meta[(unsigned int) yy_c];
2334  }
2335  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2336  yy_is_jam = (yy_current_state == 568);
2337 
2338  return yy_is_jam ? 0 : yy_current_state;
2339 }
static yyconst flex_int16_t yy_accept[569]
static yyconst flex_int16_t yy_chk[1121]
static char * yy_c_buf_p
static yyconst flex_int16_t yy_def[592]
static char * yy_last_accepting_cpos
static yyconst flex_int32_t yy_meta[67]
unsigned char YY_CHAR
Definition: ilang_lexer.cc:379
static yyconst flex_int16_t yy_base[592]
static yyconst flex_int16_t yy_nxt[1121]
static yy_state_type yy_last_accepting_state
register char * yy_cp

+ Here is the caller graph for this function:

Variable Documentation

int frontend_verilog_yy_flex_debug = 0

Definition at line 934 of file verilog_lexer.cc.

FILE * frontend_verilog_yyin = (FILE *) 0

Definition at line 381 of file verilog_lexer.cc.

int frontend_verilog_yyleng

Definition at line 316 of file verilog_lexer.cc.

int frontend_verilog_yylineno = 1

Definition at line 387 of file verilog_lexer.cc.

FILE * frontend_verilog_yyout = (FILE *) 0

Definition at line 381 of file verilog_lexer.cc.

char * frontend_verilog_yytext

Definition at line 945 of file verilog_lexer.cc.

yyconst flex_int16_t yy_accept[569]
static

Definition at line 417 of file verilog_lexer.cc.

register int yy_act

Definition at line 1207 of file verilog_lexer.cc.

yyconst flex_int16_t yy_base[592]
static

Definition at line 526 of file verilog_lexer.cc.

register char * yy_bp

Definition at line 1206 of file verilog_lexer.cc.

YY_BUFFER_STATE* yy_buffer_stack = 0
static

Stack as an array.

Definition at line 296 of file verilog_lexer.cc.

size_t yy_buffer_stack_max = 0
static

capacity of stack.

Definition at line 295 of file verilog_lexer.cc.

size_t yy_buffer_stack_top = 0
static

index of top of stack.

Definition at line 294 of file verilog_lexer.cc.

char* yy_c_buf_p = (char *) 0
static

Definition at line 319 of file verilog_lexer.cc.

yyconst flex_int16_t yy_chk[1121]
static

Definition at line 793 of file verilog_lexer.cc.

register char* yy_cp

Definition at line 1206 of file verilog_lexer.cc.

YY_DECL
Initial value:
{
register yy_state_type yy_current_state
int yy_state_type
Definition: ilang_lexer.cc:383

The main scanner function which does all the work.

Definition at line 1204 of file verilog_lexer.cc.

yyconst flex_int16_t yy_def[592]
static

Definition at line 596 of file verilog_lexer.cc.

int yy_did_buffer_switch_on_eof
static

Definition at line 326 of file verilog_lexer.cc.

yyconst flex_int32_t yy_ec[256]
static

Definition at line 483 of file verilog_lexer.cc.

char yy_hold_char
static

Definition at line 314 of file verilog_lexer.cc.

int yy_init = 0
static

Definition at line 320 of file verilog_lexer.cc.

char* yy_last_accepting_cpos
static

Definition at line 931 of file verilog_lexer.cc.

yy_state_type yy_last_accepting_state
static

Definition at line 930 of file verilog_lexer.cc.

yyconst flex_int32_t yy_meta[67]
static
Initial value:
=
{ 0,
1, 2, 3, 4, 5, 1, 1, 1, 6, 1,
1, 1, 1, 1, 1, 1, 7, 8, 9, 9,
9, 1, 1, 1, 1, 1, 10, 11, 11, 11,
11, 6, 6, 6, 1, 1, 11, 1, 11, 11,
11, 11, 11, 11, 6, 6, 6, 6, 6, 6,
6, 6, 6, 6, 6, 6, 6, 6, 6, 11,
6, 11, 1, 1, 1, 1
}

Definition at line 515 of file verilog_lexer.cc.

int yy_more_flag = 0
static

Definition at line 940 of file verilog_lexer.cc.

int yy_more_len = 0
static

Definition at line 941 of file verilog_lexer.cc.

int yy_n_chars
static

Definition at line 315 of file verilog_lexer.cc.

yyconst flex_int16_t yy_nxt[1121]
static

Definition at line 666 of file verilog_lexer.cc.

yyconst flex_int32_t yy_rule_can_match_eol[116]
static
Initial value:
=
{ 0,
0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, }

Definition at line 921 of file verilog_lexer.cc.

int yy_start = 0
static

Definition at line 321 of file verilog_lexer.cc.