diff options
| author | Reid Spencer <rspencer@reidspencer.com> | 2007-01-13 05:00:46 +0000 | 
|---|---|---|
| committer | Reid Spencer <rspencer@reidspencer.com> | 2007-01-13 05:00:46 +0000 | 
| commit | 58a8db0a3f2732fe34f957bd1521eb3ad75fc0eb (patch) | |
| tree | 0214e9c9d223908c0fd96c5f01d1f6bf6ce1a728 /llvm/lib | |
| parent | 502d64e6540c384ab8e1505b994333aef8a16848 (diff) | |
| download | bcm5719-llvm-58a8db0a3f2732fe34f957bd1521eb3ad75fc0eb.tar.gz bcm5719-llvm-58a8db0a3f2732fe34f957bd1521eb3ad75fc0eb.zip | |
Regenerate.
llvm-svn: 33182
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/AsmParser/Lexer.cpp.cvs | 2960 | ||||
| -rw-r--r-- | llvm/lib/AsmParser/Lexer.l.cvs | 1 | ||||
| -rw-r--r-- | llvm/lib/AsmParser/llvmAsmParser.cpp.cvs | 4290 | ||||
| -rw-r--r-- | llvm/lib/AsmParser/llvmAsmParser.h.cvs | 538 | ||||
| -rw-r--r-- | llvm/lib/AsmParser/llvmAsmParser.y.cvs | 13 | 
5 files changed, 3723 insertions, 4079 deletions
| diff --git a/llvm/lib/AsmParser/Lexer.cpp.cvs b/llvm/lib/AsmParser/Lexer.cpp.cvs index 6eedd2b77f1..51f989eaf9f 100644 --- a/llvm/lib/AsmParser/Lexer.cpp.cvs +++ b/llvm/lib/AsmParser/Lexer.cpp.cvs @@ -1,94 +1,51 @@ -#line 2 "Lexer.cpp" - -#line 4 "Lexer.cpp" - -#define  YY_INT_ALIGNED short int - -/* A lexical scanner generated by flex */ +#define yy_create_buffer llvmAsm_create_buffer +#define yy_delete_buffer llvmAsm_delete_buffer +#define yy_scan_buffer llvmAsm_scan_buffer +#define yy_scan_string llvmAsm_scan_string +#define yy_scan_bytes llvmAsm_scan_bytes +#define yy_flex_debug llvmAsm_flex_debug +#define yy_init_buffer llvmAsm_init_buffer +#define yy_flush_buffer llvmAsm_flush_buffer +#define yy_load_buffer_state llvmAsm_load_buffer_state +#define yy_switch_to_buffer llvmAsm_switch_to_buffer +#define yyin llvmAsmin +#define yyleng llvmAsmleng +#define yylex llvmAsmlex +#define yyout llvmAsmout +#define yyrestart llvmAsmrestart +#define yytext llvmAsmtext +#define yylineno llvmAsmlineno + +#line 20 "Lexer.cpp" +/* A lexical scanner generated by flex*/ + +/* Scanner skeleton version: + * $Header$ + */  #define FLEX_SCANNER  #define YY_FLEX_MAJOR_VERSION 2  #define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 33 -#if YY_FLEX_SUBMINOR_VERSION > 0 -#define FLEX_BETA -#endif -/* First, we deal with  platform-specific or compiler-specific issues. */ - -/* begin standard C headers. */  #include <stdio.h> -#include <string.h> -#include <errno.h> -#include <stdlib.h> - -/* end standard C headers. */ - -/* flex integer type definitions */ - -#ifndef FLEXINT_H -#define FLEXINT_H - -/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ - -#if __STDC_VERSION__ >= 199901L - -/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, - * if you want the limit (max/min) macros for int types.  - */ -#ifndef __STDC_LIMIT_MACROS -#define __STDC_LIMIT_MACROS 1 -#endif +#include <unistd.h> -#include <inttypes.h> -typedef int8_t flex_int8_t; -typedef uint8_t flex_uint8_t; -typedef int16_t flex_int16_t; -typedef uint16_t flex_uint16_t; -typedef int32_t flex_int32_t; -typedef uint32_t flex_uint32_t; -#else -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; -#endif /* ! C99 */ -/* Limits of integral types. */ -#ifndef INT8_MIN -#define INT8_MIN               (-128) -#endif -#ifndef INT16_MIN -#define INT16_MIN              (-32767-1) -#endif -#ifndef INT32_MIN -#define INT32_MIN              (-2147483647-1) +/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */ +#ifdef c_plusplus +#ifndef __cplusplus +#define __cplusplus  #endif -#ifndef INT8_MAX -#define INT8_MAX               (127) -#endif -#ifndef INT16_MAX -#define INT16_MAX              (32767) -#endif -#ifndef INT32_MAX -#define INT32_MAX              (2147483647) -#endif -#ifndef UINT8_MAX -#define UINT8_MAX              (255U) -#endif -#ifndef UINT16_MAX -#define UINT16_MAX             (65535U) -#endif -#ifndef UINT32_MAX -#define UINT32_MAX             (4294967295U)  #endif -#endif /* ! FLEXINT_H */  #ifdef __cplusplus +#include <stdlib.h> + +/* Use prototypes in function declarations. */ +#define YY_USE_PROTOS +  /* The "const" storage-class-modifier is valid. */  #define YY_USE_CONST @@ -96,17 +53,34 @@ typedef unsigned int flex_uint32_t;  #if __STDC__ +#define YY_USE_PROTOS  #define YY_USE_CONST  #endif	/* __STDC__ */  #endif	/* ! __cplusplus */ +#ifdef __TURBOC__ + #pragma warn -rch + #pragma warn -use +#include <io.h> +#include <stdlib.h> +#define YY_USE_CONST +#define YY_USE_PROTOS +#endif +  #ifdef YY_USE_CONST  #define yyconst const  #else  #define yyconst  #endif + +#ifdef YY_USE_PROTOS +#define YY_PROTO(proto) proto +#else +#define YY_PROTO(proto) () +#endif +  /* Returned upon end-of-file. */  #define YY_NULL 0 @@ -121,88 +95,80 @@ typedef unsigned int flex_uint32_t;   * but we do it the disgusting crufty way forced on us by the ()-less   * definition of BEGIN.   */ -#define BEGIN (yy_start) = 1 + 2 * +#define BEGIN yy_start = 1 + 2 *  /* Translate the current start state into a value that can be later handed   * to BEGIN to return to the state.  The YYSTATE alias is for lex   * compatibility.   */ -#define YY_START (((yy_start) - 1) / 2) +#define YY_START ((yy_start - 1) / 2)  #define YYSTATE YY_START  /* Action number for EOF rule of a given start state. */  #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)  /* Special action meaning "start processing a new file". */ -#define YY_NEW_FILE llvmAsmrestart(llvmAsmin  ) +#define YY_NEW_FILE yyrestart( yyin )  #define YY_END_OF_BUFFER_CHAR 0  /* Size of default input buffer. */ -#ifndef YY_BUF_SIZE  #define YY_BUF_SIZE (16384*64) -#endif -/* The state buf must be large enough to hold one state per character in the main buffer. - */ -#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) - -#ifndef YY_TYPEDEF_YY_BUFFER_STATE -#define YY_TYPEDEF_YY_BUFFER_STATE  typedef struct yy_buffer_state *YY_BUFFER_STATE; -#endif - -extern int llvmAsmleng; -extern FILE *llvmAsmin, *llvmAsmout; +extern int yyleng; +extern FILE *yyin, *yyout;  #define EOB_ACT_CONTINUE_SCAN 0  #define EOB_ACT_END_OF_FILE 1  #define EOB_ACT_LAST_MATCH 2 -    /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires -     *       access to the local variable yy_act. Since yyless() is a macro, it would break -     *       existing scanners that call yyless() from OUTSIDE llvmAsmlex.  -     *       One obvious solution it to make yy_act a global. I tried that, and saw -     *       a 5% performance hit in a non-llvmAsmlineno scanner, because yy_act is -     *       normally declared as a register variable-- so it is not worth it. -     */ -    #define  YY_LESS_LINENO(n) \ -            do { \ -                int yyl;\ -                for ( yyl = n; yyl < llvmAsmleng; ++yyl )\ -                    if ( llvmAsmtext[yyl] == '\n' )\ -                        --llvmAsmlineno;\ -            }while(0) -     -/* Return all but the first "n" matched characters back to the input stream. */ +/* The funky do-while in the following #define is used to turn the definition + * int a single C statement (which needs a semi-colon terminator).  This + * avoids problems with code like: + * + * 	if ( condition_holds ) + *		yyless( 5 ); + *	else + *		do_something_else(); + * + * Prior to using the do-while the compiler would get upset at the + * "else" because it interpreted the "if" statement as being all + * done when it reached the ';' after the yyless() call. + */ + +/* Return all but the first 'n' matched characters back to the input stream. */ +  #define yyless(n) \  	do \  		{ \ -		/* Undo effects of setting up llvmAsmtext. */ \ -        int yyless_macro_arg = (n); \ -        YY_LESS_LINENO(yyless_macro_arg);\ -		*yy_cp = (yy_hold_char); \ +		/* Undo effects of setting up yytext. */ \ +		*yy_cp = yy_hold_char; \  		YY_RESTORE_YY_MORE_OFFSET \ -		(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ -		YY_DO_BEFORE_ACTION; /* set up llvmAsmtext again */ \ +		yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \ +		YY_DO_BEFORE_ACTION; /* set up yytext again */ \  		} \  	while ( 0 ) -#define unput(c) yyunput( c, (yytext_ptr)  ) +#define unput(c) yyunput( c, yytext_ptr ) + +/* Some routines like yy_flex_realloc() are emitted as static but are +   not called by all lexers. This generates warnings in some compilers, +   notably GCC. Arrange to suppress these. */ +#ifdef __GNUC__ +#define YY_MAY_BE_UNUSED __attribute__((unused)) +#else +#define YY_MAY_BE_UNUSED +#endif  /* The following is because we cannot portably get our hands on size_t   * (without autoconf's help, which isn't available because we want   * flex-generated scanners to compile on their own).   */ - -#ifndef YY_TYPEDEF_YY_SIZE_T -#define YY_TYPEDEF_YY_SIZE_T  typedef unsigned int yy_size_t; -#endif -#ifndef YY_STRUCT_YY_BUFFER_STATE -#define YY_STRUCT_YY_BUFFER_STATE +  struct yy_buffer_state  	{  	FILE *yy_input_file; @@ -239,16 +205,12 @@ struct yy_buffer_state  	 */  	int yy_at_bol; -    int yy_bs_lineno; /**< The line count. */ -    int yy_bs_column; /**< The column count. */ -      	/* Whether to try to fill the input buffer when we reach the  	 * end of it.  	 */  	int yy_fill_buffer;  	int yy_buffer_status; -  #define YY_BUFFER_NEW 0  #define YY_BUFFER_NORMAL 1  	/* When an EOF's been seen but there's still some text to process @@ -258,203 +220,199 @@ struct yy_buffer_state  	 * possible backing-up.  	 *  	 * When we actually see the EOF, we change the status to "new" -	 * (via llvmAsmrestart()), so that the user can continue scanning by -	 * just pointing llvmAsmin at a new input file. +	 * (via yyrestart()), so that the user can continue scanning by +	 * just pointing yyin at a new input file.  	 */  #define YY_BUFFER_EOF_PENDING 2 -  	}; -#endif /* !YY_STRUCT_YY_BUFFER_STATE */ -/* Stack of input buffers. */ -static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ -static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ -static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ +static YY_BUFFER_STATE yy_current_buffer = 0;  /* We provide macros for accessing buffer states in case in the   * future we want to put the buffer states in a more general   * "scanner state". - * - * Returns the top of the stack, or NULL.   */ -#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ -                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ -                          : NULL) +#define YY_CURRENT_BUFFER yy_current_buffer -/* Same as previous macro, but useful when we know that the buffer stack is not - * NULL or when we need an lvalue. For internal use only. - */ -#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] -/* yy_hold_char holds the character lost when llvmAsmtext is formed. */ +/* yy_hold_char holds the character lost when yytext is formed. */  static char yy_hold_char; +  static int yy_n_chars;		/* number of characters read into yy_ch_buf */ -int llvmAsmleng; + + +int yyleng;  /* Points to current character in buffer. */  static char *yy_c_buf_p = (char *) 0; -static int yy_init = 0;		/* whether we need to initialize */ +static int yy_init = 1;		/* whether we need to initialize */  static int yy_start = 0;	/* start state number */ -/* Flag which is used to allow llvmAsmwrap()'s to do buffer switches - * instead of setting up a fresh llvmAsmin.  A bit of a hack ... +/* Flag which is used to allow yywrap()'s to do buffer switches + * instead of setting up a fresh yyin.  A bit of a hack ...   */  static int yy_did_buffer_switch_on_eof; -void llvmAsmrestart (FILE *input_file  ); -void llvmAsm_switch_to_buffer (YY_BUFFER_STATE new_buffer  ); -YY_BUFFER_STATE llvmAsm_create_buffer (FILE *file,int size  ); -void llvmAsm_delete_buffer (YY_BUFFER_STATE b  ); -void llvmAsm_flush_buffer (YY_BUFFER_STATE b  ); -void llvmAsmpush_buffer_state (YY_BUFFER_STATE new_buffer  ); -void llvmAsmpop_buffer_state (void ); +void yyrestart YY_PROTO(( FILE *input_file )); -static void llvmAsmensure_buffer_stack (void ); -static void llvmAsm_load_buffer_state (void ); -static void llvmAsm_init_buffer (YY_BUFFER_STATE b,FILE *file  ); +void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer )); +void yy_load_buffer_state YY_PROTO(( void )); +YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size )); +void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b )); +void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file )); +void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b )); +#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer ) -#define YY_FLUSH_BUFFER llvmAsm_flush_buffer(YY_CURRENT_BUFFER ) +YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size )); +YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str )); +YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len )); -YY_BUFFER_STATE llvmAsm_scan_buffer (char *base,yy_size_t size  ); -YY_BUFFER_STATE llvmAsm_scan_string (yyconst char *yy_str  ); -YY_BUFFER_STATE llvmAsm_scan_bytes (yyconst char *bytes,int len  ); +static void *yy_flex_alloc YY_PROTO(( yy_size_t )); +static inline void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) YY_MAY_BE_UNUSED; +static void yy_flex_free YY_PROTO(( void * )); -void *llvmAsmalloc (yy_size_t  ); -void *llvmAsmrealloc (void *,yy_size_t  ); -void llvmAsmfree (void *  ); - -#define yy_new_buffer llvmAsm_create_buffer +#define yy_new_buffer yy_create_buffer  #define yy_set_interactive(is_interactive) \  	{ \ -	if ( ! YY_CURRENT_BUFFER ){ \ -        llvmAsmensure_buffer_stack (); \ -		YY_CURRENT_BUFFER_LVALUE =    \ -            llvmAsm_create_buffer(llvmAsmin,YY_BUF_SIZE ); \ -	} \ -	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ +	if ( ! yy_current_buffer ) \ +		yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ +	yy_current_buffer->yy_is_interactive = is_interactive; \  	}  #define yy_set_bol(at_bol) \  	{ \ -	if ( ! YY_CURRENT_BUFFER ){\ -        llvmAsmensure_buffer_stack (); \ -		YY_CURRENT_BUFFER_LVALUE =    \ -            llvmAsm_create_buffer(llvmAsmin,YY_BUF_SIZE ); \ -	} \ -	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ +	if ( ! yy_current_buffer ) \ +		yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ +	yy_current_buffer->yy_at_bol = at_bol; \  	} -#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) +#define YY_AT_BOL() (yy_current_buffer->yy_at_bol) -/* Begin user sect3 */ -#define llvmAsmwrap(n) 1 -#define YY_SKIP_YYWRAP +#define YY_USES_REJECT +#define yywrap() 1 +#define YY_SKIP_YYWRAP  typedef unsigned char YY_CHAR; - -FILE *llvmAsmin = (FILE *) 0, *llvmAsmout = (FILE *) 0; - +FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;  typedef int yy_state_type; +extern int yylineno; +int yylineno = 1; +extern char *yytext; +#define yytext_ptr yytext -extern int llvmAsmlineno; - -int llvmAsmlineno = 1; - -extern char *llvmAsmtext; -#define yytext_ptr llvmAsmtext - -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 yy_state_type yy_get_previous_state YY_PROTO(( void )); +static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state )); +static int yy_get_next_buffer YY_PROTO(( void )); +static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));  /* Done after the current pattern has been matched and before the - * corresponding action - sets up llvmAsmtext. + * corresponding action - sets up yytext.   */  #define YY_DO_BEFORE_ACTION \ -	(yytext_ptr) = yy_bp; \ -	llvmAsmleng = (size_t) (yy_cp - yy_bp); \ -	(yy_hold_char) = *yy_cp; \ +	yytext_ptr = yy_bp; \ +	yyleng = (int) (yy_cp - yy_bp); \ +	yy_hold_char = *yy_cp; \  	*yy_cp = '\0'; \ -	(yy_c_buf_p) = yy_cp; +	yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 136 -#define YY_END_OF_BUFFER 137 -/* This struct is not used in this scanner, -   but its presence is necessary. */ -struct yy_trans_info -	{ -	flex_int32_t yy_verify; -	flex_int32_t yy_nxt; -	}; -static yyconst flex_int16_t yy_accept[557] = +#define YY_NUM_RULES 135 +#define YY_END_OF_BUFFER 136 +static yyconst short int yy_acclist[215] =      {   0, -        0,    0,  137,  135,  134,  134,  135,  135,  135,  135, -      135,  135,  127,  127,    1,  135,  135,  135,  135,  135, -      135,  135,  135,  135,  135,  135,  135,  135,  135,  135, -      135,  135,  135,  135,  135,  135,  135,    0,  126,    0, -      124,  123,  123,  130,    0,  128,    0,  132,  127,    0, -        1,    0,    0,    0,    0,    0,    0,    0,    0,  109, -        0,   40,    0,    0,    0,    0,    0,    0,    0,   69, -        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, -       54,    0,    0,    0,    0,    0,    0,    0,    0,    0, -        0,   70,    0,    0,    0,    0,    0,    0,   65,    0, - -        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, -        0,    0,    0,    0,    0,   24,    0,    0,    0,    0, -        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, -        0,  126,  123,  123,  132,   21,  132,    0,  133,   55, -        0,    0,   64,    0,    0,   38,    0,   33,    0,    0, -        0,   41,    0,    0,    0,    0,    0,    0,    0,    0, -        0,    3,    0,    0,    0,    0,    0,    0,    0,    0, -        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, -        0,    0,    0,    0,    0,    0,   57,    0,   79,   84, -       82,   83,   81,   80,    0,   85,   89,    0,    0,  108, - -        0,    0,    0,    0,    0,   74,   72,  104,    0,    0, -        0,   73,   71,    0,    0,   56,    0,    0,    0,    0, -        0,    0,    0,   87,   78,   76,    0,   77,   75,    0, -       88,   86,    0,    0,    0,    0,    0,    0,    0,    0, -       66,    0,    0,  125,  132,    0,    0,    0,  132,    0, -        0,    0,  106,    0,    0,   48,   90,    0,    0,    0, -        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, -        0,    0,   68,   60,    0,    0,    0,    0,  116,   63, -        0,    0,    0,   67,    0,    0,    0,    0,    0,    0, -        0,    0,  117,  105,    0,    0,   23,    0,    0,    0, - -      129,   59,    0,    0,   93,    0,    0,    0,   62,    0, -        0,   25,    0,    0,    4,    0,   52,   58,    0,    0, -        0,    0,   61,    0,   47,    0,   12,    0,    0,   92, -      132,   35,    0,    0,    2,    0,    0,    0,    0,    0, -        0,    0,    0,    0,    0,    0,    0,    0,    0,    5, -        0,   49,   95,    0,    0,    0,    0,    0,    0,    0, -        0,    0,    0,    0,   51,    0,    0,    0,    0,    0, -        0,    0,    0,    0,    0,    0,    0,  118,    0,    0, -        0,   91,    0,   22,    0,    0,    0,    0,    0,    0, -        0,  115,    0,    0,   44,    0,    0,    0,    0,    7, - -        0,    0,    0,   50,   29,    0,    0,   43,   99,   98, -        0,    0,    8,   16,    0,    0,    0,    0,  111,    0, -       32,  114,   37,   53,    0,    0,    0,  103,    0,    0, -       97,  110,   26,   27,   96,    0,  112,  107,    0,    0, -        0,    0,    0,  102,    0,   42,    0,    6,   28,    0, -        0,    0,    0,    0,   94,    0,    0,    0,    0,    0, -        0,    0,    0,   36,    0,    0,    0,    0,    0,    0, -        0,    0,    9,    0,    0,    0,    0,   18,    0,    0, -        0,    0,   10,  100,   11,    0,  101,    0,    0,    0, -       34,    0,    0,    0,   13,    0,   15,   14,    0,    0, - -        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, -       31,    0,    0,    0,    0,    0,    0,    0,   39,    0, -        0,    0,    0,   17,    0,    0,    0,    0,   30,    0, -      113,    0,    0,    0,    0,    0,    0,    0,    0,    0, -        0,    0,    0,  119,    0,  121,  122,    0,   45,    0, -      120,   19,   46,    0,   20,    0 +      136,  134,  135,  133,  134,  135,  133,  135,  134,  135, +      134,  135,  134,  135,  134,  135,  134,  135,  134,  135, +      126,  134,  135,  126,  134,  135,    1,  134,  135,  134, +      135,  134,  135,  134,  135,  134,  135,  134,  135,  134, +      135,  134,  135,  134,  135,  134,  135,  134,  135,  134, +      135,  134,  135,  134,  135,  134,  135,  134,  135,  134, +      135,  134,  135,  134,  135,  134,  135,  134,  135,  134, +      135,  134,  135,  125,  123,  122,  122,  129,  127,  131, +      126,    1,  108,   40,   68,   53,   69,   64,   24,  125, +      122,  122,  130,  131,   21,  131,  132,   54,   63,   38, + +       33,   41,    3,   56,   78,   83,   81,   82,   80,   79, +       84,   88,  107,   73,   71,  103,   72,   70,   55,   86, +       77,   75,   76,   74,   87,   85,   65,  124,  131,  131, +      105,   89,   67,   59,  115,   62,   66,  116,  104,   23, +      128,   58,   92,   61,   25,    4,   51,   57,   60,   47, +       12,   91,  131,   35,    2,    5,   48,   94,   50,  117, +       90,   22,  114,   44,    7,   49,   29,   43,   98,   97, +        8,   16,  110,   32,  113,   37,   52,  102,   96,  109, +       26,   27,   95,  111,  106,  101,   42,    6,   28,   93, +       36,    9,   18,   10,   99,   11,  100,   34,   13,   15, + +       14,   31,   39,   17,   30,  112,  118,  120,  121,   45, +      119,   19,   46,   20      } ; -static yyconst flex_int32_t yy_ec[256] = +static yyconst short int yy_accept[555] = +    {   0, +        1,    1,    1,    2,    4,    7,    9,   11,   13,   15, +       17,   19,   21,   24,   27,   30,   32,   34,   36,   38, +       40,   42,   44,   46,   48,   50,   52,   54,   56,   58, +       60,   62,   64,   66,   68,   70,   72,   74,   74,   75, +       75,   76,   77,   78,   79,   79,   80,   80,   81,   82, +       82,   83,   83,   83,   83,   83,   83,   83,   83,   84, +       84,   85,   85,   85,   85,   85,   85,   85,   85,   86, +       86,   86,   86,   86,   86,   86,   86,   86,   86,   86, +       87,   87,   87,   87,   87,   87,   87,   87,   87,   87, +       87,   88,   88,   88,   88,   88,   88,   88,   89,   89, + +       89,   89,   89,   89,   89,   89,   89,   89,   89,   89, +       89,   89,   89,   89,   89,   90,   90,   90,   90,   90, +       90,   90,   90,   90,   90,   90,   90,   90,   90,   90, +       90,   91,   92,   94,   95,   96,   97,   97,   98,   99, +       99,   99,  100,  100,  100,  101,  101,  102,  102,  102, +      103,  103,  103,  103,  103,  103,  103,  103,  103,  103, +      104,  104,  104,  104,  104,  104,  104,  104,  104,  104, +      104,  104,  104,  104,  104,  104,  104,  104,  104,  104, +      104,  104,  104,  104,  104,  105,  105,  106,  107,  108, +      109,  110,  111,  111,  112,  113,  113,  113,  114,  114, + +      114,  114,  114,  114,  115,  116,  117,  117,  117,  117, +      118,  119,  119,  119,  120,  120,  120,  120,  120,  120, +      120,  120,  121,  122,  123,  123,  124,  125,  125,  126, +      127,  127,  127,  127,  127,  127,  127,  127,  127,  128, +      128,  128,  129,  130,  130,  130,  130,  131,  131,  131, +      131,  132,  132,  132,  133,  133,  133,  133,  133,  133, +      133,  133,  133,  133,  133,  133,  133,  133,  133,  133, +      134,  135,  135,  135,  135,  135,  136,  137,  137,  137, +      137,  138,  138,  138,  138,  138,  138,  138,  138,  138, +      139,  140,  140,  140,  141,  141,  141,  141,  142,  143, + +      143,  143,  144,  144,  144,  144,  145,  145,  145,  146, +      146,  146,  147,  147,  148,  149,  149,  149,  149,  149, +      150,  150,  151,  151,  152,  152,  152,  153,  154,  155, +      155,  155,  156,  156,  156,  156,  156,  156,  156,  156, +      156,  156,  156,  156,  156,  156,  156,  157,  157,  158, +      159,  159,  159,  159,  159,  159,  159,  159,  159,  159, +      159,  159,  160,  160,  160,  160,  160,  160,  160,  160, +      160,  160,  160,  160,  160,  161,  161,  161,  161,  162, +      162,  163,  163,  163,  163,  163,  163,  163,  163,  164, +      164,  164,  165,  165,  165,  165,  165,  166,  166,  166, + +      166,  167,  168,  168,  168,  169,  170,  171,  171,  171, +      172,  173,  173,  173,  173,  173,  174,  174,  175,  176, +      177,  178,  178,  178,  178,  179,  179,  179,  180,  181, +      182,  183,  184,  184,  185,  186,  186,  186,  186,  186, +      186,  187,  187,  188,  188,  189,  190,  190,  190,  190, +      190,  190,  191,  191,  191,  191,  191,  191,  191,  191, +      191,  192,  192,  192,  192,  192,  192,  192,  192,  192, +      193,  193,  193,  193,  193,  194,  194,  194,  194,  194, +      195,  196,  197,  197,  198,  198,  198,  198,  199,  199, +      199,  199,  200,  200,  201,  202,  202,  202,  202,  202, + +      202,  202,  202,  202,  202,  202,  202,  202,  203,  203, +      203,  203,  203,  203,  203,  203,  204,  204,  204,  204, +      204,  205,  205,  205,  205,  205,  206,  206,  207,  207, +      207,  207,  207,  207,  207,  207,  207,  207,  207,  207, +      207,  208,  208,  209,  210,  210,  211,  211,  212,  213, +      214,  214,  215,  215 +    } ; + +static yyconst int yy_ec[256] =      {   0,          1,    1,    1,    1,    1,    1,    1,    1,    2,    3,          1,    1,    2,    1,    1,    1,    1,    1,    1,    1, @@ -486,7 +444,7 @@ static yyconst flex_int32_t yy_ec[256] =          1,    1,    1,    1,    1      } ; -static yyconst flex_int32_t yy_meta[44] = +static yyconst int yy_meta[44] =      {   0,          1,    1,    2,    1,    3,    1,    1,    3,    3,    3,          3,    3,    3,    4,    1,    3,    3,    3,    3,    3, @@ -495,262 +453,261 @@ static yyconst flex_int32_t yy_meta[44] =          3,    3,    3      } ; -static yyconst flex_int16_t yy_base[562] = +static yyconst short int yy_base[559] =      {   0, -        0,    0, 1206, 1207, 1207, 1207, 1201, 1190,   36,   40, +        0,    0, 1200, 1201, 1201, 1201, 1195, 1184,   36,   40,         44,   50,   56,   62,    0,   63,   66,   81,   89,   47,        108,   91,   77,  134,   92,  119,   93,  152,  126,  109, -      178,  154,  209,  135,  111,  146,  112, 1199, 1207, 1188, -     1207,    0,  159,  198,  215,  236,   70,  241,  256,  261, -        0,   68,  147,  128,  165,  176,  166,  262,   31, 1187, -      168,  200,  206,   48,   72,  265,  170,  101,  208, 1186, -       73,  227,  203,  215,  180,  274,  139,  225,  229,  278, -      272,  276,  277,  280,  281,  290,  293,  282,  291,  300, -      295, 1185,  299,  122,  309,  311,  312,  317,  315,  316, - -      324,  304,  319,  301,  326,  331,  327,  330,  333,  340, -      335,  343,  347,  351,  352, 1184,  355,  348,  357,  360, -      362,  359,  366,  369,  372,  384,  383,  386,  181,  376, -      392, 1183,    0,  403,  407, 1182,  424,  441,    0, 1181, -      407,  393, 1180,  408,  394, 1179,  412, 1178,  429,  428, -      430, 1177,  442,  409,  444,  446,  432,  448,  449,  454, -      452,  455,  456,  457,  459,  462,  460,  466,  469,  470, -      474,  475,  472,  486,  473,  480,  489,  493,  487,  497, -      499,  500,  501,  503,  504,  507, 1176,  510, 1175, 1174, -     1173, 1172, 1171, 1170,  508, 1169, 1168,  512,  511, 1167, - -      539,  514,  517,  518,  520, 1166, 1165, 1164,  522,  521, -      515, 1163, 1162,  550,  551, 1161,  552,  553,  554,  555, -      560,  558,  556, 1160, 1159, 1158,  561, 1157, 1156,  562, -     1155, 1154,  564,  557,  576,  578,  580,  582,  584,  559, -     1153,  585,  586, 1207,  597,  614,  618,  622,  627,  628, -      590,  629, 1152,  630,  599, 1151, 1150,  631,  632,  633, -      634,  635,  636,  589,  637,  641,  639,  643,  642,  660, -      650,  644, 1149, 1148,  652,  658,  661,  662, 1147, 1146, -      667,  666,  668, 1145,  669,  670,  672,  674,  591,  673, -      676,  680, 1144, 1143,  679,  684, 1142,  687,  689,  690, - -        0, 1141,  696,  698, 1140,  700,  704,  706, 1139,  714, -      715, 1138,  717,  703, 1137,  720, 1136, 1135,  719,  721, -      702,  724, 1134,  725, 1133,  728, 1132,  730,  732, 1131, -      737, 1130,  737,  739, 1129,  738,  743,  744,  748,  753, -      754,  756,  757,  759,  761,  762,  764,  766,  767, 1128, -      769, 1127, 1126,  772,  773,  770,  768,  779,  782,  784, -      788,  789,  790,  792, 1125,  791,  793,  796,  795,  798, -      805,  797,  812,  813,  816,  815,  818, 1124,  414,  817, -      819, 1123,  820, 1122,  822,  824,  823,  833,  821,  827, -      835, 1121,  838,  841, 1120,  842,  847,  843,  844, 1119, - -      845,  848,  855, 1118, 1117,  856,  849, 1116, 1115, 1114, -      858,  862, 1113, 1112,  868,  870,  869,  857, 1111,  875, -     1110, 1109, 1108, 1107,  863,  876,  881, 1106,  883,  885, -     1105, 1104, 1103, 1102, 1101,  887, 1100, 1099,  886,  888, -      889,  890,  891, 1098,  894, 1097,  896, 1096, 1095,  900, -      902,  904,  905,  906, 1094,  907,  909,  912,  913,  911, -      922,  918,  919, 1093,  924,  925,  933,  935,  929,  936, -      937,  939, 1092,  941,  945,  946,  947, 1091,  948,  953, -      951,  955, 1090, 1089, 1088,  954, 1085,  957,  971,  973, -     1076,  975,  972,  976, 1073,  958, 1072, 1071,  980,  983, - -      961,  986,  987,  959,  990,  993,  994,  995,  996,  999, -     1068,  998, 1001, 1002, 1005, 1006, 1010, 1007, 1067, 1013, -     1008, 1014, 1018, 1064, 1025, 1020, 1024, 1027, 1063, 1031, -     1060, 1026, 1032, 1035, 1036, 1038, 1040, 1042, 1045, 1047, -     1050, 1046, 1051,  962, 1052,  701,  601, 1055,  526, 1061, -      476,  374,  246, 1056,  245, 1207, 1091, 1093,  254, 1097, -       57 +      178,  154,  209,  135,  111,  146,  112, 1193, 1201, 1182, +     1201,    0,  159,  198,  215,  236,   70,  241,  256,  261, +        0,   68,  147,  128,  165,  176,   73,  262, 1181,   31, +      170,  166,   48,   49,  265,  185,  101,  198, 1180,  180, +      227,  207,  208,  225,  274,  139,  276,  228,  278,  272, +      229,  277,  280,  281,  290,  293,  282,  291,  292,  295, +     1179,  301,  122,  308,  309,  311,  314,  304,  315,  321, + +      322,  323,  324,  325,  326,  327,  330,  329,  335,  339, +      342,  349,  356,  357, 1178,  359,  347,  361,  362,  364, +      340,  367,  371,  368,  215,  381,  386,  395,  384,  385, +     1177,    0,  402,  411, 1176,  425,  442,    0, 1175,  168, +      411, 1174,  404,  416, 1173,  375, 1172,  419,  402, 1171, +      443,  427,  444,  445,  403,  433,  415,  447,  448,  452, +      455,  457,  458,  459,  461,  462,  463,  466,  473,  468, +      469,  472,  474,  470,  483,  488,  491,  494,  496,  495, +      498,  499,  500,  501, 1170,  502, 1169, 1168, 1167, 1166, +     1165, 1164,  504, 1163, 1162,  505,  507, 1161,  535,  514, + +      512,  519,  513, 1160, 1159, 1158,  516,  546,  529, 1157, +     1156,  548,  549, 1155,  527,  508,  551,  552,  556,  554, +      553, 1154, 1153, 1152,  557, 1151, 1150,  558, 1149, 1148, +      559,  561,  560,  572,  579,  580,  569,  582, 1147,  566, +      581, 1201,  592,  600,  609,  613,  618,  602,  620,  621, +     1146,  622,  623, 1145,  624,  603,  625,  629,  630,  632, +      633,  634,  636,  640,  637,  641,  645,  647,  651, 1144, +     1143,  643,  653,  657,  654, 1142, 1141,  659,  660,  663, +     1140,  664,  667,  668,  669,  670,  671,  675,  677, 1139, +     1138,  680,  682, 1137,  683,  685,  691,    0, 1136,  690, + +      694, 1135,  695,  702,  696, 1134,  704,  710, 1133,  712, +      699, 1132,  715, 1131, 1130,  716,  718,  719,  720, 1129, +      723, 1128,  725, 1127,  729,  727, 1126,  734, 1125,  736, +      592, 1124,  734,  735,  738,  745,  749,  746,  750,  747, +      755,  757,  760,  758,  761,  763, 1123,  764, 1122, 1121, +      766,  768,  765,  777,  772,  773,  780,  762,  783,  784, +      788, 1120,  789,  792,  791,  793,  795,  799,  794,  805, +      809,  810,  811,  812, 1119,  814,  813,  815, 1118,  816, +     1117,  820,  822,  817,  829,  833,  818,  834, 1116,  837, +      839, 1115,  840,  845,  819,  844, 1114,  843,  846,  848, + +     1113, 1112,  854,  849, 1111, 1110, 1109,  856,  855, 1108, +     1107,  860,  861,  868,  867, 1106,  874, 1105, 1104, 1103, +     1102,  875,  876,  877, 1101,  878,  879, 1100, 1099, 1098, +     1097, 1096,  880, 1095, 1094,  882,  883,  891,  885,  884, +     1093,  886, 1092,  888, 1091, 1090,  895,  900,  902,  903, +      904, 1089,  908,  907,  910,  911,  912,  914,  915,  919, +     1086,  920,  922,  927,  929,  930,  934,  935,  936, 1077, +      939,  943,  944,  940, 1076,  946,  948,  950,  951, 1075, +     1073, 1071,  955, 1070,  962,  952,  964, 1069,  969,  972, +      974, 1068,  956, 1067, 1064,  975,  981,  978,  983,  982, + +      957,  984,  985,  989,  992,  994,  995, 1063,  993,  996, +      999, 1002, 1005, 1006, 1003, 1062, 1010, 1013, 1016, 1017, +     1058, 1011, 1021, 1022, 1023,  954, 1024,  700, 1030, 1027, +     1033, 1036, 1029, 1037, 1038, 1039, 1041, 1047, 1043, 1051, +      521, 1049,  471,  432, 1052,  431, 1056,  365,  248,  247, +     1057,  216, 1201, 1092, 1094,  107, 1098,  106      } ; -static yyconst flex_int16_t yy_def[562] = +static yyconst short int yy_def[559] =      {   0, -      556,    1,  556,  556,  556,  556,  557,  558,  559,  556, -      558,  558,  558,  558,  560,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  557,  556,  558, -      556,  561,  561,  556,  556,  558,  558,  558,  558,  558, -      560,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -       24,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, - -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  556,  561,  561,  556,  558,  558,  558,   50,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, - -       50,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  556,  556,  556,  556,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, - -      201,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      556,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, - -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, - -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,  558,  558,  558,  558,  558, -      558,  558,  558,  558,  558,    0,  556,  556,  556,  556, -      556 +      553,    1,  553,  553,  553,  553,  554,  555,  556,  553, +      555,  555,  555,  555,  557,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  554,  553,  555, +      553,  558,  558,  553,  553,  555,  555,  555,  555,  555, +      557,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,   24, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, + +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      553,  558,  558,  553,  555,  555,  555,   50,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,   50,  555, + +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  553,  553,  553,  553,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  199,  555,  555, + +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  553,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, + +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, + +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,  555,  555,  555,  555,  555,  555,  555,  555, +      555,  555,    0,  553,  553,  553,  553,  553      } ; -static yyconst flex_int16_t yy_nxt[1251] = +static yyconst short int yy_nxt[1245] =      {   0,          4,    5,    6,    7,    8,    9,   10,   11,   12,   13,         14,   14,   14,    4,   15,    8,    8,    8,   16,   17,         18,   19,   20,   21,   22,   23,   24,    8,   25,   26,         27,   28,   29,    8,   30,   31,   32,   33,   34,   35,         36,    8,   37,   43,   41,   44,   44,   44,   44,   45, -       45,   45,   45,   46,   46,   46,   46,   41,   47,  133, -       41,   41,  150,   41,   48,   49,   49,   49,   49,   41, -       48,   49,   49,   49,   49,   41,   41,   69,  136,   41, -       70,   41,  155,   41,   52,   41,   41,   71,   57,  140, -       41,   53,   58,   54,   41,   55,   50,   59,   56,   61, - -       60,   62,   41,   80,   41,   41,   41,   65,  156,  163, -       85,   66,   63,   78,   41,   92,   64,   67,   86,   79, -       68,   41,   41,   87,   41,   41,   72,   88,   73,   74, -       93,  103,   41,  128,  131,   41,   75,   89,  161,   41, -       76,   41,   77,   81,   81,   81,   81,   41,   41,  143, -       90,  100,   41,  126,   82,  189,   91,  101,  129,   41, -       41,  171,  102,   83,   84,   41,  127,   41,  134,  134, -      134,  134,  115,  141,   94,  142,   95,  130,   41,   41, -       96,   41,   97,   41,   98,  116,   99,  104,  117,   41, -      147,   41,  240,   41,   41,  118,  151,  144,  160,  105, - -      106,  145,  107,  108,  109,  146,  110,   44,   44,   44, -       44,  168,  111,   41,  112,  113,   41,  114,  104,   41, -      152,   41,   41,  135,   45,   45,   45,   45,   41,  162, -      119,  120,  166,  121,  153,  122,  154,  123,   41,  124, -       41,  167,   41,  125,   48,   46,   46,   46,   46,   41, -      137,  137,  137,  137,   41,  164,   42,  138,   41,   41, -      173,  172,  165,  138,   48,   49,   49,   49,   49,   41, -      139,  139,  139,  139,   41,   41,  139,  139,   41,  139, -      139,  139,  139,  139,  139,  157,  148,   41,  158,   41, -       41,   41,   40,   41,   41,   41,  169,  159,  149,  174, - -      180,   40,   40,   41,   41,  175,   41,  184,   41,  176, -      170,  183,   41,   41,   41,  177,  178,   41,  179,  185, -      181,  186,   41,  187,   41,   41,  182,  188,   41,   41, -       41,  190,   41,  192,  194,  195,  196,   41,  199,   41, -       41,  201,  197,   41,   41,  191,   41,  193,   41,  206, -      198,  203,  202,   41,  210,  200,   41,  214,  208,  204, -       41,   41,  212,  207,   41,   41,  216,  209,   41,  211, -       41,  205,   41,   41,  215,   41,  213,  217,  218,   41, -      222,  220,   41,  223,  225,   41,  219,   41,  228,   41, -      230,  231,  221,  224,  235,  227,   41,   41,  226,   41, - -      232,  236,  229,  233,  239,   41,   41,   41,  234,  237, -      241,  238,  134,  134,  134,  134,  245,  245,  245,  245, -       41,   41,   41,  246,  251,   41,  242,   41,  253,  246, -      252,  250,  243,  137,  137,  137,  137,   41,  254,  432, -      138,   41,   41,   41,  259,   41,  138,  247,  248,  255, -      249,  249,  249,  249,   41,   41,  256,   41,  257,   41, -      262,   41,   41,  258,  261,   41,  260,   41,   41,   41, -       41,  267,   41,   41,  263,   41,  265,  264,  269,   41, -      266,  268,   41,   41,  275,   41,   41,   41,   41,   41, -      270,  282,  271,   41,  273,  272,  279,  281,  274,   41, - -       41,  277,   41,  280,  278,  284,   41,  283,  285,  276, -       41,  286,   41,   41,   41,  287,   41,   41,  289,  290, -       41,   41,  293,   41,   41,   41,  291,   41,   41,  288, -       41,   41,  295,   41,   41,   41,  292,  294,  297,   41, -      304,  298,  299,  307,  296,  306,  308,  300,  301,  301, -      301,  301,  302,  303,  301,  301,  305,  301,  301,  301, -      301,  301,  301,   41,   41,   41,   41,   41,   41,   41, -       41,   41,   41,   41,   41,   41,  328,   41,  313,  309, -      317,  312,  315,  322,  320,  310,  321,  314,  311,   41, -      316,   41,  319,   41,  318,   41,  324,   41,   41,   41, - -      326,  325,   41,   41,   41,  323,  245,  245,  245,  245, -      333,  327,   41,  246,   41,  343,  329,  336,  364,  246, -      247,  247,  330,  331,  331,  331,  331,  331,  331,  331, -      331,  249,  249,  249,  249,   41,  249,  249,  249,  249, +       45,   45,   45,   46,   46,   46,   46,   41,   47,  149, +       41,   41,   41,   41,   48,   49,   49,   49,   49,   41, +       48,   49,   49,   49,   49,   41,   41,   68,  135,   41, +       69,   41,  153,   41,   52,  154,   41,   70,   57,  139, +       41,   53,   58,   54,   41,   55,   50,  146,   56,   60, + +       59,   61,   41,   79,   41,   41,   41,   64,  132,   42, +       84,   65,   62,   77,   41,   91,   63,   66,   85,   78, +       67,   41,   41,   86,   41,   41,   71,   87,   72,   73, +       92,  102,   41,  127,  130,   41,   74,   88,  159,   41, +       75,   41,   76,   80,   80,   80,   80,   41,   41,  142, +       89,   99,   41,  125,   81,  187,   90,  100,  128,   41, +       41,  169,  101,   82,   83,   41,  126,   41,  133,  133, +      133,  133,  114,  140,   93,  141,   94,  129,   41,   41, +       95,   41,   96,   41,   97,  115,   98,  103,  116,   41, +      150,   41,  248,   41,  151,  117,  152,  143,   41,  104, + +      105,  144,  106,  107,  108,  145,  109,   44,   44,   44, +       44,   41,  110,  158,  111,  112,  161,  113,  103,  160, +       41,   41,   41,  134,   45,   45,   45,   45,   41,   41, +      118,  119,  234,  120,  165,  121,  164,  122,   41,  123, +       41,   41,   41,  124,   48,   46,   46,   46,   46,   41, +      136,  136,  136,  136,   41,  162,  166,  137,  173,  171, +       41,   41,  163,  137,   48,   49,   49,   49,   49,   41, +      138,  138,  138,  138,   41,   41,  138,  138,   41,  138, +      138,  138,  138,  138,  138,  155,  147,   41,  156,   41, +       41,   41,   40,   41,   41,   41,  167,  157,  148,  172, + +      178,   40,   40,   41,   41,   41,   41,  182,   41,  174, +      168,  181,  170,  184,   41,  175,  176,   41,  177,  183, +      179,   41,   41,  185,   41,  194,  180,   41,   41,  186, +      188,  190,  193,  192,   41,   41,   41,   41,   41,   41, +       41,  195,   41,   41,  189,  191,  201,  196,   41,  204, +      208,  200,   41,   41,  202,   41,  197,  210,  206,  198, +       41,  212,   41,  205,  199,  209,  203,  207,  214,   41, +       41,  211,   41,  213,   41,   41,  225,   41,   41,  220, +       41,   41,  215,  216,   41,  218,  223,  221,   41,  226, +      233,  217,  228,  229,   41,  222,  219,   41,   41,   41, + +      224,  252,  230,  227,  237,  231,  238,  235,   41,  236, +      232,  133,  133,  133,  133,   41,   41,   41,  239,  240, +      243,  243,  243,  243,   41,  241,  250,  244,   41,   41, +      254,  259,   41,  244,  136,  136,  136,  136,   41,  253, +       41,  137,  249,  261,   41,   41,   41,  137,  245,  246, +      251,  247,  247,  247,  247,   41,   41,   41,   41,  260, +       41,   41,  256,  258,  255,   41,  257,  264,   41,  262, +       41,   41,   41,  263,   41,   41,   41,  266,  265,   41, +      272,   41,   41,   41,   41,   41,   41,   41,  279,  267, +      278,  270,  268,  280,  269,  276,   41,  274,  282,  271, + +      275,   41,  277,  273,   41,  283,  281,   41,   41,   41, +      284,   41,   41,   41,   41,   41,  287,   41,   41,  290, +       41,   41,  286,  288,  285,   41,   41,   41,  292,   41, +      294,  289,   41,  291,   41,  296,  309,  295,  293,  303, +       41,  301,   41,  297,  298,  298,  298,  298,  300,  302, +      298,  298,  299,  298,  298,  298,  298,  298,  298,   41, +      305,   41,   41,  308,   41,   41,   41,   41,  304,   41, +       41,   41,   41,   41,   41,  310,  314,  306,  312,   41, +      317,  318,   41,  307,  311,   41,  313,  319,  316,  320, +      321,  315,   41,   41,   41,   41,  324,  326,  323,  325, + +      322,  243,  243,  243,  243,   41,  245,  245,  244,  328, +      328,  328,  328,  390,  244,   41,   41,  327,  328,  328, +      328,  328,  247,  247,  247,  247,   41,  247,  247,  247, +      247,   41,  329,   41,   41,   41,   41,   41,   41,  335, +      330,  333,   41,   41,  334,   41,   41,   41,  338,   41, +       41,  331,  332,   41,   41,  344,   41,  337,   41,  340, +       41,  336,  339,  346,   41,  342,   41,   41,  343,  347, +       41,  348,   41,   41,  341,  345,   41,   41,  355,  349, +       41,   41,   41,   41,   41,  356,  357,  354,   41,  350, +       41,  353,  351,   41,  352,   41,   41,  361,   41,  362, + +      360,  358,  359,   41,   41,  364,  363,   41,   41,   41, +      366,  365,   41,   41,  371,   41,  370,   41,  372,  374, +      367,  368,  369,   41,  373,   41,  375,  378,   41,   41, +      376,   41,   41,   41,  377,  379,   41,  382,   41,  380, +       41,  381,   41,  328,  328,  328,  328,   41,   41,   41, +      383,   41,  386,  388,  389,  392,  393,  384,   41,   41, +       41,  385,   41,   41,  387,  394,  398,  395,   41,  391, +       41,   41,  397,   41,   41,   41,   41,   41,   41,   41, +      396,   41,  401,  404,  405,   41,   41,  399,  402,  400, +       41,  403,  406,   41,  407,  408,   41,   41,  413,  409, + +      410,   41,   41,  411,   41,   41,   41,   41,   41,  412, +      416,  419,   41,  414,  418,  420,  415,  421,   41,  417, +      423,  422,   41,   41,   41,   41,   41,   41,   41,   41, +       41,   41,   41,   41,  427,   41,  424,  431,  426,  429, +      433,  435,   41,  434,  428,  425,   41,   41,  432,  430, +       41,  437,   41,   41,  438,  436,   41,   41,   41,   41, +      444,   41,   41,  440,  439,  443,  445,   41,   41,   41, +      442,  449,  450,   41,   41,  441,  452,  447,  446,  448, +       41,   41,  454,  455,  453,  451,  456,   41,   41,   41, +       41,   41,   41,   41,  458,   41,   41,   41,   41,   41, + +      462,   41,  463,  457,   41,  464,  460,  461,   41,  459, +      465,  468,  467,   41,  469,   41,   41,   41,  466,  471, +       41,   41,  470,   41,   41,   41,  476,   41,   41,  472, +      477,  475,   41,   41,  473,   41,  482,  478,  479,  480, +       41,  474,   41,   41,  486,  487,  481,   41,   41,   41, +      483,  488,   41,   41,  490,  484,   41,   41,  485,   41, +      492,   41,  496,   41,   41,   41,  489,   41,   41,   41, +       41,  491,  503,  500,  497,   41,  493,   41,  498,  494, +      495,  501,   41,  504,  502,   41,  499,   41,   41,  505, +      506,   41,  508,  509,   41,   41,   41,   41,   41,  514, + +      507,  512,   41,  510,  515,   41,   41,   41,   41,   41, +      518,  513,   41,  520,  511,   41,   41,  517,   41,   41, +      521,  516,  519,   41,   41,  522,   41,  525,  526,   41, +       41,  523,  528,  532,   41,   41,   41,   41,  524,  527, +       41,  529,   41,   41,  530,  531,   41,  538,  534,   41, +       41,   41,   41,  535,   41,  536,   41,  533,  537,  539, +       41,  545,   41,  541,   41,   41,  540,  546,  542,   41, +       41,   41,  550,  544,  543,   41,   41,   41,  551,  549, +       41,   41,   41,   41,   41,  547,   41,  548,   41,   41, +       41,  552,   38,   38,   38,   38,   40,   40,   51,   41, + +       51,   51,   41,   41,   41,   41,   41,   41,   41,   41,         41,   41,   41,   41,   41,   41,   41,   41,   41,   41, -       41,  337,   41,  341,   41,   41,   41,   41,  332,  334, -      335,  347,  340,   41,  351,   41,  342,  346,  338,  339, -      345,   41,  350,   41,   41,   41,  348,  344,  349,   41, -       41,   41,   41,   41,  358,   41,   41,   41,  352,   41, -      359,  360,   41,   41,  353,  357,  354,   41,  355,  356, - -       41,  365,   41,   41,  361,  363,  362,  366,  367,   41, -      368,   41,  369,   41,   41,   41,   41,   41,  374,   41, -      385,  372,  373,  375,  370,  371,  376,   41,   41,  377, -       41,  381,   41,   41,   41,  379,  378,   41,   41,  380, -      382,   41,  383,   41,  384,   41,  331,  331,  331,  331, -       41,   41,   41,  389,  386,  392,   41,   41,  391,  387, -      393,   41,  396,  395,  388,  390,   41,   41,  397,   41, -       41,  398,   41,  394,   41,   41,  401,   41,  400,   41, -       41,   41,   41,   41,  404,   41,   41,  407,  399,  408, -      412,  402,   41,  403,  405,   41,  406,   41,  409,  410, - -      411,   41,   41,   41,   41,   41,   41,  413,   41,   41, -       41,   41,  414,  415,  419,  421,  422,  423,   41,  417, -      424,  420,  418,  426,  416,   41,   41,  425,   41,   41, -       41,   41,   41,   41,   41,   41,   41,   41,  430,  440, -       41,  434,  436,  427,  429,  437,   41,  438,   41,  428, -      431,   41,  435,  433,   41,   41,   41,   41,   41,  439, -       41,   41,   41,  441,  443,  442,  448,  446,   41,   41, -       41,   41,  445,  452,  453,   41,   41,  444,  455,  450, -      449,   41,   41,   41,  447,  454,  451,  459,   41,   41, -      457,  456,  458,  460,   41,  461,   41,  462,   41,   41, - -       41,   41,   41,   41,   41,  465,  463,   41,  466,   41, -      470,  464,  467,   41,  468,   41,  471,   41,   41,   41, -       41,  472,   41,  469,   41,   41,   41,  474,  479,  480, -      473,   41,   41,  478,  475,   41,  476,   41,   41,  481, -      482,  483,   41,  477,  485,  484,   41,  489,   41,   41, -       41,  490,   41,  486,   41,  487,  493,  491,   41,   41, -       41,   41,  488,  495,   41,  492,   41,   41,   41,  499, -       41,   41,   41,  494,   41,   41,  500,  503,  496,  505, -      504,  497,  498,  501,   41,   41,   41,  502,   41,   41, -      509,  506,  507,   41,  511,  508,   41,  514,  512,   41, - -       41,  517,  510,   41,  515,  513,   41,   41,   41,   41, -      518,   41,   41,  521,   41,   41,  516,  523,   41,   41, -       41,   41,  520,   41,  522,  524,   41,   41,  528,  519, -      525,   41,  529,   41,  526,  531,  532,   41,   41,   41, -       41,  527,  533,  530,   41,   41,  534,  535,   41,   41, -      537,   41,  541,   41,  540,   41,  536,  538,   41,   41, -       41,  542,  539,   41,   41,   41,  543,  548,   41,   41, -      549,  545,  544,   41,   41,  553,   41,   41,  546,  547, -       41,   41,  552,  554,   41,   41,   41,  551,  550,   41, -      555,   38,   38,   38,   38,   40,   40,   51,   41,   51, - -       51,   41,   41,   41,   41,   41,   41,   41,   41,   41,         41,   41,   41,   41,   41,   41,   41,   41,   41,   41,         41,   41,   41,   41,   41,   41,   41,   41,   41,   41,         41,   41,   41,   41,   41,   41,   41,   41,   41,   41, @@ -758,183 +715,172 @@ static yyconst flex_int16_t yy_nxt[1251] =         41,   41,   41,   41,   41,   41,   41,   41,   41,   41,         41,   41,   41,   41,   41,   41,   41,   41,   41,   41,         41,   41,   41,   41,   41,   41,   41,   41,   41,   41, -       41,   41,   41,   41,   41,   41,   41,   41,   41,   41, -       41,   41,   41,   41,   41,   41,  244,   41,   41,   41, +      242,   41,   41,   41,   41,   41,  131,   41,   39,  553, -       41,   41,  132,   41,   39,  556,    3,  556,  556,  556, -      556,  556,  556,  556,  556,  556,  556,  556,  556,  556, -      556,  556,  556,  556,  556,  556,  556,  556,  556,  556, -      556,  556,  556,  556,  556,  556,  556,  556,  556,  556, -      556,  556,  556,  556,  556,  556,  556,  556,  556,  556 +        3,  553,  553,  553,  553,  553,  553,  553,  553,  553, +      553,  553,  553,  553,  553,  553,  553,  553,  553,  553, +      553,  553,  553,  553,  553,  553,  553,  553,  553,  553, +      553,  553,  553,  553,  553,  553,  553,  553,  553,  553, +      553,  553,  553,  553      } ; -static yyconst flex_int16_t yy_chk[1251] = +static yyconst short int yy_chk[1245] =      {   0,          1,    1,    1,    1,    1,    1,    1,    1,    1,    1,          1,    1,    1,    1,    1,    1,    1,    1,    1,    1,          1,    1,    1,    1,    1,    1,    1,    1,    1,    1,          1,    1,    1,    1,    1,    1,    1,    1,    1,    1, -        1,    1,    1,    9,   59,    9,    9,    9,    9,   10, -       10,   10,   10,   11,   11,   11,   11,   11,   12,  561, -       20,   64,   59,   12,   13,   13,   13,   13,   13,   13, +        1,    1,    1,    9,   60,    9,    9,    9,    9,   10, +       10,   10,   10,   11,   11,   11,   11,   11,   12,   60, +       20,   63,   64,   12,   13,   13,   13,   13,   13,   13,         14,   14,   14,   14,   14,   14,   16,   20,   47,   17, -       20,   52,   64,   47,   16,   65,   71,   20,   17,   52, -       23,   16,   17,   16,   18,   16,   13,   17,   16,   18, +       20,   52,   63,   47,   16,   64,   57,   20,   17,   52, +       23,   16,   17,   16,   18,   16,   13,   57,   16,   18, -       17,   18,   19,   23,   22,   25,   27,   19,   65,   71, -       25,   19,   18,   22,   68,   27,   18,   19,   25,   22, +       17,   18,   19,   23,   22,   25,   27,   19,  558,  556, +       25,   19,   18,   22,   67,   27,   18,   19,   25,   22,         19,   21,   30,   25,   35,   37,   21,   25,   21,   21, -       27,   30,   26,   35,   37,   94,   21,   26,   68,   29, +       27,   30,   26,   35,   37,   93,   21,   26,   67,   29,         21,   54,   21,   24,   24,   24,   24,   24,   34,   54, -       26,   29,   77,   34,   24,   94,   26,   29,   36,   36, -       53,   77,   29,   24,   24,   28,   34,   32,   43,   43, -       43,   43,   32,   53,   28,   53,   28,   36,   55,   57, -       28,   61,   28,   67,   28,   32,   28,   31,   32,   56, -       57,   31,  129,   75,  129,   32,   61,   55,   67,   31, +       26,   29,   76,   34,   24,   93,   26,   29,   36,   36, +       53,   76,   29,   24,   24,   28,   34,   32,   43,   43, +       43,   43,   32,   53,   28,   53,   28,   36,   55,   62, +       28,  140,   28,   61,   28,   32,   28,   31,   32,   56, +       61,   31,  140,   70,   62,   32,   62,   55,   66,   31,         31,   56,   31,   31,   31,   56,   31,   44,   44,   44, -       44,   75,   31,   62,   31,   31,   73,   31,   33,   63, -       62,   69,   33,   45,   45,   45,   45,   45,   74,   69, -       33,   33,   73,   33,   63,   33,   63,   33,   78,   33, -       72,   74,   79,   33,   46,   46,   46,   46,   46,   46, -       48,   48,   48,   48,   48,   72,  559,   48,  555,  553, -       79,   78,   72,   48,   49,   49,   49,   49,   49,   49, -       50,   50,   50,   50,   50,   58,   50,   50,   66,   50, -       50,   50,   50,   50,   50,   66,   58,   76,   66,   82, -       83,   80,   81,   84,   85,   88,   76,   66,   58,   80, - -       85,   81,   81,   86,   89,   82,   87,   88,   91,   83, -       76,   87,   93,   90,  104,   84,   84,  102,   84,   89, -       86,   90,   95,   91,   96,   97,   86,   93,   99,  100, -       98,   95,  103,   96,   97,   98,   99,  101,  102,  105, -      107,  104,  100,  108,  106,   95,  109,   96,  111,  107, -      101,  106,  105,  110,  109,  103,  112,  111,  108,  106, -      113,  118,  110,  107,  114,  115,  113,  108,  117,  109, -      119,  106,  122,  120,  112,  121,  110,  114,  115,  123, -      118,  117,  124,  119,  121,  125,  115,  552,  123,  130, -      124,  124,  117,  120,  125,  122,  127,  126,  121,  128, - -      124,  126,  123,  124,  128,  131,  142,  145,  124,  127, -      130,  127,  134,  134,  134,  134,  135,  135,  135,  135, -      141,  144,  154,  135,  142,  147,  131,  379,  145,  135, -      144,  141,  131,  137,  137,  137,  137,  137,  147,  379, -      137,  150,  149,  151,  154,  157,  137,  138,  138,  149, -      138,  138,  138,  138,  138,  153,  150,  155,  151,  156, -      157,  158,  159,  153,  156,  161,  155,  160,  162,  163, -      164,  161,  165,  167,  158,  166,  160,  159,  163,  168, -      160,  162,  169,  170,  168,  173,  175,  171,  172,  551, -      163,  173,  164,  176,  166,  165,  171,  172,  167,  174, - -      179,  170,  177,  171,  170,  175,  178,  174,  176,  169, -      180,  177,  181,  182,  183,  178,  184,  185,  179,  180, -      186,  195,  183,  188,  199,  198,  181,  202,  211,  178, -      203,  204,  185,  205,  210,  209,  182,  184,  188,  549, -      204,  195,  198,  210,  186,  209,  211,  199,  201,  201, -      201,  201,  202,  203,  201,  201,  205,  201,  201,  201, -      201,  201,  201,  214,  215,  217,  218,  219,  220,  223, -      234,  222,  240,  221,  227,  230,  240,  233,  219,  214, -      222,  218,  221,  234,  230,  215,  233,  220,  217,  235, -      221,  236,  227,  237,  223,  238,  236,  239,  242,  243, - -      238,  237,  264,  251,  289,  235,  245,  245,  245,  245, -      251,  239,  255,  245,  547,  264,  242,  255,  289,  245, -      246,  246,  243,  246,  246,  246,  246,  247,  247,  247, -      247,  248,  248,  248,  248,  248,  249,  249,  249,  249, -      249,  250,  252,  254,  258,  259,  260,  261,  262,  263, -      265,  258,  267,  262,  266,  269,  268,  272,  250,  252, -      254,  268,  261,  271,  272,  275,  263,  267,  259,  260, -      266,  276,  271,  270,  277,  278,  269,  265,  270,  282, -      281,  283,  285,  286,  282,  287,  290,  288,  275,  291, -      283,  285,  295,  292,  276,  281,  277,  296,  277,  278, - -      298,  290,  299,  300,  286,  288,  287,  291,  292,  303, -      295,  304,  296,  306,  546,  321,  314,  307,  304,  308, -      321,  300,  303,  306,  298,  299,  307,  310,  311,  308, -      313,  314,  319,  316,  320,  311,  310,  322,  324,  313, -      316,  326,  319,  328,  320,  329,  331,  331,  331,  331, -      333,  336,  334,  328,  322,  333,  337,  338,  329,  324, -      334,  339,  338,  337,  326,  328,  340,  341,  339,  342, -      343,  340,  344,  336,  345,  346,  343,  347,  342,  348, -      349,  357,  351,  356,  346,  354,  355,  349,  341,  351, -      357,  344,  358,  345,  347,  359,  348,  360,  354,  355, - -      356,  361,  362,  363,  366,  364,  367,  358,  369,  368, -      372,  370,  359,  360,  364,  367,  368,  369,  371,  362, -      370,  366,  363,  372,  361,  373,  374,  371,  376,  375, -      380,  377,  381,  383,  389,  385,  387,  386,  376,  389, -      390,  381,  385,  373,  375,  386,  388,  387,  391,  374, -      377,  393,  383,  380,  394,  396,  398,  399,  401,  388, -      397,  402,  407,  390,  393,  391,  399,  397,  403,  406, -      418,  411,  396,  406,  406,  412,  425,  394,  411,  402, -      401,  415,  417,  416,  398,  407,  403,  417,  420,  426, -      415,  412,  416,  418,  427,  420,  429,  425,  430,  439, - -      436,  440,  441,  442,  443,  429,  426,  445,  430,  447, -      441,  427,  436,  450,  439,  451,  442,  452,  453,  454, -      456,  443,  457,  440,  460,  458,  459,  447,  454,  456, -      445,  462,  463,  453,  450,  461,  451,  465,  466,  457, -      458,  459,  469,  452,  461,  460,  467,  466,  468,  470, -      471,  467,  472,  462,  474,  463,  470,  468,  475,  476, -      477,  479,  465,  472,  481,  469,  480,  486,  482,  477, -      488,  496,  504,  471,  501,  544,  479,  482,  474,  488, -      486,  475,  476,  480,  489,  493,  490,  481,  492,  494, -      493,  489,  490,  499,  496,  492,  500,  501,  499,  502, - -      503,  504,  494,  505,  502,  500,  506,  507,  508,  509, -      505,  512,  510,  508,  513,  514,  503,  510,  515,  516, -      518,  521,  507,  517,  509,  512,  520,  522,  516,  506, -      513,  523,  517,  526,  514,  520,  521,  527,  525,  532, -      528,  515,  522,  518,  530,  533,  523,  525,  534,  535, -      527,  536,  533,  537,  532,  538,  526,  528,  539,  542, -      540,  534,  530,  541,  543,  545,  535,  540,  548,  554, -      541,  537,  536,  531,  550,  548,  529,  524,  538,  539, -      519,  511,  545,  550,  498,  497,  495,  543,  542,  491, -      554,  557,  557,  557,  557,  558,  558,  560,  487,  560, - -      560,  485,  484,  483,  478,  473,  464,  455,  449,  448, -      446,  444,  438,  437,  435,  434,  433,  432,  431,  428, -      424,  423,  422,  421,  419,  414,  413,  410,  409,  408, -      405,  404,  400,  395,  392,  384,  382,  378,  365,  353, -      352,  350,  335,  332,  330,  327,  325,  323,  318,  317, -      315,  312,  309,  305,  302,  297,  294,  293,  284,  280, -      279,  274,  273,  257,  256,  253,  241,  232,  231,  229, -      228,  226,  225,  224,  216,  213,  212,  208,  207,  206, -      200,  197,  196,  194,  193,  192,  191,  190,  189,  187, -      152,  148,  146,  143,  140,  136,  132,  116,   92,   70, - -       60,   40,   38,    8,    7,    3,  556,  556,  556,  556, -      556,  556,  556,  556,  556,  556,  556,  556,  556,  556, -      556,  556,  556,  556,  556,  556,  556,  556,  556,  556, -      556,  556,  556,  556,  556,  556,  556,  556,  556,  556, -      556,  556,  556,  556,  556,  556,  556,  556,  556,  556 +       44,   68,   31,   66,   31,   31,   70,   31,   33,   68, +       72,   73,   33,   45,   45,   45,   45,   45,  125,  552, +       33,   33,  125,   33,   73,   33,   72,   33,   74,   33, +       71,   78,   81,   33,   46,   46,   46,   46,   46,   46, +       48,   48,   48,   48,   48,   71,   74,   48,   81,   78, +      550,  549,   71,   48,   49,   49,   49,   49,   49,   49, +       50,   50,   50,   50,   50,   58,   50,   50,   65,   50, +       50,   50,   50,   50,   50,   65,   58,   75,   65,   77, +       82,   79,   80,   83,   84,   87,   75,   65,   58,   79, + +       84,   80,   80,   85,   88,   89,   86,   87,   90,   82, +       75,   86,   77,   89,   92,   83,   83,   98,   83,   88, +       85,   94,   95,   90,   96,   98,   85,   97,   99,   92, +       94,   95,   97,   96,  100,  101,  102,  103,  104,  105, +      106,   99,  108,  107,   94,   95,  105,  100,  109,  106, +      108,  104,  110,  121,  105,  111,  101,  109,  107,  102, +      117,  110,  112,  106,  103,  108,  105,  107,  112,  113, +      114,  109,  116,  111,  118,  119,  121,  120,  548,  117, +      122,  124,  113,  114,  123,  116,  120,  118,  146,  122, +      124,  114,  123,  123,  126,  119,  116,  129,  130,  127, + +      120,  146,  123,  122,  127,  123,  128,  126,  128,  126, +      123,  133,  133,  133,  133,  149,  155,  143,  129,  130, +      134,  134,  134,  134,  141,  130,  143,  134,  157,  144, +      149,  155,  148,  134,  136,  136,  136,  136,  136,  148, +      152,  136,  141,  157,  546,  544,  156,  136,  137,  137, +      144,  137,  137,  137,  137,  137,  151,  153,  154,  156, +      158,  159,  152,  154,  151,  160,  153,  159,  161,  158, +      162,  163,  164,  158,  165,  166,  167,  161,  160,  168, +      166,  170,  171,  174,  543,  172,  169,  173,  171,  161, +      170,  164,  162,  172,  163,  169,  175,  168,  174,  165, + +      168,  176,  169,  167,  177,  175,  173,  178,  180,  179, +      176,  181,  182,  183,  184,  186,  178,  193,  196,  181, +      197,  216,  177,  179,  176,  201,  203,  200,  183,  207, +      186,  180,  202,  182,  541,  196,  216,  193,  184,  207, +      215,  202,  209,  197,  199,  199,  199,  199,  201,  203, +      199,  199,  200,  199,  199,  199,  199,  199,  199,  208, +      209,  212,  213,  215,  217,  218,  221,  220,  208,  219, +      225,  228,  231,  233,  232,  217,  220,  212,  219,  240, +      228,  231,  237,  213,  218,  234,  219,  232,  225,  233, +      234,  221,  235,  236,  241,  238,  237,  240,  236,  238, + +      235,  243,  243,  243,  243,  331,  244,  244,  243,  244, +      244,  244,  244,  331,  243,  248,  256,  241,  245,  245, +      245,  245,  246,  246,  246,  246,  246,  247,  247,  247, +      247,  247,  248,  249,  250,  252,  253,  255,  257,  256, +      249,  253,  258,  259,  255,  260,  261,  262,  259,  263, +      265,  250,  252,  264,  266,  265,  272,  258,  267,  261, +      268,  257,  260,  267,  269,  263,  273,  275,  264,  268, +      274,  269,  278,  279,  262,  266,  280,  282,  279,  272, +      283,  284,  285,  286,  287,  280,  282,  278,  288,  273, +      289,  275,  274,  292,  274,  293,  295,  286,  296,  287, + +      285,  283,  284,  300,  297,  289,  288,  301,  303,  305, +      293,  292,  311,  528,  301,  304,  300,  307,  303,  305, +      295,  296,  297,  308,  304,  310,  307,  311,  313,  316, +      308,  317,  318,  319,  310,  313,  321,  318,  323,  316, +      326,  317,  325,  328,  328,  328,  328,  333,  334,  330, +      319,  335,  325,  326,  330,  334,  335,  321,  336,  338, +      340,  323,  337,  339,  325,  336,  340,  337,  341,  333, +      342,  344,  339,  343,  345,  358,  346,  348,  353,  351, +      338,  352,  343,  346,  348,  355,  356,  341,  344,  342, +      354,  345,  351,  357,  352,  353,  359,  360,  358,  354, + +      355,  361,  363,  356,  365,  364,  366,  369,  367,  357, +      361,  365,  368,  359,  364,  366,  360,  367,  370,  363, +      369,  368,  371,  372,  373,  374,  377,  376,  378,  380, +      384,  387,  395,  382,  373,  383,  370,  378,  372,  376, +      382,  384,  385,  383,  374,  371,  386,  388,  380,  377, +      390,  386,  391,  393,  387,  385,  398,  396,  394,  399, +      395,  400,  404,  390,  388,  394,  396,  403,  409,  408, +      393,  403,  403,  412,  413,  391,  408,  399,  398,  400, +      415,  414,  412,  413,  409,  404,  414,  417,  422,  423, +      424,  426,  427,  433,  417,  436,  437,  440,  439,  442, + +      426,  444,  427,  415,  438,  433,  423,  424,  447,  422, +      436,  439,  438,  448,  440,  449,  450,  451,  437,  444, +      454,  453,  442,  455,  456,  457,  451,  458,  459,  447, +      453,  450,  460,  462,  448,  463,  458,  454,  455,  456, +      464,  449,  465,  466,  463,  464,  457,  467,  468,  469, +      459,  465,  471,  474,  467,  460,  472,  473,  462,  476, +      469,  477,  474,  478,  479,  486,  466,  526,  483,  493, +      501,  468,  486,  479,  476,  485,  471,  487,  477,  472, +      473,  483,  489,  487,  485,  490,  478,  491,  496,  489, +      490,  498,  493,  496,  497,  500,  499,  502,  503,  501, + +      491,  499,  504,  497,  502,  505,  509,  506,  507,  510, +      505,  500,  511,  507,  498,  512,  515,  504,  513,  514, +      509,  503,  506,  517,  522,  510,  518,  513,  514,  519, +      520,  511,  517,  522,  523,  524,  525,  527,  512,  515, +      530,  518,  533,  529,  519,  520,  531,  530,  524,  532, +      534,  535,  536,  525,  537,  527,  539,  523,  529,  531, +      538,  537,  542,  533,  540,  545,  532,  538,  534,  547, +      551,  521,  545,  536,  535,  516,  508,  495,  547,  542, +      494,  492,  488,  484,  482,  539,  481,  540,  480,  475, +      470,  551,  554,  554,  554,  554,  555,  555,  557,  461, + +      557,  557,  452,  446,  445,  443,  441,  435,  434,  432, +      431,  430,  429,  428,  425,  421,  420,  419,  418,  416, +      411,  410,  407,  406,  405,  402,  401,  397,  392,  389, +      381,  379,  375,  362,  350,  349,  347,  332,  329,  327, +      324,  322,  320,  315,  314,  312,  309,  306,  302,  299, +      294,  291,  290,  281,  277,  276,  271,  270,  254,  251, +      239,  230,  229,  227,  226,  224,  223,  222,  214,  211, +      210,  206,  205,  204,  198,  195,  194,  192,  191,  190, +      189,  188,  187,  185,  150,  147,  145,  142,  139,  135, +      131,  115,   91,   69,   59,   40,   38,    8,    7,    3, + +      553,  553,  553,  553,  553,  553,  553,  553,  553,  553, +      553,  553,  553,  553,  553,  553,  553,  553,  553,  553, +      553,  553,  553,  553,  553,  553,  553,  553,  553,  553, +      553,  553,  553,  553,  553,  553,  553,  553,  553,  553, +      553,  553,  553,  553      } ; -/* Table of booleans, true if rule could match eol. */ -static yyconst flex_int32_t yy_rule_can_match_eol[137] = -    {   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, 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,  -    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, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,     }; - -static yy_state_type yy_last_accepting_state; -static char *yy_last_accepting_cpos; - -extern int llvmAsm_flex_debug; -int llvmAsm_flex_debug = 0; - -/* The intent behind this definition is that it'll catch - * any uses of REJECT which flex missed. - */ -#define REJECT reject_used_but_not_detected +static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr; +static char *yy_full_match; +static int yy_lp; +#define REJECT \ +{ \ +*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \ +yy_cp = yy_full_match; /* restore poss. backed-over text */ \ +++yy_lp; \ +goto find_rule; \ +}  #define yymore() yymore_used_but_not_detected  #define YY_MORE_ADJ 0  #define YY_RESTORE_YY_MORE_OFFSET -char *llvmAsmtext; -#line 1 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +char *yytext; +#line 1 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l" +#define INITIAL 0  /*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===//  //  //                     The LLVM Compiler Infrastructure @@ -947,7 +893,8 @@ char *llvmAsmtext;  //  This file implements the flex scanner for LLVM assembly languages files.  //  //===----------------------------------------------------------------------===*/ -#line 28 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#define YY_NEVER_INTERACTIVE 1 +#line 28 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  #include "ParserInternals.h"  #include "llvm/Module.h"  #include <list> @@ -956,10 +903,10 @@ char *llvmAsmtext;  #include <cstdlib>  void set_scan_file(FILE * F){ -  llvmAsm_switch_to_buffer(llvmAsm_create_buffer(F,YY_BUF_SIZE ) ); +  yy_switch_to_buffer(yy_create_buffer( F, YY_BUF_SIZE ) );  }  void set_scan_string (const char * str) { -  llvmAsm_scan_string (str); +  yy_scan_string (str);  }  // Construct a token value for a non-obsolete token @@ -1080,23 +1027,7 @@ using namespace llvm;  /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing   * it to deal with 64 bit numbers.   */ -#line 1084 "Lexer.cpp" - -#define INITIAL 0 - -#ifndef YY_NO_UNISTD_H -/* Special case for "unistd.h", since it is non-ANSI. We include it way - * down here because we want the user's section 1 to have been scanned first. - * The user has a chance to override it with an option. - */ -#include <unistd.h> -#endif - -#ifndef YY_EXTRA_TYPE -#define YY_EXTRA_TYPE void * -#endif - -static int yy_init_globals (void ); +#line 1031 "Lexer.cpp"  /* Macros after this point can all be overridden by user definitions in   * section 1. @@ -1104,30 +1035,65 @@ static int yy_init_globals (void );  #ifndef YY_SKIP_YYWRAP  #ifdef __cplusplus -extern "C" int llvmAsmwrap (void ); +extern "C" int yywrap YY_PROTO(( void ));  #else -extern int llvmAsmwrap (void ); +extern int yywrap YY_PROTO(( void ));  #endif  #endif -    static inline void yyunput (int c,char *buf_ptr  ); -     +#ifndef YY_NO_UNPUT +static inline void yyunput YY_PROTO(( int c, char *buf_ptr )); +#endif +  #ifndef yytext_ptr -static void yy_flex_strncpy (char *,yyconst char *,int ); +static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));  #endif  #ifdef YY_NEED_STRLEN -static int yy_flex_strlen (yyconst char * ); +static int yy_flex_strlen YY_PROTO(( yyconst char * ));  #endif  #ifndef YY_NO_INPUT -  #ifdef __cplusplus -static int yyinput (void ); +static int yyinput YY_PROTO(( void )); +#else +static int input YY_PROTO(( void )); +#endif +#endif + +#if YY_STACK_USED +static int yy_start_stack_ptr = 0; +static int yy_start_stack_depth = 0; +static int *yy_start_stack = 0; +#ifndef YY_NO_PUSH_STATE +static void yy_push_state YY_PROTO(( int new_state )); +#endif +#ifndef YY_NO_POP_STATE +static void yy_pop_state YY_PROTO(( void )); +#endif +#ifndef YY_NO_TOP_STATE +static int yy_top_state YY_PROTO(( void )); +#endif +  #else -static int input (void ); +#define YY_NO_PUSH_STATE 1 +#define YY_NO_POP_STATE 1 +#define YY_NO_TOP_STATE 1  #endif +#ifdef YY_MALLOC_DECL +YY_MALLOC_DECL +#else +#if __STDC__ +#ifndef __cplusplus +#include <stdlib.h> +#endif +#else +/* Just try to get by without declaring the routines.  This will fail + * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int) + * or sizeof(void*) != sizeof(int). + */ +#endif  #endif  /* Amount of stuff to slurp up with each read. */ @@ -1136,11 +1102,12 @@ static int input (void );  #endif  /* Copy whatever the last rule matched to the standard output. */ +  #ifndef ECHO  /* This used to be an fputs(), but since the string might contain NUL's,   * we now use fwrite().   */ -#define ECHO (void) fwrite( llvmAsmtext, llvmAsmleng, 1, llvmAsmout ) +#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )  #endif  /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL, @@ -1148,35 +1115,21 @@ static int input (void );   */  #ifndef YY_INPUT  #define YY_INPUT(buf,result,max_size) \ -	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ +	if ( yy_current_buffer->yy_is_interactive ) \  		{ \ -		int c = '*'; \ -		size_t n; \ +		int c = '*', n; \  		for ( n = 0; n < max_size && \ -			     (c = getc( llvmAsmin )) != EOF && c != '\n'; ++n ) \ +			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \  			buf[n] = (char) c; \  		if ( c == '\n' ) \  			buf[n++] = (char) c; \ -		if ( c == EOF && ferror( llvmAsmin ) ) \ +		if ( c == EOF && ferror( yyin ) ) \  			YY_FATAL_ERROR( "input in flex scanner failed" ); \  		result = n; \  		} \ -	else \ -		{ \ -		errno=0; \ -		while ( (result = fread(buf, 1, max_size, llvmAsmin))==0 && ferror(llvmAsmin)) \ -			{ \ -			if( errno != EINTR) \ -				{ \ -				YY_FATAL_ERROR( "input in flex scanner failed" ); \ -				break; \ -				} \ -			errno=0; \ -			clearerr(llvmAsmin); \ -			} \ -		}\ -\ - +	else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \ +		  && ferror( yyin ) ) \ +		YY_FATAL_ERROR( "input in flex scanner failed" );  #endif  /* No semi-colon after return; correct usage is to write "yyterminate();" - @@ -1197,20 +1150,14 @@ static int input (void );  #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )  #endif -/* end tables serialization structures and prototypes */ -  /* Default declaration of generated scanner - a define so the user can   * easily add parameters.   */  #ifndef YY_DECL -#define YY_DECL_IS_OURS 1 - -extern int llvmAsmlex (void); - -#define YY_DECL int llvmAsmlex (void) -#endif /* !YY_DECL */ +#define YY_DECL int yylex YY_PROTO(( void )) +#endif -/* Code executed at the beginning of each rule, after llvmAsmtext and llvmAsmleng +/* Code executed at the beginning of each rule, after yytext and yyleng   * have been set up.   */  #ifndef YY_USER_ACTION @@ -1225,375 +1172,370 @@ extern int llvmAsmlex (void);  #define YY_RULE_SETUP \  	YY_USER_ACTION -/** The main scanner function which does all the work. - */  YY_DECL -{ +	{  	register yy_state_type yy_current_state; -	register char *yy_cp, *yy_bp; +	register char *yy_cp = NULL, *yy_bp = NULL;  	register int yy_act; -     -#line 188 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 188 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l" -#line 1240 "Lexer.cpp" -	if ( !(yy_init) ) +#line 1185 "Lexer.cpp" + +	if ( yy_init )  		{ -		(yy_init) = 1; +		yy_init = 0;  #ifdef YY_USER_INIT  		YY_USER_INIT;  #endif -		if ( ! (yy_start) ) -			(yy_start) = 1;	/* first start state */ +		if ( ! yy_start ) +			yy_start = 1;	/* first start state */ -		if ( ! llvmAsmin ) -			llvmAsmin = stdin; +		if ( ! yyin ) +			yyin = stdin; -		if ( ! llvmAsmout ) -			llvmAsmout = stdout; +		if ( ! yyout ) +			yyout = stdout; -		if ( ! YY_CURRENT_BUFFER ) { -			llvmAsmensure_buffer_stack (); -			YY_CURRENT_BUFFER_LVALUE = -				llvmAsm_create_buffer(llvmAsmin,YY_BUF_SIZE ); -		} +		if ( ! yy_current_buffer ) +			yy_current_buffer = +				yy_create_buffer( yyin, YY_BUF_SIZE ); -		llvmAsm_load_buffer_state( ); +		yy_load_buffer_state();  		}  	while ( 1 )		/* loops until end-of-file is reached */  		{ -		yy_cp = (yy_c_buf_p); +		yy_cp = yy_c_buf_p; -		/* Support of llvmAsmtext. */ -		*yy_cp = (yy_hold_char); +		/* Support of yytext. */ +		*yy_cp = yy_hold_char;  		/* yy_bp points to the position in yy_ch_buf of the start of  		 * the current run.  		 */  		yy_bp = yy_cp; -		yy_current_state = (yy_start); +		yy_current_state = yy_start; +		yy_state_ptr = yy_state_buf; +		*yy_state_ptr++ = yy_current_state;  yy_match:  		do  			{  			register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; -			if ( yy_accept[yy_current_state] ) -				{ -				(yy_last_accepting_state) = yy_current_state; -				(yy_last_accepting_cpos) = yy_cp; -				}  			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )  				{  				yy_current_state = (int) yy_def[yy_current_state]; -				if ( yy_current_state >= 557 ) +				if ( yy_current_state >= 554 )  					yy_c = yy_meta[(unsigned int) yy_c];  				}  			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; +			*yy_state_ptr++ = yy_current_state;  			++yy_cp;  			} -		while ( yy_current_state != 556 ); -		yy_cp = (yy_last_accepting_cpos); -		yy_current_state = (yy_last_accepting_state); +		while ( yy_current_state != 553 );  yy_find_action: -		yy_act = yy_accept[yy_current_state]; +		yy_current_state = *--yy_state_ptr; +		yy_lp = yy_accept[yy_current_state]; +find_rule: /* we branch to this label when backing up */ +		for ( ; ; ) /* until we find what rule we matched */ +			{ +			if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] ) +				{ +				yy_act = yy_acclist[yy_lp]; +					{ +					yy_full_match = yy_cp; +					break; +					} +				} +			--yy_cp; +			yy_current_state = *--yy_state_ptr; +			yy_lp = yy_accept[yy_current_state]; +			}  		YY_DO_BEFORE_ACTION; -		if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] ) +		if ( yy_act != YY_END_OF_BUFFER )  			{  			int yyl; -			for ( yyl = 0; yyl < llvmAsmleng; ++yyl ) -				if ( llvmAsmtext[yyl] == '\n' ) -					    -    llvmAsmlineno++; -; +			for ( yyl = 0; yyl < yyleng; ++yyl ) +				if ( yytext[yyl] == '\n' ) +					++yylineno;  			}  do_action:	/* This label is used only to access EOF actions. */ +  		switch ( yy_act )  	{ /* beginning of action switch */ -			case 0: /* must back up */ -			/* undo the effects of YY_DO_BEFORE_ACTION */ -			*yy_cp = (yy_hold_char); -			yy_cp = (yy_last_accepting_cpos); -			yy_current_state = (yy_last_accepting_state); -			goto yy_find_action; -  case 1:  YY_RULE_SETUP -#line 190 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 190 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { /* Ignore comments for now */ }  	YY_BREAK  case 2:  YY_RULE_SETUP -#line 192 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 192 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return BEGINTOK; }  	YY_BREAK  case 3:  YY_RULE_SETUP -#line 193 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 193 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return ENDTOK; }  	YY_BREAK  case 4:  YY_RULE_SETUP -#line 194 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 194 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return TRUETOK;  }  	YY_BREAK  case 5:  YY_RULE_SETUP -#line 195 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 195 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return FALSETOK; }  	YY_BREAK  case 6:  YY_RULE_SETUP -#line 196 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 196 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return DECLARE; }  	YY_BREAK  case 7:  YY_RULE_SETUP -#line 197 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 197 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return DEFINE; }  	YY_BREAK  case 8:  YY_RULE_SETUP -#line 198 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 198 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return GLOBAL; }  	YY_BREAK  case 9:  YY_RULE_SETUP -#line 199 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 199 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return CONSTANT; }  	YY_BREAK  case 10:  YY_RULE_SETUP -#line 200 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 200 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return INTERNAL; }  	YY_BREAK  case 11:  YY_RULE_SETUP -#line 201 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 201 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return LINKONCE; }  	YY_BREAK  case 12:  YY_RULE_SETUP -#line 202 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 202 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return WEAK; }  	YY_BREAK  case 13:  YY_RULE_SETUP -#line 203 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 203 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return APPENDING; }  	YY_BREAK  case 14:  YY_RULE_SETUP -#line 204 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 204 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return DLLIMPORT; }  	YY_BREAK  case 15:  YY_RULE_SETUP -#line 205 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 205 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return DLLEXPORT; }  	YY_BREAK  case 16:  YY_RULE_SETUP -#line 206 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 206 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return HIDDEN; }  	YY_BREAK  case 17:  YY_RULE_SETUP -#line 207 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 207 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return EXTERN_WEAK; }  	YY_BREAK  case 18:  YY_RULE_SETUP -#line 208 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 208 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return EXTERNAL; }  	YY_BREAK  case 19:  YY_RULE_SETUP -#line 209 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 209 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return IMPLEMENTATION; }  	YY_BREAK  case 20:  YY_RULE_SETUP -#line 210 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 210 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return ZEROINITIALIZER; }  	YY_BREAK  case 21:  YY_RULE_SETUP -#line 211 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 211 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return DOTDOTDOT; }  	YY_BREAK  case 22:  YY_RULE_SETUP -#line 212 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 212 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return UNDEF; }  	YY_BREAK  case 23:  YY_RULE_SETUP -#line 213 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 213 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return NULL_TOK; }  	YY_BREAK  case 24:  YY_RULE_SETUP -#line 214 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 214 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return TO; }  	YY_BREAK  case 25:  YY_RULE_SETUP -#line 215 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 215 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return TAIL; }  	YY_BREAK  case 26:  YY_RULE_SETUP -#line 216 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 216 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return TARGET; }  	YY_BREAK  case 27:  YY_RULE_SETUP -#line 217 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 217 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return TRIPLE; }  	YY_BREAK  case 28:  YY_RULE_SETUP -#line 218 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 218 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return DEPLIBS; }  	YY_BREAK  case 29:  YY_RULE_SETUP -#line 219 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 219 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return ENDIAN; }  	YY_BREAK  case 30:  YY_RULE_SETUP -#line 220 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 220 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return POINTERSIZE; }  	YY_BREAK  case 31:  YY_RULE_SETUP -#line 221 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 221 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return DATALAYOUT; }  	YY_BREAK  case 32:  YY_RULE_SETUP -#line 222 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 222 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return LITTLE; }  	YY_BREAK  case 33:  YY_RULE_SETUP -#line 223 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 223 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return BIG; }  	YY_BREAK  case 34:  YY_RULE_SETUP -#line 224 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 224 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return VOLATILE; }  	YY_BREAK  case 35:  YY_RULE_SETUP -#line 225 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 225 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return ALIGN;  }  	YY_BREAK  case 36:  YY_RULE_SETUP -#line 226 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 226 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return SECTION; }  	YY_BREAK  case 37:  YY_RULE_SETUP -#line 227 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 227 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return MODULE; }  	YY_BREAK  case 38:  YY_RULE_SETUP -#line 228 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 228 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return ASM_TOK; }  	YY_BREAK  case 39:  YY_RULE_SETUP -#line 229 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 229 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return SIDEEFFECT; }  	YY_BREAK  case 40:  YY_RULE_SETUP -#line 231 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 231 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return CC_TOK; }  	YY_BREAK  case 41:  YY_RULE_SETUP -#line 232 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 232 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return CCC_TOK; }  	YY_BREAK  case 42:  YY_RULE_SETUP -#line 233 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 233 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return CSRETCC_TOK; }  	YY_BREAK  case 43:  YY_RULE_SETUP -#line 234 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 234 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return FASTCC_TOK; }  	YY_BREAK  case 44:  YY_RULE_SETUP -#line 235 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 235 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return COLDCC_TOK; }  	YY_BREAK  case 45:  YY_RULE_SETUP -#line 236 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 236 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return X86_STDCALLCC_TOK; }  	YY_BREAK  case 46:  YY_RULE_SETUP -#line 237 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 237 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return X86_FASTCALLCC_TOK; }  	YY_BREAK  case 47:  YY_RULE_SETUP -#line 239 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 239 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TY(Type::VoidTy,  VOID);  }  	YY_BREAK  case 48:  YY_RULE_SETUP -#line 240 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" -{ RET_TY(Type::Int1Ty,  BOOL);  } -	YY_BREAK -case 49: -YY_RULE_SETUP -#line 241 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 240 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TY(Type::FloatTy, FLOAT); }  	YY_BREAK -case 50: +case 49:  YY_RULE_SETUP -#line 242 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 241 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TY(Type::DoubleTy,DOUBLE);}  	YY_BREAK -case 51: +case 50:  YY_RULE_SETUP -#line 243 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 242 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TY(Type::LabelTy, LABEL); }  	YY_BREAK -case 52: +case 51:  YY_RULE_SETUP -#line 244 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 243 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return TYPE;   }  	YY_BREAK -case 53: +case 52:  YY_RULE_SETUP -#line 245 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 244 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return OPAQUE; }  	YY_BREAK -case 54: +case 53:  YY_RULE_SETUP -#line 246 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" -{ uint64_t NumBits = atoull(llvmAsmtext+1); +#line 245 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l" +{ uint64_t NumBits = atoull(yytext+1);                    if (NumBits < IntegerType::MIN_INT_BITS ||                         NumBits > IntegerType::MAX_INT_BITS)                      GenerateError("Bitwidth for integer type out of range!"); @@ -1601,400 +1543,398 @@ YY_RULE_SETUP                    RET_TY(Ty, INTTYPE);                  }  	YY_BREAK -case 55: +case 54:  YY_RULE_SETUP -#line 254 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 253 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, Add, ADD); }  	YY_BREAK -case 56: +case 55:  YY_RULE_SETUP -#line 255 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 254 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, Sub, SUB); }  	YY_BREAK -case 57: +case 56:  YY_RULE_SETUP -#line 256 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 255 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, Mul, MUL); }  	YY_BREAK -case 58: +case 57:  YY_RULE_SETUP -#line 257 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 256 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, UDiv, UDIV); }  	YY_BREAK -case 59: +case 58:  YY_RULE_SETUP -#line 258 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 257 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, SDiv, SDIV); }  	YY_BREAK -case 60: +case 59:  YY_RULE_SETUP -#line 259 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 258 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, FDiv, FDIV); }  	YY_BREAK -case 61: +case 60:  YY_RULE_SETUP -#line 260 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 259 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, URem, UREM); }  	YY_BREAK -case 62: +case 61:  YY_RULE_SETUP -#line 261 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 260 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, SRem, SREM); }  	YY_BREAK -case 63: +case 62:  YY_RULE_SETUP -#line 262 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 261 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, FRem, FREM); }  	YY_BREAK -case 64: +case 63:  YY_RULE_SETUP -#line 263 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 262 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, And, AND); }  	YY_BREAK -case 65: +case 64:  YY_RULE_SETUP -#line 264 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 263 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, Or , OR ); }  	YY_BREAK -case 66: +case 65:  YY_RULE_SETUP -#line 265 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 264 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(BinaryOpVal, Xor, XOR); }  	YY_BREAK -case 67: +case 66:  YY_RULE_SETUP -#line 266 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 265 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal,  ICmp,  ICMP); }  	YY_BREAK -case 68: +case 67:  YY_RULE_SETUP -#line 267 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 266 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal,  FCmp,  FCMP); }  	YY_BREAK -case 69: +case 68:  YY_RULE_SETUP -#line 268 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 267 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return EQ;  }  	YY_BREAK -case 70: +case 69:  YY_RULE_SETUP -#line 269 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 268 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return NE;  }  	YY_BREAK -case 71: +case 70:  YY_RULE_SETUP -#line 270 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 269 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return SLT; }  	YY_BREAK -case 72: +case 71:  YY_RULE_SETUP -#line 271 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 270 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return SGT; }  	YY_BREAK -case 73: +case 72:  YY_RULE_SETUP -#line 272 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 271 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return SLE; }  	YY_BREAK -case 74: +case 73:  YY_RULE_SETUP -#line 273 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 272 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return SGE; }  	YY_BREAK -case 75: +case 74:  YY_RULE_SETUP -#line 274 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 273 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return ULT; }  	YY_BREAK -case 76: +case 75:  YY_RULE_SETUP -#line 275 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 274 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return UGT; }  	YY_BREAK -case 77: +case 76:  YY_RULE_SETUP -#line 276 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 275 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return ULE; }  	YY_BREAK -case 78: +case 77:  YY_RULE_SETUP -#line 277 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 276 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return UGE; }  	YY_BREAK -case 79: +case 78:  YY_RULE_SETUP -#line 278 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 277 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return OEQ; }  	YY_BREAK -case 80: +case 79:  YY_RULE_SETUP -#line 279 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 278 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return ONE; }  	YY_BREAK -case 81: +case 80:  YY_RULE_SETUP -#line 280 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 279 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return OLT; }  	YY_BREAK -case 82: +case 81:  YY_RULE_SETUP -#line 281 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 280 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return OGT; }  	YY_BREAK -case 83: +case 82:  YY_RULE_SETUP -#line 282 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 281 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return OLE; }  	YY_BREAK -case 84: +case 83:  YY_RULE_SETUP -#line 283 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 282 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return OGE; }  	YY_BREAK -case 85: +case 84:  YY_RULE_SETUP -#line 284 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 283 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return ORD; }  	YY_BREAK -case 86: +case 85:  YY_RULE_SETUP -#line 285 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 284 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return UNO; }  	YY_BREAK -case 87: +case 86:  YY_RULE_SETUP -#line 286 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 285 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return UEQ; }  	YY_BREAK -case 88: +case 87:  YY_RULE_SETUP -#line 287 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 286 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { return UNE; }  	YY_BREAK -case 89: +case 88:  YY_RULE_SETUP -#line 289 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 288 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, PHI, PHI_TOK); }  	YY_BREAK -case 90: +case 89:  YY_RULE_SETUP -#line 290 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 289 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, Call, CALL); }  	YY_BREAK -case 91: +case 90:  YY_RULE_SETUP -#line 291 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 290 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, Trunc, TRUNC); }  	YY_BREAK -case 92: +case 91:  YY_RULE_SETUP -#line 292 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 291 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, ZExt, ZEXT); }  	YY_BREAK -case 93: +case 92:  YY_RULE_SETUP -#line 293 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 292 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, SExt, SEXT); }  	YY_BREAK -case 94: +case 93:  YY_RULE_SETUP -#line 294 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 293 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, FPTrunc, FPTRUNC); }  	YY_BREAK -case 95: +case 94:  YY_RULE_SETUP -#line 295 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 294 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, FPExt, FPEXT); }  	YY_BREAK -case 96: +case 95:  YY_RULE_SETUP -#line 296 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 295 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, UIToFP, UITOFP); }  	YY_BREAK -case 97: +case 96:  YY_RULE_SETUP -#line 297 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 296 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, SIToFP, SITOFP); }  	YY_BREAK -case 98: +case 97:  YY_RULE_SETUP -#line 298 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 297 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, FPToUI, FPTOUI); }  	YY_BREAK -case 99: +case 98:  YY_RULE_SETUP -#line 299 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 298 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, FPToSI, FPTOSI); }  	YY_BREAK -case 100: +case 99:  YY_RULE_SETUP -#line 300 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 299 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, IntToPtr, INTTOPTR); }  	YY_BREAK -case 101: +case 100:  YY_RULE_SETUP -#line 301 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 300 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, PtrToInt, PTRTOINT); }  	YY_BREAK -case 102: +case 101:  YY_RULE_SETUP -#line 302 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 301 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(CastOpVal, BitCast, BITCAST); }  	YY_BREAK -case 103: +case 102:  YY_RULE_SETUP -#line 303 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 302 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, Select, SELECT); }  	YY_BREAK -case 104: +case 103:  YY_RULE_SETUP -#line 304 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 303 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, Shl, SHL); }  	YY_BREAK -case 105: +case 104:  YY_RULE_SETUP -#line 305 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 304 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, LShr, LSHR); }  	YY_BREAK -case 106: +case 105:  YY_RULE_SETUP -#line 306 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 305 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, AShr, ASHR); }  	YY_BREAK -case 107: +case 106:  YY_RULE_SETUP -#line 307 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 306 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, VAArg , VAARG); }  	YY_BREAK -case 108: +case 107:  YY_RULE_SETUP -#line 308 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 307 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(TermOpVal, Ret, RET); }  	YY_BREAK -case 109: +case 108:  YY_RULE_SETUP -#line 309 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 308 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(TermOpVal, Br, BR); }  	YY_BREAK -case 110: +case 109:  YY_RULE_SETUP -#line 310 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 309 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(TermOpVal, Switch, SWITCH); }  	YY_BREAK -case 111: +case 110:  YY_RULE_SETUP -#line 311 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 310 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(TermOpVal, Invoke, INVOKE); }  	YY_BREAK -case 112: +case 111:  YY_RULE_SETUP -#line 312 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 311 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(TermOpVal, Unwind, UNWIND); }  	YY_BREAK -case 113: +case 112:  YY_RULE_SETUP -#line 313 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 312 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }  	YY_BREAK -case 114: +case 113:  YY_RULE_SETUP -#line 315 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 314 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(MemOpVal, Malloc, MALLOC); }  	YY_BREAK -case 115: +case 114:  YY_RULE_SETUP -#line 316 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 315 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(MemOpVal, Alloca, ALLOCA); }  	YY_BREAK -case 116: +case 115:  YY_RULE_SETUP -#line 317 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 316 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(MemOpVal, Free, FREE); }  	YY_BREAK -case 117: +case 116:  YY_RULE_SETUP -#line 318 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 317 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(MemOpVal, Load, LOAD); }  	YY_BREAK -case 118: +case 117:  YY_RULE_SETUP -#line 319 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 318 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(MemOpVal, Store, STORE); }  	YY_BREAK -case 119: +case 118:  YY_RULE_SETUP -#line 320 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 319 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }  	YY_BREAK -case 120: +case 119:  YY_RULE_SETUP -#line 322 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 321 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }  	YY_BREAK -case 121: +case 120:  YY_RULE_SETUP -#line 323 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 322 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }  	YY_BREAK -case 122: +case 121:  YY_RULE_SETUP -#line 324 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 323 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }  	YY_BREAK -case 123: +case 122:  YY_RULE_SETUP -#line 327 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 326 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { -                  UnEscapeLexed(llvmAsmtext+1); -                  llvmAsmlval.StrVal = strdup(llvmAsmtext+1);             // Skip % +                  UnEscapeLexed(yytext+1); +                  llvmAsmlval.StrVal = strdup(yytext+1);             // Skip %                    return VAR_ID;                  }  	YY_BREAK -case 124: +case 123:  YY_RULE_SETUP -#line 332 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 331 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { -                  llvmAsmtext[strlen(llvmAsmtext)-1] = 0;  // nuke colon -                  UnEscapeLexed(llvmAsmtext); -                  llvmAsmlval.StrVal = strdup(llvmAsmtext); +                  yytext[strlen(yytext)-1] = 0;  // nuke colon +                  UnEscapeLexed(yytext); +                  llvmAsmlval.StrVal = strdup(yytext);                    return LABELSTR;                  }  	YY_BREAK -case 125: -/* rule 125 can match eol */ +case 124:  YY_RULE_SETUP -#line 338 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 337 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { -                  llvmAsmtext[strlen(llvmAsmtext)-2] = 0;  // nuke colon, end quote -                  UnEscapeLexed(llvmAsmtext+1); -                  llvmAsmlval.StrVal = strdup(llvmAsmtext+1); +                  yytext[strlen(yytext)-2] = 0;  // nuke colon, end quote +                  UnEscapeLexed(yytext+1); +                  llvmAsmlval.StrVal = strdup(yytext+1);                    return LABELSTR;                  }  	YY_BREAK -case 126: -/* rule 126 can match eol */ +case 125:  YY_RULE_SETUP -#line 345 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 344 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { // Note that we cannot unescape a string constant here!  The                     // string constant might contain a \00 which would not be                     // understood by the string stuff.  It is valid to make a                     // [sbyte] c"Hello World\00" constant, for example.                     // -                   llvmAsmtext[strlen(llvmAsmtext)-1] = 0;           // nuke end quote -                   llvmAsmlval.StrVal = strdup(llvmAsmtext+1);  // Nuke start quote +                   yytext[strlen(yytext)-1] = 0;           // nuke end quote +                   llvmAsmlval.StrVal = strdup(yytext+1);  // Nuke start quote                     return STRINGCONSTANT;                   }  	YY_BREAK -case 127: +case 126:  YY_RULE_SETUP -#line 356 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" -{ llvmAsmlval.UInt64Val = atoull(llvmAsmtext); return EUINT64VAL; } +#line 355 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l" +{ llvmAsmlval.UInt64Val = atoull(yytext); return EUINT64VAL; }  	YY_BREAK -case 128: +case 127:  YY_RULE_SETUP -#line 357 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 356 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { -                  uint64_t Val = atoull(llvmAsmtext+1); +                  uint64_t Val = atoull(yytext+1);                    // +1:  we have bigger negative range                    if (Val > (uint64_t)INT64_MAX+1)                      GenerateError("Constant too large for signed 64 bits!"); @@ -2002,30 +1942,30 @@ YY_RULE_SETUP                    return ESINT64VAL;                  }  	YY_BREAK -case 129: +case 128:  YY_RULE_SETUP -#line 365 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 364 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { -                   llvmAsmlval.UInt64Val = HexIntToVal(llvmAsmtext+3); -                   return llvmAsmtext[0] == 's' ? ESINT64VAL : EUINT64VAL; +                   llvmAsmlval.UInt64Val = HexIntToVal(yytext+3); +                   return yytext[0] == 's' ? ESINT64VAL : EUINT64VAL;                   }  	YY_BREAK -case 130: +case 129:  YY_RULE_SETUP -#line 370 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 369 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { -                  uint64_t Val = atoull(llvmAsmtext+1); +                  uint64_t Val = atoull(yytext+1);                    if ((unsigned)Val != Val)                      GenerateError("Invalid value number (too large)!");                    llvmAsmlval.UIntVal = unsigned(Val);                    return UINTVAL;                  }  	YY_BREAK -case 131: +case 130:  YY_RULE_SETUP -#line 377 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 376 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { -                  uint64_t Val = atoull(llvmAsmtext+2); +                  uint64_t Val = atoull(yytext+2);                    // +1:  we have bigger negative range                    if (Val > (uint64_t)INT32_MAX+1)                      GenerateError("Constant too large for signed 32 bits!"); @@ -2033,67 +1973,66 @@ YY_RULE_SETUP                    return SINTVAL;                  }  	YY_BREAK -case 132: +case 131:  YY_RULE_SETUP -#line 386 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" -{ llvmAsmlval.FPVal = atof(llvmAsmtext); return FPVAL; } +#line 385 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l" +{ llvmAsmlval.FPVal = atof(yytext); return FPVAL; }  	YY_BREAK -case 133: +case 132:  YY_RULE_SETUP -#line 387 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" -{ llvmAsmlval.FPVal = HexToFP(llvmAsmtext); return FPVAL; } +#line 386 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l" +{ llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; }  	YY_BREAK  case YY_STATE_EOF(INITIAL): -#line 389 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 388 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  {                    /* Make sure to free the internal buffers for flex when we are                     * done reading our input!                     */ -                  llvmAsm_delete_buffer(YY_CURRENT_BUFFER); +                  yy_delete_buffer(YY_CURRENT_BUFFER);                    return EOF;                  }  	YY_BREAK -case 134: -/* rule 134 can match eol */ +case 133:  YY_RULE_SETUP -#line 397 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 396 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  { /* Ignore whitespace */ }  	YY_BREAK -case 135: +case 134:  YY_RULE_SETUP -#line 398 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" -{ return llvmAsmtext[0]; } +#line 397 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l" +{ return yytext[0]; }  	YY_BREAK -case 136: +case 135:  YY_RULE_SETUP -#line 400 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +#line 399 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"  YY_FATAL_ERROR( "flex scanner jammed" );  	YY_BREAK -#line 2073 "Lexer.cpp" +#line 2012 "Lexer.cpp"  	case YY_END_OF_BUFFER:  		{  		/* Amount of text matched not including the EOB char. */ -		int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; +		int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;  		/* Undo the effects of YY_DO_BEFORE_ACTION. */ -		*yy_cp = (yy_hold_char); +		*yy_cp = yy_hold_char;  		YY_RESTORE_YY_MORE_OFFSET -		if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) +		if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )  			{  			/* We're scanning a new file or input source.  It's  			 * possible that this happened because the user -			 * just pointed llvmAsmin at a new source and called -			 * llvmAsmlex().  If so, then we have to assure -			 * consistency between YY_CURRENT_BUFFER and our +			 * just pointed yyin at a new source and called +			 * yylex().  If so, then we have to assure +			 * consistency between yy_current_buffer and our  			 * globals.  Here is the right place to do so, because  			 * this is the first action (other than possibly a  			 * back-up) that will match for the new input source.  			 */ -			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; -			YY_CURRENT_BUFFER_LVALUE->yy_input_file = llvmAsmin; -			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; +			yy_n_chars = yy_current_buffer->yy_n_chars; +			yy_current_buffer->yy_input_file = yyin; +			yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;  			}  		/* Note that here we test for yy_c_buf_p "<=" to the position @@ -2103,13 +2042,13 @@ YY_FATAL_ERROR( "flex scanner jammed" );  		 * end-of-buffer state).  Contrast this with the test  		 * in input().  		 */ -		if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) +		if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )  			{ /* This was really a NUL. */  			yy_state_type yy_next_state; -			(yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; +			yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text; -			yy_current_state = yy_get_previous_state(  ); +			yy_current_state = yy_get_previous_state();  			/* Okay, we're now positioned to make the NUL  			 * transition.  We couldn't have @@ -2122,42 +2061,41 @@ YY_FATAL_ERROR( "flex scanner jammed" );  			yy_next_state = yy_try_NUL_trans( yy_current_state ); -			yy_bp = (yytext_ptr) + YY_MORE_ADJ; +			yy_bp = yytext_ptr + YY_MORE_ADJ;  			if ( yy_next_state )  				{  				/* Consume the NUL. */ -				yy_cp = ++(yy_c_buf_p); +				yy_cp = ++yy_c_buf_p;  				yy_current_state = yy_next_state;  				goto yy_match;  				}  			else  				{ -				yy_cp = (yy_last_accepting_cpos); -				yy_current_state = (yy_last_accepting_state); +				yy_cp = yy_c_buf_p;  				goto yy_find_action;  				}  			} -		else switch ( yy_get_next_buffer(  ) ) +		else switch ( yy_get_next_buffer() )  			{  			case EOB_ACT_END_OF_FILE:  				{ -				(yy_did_buffer_switch_on_eof) = 0; +				yy_did_buffer_switch_on_eof = 0; -				if ( llvmAsmwrap( ) ) +				if ( yywrap() )  					{  					/* Note: because we've taken care in  					 * yy_get_next_buffer() to have set up -					 * llvmAsmtext, we can now set up +					 * yytext, we can now set up  					 * yy_c_buf_p so that if some total  					 * hoser (like flex itself) wants to  					 * call the scanner after we return the  					 * YY_NULL, it'll still work - another  					 * YY_NULL will get returned.  					 */ -					(yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; +					yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;  					yy_act = YY_STATE_EOF(YY_START);  					goto do_action; @@ -2165,30 +2103,30 @@ YY_FATAL_ERROR( "flex scanner jammed" );  				else  					{ -					if ( ! (yy_did_buffer_switch_on_eof) ) +					if ( ! yy_did_buffer_switch_on_eof )  						YY_NEW_FILE;  					}  				break;  				}  			case EOB_ACT_CONTINUE_SCAN: -				(yy_c_buf_p) = -					(yytext_ptr) + yy_amount_of_matched_text; +				yy_c_buf_p = +					yytext_ptr + yy_amount_of_matched_text; -				yy_current_state = yy_get_previous_state(  ); +				yy_current_state = yy_get_previous_state(); -				yy_cp = (yy_c_buf_p); -				yy_bp = (yytext_ptr) + YY_MORE_ADJ; +				yy_cp = yy_c_buf_p; +				yy_bp = yytext_ptr + YY_MORE_ADJ;  				goto yy_match;  			case EOB_ACT_LAST_MATCH: -				(yy_c_buf_p) = -				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; +				yy_c_buf_p = +				&yy_current_buffer->yy_ch_buf[yy_n_chars]; -				yy_current_state = yy_get_previous_state(  ); +				yy_current_state = yy_get_previous_state(); -				yy_cp = (yy_c_buf_p); -				yy_bp = (yytext_ptr) + YY_MORE_ADJ; +				yy_cp = yy_c_buf_p; +				yy_bp = yytext_ptr + YY_MORE_ADJ;  				goto yy_find_action;  			}  		break; @@ -2199,7 +2137,8 @@ YY_FATAL_ERROR( "flex scanner jammed" );  			"fatal flex scanner internal error--no action found" );  	} /* end of action switch */  		} /* end of scanning one token */ -} /* end of llvmAsmlex */ +	} /* end of yylex */ +  /* yy_get_next_buffer - try to read in a new buffer   * @@ -2208,20 +2147,21 @@ YY_FATAL_ERROR( "flex scanner jammed" );   *	EOB_ACT_CONTINUE_SCAN - continue scanning from current position   *	EOB_ACT_END_OF_FILE - end of file   */ -static int yy_get_next_buffer (void) -{ -    	register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; -	register char *source = (yytext_ptr); + +static int yy_get_next_buffer() +	{ +	register char *dest = yy_current_buffer->yy_ch_buf; +	register char *source = yytext_ptr;  	register int number_to_move, i;  	int ret_val; -	if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) +	if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )  		YY_FATAL_ERROR(  		"fatal flex scanner internal error--end of buffer missed" ); -	if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) +	if ( yy_current_buffer->yy_fill_buffer == 0 )  		{ /* Don't try to fill the buffer, so this is an EOF. */ -		if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) +		if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )  			{  			/* We matched a single character, the EOB, so  			 * treat this as a final EOF. @@ -2241,30 +2181,34 @@ static int yy_get_next_buffer (void)  	/* Try to read more data. */  	/* First move last chars to start of buffer. */ -	number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; +	number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;  	for ( i = 0; i < number_to_move; ++i )  		*(dest++) = *(source++); -	if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) +	if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )  		/* don't do the read, it's not guaranteed to return an EOF,  		 * just force an EOF  		 */ -		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; +		yy_current_buffer->yy_n_chars = yy_n_chars = 0;  	else  		{ -			int num_to_read = -			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; +		int num_to_read = +			yy_current_buffer->yy_buf_size - number_to_move - 1;  		while ( num_to_read <= 0 )  			{ /* Not enough room in the buffer - grow it. */ +#ifdef YY_USES_REJECT +			YY_FATAL_ERROR( +"input buffer overflow, can't enlarge buffer because scanner uses REJECT" ); +#else  			/* just a shorter name for the current buffer */ -			YY_BUFFER_STATE b = YY_CURRENT_BUFFER; +			YY_BUFFER_STATE b = yy_current_buffer;  			int yy_c_buf_p_offset = -				(int) ((yy_c_buf_p) - b->yy_ch_buf); +				(int) (yy_c_buf_p - b->yy_ch_buf);  			if ( b->yy_is_our_buffer )  				{ @@ -2277,7 +2221,8 @@ static int yy_get_next_buffer (void)  				b->yy_ch_buf = (char *)  					/* Include room in for 2 EOB chars. */ -					llvmAsmrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2  ); +					yy_flex_realloc( (void *) b->yy_ch_buf, +							 b->yy_buf_size + 2 );  				}  			else  				/* Can't grow it, we don't own it. */ @@ -2287,35 +2232,35 @@ static int yy_get_next_buffer (void)  				YY_FATAL_ERROR(  				"fatal error - scanner input buffer overflow" ); -			(yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; +			yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset]; -			num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - +			num_to_read = yy_current_buffer->yy_buf_size -  						number_to_move - 1; - +#endif  			}  		if ( num_to_read > YY_READ_BUF_SIZE )  			num_to_read = YY_READ_BUF_SIZE;  		/* Read in more data. */ -		YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), -			(yy_n_chars), num_to_read ); +		YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]), +			yy_n_chars, num_to_read ); -		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); +		yy_current_buffer->yy_n_chars = yy_n_chars;  		} -	if ( (yy_n_chars) == 0 ) +	if ( yy_n_chars == 0 )  		{  		if ( number_to_move == YY_MORE_ADJ )  			{  			ret_val = EOB_ACT_END_OF_FILE; -			llvmAsmrestart(llvmAsmin  ); +			yyrestart( yyin );  			}  		else  			{  			ret_val = EOB_ACT_LAST_MATCH; -			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = +			yy_current_buffer->yy_buffer_status =  				YY_BUFFER_EOF_PENDING;  			}  		} @@ -2323,141 +2268,149 @@ static int yy_get_next_buffer (void)  	else  		ret_val = EOB_ACT_CONTINUE_SCAN; -	(yy_n_chars) += number_to_move; -	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; -	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; +	yy_n_chars += number_to_move; +	yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR; +	yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR; -	(yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; +	yytext_ptr = &yy_current_buffer->yy_ch_buf[0];  	return ret_val; -} +	} +  /* yy_get_previous_state - get the state just before the EOB char was reached */ -    static yy_state_type yy_get_previous_state (void) -{ +static yy_state_type yy_get_previous_state() +	{  	register yy_state_type yy_current_state;  	register char *yy_cp; -     -	yy_current_state = (yy_start); -	for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) +	yy_current_state = yy_start; +	yy_state_ptr = yy_state_buf; +	*yy_state_ptr++ = yy_current_state; + +	for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )  		{  		register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); -		if ( yy_accept[yy_current_state] ) -			{ -			(yy_last_accepting_state) = yy_current_state; -			(yy_last_accepting_cpos) = yy_cp; -			}  		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )  			{  			yy_current_state = (int) yy_def[yy_current_state]; -			if ( yy_current_state >= 557 ) +			if ( yy_current_state >= 554 )  				yy_c = yy_meta[(unsigned int) yy_c];  			}  		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; +		*yy_state_ptr++ = yy_current_state;  		}  	return yy_current_state; -} +	} +  /* yy_try_NUL_trans - try to make a transition on the NUL character   *   * synopsis   *	next_state = yy_try_NUL_trans( current_state );   */ -    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state ) -{ + +#ifdef YY_USE_PROTOS +static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state ) +#else +static yy_state_type yy_try_NUL_trans( yy_current_state ) +yy_state_type yy_current_state; +#endif +	{  	register int yy_is_jam; -    	register char *yy_cp = (yy_c_buf_p);  	register YY_CHAR yy_c = 1; -	if ( yy_accept[yy_current_state] ) -		{ -		(yy_last_accepting_state) = yy_current_state; -		(yy_last_accepting_cpos) = yy_cp; -		}  	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )  		{  		yy_current_state = (int) yy_def[yy_current_state]; -		if ( yy_current_state >= 557 ) +		if ( yy_current_state >= 554 )  			yy_c = yy_meta[(unsigned int) yy_c];  		}  	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; -	yy_is_jam = (yy_current_state == 556); +	yy_is_jam = (yy_current_state == 553); +	if ( ! yy_is_jam ) +		*yy_state_ptr++ = yy_current_state;  	return yy_is_jam ? 0 : yy_current_state; -} +	} -    static inline void yyunput (int c, register char * yy_bp ) -{ -	register char *yy_cp; -     -    yy_cp = (yy_c_buf_p); -	/* undo effects of setting up llvmAsmtext */ -	*yy_cp = (yy_hold_char); +#ifndef YY_NO_UNPUT +#ifdef YY_USE_PROTOS +static inline void yyunput( int c, register char *yy_bp ) +#else +static inline void yyunput( c, yy_bp ) +int c; +register char *yy_bp; +#endif +	{ +	register char *yy_cp = yy_c_buf_p; + +	/* undo effects of setting up yytext */ +	*yy_cp = yy_hold_char; -	if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) +	if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )  		{ /* need to shift things up to make room */  		/* +2 for EOB chars. */ -		register int number_to_move = (yy_n_chars) + 2; -		register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ -					YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; +		register int number_to_move = yy_n_chars + 2; +		register char *dest = &yy_current_buffer->yy_ch_buf[ +					yy_current_buffer->yy_buf_size + 2];  		register char *source = -				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; +				&yy_current_buffer->yy_ch_buf[number_to_move]; -		while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) +		while ( source > yy_current_buffer->yy_ch_buf )  			*--dest = *--source;  		yy_cp += (int) (dest - source);  		yy_bp += (int) (dest - source); -		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = -			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; +		yy_current_buffer->yy_n_chars = +			yy_n_chars = yy_current_buffer->yy_buf_size; -		if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) +		if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )  			YY_FATAL_ERROR( "flex scanner push-back overflow" );  		}  	*--yy_cp = (char) c; -    if ( c == '\n' ){ -        --llvmAsmlineno; -    } +	if ( c == '\n' ) +		--yylineno; + +	yytext_ptr = yy_bp; +	yy_hold_char = *yy_cp; +	yy_c_buf_p = yy_cp; +	} +#endif	/* ifndef YY_NO_UNPUT */ -	(yytext_ptr) = yy_bp; -	(yy_hold_char) = *yy_cp; -	(yy_c_buf_p) = yy_cp; -}  #ifndef YY_NO_INPUT  #ifdef __cplusplus -    static int yyinput (void) +static int yyinput()  #else -    static int input  (void) +static int input()  #endif - -{ +	{  	int c; -     -	*(yy_c_buf_p) = (yy_hold_char); -	if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) +	*yy_c_buf_p = yy_hold_char; + +	if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )  		{  		/* yy_c_buf_p now points to the character we want to return.  		 * If this occurs *before* the EOB characters, then it's a  		 * valid NUL; if not, then we've hit the end of the buffer.  		 */ -		if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) +		if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )  			/* This was really a NUL. */ -			*(yy_c_buf_p) = '\0'; +			*yy_c_buf_p = '\0';  		else  			{ /* need more input */ -			int offset = (yy_c_buf_p) - (yytext_ptr); -			++(yy_c_buf_p); +			int offset = yy_c_buf_p - yytext_ptr; +			++yy_c_buf_p; -			switch ( yy_get_next_buffer(  ) ) +			switch ( yy_get_next_buffer() )  				{  				case EOB_ACT_LAST_MATCH:  					/* This happens because yy_g_n_b() @@ -2471,16 +2424,16 @@ static int yy_get_next_buffer (void)  					 */  					/* Reset buffer status. */ -					llvmAsmrestart(llvmAsmin ); +					yyrestart( yyin ); -					/*FALLTHROUGH*/ +					/* fall through */  				case EOB_ACT_END_OF_FILE:  					{ -					if ( llvmAsmwrap( ) ) +					if ( yywrap() )  						return EOF; -					if ( ! (yy_did_buffer_switch_on_eof) ) +					if ( ! yy_did_buffer_switch_on_eof )  						YY_NEW_FILE;  #ifdef __cplusplus  					return yyinput(); @@ -2490,170 +2443,169 @@ static int yy_get_next_buffer (void)  					}  				case EOB_ACT_CONTINUE_SCAN: -					(yy_c_buf_p) = (yytext_ptr) + offset; +					yy_c_buf_p = yytext_ptr + offset;  					break;  				}  			}  		} -	c = *(unsigned char *) (yy_c_buf_p);	/* cast for 8-bit char's */ -	*(yy_c_buf_p) = '\0';	/* preserve llvmAsmtext */ -	(yy_hold_char) = *++(yy_c_buf_p); +	c = *(unsigned char *) yy_c_buf_p;	/* cast for 8-bit char's */ +	*yy_c_buf_p = '\0';	/* preserve yytext */ +	yy_hold_char = *++yy_c_buf_p;  	if ( c == '\n' ) -		    -    llvmAsmlineno++; -; +		++yylineno;  	return c; -} -#endif	/* ifndef YY_NO_INPUT */ +	} +#endif /* YY_NO_INPUT */ -/** Immediately switch to a different input stream. - * @param input_file A readable stream. - *  - * @note This function does not reset the start condition to @c INITIAL . - */ -    void llvmAsmrestart  (FILE * input_file ) -{ -     -	if ( ! YY_CURRENT_BUFFER ){ -        llvmAsmensure_buffer_stack (); -		YY_CURRENT_BUFFER_LVALUE = -            llvmAsm_create_buffer(llvmAsmin,YY_BUF_SIZE ); +#ifdef YY_USE_PROTOS +void yyrestart( FILE *input_file ) +#else +void yyrestart( input_file ) +FILE *input_file; +#endif +	{ +	if ( ! yy_current_buffer ) +		yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); + +	yy_init_buffer( yy_current_buffer, input_file ); +	yy_load_buffer_state();  	} -	llvmAsm_init_buffer(YY_CURRENT_BUFFER,input_file ); -	llvmAsm_load_buffer_state( ); -} -/** Switch to a different input buffer. - * @param new_buffer The new input buffer. - *  - */ -    void llvmAsm_switch_to_buffer  (YY_BUFFER_STATE  new_buffer ) -{ -     -	/* TODO. We should be able to replace this entire function body -	 * with -	 *		llvmAsmpop_buffer_state(); -	 *		llvmAsmpush_buffer_state(new_buffer); -     */ -	llvmAsmensure_buffer_stack (); -	if ( YY_CURRENT_BUFFER == new_buffer ) +#ifdef YY_USE_PROTOS +void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer ) +#else +void yy_switch_to_buffer( new_buffer ) +YY_BUFFER_STATE new_buffer; +#endif +	{ +	if ( yy_current_buffer == new_buffer )  		return; -	if ( YY_CURRENT_BUFFER ) +	if ( yy_current_buffer )  		{  		/* Flush out information for old buffer. */ -		*(yy_c_buf_p) = (yy_hold_char); -		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); -		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); +		*yy_c_buf_p = yy_hold_char; +		yy_current_buffer->yy_buf_pos = yy_c_buf_p; +		yy_current_buffer->yy_n_chars = yy_n_chars;  		} -	YY_CURRENT_BUFFER_LVALUE = new_buffer; -	llvmAsm_load_buffer_state( ); +	yy_current_buffer = new_buffer; +	yy_load_buffer_state();  	/* We don't actually know whether we did this switch during -	 * EOF (llvmAsmwrap()) processing, but the only time this flag -	 * is looked at is after llvmAsmwrap() is called, so it's safe +	 * EOF (yywrap()) processing, but the only time this flag +	 * is looked at is after yywrap() is called, so it's safe  	 * to go ahead and always set it.  	 */ -	(yy_did_buffer_switch_on_eof) = 1; -} +	yy_did_buffer_switch_on_eof = 1; +	} -static void llvmAsm_load_buffer_state  (void) -{ -    	(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; -	(yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; -	llvmAsmin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; -	(yy_hold_char) = *(yy_c_buf_p); -} -/** Allocate and initialize an input buffer state. - * @param file A readable stream. - * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. - *  - * @return the allocated buffer state. - */ -    YY_BUFFER_STATE llvmAsm_create_buffer  (FILE * file, int  size ) -{ +#ifdef YY_USE_PROTOS +void yy_load_buffer_state( void ) +#else +void yy_load_buffer_state() +#endif +	{ +	yy_n_chars = yy_current_buffer->yy_n_chars; +	yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos; +	yyin = yy_current_buffer->yy_input_file; +	yy_hold_char = *yy_c_buf_p; +	} + + +#ifdef YY_USE_PROTOS +YY_BUFFER_STATE yy_create_buffer( FILE *file, int size ) +#else +YY_BUFFER_STATE yy_create_buffer( file, size ) +FILE *file; +int size; +#endif +	{  	YY_BUFFER_STATE b; -     -	b = (YY_BUFFER_STATE) llvmAsmalloc(sizeof( struct yy_buffer_state )  ); + +	b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );  	if ( ! b ) -		YY_FATAL_ERROR( "out of dynamic memory in llvmAsm_create_buffer()" ); +		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );  	b->yy_buf_size = size;  	/* yy_ch_buf has to be 2 characters longer than the size given because  	 * we need to put in 2 end-of-buffer characters.  	 */ -	b->yy_ch_buf = (char *) llvmAsmalloc(b->yy_buf_size + 2  ); +	b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );  	if ( ! b->yy_ch_buf ) -		YY_FATAL_ERROR( "out of dynamic memory in llvmAsm_create_buffer()" ); +		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );  	b->yy_is_our_buffer = 1; -	llvmAsm_init_buffer(b,file ); +	yy_init_buffer( b, file );  	return b; -} +	} -/** Destroy the buffer. - * @param b a buffer created with llvmAsm_create_buffer() - *  - */ -    void llvmAsm_delete_buffer (YY_BUFFER_STATE  b ) -{ -     + +#ifdef YY_USE_PROTOS +void yy_delete_buffer( YY_BUFFER_STATE b ) +#else +void yy_delete_buffer( b ) +YY_BUFFER_STATE b; +#endif +	{  	if ( ! b )  		return; -	if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ -		YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; +	if ( b == yy_current_buffer ) +		yy_current_buffer = (YY_BUFFER_STATE) 0;  	if ( b->yy_is_our_buffer ) -		llvmAsmfree((void *) b->yy_ch_buf  ); +		yy_flex_free( (void *) b->yy_ch_buf ); -	llvmAsmfree((void *) b  ); -} +	yy_flex_free( (void *) b ); +	} -/* Initializes or reinitializes a buffer. - * This function is sometimes called more than once on the same buffer, - * such as during a llvmAsmrestart() or at EOF. - */ -    static void llvmAsm_init_buffer  (YY_BUFFER_STATE  b, FILE * file ) -{ -	int oerrno = errno; -     -	llvmAsm_flush_buffer(b ); + +#ifdef YY_USE_PROTOS +void yy_init_buffer( YY_BUFFER_STATE b, FILE *file ) +#else +void yy_init_buffer( b, file ) +YY_BUFFER_STATE b; +FILE *file; +#endif + + +	{ +	yy_flush_buffer( b );  	b->yy_input_file = file;  	b->yy_fill_buffer = 1; -    /* If b is the current buffer, then llvmAsm_init_buffer was _probably_ -     * called from llvmAsmrestart() or through yy_get_next_buffer. -     * In that case, we don't want to reset the lineno or column. -     */ -    if (b != YY_CURRENT_BUFFER){ -        b->yy_bs_lineno = 1; -        b->yy_bs_column = 0; -    } +#if YY_ALWAYS_INTERACTIVE +	b->yy_is_interactive = 1; +#else +#if YY_NEVER_INTERACTIVE +	b->yy_is_interactive = 0; +#else +	b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; +#endif +#endif +	} -        b->yy_is_interactive = 0; -     -	errno = oerrno; -} -/** Discard all buffered characters. On the next scan, YY_INPUT will be called. - * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. - *  - */ -    void llvmAsm_flush_buffer (YY_BUFFER_STATE  b ) -{ -    	if ( ! b ) +#ifdef YY_USE_PROTOS +void yy_flush_buffer( YY_BUFFER_STATE b ) +#else +void yy_flush_buffer( b ) +YY_BUFFER_STATE b; +#endif + +	{ +	if ( ! b )  		return;  	b->yy_n_chars = 0; @@ -2670,123 +2622,31 @@ static void llvmAsm_load_buffer_state  (void)  	b->yy_at_bol = 1;  	b->yy_buffer_status = YY_BUFFER_NEW; -	if ( b == YY_CURRENT_BUFFER ) -		llvmAsm_load_buffer_state( ); -} - -/** Pushes the new state onto the stack. The new state becomes - *  the current state. This function will allocate the stack - *  if necessary. - *  @param new_buffer The new state. - *   - */ -void llvmAsmpush_buffer_state (YY_BUFFER_STATE new_buffer ) -{ -    	if (new_buffer == NULL) -		return; - -	llvmAsmensure_buffer_stack(); - -	/* This block is copied from llvmAsm_switch_to_buffer. */ -	if ( YY_CURRENT_BUFFER ) -		{ -		/* Flush out information for old buffer. */ -		*(yy_c_buf_p) = (yy_hold_char); -		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); -		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); -		} - -	/* Only push if top exists. Otherwise, replace top. */ -	if (YY_CURRENT_BUFFER) -		(yy_buffer_stack_top)++; -	YY_CURRENT_BUFFER_LVALUE = new_buffer; - -	/* copied from llvmAsm_switch_to_buffer. */ -	llvmAsm_load_buffer_state( ); -	(yy_did_buffer_switch_on_eof) = 1; -} - -/** Removes and deletes the top of the stack, if present. - *  The next element becomes the new top. - *   - */ -void llvmAsmpop_buffer_state (void) -{ -    	if (!YY_CURRENT_BUFFER) -		return; - -	llvmAsm_delete_buffer(YY_CURRENT_BUFFER ); -	YY_CURRENT_BUFFER_LVALUE = NULL; -	if ((yy_buffer_stack_top) > 0) -		--(yy_buffer_stack_top); - -	if (YY_CURRENT_BUFFER) { -		llvmAsm_load_buffer_state( ); -		(yy_did_buffer_switch_on_eof) = 1; +	if ( b == yy_current_buffer ) +		yy_load_buffer_state();  	} -} - -/* Allocates the stack if it does not exist. - *  Guarantees space for at least one push. - */ -static void llvmAsmensure_buffer_stack (void) -{ -	int num_to_alloc; -     -	if (!(yy_buffer_stack)) { - -		/* First allocation is just for 2 elements, since we don't know if this -		 * scanner will even need a stack. We use 2 instead of 1 to avoid an -		 * immediate realloc on the next call. -         */ -		num_to_alloc = 1; -		(yy_buffer_stack) = (struct yy_buffer_state**)llvmAsmalloc -								(num_to_alloc * sizeof(struct yy_buffer_state*) -								); -		 -		memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); -				 -		(yy_buffer_stack_max) = num_to_alloc; -		(yy_buffer_stack_top) = 0; -		return; -	} - -	if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ -		/* Increase the buffer to prepare for a possible push. */ -		int grow_size = 8 /* arbitrary grow size */; -		num_to_alloc = (yy_buffer_stack_max) + grow_size; -		(yy_buffer_stack) = (struct yy_buffer_state**)llvmAsmrealloc -								((yy_buffer_stack), -								num_to_alloc * sizeof(struct yy_buffer_state*) -								); - -		/* zero only the new slots.*/ -		memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); -		(yy_buffer_stack_max) = num_to_alloc; -	} -} - -/** Setup the input buffer state to scan directly from a user-specified character buffer. - * @param base the character buffer - * @param size the size in bytes of the character buffer - *  - * @return the newly allocated buffer state object.  - */ -YY_BUFFER_STATE llvmAsm_scan_buffer  (char * base, yy_size_t  size ) -{ +#ifndef YY_NO_SCAN_BUFFER +#ifdef YY_USE_PROTOS +YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size ) +#else +YY_BUFFER_STATE yy_scan_buffer( base, size ) +char *base; +yy_size_t size; +#endif +	{  	YY_BUFFER_STATE b; -     +  	if ( size < 2 ||  	     base[size-2] != YY_END_OF_BUFFER_CHAR ||  	     base[size-1] != YY_END_OF_BUFFER_CHAR )  		/* They forgot to leave room for the EOB's. */  		return 0; -	b = (YY_BUFFER_STATE) llvmAsmalloc(sizeof( struct yy_buffer_state )  ); +	b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );  	if ( ! b ) -		YY_FATAL_ERROR( "out of dynamic memory in llvmAsm_scan_buffer()" ); +		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );  	b->yy_buf_size = size - 2;	/* "- 2" to take care of EOB's */  	b->yy_buf_pos = b->yy_ch_buf = base; @@ -2798,53 +2658,58 @@ YY_BUFFER_STATE llvmAsm_scan_buffer  (char * base, yy_size_t  size )  	b->yy_fill_buffer = 0;  	b->yy_buffer_status = YY_BUFFER_NEW; -	llvmAsm_switch_to_buffer(b  ); +	yy_switch_to_buffer( b );  	return b; -} +	} +#endif -/** Setup the input buffer state to scan a string. The next call to llvmAsmlex() will - * scan from a @e copy of @a str. - * @param str a NUL-terminated string to scan - *  - * @return the newly allocated buffer state object. - * @note If you want to scan bytes that may contain NUL values, then use - *       llvmAsm_scan_bytes() instead. - */ -YY_BUFFER_STATE llvmAsm_scan_string (yyconst char * yystr ) -{ -     -	return llvmAsm_scan_bytes(yystr,strlen(yystr) ); -} -/** Setup the input buffer state to scan the given bytes. The next call to llvmAsmlex() will - * scan from a @e copy of @a bytes. - * @param bytes the byte buffer to scan - * @param len the number of bytes in the buffer pointed to by @a bytes. - *  - * @return the newly allocated buffer state object. - */ -YY_BUFFER_STATE llvmAsm_scan_bytes  (yyconst char * yybytes, int  _yybytes_len ) -{ +#ifndef YY_NO_SCAN_STRING +#ifdef YY_USE_PROTOS +YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str ) +#else +YY_BUFFER_STATE yy_scan_string( yy_str ) +yyconst char *yy_str; +#endif +	{ +	int len; +	for ( len = 0; yy_str[len]; ++len ) +		; + +	return yy_scan_bytes( yy_str, len ); +	} +#endif + + +#ifndef YY_NO_SCAN_BYTES +#ifdef YY_USE_PROTOS +YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len ) +#else +YY_BUFFER_STATE yy_scan_bytes( bytes, len ) +yyconst char *bytes; +int len; +#endif +	{  	YY_BUFFER_STATE b;  	char *buf;  	yy_size_t n;  	int i; -     +  	/* Get memory for full buffer, including space for trailing EOB's. */ -	n = _yybytes_len + 2; -	buf = (char *) llvmAsmalloc(n  ); +	n = len + 2; +	buf = (char *) yy_flex_alloc( n );  	if ( ! buf ) -		YY_FATAL_ERROR( "out of dynamic memory in llvmAsm_scan_bytes()" ); +		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); -	for ( i = 0; i < _yybytes_len; ++i ) -		buf[i] = yybytes[i]; +	for ( i = 0; i < len; ++i ) +		buf[i] = bytes[i]; -	buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; +	buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR; -	b = llvmAsm_scan_buffer(buf,n ); +	b = yy_scan_buffer( buf, n );  	if ( ! b ) -		YY_FATAL_ERROR( "bad buffer in llvmAsm_scan_bytes()" ); +		YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );  	/* It's okay to grow etc. this buffer, and we should throw it  	 * away when we're done. @@ -2852,199 +2717,148 @@ YY_BUFFER_STATE llvmAsm_scan_bytes  (yyconst char * yybytes, int  _yybytes_len )  	b->yy_is_our_buffer = 1;  	return b; -} - -#ifndef YY_EXIT_FAILURE -#define YY_EXIT_FAILURE 2 +	}  #endif -static void yy_fatal_error (yyconst char* msg ) -{ -    	(void) fprintf( stderr, "%s\n", msg ); -	exit( YY_EXIT_FAILURE ); -} - -/* Redefine yyless() so it works in section 3 code. */ -#undef yyless -#define yyless(n) \ -	do \ -		{ \ -		/* Undo effects of setting up llvmAsmtext. */ \ -        int yyless_macro_arg = (n); \ -        YY_LESS_LINENO(yyless_macro_arg);\ -		llvmAsmtext[llvmAsmleng] = (yy_hold_char); \ -		(yy_c_buf_p) = llvmAsmtext + yyless_macro_arg; \ -		(yy_hold_char) = *(yy_c_buf_p); \ -		*(yy_c_buf_p) = '\0'; \ -		llvmAsmleng = yyless_macro_arg; \ -		} \ -	while ( 0 ) +#ifndef YY_NO_PUSH_STATE +#ifdef YY_USE_PROTOS +static void yy_push_state( int new_state ) +#else +static void yy_push_state( new_state ) +int new_state; +#endif +	{ +	if ( yy_start_stack_ptr >= yy_start_stack_depth ) +		{ +		yy_size_t new_size; -/* Accessor  methods (get/set functions) to struct members. */ +		yy_start_stack_depth += YY_START_STACK_INCR; +		new_size = yy_start_stack_depth * sizeof( int ); -/** Get the current line number. - *  - */ -int llvmAsmget_lineno  (void) -{ -         -    return llvmAsmlineno; -} +		if ( ! yy_start_stack ) +			yy_start_stack = (int *) yy_flex_alloc( new_size ); -/** Get the input stream. - *  - */ -FILE *llvmAsmget_in  (void) -{ -        return llvmAsmin; -} +		else +			yy_start_stack = (int *) yy_flex_realloc( +					(void *) yy_start_stack, new_size ); -/** Get the output stream. - *  - */ -FILE *llvmAsmget_out  (void) -{ -        return llvmAsmout; -} +		if ( ! yy_start_stack ) +			YY_FATAL_ERROR( +			"out of memory expanding start-condition stack" ); +		} -/** Get the length of the current token. - *  - */ -int llvmAsmget_leng  (void) -{ -        return llvmAsmleng; -} +	yy_start_stack[yy_start_stack_ptr++] = YY_START; -/** Get the current token. - *  - */ +	BEGIN(new_state); +	} +#endif -char *llvmAsmget_text  (void) -{ -        return llvmAsmtext; -} -/** Set the current line number. - * @param line_number - *  - */ -void llvmAsmset_lineno (int  line_number ) -{ -     -    llvmAsmlineno = line_number; -} +#ifndef YY_NO_POP_STATE +static void yy_pop_state() +	{ +	if ( --yy_start_stack_ptr < 0 ) +		YY_FATAL_ERROR( "start-condition stack underflow" ); -/** Set the input stream. This does not discard the current - * input buffer. - * @param in_str A readable stream. - *  - * @see llvmAsm_switch_to_buffer - */ -void llvmAsmset_in (FILE *  in_str ) -{ -        llvmAsmin = in_str ; -} +	BEGIN(yy_start_stack[yy_start_stack_ptr]); +	} +#endif -void llvmAsmset_out (FILE *  out_str ) -{ -        llvmAsmout = out_str ; -} -int llvmAsmget_debug  (void) -{ -        return llvmAsm_flex_debug; -} +#ifndef YY_NO_TOP_STATE +static int yy_top_state() +	{ +	return yy_start_stack[yy_start_stack_ptr - 1]; +	} +#endif -void llvmAsmset_debug (int  bdebug ) -{ -        llvmAsm_flex_debug = bdebug ; -} +#ifndef YY_EXIT_FAILURE +#define YY_EXIT_FAILURE 2 +#endif -static int yy_init_globals (void) -{ -        /* Initialization is the same as for the non-reentrant scanner. -     * This function is called from llvmAsmlex_destroy(), so don't allocate here. -     */ - -    /* We do not touch llvmAsmlineno unless the option is enabled. */ -    llvmAsmlineno =  1; -     -    (yy_buffer_stack) = 0; -    (yy_buffer_stack_top) = 0; -    (yy_buffer_stack_max) = 0; -    (yy_c_buf_p) = (char *) 0; -    (yy_init) = 0; -    (yy_start) = 0; - -/* Defined in main.c */ -#ifdef YY_STDINIT -    llvmAsmin = stdin; -    llvmAsmout = stdout; +#ifdef YY_USE_PROTOS +static void yy_fatal_error( yyconst char msg[] )  #else -    llvmAsmin = (FILE *) 0; -    llvmAsmout = (FILE *) 0; +static void yy_fatal_error( msg ) +char msg[];  #endif +	{ +	(void) fprintf( stderr, "%s\n", msg ); +	exit( YY_EXIT_FAILURE ); +	} -    /* For future reference: Set errno on error, since we are called by -     * llvmAsmlex_init() -     */ -    return 0; -} -/* llvmAsmlex_destroy is for both reentrant and non-reentrant scanners. */ -int llvmAsmlex_destroy  (void) -{ -     -    /* Pop the buffer stack, destroying each element. */ -	while(YY_CURRENT_BUFFER){ -		llvmAsm_delete_buffer(YY_CURRENT_BUFFER  ); -		YY_CURRENT_BUFFER_LVALUE = NULL; -		llvmAsmpop_buffer_state(); -	} -	/* Destroy the stack itself. */ -	llvmAsmfree((yy_buffer_stack) ); -	(yy_buffer_stack) = NULL; +/* Redefine yyless() so it works in section 3 code. */ -    /* Reset the globals. This is important in a non-reentrant scanner so the next time -     * llvmAsmlex() is called, initialization will occur. */ -    yy_init_globals( ); +#undef yyless +#define yyless(n) \ +	do \ +		{ \ +		/* Undo effects of setting up yytext. */ \ +		yytext[yyleng] = yy_hold_char; \ +		yy_c_buf_p = yytext + n; \ +		yy_hold_char = *yy_c_buf_p; \ +		*yy_c_buf_p = '\0'; \ +		yyleng = n; \ +		} \ +	while ( 0 ) -    return 0; -} -/* - * Internal utility routines. - */ +/* Internal utility routines. */  #ifndef yytext_ptr -static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) -{ +#ifdef YY_USE_PROTOS +static void yy_flex_strncpy( char *s1, yyconst char *s2, int n ) +#else +static void yy_flex_strncpy( s1, s2, n ) +char *s1; +yyconst char *s2; +int n; +#endif +	{  	register int i;  	for ( i = 0; i < n; ++i )  		s1[i] = s2[i]; -} +	}  #endif  #ifdef YY_NEED_STRLEN -static int yy_flex_strlen (yyconst char * s ) -{ +#ifdef YY_USE_PROTOS +static int yy_flex_strlen( yyconst char *s ) +#else +static int yy_flex_strlen( s ) +yyconst char *s; +#endif +	{  	register int n;  	for ( n = 0; s[n]; ++n )  		;  	return n; -} +	}  #endif -void *llvmAsmalloc (yy_size_t  size ) -{ + +#ifdef YY_USE_PROTOS +static void *yy_flex_alloc( yy_size_t size ) +#else +static void *yy_flex_alloc( size ) +yy_size_t size; +#endif +	{  	return (void *) malloc( size ); -} +	} -void *llvmAsmrealloc  (void * ptr, yy_size_t  size ) -{ +#ifdef YY_USE_PROTOS +static inline void *yy_flex_realloc( void *ptr, yy_size_t size ) +#else +static inline void *yy_flex_realloc( ptr, size ) +void *ptr; +yy_size_t size; +#endif +	{  	/* The cast to (char *) in the following accommodates both  	 * implementations that use char* generic pointers, and those  	 * that use void* generic pointers.  It works with the latter @@ -3053,16 +2867,24 @@ void *llvmAsmrealloc  (void * ptr, yy_size_t  size )  	 * as though doing an assignment.  	 */  	return (void *) realloc( (char *) ptr, size ); -} - -void llvmAsmfree (void * ptr ) -{ -	free( (char *) ptr );	/* see llvmAsmrealloc() for (char *) cast */ -} - -#define YYTABLES_NAME "yytables" - -#line 400 "/home/asl/proj/llvm/src/lib/AsmParser/Lexer.l" +	} +#ifdef YY_USE_PROTOS +static void yy_flex_free( void *ptr ) +#else +static void yy_flex_free( ptr ) +void *ptr; +#endif +	{ +	free( ptr ); +	} +#if YY_MAIN +int main() +	{ +	yylex(); +	return 0; +	} +#endif +#line 399 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l" diff --git a/llvm/lib/AsmParser/Lexer.l.cvs b/llvm/lib/AsmParser/Lexer.l.cvs index 22fe64bf0de..970a2143129 100644 --- a/llvm/lib/AsmParser/Lexer.l.cvs +++ b/llvm/lib/AsmParser/Lexer.l.cvs @@ -237,7 +237,6 @@ x86_stdcallcc   { return X86_STDCALLCC_TOK; }  x86_fastcallcc  { return X86_FASTCALLCC_TOK; }  void            { RET_TY(Type::VoidTy,  VOID);  } -bool            { RET_TY(Type::Int1Ty,  BOOL);  }  float           { RET_TY(Type::FloatTy, FLOAT); }  double          { RET_TY(Type::DoubleTy,DOUBLE);}  label           { RET_TY(Type::LabelTy, LABEL); } diff --git a/llvm/lib/AsmParser/llvmAsmParser.cpp.cvs b/llvm/lib/AsmParser/llvmAsmParser.cpp.cvs index 390592025ea..66598afb978 100644 --- a/llvm/lib/AsmParser/llvmAsmParser.cpp.cvs +++ b/llvm/lib/AsmParser/llvmAsmParser.cpp.cvs @@ -1,9 +1,7 @@ -/* A Bison parser, made by GNU Bison 2.3.  */ +/* A Bison parser, made by GNU Bison 2.1.  */ -/* Skeleton implementation for Bison's Yacc-like parsers in C - -   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 -   Free Software Foundation, Inc. +/* Skeleton parser for Yacc-like parsing with Bison, +   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.     This program is free software; you can redistribute it and/or modify     it under the terms of the GNU General Public License as published by @@ -20,21 +18,13 @@     Foundation, Inc., 51 Franklin Street, Fifth Floor,     Boston, MA 02110-1301, USA.  */ -/* As a special exception, you may create a larger work that contains -   part or all of the Bison parser skeleton and distribute that work -   under terms of your choice, so long as that work isn't itself a -   parser generator using the skeleton or a modified version thereof -   as a parser skeleton.  Alternatively, if you modify or redistribute -   the parser skeleton itself, you may (at your option) remove this -   special exception, which will cause the skeleton and the resulting -   Bison output files to be licensed under the GNU General Public -   License without this special exception. - -   This special exception was added by the Free Software Foundation in -   version 2.2 of Bison.  */ +/* As a special exception, when this file is copied by Bison into a +   Bison output file, you may use that output file without restriction. +   This special exception was added by the Free Software Foundation +   in version 1.24 of Bison.  */ -/* C LALR(1) parser skeleton written by Richard Stallman, by -   simplifying the original so-called "semantic" parser.  */ +/* Written by Richard Stallman by simplifying the original so called +   ``semantic'' parser.  */  /* All symbols defined below should begin with yy or YY, to avoid     infringing on user name space.  This should be done even for local @@ -47,7 +37,7 @@  #define YYBISON 1  /* Bison version.  */ -#define YYBISON_VERSION "2.3" +#define YYBISON_VERSION "2.1"  /* Skeleton name.  */  #define YYSKELETON_NAME "yacc.c" @@ -80,131 +70,130 @@       UINTVAL = 261,       FPVAL = 262,       VOID = 263, -     BOOL = 264, -     INTTYPE = 265, -     FLOAT = 266, -     DOUBLE = 267, -     LABEL = 268, -     TYPE = 269, -     VAR_ID = 270, -     LABELSTR = 271, -     STRINGCONSTANT = 272, -     IMPLEMENTATION = 273, -     ZEROINITIALIZER = 274, -     TRUETOK = 275, -     FALSETOK = 276, -     BEGINTOK = 277, -     ENDTOK = 278, -     DECLARE = 279, -     DEFINE = 280, -     GLOBAL = 281, -     CONSTANT = 282, -     SECTION = 283, -     VOLATILE = 284, -     TO = 285, -     DOTDOTDOT = 286, -     NULL_TOK = 287, -     UNDEF = 288, -     INTERNAL = 289, -     LINKONCE = 290, -     WEAK = 291, -     APPENDING = 292, -     DLLIMPORT = 293, -     DLLEXPORT = 294, -     EXTERN_WEAK = 295, -     OPAQUE = 296, -     EXTERNAL = 297, -     TARGET = 298, -     TRIPLE = 299, -     ENDIAN = 300, -     POINTERSIZE = 301, -     LITTLE = 302, -     BIG = 303, -     ALIGN = 304, -     DEPLIBS = 305, -     CALL = 306, -     TAIL = 307, -     ASM_TOK = 308, -     MODULE = 309, -     SIDEEFFECT = 310, -     CC_TOK = 311, -     CCC_TOK = 312, -     CSRETCC_TOK = 313, -     FASTCC_TOK = 314, -     COLDCC_TOK = 315, -     X86_STDCALLCC_TOK = 316, -     X86_FASTCALLCC_TOK = 317, -     DATALAYOUT = 318, -     RET = 319, -     BR = 320, -     SWITCH = 321, -     INVOKE = 322, -     UNWIND = 323, -     UNREACHABLE = 324, -     ADD = 325, -     SUB = 326, -     MUL = 327, -     UDIV = 328, -     SDIV = 329, -     FDIV = 330, -     UREM = 331, -     SREM = 332, -     FREM = 333, -     AND = 334, -     OR = 335, -     XOR = 336, -     ICMP = 337, -     FCMP = 338, -     EQ = 339, -     NE = 340, -     SLT = 341, -     SGT = 342, -     SLE = 343, -     SGE = 344, -     ULT = 345, -     UGT = 346, -     ULE = 347, -     UGE = 348, -     OEQ = 349, -     ONE = 350, -     OLT = 351, -     OGT = 352, -     OLE = 353, -     OGE = 354, -     ORD = 355, -     UNO = 356, -     UEQ = 357, -     UNE = 358, -     MALLOC = 359, -     ALLOCA = 360, -     FREE = 361, -     LOAD = 362, -     STORE = 363, -     GETELEMENTPTR = 364, -     TRUNC = 365, -     ZEXT = 366, -     SEXT = 367, -     FPTRUNC = 368, -     FPEXT = 369, -     BITCAST = 370, -     UITOFP = 371, -     SITOFP = 372, -     FPTOUI = 373, -     FPTOSI = 374, -     INTTOPTR = 375, -     PTRTOINT = 376, -     PHI_TOK = 377, -     SELECT = 378, -     SHL = 379, -     LSHR = 380, -     ASHR = 381, -     VAARG = 382, -     EXTRACTELEMENT = 383, -     INSERTELEMENT = 384, -     SHUFFLEVECTOR = 385, -     NORETURN = 386, -     DEFAULT = 387, -     HIDDEN = 388 +     INTTYPE = 264, +     FLOAT = 265, +     DOUBLE = 266, +     LABEL = 267, +     TYPE = 268, +     VAR_ID = 269, +     LABELSTR = 270, +     STRINGCONSTANT = 271, +     IMPLEMENTATION = 272, +     ZEROINITIALIZER = 273, +     TRUETOK = 274, +     FALSETOK = 275, +     BEGINTOK = 276, +     ENDTOK = 277, +     DECLARE = 278, +     DEFINE = 279, +     GLOBAL = 280, +     CONSTANT = 281, +     SECTION = 282, +     VOLATILE = 283, +     TO = 284, +     DOTDOTDOT = 285, +     NULL_TOK = 286, +     UNDEF = 287, +     INTERNAL = 288, +     LINKONCE = 289, +     WEAK = 290, +     APPENDING = 291, +     DLLIMPORT = 292, +     DLLEXPORT = 293, +     EXTERN_WEAK = 294, +     OPAQUE = 295, +     EXTERNAL = 296, +     TARGET = 297, +     TRIPLE = 298, +     ENDIAN = 299, +     POINTERSIZE = 300, +     LITTLE = 301, +     BIG = 302, +     ALIGN = 303, +     DEPLIBS = 304, +     CALL = 305, +     TAIL = 306, +     ASM_TOK = 307, +     MODULE = 308, +     SIDEEFFECT = 309, +     CC_TOK = 310, +     CCC_TOK = 311, +     CSRETCC_TOK = 312, +     FASTCC_TOK = 313, +     COLDCC_TOK = 314, +     X86_STDCALLCC_TOK = 315, +     X86_FASTCALLCC_TOK = 316, +     DATALAYOUT = 317, +     RET = 318, +     BR = 319, +     SWITCH = 320, +     INVOKE = 321, +     UNWIND = 322, +     UNREACHABLE = 323, +     ADD = 324, +     SUB = 325, +     MUL = 326, +     UDIV = 327, +     SDIV = 328, +     FDIV = 329, +     UREM = 330, +     SREM = 331, +     FREM = 332, +     AND = 333, +     OR = 334, +     XOR = 335, +     ICMP = 336, +     FCMP = 337, +     EQ = 338, +     NE = 339, +     SLT = 340, +     SGT = 341, +     SLE = 342, +     SGE = 343, +     ULT = 344, +     UGT = 345, +     ULE = 346, +     UGE = 347, +     OEQ = 348, +     ONE = 349, +     OLT = 350, +     OGT = 351, +     OLE = 352, +     OGE = 353, +     ORD = 354, +     UNO = 355, +     UEQ = 356, +     UNE = 357, +     MALLOC = 358, +     ALLOCA = 359, +     FREE = 360, +     LOAD = 361, +     STORE = 362, +     GETELEMENTPTR = 363, +     TRUNC = 364, +     ZEXT = 365, +     SEXT = 366, +     FPTRUNC = 367, +     FPEXT = 368, +     BITCAST = 369, +     UITOFP = 370, +     SITOFP = 371, +     FPTOUI = 372, +     FPTOSI = 373, +     INTTOPTR = 374, +     PTRTOINT = 375, +     PHI_TOK = 376, +     SELECT = 377, +     SHL = 378, +     LSHR = 379, +     ASHR = 380, +     VAARG = 381, +     EXTRACTELEMENT = 382, +     INSERTELEMENT = 383, +     SHUFFLEVECTOR = 384, +     NORETURN = 385, +     DEFAULT = 386, +     HIDDEN = 387     };  #endif  /* Tokens.  */ @@ -214,137 +203,136 @@  #define UINTVAL 261  #define FPVAL 262  #define VOID 263 -#define BOOL 264 -#define INTTYPE 265 -#define FLOAT 266 -#define DOUBLE 267 -#define LABEL 268 -#define TYPE 269 -#define VAR_ID 270 -#define LABELSTR 271 -#define STRINGCONSTANT 272 -#define IMPLEMENTATION 273 -#define ZEROINITIALIZER 274 -#define TRUETOK 275 -#define FALSETOK 276 -#define BEGINTOK 277 -#define ENDTOK 278 -#define DECLARE 279 -#define DEFINE 280 -#define GLOBAL 281 -#define CONSTANT 282 -#define SECTION 283 -#define VOLATILE 284 -#define TO 285 -#define DOTDOTDOT 286 -#define NULL_TOK 287 -#define UNDEF 288 -#define INTERNAL 289 -#define LINKONCE 290 -#define WEAK 291 -#define APPENDING 292 -#define DLLIMPORT 293 -#define DLLEXPORT 294 -#define EXTERN_WEAK 295 -#define OPAQUE 296 -#define EXTERNAL 297 -#define TARGET 298 -#define TRIPLE 299 -#define ENDIAN 300 -#define POINTERSIZE 301 -#define LITTLE 302 -#define BIG 303 -#define ALIGN 304 -#define DEPLIBS 305 -#define CALL 306 -#define TAIL 307 -#define ASM_TOK 308 -#define MODULE 309 -#define SIDEEFFECT 310 -#define CC_TOK 311 -#define CCC_TOK 312 -#define CSRETCC_TOK 313 -#define FASTCC_TOK 314 -#define COLDCC_TOK 315 -#define X86_STDCALLCC_TOK 316 -#define X86_FASTCALLCC_TOK 317 -#define DATALAYOUT 318 -#define RET 319 -#define BR 320 -#define SWITCH 321 -#define INVOKE 322 -#define UNWIND 323 -#define UNREACHABLE 324 -#define ADD 325 -#define SUB 326 -#define MUL 327 -#define UDIV 328 -#define SDIV 329 -#define FDIV 330 -#define UREM 331 -#define SREM 332 -#define FREM 333 -#define AND 334 -#define OR 335 -#define XOR 336 -#define ICMP 337 -#define FCMP 338 -#define EQ 339 -#define NE 340 -#define SLT 341 -#define SGT 342 -#define SLE 343 -#define SGE 344 -#define ULT 345 -#define UGT 346 -#define ULE 347 -#define UGE 348 -#define OEQ 349 -#define ONE 350 -#define OLT 351 -#define OGT 352 -#define OLE 353 -#define OGE 354 -#define ORD 355 -#define UNO 356 -#define UEQ 357 -#define UNE 358 -#define MALLOC 359 -#define ALLOCA 360 -#define FREE 361 -#define LOAD 362 -#define STORE 363 -#define GETELEMENTPTR 364 -#define TRUNC 365 -#define ZEXT 366 -#define SEXT 367 -#define FPTRUNC 368 -#define FPEXT 369 -#define BITCAST 370 -#define UITOFP 371 -#define SITOFP 372 -#define FPTOUI 373 -#define FPTOSI 374 -#define INTTOPTR 375 -#define PTRTOINT 376 -#define PHI_TOK 377 -#define SELECT 378 -#define SHL 379 -#define LSHR 380 -#define ASHR 381 -#define VAARG 382 -#define EXTRACTELEMENT 383 -#define INSERTELEMENT 384 -#define SHUFFLEVECTOR 385 -#define NORETURN 386 -#define DEFAULT 387 -#define HIDDEN 388 +#define INTTYPE 264 +#define FLOAT 265 +#define DOUBLE 266 +#define LABEL 267 +#define TYPE 268 +#define VAR_ID 269 +#define LABELSTR 270 +#define STRINGCONSTANT 271 +#define IMPLEMENTATION 272 +#define ZEROINITIALIZER 273 +#define TRUETOK 274 +#define FALSETOK 275 +#define BEGINTOK 276 +#define ENDTOK 277 +#define DECLARE 278 +#define DEFINE 279 +#define GLOBAL 280 +#define CONSTANT 281 +#define SECTION 282 +#define VOLATILE 283 +#define TO 284 +#define DOTDOTDOT 285 +#define NULL_TOK 286 +#define UNDEF 287 +#define INTERNAL 288 +#define LINKONCE 289 +#define WEAK 290 +#define APPENDING 291 +#define DLLIMPORT 292 +#define DLLEXPORT 293 +#define EXTERN_WEAK 294 +#define OPAQUE 295 +#define EXTERNAL 296 +#define TARGET 297 +#define TRIPLE 298 +#define ENDIAN 299 +#define POINTERSIZE 300 +#define LITTLE 301 +#define BIG 302 +#define ALIGN 303 +#define DEPLIBS 304 +#define CALL 305 +#define TAIL 306 +#define ASM_TOK 307 +#define MODULE 308 +#define SIDEEFFECT 309 +#define CC_TOK 310 +#define CCC_TOK 311 +#define CSRETCC_TOK 312 +#define FASTCC_TOK 313 +#define COLDCC_TOK 314 +#define X86_STDCALLCC_TOK 315 +#define X86_FASTCALLCC_TOK 316 +#define DATALAYOUT 317 +#define RET 318 +#define BR 319 +#define SWITCH 320 +#define INVOKE 321 +#define UNWIND 322 +#define UNREACHABLE 323 +#define ADD 324 +#define SUB 325 +#define MUL 326 +#define UDIV 327 +#define SDIV 328 +#define FDIV 329 +#define UREM 330 +#define SREM 331 +#define FREM 332 +#define AND 333 +#define OR 334 +#define XOR 335 +#define ICMP 336 +#define FCMP 337 +#define EQ 338 +#define NE 339 +#define SLT 340 +#define SGT 341 +#define SLE 342 +#define SGE 343 +#define ULT 344 +#define UGT 345 +#define ULE 346 +#define UGE 347 +#define OEQ 348 +#define ONE 349 +#define OLT 350 +#define OGT 351 +#define OLE 352 +#define OGE 353 +#define ORD 354 +#define UNO 355 +#define UEQ 356 +#define UNE 357 +#define MALLOC 358 +#define ALLOCA 359 +#define FREE 360 +#define LOAD 361 +#define STORE 362 +#define GETELEMENTPTR 363 +#define TRUNC 364 +#define ZEXT 365 +#define SEXT 366 +#define FPTRUNC 367 +#define FPEXT 368 +#define BITCAST 369 +#define UITOFP 370 +#define SITOFP 371 +#define FPTOUI 372 +#define FPTOSI 373 +#define INTTOPTR 374 +#define PTRTOINT 375 +#define PHI_TOK 376 +#define SELECT 377 +#define SHL 378 +#define LSHR 379 +#define ASHR 380 +#define VAARG 381 +#define EXTRACTELEMENT 382 +#define INSERTELEMENT 383 +#define SHUFFLEVECTOR 384 +#define NORETURN 385 +#define DEFAULT 386 +#define HIDDEN 387  /* Copy the first part of user declarations.  */ -#line 14 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 14 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"  #include "ParserInternals.h"  #include "llvm/CallingConv.h" @@ -1232,10 +1220,9 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) {  # define YYTOKEN_TABLE 0  #endif -#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED -typedef union YYSTYPE -#line 883 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" -{ +#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) +#line 883 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y" +typedef union YYSTYPE {    llvm::Module                           *ModuleVal;    llvm::Function                         *FunctionVal;    llvm::BasicBlock                       *BasicBlockVal; @@ -1280,10 +1267,9 @@ typedef union YYSTYPE    llvm::Module::Endianness          Endianness;    llvm::ICmpInst::Predicate         IPredicate;    llvm::FCmpInst::Predicate         FPredicate; -} -/* Line 187 of yacc.c.  */ -#line 1286 "llvmAsmParser.tab.c" -	YYSTYPE; +} YYSTYPE; +/* Line 196 of yacc.c.  */ +#line 1273 "llvmAsmParser.tab.c"  # define yystype YYSTYPE /* obsolescent; will be withdrawn */  # define YYSTYPE_IS_DECLARED 1  # define YYSTYPE_IS_TRIVIAL 1 @@ -1294,56 +1280,23 @@ typedef union YYSTYPE  /* Copy the second part of user declarations.  */ -/* Line 216 of yacc.c.  */ -#line 1299 "llvmAsmParser.tab.c" +/* Line 219 of yacc.c.  */ +#line 1285 "llvmAsmParser.tab.c" -#ifdef short -# undef short +#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) +# define YYSIZE_T __SIZE_TYPE__  #endif - -#ifdef YYTYPE_UINT8 -typedef YYTYPE_UINT8 yytype_uint8; -#else -typedef unsigned char yytype_uint8; +#if ! defined (YYSIZE_T) && defined (size_t) +# define YYSIZE_T size_t  #endif - -#ifdef YYTYPE_INT8 -typedef YYTYPE_INT8 yytype_int8; -#elif (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) -typedef signed char yytype_int8; -#else -typedef short int yytype_int8; +#if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus)) +# include <stddef.h> /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t  #endif - -#ifdef YYTYPE_UINT16 -typedef YYTYPE_UINT16 yytype_uint16; -#else -typedef unsigned short int yytype_uint16; -#endif - -#ifdef YYTYPE_INT16 -typedef YYTYPE_INT16 yytype_int16; -#else -typedef short int yytype_int16; -#endif - -#ifndef YYSIZE_T -# ifdef __SIZE_TYPE__ -#  define YYSIZE_T __SIZE_TYPE__ -# elif defined size_t -#  define YYSIZE_T size_t -# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) -#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */ -#  define YYSIZE_T size_t -# else -#  define YYSIZE_T unsigned int -# endif +#if ! defined (YYSIZE_T) +# define YYSIZE_T unsigned int  #endif -#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) -  #ifndef YY_  # if YYENABLE_NLS  #  if ENABLE_NLS @@ -1356,32 +1309,7 @@ typedef short int yytype_int16;  # endif  #endif -/* Suppress unused-variable warnings by "using" E.  */ -#if ! defined lint || defined __GNUC__ -# define YYUSE(e) ((void) (e)) -#else -# define YYUSE(e) /* empty */ -#endif - -/* Identity function, used to suppress warnings about constant conditions.  */ -#ifndef lint -# define YYID(n) (n) -#else -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) -static int -YYID (int i) -#else -static int -YYID (i) -    int i; -#endif -{ -  return i; -} -#endif - -#if ! defined yyoverflow || YYERROR_VERBOSE +#if ! defined (yyoverflow) || YYERROR_VERBOSE  /* The parser invokes alloca or malloc; define the necessary symbols.  */ @@ -1389,76 +1317,64 @@ YYID (i)  #  if YYSTACK_USE_ALLOCA  #   ifdef __GNUC__  #    define YYSTACK_ALLOC __builtin_alloca -#   elif defined __BUILTIN_VA_ARG_INCR -#    include <alloca.h> /* INFRINGES ON USER NAME SPACE */ -#   elif defined _AIX -#    define YYSTACK_ALLOC __alloca -#   elif defined _MSC_VER -#    include <malloc.h> /* INFRINGES ON USER NAME SPACE */ -#    define alloca _alloca  #   else  #    define YYSTACK_ALLOC alloca -#    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) +#    if defined (__STDC__) || defined (__cplusplus)  #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -#     ifndef _STDLIB_H -#      define _STDLIB_H 1 -#     endif +#     define YYINCLUDED_STDLIB_H  #    endif  #   endif  #  endif  # endif  # ifdef YYSTACK_ALLOC -   /* Pacify GCC's `empty if-body' warning.  */ -#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) +   /* Pacify GCC's `empty if-body' warning. */ +#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)  #  ifndef YYSTACK_ALLOC_MAXIMUM      /* The OS might guarantee only one guard page at the bottom of the stack,         and a page size can be as small as 4096 bytes.  So we cannot safely         invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number         to allow for a few compiler-allocated temporary stack slots.  */ -#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ +#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2005 */  #  endif  # else  #  define YYSTACK_ALLOC YYMALLOC  #  define YYSTACK_FREE YYFREE  #  ifndef YYSTACK_ALLOC_MAXIMUM -#   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +#   define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1)  #  endif -#  if (defined __cplusplus && ! defined _STDLIB_H \ -       && ! ((defined YYMALLOC || defined malloc) \ -	     && (defined YYFREE || defined free))) -#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -#   ifndef _STDLIB_H -#    define _STDLIB_H 1 -#   endif +#  ifdef __cplusplus +extern "C" {  #  endif  #  ifndef YYMALLOC  #   define YYMALLOC malloc -#   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) +#   if (! defined (malloc) && ! defined (YYINCLUDED_STDLIB_H) \ +	&& (defined (__STDC__) || defined (__cplusplus)))  void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */  #   endif  #  endif  #  ifndef YYFREE  #   define YYFREE free -#   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) +#   if (! defined (free) && ! defined (YYINCLUDED_STDLIB_H) \ +	&& (defined (__STDC__) || defined (__cplusplus)))  void free (void *); /* INFRINGES ON USER NAME SPACE */  #   endif  #  endif +#  ifdef __cplusplus +} +#  endif  # endif -#endif /* ! defined yyoverflow || YYERROR_VERBOSE */ +#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */ -#if (! defined yyoverflow \ -     && (! defined __cplusplus \ -	 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) +#if (! defined (yyoverflow) \ +     && (! defined (__cplusplus) \ +	 || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))  /* A type that is properly aligned for any stack member.  */  union yyalloc  { -  yytype_int16 yyss; +  short int yyss;    YYSTYPE yyvs;    }; @@ -1468,13 +1384,13 @@ union yyalloc  /* The size of an array large to enough to hold all stacks, each with     N elements.  */  # define YYSTACK_BYTES(N) \ -     ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ +     ((N) * (sizeof (short int) + sizeof (YYSTYPE))			\        + YYSTACK_GAP_MAXIMUM)  /* Copy COUNT objects from FROM to TO.  The source and destination do     not overlap.  */  # ifndef YYCOPY -#  if defined __GNUC__ && 1 < __GNUC__ +#  if defined (__GNUC__) && 1 < __GNUC__  #   define YYCOPY(To, From, Count) \        __builtin_memcpy (To, From, (Count) * sizeof (*(From)))  #  else @@ -1485,7 +1401,7 @@ union yyalloc  	  for (yyi = 0; yyi < (Count); yyi++)	\  	    (To)[yyi] = (From)[yyi];		\  	}					\ -      while (YYID (0)) +      while (0)  #  endif  # endif @@ -1503,47 +1419,53 @@ union yyalloc  	yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \  	yyptr += yynewbytes / sizeof (*yyptr);				\        }									\ -    while (YYID (0)) +    while (0) + +#endif +#if defined (__STDC__) || defined (__cplusplus) +   typedef signed char yysigned_char; +#else +   typedef short int yysigned_char;  #endif -/* YYFINAL -- State number of the termination state.  */ +/* YYFINAL -- State number of the termination state. */  #define YYFINAL  36  /* YYLAST -- Last index in YYTABLE.  */ -#define YYLAST   1365 +#define YYLAST   1357 -/* YYNTOKENS -- Number of terminals.  */ -#define YYNTOKENS  148 -/* YYNNTS -- Number of nonterminals.  */ +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS  147 +/* YYNNTS -- Number of nonterminals. */  #define YYNNTS  79 -/* YYNRULES -- Number of rules.  */ -#define YYNRULES  286 -/* YYNRULES -- Number of states.  */ -#define YYNSTATES  571 +/* YYNRULES -- Number of rules. */ +#define YYNRULES  285 +/* YYNRULES -- Number of states. */ +#define YYNSTATES  569  /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */  #define YYUNDEFTOK  2 -#define YYMAXUTOK   388 +#define YYMAXUTOK   387  #define YYTRANSLATE(YYX)						\    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)  /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */ -static const yytype_uint8 yytranslate[] = +static const unsigned char yytranslate[] =  {         0,     2,     2,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -     138,   139,   136,     2,   135,     2,     2,     2,     2,     2, +     137,   138,   135,     2,   134,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -     143,   134,   144,     2,     2,     2,     2,     2,     2,     2, +     142,   133,   143,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -       2,   140,   137,   142,     2,     2,     2,     2,     2,   147, +       2,   139,   136,   141,     2,     2,     2,     2,     2,   146,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2, -     141,     2,     2,   145,     2,   146,     2,     2,     2,     2, +     140,     2,     2,   144,     2,   145,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2, @@ -1569,13 +1491,13 @@ static const yytype_uint8 yytranslate[] =        95,    96,    97,    98,    99,   100,   101,   102,   103,   104,       105,   106,   107,   108,   109,   110,   111,   112,   113,   114,       115,   116,   117,   118,   119,   120,   121,   122,   123,   124, -     125,   126,   127,   128,   129,   130,   131,   132,   133 +     125,   126,   127,   128,   129,   130,   131,   132  };  #if YYDEBUG  /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in     YYRHS.  */ -static const yytype_uint16 yyprhs[] = +static const unsigned short int yyprhs[] =  {         0,     0,     3,     5,     7,     9,    11,    13,    15,    17,        19,    21,    23,    25,    27,    29,    31,    33,    35,    37, @@ -1588,125 +1510,125 @@ static const yytype_uint16 yyprhs[] =       156,   157,   159,   161,   163,   165,   167,   169,   172,   174,       176,   177,   180,   182,   184,   185,   188,   189,   192,   193,       197,   200,   201,   203,   204,   208,   210,   213,   215,   217, -     219,   221,   223,   225,   227,   230,   232,   235,   241,   247, -     253,   259,   263,   266,   272,   277,   280,   282,   284,   286, -     290,   292,   296,   298,   299,   301,   305,   310,   314,   318, -     323,   328,   332,   339,   345,   348,   351,   354,   357,   360, -     363,   366,   369,   372,   375,   382,   388,   397,   404,   411, -     419,   427,   434,   441,   450,   459,   463,   465,   467,   469, -     471,   472,   474,   477,   478,   482,   483,   487,   491,   493, -     497,   501,   502,   509,   510,   518,   519,   527,   530,   534, -     536,   538,   540,   544,   548,   552,   556,   560,   564,   566, -     567,   569,   571,   573,   574,   580,   584,   586,   590,   592, -     593,   603,   605,   607,   612,   614,   616,   619,   623,   624, -     626,   628,   630,   632,   634,   636,   638,   640,   642,   646, -     648,   654,   656,   658,   660,   662,   665,   668,   671,   675, -     678,   679,   681,   684,   687,   691,   701,   711,   720,   735, -     737,   739,   746,   752,   755,   762,   770,   774,   780,   781, -     782,   786,   789,   791,   797,   803,   810,   817,   822,   827, -     834,   839,   844,   851,   858,   861,   870,   872,   874,   875, -     879,   886,   890,   897,   900,   905,   912 +     219,   221,   223,   225,   228,   230,   233,   239,   245,   251, +     257,   261,   264,   270,   275,   278,   280,   282,   284,   288, +     290,   294,   296,   297,   299,   303,   308,   312,   316,   321, +     326,   330,   337,   343,   346,   349,   352,   355,   358,   361, +     364,   367,   370,   373,   380,   386,   395,   402,   409,   417, +     425,   432,   439,   448,   457,   461,   463,   465,   467,   469, +     470,   472,   475,   476,   480,   481,   485,   489,   491,   495, +     499,   500,   507,   508,   516,   517,   525,   528,   532,   534, +     536,   538,   542,   546,   550,   554,   558,   562,   564,   565, +     567,   569,   571,   572,   578,   582,   584,   588,   590,   591, +     601,   603,   605,   610,   612,   614,   617,   621,   622,   624, +     626,   628,   630,   632,   634,   636,   638,   640,   644,   646, +     652,   654,   656,   658,   660,   663,   666,   669,   673,   676, +     677,   679,   682,   685,   689,   699,   709,   718,   733,   735, +     737,   744,   750,   753,   760,   768,   772,   778,   779,   780, +     784,   787,   789,   795,   801,   808,   815,   820,   825,   832, +     837,   842,   849,   856,   859,   868,   870,   872,   873,   877, +     884,   888,   895,   898,   903,   910  }; -/* YYRHS -- A `-1'-separated list of the rules' RHS.  */ -static const yytype_int16 yyrhs[] = +/* YYRHS -- A `-1'-separated list of the rules' RHS. */ +static const short int yyrhs[] =  { -     186,     0,    -1,     5,    -1,     6,    -1,    70,    -1,    71, -      -1,    72,    -1,    73,    -1,    74,    -1,    75,    -1,    76, -      -1,    77,    -1,    78,    -1,    79,    -1,    80,    -1,    81, -      -1,   110,    -1,   111,    -1,   112,    -1,   113,    -1,   114, -      -1,   115,    -1,   116,    -1,   117,    -1,   118,    -1,   119, -      -1,   120,    -1,   121,    -1,   124,    -1,   125,    -1,   126, -      -1,    84,    -1,    85,    -1,    86,    -1,    87,    -1,    88, -      -1,    89,    -1,    90,    -1,    91,    -1,    92,    -1,    93, -      -1,    94,    -1,    95,    -1,    96,    -1,    97,    -1,    98, -      -1,    99,    -1,   100,    -1,   101,    -1,   102,    -1,   103, -      -1,    90,    -1,    91,    -1,    92,    -1,    93,    -1,    20, -      -1,    21,    -1,    10,    -1,    11,    -1,    12,    -1,   199, -     134,    -1,    -1,    34,    -1,    36,    -1,    35,    -1,    37, -      -1,    39,    -1,    38,    -1,    40,    -1,    42,    -1,    -1, -     133,    -1,    -1,    38,    -1,    40,    -1,    -1,    34,    -1, -      35,    -1,    36,    -1,    39,    -1,    -1,    57,    -1,    58, -      -1,    59,    -1,    60,    -1,    61,    -1,    62,    -1,    56, -       4,    -1,   111,    -1,   112,    -1,    -1,   166,   165,    -1, -     131,    -1,   165,    -1,    -1,   168,   167,    -1,    -1,    49, -       4,    -1,    -1,   135,    49,     4,    -1,    28,    17,    -1, -      -1,   171,    -1,    -1,   135,   174,   173,    -1,   171,    -1, -      49,     4,    -1,     9,    -1,    10,    -1,    11,    -1,    12, -      -1,    13,    -1,    41,    -1,   175,    -1,   176,   136,    -1, -     211,    -1,   137,     4,    -1,   176,   138,   180,   139,   168, -      -1,     8,   138,   180,   139,   168,    -1,   140,     4,   141, -     176,   142,    -1,   143,     4,   141,   176,   144,    -1,   145, -     181,   146,    -1,   145,   146,    -1,   143,   145,   181,   146, -     144,    -1,   143,   145,   146,   144,    -1,   176,   166,    -1, -     176,    -1,     8,    -1,   177,    -1,   179,   135,   177,    -1, -     179,    -1,   179,   135,    31,    -1,    31,    -1,    -1,   176, -      -1,   181,   135,   176,    -1,   176,   140,   184,   142,    -1, -     176,   140,   142,    -1,   176,   147,    17,    -1,   176,   143, -     184,   144,    -1,   176,   145,   184,   146,    -1,   176,   145, -     146,    -1,   176,   143,   145,   184,   146,   144,    -1,   176, -     143,   145,   146,   144,    -1,   176,    32,    -1,   176,    33, -      -1,   176,   211,    -1,   176,   183,    -1,   176,    19,    -1, -     156,     3,    -1,   156,     4,    -1,     9,    20,    -1,     9, -      21,    -1,   157,     7,    -1,   152,   138,   182,    30,   176, -     139,    -1,   109,   138,   182,   222,   139,    -1,   123,   138, -     182,   135,   182,   135,   182,   139,    -1,   150,   138,   182, -     135,   182,   139,    -1,   151,   138,   182,   135,   182,   139, -      -1,    82,   154,   138,   182,   135,   182,   139,    -1,    83, -     155,   138,   182,   135,   182,   139,    -1,   153,   138,   182, -     135,   182,   139,    -1,   128,   138,   182,   135,   182,   139, -      -1,   129,   138,   182,   135,   182,   135,   182,   139,    -1, -     130,   138,   182,   135,   182,   135,   182,   139,    -1,   184, -     135,   182,    -1,   182,    -1,    26,    -1,    27,    -1,   187, -      -1,    -1,   188,    -1,   187,   188,    -1,    -1,    25,   189, -     207,    -1,    -1,    24,   190,   208,    -1,    54,    53,   194, -      -1,    18,    -1,   158,    14,   176,    -1,   158,    14,     8, -      -1,    -1,   158,   161,   185,   182,   191,   173,    -1,    -1, -     158,   159,   161,   185,   182,   192,   173,    -1,    -1,   158, -     160,   161,   185,   176,   193,   173,    -1,    43,   196,    -1, -      50,   134,   197,    -1,    17,    -1,    48,    -1,    47,    -1, -      45,   134,   195,    -1,    46,   134,     4,    -1,    44,   134, -      17,    -1,    63,   134,    17,    -1,   140,   198,   142,    -1, -     198,   135,    17,    -1,    17,    -1,    -1,    15,    -1,    17, -      -1,   199,    -1,    -1,   201,   135,   176,   166,   200,    -1, -     176,   166,   200,    -1,   201,    -1,   201,   135,    31,    -1, -      31,    -1,    -1,   164,   178,   199,   138,   202,   139,   168, -     172,   169,    -1,    22,    -1,   145,    -1,   163,   161,   203, -     204,    -1,    23,    -1,   146,    -1,   214,   206,    -1,   162, -     161,   203,    -1,    -1,    55,    -1,     3,    -1,     4,    -1, -       7,    -1,    20,    -1,    21,    -1,    32,    -1,    33,    -1, -      19,    -1,   143,   184,   144,    -1,   183,    -1,    53,   209, -      17,   135,    17,    -1,   149,    -1,   199,    -1,   211,    -1, -     210,    -1,   176,   212,    -1,   214,   215,    -1,   205,   215, -      -1,   216,   158,   217,    -1,   216,   219,    -1,    -1,    16, -      -1,    64,   213,    -1,    64,     8,    -1,    65,    13,   212, -      -1,    65,     9,   212,   135,    13,   212,   135,    13,   212, -      -1,    66,   156,   212,   135,    13,   212,   140,   218,   142, -      -1,    66,   156,   212,   135,    13,   212,   140,   142,    -1, -      67,   164,   178,   212,   138,   221,   139,   168,    30,    13, -     212,    68,    13,   212,    -1,    68,    -1,    69,    -1,   218, -     156,   210,   135,    13,   212,    -1,   156,   210,   135,    13, -     212,    -1,   158,   224,    -1,   176,   140,   212,   135,   212, -     142,    -1,   220,   135,   140,   212,   135,   212,   142,    -1, -     176,   212,   166,    -1,   221,   135,   176,   212,   166,    -1, -      -1,    -1,   222,   135,   213,    -1,    52,    51,    -1,    51, -      -1,   150,   176,   212,   135,   212,    -1,   151,   176,   212, -     135,   212,    -1,    82,   154,   176,   212,   135,   212,    -1, -      83,   155,   176,   212,   135,   212,    -1,   153,   213,   135, -     213,    -1,   152,   213,    30,   176,    -1,   123,   213,   135, -     213,   135,   213,    -1,   127,   213,   135,   176,    -1,   128, -     213,   135,   213,    -1,   129,   213,   135,   213,   135,   213, -      -1,   130,   213,   135,   213,   135,   213,    -1,   122,   220, -      -1,   223,   164,   178,   212,   138,   221,   139,   168,    -1, -     226,    -1,    29,    -1,    -1,   104,   176,   170,    -1,   104, -     176,   135,    10,   212,   170,    -1,   105,   176,   170,    -1, -     105,   176,   135,    10,   212,   170,    -1,   106,   213,    -1, -     225,   107,   176,   212,    -1,   225,   108,   213,   135,   176, -     212,    -1,   109,   176,   212,   222,    -1 +     185,     0,    -1,     5,    -1,     6,    -1,    69,    -1,    70, +      -1,    71,    -1,    72,    -1,    73,    -1,    74,    -1,    75, +      -1,    76,    -1,    77,    -1,    78,    -1,    79,    -1,    80, +      -1,   109,    -1,   110,    -1,   111,    -1,   112,    -1,   113, +      -1,   114,    -1,   115,    -1,   116,    -1,   117,    -1,   118, +      -1,   119,    -1,   120,    -1,   123,    -1,   124,    -1,   125, +      -1,    83,    -1,    84,    -1,    85,    -1,    86,    -1,    87, +      -1,    88,    -1,    89,    -1,    90,    -1,    91,    -1,    92, +      -1,    93,    -1,    94,    -1,    95,    -1,    96,    -1,    97, +      -1,    98,    -1,    99,    -1,   100,    -1,   101,    -1,   102, +      -1,    89,    -1,    90,    -1,    91,    -1,    92,    -1,    19, +      -1,    20,    -1,     9,    -1,    10,    -1,    11,    -1,   198, +     133,    -1,    -1,    33,    -1,    35,    -1,    34,    -1,    36, +      -1,    38,    -1,    37,    -1,    39,    -1,    41,    -1,    -1, +     132,    -1,    -1,    37,    -1,    39,    -1,    -1,    33,    -1, +      34,    -1,    35,    -1,    38,    -1,    -1,    56,    -1,    57, +      -1,    58,    -1,    59,    -1,    60,    -1,    61,    -1,    55, +       4,    -1,   110,    -1,   111,    -1,    -1,   165,   164,    -1, +     130,    -1,   164,    -1,    -1,   167,   166,    -1,    -1,    48, +       4,    -1,    -1,   134,    48,     4,    -1,    27,    16,    -1, +      -1,   170,    -1,    -1,   134,   173,   172,    -1,   170,    -1, +      48,     4,    -1,     9,    -1,    10,    -1,    11,    -1,    12, +      -1,    40,    -1,   174,    -1,   175,   135,    -1,   210,    -1, +     136,     4,    -1,   175,   137,   179,   138,   167,    -1,     8, +     137,   179,   138,   167,    -1,   139,     4,   140,   175,   141, +      -1,   142,     4,   140,   175,   143,    -1,   144,   180,   145, +      -1,   144,   145,    -1,   142,   144,   180,   145,   143,    -1, +     142,   144,   145,   143,    -1,   175,   165,    -1,   175,    -1, +       8,    -1,   176,    -1,   178,   134,   176,    -1,   178,    -1, +     178,   134,    30,    -1,    30,    -1,    -1,   175,    -1,   180, +     134,   175,    -1,   175,   139,   183,   141,    -1,   175,   139, +     141,    -1,   175,   146,    16,    -1,   175,   142,   183,   143, +      -1,   175,   144,   183,   145,    -1,   175,   144,   145,    -1, +     175,   142,   144,   183,   145,   143,    -1,   175,   142,   144, +     145,   143,    -1,   175,    31,    -1,   175,    32,    -1,   175, +     210,    -1,   175,   182,    -1,   175,    18,    -1,   155,     3, +      -1,   155,     4,    -1,     9,    19,    -1,     9,    20,    -1, +     156,     7,    -1,   151,   137,   181,    29,   175,   138,    -1, +     108,   137,   181,   221,   138,    -1,   122,   137,   181,   134, +     181,   134,   181,   138,    -1,   149,   137,   181,   134,   181, +     138,    -1,   150,   137,   181,   134,   181,   138,    -1,    81, +     153,   137,   181,   134,   181,   138,    -1,    82,   154,   137, +     181,   134,   181,   138,    -1,   152,   137,   181,   134,   181, +     138,    -1,   127,   137,   181,   134,   181,   138,    -1,   128, +     137,   181,   134,   181,   134,   181,   138,    -1,   129,   137, +     181,   134,   181,   134,   181,   138,    -1,   183,   134,   181, +      -1,   181,    -1,    25,    -1,    26,    -1,   186,    -1,    -1, +     187,    -1,   186,   187,    -1,    -1,    24,   188,   206,    -1, +      -1,    23,   189,   207,    -1,    53,    52,   193,    -1,    17, +      -1,   157,    13,   175,    -1,   157,    13,     8,    -1,    -1, +     157,   160,   184,   181,   190,   172,    -1,    -1,   157,   158, +     160,   184,   181,   191,   172,    -1,    -1,   157,   159,   160, +     184,   175,   192,   172,    -1,    42,   195,    -1,    49,   133, +     196,    -1,    16,    -1,    47,    -1,    46,    -1,    44,   133, +     194,    -1,    45,   133,     4,    -1,    43,   133,    16,    -1, +      62,   133,    16,    -1,   139,   197,   141,    -1,   197,   134, +      16,    -1,    16,    -1,    -1,    14,    -1,    16,    -1,   198, +      -1,    -1,   200,   134,   175,   165,   199,    -1,   175,   165, +     199,    -1,   200,    -1,   200,   134,    30,    -1,    30,    -1, +      -1,   163,   177,   198,   137,   201,   138,   167,   171,   168, +      -1,    21,    -1,   144,    -1,   162,   160,   202,   203,    -1, +      22,    -1,   145,    -1,   213,   205,    -1,   161,   160,   202, +      -1,    -1,    54,    -1,     3,    -1,     4,    -1,     7,    -1, +      19,    -1,    20,    -1,    31,    -1,    32,    -1,    18,    -1, +     142,   183,   143,    -1,   182,    -1,    52,   208,    16,   134, +      16,    -1,   148,    -1,   198,    -1,   210,    -1,   209,    -1, +     175,   211,    -1,   213,   214,    -1,   204,   214,    -1,   215, +     157,   216,    -1,   215,   218,    -1,    -1,    15,    -1,    63, +     212,    -1,    63,     8,    -1,    64,    12,   211,    -1,    64, +       9,   211,   134,    12,   211,   134,    12,   211,    -1,    65, +     155,   211,   134,    12,   211,   139,   217,   141,    -1,    65, +     155,   211,   134,    12,   211,   139,   141,    -1,    66,   163, +     177,   211,   137,   220,   138,   167,    29,    12,   211,    67, +      12,   211,    -1,    67,    -1,    68,    -1,   217,   155,   209, +     134,    12,   211,    -1,   155,   209,   134,    12,   211,    -1, +     157,   223,    -1,   175,   139,   211,   134,   211,   141,    -1, +     219,   134,   139,   211,   134,   211,   141,    -1,   175,   211, +     165,    -1,   220,   134,   175,   211,   165,    -1,    -1,    -1, +     221,   134,   212,    -1,    51,    50,    -1,    50,    -1,   149, +     175,   211,   134,   211,    -1,   150,   175,   211,   134,   211, +      -1,    81,   153,   175,   211,   134,   211,    -1,    82,   154, +     175,   211,   134,   211,    -1,   152,   212,   134,   212,    -1, +     151,   212,    29,   175,    -1,   122,   212,   134,   212,   134, +     212,    -1,   126,   212,   134,   175,    -1,   127,   212,   134, +     212,    -1,   128,   212,   134,   212,   134,   212,    -1,   129, +     212,   134,   212,   134,   212,    -1,   121,   219,    -1,   222, +     163,   177,   211,   137,   220,   138,   167,    -1,   225,    -1, +      28,    -1,    -1,   103,   175,   169,    -1,   103,   175,   134, +       9,   211,   169,    -1,   104,   175,   169,    -1,   104,   175, +     134,     9,   211,   169,    -1,   105,   212,    -1,   224,   106, +     175,   211,    -1,   224,   107,   212,   134,   175,   211,    -1, +     108,   175,   211,   221,    -1  };  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */ -static const yytype_uint16 yyrline[] = +static const unsigned short int yyrline[] =  {         0,  1031,  1031,  1032,  1042,  1042,  1042,  1042,  1042,  1042,      1042,  1042,  1042,  1043,  1043,  1043,  1044,  1044,  1044,  1044, @@ -1719,51 +1641,51 @@ static const yytype_uint16 yyrline[] =      1115,  1116,  1117,  1118,  1119,  1120,  1121,  1122,  1129,  1130,      1133,  1134,  1139,  1140,  1143,  1144,  1151,  1152,  1158,  1159,      1167,  1175,  1176,  1181,  1182,  1183,  1188,  1201,  1201,  1201, -    1201,  1201,  1204,  1208,  1212,  1219,  1224,  1232,  1250,  1268, -    1273,  1285,  1295,  1299,  1309,  1316,  1323,  1330,  1335,  1340, -    1347,  1348,  1355,  1362,  1370,  1375,  1386,  1414,  1430,  1459, -    1487,  1512,  1531,  1556,  1575,  1587,  1594,  1657,  1667,  1677, -    1683,  1689,  1693,  1697,  1705,  1719,  1740,  1748,  1754,  1765, -    1770,  1775,  1784,  1790,  1796,  1805,  1809,  1817,  1817,  1828, -    1833,  1841,  1842,  1846,  1846,  1850,  1850,  1853,  1856,  1868, -    1892,  1903,  1903,  1912,  1912,  1920,  1920,  1930,  1933,  1939, -    1952,  1953,  1955,  1959,  1968,  1972,  1977,  1979,  1984,  1989, -    1998,  1998,  1999,  1999,  2001,  2011,  2022,  2026,  2035,  2044, -    2049,  2155,  2155,  2157,  2166,  2166,  2168,  2173,  2185,  2189, -    2194,  2198,  2202,  2206,  2210,  2214,  2218,  2222,  2226,  2251, -    2255,  2269,  2273,  2279,  2279,  2285,  2294,  2298,  2307,  2318, -    2327,  2339,  2352,  2356,  2360,  2365,  2374,  2393,  2402,  2469, -    2473,  2480,  2491,  2504,  2513,  2524,  2534,  2542,  2550,  2553, -    2554,  2561,  2565,  2570,  2591,  2608,  2621,  2634,  2643,  2656, -    2664,  2671,  2677,  2683,  2689,  2704,  2767,  2772,  2776,  2783, -    2790,  2798,  2805,  2813,  2821,  2835,  2852 +    1201,  1204,  1208,  1212,  1219,  1224,  1232,  1250,  1268,  1273, +    1285,  1295,  1299,  1309,  1316,  1323,  1330,  1335,  1340,  1347, +    1348,  1355,  1362,  1370,  1375,  1386,  1414,  1430,  1459,  1487, +    1512,  1531,  1556,  1575,  1587,  1594,  1657,  1667,  1677,  1683, +    1689,  1694,  1699,  1707,  1721,  1742,  1750,  1756,  1767,  1772, +    1777,  1786,  1792,  1798,  1807,  1811,  1819,  1819,  1830,  1835, +    1843,  1844,  1848,  1848,  1852,  1852,  1855,  1858,  1870,  1894, +    1905,  1905,  1914,  1914,  1922,  1922,  1932,  1935,  1941,  1954, +    1955,  1957,  1961,  1970,  1974,  1979,  1981,  1986,  1991,  2000, +    2000,  2001,  2001,  2003,  2013,  2024,  2028,  2037,  2046,  2051, +    2157,  2157,  2159,  2168,  2168,  2170,  2175,  2187,  2191,  2196, +    2200,  2204,  2208,  2212,  2216,  2220,  2224,  2228,  2253,  2257, +    2271,  2275,  2281,  2281,  2287,  2296,  2300,  2309,  2320,  2329, +    2341,  2354,  2358,  2362,  2367,  2377,  2396,  2405,  2472,  2476, +    2483,  2494,  2507,  2516,  2527,  2537,  2545,  2553,  2556,  2557, +    2564,  2568,  2573,  2594,  2611,  2624,  2637,  2646,  2659,  2667, +    2674,  2680,  2686,  2692,  2707,  2770,  2775,  2779,  2786,  2793, +    2801,  2808,  2816,  2824,  2838,  2855  };  #endif  #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE  /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. -   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */ +   First, the terminals, then, starting at YYNTOKENS, nonterminals. */  static const char *const yytname[] =  {    "$end", "error", "$undefined", "ESINT64VAL", "EUINT64VAL", "SINTVAL", -  "UINTVAL", "FPVAL", "VOID", "BOOL", "INTTYPE", "FLOAT", "DOUBLE", -  "LABEL", "TYPE", "VAR_ID", "LABELSTR", "STRINGCONSTANT", -  "IMPLEMENTATION", "ZEROINITIALIZER", "TRUETOK", "FALSETOK", "BEGINTOK", -  "ENDTOK", "DECLARE", "DEFINE", "GLOBAL", "CONSTANT", "SECTION", -  "VOLATILE", "TO", "DOTDOTDOT", "NULL_TOK", "UNDEF", "INTERNAL", -  "LINKONCE", "WEAK", "APPENDING", "DLLIMPORT", "DLLEXPORT", "EXTERN_WEAK", -  "OPAQUE", "EXTERNAL", "TARGET", "TRIPLE", "ENDIAN", "POINTERSIZE", -  "LITTLE", "BIG", "ALIGN", "DEPLIBS", "CALL", "TAIL", "ASM_TOK", "MODULE", -  "SIDEEFFECT", "CC_TOK", "CCC_TOK", "CSRETCC_TOK", "FASTCC_TOK", -  "COLDCC_TOK", "X86_STDCALLCC_TOK", "X86_FASTCALLCC_TOK", "DATALAYOUT", -  "RET", "BR", "SWITCH", "INVOKE", "UNWIND", "UNREACHABLE", "ADD", "SUB", -  "MUL", "UDIV", "SDIV", "FDIV", "UREM", "SREM", "FREM", "AND", "OR", -  "XOR", "ICMP", "FCMP", "EQ", "NE", "SLT", "SGT", "SLE", "SGE", "ULT", -  "UGT", "ULE", "UGE", "OEQ", "ONE", "OLT", "OGT", "OLE", "OGE", "ORD", -  "UNO", "UEQ", "UNE", "MALLOC", "ALLOCA", "FREE", "LOAD", "STORE", -  "GETELEMENTPTR", "TRUNC", "ZEXT", "SEXT", "FPTRUNC", "FPEXT", "BITCAST", -  "UITOFP", "SITOFP", "FPTOUI", "FPTOSI", "INTTOPTR", "PTRTOINT", -  "PHI_TOK", "SELECT", "SHL", "LSHR", "ASHR", "VAARG", "EXTRACTELEMENT", +  "UINTVAL", "FPVAL", "VOID", "INTTYPE", "FLOAT", "DOUBLE", "LABEL", +  "TYPE", "VAR_ID", "LABELSTR", "STRINGCONSTANT", "IMPLEMENTATION", +  "ZEROINITIALIZER", "TRUETOK", "FALSETOK", "BEGINTOK", "ENDTOK", +  "DECLARE", "DEFINE", "GLOBAL", "CONSTANT", "SECTION", "VOLATILE", "TO", +  "DOTDOTDOT", "NULL_TOK", "UNDEF", "INTERNAL", "LINKONCE", "WEAK", +  "APPENDING", "DLLIMPORT", "DLLEXPORT", "EXTERN_WEAK", "OPAQUE", +  "EXTERNAL", "TARGET", "TRIPLE", "ENDIAN", "POINTERSIZE", "LITTLE", "BIG", +  "ALIGN", "DEPLIBS", "CALL", "TAIL", "ASM_TOK", "MODULE", "SIDEEFFECT", +  "CC_TOK", "CCC_TOK", "CSRETCC_TOK", "FASTCC_TOK", "COLDCC_TOK", +  "X86_STDCALLCC_TOK", "X86_FASTCALLCC_TOK", "DATALAYOUT", "RET", "BR", +  "SWITCH", "INVOKE", "UNWIND", "UNREACHABLE", "ADD", "SUB", "MUL", "UDIV", +  "SDIV", "FDIV", "UREM", "SREM", "FREM", "AND", "OR", "XOR", "ICMP", +  "FCMP", "EQ", "NE", "SLT", "SGT", "SLE", "SGE", "ULT", "UGT", "ULE", +  "UGE", "OEQ", "ONE", "OLT", "OGT", "OLE", "OGE", "ORD", "UNO", "UEQ", +  "UNE", "MALLOC", "ALLOCA", "FREE", "LOAD", "STORE", "GETELEMENTPTR", +  "TRUNC", "ZEXT", "SEXT", "FPTRUNC", "FPEXT", "BITCAST", "UITOFP", +  "SITOFP", "FPTOUI", "FPTOSI", "INTTOPTR", "PTRTOINT", "PHI_TOK", +  "SELECT", "SHL", "LSHR", "ASHR", "VAARG", "EXTRACTELEMENT",    "INSERTELEMENT", "SHUFFLEVECTOR", "NORETURN", "DEFAULT", "HIDDEN", "'='",    "','", "'*'", "'\\\\'", "'('", "')'", "'['", "'x'", "']'", "'<'", "'>'",    "'{'", "'}'", "'c'", "$accept", "INTVAL", "ArithmeticOps", "LogicalOps", @@ -1789,7 +1711,7 @@ static const char *const yytname[] =  # ifdef YYPRINT  /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to     token YYLEX-NUM.  */ -static const yytype_uint16 yytoknum[] = +static const unsigned short int yytoknum[] =  {         0,   256,   257,   258,   259,   260,   261,   262,   263,   264,       265,   266,   267,   268,   269,   270,   271,   272,   273,   274, @@ -1804,47 +1726,47 @@ static const yytype_uint16 yytoknum[] =       355,   356,   357,   358,   359,   360,   361,   362,   363,   364,       365,   366,   367,   368,   369,   370,   371,   372,   373,   374,       375,   376,   377,   378,   379,   380,   381,   382,   383,   384, -     385,   386,   387,   388,    61,    44,    42,    92,    40,    41, -      91,   120,    93,    60,    62,   123,   125,    99 +     385,   386,   387,    61,    44,    42,    92,    40,    41,    91, +     120,    93,    60,    62,   123,   125,    99  };  # endif  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */ -static const yytype_uint8 yyr1[] = +static const unsigned char yyr1[] =  { -       0,   148,   149,   149,   150,   150,   150,   150,   150,   150, -     150,   150,   150,   151,   151,   151,   152,   152,   152,   152, -     152,   152,   152,   152,   152,   152,   152,   152,   153,   153, +       0,   147,   148,   148,   149,   149,   149,   149,   149,   149, +     149,   149,   149,   150,   150,   150,   151,   151,   151,   151, +     151,   151,   151,   151,   151,   151,   151,   151,   152,   152, +     152,   153,   153,   153,   153,   153,   153,   153,   153,   153,       153,   154,   154,   154,   154,   154,   154,   154,   154,   154, -     154,   155,   155,   155,   155,   155,   155,   155,   155,   155, -     155,   155,   155,   155,   155,   155,   155,   156,   157,   157, -     158,   158,   159,   159,   159,   159,   159,   160,   160,   160, -     161,   161,   162,   162,   162,   163,   163,   163,   163,   163, -     164,   164,   164,   164,   164,   164,   164,   164,   165,   165, -     166,   166,   167,   167,   168,   168,   169,   169,   170,   170, -     171,   172,   172,   173,   173,   174,   174,   175,   175,   175, -     175,   175,   176,   176,   176,   176,   176,   176,   176,   176, -     176,   176,   176,   176,   176,   177,   178,   178,   179,   179, -     180,   180,   180,   180,   181,   181,   182,   182,   182,   182, -     182,   182,   182,   182,   182,   182,   182,   182,   182,   182, -     182,   182,   182,   182,   183,   183,   183,   183,   183,   183, -     183,   183,   183,   183,   183,   184,   184,   185,   185,   186, -     186,   187,   187,   189,   188,   190,   188,   188,   188,   188, -     188,   191,   188,   192,   188,   193,   188,   188,   188,   194, -     195,   195,   196,   196,   196,   196,   197,   198,   198,   198, -     199,   199,   200,   200,   201,   201,   202,   202,   202,   202, -     203,   204,   204,   205,   206,   206,   207,   208,   209,   209, -     210,   210,   210,   210,   210,   210,   210,   210,   210,   210, -     210,   211,   211,   212,   212,   213,   214,   214,   215,   216, -     216,   216,   217,   217,   217,   217,   217,   217,   217,   217, -     217,   218,   218,   219,   220,   220,   221,   221,   221,   222, -     222,   223,   223,   224,   224,   224,   224,   224,   224,   224, -     224,   224,   224,   224,   224,   224,   224,   225,   225,   226, -     226,   226,   226,   226,   226,   226,   226 +     154,   154,   154,   154,   154,   154,   154,   155,   156,   156, +     157,   157,   158,   158,   158,   158,   158,   159,   159,   159, +     160,   160,   161,   161,   161,   162,   162,   162,   162,   162, +     163,   163,   163,   163,   163,   163,   163,   163,   164,   164, +     165,   165,   166,   166,   167,   167,   168,   168,   169,   169, +     170,   171,   171,   172,   172,   173,   173,   174,   174,   174, +     174,   175,   175,   175,   175,   175,   175,   175,   175,   175, +     175,   175,   175,   175,   176,   177,   177,   178,   178,   179, +     179,   179,   179,   180,   180,   181,   181,   181,   181,   181, +     181,   181,   181,   181,   181,   181,   181,   181,   181,   181, +     181,   181,   181,   182,   182,   182,   182,   182,   182,   182, +     182,   182,   182,   182,   183,   183,   184,   184,   185,   185, +     186,   186,   188,   187,   189,   187,   187,   187,   187,   187, +     190,   187,   191,   187,   192,   187,   187,   187,   193,   194, +     194,   195,   195,   195,   195,   196,   197,   197,   197,   198, +     198,   199,   199,   200,   200,   201,   201,   201,   201,   202, +     203,   203,   204,   205,   205,   206,   207,   208,   208,   209, +     209,   209,   209,   209,   209,   209,   209,   209,   209,   209, +     210,   210,   211,   211,   212,   213,   213,   214,   215,   215, +     215,   216,   216,   216,   216,   216,   216,   216,   216,   216, +     217,   217,   218,   219,   219,   220,   220,   220,   221,   221, +     222,   222,   223,   223,   223,   223,   223,   223,   223,   223, +     223,   223,   223,   223,   223,   223,   224,   224,   225,   225, +     225,   225,   225,   225,   225,   225  };  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */ -static const yytype_uint8 yyr2[] = +static const unsigned char yyr2[] =  {         0,     2,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1, @@ -1857,531 +1779,526 @@ static const yytype_uint8 yyr2[] =         0,     1,     1,     1,     1,     1,     1,     2,     1,     1,         0,     2,     1,     1,     0,     2,     0,     2,     0,     3,         2,     0,     1,     0,     3,     1,     2,     1,     1,     1, -       1,     1,     1,     1,     2,     1,     2,     5,     5,     5, -       5,     3,     2,     5,     4,     2,     1,     1,     1,     3, -       1,     3,     1,     0,     1,     3,     4,     3,     3,     4, -       4,     3,     6,     5,     2,     2,     2,     2,     2,     2, -       2,     2,     2,     2,     6,     5,     8,     6,     6,     7, -       7,     6,     6,     8,     8,     3,     1,     1,     1,     1, -       0,     1,     2,     0,     3,     0,     3,     3,     1,     3, -       3,     0,     6,     0,     7,     0,     7,     2,     3,     1, -       1,     1,     3,     3,     3,     3,     3,     3,     1,     0, -       1,     1,     1,     0,     5,     3,     1,     3,     1,     0, -       9,     1,     1,     4,     1,     1,     2,     3,     0,     1, -       1,     1,     1,     1,     1,     1,     1,     1,     3,     1, -       5,     1,     1,     1,     1,     2,     2,     2,     3,     2, -       0,     1,     2,     2,     3,     9,     9,     8,    14,     1, -       1,     6,     5,     2,     6,     7,     3,     5,     0,     0, -       3,     2,     1,     5,     5,     6,     6,     4,     4,     6, -       4,     4,     6,     6,     2,     8,     1,     1,     0,     3, -       6,     3,     6,     2,     4,     6,     4 +       1,     1,     1,     2,     1,     2,     5,     5,     5,     5, +       3,     2,     5,     4,     2,     1,     1,     1,     3,     1, +       3,     1,     0,     1,     3,     4,     3,     3,     4,     4, +       3,     6,     5,     2,     2,     2,     2,     2,     2,     2, +       2,     2,     2,     6,     5,     8,     6,     6,     7,     7, +       6,     6,     8,     8,     3,     1,     1,     1,     1,     0, +       1,     2,     0,     3,     0,     3,     3,     1,     3,     3, +       0,     6,     0,     7,     0,     7,     2,     3,     1,     1, +       1,     3,     3,     3,     3,     3,     3,     1,     0,     1, +       1,     1,     0,     5,     3,     1,     3,     1,     0,     9, +       1,     1,     4,     1,     1,     2,     3,     0,     1,     1, +       1,     1,     1,     1,     1,     1,     1,     3,     1,     5, +       1,     1,     1,     1,     2,     2,     2,     3,     2,     0, +       1,     2,     2,     3,     9,     9,     8,    14,     1,     1, +       6,     5,     2,     6,     7,     3,     5,     0,     0,     3, +       2,     1,     5,     5,     6,     6,     4,     4,     6,     4, +       4,     6,     6,     2,     8,     1,     1,     0,     3,     6, +       3,     6,     2,     4,     6,     4  };  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state     STATE-NUM when YYTABLE doesn't specify something else to do.  Zero     means the default is an error.  */ -static const yytype_uint16 yydefact[] = +static const unsigned short int yydefact[] =  { -      61,   200,   201,   178,   175,   173,     0,     0,     0,    70, -       0,    61,   171,     0,    72,    75,     0,     0,     0,     0, -     187,     0,     0,     0,    62,    64,    63,    65,    67,    66, -      68,    69,    71,    70,    70,     0,     1,   172,    60,    73, -      74,    70,   176,    76,    77,    78,    79,    70,   240,   174, -     240,     0,     0,     0,     0,   199,   188,   189,   177,     2, -       3,   180,   107,   108,   109,   110,   111,   112,     0,     0, -       0,     0,   231,   113,   179,   232,   115,     0,     0,   167, -     168,     0,    80,    80,   241,   237,    61,   214,   215,   216, -     236,   194,   191,   190,   192,   193,   195,   198,     0,   133, -     116,     0,     0,     0,     0,   122,   134,     0,   114,   133, -       0,     0,   107,   108,   109,   110,     0,     0,     0,   181, -       0,    81,    82,    83,    84,    85,    86,     0,   217,     0, -     278,   239,     0,   196,   132,    90,   128,   130,     0,     0, -       0,     0,     0,     0,   121,     0,   183,   185,   151,   152, -     149,   150,   153,   148,   144,   145,     4,     5,     6,     7, -       8,     9,    10,    11,    12,    13,    14,    15,     0,     0, -       0,    16,    17,    18,    19,    20,    21,    22,    23,    24, -      25,    26,    27,     0,    28,    29,    30,     0,     0,     0, -       0,     0,     0,     0,     0,     0,     0,     0,   147,   146, -     103,    87,   127,   126,     0,   211,   212,   213,   277,   262, -       0,     0,     0,     0,    80,   249,   250,     0,     0,     0, -       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, -       0,     0,     0,   238,    80,   253,     0,   276,   197,   125, -       0,    94,     0,     0,   124,     0,   135,    94,   103,   103, -      31,    32,    33,    34,    35,    36,    37,    38,    39,    40, -       0,    55,    56,    51,    52,    53,    54,    41,    42,    43, -      44,    45,    46,    47,    48,    49,    50,     0,     0,     0, -       0,     0,     0,   137,   166,     0,     0,     0,   141,     0, -     138,     0,     0,     0,     0,     0,   182,     0,   261,   243, -       0,   242,     0,     0,    57,     0,     0,     0,     0,    98, -      98,   283,     0,     0,   274,     0,     0,     0,     0,     0, -       0,     0,     0,     0,     0,     0,     0,    88,    89,    91, -     131,   129,   118,   119,   120,   123,   117,   184,   186,     0, -       0,   259,     0,     0,     0,     0,     0,   136,   122,   134, -       0,   139,   140,     0,     0,     0,     0,     0,     0,   105, -     103,   209,   220,   221,   222,   227,   223,   224,   225,   226, -     218,     0,   229,   234,   233,   235,     0,   244,     0,     0, -       0,     0,     0,   279,     0,   281,   259,     0,     0,     0, +      61,   199,   200,   177,   174,   172,     0,     0,     0,    70, +       0,    61,   170,     0,    72,    75,     0,     0,     0,     0, +     186,     0,     0,     0,    62,    64,    63,    65,    67,    66, +      68,    69,    71,    70,    70,     0,     1,   171,    60,    73, +      74,    70,   175,    76,    77,    78,    79,    70,   239,   173, +     239,     0,     0,     0,     0,   198,   187,   188,   176,     2, +       3,   179,   107,   108,   109,   110,   111,     0,     0,     0, +       0,   230,   112,   178,   231,   114,     0,     0,   166,   167, +       0,    80,    80,   240,   236,    61,   213,   214,   215,   235, +     193,   190,   189,   191,   192,   194,   197,     0,   132,   115, +       0,     0,     0,     0,   121,   133,     0,   113,   132,     0, +       0,   107,   108,   109,     0,     0,     0,   180,     0,    81, +      82,    83,    84,    85,    86,     0,   216,     0,   277,   238, +       0,   195,   131,    90,   127,   129,     0,     0,     0,     0, +       0,     0,   120,     0,   182,   184,   150,   151,   148,   149, +     152,   147,   143,   144,     4,     5,     6,     7,     8,     9, +      10,    11,    12,    13,    14,    15,     0,     0,     0,    16, +      17,    18,    19,    20,    21,    22,    23,    24,    25,    26, +      27,     0,    28,    29,    30,     0,     0,     0,     0,     0, +       0,     0,     0,     0,     0,     0,   146,   145,   103,    87, +     126,   125,     0,   210,   211,   212,   276,   261,     0,     0, +       0,     0,    80,   248,   249,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0, -       0,    92,    93,    95,     0,     0,     0,     0,     0,     0, -       0,   165,   143,     0,     0,     0,     0,     0,   100,   106, -     104,   208,    90,   206,     0,   219,     0,     0,     0,     0, -       0,     0,     0,     0,     0,     0,   286,     0,     0,     0, -     270,   271,     0,     0,     0,     0,   268,   267,     0,   284, -       0,     0,     0,     0,   155,     0,     0,     0,     0,   142, -       0,     0,     0,     0,   203,     0,    94,     0,   228,     0, -       0,   258,     0,     0,    98,    99,    98,     0,     0,     0, -       0,     0,   263,   264,   258,     0,     0,     0,   260,     0, -     162,     0,     0,   157,   158,   154,   161,   202,   205,   207, -      90,   101,     0,     0,     0,     0,     0,   265,   266,     0, -     280,   282,     0,     0,   269,   272,   273,     0,   285,   159, -     160,     0,     0,     0,   203,   102,    96,   230,     0,     0, -      90,     0,    94,   254,     0,    94,   156,   163,   164,   204, -       0,   210,     0,   247,     0,     0,   256,     0,     0,   255, -     275,    97,   245,     0,   246,     0,    90,     0,     0,     0, -     257,     0,     0,     0,     0,   252,     0,     0,   251,     0, -     248 +       0,   237,    80,   252,     0,   275,   196,   124,     0,    94, +       0,     0,   123,     0,   134,    94,   103,   103,    31,    32, +      33,    34,    35,    36,    37,    38,    39,    40,     0,    55, +      56,    51,    52,    53,    54,    41,    42,    43,    44,    45, +      46,    47,    48,    49,    50,     0,     0,     0,     0,     0, +       0,   136,   165,     0,     0,     0,   140,     0,   137,     0, +       0,     0,     0,     0,   181,     0,   260,   242,     0,   241, +       0,     0,    57,     0,     0,     0,     0,    98,    98,   282, +       0,     0,   273,     0,     0,     0,     0,     0,     0,     0, +       0,     0,     0,     0,     0,    88,    89,    91,   130,   128, +     117,   118,   119,   122,   116,   183,   185,     0,     0,   258, +       0,     0,     0,     0,     0,   135,   121,   133,     0,   138, +     139,     0,     0,     0,     0,     0,     0,   105,   103,   208, +     219,   220,   221,   226,   222,   223,   224,   225,   217,     0, +     228,   233,   232,   234,     0,   243,     0,     0,     0,     0, +       0,   278,     0,   280,   258,     0,     0,     0,     0,     0, +       0,     0,     0,     0,     0,     0,     0,     0,     0,    92, +      93,    95,     0,     0,     0,     0,     0,     0,     0,   164, +     142,     0,     0,     0,     0,     0,   100,   106,   104,   207, +      90,   205,     0,   218,     0,     0,     0,     0,     0,     0, +       0,     0,     0,     0,   285,     0,     0,     0,   269,   270, +       0,     0,     0,     0,   267,   266,     0,   283,     0,     0, +       0,     0,   154,     0,     0,     0,     0,   141,     0,     0, +       0,     0,   202,     0,    94,     0,   227,     0,     0,   257, +       0,     0,    98,    99,    98,     0,     0,     0,     0,     0, +     262,   263,   257,     0,     0,     0,   259,     0,   161,     0, +       0,   156,   157,   153,   160,   201,   204,   206,    90,   101, +       0,     0,     0,     0,     0,   264,   265,     0,   279,   281, +       0,     0,   268,   271,   272,     0,   284,   158,   159,     0, +       0,     0,   202,   102,    96,   229,     0,     0,    90,     0, +      94,   253,     0,    94,   155,   162,   163,   203,     0,   209, +       0,   246,     0,     0,   255,     0,     0,   254,   274,    97, +     244,     0,   245,     0,    90,     0,     0,     0,   256,     0, +       0,     0,     0,   251,     0,     0,   250,     0,   247  }; -/* YYDEFGOTO[NTERM-NUM].  */ -static const yytype_int16 yydefgoto[] = +/* YYDEFGOTO[NTERM-NUM]. */ +static const short int yydefgoto[] =  { -      -1,    72,   194,   195,   196,   197,   260,   277,   116,   117, -       9,    33,    34,    35,    41,    47,   127,   329,   239,   403, -     332,   541,   383,   359,   526,   296,   360,    73,   118,   136, -     204,   137,   138,   107,   284,   372,   285,    81,    10,    11, -      12,    15,    14,   200,   248,   249,    58,    94,    20,    56, -      98,    75,   498,   423,   424,   128,   207,    48,    89,    49, -      42,   426,   373,    76,   375,   301,    50,    85,    86,   233, -     545,   131,   314,   506,   406,   234,   235,   236,   237 +      -1,    71,   192,   193,   194,   195,   258,   275,   114,   115, +       9,    33,    34,    35,    41,    47,   125,   327,   237,   401, +     330,   539,   381,   357,   524,   294,   358,    72,   116,   134, +     202,   135,   136,   106,   282,   370,   283,    80,    10,    11, +      12,    15,    14,   198,   246,   247,    58,    93,    20,    56, +      97,    74,   496,   421,   422,   126,   205,    48,    88,    49, +      42,   424,   371,    75,   373,   299,    50,    84,    85,   231, +     543,   129,   312,   504,   404,   232,   233,   234,   235  };  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing     STATE-NUM.  */ -#define YYPACT_NINF -425 -static const yytype_int16 yypact[] = +#define YYPACT_NINF -413 +static const short int yypact[] =  { -     320,  -425,  -425,  -425,  -425,  -425,    19,  -109,   -23,    37, -      53,   392,  -425,   -78,   163,   228,   -47,   -44,   -41,   -38, -    -425,   -72,    97,   879,  -425,  -425,  -425,  -425,  -425,  -425, -    -425,  -425,  -425,     2,     2,   137,  -425,  -425,  -425,  -425, -    -425,     2,  -425,  -425,  -425,  -425,  -425,     2,   159,  -425, -      16,   102,   218,   198,   208,   211,  -425,  -425,  -425,  -425, -    -425,   113,  -425,  -425,  -425,  -425,  -425,  -425,   275,   279, -      15,   244,  -425,  -425,   122,  -425,  -425,   137,   137,  -425, -    -425,  1099,   419,   419,  -425,  -425,   274,  -425,  -425,  -425, -    -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425,   -51,   586, -    -425,   149,   162,   498,   113,  -425,   122,  -104,  -425,   586, -    1099,  1113,   164,   192,   297,   298,   270,   302,    29,  -425, -     309,  -425,  -425,  -425,  -425,  -425,  -425,  1126,  -425,   -15, -    1235,  -425,   299,  -425,  -425,   122,  -425,   180,   179,  1113, -    1113,   175,   -80,  1113,  -425,   182,  -425,   122,  -425,  -425, -    -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425, -    -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425,   478,   905, -     184,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425, -    -425,  -425,  -425,   185,  -425,  -425,  -425,   186,   189,   190, -     734,  1140,   517,   312,   193,   194,   196,   201,  -425,  -425, -     195,  -425,   113,   122,   274,  -425,  -425,  -425,  -425,  -425, -     285,  1153,   119,   330,   419,  -425,  -425,   478,   905,  1113, -    1113,  1113,  1113,  1113,  1113,  1113,  1113,  1113,  1113,  1113, -    1113,  1113,  1113,  -425,   419,  -425,   188,  -425,  -425,   187, -     779,  -425,    51,    35,  -425,   197,   122,  -425,   195,   195, -    -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425, -     204,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425, -    -425,  -425,  -425,  -425,  -425,  -425,  -425,   205,  1099,  1099, -    1099,  1099,  1099,  -425,  -425,    -8,   544,   -66,  -425,   -76, -    -425,  1099,  1099,  1099,  1099,     9,  -425,   210,  -425,   113, -     688,  -425,   829,   829,  -425,   829,  1126,  1113,  1113,   108, -     142,  -425,   688,    52,   219,   220,   223,   226,   229,   231, -     688,   688,   316,   232,  1126,  1113,  1113,  -425,  -425,  -425, -    -425,  -425,   -71,  -425,  -425,  -425,   -71,  -425,  -425,  1099, -    1099,  -425,   233,   234,   238,   245,  1099,  -425,   209,    29, -     -13,  -425,  -425,   250,   251,   358,   256,   378,   394,  -425, -     195,  1048,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425, -     346,  1099,  -425,  -425,  -425,  -425,   268,  -425,   276,   829, -     688,   688,    -2,  -425,    18,  -425,  -425,   829,   273,  1113, -    1113,  1113,  1113,  1113,   283,   284,  1113,  1113,   829,   688, -     286,  -425,  -425,  -425,   287,   290,    59,  1099,  1099,  1099, -    1099,  -425,  -425,   282,  1099,  1099,  1113,  1099,  -425,  -425, -    -425,  -425,   122,   292,   281,  -425,   397,   -52,   415,   416, -     300,   295,   306,   829,   433,   829,   308,   310,   829,   313, -     122,  -425,   314,   315,   829,   829,   122,  -425,   317,  -425, -    1113,  1099,  1099,  1113,  -425,   318,   305,   319,   321,  -425, -     322,   323,   148,   324,    12,  1086,  -425,   325,  -425,   829, -     829,  1113,   829,   829,   333,  -425,   333,   829,   336,  1113, -    1113,  1113,  -425,  -425,  1113,   688,   334,   347,  -425,  1099, -    -425,  1099,  1099,  -425,  -425,  -425,  -425,  -425,  -425,  -425, -     122,     5,   430,   337,   345,   688,   106,  -425,  -425,   403, -    -425,  -425,   349,   829,  -425,  -425,  -425,   136,  -425,  -425, -    -425,   348,   353,   355,    12,  -425,   409,  -425,   446,    -5, -    -425,  1113,  -425,  -425,   356,  -425,  -425,  -425,  -425,  -425, -     491,  -425,   829,  -425,   957,    14,   187,   688,    88,  -425, -     -71,  -425,  -425,   362,  -425,   957,  -425,   486,   487,   370, -     187,   829,   829,   499,   448,  -425,   829,   501,  -425,   829, -    -425 +     401,  -413,  -413,  -413,  -413,  -413,   110,  -107,    30,    67, +      77,   527,  -413,   -43,     2,   238,   -16,     8,    47,    84, +    -413,    -4,   132,   791,  -413,  -413,  -413,  -413,  -413,  -413, +    -413,  -413,  -413,    91,    91,   149,  -413,  -413,  -413,  -413, +    -413,    91,  -413,  -413,  -413,  -413,  -413,    91,   147,  -413, +      20,   210,   208,   280,   226,   273,  -413,  -413,  -413,  -413, +    -413,   160,  -413,  -413,  -413,  -413,  -413,   295,   299,     3, +       7,  -413,  -413,   140,  -413,  -413,   149,   149,  -413,  -413, +     954,   192,   192,  -413,  -413,   184,  -413,  -413,  -413,  -413, +    -413,  -413,  -413,  -413,  -413,  -413,  -413,   -65,   549,  -413, +     167,   171,    22,   160,  -413,   140,   -81,  -413,   549,   954, +    1045,    95,   311,   312,   284,   313,   602,  -413,   317,  -413, +    -413,  -413,  -413,  -413,  -413,  1125,  -413,    -7,  1228,  -413, +     306,  -413,  -413,   140,  -413,   191,   193,  1045,  1045,   186, +     -64,  1045,  -413,   194,  -413,   140,  -413,  -413,  -413,  -413, +    -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413, +    -413,  -413,  -413,  -413,  -413,  -413,   251,   501,   207,  -413, +    -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413, +    -413,   209,  -413,  -413,  -413,   214,   215,   216,    49,  1138, +     120,   314,   219,   222,   224,   225,  -413,  -413,   230,  -413, +     160,   140,   184,  -413,  -413,  -413,  -413,  -413,   315,  1185, +     175,   357,   192,  -413,  -413,   251,   501,  1045,  1045,  1045, +    1045,  1045,  1045,  1045,  1045,  1045,  1045,  1045,  1045,  1045, +    1045,  -413,   192,  -413,   195,  -413,  -413,   203,   693,  -413, +     126,    46,  -413,   228,   140,  -413,   230,   230,  -413,  -413, +    -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413,   231,  -413, +    -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413, +    -413,  -413,  -413,  -413,  -413,   235,   954,   954,   954,   954, +     954,  -413,  -413,    29,   500,   -24,  -413,   -27,  -413,   954, +     954,   954,   954,    39,  -413,   241,  -413,   160,   746,  -413, +     873,   873,  -413,   873,  1125,  1045,  1045,   123,   159,  -413, +     746,   146,   233,   245,   248,   249,   250,   252,   746,   746, +     356,   253,  1125,  1045,  1045,  -413,  -413,  -413,  -413,  -413, +     -18,  -413,  -413,  -413,   -18,  -413,  -413,   954,   954,  -413, +     254,   255,   256,   259,   954,  -413,   262,   602,   -12,  -413, +    -413,   265,   274,   367,   275,   391,   407,  -413,   230,   774, +    -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413,   358,   954, +    -413,  -413,  -413,  -413,   282,  -413,   285,   873,   746,   746, +      35,  -413,    43,  -413,  -413,   873,   281,  1045,  1045,  1045, +    1045,  1045,   289,   292,  1045,  1045,   873,   746,   293,  -413, +    -413,  -413,   294,   301,   -25,   954,   954,   954,   954,  -413, +    -413,   271,   954,   954,  1045,   954,  -413,  -413,  -413,  -413, +     140,   302,   303,  -413,   417,    25,   427,   428,   305,   310, +     318,   873,   441,   873,   319,   322,   873,   323,   140,  -413, +     324,   325,   873,   873,   140,  -413,   309,  -413,  1045,   954, +     954,  1045,  -413,   326,   328,   327,   335,  -413,   332,   333, +     131,   336,    34,  1028,  -413,   339,  -413,   873,   873,  1045, +     873,   873,   341,  -413,   341,   873,   342,  1045,  1045,  1045, +    -413,  -413,  1045,   746,   340,   345,  -413,   954,  -413,   954, +     954,  -413,  -413,  -413,  -413,  -413,  -413,  -413,   140,    10, +     431,   343,   346,   746,    63,  -413,  -413,   400,  -413,  -413, +     338,   873,  -413,  -413,  -413,   144,  -413,  -413,  -413,   351, +     352,   354,    34,  -413,   403,  -413,   472,    -3,  -413,  1045, +    -413,  -413,   355,  -413,  -413,  -413,  -413,  -413,   489,  -413, +     873,  -413,  1000,    15,   203,   746,    66,  -413,   -18,  -413, +    -413,   361,  -413,  1000,  -413,   485,   486,   368,   203,   873, +     873,   491,   434,  -413,   873,   492,  -413,   873,  -413  };  /* YYPGOTO[NTERM-NUM].  */ -static const yytype_int16 yypgoto[] = +static const short int yypgoto[] =  { -    -425,  -425,   388,   389,   390,   391,   326,   327,  -212,  -425, -     445,  -425,  -425,    47,  -425,  -425,  -196,  -310,  -379,  -425, -    -235,  -425,  -308,    32,  -425,  -199,  -425,  -425,   -14,   304, -    -270,  -425,   426,   434,   -58,  -112,  -188,   224,  -425,  -425, -     529,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425,  -425, -    -425,     0,    22,  -425,  -425,   459,  -425,  -425,  -425,  -425, -    -425,  -425,  -424,   -73,   103,  -211,  -425,   510,  -425,  -425, -    -425,  -425,  -425,    67,   191,  -425,  -425,  -425,  -425 +    -413,  -413,   379,   385,   389,   390,   304,   307,  -210,  -413, +     439,  -413,  -413,   145,  -413,  -413,  -192,  -305,  -412,  -413, +    -235,  -413,  -303,    26,  -413,  -201,  -413,  -413,   -14,   288, +    -255,  -413,   420,   429,   -58,  -112,  -187,   239,  -413,  -413, +     518,  -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413,  -413, +    -413,     0,    11,  -413,  -413,   448,  -413,  -413,  -413,  -413, +    -413,  -413,  -403,   -73,   103,  -151,  -413,   482,  -413,  -413, +    -413,  -413,  -413,    53,   153,  -413,  -413,  -413,  -413  };  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If     positive, shift that token.  If negative, reduce the rule which     number is the opposite.  If zero, do what YYDEFACT says.     If YYTABLE_NINF, syntax error.  */ -#define YYTABLE_NINF -171 -static const yytype_int16 yytable[] = +#define YYTABLE_NINF -170 +static const short int yytable[] =  { -      13,   305,   385,   287,   289,   304,   198,   205,   433,    74, -     311,    13,   336,   315,   316,   317,   318,   319,   306,   102, -     322,   323,   402,   119,   304,    21,   402,     1,   435,     2, -      22,   143,    84,   357,    59,    60,   379,   357,   324,    87, -     327,   328,   144,   464,     1,   199,     2,   434,   153,   337, -     338,    23,   146,    36,   398,   143,    38,   106,   358,   346, -     401,   154,   155,    16,    17,    18,   245,   434,    55,   346, -     352,    24,    25,    26,    27,    28,    29,    30,   351,    31, -      77,    78,    19,   346,   132,   135,    13,    51,    82,   106, -      52,   133,   468,    53,    83,   135,    54,   147,   350,   156, -     157,   158,   159,   160,   161,   162,   163,   164,   165,   166, -     167,   168,   169,   203,    57,   400,   327,   328,   557,    91, -     553,   524,   346,   327,   328,   242,   243,   346,   302,   246, -     206,   559,   303,   413,   347,    32,   401,   543,   170,   171, -     172,   173,   174,   175,   176,   177,   178,   179,   180,   181, -     182,   546,   183,   184,   185,   186,   554,   187,   188,   189, -     103,   420,    88,    79,    80,   108,   510,   109,   511,   190, -      32,   108,   191,   109,   192,    84,   193,   560,   439,   334, -     441,   442,   443,   427,   148,   149,   447,   108,   108,   109, -     109,   402,   387,   333,   453,   -57,   -57,   300,   454,   327, -     328,    39,    95,    40,   297,   309,   310,   300,   312,   313, -     300,   300,   300,   300,   300,   320,   321,   300,   300,   401, -     341,   342,   343,   344,   345,    96,   135,   374,    97,   374, -     374,   501,   374,   353,   354,   355,   356,   198,   402,   374, -     402,   531,   488,   382,   108,   532,   109,   374,   374,    59, -      60,    99,   104,    62,    63,    64,    65,    66,   108,     1, -     109,     2,    43,    44,    45,    92,    93,    46,   514,   515, -     516,   531,   349,   150,   151,   535,   199,   384,   108,   100, -     109,   404,   405,   101,   108,    67,   109,   495,   411,     1, -     139,     2,   203,   380,   381,   325,   326,   548,   327,   328, -     550,   110,   111,   140,   -58,   -59,   374,   374,   374,   152, -     203,   399,   300,   201,   374,   240,   238,   544,   241,   244, -    -170,   247,   278,   279,   280,   374,   374,   281,   282,   290, -     295,   291,   292,   555,   293,     1,   298,     2,     3,   294, -     304,   335,   339,   340,     4,     5,   396,   422,   361,   455, -     456,   457,   458,   412,   388,   389,   460,   461,   390,   463, -     374,   391,   374,     6,   392,   374,   393,   397,   407,   408, -       7,   374,   374,   409,     8,   300,   440,   300,   300,   300, -     410,    68,   446,   300,    69,   414,   415,    70,   416,    71, -     105,   417,  -169,   486,   487,   418,   374,   374,   419,   374, -     374,   425,   462,   428,   374,   376,   377,     1,   378,     2, -       3,   429,   374,   438,   467,   386,     4,     5,   444,   445, -     466,   450,   451,   394,   395,   452,   459,   465,   469,   470, -     472,   521,   374,   522,   523,     6,   485,   475,   471,   300, -     374,   473,     7,   453,   490,   477,     8,   527,   479,   480, -     481,   500,   434,   489,   491,   484,   492,   505,   540,   542, -     502,   493,   494,   496,   497,   300,   300,   300,   509,   374, -     505,   513,   528,   519,   374,   120,   121,   122,   123,   124, -     125,   126,   430,   431,   432,   529,   520,   536,   374,   374, -     437,   533,   537,   374,   538,   551,   374,   558,   549,   561, -     562,   448,   449,    59,    60,   563,   104,    62,    63,    64, -      65,    66,   566,     1,   569,     2,   567,   547,   229,   230, -     231,   232,    59,    60,   497,   104,   112,   113,   114,   115, -      66,   130,     1,   525,     2,   145,   474,   142,   476,    67, -      37,   478,   129,   307,   331,   308,   539,   482,   483,    59, -      60,   517,   104,   112,   113,   114,   115,    66,    67,     1, -      90,     2,   250,   251,   252,   253,   254,   255,   256,   257, -     258,   259,   503,   504,     0,   507,   508,   436,     0,     0, -     512,     0,     0,     0,     0,    67,     0,     0,   518,     0, -       0,    59,    60,     0,   104,    62,    63,    64,    65,    66, -       0,     1,     0,     2,     0,     0,     0,     0,   530,     0, -       0,     0,     0,     0,     0,     0,   534,   134,     0,     0, -       0,     0,     0,     0,     0,     0,     0,    67,     0,     0, -       0,     0,     0,     0,     0,    68,     0,     0,    69,     0, -       0,    70,     0,    71,   141,   552,     0,     0,     0,     0, -     556,     0,     0,     0,    68,     0,     0,    69,     0,     0, -      70,     0,    71,   288,   564,   565,     0,     0,     0,   568, -       0,     0,   570,     0,     0,     0,     0,     0,     0,     0, -       0,    68,     0,     0,    69,     0,     0,    70,     0,    71, -     348,   362,   363,    59,    60,   364,     0,     0,     0,     0, -       0,     0,     0,     1,     0,     2,     0,   365,   366,   367, +      13,   303,   285,   287,   196,   383,   302,   101,   462,    73, +     334,    13,    59,    60,   203,   103,    62,    63,    64,    65, +     304,     1,   117,     2,   302,   400,    21,    59,    60,   400, +     103,    62,    63,    64,    65,    83,     1,   355,     2,    39, +     322,    40,    86,   197,   431,   335,   336,    66,     1,   377, +       2,   144,   433,   141,    59,    60,   105,   103,   111,   112, +     113,    65,    66,     1,   142,     2,   355,   396,   309,   130, +     141,   313,   314,   315,   316,   317,   131,    36,   320,   321, +      23,   243,    22,   432,   133,    13,   522,   356,   105,    66, +      38,   432,   325,   326,   133,   555,   145,   348,   -57,   -57, +      24,    25,    26,    27,    28,    29,    30,   344,    31,   451, +     344,   201,   399,   452,   146,   147,   544,    51,   350,   349, +     325,   326,   344,   240,   241,    59,    60,   244,   103,   111, +     112,   113,    65,   411,     1,    55,     2,   204,   541,   551, +     399,    52,   558,    67,   325,   326,    68,   102,    57,    69, +     557,    70,   104,    16,    17,    18,   552,   418,    67,   344, +      66,    68,    83,   344,    69,    87,    70,   139,   466,   508, +     345,   509,    19,   398,    78,    79,   325,   326,    76,    77, +      53,   107,   425,   108,   300,    67,    81,   301,    68,   332, +     281,    69,    82,    70,   400,   298,   399,   529,     1,    32, +       2,   530,   295,   307,   308,   298,   310,   311,   298,   298, +     298,   298,   298,   318,   319,   298,   298,    54,   339,   340, +     341,   342,   343,    32,   133,   372,    90,   372,   372,   499, +     372,   351,   352,   353,   354,   196,   437,   372,   439,   440, +     441,   400,    95,   400,   445,   372,   372,   118,   119,   120, +     121,   122,   123,   124,    91,    92,    67,   380,   107,    68, +     108,   107,    69,   108,    70,   286,   107,   331,   108,   493, +     347,    43,    44,    45,   197,   107,    46,   108,   529,   402, +     403,   107,   533,   108,    94,   385,   409,   148,   149,    96, +     201,   378,   379,   382,   107,   546,   108,    98,   548,    99, +     486,   323,   324,   100,   372,   372,   372,   137,   201,   397, +     298,   138,   372,   325,   326,   109,   110,   542,   -58,   -59, +     150,   199,   236,   372,   372,   238,   512,   513,   514,   242, +     288,   239,   245,   553,   248,   249,   250,   251,   252,   253, +     254,   255,   256,   257,   276,   420,   277,   453,   454,   455, +     456,   278,   279,   280,   458,   459,   289,   461,   372,   290, +     372,   291,   292,   372,   293,   296,   302,   386,   337,   372, +     372,   333,   338,   298,   438,   298,   298,   298,   359,   387, +     444,   298,   388,   389,   390,   394,   391,   395,   405,   406, +     407,   484,   485,   408,   372,   372,   414,   372,   372,   412, +     460,  -169,   372,   374,   375,   410,   376,   416,   413,   415, +     372,   417,   423,   384,   457,     1,   426,     2,     3,   427, +     436,   392,   393,   442,     4,     5,   443,   448,   449,   519, +     372,   520,   521,   465,   483,   450,   463,   298,   372,   467, +     468,   464,   469,     6,   470,   473,   482,   525,   432,   498, +       7,   538,   471,   451,     8,   503,   475,   477,   478,   479, +     487,   489,   495,   298,   298,   298,   488,   372,   503,   490, +     491,   492,   372,   500,   494,   507,   511,   526,   517,   531, +     428,   429,   430,   518,   540,   527,   372,   372,   435,   534, +     535,   372,   536,   549,   372,   556,   547,   559,   560,   446, +     447,   565,   561,   564,   567,    59,    60,   227,   103,   111, +     112,   113,    65,   228,     1,   545,     2,   229,   230,   305, +     259,   260,   495,   306,   128,   523,   329,  -168,   143,    37, +     127,   140,    89,   537,   472,   515,   474,   434,     0,   476, +      66,     1,     0,     2,     3,   480,   481,     0,     0,     0, +       4,     5,     0,     0,    59,    60,     0,   103,    62,    63, +      64,    65,     0,     1,     0,     2,     0,     0,     0,     6, +     501,   502,     0,   505,   506,     0,     7,     0,   510,   132, +       8,     0,     0,     0,     0,     0,   516,     0,     0,    66, +     261,   262,   263,   264,   265,   266,   267,   268,   269,   270, +     271,   272,   273,   274,     0,     0,   528,    59,    60,     0, +       0,     0,     0,     0,   532,     0,     1,     0,     2,     0, +     151,     0,     0,     0,     0,     0,     0,     0,     0,     0, +       0,     0,     0,   152,   153,     0,    67,     0,     0,    68, +       0,     0,    69,   550,    70,   346,     0,     0,   554,     0, +       0,     0,     0,     0,     0,     0,     0,     0,     0,     0, +       0,     0,   562,   563,     0,     0,     0,   566,     0,     0, +     568,   154,   155,   156,   157,   158,   159,   160,   161,   162, +     163,   164,   165,   166,   167,    67,     0,     0,    68,     0, +       0,    69,     0,    70,     0,     0,     0,     0,    59,    60, +       0,   103,    62,    63,    64,    65,     0,     1,     0,     2, +     168,   169,   170,   171,   172,   173,   174,   175,   176,   177, +     178,   179,   180,   328,   181,   182,   183,   184,     0,   185, +     186,   187,     0,    66,     0,     0,     0,   107,     0,   108, +       0,   188,     0,     0,   189,     0,   190,     0,   191,   360, +     361,    59,    60,   362,     0,     0,     0,     0,     0,     0, +       1,     0,     2,     0,   363,   364,   365,     0,     0,     0, +       0,     0,     0,     0,     0,     0,     0,   366,   367,    59, +      60,     0,   103,    62,    63,    64,    65,     0,     1,     0, +       2,     0,     0,     0,     0,     0,    59,    60,   368,    61, +      62,    63,    64,    65,   419,     1,     0,     2,     0,     0, +       0,     0,     0,     0,    66,   154,   155,   156,   157,   158, +     159,   160,   161,   162,   163,   164,   165,   166,   167,    67, +       0,    66,    68,     0,     0,    69,     0,    70,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0, -     368,   369,     0,    68,     0,     0,    69,     0,     0,    70, -       0,    71,     0,     0,     0,     0,     0,     0,     0,    59, -      60,   370,   104,   112,   113,   114,   115,    66,     0,     1, -       0,     2,     0,     0,     0,     0,     0,     0,   156,   157, -     158,   159,   160,   161,   162,   163,   164,   165,   166,   167, -     168,   169,     0,     0,     0,    67,     0,     0,     0,     0, -       0,     0,     0,     0,    59,    60,     0,   104,    62,    63, -      64,    65,    66,     0,     1,     0,     2,   170,   171,   172, -     173,   174,   175,   176,   177,   178,   179,   180,   181,   182, -     330,   183,   184,   185,   186,     0,   187,   188,   189,     0, -      67,     0,     0,     0,   108,     0,   109,     0,     0,     0, -       0,   371,   362,   363,    59,    60,   364,     0,     0,     0, -       0,     0,     0,     0,     1,     0,     2,     0,   365,   366, -     367,     0,     0,     0,     0,     0,     0,     0,     0,     0, -       0,   368,   369,     0,     0,     0,     0,     0,     0,     0, -       0,    68,     0,     0,    69,     0,   283,    70,     0,    71, -       0,     0,   370,     0,    59,    60,     0,    61,    62,    63, -      64,    65,    66,     0,     1,     0,     2,     0,     0,   156, -     157,   158,   159,   160,   161,   162,   163,   164,   165,   166, -     167,   168,   169,     0,     0,     0,    68,     0,     0,    69, -      67,     0,    70,     0,    71,   261,   262,     0,     0,     0, -       0,     0,     0,     0,     0,     0,     0,     0,   170,   171, -     172,   173,   174,   175,   176,   177,   178,   179,   180,   181, -     182,     0,   183,   184,   185,   186,     0,   187,   188,   189, -     362,   363,     0,     0,   364,     0,     0,     0,     0,     0, -       0,     0,   371,     0,     0,     0,   365,   366,   367,     0, -       0,     0,     0,     0,     0,     0,     0,     0,     0,   368, -     369,     0,     0,     0,     0,   263,   264,   265,   266,   267, -     268,   269,   270,   271,   272,   273,   274,   275,   276,     0, -     370,     0,     0,     0,     0,     0,    68,     0,     0,    69, -       0,     0,    70,     0,    71,     0,     0,   156,   157,   158, -     159,   160,   161,   162,   163,   164,   165,   166,   167,   168, -     169,     0,     0,     0,     0,     0,     0,     0,     0,     0, -       0,     0,     0,    59,    60,     0,   104,    62,    63,    64, -      65,    66,     0,     1,     0,     2,   170,   171,   172,   173, -     174,   175,   176,   177,   178,   179,   180,   181,   182,   421, -     183,   184,   185,   186,     0,   187,   188,   189,     0,    67, -       0,    59,    60,     0,   104,    62,    63,    64,    65,    66, -     371,     1,     0,     2,    59,    60,     0,   104,   112,   113, -     114,   115,    66,     0,     1,     0,     2,   499,    59,    60, -       0,   104,    62,    63,    64,    65,    66,    67,     1,     0, -       2,    59,    60,     0,   202,    62,    63,    64,    65,    66, -      67,     1,     0,     2,     0,    59,    60,     0,   104,   112, -     113,   114,   115,    66,    67,     1,     0,     2,    59,    60, -       0,   299,    62,    63,    64,    65,    66,    67,     1,     0, +       0,     0,     0,     0,   168,   169,   170,   171,   172,   173, +     174,   175,   176,   177,   178,   179,   180,     0,   181,   182, +     183,   184,     0,   185,   186,   187,   360,   361,    59,    60, +     362,   107,     0,   108,     0,     0,     0,     1,   369,     2, +       0,   363,   364,   365,     0,     0,     0,     0,     0,     0, +       0,     0,     0,     0,   366,   367,     0,     0,     0,     0, +      67,     0,     0,    68,     0,     0,    69,     0,    70,     0, +       0,     0,     0,     0,     0,   368,     0,    67,     0,     0, +      68,     0,     0,    69,     0,    70,     0,     0,     0,     0, +       0,     0,   154,   155,   156,   157,   158,   159,   160,   161, +     162,   163,   164,   165,   166,   167,     0,     0,     0,    59, +      60,     0,   103,   111,   112,   113,    65,     0,     1,     0,         2,     0,     0,     0,     0,     0,     0,     0,     0,     0, -       0,    67,     0,     0,     0,    68,     0,     0,    69,     0, -       0,    70,     0,    71,    67,     0,     0,     0,     0,     0, +       0,   168,   169,   170,   171,   172,   173,   174,   175,   176, +     177,   178,   179,   180,    66,   181,   182,   183,   184,     0, +     185,   186,   187,   360,   361,     0,     0,   362,     0,     0, +       0,     0,     0,     0,     0,   369,     0,     0,   363,   364, +     365,     0,     0,     0,     0,     0,     0,     0,     0,     0, +       0,   366,   367,    59,    60,     0,   103,    62,    63,    64, +      65,     0,     1,     0,     2,     0,     0,     0,     0,     0, +      59,    60,   368,   103,    62,    63,    64,    65,   497,     1, +       0,     2,     0,     0,     0,     0,     0,     0,    66,   154, +     155,   156,   157,   158,   159,   160,   161,   162,   163,   164, +     165,   166,   167,     0,     0,    66,     0,     0,     0,     0, +      67,     0,     0,    68,     0,     0,    69,     0,    70,     0, +       0,     0,     0,     0,     0,     0,     0,     0,   168,   169, +     170,   171,   172,   173,   174,   175,   176,   177,   178,   179, +     180,     0,   181,   182,   183,   184,     0,   185,   186,   187, +      59,    60,     0,   200,    62,    63,    64,    65,     0,     1, +       0,     2,   369,    59,    60,     0,   103,   111,   112,   113, +      65,     0,     1,     0,     2,     0,     0,     0,     0,     0, +       0,     0,     0,     0,    67,    66,     0,    68,     0,     0, +      69,     0,    70,     0,     0,     0,     0,     0,    66,     0, +       0,    67,     0,     0,    68,     0,     0,    69,     0,    70, +      59,    60,     0,   297,    62,    63,    64,    65,     0,     1, +       0,     2,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0, +       0,     0,     0,     0,     0,    66,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0, -       0,     0,     0,    68,     0,     0,    69,     0,     0,    70, -       0,    71,     0,     0,     0,     0,    68,     0,     0,    69, -       0,     0,    70,     0,    71,     0,     0,     0,     0,     0, -      68,     0,     0,    69,     0,     0,    70,     0,    71,     0, -       0,     0,     0,    68,   208,     0,    69,     0,     0,    70, -       0,    71,     0,     0,     0,     0,     0,    68,     0,     0, -      69,     0,     0,    70,     0,   286,   209,   210,     0,     0, -      68,     0,     0,    69,     0,     0,    70,     0,    71,   211, -     212,   213,   214,   215,   216,   156,   157,   158,   159,   160, -     161,   162,   163,   164,   165,   166,   167,   217,   218,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0, -       0,     0,     0,     0,     0,     0,     0,     0,     0,   219, -     220,   221,     0,     0,   222,   171,   172,   173,   174,   175, -     176,   177,   178,   179,   180,   181,   182,   223,   224,   184, -     185,   186,   225,   226,   227,   228 +       0,     0,     0,     0,     0,     0,   206,     0,     0,     0, +       0,    67,     0,     0,    68,     0,     0,    69,     0,    70, +       0,     0,     0,     0,    67,     0,     0,    68,   207,   208, +      69,     0,   284,     0,     0,     0,     0,     0,     0,     0, +       0,   209,   210,   211,   212,   213,   214,   154,   155,   156, +     157,   158,   159,   160,   161,   162,   163,   164,   165,   215, +     216,     0,     0,     0,     0,     0,     0,     0,     0,     0, +       0,    67,     0,     0,    68,     0,     0,    69,     0,    70, +       0,   217,   218,   219,     0,     0,   220,   169,   170,   171, +     172,   173,   174,   175,   176,   177,   178,   179,   180,   221, +     222,   182,   183,   184,   223,   224,   225,   226  }; -static const yytype_int16 yycheck[] = +static const short int yycheck[] =  { -       0,   213,   310,   191,   192,    10,   118,    22,    10,    23, -     221,    11,   247,   224,   225,   226,   227,   228,   214,     4, -     231,   232,   332,    81,    10,   134,   336,    15,    10,    17, -      53,   135,    16,    28,     5,     6,   306,    28,   234,    23, -     111,   112,   146,   422,    15,   118,    17,    49,    19,   248, -     249,    14,   110,     0,   324,   135,   134,    71,    49,   135, -     131,    32,    33,    44,    45,    46,   146,    49,   140,   135, -     146,    34,    35,    36,    37,    38,    39,    40,   144,    42, -      33,    34,    63,   135,   135,    99,    86,   134,    41,   103, -     134,   142,   144,   134,    47,   109,   134,   111,   286,    70, -      71,    72,    73,    74,    75,    76,    77,    78,    79,    80, -      81,    82,    83,   127,    17,   326,   111,   112,    30,    17, -     544,   500,   135,   111,   112,   139,   140,   135,     9,   143, -     145,   555,    13,   146,   142,   133,   131,   142,   109,   110, -     111,   112,   113,   114,   115,   116,   117,   118,   119,   120, -     121,   530,   123,   124,   125,   126,   142,   128,   129,   130, -     145,   360,   146,    26,    27,   136,   474,   138,   476,   140, -     133,   136,   143,   138,   145,    16,   147,   556,   389,   144, -     391,   392,   393,   371,    20,    21,   397,   136,   136,   138, -     138,   501,   140,   142,   135,     3,     4,   211,   139,   111, -     112,    38,     4,    40,   204,   219,   220,   221,   222,   223, -     224,   225,   226,   227,   228,   229,   230,   231,   232,   131, -     278,   279,   280,   281,   282,    17,   240,   300,    17,   302, -     303,   466,   305,   291,   292,   293,   294,   349,   548,   312, -     550,   135,   453,   135,   136,   139,   138,   320,   321,     5, -       6,   138,     8,     9,    10,    11,    12,    13,   136,    15, -     138,    17,    34,    35,    36,    47,    48,    39,   479,   480, -     481,   135,   286,     3,     4,   139,   349,   135,   136,     4, -     138,   339,   340,     4,   136,    41,   138,   139,   346,    15, -     141,    17,   306,   307,   308,   107,   108,   532,   111,   112, -     535,    77,    78,   141,     7,     7,   379,   380,   381,     7, -     324,   325,   326,     4,   387,   135,    17,   529,   139,   144, -       0,   139,   138,   138,   138,   398,   399,   138,   138,    17, -     135,   138,   138,   545,   138,    15,    51,    17,    18,   138, -      10,   144,   138,   138,    24,    25,    30,   361,   138,   407, -     408,   409,   410,   144,   135,   135,   414,   415,   135,   417, -     433,   135,   435,    43,   135,   438,   135,   135,   135,   135, -      50,   444,   445,   135,    54,   389,   390,   391,   392,   393, -     135,   137,   396,   397,   140,   135,   135,   143,    30,   145, -     146,   135,     0,   451,   452,    17,   469,   470,     4,   472, -     473,    55,   416,   135,   477,   302,   303,    15,   305,    17, -      18,   135,   485,   140,    17,   312,    24,    25,   135,   135, -     139,   135,   135,   320,   321,   135,   144,   135,    13,    13, -     135,   489,   505,   491,   492,    43,   450,     4,   138,   453, -     513,   135,    50,   135,   139,   135,    54,    17,   135,   135, -     135,   465,    49,   135,   135,   138,   135,   471,    49,    13, -     135,   139,   139,   139,   464,   479,   480,   481,   135,   542, -     484,   135,   135,   139,   547,    56,    57,    58,    59,    60, -      61,    62,   379,   380,   381,   140,   139,   139,   561,   562, -     387,   142,   139,   566,   139,     4,   569,   135,   142,    13, -      13,   398,   399,     5,     6,   135,     8,     9,    10,    11, -      12,    13,    13,    15,    13,    17,    68,   531,   130,   130, -     130,   130,     5,     6,   524,     8,     9,    10,    11,    12, -      13,    86,    15,   501,    17,   109,   433,   103,   435,    41, -      11,   438,    83,   217,   240,   218,   524,   444,   445,     5, -       6,   484,     8,     9,    10,    11,    12,    13,    41,    15, -      50,    17,    84,    85,    86,    87,    88,    89,    90,    91, -      92,    93,   469,   470,    -1,   472,   473,   386,    -1,    -1, -     477,    -1,    -1,    -1,    -1,    41,    -1,    -1,   485,    -1, -      -1,     5,     6,    -1,     8,     9,    10,    11,    12,    13, -      -1,    15,    -1,    17,    -1,    -1,    -1,    -1,   505,    -1, -      -1,    -1,    -1,    -1,    -1,    -1,   513,    31,    -1,    -1, -      -1,    -1,    -1,    -1,    -1,    -1,    -1,    41,    -1,    -1, -      -1,    -1,    -1,    -1,    -1,   137,    -1,    -1,   140,    -1, -      -1,   143,    -1,   145,   146,   542,    -1,    -1,    -1,    -1, -     547,    -1,    -1,    -1,   137,    -1,    -1,   140,    -1,    -1, -     143,    -1,   145,   146,   561,   562,    -1,    -1,    -1,   566, -      -1,    -1,   569,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      -1,   137,    -1,    -1,   140,    -1,    -1,   143,    -1,   145, -     146,     3,     4,     5,     6,     7,    -1,    -1,    -1,    -1, -      -1,    -1,    -1,    15,    -1,    17,    -1,    19,    20,    21, +       0,   211,   189,   190,   116,   308,     9,     4,   420,    23, +     245,    11,     5,     6,    21,     8,     9,    10,    11,    12, +     212,    14,    80,    16,     9,   330,   133,     5,     6,   334, +       8,     9,    10,    11,    12,    15,    14,    27,    16,    37, +     232,    39,    22,   116,     9,   246,   247,    40,    14,   304, +      16,   109,     9,   134,     5,     6,    70,     8,     9,    10, +      11,    12,    40,    14,   145,    16,    27,   322,   219,   134, +     134,   222,   223,   224,   225,   226,   141,     0,   229,   230, +      13,   145,    52,    48,    98,    85,   498,    48,   102,    40, +     133,    48,   110,   111,   108,    29,   110,   284,     3,     4, +      33,    34,    35,    36,    37,    38,    39,   134,    41,   134, +     134,   125,   130,   138,    19,    20,   528,   133,   145,   143, +     110,   111,   134,   137,   138,     5,     6,   141,     8,     9, +      10,    11,    12,   145,    14,   139,    16,   144,   141,   542, +     130,   133,   554,   136,   110,   111,   139,   144,    16,   142, +     553,   144,   145,    43,    44,    45,   141,   358,   136,   134, +      40,   139,    15,   134,   142,   145,   144,   145,   143,   472, +     141,   474,    62,   324,    25,    26,   110,   111,    33,    34, +     133,   135,   369,   137,     9,   136,    41,    12,   139,   143, +     141,   142,    47,   144,   499,   209,   130,   134,    14,   132, +      16,   138,   202,   217,   218,   219,   220,   221,   222,   223, +     224,   225,   226,   227,   228,   229,   230,   133,   276,   277, +     278,   279,   280,   132,   238,   298,    16,   300,   301,   464, +     303,   289,   290,   291,   292,   347,   387,   310,   389,   390, +     391,   546,    16,   548,   395,   318,   319,    55,    56,    57, +      58,    59,    60,    61,    46,    47,   136,   134,   135,   139, +     137,   135,   142,   137,   144,   145,   135,   141,   137,   138, +     284,    33,    34,    35,   347,   135,    38,   137,   134,   337, +     338,   135,   138,   137,     4,   139,   344,     3,     4,    16, +     304,   305,   306,   134,   135,   530,   137,   137,   533,     4, +     451,   106,   107,     4,   377,   378,   379,   140,   322,   323, +     324,   140,   385,   110,   111,    76,    77,   527,     7,     7, +       7,     4,    16,   396,   397,   134,   477,   478,   479,   143, +      16,   138,   138,   543,    83,    84,    85,    86,    87,    88, +      89,    90,    91,    92,   137,   359,   137,   405,   406,   407, +     408,   137,   137,   137,   412,   413,   137,   415,   431,   137, +     433,   137,   137,   436,   134,    50,     9,   134,   137,   442, +     443,   143,   137,   387,   388,   389,   390,   391,   137,   134, +     394,   395,   134,   134,   134,    29,   134,   134,   134,   134, +     134,   449,   450,   134,   467,   468,    29,   470,   471,   134, +     414,     0,   475,   300,   301,   143,   303,    16,   134,   134, +     483,     4,    54,   310,   143,    14,   134,    16,    17,   134, +     139,   318,   319,   134,    23,    24,   134,   134,   134,   487, +     503,   489,   490,    16,   448,   134,   134,   451,   511,    12, +      12,   138,   137,    42,   134,     4,   137,    16,    48,   463, +      49,    48,   134,   134,    53,   469,   134,   134,   134,   134, +     134,   134,   462,   477,   478,   479,   138,   540,   482,   134, +     138,   138,   545,   134,   138,   134,   134,   134,   138,   141, +     377,   378,   379,   138,    12,   139,   559,   560,   385,   138, +     138,   564,   138,     4,   567,   134,   141,    12,    12,   396, +     397,    67,   134,    12,    12,     5,     6,   128,     8,     9, +      10,    11,    12,   128,    14,   529,    16,   128,   128,   215, +      19,    20,   522,   216,    85,   499,   238,     0,   108,    11, +      82,   102,    50,   522,   431,   482,   433,   384,    -1,   436, +      40,    14,    -1,    16,    17,   442,   443,    -1,    -1,    -1, +      23,    24,    -1,    -1,     5,     6,    -1,     8,     9,    10, +      11,    12,    -1,    14,    -1,    16,    -1,    -1,    -1,    42, +     467,   468,    -1,   470,   471,    -1,    49,    -1,   475,    30, +      53,    -1,    -1,    -1,    -1,    -1,   483,    -1,    -1,    40, +      89,    90,    91,    92,    93,    94,    95,    96,    97,    98, +      99,   100,   101,   102,    -1,    -1,   503,     5,     6,    -1, +      -1,    -1,    -1,    -1,   511,    -1,    14,    -1,    16,    -1, +      18,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      -1,    -1,    -1,    31,    32,    -1,   136,    -1,    -1,   139, +      -1,    -1,   142,   540,   144,   145,    -1,    -1,   545,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      32,    33,    -1,   137,    -1,    -1,   140,    -1,    -1,   143, -      -1,   145,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     5, -       6,    53,     8,     9,    10,    11,    12,    13,    -1,    15, -      -1,    17,    -1,    -1,    -1,    -1,    -1,    -1,    70,    71, -      72,    73,    74,    75,    76,    77,    78,    79,    80,    81, -      82,    83,    -1,    -1,    -1,    41,    -1,    -1,    -1,    -1, -      -1,    -1,    -1,    -1,     5,     6,    -1,     8,     9,    10, -      11,    12,    13,    -1,    15,    -1,    17,   109,   110,   111, -     112,   113,   114,   115,   116,   117,   118,   119,   120,   121, -      31,   123,   124,   125,   126,    -1,   128,   129,   130,    -1, -      41,    -1,    -1,    -1,   136,    -1,   138,    -1,    -1,    -1, -      -1,   143,     3,     4,     5,     6,     7,    -1,    -1,    -1, -      -1,    -1,    -1,    -1,    15,    -1,    17,    -1,    19,    20, -      21,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      -1,    32,    33,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      -1,   137,    -1,    -1,   140,    -1,   142,   143,    -1,   145, -      -1,    -1,    53,    -1,     5,     6,    -1,     8,     9,    10, -      11,    12,    13,    -1,    15,    -1,    17,    -1,    -1,    70, -      71,    72,    73,    74,    75,    76,    77,    78,    79,    80, -      81,    82,    83,    -1,    -1,    -1,   137,    -1,    -1,   140, -      41,    -1,   143,    -1,   145,    20,    21,    -1,    -1,    -1, -      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   109,   110, -     111,   112,   113,   114,   115,   116,   117,   118,   119,   120, -     121,    -1,   123,   124,   125,   126,    -1,   128,   129,   130, -       3,     4,    -1,    -1,     7,    -1,    -1,    -1,    -1,    -1, -      -1,    -1,   143,    -1,    -1,    -1,    19,    20,    21,    -1, -      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    32, -      33,    -1,    -1,    -1,    -1,    90,    91,    92,    93,    94, -      95,    96,    97,    98,    99,   100,   101,   102,   103,    -1, -      53,    -1,    -1,    -1,    -1,    -1,   137,    -1,    -1,   140, -      -1,    -1,   143,    -1,   145,    -1,    -1,    70,    71,    72, -      73,    74,    75,    76,    77,    78,    79,    80,    81,    82, -      83,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      -1,    -1,    -1,     5,     6,    -1,     8,     9,    10,    11, -      12,    13,    -1,    15,    -1,    17,   109,   110,   111,   112, -     113,   114,   115,   116,   117,   118,   119,   120,   121,    31, -     123,   124,   125,   126,    -1,   128,   129,   130,    -1,    41, -      -1,     5,     6,    -1,     8,     9,    10,    11,    12,    13, -     143,    15,    -1,    17,     5,     6,    -1,     8,     9,    10, -      11,    12,    13,    -1,    15,    -1,    17,    31,     5,     6, -      -1,     8,     9,    10,    11,    12,    13,    41,    15,    -1, -      17,     5,     6,    -1,     8,     9,    10,    11,    12,    13, -      41,    15,    -1,    17,    -1,     5,     6,    -1,     8,     9, -      10,    11,    12,    13,    41,    15,    -1,    17,     5,     6, -      -1,     8,     9,    10,    11,    12,    13,    41,    15,    -1, -      17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      -1,    41,    -1,    -1,    -1,   137,    -1,    -1,   140,    -1, -      -1,   143,    -1,   145,    41,    -1,    -1,    -1,    -1,    -1, +      -1,    -1,   559,   560,    -1,    -1,    -1,   564,    -1,    -1, +     567,    69,    70,    71,    72,    73,    74,    75,    76,    77, +      78,    79,    80,    81,    82,   136,    -1,    -1,   139,    -1, +      -1,   142,    -1,   144,    -1,    -1,    -1,    -1,     5,     6, +      -1,     8,     9,    10,    11,    12,    -1,    14,    -1,    16, +     108,   109,   110,   111,   112,   113,   114,   115,   116,   117, +     118,   119,   120,    30,   122,   123,   124,   125,    -1,   127, +     128,   129,    -1,    40,    -1,    -1,    -1,   135,    -1,   137, +      -1,   139,    -1,    -1,   142,    -1,   144,    -1,   146,     3, +       4,     5,     6,     7,    -1,    -1,    -1,    -1,    -1,    -1, +      14,    -1,    16,    -1,    18,    19,    20,    -1,    -1,    -1, +      -1,    -1,    -1,    -1,    -1,    -1,    -1,    31,    32,     5, +       6,    -1,     8,     9,    10,    11,    12,    -1,    14,    -1, +      16,    -1,    -1,    -1,    -1,    -1,     5,     6,    52,     8, +       9,    10,    11,    12,    30,    14,    -1,    16,    -1,    -1, +      -1,    -1,    -1,    -1,    40,    69,    70,    71,    72,    73, +      74,    75,    76,    77,    78,    79,    80,    81,    82,   136, +      -1,    40,   139,    -1,    -1,   142,    -1,   144,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      -1,    -1,    -1,    -1,   108,   109,   110,   111,   112,   113, +     114,   115,   116,   117,   118,   119,   120,    -1,   122,   123, +     124,   125,    -1,   127,   128,   129,     3,     4,     5,     6, +       7,   135,    -1,   137,    -1,    -1,    -1,    14,   142,    16, +      -1,    18,    19,    20,    -1,    -1,    -1,    -1,    -1,    -1, +      -1,    -1,    -1,    -1,    31,    32,    -1,    -1,    -1,    -1, +     136,    -1,    -1,   139,    -1,    -1,   142,    -1,   144,    -1, +      -1,    -1,    -1,    -1,    -1,    52,    -1,   136,    -1,    -1, +     139,    -1,    -1,   142,    -1,   144,    -1,    -1,    -1,    -1, +      -1,    -1,    69,    70,    71,    72,    73,    74,    75,    76, +      77,    78,    79,    80,    81,    82,    -1,    -1,    -1,     5, +       6,    -1,     8,     9,    10,    11,    12,    -1,    14,    -1, +      16,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      -1,   108,   109,   110,   111,   112,   113,   114,   115,   116, +     117,   118,   119,   120,    40,   122,   123,   124,   125,    -1, +     127,   128,   129,     3,     4,    -1,    -1,     7,    -1,    -1, +      -1,    -1,    -1,    -1,    -1,   142,    -1,    -1,    18,    19, +      20,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      -1,    31,    32,     5,     6,    -1,     8,     9,    10,    11, +      12,    -1,    14,    -1,    16,    -1,    -1,    -1,    -1,    -1, +       5,     6,    52,     8,     9,    10,    11,    12,    30,    14, +      -1,    16,    -1,    -1,    -1,    -1,    -1,    -1,    40,    69, +      70,    71,    72,    73,    74,    75,    76,    77,    78,    79, +      80,    81,    82,    -1,    -1,    40,    -1,    -1,    -1,    -1, +     136,    -1,    -1,   139,    -1,    -1,   142,    -1,   144,    -1, +      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   108,   109, +     110,   111,   112,   113,   114,   115,   116,   117,   118,   119, +     120,    -1,   122,   123,   124,   125,    -1,   127,   128,   129, +       5,     6,    -1,     8,     9,    10,    11,    12,    -1,    14, +      -1,    16,   142,     5,     6,    -1,     8,     9,    10,    11, +      12,    -1,    14,    -1,    16,    -1,    -1,    -1,    -1,    -1, +      -1,    -1,    -1,    -1,   136,    40,    -1,   139,    -1,    -1, +     142,    -1,   144,    -1,    -1,    -1,    -1,    -1,    40,    -1, +      -1,   136,    -1,    -1,   139,    -1,    -1,   142,    -1,   144, +       5,     6,    -1,     8,     9,    10,    11,    12,    -1,    14, +      -1,    16,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      -1,    -1,    -1,   137,    -1,    -1,   140,    -1,    -1,   143, -      -1,   145,    -1,    -1,    -1,    -1,   137,    -1,    -1,   140, -      -1,    -1,   143,    -1,   145,    -1,    -1,    -1,    -1,    -1, -     137,    -1,    -1,   140,    -1,    -1,   143,    -1,   145,    -1, -      -1,    -1,    -1,   137,    29,    -1,   140,    -1,    -1,   143, -      -1,   145,    -1,    -1,    -1,    -1,    -1,   137,    -1,    -1, -     140,    -1,    -1,   143,    -1,   145,    51,    52,    -1,    -1, -     137,    -1,    -1,   140,    -1,    -1,   143,    -1,   145,    64, -      65,    66,    67,    68,    69,    70,    71,    72,    73,    74, -      75,    76,    77,    78,    79,    80,    81,    82,    83,    -1, +      -1,    -1,    -1,    -1,    -1,    40,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104, -     105,   106,    -1,    -1,   109,   110,   111,   112,   113,   114, -     115,   116,   117,   118,   119,   120,   121,   122,   123,   124, -     125,   126,   127,   128,   129,   130 +      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      -1,    -1,    -1,    -1,    -1,    -1,    28,    -1,    -1,    -1, +      -1,   136,    -1,    -1,   139,    -1,    -1,   142,    -1,   144, +      -1,    -1,    -1,    -1,   136,    -1,    -1,   139,    50,    51, +     142,    -1,   144,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      -1,    63,    64,    65,    66,    67,    68,    69,    70,    71, +      72,    73,    74,    75,    76,    77,    78,    79,    80,    81, +      82,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      -1,   136,    -1,    -1,   139,    -1,    -1,   142,    -1,   144, +      -1,   103,   104,   105,    -1,    -1,   108,   109,   110,   111, +     112,   113,   114,   115,   116,   117,   118,   119,   120,   121, +     122,   123,   124,   125,   126,   127,   128,   129  };  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing     symbol of state STATE-NUM.  */ -static const yytype_uint8 yystos[] = +static const unsigned char yystos[] =  { -       0,    15,    17,    18,    24,    25,    43,    50,    54,   158, -     186,   187,   188,   199,   190,   189,    44,    45,    46,    63, -     196,   134,    53,    14,    34,    35,    36,    37,    38,    39, -      40,    42,   133,   159,   160,   161,     0,   188,   134,    38, -      40,   162,   208,    34,    35,    36,    39,   163,   205,   207, -     214,   134,   134,   134,   134,   140,   197,    17,   194,     5, -       6,     8,     9,    10,    11,    12,    13,    41,   137,   140, -     143,   145,   149,   175,   176,   199,   211,   161,   161,    26, -      27,   185,   161,   161,    16,   215,   216,    23,   146,   206, -     215,    17,    47,    48,   195,     4,    17,    17,   198,   138, -       4,     4,     4,   145,     8,   146,   176,   181,   136,   138, -     185,   185,     9,    10,    11,    12,   156,   157,   176,   182, -      56,    57,    58,    59,    60,    61,    62,   164,   203,   203, -     158,   219,   135,   142,    31,   176,   177,   179,   180,   141, -     141,   146,   181,   135,   146,   180,   182,   176,    20,    21, -       3,     4,     7,    19,    32,    33,    70,    71,    72,    73, -      74,    75,    76,    77,    78,    79,    80,    81,    82,    83, -     109,   110,   111,   112,   113,   114,   115,   116,   117,   118, -     119,   120,   121,   123,   124,   125,   126,   128,   129,   130, -     140,   143,   145,   147,   150,   151,   152,   153,   183,   211, -     191,     4,     8,   176,   178,    22,   145,   204,    29,    51, -      52,    64,    65,    66,    67,    68,    69,    82,    83,   104, -     105,   106,   109,   122,   123,   127,   128,   129,   130,   150, -     151,   152,   153,   217,   223,   224,   225,   226,    17,   166, -     135,   139,   176,   176,   144,   146,   176,   139,   192,   193, -      84,    85,    86,    87,    88,    89,    90,    91,    92,    93, -     154,    20,    21,    90,    91,    92,    93,    94,    95,    96, -      97,    98,    99,   100,   101,   102,   103,   155,   138,   138, -     138,   138,   138,   142,   182,   184,   145,   184,   146,   184, -      17,   138,   138,   138,   138,   135,   173,   199,    51,     8, -     176,   213,     9,    13,    10,   156,   164,   154,   155,   176, -     176,   213,   176,   176,   220,   213,   213,   213,   213,   213, -     176,   176,   213,   213,   164,   107,   108,   111,   112,   165, -      31,   177,   168,   142,   144,   144,   168,   173,   173,   138, -     138,   182,   182,   182,   182,   182,   135,   142,   146,   176, -     184,   144,   146,   182,   182,   182,   182,    28,    49,   171, -     174,   138,     3,     4,     7,    19,    20,    21,    32,    33, -      53,   143,   183,   210,   211,   212,   212,   212,   212,   178, -     176,   176,   135,   170,   135,   170,   212,   140,   135,   135, -     135,   135,   135,   135,   212,   212,    30,   135,   178,   176, -     213,   131,   165,   167,   182,   182,   222,   135,   135,   135, -     135,   182,   144,   146,   135,   135,    30,   135,    17,     4, -     173,    31,   176,   201,   202,    55,   209,   184,   135,   135, -     212,   212,   212,    10,    49,    10,   222,   212,   140,   213, -     176,   213,   213,   213,   135,   135,   176,   213,   212,   212, -     135,   135,   135,   135,   139,   182,   182,   182,   182,   144, -     182,   182,   176,   182,   166,   135,   139,    17,   144,    13, -      13,   138,   135,   135,   212,     4,   212,   135,   212,   135, -     135,   135,   212,   212,   138,   176,   182,   182,   213,   135, -     139,   135,   135,   139,   139,   139,   139,   199,   200,    31, -     176,   168,   135,   212,   212,   176,   221,   212,   212,   135, -     170,   170,   212,   135,   213,   213,   213,   221,   212,   139, -     139,   182,   182,   182,   166,   171,   172,    17,   135,   140, -     212,   135,   139,   142,   212,   139,   139,   139,   139,   200, -      49,   169,    13,   142,   156,   218,   166,   176,   168,   142, -     168,     4,   212,   210,   142,   156,   212,    30,   135,   210, -     166,    13,    13,   135,   212,   212,    13,    68,   212,    13, -     212 +       0,    14,    16,    17,    23,    24,    42,    49,    53,   157, +     185,   186,   187,   198,   189,   188,    43,    44,    45,    62, +     195,   133,    52,    13,    33,    34,    35,    36,    37,    38, +      39,    41,   132,   158,   159,   160,     0,   187,   133,    37, +      39,   161,   207,    33,    34,    35,    38,   162,   204,   206, +     213,   133,   133,   133,   133,   139,   196,    16,   193,     5, +       6,     8,     9,    10,    11,    12,    40,   136,   139,   142, +     144,   148,   174,   175,   198,   210,   160,   160,    25,    26, +     184,   160,   160,    15,   214,   215,    22,   145,   205,   214, +      16,    46,    47,   194,     4,    16,    16,   197,   137,     4, +       4,     4,   144,     8,   145,   175,   180,   135,   137,   184, +     184,     9,    10,    11,   155,   156,   175,   181,    55,    56, +      57,    58,    59,    60,    61,   163,   202,   202,   157,   218, +     134,   141,    30,   175,   176,   178,   179,   140,   140,   145, +     180,   134,   145,   179,   181,   175,    19,    20,     3,     4, +       7,    18,    31,    32,    69,    70,    71,    72,    73,    74, +      75,    76,    77,    78,    79,    80,    81,    82,   108,   109, +     110,   111,   112,   113,   114,   115,   116,   117,   118,   119, +     120,   122,   123,   124,   125,   127,   128,   129,   139,   142, +     144,   146,   149,   150,   151,   152,   182,   210,   190,     4, +       8,   175,   177,    21,   144,   203,    28,    50,    51,    63, +      64,    65,    66,    67,    68,    81,    82,   103,   104,   105, +     108,   121,   122,   126,   127,   128,   129,   149,   150,   151, +     152,   216,   222,   223,   224,   225,    16,   165,   134,   138, +     175,   175,   143,   145,   175,   138,   191,   192,    83,    84, +      85,    86,    87,    88,    89,    90,    91,    92,   153,    19, +      20,    89,    90,    91,    92,    93,    94,    95,    96,    97, +      98,    99,   100,   101,   102,   154,   137,   137,   137,   137, +     137,   141,   181,   183,   144,   183,   145,   183,    16,   137, +     137,   137,   137,   134,   172,   198,    50,     8,   175,   212, +       9,    12,     9,   155,   163,   153,   154,   175,   175,   212, +     175,   175,   219,   212,   212,   212,   212,   212,   175,   175, +     212,   212,   163,   106,   107,   110,   111,   164,    30,   176, +     167,   141,   143,   143,   167,   172,   172,   137,   137,   181, +     181,   181,   181,   181,   134,   141,   145,   175,   183,   143, +     145,   181,   181,   181,   181,    27,    48,   170,   173,   137, +       3,     4,     7,    18,    19,    20,    31,    32,    52,   142, +     182,   209,   210,   211,   211,   211,   211,   177,   175,   175, +     134,   169,   134,   169,   211,   139,   134,   134,   134,   134, +     134,   134,   211,   211,    29,   134,   177,   175,   212,   130, +     164,   166,   181,   181,   221,   134,   134,   134,   134,   181, +     143,   145,   134,   134,    29,   134,    16,     4,   172,    30, +     175,   200,   201,    54,   208,   183,   134,   134,   211,   211, +     211,     9,    48,     9,   221,   211,   139,   212,   175,   212, +     212,   212,   134,   134,   175,   212,   211,   211,   134,   134, +     134,   134,   138,   181,   181,   181,   181,   143,   181,   181, +     175,   181,   165,   134,   138,    16,   143,    12,    12,   137, +     134,   134,   211,     4,   211,   134,   211,   134,   134,   134, +     211,   211,   137,   175,   181,   181,   212,   134,   138,   134, +     134,   138,   138,   138,   138,   198,   199,    30,   175,   167, +     134,   211,   211,   175,   220,   211,   211,   134,   169,   169, +     211,   134,   212,   212,   212,   220,   211,   138,   138,   181, +     181,   181,   165,   170,   171,    16,   134,   139,   211,   134, +     138,   141,   211,   138,   138,   138,   138,   199,    48,   168, +      12,   141,   155,   217,   165,   175,   167,   141,   167,     4, +     211,   209,   141,   155,   211,    29,   134,   209,   165,    12, +      12,   134,   211,   211,    12,    67,   211,    12,   211  };  #define yyerrok		(yyerrstatus = 0) @@ -2409,7 +2326,7 @@ do								\        yychar = (Token);						\        yylval = (Value);						\        yytoken = YYTRANSLATE (yychar);				\ -      YYPOPSTACK (1);						\ +      YYPOPSTACK;						\        goto yybackup;						\      }								\    else								\ @@ -2417,7 +2334,7 @@ do								\        yyerror (YY_("syntax error: cannot back up")); \        YYERROR;							\      }								\ -while (YYID (0)) +while (0)  #define YYTERROR	1 @@ -2432,7 +2349,7 @@ while (YYID (0))  #ifndef YYLLOC_DEFAULT  # define YYLLOC_DEFAULT(Current, Rhs, N)				\      do									\ -      if (YYID (N))                                                    \ +      if (N)								\  	{								\  	  (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;	\  	  (Current).first_column = YYRHSLOC (Rhs, 1).first_column;	\ @@ -2446,7 +2363,7 @@ while (YYID (0))  	  (Current).first_column = (Current).last_column =		\  	    YYRHSLOC (Rhs, 0).last_column;				\  	}								\ -    while (YYID (0)) +    while (0)  #endif @@ -2458,8 +2375,8 @@ while (YYID (0))  # if YYLTYPE_IS_TRIVIAL  #  define YY_LOCATION_PRINT(File, Loc)			\       fprintf (File, "%d.%d-%d.%d",			\ -	      (Loc).first_line, (Loc).first_column,	\ -	      (Loc).last_line,  (Loc).last_column) +              (Loc).first_line, (Loc).first_column,	\ +              (Loc).last_line,  (Loc).last_column)  # else  #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)  # endif @@ -2486,96 +2403,36 @@ while (YYID (0))  do {						\    if (yydebug)					\      YYFPRINTF Args;				\ -} while (YYID (0)) - -# define YY_SYMBOL_PRINT(Title, Type, Value, Location)			  \ -do {									  \ -  if (yydebug)								  \ -    {									  \ -      YYFPRINTF (stderr, "%s ", Title);					  \ -      yy_symbol_print (stderr,						  \ -		  Type, Value); \ -      YYFPRINTF (stderr, "\n");						  \ -    }									  \ -} while (YYID (0)) - - -/*--------------------------------. -| Print this symbol on YYOUTPUT.  | -`--------------------------------*/ +} while (0) -/*ARGSUSED*/ -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) -static void -yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) -#else -static void -yy_symbol_value_print (yyoutput, yytype, yyvaluep) -    FILE *yyoutput; -    int yytype; -    YYSTYPE const * const yyvaluep; -#endif -{ -  if (!yyvaluep) -    return; -# ifdef YYPRINT -  if (yytype < YYNTOKENS) -    YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); -# else -  YYUSE (yyoutput); -# endif -  switch (yytype) -    { -      default: -	break; -    } -} - - -/*--------------------------------. -| Print this symbol on YYOUTPUT.  | -`--------------------------------*/ - -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) -static void -yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) -#else -static void -yy_symbol_print (yyoutput, yytype, yyvaluep) -    FILE *yyoutput; -    int yytype; -    YYSTYPE const * const yyvaluep; -#endif -{ -  if (yytype < YYNTOKENS) -    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); -  else -    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); - -  yy_symbol_value_print (yyoutput, yytype, yyvaluep); -  YYFPRINTF (yyoutput, ")"); -} +# define YY_SYMBOL_PRINT(Title, Type, Value, Location)		\ +do {								\ +  if (yydebug)							\ +    {								\ +      YYFPRINTF (stderr, "%s ", Title);				\ +      yysymprint (stderr,					\ +                  Type, Value);	\ +      YYFPRINTF (stderr, "\n");					\ +    }								\ +} while (0)  /*------------------------------------------------------------------.  | yy_stack_print -- Print the state stack from its BOTTOM up to its |  | TOP (included).                                                   |  `------------------------------------------------------------------*/ -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) +#if defined (__STDC__) || defined (__cplusplus)  static void -yy_stack_print (yytype_int16 *bottom, yytype_int16 *top) +yy_stack_print (short int *bottom, short int *top)  #else  static void  yy_stack_print (bottom, top) -    yytype_int16 *bottom; -    yytype_int16 *top; +    short int *bottom; +    short int *top;  #endif  {    YYFPRINTF (stderr, "Stack now"); -  for (; bottom <= top; ++bottom) +  for (/* Nothing. */; bottom <= top; ++bottom)      YYFPRINTF (stderr, " %d", *bottom);    YYFPRINTF (stderr, "\n");  } @@ -2584,45 +2441,37 @@ yy_stack_print (bottom, top)  do {								\    if (yydebug)							\      yy_stack_print ((Bottom), (Top));				\ -} while (YYID (0)) +} while (0)  /*------------------------------------------------.  | Report that the YYRULE is going to be reduced.  |  `------------------------------------------------*/ -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) +#if defined (__STDC__) || defined (__cplusplus)  static void -yy_reduce_print (YYSTYPE *yyvsp, int yyrule) +yy_reduce_print (int yyrule)  #else  static void -yy_reduce_print (yyvsp, yyrule) -    YYSTYPE *yyvsp; +yy_reduce_print (yyrule)      int yyrule;  #endif  { -  int yynrhs = yyr2[yyrule];    int yyi;    unsigned long int yylno = yyrline[yyrule]; -  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", -	     yyrule - 1, yylno); -  /* The symbols being reduced.  */ -  for (yyi = 0; yyi < yynrhs; yyi++) -    { -      fprintf (stderr, "   $%d = ", yyi + 1); -      yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], -		       &(yyvsp[(yyi + 1) - (yynrhs)]) -		       		       ); -      fprintf (stderr, "\n"); -    } +  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu), ", +             yyrule - 1, yylno); +  /* Print the symbols being reduced, and their result.  */ +  for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++) +    YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]); +  YYFPRINTF (stderr, "-> %s\n", yytname[yyr1[yyrule]]);  }  # define YY_REDUCE_PRINT(Rule)		\  do {					\    if (yydebug)				\ -    yy_reduce_print (yyvsp, Rule); \ -} while (YYID (0)) +    yy_reduce_print (Rule);		\ +} while (0)  /* Nonzero means print parse trace.  It is left uninitialized so that     multiple parsers can coexist.  */ @@ -2656,44 +2505,42 @@ int yydebug;  #if YYERROR_VERBOSE  # ifndef yystrlen -#  if defined __GLIBC__ && defined _STRING_H +#  if defined (__GLIBC__) && defined (_STRING_H)  #   define yystrlen strlen  #  else  /* Return the length of YYSTR.  */ -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER)  static YYSIZE_T +#   if defined (__STDC__) || defined (__cplusplus)  yystrlen (const char *yystr) -#else -static YYSIZE_T +#   else  yystrlen (yystr) -    const char *yystr; -#endif +     const char *yystr; +#   endif  { -  YYSIZE_T yylen; -  for (yylen = 0; yystr[yylen]; yylen++) +  const char *yys = yystr; + +  while (*yys++ != '\0')      continue; -  return yylen; + +  return yys - yystr - 1;  }  #  endif  # endif  # ifndef yystpcpy -#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +#  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)  #   define yystpcpy stpcpy  #  else  /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in     YYDEST.  */ -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER)  static char * +#   if defined (__STDC__) || defined (__cplusplus)  yystpcpy (char *yydest, const char *yysrc) -#else -static char * +#   else  yystpcpy (yydest, yysrc) -    char *yydest; -    const char *yysrc; -#endif +     char *yydest; +     const char *yysrc; +#   endif  {    char *yyd = yydest;    const char *yys = yysrc; @@ -2719,7 +2566,7 @@ yytnamerr (char *yyres, const char *yystr)  {    if (*yystr == '"')      { -      YYSIZE_T yyn = 0; +      size_t yyn = 0;        char const *yyp = yystr;        for (;;) @@ -2754,123 +2601,53 @@ yytnamerr (char *yyres, const char *yystr)  }  # endif -/* Copy into YYRESULT an error message about the unexpected token -   YYCHAR while in state YYSTATE.  Return the number of bytes copied, -   including the terminating null byte.  If YYRESULT is null, do not -   copy anything; just return the number of bytes that would be -   copied.  As a special case, return 0 if an ordinary "syntax error" -   message will do.  Return YYSIZE_MAXIMUM if overflow occurs during -   size calculation.  */ -static YYSIZE_T -yysyntax_error (char *yyresult, int yystate, int yychar) +#endif /* YYERROR_VERBOSE */ + + + +#if YYDEBUG +/*--------------------------------. +| Print this symbol on YYOUTPUT.  | +`--------------------------------*/ + +#if defined (__STDC__) || defined (__cplusplus) +static void +yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep) +#else +static void +yysymprint (yyoutput, yytype, yyvaluep) +    FILE *yyoutput; +    int yytype; +    YYSTYPE *yyvaluep; +#endif  { -  int yyn = yypact[yystate]; +  /* Pacify ``unused variable'' warnings.  */ +  (void) yyvaluep; -  if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) -    return 0; +  if (yytype < YYNTOKENS) +    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);    else -    { -      int yytype = YYTRANSLATE (yychar); -      YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); -      YYSIZE_T yysize = yysize0; -      YYSIZE_T yysize1; -      int yysize_overflow = 0; -      enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; -      char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; -      int yyx; - -# if 0 -      /* This is so xgettext sees the translatable formats that are -	 constructed on the fly.  */ -      YY_("syntax error, unexpected %s"); -      YY_("syntax error, unexpected %s, expecting %s"); -      YY_("syntax error, unexpected %s, expecting %s or %s"); -      YY_("syntax error, unexpected %s, expecting %s or %s or %s"); -      YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); -# endif -      char *yyfmt; -      char const *yyf; -      static char const yyunexpected[] = "syntax error, unexpected %s"; -      static char const yyexpecting[] = ", expecting %s"; -      static char const yyor[] = " or %s"; -      char yyformat[sizeof yyunexpected -		    + sizeof yyexpecting - 1 -		    + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) -		       * (sizeof yyor - 1))]; -      char const *yyprefix = yyexpecting; - -      /* Start YYX at -YYN if negative to avoid negative indexes in -	 YYCHECK.  */ -      int yyxbegin = yyn < 0 ? -yyn : 0; - -      /* Stay within bounds of both yycheck and yytname.  */ -      int yychecklim = YYLAST - yyn + 1; -      int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; -      int yycount = 1; - -      yyarg[0] = yytname[yytype]; -      yyfmt = yystpcpy (yyformat, yyunexpected); - -      for (yyx = yyxbegin; yyx < yyxend; ++yyx) -	if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) -	  { -	    if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) -	      { -		yycount = 1; -		yysize = yysize0; -		yyformat[sizeof yyunexpected - 1] = '\0'; -		break; -	      } -	    yyarg[yycount++] = yytname[yyx]; -	    yysize1 = yysize + yytnamerr (0, yytname[yyx]); -	    yysize_overflow |= (yysize1 < yysize); -	    yysize = yysize1; -	    yyfmt = yystpcpy (yyfmt, yyprefix); -	    yyprefix = yyor; -	  } - -      yyf = YY_(yyformat); -      yysize1 = yysize + yystrlen (yyf); -      yysize_overflow |= (yysize1 < yysize); -      yysize = yysize1; +    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); -      if (yysize_overflow) -	return YYSIZE_MAXIMUM; -      if (yyresult) -	{ -	  /* Avoid sprintf, as that infringes on the user's name space. -	     Don't have undefined behavior even if the translation -	     produced a string with the wrong number of "%s"s.  */ -	  char *yyp = yyresult; -	  int yyi = 0; -	  while ((*yyp = *yyf) != '\0') -	    { -	      if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) -		{ -		  yyp += yytnamerr (yyp, yyarg[yyi++]); -		  yyf += 2; -		} -	      else -		{ -		  yyp++; -		  yyf++; -		} -	    } -	} -      return yysize; +# ifdef YYPRINT +  if (yytype < YYNTOKENS) +    YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); +# endif +  switch (yytype) +    { +      default: +        break;      } +  YYFPRINTF (yyoutput, ")");  } -#endif /* YYERROR_VERBOSE */ - +#endif /* ! YYDEBUG */  /*-----------------------------------------------.  | Release the memory associated to this symbol.  |  `-----------------------------------------------*/ -/*ARGSUSED*/ -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) +#if defined (__STDC__) || defined (__cplusplus)  static void  yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)  #else @@ -2881,7 +2658,8 @@ yydestruct (yymsg, yytype, yyvaluep)      YYSTYPE *yyvaluep;  #endif  { -  YYUSE (yyvaluep); +  /* Pacify ``unused variable'' warnings.  */ +  (void) yyvaluep;    if (!yymsg)      yymsg = "Deleting"; @@ -2891,7 +2669,7 @@ yydestruct (yymsg, yytype, yyvaluep)      {        default: -	break; +        break;      }  } @@ -2899,13 +2677,13 @@ yydestruct (yymsg, yytype, yyvaluep)  /* Prevent warnings from -Wmissing-prototypes.  */  #ifdef YYPARSE_PARAM -#if defined __STDC__ || defined __cplusplus +# if defined (__STDC__) || defined (__cplusplus)  int yyparse (void *YYPARSE_PARAM); -#else +# else  int yyparse (); -#endif +# endif  #else /* ! YYPARSE_PARAM */ -#if defined __STDC__ || defined __cplusplus +#if defined (__STDC__) || defined (__cplusplus)  int yyparse (void);  #else  int yyparse (); @@ -2930,18 +2708,14 @@ int yynerrs;  `----------*/  #ifdef YYPARSE_PARAM -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) -int -yyparse (void *YYPARSE_PARAM) -#else -int -yyparse (YYPARSE_PARAM) -    void *YYPARSE_PARAM; -#endif +# if defined (__STDC__) || defined (__cplusplus) +int yyparse (void *YYPARSE_PARAM) +# else +int yyparse (YYPARSE_PARAM) +  void *YYPARSE_PARAM; +# endif  #else /* ! YYPARSE_PARAM */ -#if (defined __STDC__ || defined __C99__FUNC__ \ -     || defined __cplusplus || defined _MSC_VER) +#if defined (__STDC__) || defined (__cplusplus)  int  yyparse (void)  #else @@ -2959,12 +2733,6 @@ yyparse ()    int yyerrstatus;    /* Look-ahead token as an internal (translated) token number.  */    int yytoken = 0; -#if YYERROR_VERBOSE -  /* Buffer for error messages, and its allocated size.  */ -  char yymsgbuf[128]; -  char *yymsg = yymsgbuf; -  YYSIZE_T yymsg_alloc = sizeof yymsgbuf; -#endif    /* Three stacks and their tools:       `yyss': related to states, @@ -2975,9 +2743,9 @@ yyparse ()       to reallocate them elsewhere.  */    /* The state stack.  */ -  yytype_int16 yyssa[YYINITDEPTH]; -  yytype_int16 *yyss = yyssa; -  yytype_int16 *yyssp; +  short int yyssa[YYINITDEPTH]; +  short int *yyss = yyssa; +  short int *yyssp;    /* The semantic value stack.  */    YYSTYPE yyvsa[YYINITDEPTH]; @@ -2986,7 +2754,7 @@ yyparse () -#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N)) +#define YYPOPSTACK   (yyvsp--, yyssp--)    YYSIZE_T yystacksize = YYINITDEPTH; @@ -2995,9 +2763,9 @@ yyparse ()    YYSTYPE yyval; -  /* The number of symbols on the RHS of the reduced rule. -     Keep to zero when no symbol should be popped.  */ -  int yylen = 0; +  /* When reducing, the number of symbols on the RHS of the reduced +     rule.  */ +  int yylen;    YYDPRINTF ((stderr, "Starting parse\n")); @@ -3021,7 +2789,8 @@ yyparse ()  `------------------------------------------------------------*/   yynewstate:    /* In all cases, when you get here, the value and location stacks -     have just been pushed.  So pushing a state here evens the stacks.  */ +     have just been pushed. so pushing a state here evens the stacks. +     */    yyssp++;   yysetstate: @@ -3034,11 +2803,11 @@ yyparse ()  #ifdef yyoverflow        { -	/* Give user a chance to reallocate the stack.  Use copies of +	/* Give user a chance to reallocate the stack. Use copies of  	   these so that the &'s don't force the real ones into  	   memory.  */  	YYSTYPE *yyvs1 = yyvs; -	yytype_int16 *yyss1 = yyss; +	short int *yyss1 = yyss;  	/* Each stack pointer address is followed by the size of the @@ -3066,7 +2835,7 @@ yyparse ()  	yystacksize = YYMAXDEPTH;        { -	yytype_int16 *yyss1 = yyss; +	short int *yyss1 = yyss;  	union yyalloc *yyptr =  	  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));  	if (! yyptr) @@ -3101,10 +2870,12 @@ yyparse ()  `-----------*/  yybackup: -  /* Do appropriate processing given the current state.  Read a -     look-ahead token if we need one and don't already have one.  */ +/* Do appropriate processing given the current state.  */ +/* Read a look-ahead token if we need one and don't already have one.  */ +/* yyresume: */    /* First try to decide what to do without reference to look-ahead token.  */ +    yyn = yypact[yystate];    if (yyn == YYPACT_NINF)      goto yydefault; @@ -3146,21 +2917,22 @@ yybackup:    if (yyn == YYFINAL)      YYACCEPT; -  /* Count tokens shifted since error; after three, turn off error -     status.  */ -  if (yyerrstatus) -    yyerrstatus--; -    /* Shift the look-ahead token.  */    YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); -  /* Discard the shifted token unless it is eof.  */ +  /* Discard the token being shifted unless it is eof.  */    if (yychar != YYEOF)      yychar = YYEMPTY; -  yystate = yyn;    *++yyvsp = yylval; + +  /* Count tokens shifted since error; after three, turn off error +     status.  */ +  if (yyerrstatus) +    yyerrstatus--; + +  yystate = yyn;    goto yynewstate; @@ -3196,155 +2968,155 @@ yyreduce:    switch (yyn)      {          case 3: -#line 1032 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1032 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -  if ((yyvsp[(1) - (1)].UIntVal) > (uint32_t)INT32_MAX)     // Outside of my range! +  if ((yyvsp[0].UIntVal) > (uint32_t)INT32_MAX)     // Outside of my range!      GEN_ERROR("Value too large for type!"); -  (yyval.SIntVal) = (int32_t)(yyvsp[(1) - (1)].UIntVal); +  (yyval.SIntVal) = (int32_t)(yyvsp[0].UIntVal);    CHECK_FOR_ERROR  ;}      break;    case 31: -#line 1048 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1048 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_EQ; ;}      break;    case 32: -#line 1048 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1048 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_NE; ;}      break;    case 33: -#line 1049 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1049 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_SLT; ;}      break;    case 34: -#line 1049 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1049 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_SGT; ;}      break;    case 35: -#line 1050 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1050 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_SLE; ;}      break;    case 36: -#line 1050 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1050 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_SGE; ;}      break;    case 37: -#line 1051 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1051 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_ULT; ;}      break;    case 38: -#line 1051 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1051 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_UGT; ;}      break;    case 39: -#line 1052 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1052 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_ULE; ;}      break;    case 40: -#line 1052 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1052 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.IPredicate) = ICmpInst::ICMP_UGE; ;}      break;    case 41: -#line 1056 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1056 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_OEQ; ;}      break;    case 42: -#line 1056 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1056 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_ONE; ;}      break;    case 43: -#line 1057 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1057 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_OLT; ;}      break;    case 44: -#line 1057 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1057 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_OGT; ;}      break;    case 45: -#line 1058 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1058 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_OLE; ;}      break;    case 46: -#line 1058 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1058 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_OGE; ;}      break;    case 47: -#line 1059 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1059 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_ORD; ;}      break;    case 48: -#line 1059 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1059 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_UNO; ;}      break;    case 49: -#line 1060 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1060 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_UEQ; ;}      break;    case 50: -#line 1060 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1060 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_UNE; ;}      break;    case 51: -#line 1061 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1061 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_ULT; ;}      break;    case 52: -#line 1061 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1061 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_UGT; ;}      break;    case 53: -#line 1062 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1062 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_ULE; ;}      break;    case 54: -#line 1062 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1062 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_UGE; ;}      break;    case 55: -#line 1063 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1063 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_TRUE; ;}      break;    case 56: -#line 1064 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1064 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.FPredicate) = FCmpInst::FCMP_FALSE; ;}      break;    case 60: -#line 1073 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1073 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.StrVal) = (yyvsp[(1) - (2)].StrVal); +    (yyval.StrVal) = (yyvsp[-1].StrVal);      CHECK_FOR_ERROR    ;}      break;    case 61: -#line 1077 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1077 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.StrVal) = 0;      CHECK_FOR_ERROR @@ -3352,188 +3124,188 @@ yyreduce:      break;    case 62: -#line 1083 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1083 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}      break;    case 63: -#line 1084 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1084 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}      break;    case 64: -#line 1085 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1085 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}      break;    case 65: -#line 1086 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1086 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::AppendingLinkage; ;}      break;    case 66: -#line 1087 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1087 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}      break;    case 67: -#line 1091 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1091 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}      break;    case 68: -#line 1092 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1092 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}      break;    case 69: -#line 1093 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1093 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}      break;    case 70: -#line 1097 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1097 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Visibility) = GlobalValue::DefaultVisibility; ;}      break;    case 71: -#line 1098 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1098 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Visibility) = GlobalValue::HiddenVisibility;  ;}      break;    case 72: -#line 1102 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1102 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}      break;    case 73: -#line 1103 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1103 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}      break;    case 74: -#line 1104 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1104 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}      break;    case 75: -#line 1108 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1108 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}      break;    case 76: -#line 1109 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1109 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}      break;    case 77: -#line 1110 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1110 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}      break;    case 78: -#line 1111 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1111 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}      break;    case 79: -#line 1112 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1112 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}      break;    case 80: -#line 1115 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1115 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.UIntVal) = CallingConv::C; ;}      break;    case 81: -#line 1116 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1116 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.UIntVal) = CallingConv::C; ;}      break;    case 82: -#line 1117 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1117 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.UIntVal) = CallingConv::CSRet; ;}      break;    case 83: -#line 1118 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1118 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.UIntVal) = CallingConv::Fast; ;}      break;    case 84: -#line 1119 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1119 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.UIntVal) = CallingConv::Cold; ;}      break;    case 85: -#line 1120 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1120 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.UIntVal) = CallingConv::X86_StdCall; ;}      break;    case 86: -#line 1121 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1121 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.UIntVal) = CallingConv::X86_FastCall; ;}      break;    case 87: -#line 1122 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1122 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -                   if ((unsigned)(yyvsp[(2) - (2)].UInt64Val) != (yyvsp[(2) - (2)].UInt64Val)) +                   if ((unsigned)(yyvsp[0].UInt64Val) != (yyvsp[0].UInt64Val))                       GEN_ERROR("Calling conv too large!"); -                   (yyval.UIntVal) = (yyvsp[(2) - (2)].UInt64Val); +                   (yyval.UIntVal) = (yyvsp[0].UInt64Val);                    CHECK_FOR_ERROR                   ;}      break;    case 88: -#line 1129 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1129 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.ParamAttrs) = FunctionType::ZExtAttribute; ;}      break;    case 89: -#line 1130 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1130 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.ParamAttrs) = FunctionType::SExtAttribute; ;}      break;    case 90: -#line 1133 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1133 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.ParamAttrs) = FunctionType::NoAttributeSet; ;}      break;    case 91: -#line 1134 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1134 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -                (yyval.ParamAttrs) = FunctionType::ParameterAttributes((yyvsp[(1) - (2)].ParamAttrs) | (yyvsp[(2) - (2)].ParamAttrs)); +                (yyval.ParamAttrs) = FunctionType::ParameterAttributes((yyvsp[-1].ParamAttrs) | (yyvsp[0].ParamAttrs));                ;}      break;    case 92: -#line 1139 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1139 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.ParamAttrs) = FunctionType::NoReturnAttribute; ;}      break;    case 94: -#line 1143 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1143 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.ParamAttrs) = FunctionType::NoAttributeSet; ;}      break;    case 95: -#line 1144 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1144 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -                (yyval.ParamAttrs) = FunctionType::ParameterAttributes((yyvsp[(1) - (2)].ParamAttrs) | (yyvsp[(2) - (2)].ParamAttrs)); +                (yyval.ParamAttrs) = FunctionType::ParameterAttributes((yyvsp[-1].ParamAttrs) | (yyvsp[0].ParamAttrs));                ;}      break;    case 96: -#line 1151 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1151 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.UIntVal) = 0; ;}      break;    case 97: -#line 1152 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1152 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -  (yyval.UIntVal) = (yyvsp[(2) - (2)].UInt64Val); +  (yyval.UIntVal) = (yyvsp[0].UInt64Val);    if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))      GEN_ERROR("Alignment must be a power of two!");    CHECK_FOR_ERROR @@ -3541,14 +3313,14 @@ yyreduce:      break;    case 98: -#line 1158 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1158 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.UIntVal) = 0; ;}      break;    case 99: -#line 1159 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1159 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -  (yyval.UIntVal) = (yyvsp[(3) - (3)].UInt64Val); +  (yyval.UIntVal) = (yyvsp[0].UInt64Val);    if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))      GEN_ERROR("Alignment must be a power of two!");    CHECK_FOR_ERROR @@ -3556,110 +3328,110 @@ yyreduce:      break;    case 100: -#line 1167 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1167 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -  for (unsigned i = 0, e = strlen((yyvsp[(2) - (2)].StrVal)); i != e; ++i) -    if ((yyvsp[(2) - (2)].StrVal)[i] == '"' || (yyvsp[(2) - (2)].StrVal)[i] == '\\') +  for (unsigned i = 0, e = strlen((yyvsp[0].StrVal)); i != e; ++i) +    if ((yyvsp[0].StrVal)[i] == '"' || (yyvsp[0].StrVal)[i] == '\\')        GEN_ERROR("Invalid character in section name!"); -  (yyval.StrVal) = (yyvsp[(2) - (2)].StrVal); +  (yyval.StrVal) = (yyvsp[0].StrVal);    CHECK_FOR_ERROR  ;}      break;    case 101: -#line 1175 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1175 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.StrVal) = 0; ;}      break;    case 102: -#line 1176 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" -    { (yyval.StrVal) = (yyvsp[(1) - (1)].StrVal); ;} +#line 1176 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y" +    { (yyval.StrVal) = (yyvsp[0].StrVal); ;}      break;    case 103: -#line 1181 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1181 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {;}      break;    case 104: -#line 1182 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1182 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {;}      break;    case 105: -#line 1183 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1183 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    CurGV->setSection((yyvsp[(1) - (1)].StrVal)); -    free((yyvsp[(1) - (1)].StrVal)); +    CurGV->setSection((yyvsp[0].StrVal)); +    free((yyvsp[0].StrVal));      CHECK_FOR_ERROR    ;}      break;    case 106: -#line 1188 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 1188 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(2) - (2)].UInt64Val) != 0 && !isPowerOf2_32((yyvsp[(2) - (2)].UInt64Val))) +    if ((yyvsp[0].UInt64Val) != 0 && !isPowerOf2_32((yyvsp[0].UInt64Val)))        GEN_ERROR("Alignment must be a power of two!"); -    CurGV->setAlignment((yyvsp[(2) - (2)].UInt64Val)); +    CurGV->setAlignment((yyvsp[0].UInt64Val));      CHECK_FOR_ERROR    ;}      break; -  case 112: -#line 1204 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 111: +#line 1204 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.TypeVal) = new PATypeHolder(OpaqueType::get());      CHECK_FOR_ERROR    ;}      break; -  case 113: -#line 1208 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 112: +#line 1208 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.TypeVal) = new PATypeHolder((yyvsp[(1) - (1)].PrimType)); +    (yyval.TypeVal) = new PATypeHolder((yyvsp[0].PrimType));      CHECK_FOR_ERROR    ;}      break; -  case 114: -#line 1212 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 113: +#line 1212 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                             // Pointer type? -    if (*(yyvsp[(1) - (2)].TypeVal) == Type::LabelTy) +    if (*(yyvsp[-1].TypeVal) == Type::LabelTy)        GEN_ERROR("Cannot form a pointer to a basic block"); -    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(PointerType::get(*(yyvsp[(1) - (2)].TypeVal)))); -    delete (yyvsp[(1) - (2)].TypeVal); +    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(PointerType::get(*(yyvsp[-1].TypeVal)))); +    delete (yyvsp[-1].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 115: -#line 1219 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 114: +#line 1219 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {            // Named types are also simple types... -    const Type* tmp = getTypeVal((yyvsp[(1) - (1)].ValIDVal)); +    const Type* tmp = getTypeVal((yyvsp[0].ValIDVal));      CHECK_FOR_ERROR      (yyval.TypeVal) = new PATypeHolder(tmp);    ;}      break; -  case 116: -#line 1224 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 115: +#line 1224 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                   // Type UpReference -    if ((yyvsp[(2) - (2)].UInt64Val) > (uint64_t)~0U) GEN_ERROR("Value out of range!"); +    if ((yyvsp[0].UInt64Val) > (uint64_t)~0U) GEN_ERROR("Value out of range!");      OpaqueType *OT = OpaqueType::get();        // Use temporary placeholder -    UpRefs.push_back(UpRefRecord((unsigned)(yyvsp[(2) - (2)].UInt64Val), OT));  // Add to vector... +    UpRefs.push_back(UpRefRecord((unsigned)(yyvsp[0].UInt64Val), OT));  // Add to vector...      (yyval.TypeVal) = new PATypeHolder(OT);      UR_OUT("New Upreference!\n");      CHECK_FOR_ERROR    ;}      break; -  case 117: -#line 1232 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 116: +#line 1232 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      std::vector<const Type*> Params;      std::vector<FunctionType::ParameterAttributes> Attrs; -    Attrs.push_back((yyvsp[(5) - (5)].ParamAttrs)); -    for (TypeWithAttrsList::iterator I=(yyvsp[(3) - (5)].TypeWithAttrsList)->begin(), E=(yyvsp[(3) - (5)].TypeWithAttrsList)->end(); I != E; ++I) { +    Attrs.push_back((yyvsp[0].ParamAttrs)); +    for (TypeWithAttrsList::iterator I=(yyvsp[-2].TypeWithAttrsList)->begin(), E=(yyvsp[-2].TypeWithAttrsList)->end(); I != E; ++I) {        Params.push_back(I->Ty->get());        if (I->Ty->get() != Type::VoidTy)          Attrs.push_back(I->Attrs); @@ -3667,21 +3439,21 @@ yyreduce:      bool isVarArg = Params.size() && Params.back() == Type::VoidTy;      if (isVarArg) Params.pop_back(); -    FunctionType *FT = FunctionType::get(*(yyvsp[(1) - (5)].TypeVal), Params, isVarArg, Attrs); -    delete (yyvsp[(3) - (5)].TypeWithAttrsList);   // Delete the argument list -    delete (yyvsp[(1) - (5)].TypeVal);   // Delete the return type handle +    FunctionType *FT = FunctionType::get(*(yyvsp[-4].TypeVal), Params, isVarArg, Attrs); +    delete (yyvsp[-2].TypeWithAttrsList);   // Delete the argument list +    delete (yyvsp[-4].TypeVal);   // Delete the return type handle      (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(FT));       CHECK_FOR_ERROR    ;}      break; -  case 118: -#line 1250 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 117: +#line 1250 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      std::vector<const Type*> Params;      std::vector<FunctionType::ParameterAttributes> Attrs; -    Attrs.push_back((yyvsp[(5) - (5)].ParamAttrs)); -    for (TypeWithAttrsList::iterator I=(yyvsp[(3) - (5)].TypeWithAttrsList)->begin(), E=(yyvsp[(3) - (5)].TypeWithAttrsList)->end(); I != E; ++I) { +    Attrs.push_back((yyvsp[0].ParamAttrs)); +    for (TypeWithAttrsList::iterator I=(yyvsp[-2].TypeWithAttrsList)->begin(), E=(yyvsp[-2].TypeWithAttrsList)->end(); I != E; ++I) {        Params.push_back(I->Ty->get());        if (I->Ty->get() != Type::VoidTy)          Attrs.push_back(I->Attrs); @@ -3689,129 +3461,129 @@ yyreduce:      bool isVarArg = Params.size() && Params.back() == Type::VoidTy;      if (isVarArg) Params.pop_back(); -    FunctionType *FT = FunctionType::get((yyvsp[(1) - (5)].PrimType), Params, isVarArg, Attrs); -    delete (yyvsp[(3) - (5)].TypeWithAttrsList);      // Delete the argument list +    FunctionType *FT = FunctionType::get((yyvsp[-4].PrimType), Params, isVarArg, Attrs); +    delete (yyvsp[-2].TypeWithAttrsList);      // Delete the argument list      (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(FT));       CHECK_FOR_ERROR    ;}      break; -  case 119: -#line 1268 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 118: +#line 1268 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {          // Sized array type? -    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(ArrayType::get(*(yyvsp[(4) - (5)].TypeVal), (unsigned)(yyvsp[(2) - (5)].UInt64Val)))); -    delete (yyvsp[(4) - (5)].TypeVal); +    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(ArrayType::get(*(yyvsp[-1].TypeVal), (unsigned)(yyvsp[-3].UInt64Val)))); +    delete (yyvsp[-1].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 120: -#line 1273 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 119: +#line 1273 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {          // Packed array type? -     const llvm::Type* ElemTy = (yyvsp[(4) - (5)].TypeVal)->get(); -     if ((unsigned)(yyvsp[(2) - (5)].UInt64Val) != (yyvsp[(2) - (5)].UInt64Val)) +     const llvm::Type* ElemTy = (yyvsp[-1].TypeVal)->get(); +     if ((unsigned)(yyvsp[-3].UInt64Val) != (yyvsp[-3].UInt64Val))          GEN_ERROR("Unsigned result not equal to signed result");       if (!ElemTy->isFloatingPoint() && !ElemTy->isInteger())          GEN_ERROR("Element type of a PackedType must be primitive"); -     if (!isPowerOf2_32((yyvsp[(2) - (5)].UInt64Val))) +     if (!isPowerOf2_32((yyvsp[-3].UInt64Val)))         GEN_ERROR("Vector length should be a power of 2!"); -     (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(PackedType::get(*(yyvsp[(4) - (5)].TypeVal), (unsigned)(yyvsp[(2) - (5)].UInt64Val)))); -     delete (yyvsp[(4) - (5)].TypeVal); +     (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(PackedType::get(*(yyvsp[-1].TypeVal), (unsigned)(yyvsp[-3].UInt64Val)))); +     delete (yyvsp[-1].TypeVal);       CHECK_FOR_ERROR    ;}      break; -  case 121: -#line 1285 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 120: +#line 1285 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                        // Structure type?      std::vector<const Type*> Elements; -    for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[(2) - (3)].TypeList)->begin(), -           E = (yyvsp[(2) - (3)].TypeList)->end(); I != E; ++I) +    for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[-1].TypeList)->begin(), +           E = (yyvsp[-1].TypeList)->end(); I != E; ++I)        Elements.push_back(*I);      (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(StructType::get(Elements))); -    delete (yyvsp[(2) - (3)].TypeList); +    delete (yyvsp[-1].TypeList);      CHECK_FOR_ERROR    ;}      break; -  case 122: -#line 1295 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 121: +#line 1295 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                                  // Empty structure type?      (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>()));      CHECK_FOR_ERROR    ;}      break; -  case 123: -#line 1299 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 122: +#line 1299 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      std::vector<const Type*> Elements; -    for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[(3) - (5)].TypeList)->begin(), -           E = (yyvsp[(3) - (5)].TypeList)->end(); I != E; ++I) +    for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[-2].TypeList)->begin(), +           E = (yyvsp[-2].TypeList)->end(); I != E; ++I)        Elements.push_back(*I);      (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(StructType::get(Elements, true))); -    delete (yyvsp[(3) - (5)].TypeList); +    delete (yyvsp[-2].TypeList);      CHECK_FOR_ERROR    ;}      break; -  case 124: -#line 1309 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 123: +#line 1309 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                         // Empty structure type?      (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>(), true));      CHECK_FOR_ERROR    ;}      break; -  case 125: -#line 1316 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 124: +#line 1316 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {  -    (yyval.TypeWithAttrs).Ty = (yyvsp[(1) - (2)].TypeVal);  -    (yyval.TypeWithAttrs).Attrs = (yyvsp[(2) - (2)].ParamAttrs);  +    (yyval.TypeWithAttrs).Ty = (yyvsp[-1].TypeVal);  +    (yyval.TypeWithAttrs).Attrs = (yyvsp[0].ParamAttrs);     ;}      break; -  case 126: -#line 1323 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 125: +#line 1323 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (1)].TypeVal))->getDescription()); -    if (!(*(yyvsp[(1) - (1)].TypeVal))->isFirstClassType()) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription()); +    if (!(*(yyvsp[0].TypeVal))->isFirstClassType())        GEN_ERROR("LLVM functions cannot return aggregate types!"); -    (yyval.TypeVal) = (yyvsp[(1) - (1)].TypeVal); +    (yyval.TypeVal) = (yyvsp[0].TypeVal);    ;}      break; -  case 127: -#line 1330 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 126: +#line 1330 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.TypeVal) = new PATypeHolder(Type::VoidTy);    ;}      break; -  case 128: -#line 1335 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 127: +#line 1335 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.TypeWithAttrsList) = new TypeWithAttrsList(); -    (yyval.TypeWithAttrsList)->push_back((yyvsp[(1) - (1)].TypeWithAttrs)); +    (yyval.TypeWithAttrsList)->push_back((yyvsp[0].TypeWithAttrs));      CHECK_FOR_ERROR    ;}      break; -  case 129: -#line 1340 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 128: +#line 1340 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    ((yyval.TypeWithAttrsList)=(yyvsp[(1) - (3)].TypeWithAttrsList))->push_back((yyvsp[(3) - (3)].TypeWithAttrs)); +    ((yyval.TypeWithAttrsList)=(yyvsp[-2].TypeWithAttrsList))->push_back((yyvsp[0].TypeWithAttrs));      CHECK_FOR_ERROR    ;}      break; -  case 131: -#line 1348 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 130: +#line 1348 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.TypeWithAttrsList)=(yyvsp[(1) - (3)].TypeWithAttrsList); +    (yyval.TypeWithAttrsList)=(yyvsp[-2].TypeWithAttrsList);      TypeWithAttrs TWA; TWA.Attrs = FunctionType::NoAttributeSet;      TWA.Ty = new PATypeHolder(Type::VoidTy);      (yyval.TypeWithAttrsList)->push_back(TWA); @@ -3819,8 +3591,8 @@ yyreduce:    ;}      break; -  case 132: -#line 1355 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 131: +#line 1355 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.TypeWithAttrsList) = new TypeWithAttrsList;      TypeWithAttrs TWA; TWA.Attrs = FunctionType::NoAttributeSet; @@ -3830,162 +3602,162 @@ yyreduce:    ;}      break; -  case 133: -#line 1362 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 132: +#line 1362 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.TypeWithAttrsList) = new TypeWithAttrsList();      CHECK_FOR_ERROR    ;}      break; -  case 134: -#line 1370 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 133: +#line 1370 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.TypeList) = new std::list<PATypeHolder>(); -    (yyval.TypeList)->push_back(*(yyvsp[(1) - (1)].TypeVal)); delete (yyvsp[(1) - (1)].TypeVal); +    (yyval.TypeList)->push_back(*(yyvsp[0].TypeVal)); delete (yyvsp[0].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 135: -#line 1375 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 134: +#line 1375 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    ((yyval.TypeList)=(yyvsp[(1) - (3)].TypeList))->push_back(*(yyvsp[(3) - (3)].TypeVal)); delete (yyvsp[(3) - (3)].TypeVal); +    ((yyval.TypeList)=(yyvsp[-2].TypeList))->push_back(*(yyvsp[0].TypeVal)); delete (yyvsp[0].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 136: -#line 1386 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 135: +#line 1386 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { // Nonempty unsized arr      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (4)].TypeVal))->getDescription()); -    const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[(1) - (4)].TypeVal)->get()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription()); +    const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[-3].TypeVal)->get());      if (ATy == 0)        GEN_ERROR("Cannot make array constant with type: '" +  -                     (*(yyvsp[(1) - (4)].TypeVal))->getDescription() + "'!"); +                     (*(yyvsp[-3].TypeVal))->getDescription() + "'!");      const Type *ETy = ATy->getElementType();      int NumElements = ATy->getNumElements();      // Verify that we have the correct size... -    if (NumElements != -1 && NumElements != (int)(yyvsp[(3) - (4)].ConstVector)->size()) +    if (NumElements != -1 && NumElements != (int)(yyvsp[-1].ConstVector)->size())        GEN_ERROR("Type mismatch: constant sized array initialized with " + -                     utostr((yyvsp[(3) - (4)].ConstVector)->size()) +  " arguments, but has size of " +  +                     utostr((yyvsp[-1].ConstVector)->size()) +  " arguments, but has size of " +                        itostr(NumElements) + "!");      // Verify all elements are correct type! -    for (unsigned i = 0; i < (yyvsp[(3) - (4)].ConstVector)->size(); i++) { -      if (ETy != (*(yyvsp[(3) - (4)].ConstVector))[i]->getType()) +    for (unsigned i = 0; i < (yyvsp[-1].ConstVector)->size(); i++) { +      if (ETy != (*(yyvsp[-1].ConstVector))[i]->getType())          GEN_ERROR("Element #" + utostr(i) + " is not of type '" +                          ETy->getDescription() +"' as required!\nIt is of type '"+ -                       (*(yyvsp[(3) - (4)].ConstVector))[i]->getType()->getDescription() + "'."); +                       (*(yyvsp[-1].ConstVector))[i]->getType()->getDescription() + "'.");      } -    (yyval.ConstVal) = ConstantArray::get(ATy, *(yyvsp[(3) - (4)].ConstVector)); -    delete (yyvsp[(1) - (4)].TypeVal); delete (yyvsp[(3) - (4)].ConstVector); +    (yyval.ConstVal) = ConstantArray::get(ATy, *(yyvsp[-1].ConstVector)); +    delete (yyvsp[-3].TypeVal); delete (yyvsp[-1].ConstVector);      CHECK_FOR_ERROR    ;}      break; -  case 137: -#line 1414 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 136: +#line 1414 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription()); -    const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[(1) - (3)].TypeVal)->get()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription()); +    const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[-2].TypeVal)->get());      if (ATy == 0)        GEN_ERROR("Cannot make array constant with type: '" +  -                     (*(yyvsp[(1) - (3)].TypeVal))->getDescription() + "'!"); +                     (*(yyvsp[-2].TypeVal))->getDescription() + "'!");      int NumElements = ATy->getNumElements();      if (NumElements != -1 && NumElements != 0)         GEN_ERROR("Type mismatch: constant sized array initialized with 0"                       " arguments, but has size of " + itostr(NumElements) +"!");      (yyval.ConstVal) = ConstantArray::get(ATy, std::vector<Constant*>()); -    delete (yyvsp[(1) - (3)].TypeVal); +    delete (yyvsp[-2].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 138: -#line 1430 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 137: +#line 1430 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription()); -    const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[(1) - (3)].TypeVal)->get()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription()); +    const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[-2].TypeVal)->get());      if (ATy == 0)        GEN_ERROR("Cannot make array constant with type: '" +  -                     (*(yyvsp[(1) - (3)].TypeVal))->getDescription() + "'!"); +                     (*(yyvsp[-2].TypeVal))->getDescription() + "'!");      int NumElements = ATy->getNumElements();      const Type *ETy = ATy->getElementType(); -    char *EndStr = UnEscapeLexed((yyvsp[(3) - (3)].StrVal), true); -    if (NumElements != -1 && NumElements != (EndStr-(yyvsp[(3) - (3)].StrVal))) +    char *EndStr = UnEscapeLexed((yyvsp[0].StrVal), true); +    if (NumElements != -1 && NumElements != (EndStr-(yyvsp[0].StrVal)))        GEN_ERROR("Can't build string constant of size " +  -                     itostr((int)(EndStr-(yyvsp[(3) - (3)].StrVal))) + +                     itostr((int)(EndStr-(yyvsp[0].StrVal))) +                       " when array has size " + itostr(NumElements) + "!");      std::vector<Constant*> Vals;      if (ETy == Type::Int8Ty) { -      for (unsigned char *C = (unsigned char *)(yyvsp[(3) - (3)].StrVal);  +      for (unsigned char *C = (unsigned char *)(yyvsp[0].StrVal);           C != (unsigned char*)EndStr; ++C)        Vals.push_back(ConstantInt::get(ETy, *C));      } else { -      free((yyvsp[(3) - (3)].StrVal)); +      free((yyvsp[0].StrVal));        GEN_ERROR("Cannot build string arrays of non byte sized elements!");      } -    free((yyvsp[(3) - (3)].StrVal)); +    free((yyvsp[0].StrVal));      (yyval.ConstVal) = ConstantArray::get(ATy, Vals); -    delete (yyvsp[(1) - (3)].TypeVal); +    delete (yyvsp[-2].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 139: -#line 1459 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 138: +#line 1459 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { // Nonempty unsized arr      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (4)].TypeVal))->getDescription()); -    const PackedType *PTy = dyn_cast<PackedType>((yyvsp[(1) - (4)].TypeVal)->get()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription()); +    const PackedType *PTy = dyn_cast<PackedType>((yyvsp[-3].TypeVal)->get());      if (PTy == 0)        GEN_ERROR("Cannot make packed constant with type: '" +  -                     (*(yyvsp[(1) - (4)].TypeVal))->getDescription() + "'!"); +                     (*(yyvsp[-3].TypeVal))->getDescription() + "'!");      const Type *ETy = PTy->getElementType();      int NumElements = PTy->getNumElements();      // Verify that we have the correct size... -    if (NumElements != -1 && NumElements != (int)(yyvsp[(3) - (4)].ConstVector)->size()) +    if (NumElements != -1 && NumElements != (int)(yyvsp[-1].ConstVector)->size())        GEN_ERROR("Type mismatch: constant sized packed initialized with " + -                     utostr((yyvsp[(3) - (4)].ConstVector)->size()) +  " arguments, but has size of " +  +                     utostr((yyvsp[-1].ConstVector)->size()) +  " arguments, but has size of " +                        itostr(NumElements) + "!");      // Verify all elements are correct type! -    for (unsigned i = 0; i < (yyvsp[(3) - (4)].ConstVector)->size(); i++) { -      if (ETy != (*(yyvsp[(3) - (4)].ConstVector))[i]->getType()) +    for (unsigned i = 0; i < (yyvsp[-1].ConstVector)->size(); i++) { +      if (ETy != (*(yyvsp[-1].ConstVector))[i]->getType())          GEN_ERROR("Element #" + utostr(i) + " is not of type '" +              ETy->getDescription() +"' as required!\nIt is of type '"+ -           (*(yyvsp[(3) - (4)].ConstVector))[i]->getType()->getDescription() + "'."); +           (*(yyvsp[-1].ConstVector))[i]->getType()->getDescription() + "'.");      } -    (yyval.ConstVal) = ConstantPacked::get(PTy, *(yyvsp[(3) - (4)].ConstVector)); -    delete (yyvsp[(1) - (4)].TypeVal); delete (yyvsp[(3) - (4)].ConstVector); +    (yyval.ConstVal) = ConstantPacked::get(PTy, *(yyvsp[-1].ConstVector)); +    delete (yyvsp[-3].TypeVal); delete (yyvsp[-1].ConstVector);      CHECK_FOR_ERROR    ;}      break; -  case 140: -#line 1487 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 139: +#line 1487 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    const StructType *STy = dyn_cast<StructType>((yyvsp[(1) - (4)].TypeVal)->get()); +    const StructType *STy = dyn_cast<StructType>((yyvsp[-3].TypeVal)->get());      if (STy == 0)        GEN_ERROR("Cannot make struct constant with type: '" +  -                     (*(yyvsp[(1) - (4)].TypeVal))->getDescription() + "'!"); +                     (*(yyvsp[-3].TypeVal))->getDescription() + "'!"); -    if ((yyvsp[(3) - (4)].ConstVector)->size() != STy->getNumContainedTypes()) +    if ((yyvsp[-1].ConstVector)->size() != STy->getNumContainedTypes())        GEN_ERROR("Illegal number of initializers for structure type!");      // Check to ensure that constants are compatible with the type initializer! -    for (unsigned i = 0, e = (yyvsp[(3) - (4)].ConstVector)->size(); i != e; ++i) -      if ((*(yyvsp[(3) - (4)].ConstVector))[i]->getType() != STy->getElementType(i)) +    for (unsigned i = 0, e = (yyvsp[-1].ConstVector)->size(); i != e; ++i) +      if ((*(yyvsp[-1].ConstVector))[i]->getType() != STy->getElementType(i))          GEN_ERROR("Expected type '" +                         STy->getElementType(i)->getDescription() +                         "' for element #" + utostr(i) + @@ -3995,21 +3767,21 @@ yyreduce:      if (STy->isPacked())        GEN_ERROR("Unpacked Initializer to packed type '" + STy->getDescription() + "'"); -    (yyval.ConstVal) = ConstantStruct::get(STy, *(yyvsp[(3) - (4)].ConstVector)); -    delete (yyvsp[(1) - (4)].TypeVal); delete (yyvsp[(3) - (4)].ConstVector); +    (yyval.ConstVal) = ConstantStruct::get(STy, *(yyvsp[-1].ConstVector)); +    delete (yyvsp[-3].TypeVal); delete (yyvsp[-1].ConstVector);      CHECK_FOR_ERROR    ;}      break; -  case 141: -#line 1512 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 140: +#line 1512 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription()); -    const StructType *STy = dyn_cast<StructType>((yyvsp[(1) - (3)].TypeVal)->get()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription()); +    const StructType *STy = dyn_cast<StructType>((yyvsp[-2].TypeVal)->get());      if (STy == 0)        GEN_ERROR("Cannot make struct constant with type: '" +  -                     (*(yyvsp[(1) - (3)].TypeVal))->getDescription() + "'!"); +                     (*(yyvsp[-2].TypeVal))->getDescription() + "'!");      if (STy->getNumContainedTypes() != 0)        GEN_ERROR("Illegal number of initializers for structure type!"); @@ -4019,25 +3791,25 @@ yyreduce:        GEN_ERROR("Unpacked Initializer to packed type '" + STy->getDescription() + "'");      (yyval.ConstVal) = ConstantStruct::get(STy, std::vector<Constant*>()); -    delete (yyvsp[(1) - (3)].TypeVal); +    delete (yyvsp[-2].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 142: -#line 1531 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 141: +#line 1531 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    const StructType *STy = dyn_cast<StructType>((yyvsp[(1) - (6)].TypeVal)->get()); +    const StructType *STy = dyn_cast<StructType>((yyvsp[-5].TypeVal)->get());      if (STy == 0)        GEN_ERROR("Cannot make struct constant with type: '" +  -                     (*(yyvsp[(1) - (6)].TypeVal))->getDescription() + "'!"); +                     (*(yyvsp[-5].TypeVal))->getDescription() + "'!"); -    if ((yyvsp[(4) - (6)].ConstVector)->size() != STy->getNumContainedTypes()) +    if ((yyvsp[-2].ConstVector)->size() != STy->getNumContainedTypes())        GEN_ERROR("Illegal number of initializers for structure type!");      // Check to ensure that constants are compatible with the type initializer! -    for (unsigned i = 0, e = (yyvsp[(4) - (6)].ConstVector)->size(); i != e; ++i) -      if ((*(yyvsp[(4) - (6)].ConstVector))[i]->getType() != STy->getElementType(i)) +    for (unsigned i = 0, e = (yyvsp[-2].ConstVector)->size(); i != e; ++i) +      if ((*(yyvsp[-2].ConstVector))[i]->getType() != STy->getElementType(i))          GEN_ERROR("Expected type '" +                         STy->getElementType(i)->getDescription() +                         "' for element #" + utostr(i) + @@ -4047,21 +3819,21 @@ yyreduce:      if (!STy->isPacked())        GEN_ERROR("Packed Initializer to unpacked type '" + STy->getDescription() + "'"); -    (yyval.ConstVal) = ConstantStruct::get(STy, *(yyvsp[(4) - (6)].ConstVector)); -    delete (yyvsp[(1) - (6)].TypeVal); delete (yyvsp[(4) - (6)].ConstVector); +    (yyval.ConstVal) = ConstantStruct::get(STy, *(yyvsp[-2].ConstVector)); +    delete (yyvsp[-5].TypeVal); delete (yyvsp[-2].ConstVector);      CHECK_FOR_ERROR    ;}      break; -  case 143: -#line 1556 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 142: +#line 1556 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (5)].TypeVal))->getDescription()); -    const StructType *STy = dyn_cast<StructType>((yyvsp[(1) - (5)].TypeVal)->get()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription()); +    const StructType *STy = dyn_cast<StructType>((yyvsp[-4].TypeVal)->get());      if (STy == 0)        GEN_ERROR("Cannot make struct constant with type: '" +  -                     (*(yyvsp[(1) - (5)].TypeVal))->getDescription() + "'!"); +                     (*(yyvsp[-4].TypeVal))->getDescription() + "'!");      if (STy->getNumContainedTypes() != 0)        GEN_ERROR("Illegal number of initializers for structure type!"); @@ -4071,44 +3843,44 @@ yyreduce:        GEN_ERROR("Packed Initializer to unpacked type '" + STy->getDescription() + "'");      (yyval.ConstVal) = ConstantStruct::get(STy, std::vector<Constant*>()); -    delete (yyvsp[(1) - (5)].TypeVal); +    delete (yyvsp[-4].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 144: -#line 1575 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 143: +#line 1575 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); -    const PointerType *PTy = dyn_cast<PointerType>((yyvsp[(1) - (2)].TypeVal)->get()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    const PointerType *PTy = dyn_cast<PointerType>((yyvsp[-1].TypeVal)->get());      if (PTy == 0)        GEN_ERROR("Cannot make null pointer constant with type: '" +  -                     (*(yyvsp[(1) - (2)].TypeVal))->getDescription() + "'!"); +                     (*(yyvsp[-1].TypeVal))->getDescription() + "'!");      (yyval.ConstVal) = ConstantPointerNull::get(PTy); -    delete (yyvsp[(1) - (2)].TypeVal); +    delete (yyvsp[-1].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 145: -#line 1587 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 144: +#line 1587 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); -    (yyval.ConstVal) = UndefValue::get((yyvsp[(1) - (2)].TypeVal)->get()); -    delete (yyvsp[(1) - (2)].TypeVal); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    (yyval.ConstVal) = UndefValue::get((yyvsp[-1].TypeVal)->get()); +    delete (yyvsp[-1].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 146: -#line 1594 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 145: +#line 1594 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); -    const PointerType *Ty = dyn_cast<PointerType>((yyvsp[(1) - (2)].TypeVal)->get()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    const PointerType *Ty = dyn_cast<PointerType>((yyvsp[-1].TypeVal)->get());      if (Ty == 0)        GEN_ERROR("Global const reference must be a pointer type!"); @@ -4122,7 +3894,7 @@ yyreduce:      Function *SavedCurFn = CurFun.CurrentFunction;      CurFun.CurrentFunction = 0; -    Value *V = getValNonImprovising(Ty, (yyvsp[(2) - (2)].ValIDVal)); +    Value *V = getValNonImprovising(Ty, (yyvsp[0].ValIDVal));      CHECK_FOR_ERROR      CurFun.CurrentFunction = SavedCurFn; @@ -4137,14 +3909,14 @@ yyreduce:        // First check to see if the forward references value is already created!        PerModuleInfo::GlobalRefsType::iterator I = -        CurModule.GlobalRefs.find(std::make_pair(PT, (yyvsp[(2) - (2)].ValIDVal))); +        CurModule.GlobalRefs.find(std::make_pair(PT, (yyvsp[0].ValIDVal)));        if (I != CurModule.GlobalRefs.end()) {          V = I->second;             // Placeholder already exists, use it... -        (yyvsp[(2) - (2)].ValIDVal).destroy(); +        (yyvsp[0].ValIDVal).destroy();        } else {          std::string Name; -        if ((yyvsp[(2) - (2)].ValIDVal).Type == ValID::NameVal) Name = (yyvsp[(2) - (2)].ValIDVal).Name; +        if ((yyvsp[0].ValIDVal).Type == ValID::NameVal) Name = (yyvsp[0].ValIDVal).Name;          // Create the forward referenced global.          GlobalValue *GV; @@ -4159,261 +3931,263 @@ yyreduce:          }          // Keep track of the fact that we have a forward ref to recycle it -        CurModule.GlobalRefs.insert(std::make_pair(std::make_pair(PT, (yyvsp[(2) - (2)].ValIDVal)), GV)); +        CurModule.GlobalRefs.insert(std::make_pair(std::make_pair(PT, (yyvsp[0].ValIDVal)), GV));          V = GV;        }      }      (yyval.ConstVal) = cast<GlobalValue>(V); -    delete (yyvsp[(1) - (2)].TypeVal);            // Free the type handle +    delete (yyvsp[-1].TypeVal);            // Free the type handle      CHECK_FOR_ERROR    ;}      break; -  case 147: -#line 1657 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 146: +#line 1657 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); -    if ((yyvsp[(1) - (2)].TypeVal)->get() != (yyvsp[(2) - (2)].ConstVal)->getType()) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    if ((yyvsp[-1].TypeVal)->get() != (yyvsp[0].ConstVal)->getType())        GEN_ERROR("Mismatched types for constant expression: " +  -        (*(yyvsp[(1) - (2)].TypeVal))->getDescription() + " and " + (yyvsp[(2) - (2)].ConstVal)->getType()->getDescription()); -    (yyval.ConstVal) = (yyvsp[(2) - (2)].ConstVal); -    delete (yyvsp[(1) - (2)].TypeVal); +        (*(yyvsp[-1].TypeVal))->getDescription() + " and " + (yyvsp[0].ConstVal)->getType()->getDescription()); +    (yyval.ConstVal) = (yyvsp[0].ConstVal); +    delete (yyvsp[-1].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 148: -#line 1667 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 147: +#line 1667 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); -    const Type *Ty = (yyvsp[(1) - (2)].TypeVal)->get(); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    const Type *Ty = (yyvsp[-1].TypeVal)->get();      if (isa<FunctionType>(Ty) || Ty == Type::LabelTy || isa<OpaqueType>(Ty))        GEN_ERROR("Cannot create a null initialized value of this type!");      (yyval.ConstVal) = Constant::getNullValue(Ty); -    delete (yyvsp[(1) - (2)].TypeVal); +    delete (yyvsp[-1].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 149: -#line 1677 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 148: +#line 1677 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      // integral constants -    if (!ConstantInt::isValueValidForType((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].SInt64Val))) +    if (!ConstantInt::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].SInt64Val)))        GEN_ERROR("Constant value doesn't fit in type!"); -    (yyval.ConstVal) = ConstantInt::get((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].SInt64Val)); +    (yyval.ConstVal) = ConstantInt::get((yyvsp[-1].PrimType), (yyvsp[0].SInt64Val));      CHECK_FOR_ERROR    ;}      break; -  case 150: -#line 1683 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 149: +#line 1683 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      // integral constants -    if (!ConstantInt::isValueValidForType((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].UInt64Val))) +    if (!ConstantInt::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].UInt64Val)))        GEN_ERROR("Constant value doesn't fit in type!"); -    (yyval.ConstVal) = ConstantInt::get((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].UInt64Val)); +    (yyval.ConstVal) = ConstantInt::get((yyvsp[-1].PrimType), (yyvsp[0].UInt64Val));      CHECK_FOR_ERROR    ;}      break; -  case 151: -#line 1689 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 150: +#line 1689 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                      // Boolean constants +    assert(cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth() == 1 && "Not Bool?");      (yyval.ConstVal) = ConstantInt::getTrue();      CHECK_FOR_ERROR    ;}      break; -  case 152: -#line 1693 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 151: +#line 1694 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                     // Boolean constants +    assert(cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth() == 1 && "Not Bool?");      (yyval.ConstVal) = ConstantInt::getFalse();      CHECK_FOR_ERROR    ;}      break; -  case 153: -#line 1697 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 152: +#line 1699 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                   // Float & Double constants -    if (!ConstantFP::isValueValidForType((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].FPVal))) +    if (!ConstantFP::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].FPVal)))        GEN_ERROR("Floating point constant invalid for type!!"); -    (yyval.ConstVal) = ConstantFP::get((yyvsp[(1) - (2)].PrimType), (yyvsp[(2) - (2)].FPVal)); +    (yyval.ConstVal) = ConstantFP::get((yyvsp[-1].PrimType), (yyvsp[0].FPVal));      CHECK_FOR_ERROR    ;}      break; -  case 154: -#line 1705 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 153: +#line 1707 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(5) - (6)].TypeVal))->getDescription()); -    Constant *Val = (yyvsp[(3) - (6)].ConstVal); -    const Type *Ty = (yyvsp[(5) - (6)].TypeVal)->get(); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    Constant *Val = (yyvsp[-3].ConstVal); +    const Type *Ty = (yyvsp[-1].TypeVal)->get();      if (!Val->getType()->isFirstClassType())        GEN_ERROR("cast constant expression from a non-primitive type: '" +                       Val->getType()->getDescription() + "'!");      if (!Ty->isFirstClassType())        GEN_ERROR("cast constant expression to a non-primitive type: '" +                  Ty->getDescription() + "'!"); -    (yyval.ConstVal) = ConstantExpr::getCast((yyvsp[(1) - (6)].CastOpVal), (yyvsp[(3) - (6)].ConstVal), (yyvsp[(5) - (6)].TypeVal)->get()); -    delete (yyvsp[(5) - (6)].TypeVal); +    (yyval.ConstVal) = ConstantExpr::getCast((yyvsp[-5].CastOpVal), (yyvsp[-3].ConstVal), (yyvsp[-1].TypeVal)->get()); +    delete (yyvsp[-1].TypeVal);    ;}      break; -  case 155: -#line 1719 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 154: +#line 1721 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if (!isa<PointerType>((yyvsp[(3) - (5)].ConstVal)->getType())) +    if (!isa<PointerType>((yyvsp[-2].ConstVal)->getType()))        GEN_ERROR("GetElementPtr requires a pointer operand!");      const Type *IdxTy = -      GetElementPtrInst::getIndexedType((yyvsp[(3) - (5)].ConstVal)->getType(), *(yyvsp[(4) - (5)].ValueList), true); +      GetElementPtrInst::getIndexedType((yyvsp[-2].ConstVal)->getType(), *(yyvsp[-1].ValueList), true);      if (!IdxTy)        GEN_ERROR("Index list invalid for constant getelementptr!");      std::vector<Constant*> IdxVec; -    for (unsigned i = 0, e = (yyvsp[(4) - (5)].ValueList)->size(); i != e; ++i) -      if (Constant *C = dyn_cast<Constant>((*(yyvsp[(4) - (5)].ValueList))[i])) +    for (unsigned i = 0, e = (yyvsp[-1].ValueList)->size(); i != e; ++i) +      if (Constant *C = dyn_cast<Constant>((*(yyvsp[-1].ValueList))[i]))          IdxVec.push_back(C);        else          GEN_ERROR("Indices to constant getelementptr must be constants!"); -    delete (yyvsp[(4) - (5)].ValueList); +    delete (yyvsp[-1].ValueList); -    (yyval.ConstVal) = ConstantExpr::getGetElementPtr((yyvsp[(3) - (5)].ConstVal), IdxVec); +    (yyval.ConstVal) = ConstantExpr::getGetElementPtr((yyvsp[-2].ConstVal), IdxVec);      CHECK_FOR_ERROR    ;}      break; -  case 156: -#line 1740 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 155: +#line 1742 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(3) - (8)].ConstVal)->getType() != Type::Int1Ty) +    if ((yyvsp[-5].ConstVal)->getType() != Type::Int1Ty)        GEN_ERROR("Select condition must be of boolean type!"); -    if ((yyvsp[(5) - (8)].ConstVal)->getType() != (yyvsp[(7) - (8)].ConstVal)->getType()) +    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())        GEN_ERROR("Select operand types must match!"); -    (yyval.ConstVal) = ConstantExpr::getSelect((yyvsp[(3) - (8)].ConstVal), (yyvsp[(5) - (8)].ConstVal), (yyvsp[(7) - (8)].ConstVal)); +    (yyval.ConstVal) = ConstantExpr::getSelect((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 157: -#line 1748 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 156: +#line 1750 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(3) - (6)].ConstVal)->getType() != (yyvsp[(5) - (6)].ConstVal)->getType()) +    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())        GEN_ERROR("Binary operator types must match!");      CHECK_FOR_ERROR; -    (yyval.ConstVal) = ConstantExpr::get((yyvsp[(1) - (6)].BinaryOpVal), (yyvsp[(3) - (6)].ConstVal), (yyvsp[(5) - (6)].ConstVal)); +    (yyval.ConstVal) = ConstantExpr::get((yyvsp[-5].BinaryOpVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));    ;}      break; -  case 158: -#line 1754 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 157: +#line 1756 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(3) - (6)].ConstVal)->getType() != (yyvsp[(5) - (6)].ConstVal)->getType()) +    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())        GEN_ERROR("Logical operator types must match!"); -    if (!(yyvsp[(3) - (6)].ConstVal)->getType()->isIntegral()) { -      if (!isa<PackedType>((yyvsp[(3) - (6)].ConstVal)->getType()) ||  -          !cast<PackedType>((yyvsp[(3) - (6)].ConstVal)->getType())->getElementType()->isIntegral()) +    if (!(yyvsp[-3].ConstVal)->getType()->isIntegral()) { +      if (!isa<PackedType>((yyvsp[-3].ConstVal)->getType()) ||  +          !cast<PackedType>((yyvsp[-3].ConstVal)->getType())->getElementType()->isIntegral())          GEN_ERROR("Logical operator requires integral operands!");      } -    (yyval.ConstVal) = ConstantExpr::get((yyvsp[(1) - (6)].BinaryOpVal), (yyvsp[(3) - (6)].ConstVal), (yyvsp[(5) - (6)].ConstVal)); +    (yyval.ConstVal) = ConstantExpr::get((yyvsp[-5].BinaryOpVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 159: -#line 1765 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 158: +#line 1767 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType()) +    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())        GEN_ERROR("icmp operand types must match!"); -    (yyval.ConstVal) = ConstantExpr::getICmp((yyvsp[(2) - (7)].IPredicate), (yyvsp[(4) - (7)].ConstVal), (yyvsp[(6) - (7)].ConstVal)); +    (yyval.ConstVal) = ConstantExpr::getICmp((yyvsp[-5].IPredicate), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));    ;}      break; -  case 160: -#line 1770 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 159: +#line 1772 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(4) - (7)].ConstVal)->getType() != (yyvsp[(6) - (7)].ConstVal)->getType()) +    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())        GEN_ERROR("fcmp operand types must match!"); -    (yyval.ConstVal) = ConstantExpr::getFCmp((yyvsp[(2) - (7)].FPredicate), (yyvsp[(4) - (7)].ConstVal), (yyvsp[(6) - (7)].ConstVal)); +    (yyval.ConstVal) = ConstantExpr::getFCmp((yyvsp[-5].FPredicate), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));    ;}      break; -  case 161: -#line 1775 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 160: +#line 1777 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(5) - (6)].ConstVal)->getType() != Type::Int8Ty) +    if ((yyvsp[-1].ConstVal)->getType() != Type::Int8Ty)        GEN_ERROR("Shift count for shift constant must be i8 type!"); -    if (!(yyvsp[(3) - (6)].ConstVal)->getType()->isInteger()) +    if (!(yyvsp[-3].ConstVal)->getType()->isInteger())        GEN_ERROR("Shift constant expression requires integer operand!");      CHECK_FOR_ERROR; -    (yyval.ConstVal) = ConstantExpr::get((yyvsp[(1) - (6)].OtherOpVal), (yyvsp[(3) - (6)].ConstVal), (yyvsp[(5) - (6)].ConstVal)); +    (yyval.ConstVal) = ConstantExpr::get((yyvsp[-5].OtherOpVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 162: -#line 1784 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 161: +#line 1786 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if (!ExtractElementInst::isValidOperands((yyvsp[(3) - (6)].ConstVal), (yyvsp[(5) - (6)].ConstVal))) +    if (!ExtractElementInst::isValidOperands((yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))        GEN_ERROR("Invalid extractelement operands!"); -    (yyval.ConstVal) = ConstantExpr::getExtractElement((yyvsp[(3) - (6)].ConstVal), (yyvsp[(5) - (6)].ConstVal)); +    (yyval.ConstVal) = ConstantExpr::getExtractElement((yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 163: -#line 1790 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 162: +#line 1792 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if (!InsertElementInst::isValidOperands((yyvsp[(3) - (8)].ConstVal), (yyvsp[(5) - (8)].ConstVal), (yyvsp[(7) - (8)].ConstVal))) +    if (!InsertElementInst::isValidOperands((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))        GEN_ERROR("Invalid insertelement operands!"); -    (yyval.ConstVal) = ConstantExpr::getInsertElement((yyvsp[(3) - (8)].ConstVal), (yyvsp[(5) - (8)].ConstVal), (yyvsp[(7) - (8)].ConstVal)); +    (yyval.ConstVal) = ConstantExpr::getInsertElement((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 164: -#line 1796 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 163: +#line 1798 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if (!ShuffleVectorInst::isValidOperands((yyvsp[(3) - (8)].ConstVal), (yyvsp[(5) - (8)].ConstVal), (yyvsp[(7) - (8)].ConstVal))) +    if (!ShuffleVectorInst::isValidOperands((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))        GEN_ERROR("Invalid shufflevector operands!"); -    (yyval.ConstVal) = ConstantExpr::getShuffleVector((yyvsp[(3) - (8)].ConstVal), (yyvsp[(5) - (8)].ConstVal), (yyvsp[(7) - (8)].ConstVal)); +    (yyval.ConstVal) = ConstantExpr::getShuffleVector((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 165: -#line 1805 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 164: +#line 1807 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    ((yyval.ConstVector) = (yyvsp[(1) - (3)].ConstVector))->push_back((yyvsp[(3) - (3)].ConstVal)); +    ((yyval.ConstVector) = (yyvsp[-2].ConstVector))->push_back((yyvsp[0].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 166: -#line 1809 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 165: +#line 1811 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.ConstVector) = new std::vector<Constant*>(); -    (yyval.ConstVector)->push_back((yyvsp[(1) - (1)].ConstVal)); +    (yyval.ConstVector)->push_back((yyvsp[0].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 167: -#line 1817 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 166: +#line 1819 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.BoolVal) = false; ;}      break; -  case 168: -#line 1817 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 167: +#line 1819 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.BoolVal) = true; ;}      break; -  case 169: -#line 1828 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 168: +#line 1830 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;      CurModule.ModuleDone(); @@ -4421,8 +4195,8 @@ yyreduce:    ;}      break; -  case 170: -#line 1833 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 169: +#line 1835 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;      CurModule.ModuleDone(); @@ -4430,40 +4204,40 @@ yyreduce:    ;}      break; -  case 173: -#line 1846 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 172: +#line 1848 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { CurFun.isDeclare = false ;}      break; -  case 174: -#line 1846 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 173: +#line 1848 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      CurFun.FunctionDone();      CHECK_FOR_ERROR    ;}      break; -  case 175: -#line 1850 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 174: +#line 1852 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { CurFun.isDeclare = true; ;}      break; -  case 176: -#line 1850 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 175: +#line 1852 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      CHECK_FOR_ERROR    ;}      break; -  case 177: -#line 1853 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 176: +#line 1855 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      CHECK_FOR_ERROR    ;}      break; -  case 178: -#line 1856 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 177: +#line 1858 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      // Emit an error if there are any unresolved types left.      if (!CurModule.LateResolveTypes.empty()) { @@ -4478,11 +4252,11 @@ yyreduce:    ;}      break; -  case 179: -#line 1868 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 178: +#line 1870 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (3)].TypeVal))->getDescription()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());      // Eagerly resolve types.  This is not an optimization, this is a      // requirement that is due to the fact that we could have this:      // @@ -4492,110 +4266,110 @@ yyreduce:      // If types are not resolved eagerly, then the two types will not be      // determined to be the same type!      // -    ResolveTypeTo((yyvsp[(1) - (3)].StrVal), *(yyvsp[(3) - (3)].TypeVal)); +    ResolveTypeTo((yyvsp[-2].StrVal), *(yyvsp[0].TypeVal)); -    if (!setTypeName(*(yyvsp[(3) - (3)].TypeVal), (yyvsp[(1) - (3)].StrVal)) && !(yyvsp[(1) - (3)].StrVal)) { +    if (!setTypeName(*(yyvsp[0].TypeVal), (yyvsp[-2].StrVal)) && !(yyvsp[-2].StrVal)) {        CHECK_FOR_ERROR        // If this is a named type that is not a redefinition, add it to the slot        // table. -      CurModule.Types.push_back(*(yyvsp[(3) - (3)].TypeVal)); +      CurModule.Types.push_back(*(yyvsp[0].TypeVal));      } -    delete (yyvsp[(3) - (3)].TypeVal); +    delete (yyvsp[0].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 180: -#line 1892 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 179: +#line 1894 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    ResolveTypeTo((yyvsp[(1) - (3)].StrVal), (yyvsp[(3) - (3)].PrimType)); +    ResolveTypeTo((yyvsp[-2].StrVal), (yyvsp[0].PrimType)); -    if (!setTypeName((yyvsp[(3) - (3)].PrimType), (yyvsp[(1) - (3)].StrVal)) && !(yyvsp[(1) - (3)].StrVal)) { +    if (!setTypeName((yyvsp[0].PrimType), (yyvsp[-2].StrVal)) && !(yyvsp[-2].StrVal)) {        CHECK_FOR_ERROR        // If this is a named type that is not a redefinition, add it to the slot        // table. -      CurModule.Types.push_back((yyvsp[(3) - (3)].PrimType)); +      CurModule.Types.push_back((yyvsp[0].PrimType));      }      CHECK_FOR_ERROR    ;}      break; -  case 181: -#line 1903 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 180: +#line 1905 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { /* "Externally Visible" Linkage */ -    if ((yyvsp[(4) - (4)].ConstVal) == 0)  +    if ((yyvsp[0].ConstVal) == 0)         GEN_ERROR("Global value initializer is not a constant!"); -    CurGV = ParseGlobalVariable((yyvsp[(1) - (4)].StrVal), GlobalValue::ExternalLinkage, -                                (yyvsp[(2) - (4)].Visibility), (yyvsp[(3) - (4)].BoolVal), (yyvsp[(4) - (4)].ConstVal)->getType(), (yyvsp[(4) - (4)].ConstVal)); +    CurGV = ParseGlobalVariable((yyvsp[-3].StrVal), GlobalValue::ExternalLinkage, +                                (yyvsp[-2].Visibility), (yyvsp[-1].BoolVal), (yyvsp[0].ConstVal)->getType(), (yyvsp[0].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 182: -#line 1909 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 181: +#line 1911 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      CurGV = 0;    ;}      break; -  case 183: -#line 1912 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 182: +#line 1914 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(5) - (5)].ConstVal) == 0)  +    if ((yyvsp[0].ConstVal) == 0)         GEN_ERROR("Global value initializer is not a constant!"); -    CurGV = ParseGlobalVariable((yyvsp[(1) - (5)].StrVal), (yyvsp[(2) - (5)].Linkage), (yyvsp[(3) - (5)].Visibility), (yyvsp[(4) - (5)].BoolVal), (yyvsp[(5) - (5)].ConstVal)->getType(), (yyvsp[(5) - (5)].ConstVal)); +    CurGV = ParseGlobalVariable((yyvsp[-4].StrVal), (yyvsp[-3].Linkage), (yyvsp[-2].Visibility), (yyvsp[-1].BoolVal), (yyvsp[0].ConstVal)->getType(), (yyvsp[0].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 184: -#line 1917 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 183: +#line 1919 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      CurGV = 0;    ;}      break; -  case 185: -#line 1920 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 184: +#line 1922 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(5) - (5)].TypeVal))->getDescription()); -    CurGV = ParseGlobalVariable((yyvsp[(1) - (5)].StrVal), (yyvsp[(2) - (5)].Linkage), (yyvsp[(3) - (5)].Visibility), (yyvsp[(4) - (5)].BoolVal), *(yyvsp[(5) - (5)].TypeVal), 0); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription()); +    CurGV = ParseGlobalVariable((yyvsp[-4].StrVal), (yyvsp[-3].Linkage), (yyvsp[-2].Visibility), (yyvsp[-1].BoolVal), *(yyvsp[0].TypeVal), 0);      CHECK_FOR_ERROR -    delete (yyvsp[(5) - (5)].TypeVal); +    delete (yyvsp[0].TypeVal);    ;}      break; -  case 186: -#line 1926 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 185: +#line 1928 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      CurGV = 0;      CHECK_FOR_ERROR    ;}      break; -  case 187: -#line 1930 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 186: +#line 1932 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {       CHECK_FOR_ERROR    ;}      break; -  case 188: -#line 1933 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 187: +#line 1935 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      CHECK_FOR_ERROR    ;}      break; -  case 189: -#line 1939 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 188: +#line 1941 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {    const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm(); -  char *EndStr = UnEscapeLexed((yyvsp[(1) - (1)].StrVal), true); -  std::string NewAsm((yyvsp[(1) - (1)].StrVal), EndStr); -  free((yyvsp[(1) - (1)].StrVal)); +  char *EndStr = UnEscapeLexed((yyvsp[0].StrVal), true); +  std::string NewAsm((yyvsp[0].StrVal), EndStr); +  free((yyvsp[0].StrVal));    if (AsmSoFar.empty())      CurModule.CurrentModule->setModuleInlineAsm(NewAsm); @@ -4605,123 +4379,123 @@ yyreduce:  ;}      break; -  case 190: -#line 1952 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 189: +#line 1954 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Endianness) = Module::BigEndian; ;}      break; -  case 191: -#line 1953 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 190: +#line 1955 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.Endianness) = Module::LittleEndian; ;}      break; -  case 192: -#line 1955 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 191: +#line 1957 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    CurModule.CurrentModule->setEndianness((yyvsp[(3) - (3)].Endianness)); +    CurModule.CurrentModule->setEndianness((yyvsp[0].Endianness));      CHECK_FOR_ERROR    ;}      break; -  case 193: -#line 1959 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 192: +#line 1961 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(3) - (3)].UInt64Val) == 32) +    if ((yyvsp[0].UInt64Val) == 32)        CurModule.CurrentModule->setPointerSize(Module::Pointer32); -    else if ((yyvsp[(3) - (3)].UInt64Val) == 64) +    else if ((yyvsp[0].UInt64Val) == 64)        CurModule.CurrentModule->setPointerSize(Module::Pointer64);      else -      GEN_ERROR("Invalid pointer size: '" + utostr((yyvsp[(3) - (3)].UInt64Val)) + "'!"); +      GEN_ERROR("Invalid pointer size: '" + utostr((yyvsp[0].UInt64Val)) + "'!");      CHECK_FOR_ERROR    ;}      break; -  case 194: -#line 1968 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 193: +#line 1970 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    CurModule.CurrentModule->setTargetTriple((yyvsp[(3) - (3)].StrVal)); -    free((yyvsp[(3) - (3)].StrVal)); +    CurModule.CurrentModule->setTargetTriple((yyvsp[0].StrVal)); +    free((yyvsp[0].StrVal));    ;}      break; -  case 195: -#line 1972 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 194: +#line 1974 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    CurModule.CurrentModule->setDataLayout((yyvsp[(3) - (3)].StrVal)); -    free((yyvsp[(3) - (3)].StrVal)); +    CurModule.CurrentModule->setDataLayout((yyvsp[0].StrVal)); +    free((yyvsp[0].StrVal));    ;}      break; -  case 197: -#line 1979 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 196: +#line 1981 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -          CurModule.CurrentModule->addLibrary((yyvsp[(3) - (3)].StrVal)); -          free((yyvsp[(3) - (3)].StrVal)); +          CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal)); +          free((yyvsp[0].StrVal));            CHECK_FOR_ERROR          ;}      break; -  case 198: -#line 1984 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 197: +#line 1986 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -          CurModule.CurrentModule->addLibrary((yyvsp[(1) - (1)].StrVal)); -          free((yyvsp[(1) - (1)].StrVal)); +          CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal)); +          free((yyvsp[0].StrVal));            CHECK_FOR_ERROR          ;}      break; -  case 199: -#line 1989 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 198: +#line 1991 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {            CHECK_FOR_ERROR          ;}      break; -  case 203: -#line 1999 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 202: +#line 2001 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.StrVal) = 0; ;}      break; -  case 204: -#line 2001 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 203: +#line 2003 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (5)].TypeVal))->getDescription()); -    if (*(yyvsp[(3) - (5)].TypeVal) == Type::VoidTy) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription()); +    if (*(yyvsp[-2].TypeVal) == Type::VoidTy)        GEN_ERROR("void typed arguments are invalid!"); -    ArgListEntry E; E.Attrs = (yyvsp[(4) - (5)].ParamAttrs); E.Ty = (yyvsp[(3) - (5)].TypeVal); E.Name = (yyvsp[(5) - (5)].StrVal); -    (yyval.ArgList) = (yyvsp[(1) - (5)].ArgList); -    (yyvsp[(1) - (5)].ArgList)->push_back(E); +    ArgListEntry E; E.Attrs = (yyvsp[-1].ParamAttrs); E.Ty = (yyvsp[-2].TypeVal); E.Name = (yyvsp[0].StrVal); +    (yyval.ArgList) = (yyvsp[-4].ArgList); +    (yyvsp[-4].ArgList)->push_back(E);      CHECK_FOR_ERROR    ;}      break; -  case 205: -#line 2011 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 204: +#line 2013 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription()); -    if (*(yyvsp[(1) - (3)].TypeVal) == Type::VoidTy) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription()); +    if (*(yyvsp[-2].TypeVal) == Type::VoidTy)        GEN_ERROR("void typed arguments are invalid!"); -    ArgListEntry E; E.Attrs = (yyvsp[(2) - (3)].ParamAttrs); E.Ty = (yyvsp[(1) - (3)].TypeVal); E.Name = (yyvsp[(3) - (3)].StrVal); +    ArgListEntry E; E.Attrs = (yyvsp[-1].ParamAttrs); E.Ty = (yyvsp[-2].TypeVal); E.Name = (yyvsp[0].StrVal);      (yyval.ArgList) = new ArgListType;      (yyval.ArgList)->push_back(E);      CHECK_FOR_ERROR    ;}      break; -  case 206: -#line 2022 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 205: +#line 2024 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.ArgList) = (yyvsp[(1) - (1)].ArgList); +    (yyval.ArgList) = (yyvsp[0].ArgList);      CHECK_FOR_ERROR    ;}      break; -  case 207: -#line 2026 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 206: +#line 2028 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.ArgList) = (yyvsp[(1) - (3)].ArgList); +    (yyval.ArgList) = (yyvsp[-2].ArgList);      struct ArgListEntry E;      E.Ty = new PATypeHolder(Type::VoidTy);      E.Name = 0; @@ -4731,8 +4505,8 @@ yyreduce:    ;}      break; -  case 208: -#line 2035 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 207: +#line 2037 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.ArgList) = new ArgListType;      struct ArgListEntry E; @@ -4744,31 +4518,31 @@ yyreduce:    ;}      break; -  case 209: -#line 2044 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 208: +#line 2046 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.ArgList) = 0;      CHECK_FOR_ERROR    ;}      break; -  case 210: -#line 2050 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 209: +#line 2052 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -  UnEscapeLexed((yyvsp[(3) - (9)].StrVal)); -  std::string FunctionName((yyvsp[(3) - (9)].StrVal)); -  free((yyvsp[(3) - (9)].StrVal));  // Free strdup'd memory! +  UnEscapeLexed((yyvsp[-6].StrVal)); +  std::string FunctionName((yyvsp[-6].StrVal)); +  free((yyvsp[-6].StrVal));  // Free strdup'd memory!    // Check the function result for abstractness if this is a define. We should    // have no abstract types at this point -  if (!CurFun.isDeclare && CurModule.TypeIsUnresolved((yyvsp[(2) - (9)].TypeVal))) -    GEN_ERROR("Reference to abstract result: "+ (yyvsp[(2) - (9)].TypeVal)->get()->getDescription()); +  if (!CurFun.isDeclare && CurModule.TypeIsUnresolved((yyvsp[-7].TypeVal))) +    GEN_ERROR("Reference to abstract result: "+ (yyvsp[-7].TypeVal)->get()->getDescription());    std::vector<const Type*> ParamTypeList;    std::vector<FunctionType::ParameterAttributes> ParamAttrs; -  ParamAttrs.push_back((yyvsp[(7) - (9)].ParamAttrs)); -  if ((yyvsp[(5) - (9)].ArgList)) {   // If there are arguments... -    for (ArgListType::iterator I = (yyvsp[(5) - (9)].ArgList)->begin(); I != (yyvsp[(5) - (9)].ArgList)->end(); ++I) { +  ParamAttrs.push_back((yyvsp[-2].ParamAttrs)); +  if ((yyvsp[-4].ArgList)) {   // If there are arguments... +    for (ArgListType::iterator I = (yyvsp[-4].ArgList)->begin(); I != (yyvsp[-4].ArgList)->end(); ++I) {        const Type* Ty = I->Ty->get();        if (!CurFun.isDeclare && CurModule.TypeIsUnresolved(I->Ty))          GEN_ERROR("Reference to abstract argument: " + Ty->getDescription()); @@ -4781,10 +4555,10 @@ yyreduce:    bool isVarArg = ParamTypeList.size() && ParamTypeList.back() == Type::VoidTy;    if (isVarArg) ParamTypeList.pop_back(); -  FunctionType *FT = FunctionType::get(*(yyvsp[(2) - (9)].TypeVal), ParamTypeList, isVarArg, +  FunctionType *FT = FunctionType::get(*(yyvsp[-7].TypeVal), ParamTypeList, isVarArg,                                         ParamAttrs);    const PointerType *PFT = PointerType::get(FT); -  delete (yyvsp[(2) - (9)].TypeVal); +  delete (yyvsp[-7].TypeVal);    ValID ID;    if (!FunctionName.empty()) { @@ -4829,24 +4603,24 @@ yyreduce:      Fn->setLinkage(CurFun.Linkage);      Fn->setVisibility(CurFun.Visibility);    } -  Fn->setCallingConv((yyvsp[(1) - (9)].UIntVal)); -  Fn->setAlignment((yyvsp[(9) - (9)].UIntVal)); -  if ((yyvsp[(8) - (9)].StrVal)) { -    Fn->setSection((yyvsp[(8) - (9)].StrVal)); -    free((yyvsp[(8) - (9)].StrVal)); +  Fn->setCallingConv((yyvsp[-8].UIntVal)); +  Fn->setAlignment((yyvsp[0].UIntVal)); +  if ((yyvsp[-1].StrVal)) { +    Fn->setSection((yyvsp[-1].StrVal)); +    free((yyvsp[-1].StrVal));    }    // Add all of the arguments we parsed to the function... -  if ((yyvsp[(5) - (9)].ArgList)) {                     // Is null if empty... +  if ((yyvsp[-4].ArgList)) {                     // Is null if empty...      if (isVarArg) {  // Nuke the last entry -      assert((yyvsp[(5) - (9)].ArgList)->back().Ty->get() == Type::VoidTy && (yyvsp[(5) - (9)].ArgList)->back().Name == 0&& +      assert((yyvsp[-4].ArgList)->back().Ty->get() == Type::VoidTy && (yyvsp[-4].ArgList)->back().Name == 0&&               "Not a varargs marker!"); -      delete (yyvsp[(5) - (9)].ArgList)->back().Ty; -      (yyvsp[(5) - (9)].ArgList)->pop_back();  // Delete the last entry +      delete (yyvsp[-4].ArgList)->back().Ty; +      (yyvsp[-4].ArgList)->pop_back();  // Delete the last entry      }      Function::arg_iterator ArgIt = Fn->arg_begin();      unsigned Idx = 1; -    for (ArgListType::iterator I = (yyvsp[(5) - (9)].ArgList)->begin(); I != (yyvsp[(5) - (9)].ArgList)->end(); ++I, ++ArgIt) { +    for (ArgListType::iterator I = (yyvsp[-4].ArgList)->begin(); I != (yyvsp[-4].ArgList)->end(); ++I, ++ArgIt) {        delete I->Ty;                          // Delete the typeholder...        setValueName(ArgIt, I->Name);           // Insert arg into symtab...        CHECK_FOR_ERROR @@ -4854,128 +4628,128 @@ yyreduce:        Idx++;      } -    delete (yyvsp[(5) - (9)].ArgList);                     // We're now done with the argument list +    delete (yyvsp[-4].ArgList);                     // We're now done with the argument list    }    CHECK_FOR_ERROR  ;}      break; -  case 213: -#line 2157 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 212: +#line 2159 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {    (yyval.FunctionVal) = CurFun.CurrentFunction;    // Make sure that we keep track of the linkage type even if there was a    // previous "declare". -  (yyval.FunctionVal)->setLinkage((yyvsp[(1) - (4)].Linkage)); -  (yyval.FunctionVal)->setVisibility((yyvsp[(2) - (4)].Visibility)); +  (yyval.FunctionVal)->setLinkage((yyvsp[-3].Linkage)); +  (yyval.FunctionVal)->setVisibility((yyvsp[-2].Visibility));  ;}      break; -  case 216: -#line 2168 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 215: +#line 2170 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -  (yyval.FunctionVal) = (yyvsp[(1) - (2)].FunctionVal); +  (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);    CHECK_FOR_ERROR  ;}      break; -  case 217: -#line 2173 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 216: +#line 2175 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    CurFun.CurrentFunction->setLinkage((yyvsp[(1) - (3)].Linkage)); -    CurFun.CurrentFunction->setVisibility((yyvsp[(2) - (3)].Visibility)); +    CurFun.CurrentFunction->setLinkage((yyvsp[-2].Linkage)); +    CurFun.CurrentFunction->setVisibility((yyvsp[-1].Visibility));      (yyval.FunctionVal) = CurFun.CurrentFunction;      CurFun.FunctionDone();      CHECK_FOR_ERROR    ;}      break; -  case 218: -#line 2185 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 217: +#line 2187 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.BoolVal) = false;      CHECK_FOR_ERROR    ;}      break; -  case 219: -#line 2189 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 218: +#line 2191 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.BoolVal) = true;      CHECK_FOR_ERROR    ;}      break; -  case 220: -#line 2194 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 219: +#line 2196 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {    // A reference to a direct constant -    (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].SInt64Val)); +    (yyval.ValIDVal) = ValID::create((yyvsp[0].SInt64Val));      CHECK_FOR_ERROR    ;}      break; -  case 221: -#line 2198 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 220: +#line 2200 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].UInt64Val)); +    (yyval.ValIDVal) = ValID::create((yyvsp[0].UInt64Val));      CHECK_FOR_ERROR    ;}      break; -  case 222: -#line 2202 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 221: +#line 2204 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                     // Perhaps it's an FP constant? -    (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].FPVal)); +    (yyval.ValIDVal) = ValID::create((yyvsp[0].FPVal));      CHECK_FOR_ERROR    ;}      break; -  case 223: -#line 2206 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 222: +#line 2208 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.ValIDVal) = ValID::create(ConstantInt::getTrue());      CHECK_FOR_ERROR    ;}      break; -  case 224: -#line 2210 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 223: +#line 2212 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.ValIDVal) = ValID::create(ConstantInt::getFalse());      CHECK_FOR_ERROR    ;}      break; -  case 225: -#line 2214 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 224: +#line 2216 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.ValIDVal) = ValID::createNull();      CHECK_FOR_ERROR    ;}      break; -  case 226: -#line 2218 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 225: +#line 2220 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.ValIDVal) = ValID::createUndef();      CHECK_FOR_ERROR    ;}      break; -  case 227: -#line 2222 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 226: +#line 2224 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {     // A vector zero constant.      (yyval.ValIDVal) = ValID::createZeroInit();      CHECK_FOR_ERROR    ;}      break; -  case 228: -#line 2226 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 227: +#line 2228 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { // Nonempty unsized packed vector -    const Type *ETy = (*(yyvsp[(2) - (3)].ConstVector))[0]->getType(); -    int NumElements = (yyvsp[(2) - (3)].ConstVector)->size();  +    const Type *ETy = (*(yyvsp[-1].ConstVector))[0]->getType(); +    int NumElements = (yyvsp[-1].ConstVector)->size();       PackedType* pt = PackedType::get(ETy, NumElements);      PATypeHolder* PTy = new PATypeHolder( @@ -4987,113 +4761,113 @@ yyreduce:                                           );      // Verify all elements are correct type! -    for (unsigned i = 0; i < (yyvsp[(2) - (3)].ConstVector)->size(); i++) { -      if (ETy != (*(yyvsp[(2) - (3)].ConstVector))[i]->getType()) +    for (unsigned i = 0; i < (yyvsp[-1].ConstVector)->size(); i++) { +      if (ETy != (*(yyvsp[-1].ConstVector))[i]->getType())          GEN_ERROR("Element #" + utostr(i) + " is not of type '" +                        ETy->getDescription() +"' as required!\nIt is of type '" + -                     (*(yyvsp[(2) - (3)].ConstVector))[i]->getType()->getDescription() + "'."); +                     (*(yyvsp[-1].ConstVector))[i]->getType()->getDescription() + "'.");      } -    (yyval.ValIDVal) = ValID::create(ConstantPacked::get(pt, *(yyvsp[(2) - (3)].ConstVector))); -    delete PTy; delete (yyvsp[(2) - (3)].ConstVector); +    (yyval.ValIDVal) = ValID::create(ConstantPacked::get(pt, *(yyvsp[-1].ConstVector))); +    delete PTy; delete (yyvsp[-1].ConstVector);      CHECK_FOR_ERROR    ;}      break; -  case 229: -#line 2251 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 228: +#line 2253 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].ConstVal)); +    (yyval.ValIDVal) = ValID::create((yyvsp[0].ConstVal));      CHECK_FOR_ERROR    ;}      break; -  case 230: -#line 2255 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 229: +#line 2257 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    char *End = UnEscapeLexed((yyvsp[(3) - (5)].StrVal), true); -    std::string AsmStr = std::string((yyvsp[(3) - (5)].StrVal), End); -    End = UnEscapeLexed((yyvsp[(5) - (5)].StrVal), true); -    std::string Constraints = std::string((yyvsp[(5) - (5)].StrVal), End); -    (yyval.ValIDVal) = ValID::createInlineAsm(AsmStr, Constraints, (yyvsp[(2) - (5)].BoolVal)); -    free((yyvsp[(3) - (5)].StrVal)); -    free((yyvsp[(5) - (5)].StrVal)); +    char *End = UnEscapeLexed((yyvsp[-2].StrVal), true); +    std::string AsmStr = std::string((yyvsp[-2].StrVal), End); +    End = UnEscapeLexed((yyvsp[0].StrVal), true); +    std::string Constraints = std::string((yyvsp[0].StrVal), End); +    (yyval.ValIDVal) = ValID::createInlineAsm(AsmStr, Constraints, (yyvsp[-3].BoolVal)); +    free((yyvsp[-2].StrVal)); +    free((yyvsp[0].StrVal));      CHECK_FOR_ERROR    ;}      break; -  case 231: -#line 2269 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 230: +#line 2271 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {  // Is it an integer reference...? -    (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].SIntVal)); +    (yyval.ValIDVal) = ValID::create((yyvsp[0].SIntVal));      CHECK_FOR_ERROR    ;}      break; -  case 232: -#line 2273 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 231: +#line 2275 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                   // Is it a named reference...? -    (yyval.ValIDVal) = ValID::create((yyvsp[(1) - (1)].StrVal)); +    (yyval.ValIDVal) = ValID::create((yyvsp[0].StrVal));      CHECK_FOR_ERROR    ;}      break; -  case 235: -#line 2285 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 234: +#line 2287 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (2)].TypeVal))->getDescription()); -    (yyval.ValueVal) = getVal(*(yyvsp[(1) - (2)].TypeVal), (yyvsp[(2) - (2)].ValIDVal));  -    delete (yyvsp[(1) - (2)].TypeVal); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    (yyval.ValueVal) = getVal(*(yyvsp[-1].TypeVal), (yyvsp[0].ValIDVal));  +    delete (yyvsp[-1].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 236: -#line 2294 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 235: +#line 2296 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.FunctionVal) = (yyvsp[(1) - (2)].FunctionVal); +    (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);      CHECK_FOR_ERROR    ;}      break; -  case 237: -#line 2298 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 236: +#line 2300 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { // Do not allow functions with 0 basic blocks    -    (yyval.FunctionVal) = (yyvsp[(1) - (2)].FunctionVal); +    (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);      CHECK_FOR_ERROR    ;}      break; -  case 238: -#line 2307 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 237: +#line 2309 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    setValueName((yyvsp[(3) - (3)].TermInstVal), (yyvsp[(2) - (3)].StrVal)); +    setValueName((yyvsp[0].TermInstVal), (yyvsp[-1].StrVal));      CHECK_FOR_ERROR -    InsertValue((yyvsp[(3) - (3)].TermInstVal)); +    InsertValue((yyvsp[0].TermInstVal)); -    (yyvsp[(1) - (3)].BasicBlockVal)->getInstList().push_back((yyvsp[(3) - (3)].TermInstVal)); -    InsertValue((yyvsp[(1) - (3)].BasicBlockVal)); -    (yyval.BasicBlockVal) = (yyvsp[(1) - (3)].BasicBlockVal); +    (yyvsp[-2].BasicBlockVal)->getInstList().push_back((yyvsp[0].TermInstVal)); +    InsertValue((yyvsp[-2].BasicBlockVal)); +    (yyval.BasicBlockVal) = (yyvsp[-2].BasicBlockVal);      CHECK_FOR_ERROR    ;}      break; -  case 239: -#line 2318 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 238: +#line 2320 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if (CastInst *CI1 = dyn_cast<CastInst>((yyvsp[(2) - (2)].InstVal))) +    if (CastInst *CI1 = dyn_cast<CastInst>((yyvsp[0].InstVal)))        if (CastInst *CI2 = dyn_cast<CastInst>(CI1->getOperand(0)))          if (CI2->getParent() == 0) -          (yyvsp[(1) - (2)].BasicBlockVal)->getInstList().push_back(CI2); -    (yyvsp[(1) - (2)].BasicBlockVal)->getInstList().push_back((yyvsp[(2) - (2)].InstVal)); -    (yyval.BasicBlockVal) = (yyvsp[(1) - (2)].BasicBlockVal); +          (yyvsp[-1].BasicBlockVal)->getInstList().push_back(CI2); +    (yyvsp[-1].BasicBlockVal)->getInstList().push_back((yyvsp[0].InstVal)); +    (yyval.BasicBlockVal) = (yyvsp[-1].BasicBlockVal);      CHECK_FOR_ERROR    ;}      break; -  case 240: -#line 2327 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 239: +#line 2329 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.BasicBlockVal) = getBBVal(ValID::create((int)CurFun.NextBBNum++), true);      CHECK_FOR_ERROR @@ -5108,10 +4882,10 @@ yyreduce:    ;}      break; -  case 241: -#line 2339 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 240: +#line 2341 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.BasicBlockVal) = getBBVal(ValID::create((yyvsp[(1) - (1)].StrVal)), true); +    (yyval.BasicBlockVal) = getBBVal(ValID::create((yyvsp[0].StrVal)), true);      CHECK_FOR_ERROR      // Make sure to move the basic block to the correct location in the @@ -5124,73 +4898,74 @@ yyreduce:    ;}      break; -  case 242: -#line 2352 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 241: +#line 2354 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {              // Return with a result... -    (yyval.TermInstVal) = new ReturnInst((yyvsp[(2) - (2)].ValueVal)); +    (yyval.TermInstVal) = new ReturnInst((yyvsp[0].ValueVal));      CHECK_FOR_ERROR    ;}      break; -  case 243: -#line 2356 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 242: +#line 2358 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                                       // Return with no result...      (yyval.TermInstVal) = new ReturnInst();      CHECK_FOR_ERROR    ;}      break; -  case 244: -#line 2360 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 243: +#line 2362 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {                         // Unconditional Branch... -    BasicBlock* tmpBB = getBBVal((yyvsp[(3) - (3)].ValIDVal)); +    BasicBlock* tmpBB = getBBVal((yyvsp[0].ValIDVal));      CHECK_FOR_ERROR      (yyval.TermInstVal) = new BranchInst(tmpBB);    ;}      break; -  case 245: -#line 2365 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 244: +#line 2367 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {   -    BasicBlock* tmpBBA = getBBVal((yyvsp[(6) - (9)].ValIDVal)); +    assert(cast<IntegerType>((yyvsp[-7].PrimType))->getBitWidth() == 1 && "Not Bool?"); +    BasicBlock* tmpBBA = getBBVal((yyvsp[-3].ValIDVal));      CHECK_FOR_ERROR -    BasicBlock* tmpBBB = getBBVal((yyvsp[(9) - (9)].ValIDVal)); +    BasicBlock* tmpBBB = getBBVal((yyvsp[0].ValIDVal));      CHECK_FOR_ERROR -    Value* tmpVal = getVal(Type::Int1Ty, (yyvsp[(3) - (9)].ValIDVal)); +    Value* tmpVal = getVal(Type::Int1Ty, (yyvsp[-6].ValIDVal));      CHECK_FOR_ERROR      (yyval.TermInstVal) = new BranchInst(tmpBBA, tmpBBB, tmpVal);    ;}      break; -  case 246: -#line 2374 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 245: +#line 2377 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    Value* tmpVal = getVal((yyvsp[(2) - (9)].PrimType), (yyvsp[(3) - (9)].ValIDVal)); +    Value* tmpVal = getVal((yyvsp[-7].PrimType), (yyvsp[-6].ValIDVal));      CHECK_FOR_ERROR -    BasicBlock* tmpBB = getBBVal((yyvsp[(6) - (9)].ValIDVal)); +    BasicBlock* tmpBB = getBBVal((yyvsp[-3].ValIDVal));      CHECK_FOR_ERROR -    SwitchInst *S = new SwitchInst(tmpVal, tmpBB, (yyvsp[(8) - (9)].JumpTable)->size()); +    SwitchInst *S = new SwitchInst(tmpVal, tmpBB, (yyvsp[-1].JumpTable)->size());      (yyval.TermInstVal) = S; -    std::vector<std::pair<Constant*,BasicBlock*> >::iterator I = (yyvsp[(8) - (9)].JumpTable)->begin(), -      E = (yyvsp[(8) - (9)].JumpTable)->end(); +    std::vector<std::pair<Constant*,BasicBlock*> >::iterator I = (yyvsp[-1].JumpTable)->begin(), +      E = (yyvsp[-1].JumpTable)->end();      for (; I != E; ++I) {        if (ConstantInt *CI = dyn_cast<ConstantInt>(I->first))            S->addCase(CI, I->second);        else          GEN_ERROR("Switch case is constant, but not a simple integer!");      } -    delete (yyvsp[(8) - (9)].JumpTable); +    delete (yyvsp[-1].JumpTable);      CHECK_FOR_ERROR    ;}      break; -  case 247: -#line 2393 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 246: +#line 2396 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    Value* tmpVal = getVal((yyvsp[(2) - (8)].PrimType), (yyvsp[(3) - (8)].ValIDVal)); +    Value* tmpVal = getVal((yyvsp[-6].PrimType), (yyvsp[-5].ValIDVal));      CHECK_FOR_ERROR -    BasicBlock* tmpBB = getBBVal((yyvsp[(6) - (8)].ValIDVal)); +    BasicBlock* tmpBB = getBBVal((yyvsp[-2].ValIDVal));      CHECK_FOR_ERROR      SwitchInst *S = new SwitchInst(tmpVal, tmpBB, 0);      (yyval.TermInstVal) = S; @@ -5198,20 +4973,20 @@ yyreduce:    ;}      break; -  case 248: -#line 2403 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 247: +#line 2406 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      // Handle the short syntax      const PointerType *PFTy = 0;      const FunctionType *Ty = 0; -    if (!(PFTy = dyn_cast<PointerType>((yyvsp[(3) - (14)].TypeVal)->get())) || +    if (!(PFTy = dyn_cast<PointerType>((yyvsp[-11].TypeVal)->get())) ||          !(Ty = dyn_cast<FunctionType>(PFTy->getElementType()))) {        // Pull out the types of all of the arguments...        std::vector<const Type*> ParamTypes;        FunctionType::ParamAttrsList ParamAttrs; -      ParamAttrs.push_back((yyvsp[(8) - (14)].ParamAttrs)); -      for (ValueRefList::iterator I = (yyvsp[(6) - (14)].ValueRefList)->begin(), E = (yyvsp[(6) - (14)].ValueRefList)->end(); I != E; ++I) { +      ParamAttrs.push_back((yyvsp[-6].ParamAttrs)); +      for (ValueRefList::iterator I = (yyvsp[-8].ValueRefList)->begin(), E = (yyvsp[-8].ValueRefList)->end(); I != E; ++I) {          const Type *Ty = I->Val->getType();          if (Ty == Type::VoidTy)            GEN_ERROR("Short call syntax cannot be used with varargs"); @@ -5219,20 +4994,20 @@ yyreduce:          ParamAttrs.push_back(I->Attrs);        } -      Ty = FunctionType::get((yyvsp[(3) - (14)].TypeVal)->get(), ParamTypes, false, ParamAttrs); +      Ty = FunctionType::get((yyvsp[-11].TypeVal)->get(), ParamTypes, false, ParamAttrs);        PFTy = PointerType::get(Ty);      } -    Value *V = getVal(PFTy, (yyvsp[(4) - (14)].ValIDVal));   // Get the function we're calling... +    Value *V = getVal(PFTy, (yyvsp[-10].ValIDVal));   // Get the function we're calling...      CHECK_FOR_ERROR -    BasicBlock *Normal = getBBVal((yyvsp[(11) - (14)].ValIDVal)); +    BasicBlock *Normal = getBBVal((yyvsp[-3].ValIDVal));      CHECK_FOR_ERROR -    BasicBlock *Except = getBBVal((yyvsp[(14) - (14)].ValIDVal)); +    BasicBlock *Except = getBBVal((yyvsp[0].ValIDVal));      CHECK_FOR_ERROR      // Check the arguments      ValueList Args; -    if ((yyvsp[(6) - (14)].ValueRefList)->empty()) {                                   // Has no arguments? +    if ((yyvsp[-8].ValueRefList)->empty()) {                                   // Has no arguments?        // Make sure no arguments is a good thing!        if (Ty->getNumParams() != 0)          GEN_ERROR("No arguments passed to a function that " @@ -5242,7 +5017,7 @@ yyreduce:        // correctly!        FunctionType::param_iterator I = Ty->param_begin();        FunctionType::param_iterator E = Ty->param_end(); -      ValueRefList::iterator ArgI = (yyvsp[(6) - (14)].ValueRefList)->begin(), ArgE = (yyvsp[(6) - (14)].ValueRefList)->end(); +      ValueRefList::iterator ArgI = (yyvsp[-8].ValueRefList)->begin(), ArgE = (yyvsp[-8].ValueRefList)->end();        for (; ArgI != ArgE && I != E; ++ArgI, ++I) {          if (ArgI->Val->getType() != *I) @@ -5261,354 +5036,354 @@ yyreduce:      // Create the InvokeInst      InvokeInst *II = new InvokeInst(V, Normal, Except, Args); -    II->setCallingConv((yyvsp[(2) - (14)].UIntVal)); +    II->setCallingConv((yyvsp[-12].UIntVal));      (yyval.TermInstVal) = II; -    delete (yyvsp[(6) - (14)].ValueRefList); +    delete (yyvsp[-8].ValueRefList);      CHECK_FOR_ERROR    ;}      break; -  case 249: -#line 2469 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 248: +#line 2472 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.TermInstVal) = new UnwindInst();      CHECK_FOR_ERROR    ;}      break; -  case 250: -#line 2473 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 249: +#line 2476 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.TermInstVal) = new UnreachableInst();      CHECK_FOR_ERROR    ;}      break; -  case 251: -#line 2480 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 250: +#line 2483 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.JumpTable) = (yyvsp[(1) - (6)].JumpTable); -    Constant *V = cast<Constant>(getValNonImprovising((yyvsp[(2) - (6)].PrimType), (yyvsp[(3) - (6)].ValIDVal))); +    (yyval.JumpTable) = (yyvsp[-5].JumpTable); +    Constant *V = cast<Constant>(getValNonImprovising((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));      CHECK_FOR_ERROR      if (V == 0)        GEN_ERROR("May only switch on a constant pool value!"); -    BasicBlock* tmpBB = getBBVal((yyvsp[(6) - (6)].ValIDVal)); +    BasicBlock* tmpBB = getBBVal((yyvsp[0].ValIDVal));      CHECK_FOR_ERROR      (yyval.JumpTable)->push_back(std::make_pair(V, tmpBB));    ;}      break; -  case 252: -#line 2491 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 251: +#line 2494 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.JumpTable) = new std::vector<std::pair<Constant*, BasicBlock*> >(); -    Constant *V = cast<Constant>(getValNonImprovising((yyvsp[(1) - (5)].PrimType), (yyvsp[(2) - (5)].ValIDVal))); +    Constant *V = cast<Constant>(getValNonImprovising((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));      CHECK_FOR_ERROR      if (V == 0)        GEN_ERROR("May only switch on a constant pool value!"); -    BasicBlock* tmpBB = getBBVal((yyvsp[(5) - (5)].ValIDVal)); +    BasicBlock* tmpBB = getBBVal((yyvsp[0].ValIDVal));      CHECK_FOR_ERROR      (yyval.JumpTable)->push_back(std::make_pair(V, tmpBB));     ;}      break; -  case 253: -#line 2504 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 252: +#line 2507 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {    // Is this definition named?? if so, assign the name... -  setValueName((yyvsp[(2) - (2)].InstVal), (yyvsp[(1) - (2)].StrVal)); +  setValueName((yyvsp[0].InstVal), (yyvsp[-1].StrVal));    CHECK_FOR_ERROR -  InsertValue((yyvsp[(2) - (2)].InstVal)); -  (yyval.InstVal) = (yyvsp[(2) - (2)].InstVal); +  InsertValue((yyvsp[0].InstVal)); +  (yyval.InstVal) = (yyvsp[0].InstVal);    CHECK_FOR_ERROR  ;}      break; -  case 254: -#line 2513 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 253: +#line 2516 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {    // Used for PHI nodes      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (6)].TypeVal))->getDescription()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-5].TypeVal))->getDescription());      (yyval.PHIList) = new std::list<std::pair<Value*, BasicBlock*> >(); -    Value* tmpVal = getVal(*(yyvsp[(1) - (6)].TypeVal), (yyvsp[(3) - (6)].ValIDVal)); +    Value* tmpVal = getVal(*(yyvsp[-5].TypeVal), (yyvsp[-3].ValIDVal));      CHECK_FOR_ERROR -    BasicBlock* tmpBB = getBBVal((yyvsp[(5) - (6)].ValIDVal)); +    BasicBlock* tmpBB = getBBVal((yyvsp[-1].ValIDVal));      CHECK_FOR_ERROR      (yyval.PHIList)->push_back(std::make_pair(tmpVal, tmpBB)); -    delete (yyvsp[(1) - (6)].TypeVal); +    delete (yyvsp[-5].TypeVal);    ;}      break; -  case 255: -#line 2524 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 254: +#line 2527 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.PHIList) = (yyvsp[(1) - (7)].PHIList); -    Value* tmpVal = getVal((yyvsp[(1) - (7)].PHIList)->front().first->getType(), (yyvsp[(4) - (7)].ValIDVal)); +    (yyval.PHIList) = (yyvsp[-6].PHIList); +    Value* tmpVal = getVal((yyvsp[-6].PHIList)->front().first->getType(), (yyvsp[-3].ValIDVal));      CHECK_FOR_ERROR -    BasicBlock* tmpBB = getBBVal((yyvsp[(6) - (7)].ValIDVal)); +    BasicBlock* tmpBB = getBBVal((yyvsp[-1].ValIDVal));      CHECK_FOR_ERROR -    (yyvsp[(1) - (7)].PHIList)->push_back(std::make_pair(tmpVal, tmpBB)); +    (yyvsp[-6].PHIList)->push_back(std::make_pair(tmpVal, tmpBB));    ;}      break; -  case 256: -#line 2534 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 255: +#line 2537 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {          if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(1) - (3)].TypeVal))->getDescription()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());      // Used for call and invoke instructions      (yyval.ValueRefList) = new ValueRefList(); -    ValueRefListEntry E; E.Attrs = (yyvsp[(3) - (3)].ParamAttrs); E.Val = getVal((yyvsp[(1) - (3)].TypeVal)->get(), (yyvsp[(2) - (3)].ValIDVal)); +    ValueRefListEntry E; E.Attrs = (yyvsp[0].ParamAttrs); E.Val = getVal((yyvsp[-2].TypeVal)->get(), (yyvsp[-1].ValIDVal));      (yyval.ValueRefList)->push_back(E);    ;}      break; -  case 257: -#line 2542 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 256: +#line 2545 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (5)].TypeVal))->getDescription()); -    (yyval.ValueRefList) = (yyvsp[(1) - (5)].ValueRefList); -    ValueRefListEntry E; E.Attrs = (yyvsp[(5) - (5)].ParamAttrs); E.Val = getVal((yyvsp[(3) - (5)].TypeVal)->get(), (yyvsp[(4) - (5)].ValIDVal)); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription()); +    (yyval.ValueRefList) = (yyvsp[-4].ValueRefList); +    ValueRefListEntry E; E.Attrs = (yyvsp[0].ParamAttrs); E.Val = getVal((yyvsp[-2].TypeVal)->get(), (yyvsp[-1].ValIDVal));      (yyval.ValueRefList)->push_back(E);      CHECK_FOR_ERROR    ;}      break; -  case 258: -#line 2550 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 257: +#line 2553 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.ValueRefList) = new ValueRefList(); ;}      break; -  case 259: -#line 2553 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 258: +#line 2556 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { (yyval.ValueList) = new std::vector<Value*>(); ;}      break; -  case 260: -#line 2554 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 259: +#line 2557 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.ValueList) = (yyvsp[(1) - (3)].ValueList); -    (yyval.ValueList)->push_back((yyvsp[(3) - (3)].ValueVal)); +    (yyval.ValueList) = (yyvsp[-2].ValueList); +    (yyval.ValueList)->push_back((yyvsp[0].ValueVal));      CHECK_FOR_ERROR    ;}      break; -  case 261: -#line 2561 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 260: +#line 2564 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.BoolVal) = true;      CHECK_FOR_ERROR    ;}      break; -  case 262: -#line 2565 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 261: +#line 2568 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.BoolVal) = false;      CHECK_FOR_ERROR    ;}      break; -  case 263: -#line 2570 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 262: +#line 2573 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (5)].TypeVal))->getDescription()); -    if (!(*(yyvsp[(2) - (5)].TypeVal))->isInteger() && !(*(yyvsp[(2) - (5)].TypeVal))->isFloatingPoint() &&  -        !isa<PackedType>((*(yyvsp[(2) - (5)].TypeVal)).get())) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription()); +    if (!(*(yyvsp[-3].TypeVal))->isInteger() && !(*(yyvsp[-3].TypeVal))->isFloatingPoint() &&  +        !isa<PackedType>((*(yyvsp[-3].TypeVal)).get()))        GEN_ERROR(          "Arithmetic operator requires integer, FP, or packed operands!"); -    if (isa<PackedType>((*(yyvsp[(2) - (5)].TypeVal)).get()) &&  -        ((yyvsp[(1) - (5)].BinaryOpVal) == Instruction::URem ||  -         (yyvsp[(1) - (5)].BinaryOpVal) == Instruction::SRem || -         (yyvsp[(1) - (5)].BinaryOpVal) == Instruction::FRem)) +    if (isa<PackedType>((*(yyvsp[-3].TypeVal)).get()) &&  +        ((yyvsp[-4].BinaryOpVal) == Instruction::URem ||  +         (yyvsp[-4].BinaryOpVal) == Instruction::SRem || +         (yyvsp[-4].BinaryOpVal) == Instruction::FRem))        GEN_ERROR("U/S/FRem not supported on packed types!"); -    Value* val1 = getVal(*(yyvsp[(2) - (5)].TypeVal), (yyvsp[(3) - (5)].ValIDVal));  +    Value* val1 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[-2].ValIDVal));       CHECK_FOR_ERROR -    Value* val2 = getVal(*(yyvsp[(2) - (5)].TypeVal), (yyvsp[(5) - (5)].ValIDVal)); +    Value* val2 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[0].ValIDVal));      CHECK_FOR_ERROR -    (yyval.InstVal) = BinaryOperator::create((yyvsp[(1) - (5)].BinaryOpVal), val1, val2); +    (yyval.InstVal) = BinaryOperator::create((yyvsp[-4].BinaryOpVal), val1, val2);      if ((yyval.InstVal) == 0)        GEN_ERROR("binary operator returned null!"); -    delete (yyvsp[(2) - (5)].TypeVal); +    delete (yyvsp[-3].TypeVal);    ;}      break; -  case 264: -#line 2591 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 263: +#line 2594 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (5)].TypeVal))->getDescription()); -    if (!(*(yyvsp[(2) - (5)].TypeVal))->isIntegral()) { -      if (!isa<PackedType>((yyvsp[(2) - (5)].TypeVal)->get()) || -          !cast<PackedType>((yyvsp[(2) - (5)].TypeVal)->get())->getElementType()->isIntegral()) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription()); +    if (!(*(yyvsp[-3].TypeVal))->isIntegral()) { +      if (!isa<PackedType>((yyvsp[-3].TypeVal)->get()) || +          !cast<PackedType>((yyvsp[-3].TypeVal)->get())->getElementType()->isIntegral())          GEN_ERROR("Logical operator requires integral operands!");      } -    Value* tmpVal1 = getVal(*(yyvsp[(2) - (5)].TypeVal), (yyvsp[(3) - (5)].ValIDVal)); +    Value* tmpVal1 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[-2].ValIDVal));      CHECK_FOR_ERROR -    Value* tmpVal2 = getVal(*(yyvsp[(2) - (5)].TypeVal), (yyvsp[(5) - (5)].ValIDVal)); +    Value* tmpVal2 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[0].ValIDVal));      CHECK_FOR_ERROR -    (yyval.InstVal) = BinaryOperator::create((yyvsp[(1) - (5)].BinaryOpVal), tmpVal1, tmpVal2); +    (yyval.InstVal) = BinaryOperator::create((yyvsp[-4].BinaryOpVal), tmpVal1, tmpVal2);      if ((yyval.InstVal) == 0)        GEN_ERROR("binary operator returned null!"); -    delete (yyvsp[(2) - (5)].TypeVal); +    delete (yyvsp[-3].TypeVal);    ;}      break; -  case 265: -#line 2608 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 264: +#line 2611 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription()); -    if (isa<PackedType>((*(yyvsp[(3) - (6)].TypeVal)).get())) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription()); +    if (isa<PackedType>((*(yyvsp[-3].TypeVal)).get()))        GEN_ERROR("Packed types not supported by icmp instruction"); -    Value* tmpVal1 = getVal(*(yyvsp[(3) - (6)].TypeVal), (yyvsp[(4) - (6)].ValIDVal)); +    Value* tmpVal1 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[-2].ValIDVal));      CHECK_FOR_ERROR -    Value* tmpVal2 = getVal(*(yyvsp[(3) - (6)].TypeVal), (yyvsp[(6) - (6)].ValIDVal)); +    Value* tmpVal2 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[0].ValIDVal));      CHECK_FOR_ERROR -    (yyval.InstVal) = CmpInst::create((yyvsp[(1) - (6)].OtherOpVal), (yyvsp[(2) - (6)].IPredicate), tmpVal1, tmpVal2); +    (yyval.InstVal) = CmpInst::create((yyvsp[-5].OtherOpVal), (yyvsp[-4].IPredicate), tmpVal1, tmpVal2);      if ((yyval.InstVal) == 0)        GEN_ERROR("icmp operator returned null!");    ;}      break; -  case 266: -#line 2621 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 265: +#line 2624 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (6)].TypeVal))->getDescription()); -    if (isa<PackedType>((*(yyvsp[(3) - (6)].TypeVal)).get())) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription()); +    if (isa<PackedType>((*(yyvsp[-3].TypeVal)).get()))        GEN_ERROR("Packed types not supported by fcmp instruction"); -    Value* tmpVal1 = getVal(*(yyvsp[(3) - (6)].TypeVal), (yyvsp[(4) - (6)].ValIDVal)); +    Value* tmpVal1 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[-2].ValIDVal));      CHECK_FOR_ERROR -    Value* tmpVal2 = getVal(*(yyvsp[(3) - (6)].TypeVal), (yyvsp[(6) - (6)].ValIDVal)); +    Value* tmpVal2 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[0].ValIDVal));      CHECK_FOR_ERROR -    (yyval.InstVal) = CmpInst::create((yyvsp[(1) - (6)].OtherOpVal), (yyvsp[(2) - (6)].FPredicate), tmpVal1, tmpVal2); +    (yyval.InstVal) = CmpInst::create((yyvsp[-5].OtherOpVal), (yyvsp[-4].FPredicate), tmpVal1, tmpVal2);      if ((yyval.InstVal) == 0)        GEN_ERROR("fcmp operator returned null!");    ;}      break; -  case 267: -#line 2634 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 266: +#line 2637 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(4) - (4)].ValueVal)->getType() != Type::Int8Ty) +    if ((yyvsp[0].ValueVal)->getType() != Type::Int8Ty)        GEN_ERROR("Shift amount must be i8 type!"); -    if (!(yyvsp[(2) - (4)].ValueVal)->getType()->isInteger()) +    if (!(yyvsp[-2].ValueVal)->getType()->isInteger())        GEN_ERROR("Shift constant expression requires integer operand!");      CHECK_FOR_ERROR; -    (yyval.InstVal) = new ShiftInst((yyvsp[(1) - (4)].OtherOpVal), (yyvsp[(2) - (4)].ValueVal), (yyvsp[(4) - (4)].ValueVal)); +    (yyval.InstVal) = new ShiftInst((yyvsp[-3].OtherOpVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal));      CHECK_FOR_ERROR    ;}      break; -  case 268: -#line 2643 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 267: +#line 2646 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(4) - (4)].TypeVal))->getDescription()); -    Value* Val = (yyvsp[(2) - (4)].ValueVal); -    const Type* Ty = (yyvsp[(4) - (4)].TypeVal)->get(); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription()); +    Value* Val = (yyvsp[-2].ValueVal); +    const Type* Ty = (yyvsp[0].TypeVal)->get();      if (!Val->getType()->isFirstClassType())        GEN_ERROR("cast from a non-primitive type: '" +                  Val->getType()->getDescription() + "'!");      if (!Ty->isFirstClassType())        GEN_ERROR("cast to a non-primitive type: '" + Ty->getDescription() +"'!"); -    (yyval.InstVal) = CastInst::create((yyvsp[(1) - (4)].CastOpVal), Val, (yyvsp[(4) - (4)].TypeVal)->get()); -    delete (yyvsp[(4) - (4)].TypeVal); +    (yyval.InstVal) = CastInst::create((yyvsp[-3].CastOpVal), Val, (yyvsp[0].TypeVal)->get()); +    delete (yyvsp[0].TypeVal);    ;}      break; -  case 269: -#line 2656 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 268: +#line 2659 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if ((yyvsp[(2) - (6)].ValueVal)->getType() != Type::Int1Ty) +    if ((yyvsp[-4].ValueVal)->getType() != Type::Int1Ty)        GEN_ERROR("select condition must be boolean!"); -    if ((yyvsp[(4) - (6)].ValueVal)->getType() != (yyvsp[(6) - (6)].ValueVal)->getType()) +    if ((yyvsp[-2].ValueVal)->getType() != (yyvsp[0].ValueVal)->getType())        GEN_ERROR("select value types should match!"); -    (yyval.InstVal) = new SelectInst((yyvsp[(2) - (6)].ValueVal), (yyvsp[(4) - (6)].ValueVal), (yyvsp[(6) - (6)].ValueVal)); +    (yyval.InstVal) = new SelectInst((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal));      CHECK_FOR_ERROR    ;}      break; -  case 270: -#line 2664 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 269: +#line 2667 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(4) - (4)].TypeVal))->getDescription()); -    (yyval.InstVal) = new VAArgInst((yyvsp[(2) - (4)].ValueVal), *(yyvsp[(4) - (4)].TypeVal)); -    delete (yyvsp[(4) - (4)].TypeVal); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription()); +    (yyval.InstVal) = new VAArgInst((yyvsp[-2].ValueVal), *(yyvsp[0].TypeVal)); +    delete (yyvsp[0].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 271: -#line 2671 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 270: +#line 2674 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if (!ExtractElementInst::isValidOperands((yyvsp[(2) - (4)].ValueVal), (yyvsp[(4) - (4)].ValueVal))) +    if (!ExtractElementInst::isValidOperands((yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))        GEN_ERROR("Invalid extractelement operands!"); -    (yyval.InstVal) = new ExtractElementInst((yyvsp[(2) - (4)].ValueVal), (yyvsp[(4) - (4)].ValueVal)); +    (yyval.InstVal) = new ExtractElementInst((yyvsp[-2].ValueVal), (yyvsp[0].ValueVal));      CHECK_FOR_ERROR    ;}      break; -  case 272: -#line 2677 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 271: +#line 2680 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if (!InsertElementInst::isValidOperands((yyvsp[(2) - (6)].ValueVal), (yyvsp[(4) - (6)].ValueVal), (yyvsp[(6) - (6)].ValueVal))) +    if (!InsertElementInst::isValidOperands((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))        GEN_ERROR("Invalid insertelement operands!"); -    (yyval.InstVal) = new InsertElementInst((yyvsp[(2) - (6)].ValueVal), (yyvsp[(4) - (6)].ValueVal), (yyvsp[(6) - (6)].ValueVal)); +    (yyval.InstVal) = new InsertElementInst((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal));      CHECK_FOR_ERROR    ;}      break; -  case 273: -#line 2683 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 272: +#line 2686 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if (!ShuffleVectorInst::isValidOperands((yyvsp[(2) - (6)].ValueVal), (yyvsp[(4) - (6)].ValueVal), (yyvsp[(6) - (6)].ValueVal))) +    if (!ShuffleVectorInst::isValidOperands((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))        GEN_ERROR("Invalid shufflevector operands!"); -    (yyval.InstVal) = new ShuffleVectorInst((yyvsp[(2) - (6)].ValueVal), (yyvsp[(4) - (6)].ValueVal), (yyvsp[(6) - (6)].ValueVal)); +    (yyval.InstVal) = new ShuffleVectorInst((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal));      CHECK_FOR_ERROR    ;}      break; -  case 274: -#line 2689 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 273: +#line 2692 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    const Type *Ty = (yyvsp[(2) - (2)].PHIList)->front().first->getType(); +    const Type *Ty = (yyvsp[0].PHIList)->front().first->getType();      if (!Ty->isFirstClassType())        GEN_ERROR("PHI node operands must be of first class type!");      (yyval.InstVal) = new PHINode(Ty); -    ((PHINode*)(yyval.InstVal))->reserveOperandSpace((yyvsp[(2) - (2)].PHIList)->size()); -    while ((yyvsp[(2) - (2)].PHIList)->begin() != (yyvsp[(2) - (2)].PHIList)->end()) { -      if ((yyvsp[(2) - (2)].PHIList)->front().first->getType() != Ty)  +    ((PHINode*)(yyval.InstVal))->reserveOperandSpace((yyvsp[0].PHIList)->size()); +    while ((yyvsp[0].PHIList)->begin() != (yyvsp[0].PHIList)->end()) { +      if ((yyvsp[0].PHIList)->front().first->getType() != Ty)           GEN_ERROR("All elements of a PHI node must be of the same type!"); -      cast<PHINode>((yyval.InstVal))->addIncoming((yyvsp[(2) - (2)].PHIList)->front().first, (yyvsp[(2) - (2)].PHIList)->front().second); -      (yyvsp[(2) - (2)].PHIList)->pop_front(); +      cast<PHINode>((yyval.InstVal))->addIncoming((yyvsp[0].PHIList)->front().first, (yyvsp[0].PHIList)->front().second); +      (yyvsp[0].PHIList)->pop_front();      } -    delete (yyvsp[(2) - (2)].PHIList);  // Free the list... +    delete (yyvsp[0].PHIList);  // Free the list...      CHECK_FOR_ERROR    ;}      break; -  case 275: -#line 2705 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 274: +#line 2708 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      // Handle the short syntax      const PointerType *PFTy = 0;      const FunctionType *Ty = 0; -    if (!(PFTy = dyn_cast<PointerType>((yyvsp[(3) - (8)].TypeVal)->get())) || +    if (!(PFTy = dyn_cast<PointerType>((yyvsp[-5].TypeVal)->get())) ||          !(Ty = dyn_cast<FunctionType>(PFTy->getElementType()))) {        // Pull out the types of all of the arguments...        std::vector<const Type*> ParamTypes;        FunctionType::ParamAttrsList ParamAttrs; -      ParamAttrs.push_back((yyvsp[(8) - (8)].ParamAttrs)); -      for (ValueRefList::iterator I = (yyvsp[(6) - (8)].ValueRefList)->begin(), E = (yyvsp[(6) - (8)].ValueRefList)->end(); I != E; ++I) { +      ParamAttrs.push_back((yyvsp[0].ParamAttrs)); +      for (ValueRefList::iterator I = (yyvsp[-2].ValueRefList)->begin(), E = (yyvsp[-2].ValueRefList)->end(); I != E; ++I) {          const Type *Ty = I->Val->getType();          if (Ty == Type::VoidTy)            GEN_ERROR("Short call syntax cannot be used with varargs"); @@ -5616,16 +5391,16 @@ yyreduce:          ParamAttrs.push_back(I->Attrs);        } -      Ty = FunctionType::get((yyvsp[(3) - (8)].TypeVal)->get(), ParamTypes, false, ParamAttrs); +      Ty = FunctionType::get((yyvsp[-5].TypeVal)->get(), ParamTypes, false, ParamAttrs);        PFTy = PointerType::get(Ty);      } -    Value *V = getVal(PFTy, (yyvsp[(4) - (8)].ValIDVal));   // Get the function we're calling... +    Value *V = getVal(PFTy, (yyvsp[-4].ValIDVal));   // Get the function we're calling...      CHECK_FOR_ERROR      // Check the arguments       ValueList Args; -    if ((yyvsp[(6) - (8)].ValueRefList)->empty()) {                                   // Has no arguments? +    if ((yyvsp[-2].ValueRefList)->empty()) {                                   // Has no arguments?        // Make sure no arguments is a good thing!        if (Ty->getNumParams() != 0)          GEN_ERROR("No arguments passed to a function that " @@ -5636,7 +5411,7 @@ yyreduce:        //        FunctionType::param_iterator I = Ty->param_begin();        FunctionType::param_iterator E = Ty->param_end(); -      ValueRefList::iterator ArgI = (yyvsp[(6) - (8)].ValueRefList)->begin(), ArgE = (yyvsp[(6) - (8)].ValueRefList)->end(); +      ValueRefList::iterator ArgI = (yyvsp[-2].ValueRefList)->begin(), ArgE = (yyvsp[-2].ValueRefList)->end();        for (; ArgI != ArgE && I != E; ++ArgI, ++I) {          if (ArgI->Val->getType() != *I) @@ -5653,162 +5428,164 @@ yyreduce:      }      // Create the call node      CallInst *CI = new CallInst(V, Args); -    CI->setTailCall((yyvsp[(1) - (8)].BoolVal)); -    CI->setCallingConv((yyvsp[(2) - (8)].UIntVal)); +    CI->setTailCall((yyvsp[-7].BoolVal)); +    CI->setCallingConv((yyvsp[-6].UIntVal));      (yyval.InstVal) = CI; -    delete (yyvsp[(6) - (8)].ValueRefList); +    delete (yyvsp[-2].ValueRefList);      CHECK_FOR_ERROR    ;}      break; -  case 276: -#line 2767 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 275: +#line 2770 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    (yyval.InstVal) = (yyvsp[(1) - (1)].InstVal); +    (yyval.InstVal) = (yyvsp[0].InstVal);      CHECK_FOR_ERROR    ;}      break; -  case 277: -#line 2772 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 276: +#line 2775 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.BoolVal) = true;      CHECK_FOR_ERROR    ;}      break; -  case 278: -#line 2776 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 277: +#line 2779 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      (yyval.BoolVal) = false;      CHECK_FOR_ERROR    ;}      break; -  case 279: -#line 2783 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 278: +#line 2786 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (3)].TypeVal))->getDescription()); -    (yyval.InstVal) = new MallocInst(*(yyvsp[(2) - (3)].TypeVal), 0, (yyvsp[(3) - (3)].UIntVal)); -    delete (yyvsp[(2) - (3)].TypeVal); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    (yyval.InstVal) = new MallocInst(*(yyvsp[-1].TypeVal), 0, (yyvsp[0].UIntVal)); +    delete (yyvsp[-1].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 280: -#line 2790 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 279: +#line 2793 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (6)].TypeVal))->getDescription()); -    Value* tmpVal = getVal((yyvsp[(4) - (6)].PrimType), (yyvsp[(5) - (6)].ValIDVal)); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription()); +    Value* tmpVal = getVal((yyvsp[-2].PrimType), (yyvsp[-1].ValIDVal));      CHECK_FOR_ERROR -    (yyval.InstVal) = new MallocInst(*(yyvsp[(2) - (6)].TypeVal), tmpVal, (yyvsp[(6) - (6)].UIntVal)); -    delete (yyvsp[(2) - (6)].TypeVal); +    (yyval.InstVal) = new MallocInst(*(yyvsp[-4].TypeVal), tmpVal, (yyvsp[0].UIntVal)); +    delete (yyvsp[-4].TypeVal);    ;}      break; -  case 281: -#line 2798 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 280: +#line 2801 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (3)].TypeVal))->getDescription()); -    (yyval.InstVal) = new AllocaInst(*(yyvsp[(2) - (3)].TypeVal), 0, (yyvsp[(3) - (3)].UIntVal)); -    delete (yyvsp[(2) - (3)].TypeVal); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    (yyval.InstVal) = new AllocaInst(*(yyvsp[-1].TypeVal), 0, (yyvsp[0].UIntVal)); +    delete (yyvsp[-1].TypeVal);      CHECK_FOR_ERROR    ;}      break; -  case 282: -#line 2805 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 281: +#line 2808 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (6)].TypeVal))->getDescription()); -    Value* tmpVal = getVal((yyvsp[(4) - (6)].PrimType), (yyvsp[(5) - (6)].ValIDVal)); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription()); +    Value* tmpVal = getVal((yyvsp[-2].PrimType), (yyvsp[-1].ValIDVal));      CHECK_FOR_ERROR -    (yyval.InstVal) = new AllocaInst(*(yyvsp[(2) - (6)].TypeVal), tmpVal, (yyvsp[(6) - (6)].UIntVal)); -    delete (yyvsp[(2) - (6)].TypeVal); +    (yyval.InstVal) = new AllocaInst(*(yyvsp[-4].TypeVal), tmpVal, (yyvsp[0].UIntVal)); +    delete (yyvsp[-4].TypeVal);    ;}      break; -  case 283: -#line 2813 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 282: +#line 2816 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      { -    if (!isa<PointerType>((yyvsp[(2) - (2)].ValueVal)->getType())) +    if (!isa<PointerType>((yyvsp[0].ValueVal)->getType()))        GEN_ERROR("Trying to free nonpointer type " +  -                     (yyvsp[(2) - (2)].ValueVal)->getType()->getDescription() + "!"); -    (yyval.InstVal) = new FreeInst((yyvsp[(2) - (2)].ValueVal)); +                     (yyvsp[0].ValueVal)->getType()->getDescription() + "!"); +    (yyval.InstVal) = new FreeInst((yyvsp[0].ValueVal));      CHECK_FOR_ERROR    ;}      break; -  case 284: -#line 2821 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 283: +#line 2824 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(3) - (4)].TypeVal))->getDescription()); -    if (!isa<PointerType>((yyvsp[(3) - (4)].TypeVal)->get())) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    if (!isa<PointerType>((yyvsp[-1].TypeVal)->get()))        GEN_ERROR("Can't load from nonpointer type: " + -                     (*(yyvsp[(3) - (4)].TypeVal))->getDescription()); -    if (!cast<PointerType>((yyvsp[(3) - (4)].TypeVal)->get())->getElementType()->isFirstClassType()) +                     (*(yyvsp[-1].TypeVal))->getDescription()); +    if (!cast<PointerType>((yyvsp[-1].TypeVal)->get())->getElementType()->isFirstClassType())        GEN_ERROR("Can't load from pointer of non-first-class type: " + -                     (*(yyvsp[(3) - (4)].TypeVal))->getDescription()); -    Value* tmpVal = getVal(*(yyvsp[(3) - (4)].TypeVal), (yyvsp[(4) - (4)].ValIDVal)); +                     (*(yyvsp[-1].TypeVal))->getDescription()); +    Value* tmpVal = getVal(*(yyvsp[-1].TypeVal), (yyvsp[0].ValIDVal));      CHECK_FOR_ERROR -    (yyval.InstVal) = new LoadInst(tmpVal, "", (yyvsp[(1) - (4)].BoolVal)); -    delete (yyvsp[(3) - (4)].TypeVal); +    (yyval.InstVal) = new LoadInst(tmpVal, "", (yyvsp[-3].BoolVal)); +    delete (yyvsp[-1].TypeVal);    ;}      break; -  case 285: -#line 2835 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 284: +#line 2838 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(5) - (6)].TypeVal))->getDescription()); -    const PointerType *PT = dyn_cast<PointerType>((yyvsp[(5) - (6)].TypeVal)->get()); +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription()); +    const PointerType *PT = dyn_cast<PointerType>((yyvsp[-1].TypeVal)->get());      if (!PT)        GEN_ERROR("Can't store to a nonpointer type: " + -                     (*(yyvsp[(5) - (6)].TypeVal))->getDescription()); +                     (*(yyvsp[-1].TypeVal))->getDescription());      const Type *ElTy = PT->getElementType(); -    if (ElTy != (yyvsp[(3) - (6)].ValueVal)->getType()) -      GEN_ERROR("Can't store '" + (yyvsp[(3) - (6)].ValueVal)->getType()->getDescription() + +    if (ElTy != (yyvsp[-3].ValueVal)->getType()) +      GEN_ERROR("Can't store '" + (yyvsp[-3].ValueVal)->getType()->getDescription() +                       "' into space of type '" + ElTy->getDescription() + "'!"); -    Value* tmpVal = getVal(*(yyvsp[(5) - (6)].TypeVal), (yyvsp[(6) - (6)].ValIDVal)); +    Value* tmpVal = getVal(*(yyvsp[-1].TypeVal), (yyvsp[0].ValIDVal));      CHECK_FOR_ERROR -    (yyval.InstVal) = new StoreInst((yyvsp[(3) - (6)].ValueVal), tmpVal, (yyvsp[(1) - (6)].BoolVal)); -    delete (yyvsp[(5) - (6)].TypeVal); +    (yyval.InstVal) = new StoreInst((yyvsp[-3].ValueVal), tmpVal, (yyvsp[-5].BoolVal)); +    delete (yyvsp[-1].TypeVal);    ;}      break; -  case 286: -#line 2852 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +  case 285: +#line 2855 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"      {      if (!UpRefs.empty()) -      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[(2) - (4)].TypeVal))->getDescription()); -    if (!isa<PointerType>((yyvsp[(2) - (4)].TypeVal)->get())) +      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription()); +    if (!isa<PointerType>((yyvsp[-2].TypeVal)->get()))        GEN_ERROR("getelementptr insn requires pointer operand!"); -    if (!GetElementPtrInst::getIndexedType(*(yyvsp[(2) - (4)].TypeVal), *(yyvsp[(4) - (4)].ValueList), true)) +    if (!GetElementPtrInst::getIndexedType(*(yyvsp[-2].TypeVal), *(yyvsp[0].ValueList), true))        GEN_ERROR("Invalid getelementptr indices for type '" + -                     (*(yyvsp[(2) - (4)].TypeVal))->getDescription()+ "'!"); -    Value* tmpVal = getVal(*(yyvsp[(2) - (4)].TypeVal), (yyvsp[(3) - (4)].ValIDVal)); +                     (*(yyvsp[-2].TypeVal))->getDescription()+ "'!"); +    Value* tmpVal = getVal(*(yyvsp[-2].TypeVal), (yyvsp[-1].ValIDVal));      CHECK_FOR_ERROR -    (yyval.InstVal) = new GetElementPtrInst(tmpVal, *(yyvsp[(4) - (4)].ValueList)); -    delete (yyvsp[(2) - (4)].TypeVal);  -    delete (yyvsp[(4) - (4)].ValueList); +    (yyval.InstVal) = new GetElementPtrInst(tmpVal, *(yyvsp[0].ValueList)); +    delete (yyvsp[-2].TypeVal);  +    delete (yyvsp[0].ValueList);    ;}      break; -/* Line 1267 of yacc.c.  */ -#line 5806 "llvmAsmParser.tab.c"        default: break;      } -  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); -  YYPOPSTACK (yylen); -  yylen = 0; +/* Line 1126 of yacc.c.  */ +#line 5584 "llvmAsmParser.tab.c" + +  yyvsp -= yylen; +  yyssp -= yylen; + +    YY_STACK_PRINT (yyss, yyssp);    *++yyvsp = yyval; @@ -5837,41 +5614,110 @@ yyerrlab:    if (!yyerrstatus)      {        ++yynerrs; -#if ! YYERROR_VERBOSE -      yyerror (YY_("syntax error")); -#else -      { -	YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); -	if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) -	  { -	    YYSIZE_T yyalloc = 2 * yysize; -	    if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) -	      yyalloc = YYSTACK_ALLOC_MAXIMUM; -	    if (yymsg != yymsgbuf) -	      YYSTACK_FREE (yymsg); -	    yymsg = (char *) YYSTACK_ALLOC (yyalloc); -	    if (yymsg) -	      yymsg_alloc = yyalloc; -	    else +#if YYERROR_VERBOSE +      yyn = yypact[yystate]; + +      if (YYPACT_NINF < yyn && yyn < YYLAST) +	{ +	  int yytype = YYTRANSLATE (yychar); +	  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); +	  YYSIZE_T yysize = yysize0; +	  YYSIZE_T yysize1; +	  int yysize_overflow = 0; +	  char *yymsg = 0; +#	  define YYERROR_VERBOSE_ARGS_MAXIMUM 5 +	  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; +	  int yyx; + +#if 0 +	  /* This is so xgettext sees the translatable formats that are +	     constructed on the fly.  */ +	  YY_("syntax error, unexpected %s"); +	  YY_("syntax error, unexpected %s, expecting %s"); +	  YY_("syntax error, unexpected %s, expecting %s or %s"); +	  YY_("syntax error, unexpected %s, expecting %s or %s or %s"); +	  YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); +#endif +	  char *yyfmt; +	  char const *yyf; +	  static char const yyunexpected[] = "syntax error, unexpected %s"; +	  static char const yyexpecting[] = ", expecting %s"; +	  static char const yyor[] = " or %s"; +	  char yyformat[sizeof yyunexpected +			+ sizeof yyexpecting - 1 +			+ ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) +			   * (sizeof yyor - 1))]; +	  char const *yyprefix = yyexpecting; + +	  /* Start YYX at -YYN if negative to avoid negative indexes in +	     YYCHECK.  */ +	  int yyxbegin = yyn < 0 ? -yyn : 0; + +	  /* Stay within bounds of both yycheck and yytname.  */ +	  int yychecklim = YYLAST - yyn; +	  int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; +	  int yycount = 1; + +	  yyarg[0] = yytname[yytype]; +	  yyfmt = yystpcpy (yyformat, yyunexpected); + +	  for (yyx = yyxbegin; yyx < yyxend; ++yyx) +	    if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)  	      { -		yymsg = yymsgbuf; -		yymsg_alloc = sizeof yymsgbuf; +		if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) +		  { +		    yycount = 1; +		    yysize = yysize0; +		    yyformat[sizeof yyunexpected - 1] = '\0'; +		    break; +		  } +		yyarg[yycount++] = yytname[yyx]; +		yysize1 = yysize + yytnamerr (0, yytname[yyx]); +		yysize_overflow |= yysize1 < yysize; +		yysize = yysize1; +		yyfmt = yystpcpy (yyfmt, yyprefix); +		yyprefix = yyor;  	      } -	  } -	if (0 < yysize && yysize <= yymsg_alloc) -	  { -	    (void) yysyntax_error (yymsg, yystate, yychar); -	    yyerror (yymsg); -	  } -	else -	  { -	    yyerror (YY_("syntax error")); -	    if (yysize != 0) +	  yyf = YY_(yyformat); +	  yysize1 = yysize + yystrlen (yyf); +	  yysize_overflow |= yysize1 < yysize; +	  yysize = yysize1; + +	  if (!yysize_overflow && yysize <= YYSTACK_ALLOC_MAXIMUM) +	    yymsg = (char *) YYSTACK_ALLOC (yysize); +	  if (yymsg) +	    { +	      /* Avoid sprintf, as that infringes on the user's name space. +		 Don't have undefined behavior even if the translation +		 produced a string with the wrong number of "%s"s.  */ +	      char *yyp = yymsg; +	      int yyi = 0; +	      while ((*yyp = *yyf)) +		{ +		  if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) +		    { +		      yyp += yytnamerr (yyp, yyarg[yyi++]); +		      yyf += 2; +		    } +		  else +		    { +		      yyp++; +		      yyf++; +		    } +		} +	      yyerror (yymsg); +	      YYSTACK_FREE (yymsg); +	    } +	  else +	    { +	      yyerror (YY_("syntax error"));  	      goto yyexhaustedlab; -	  } -      } -#endif +	    } +	} +      else +#endif /* YYERROR_VERBOSE */ +	yyerror (YY_("syntax error"));      } @@ -5882,15 +5728,14 @@ yyerrlab:  	 error, discard it.  */        if (yychar <= YYEOF) -	{ +        {  	  /* Return failure if at end of input.  */  	  if (yychar == YYEOF)  	    YYABORT; -	} +        }        else  	{ -	  yydestruct ("Error: discarding", -		      yytoken, &yylval); +	  yydestruct ("Error: discarding", yytoken, &yylval);  	  yychar = YYEMPTY;  	}      } @@ -5908,14 +5753,11 @@ yyerrorlab:    /* Pacify compilers like GCC when the user code never invokes       YYERROR and the label yyerrorlab therefore never appears in user       code.  */ -  if (/*CONSTCOND*/ 0) +  if (0)       goto yyerrorlab; -  /* Do not reclaim the symbols of the rule which action triggered -     this YYERROR.  */ -  YYPOPSTACK (yylen); -  yylen = 0; -  YY_STACK_PRINT (yyss, yyssp); +yyvsp -= yylen; +  yyssp -= yylen;    yystate = *yyssp;    goto yyerrlab1; @@ -5945,9 +5787,8 @@ yyerrlab1:  	YYABORT; -      yydestruct ("Error: popping", -		  yystos[yystate], yyvsp); -      YYPOPSTACK (1); +      yydestruct ("Error: popping", yystos[yystate], yyvsp); +      YYPOPSTACK;        yystate = *yyssp;        YY_STACK_PRINT (yyss, yyssp);      } @@ -5958,7 +5799,7 @@ yyerrlab1:    *++yyvsp = yylval; -  /* Shift the error token.  */ +  /* Shift the error token. */    YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);    yystate = yyn; @@ -5993,30 +5834,21 @@ yyreturn:    if (yychar != YYEOF && yychar != YYEMPTY)       yydestruct ("Cleanup: discarding lookahead",  		 yytoken, &yylval); -  /* Do not reclaim the symbols of the rule which action triggered -     this YYABORT or YYACCEPT.  */ -  YYPOPSTACK (yylen); -  YY_STACK_PRINT (yyss, yyssp);    while (yyssp != yyss)      {        yydestruct ("Cleanup: popping",  		  yystos[*yyssp], yyvsp); -      YYPOPSTACK (1); +      YYPOPSTACK;      }  #ifndef yyoverflow    if (yyss != yyssa)      YYSTACK_FREE (yyss);  #endif -#if YYERROR_VERBOSE -  if (yymsg != yymsgbuf) -    YYSTACK_FREE (yymsg); -#endif -  /* Make sure YYID is used.  */ -  return YYID (yyresult); +  return yyresult;  } -#line 2869 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" +#line 2872 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"  // common code from the two 'RunVMAsmParser' functions diff --git a/llvm/lib/AsmParser/llvmAsmParser.h.cvs b/llvm/lib/AsmParser/llvmAsmParser.h.cvs index d460fef033b..e2aee7ed6bc 100644 --- a/llvm/lib/AsmParser/llvmAsmParser.h.cvs +++ b/llvm/lib/AsmParser/llvmAsmParser.h.cvs @@ -1,9 +1,7 @@ -/* A Bison parser, made by GNU Bison 2.3.  */ +/* A Bison parser, made by GNU Bison 2.1.  */ -/* Skeleton interface for Bison's Yacc-like parsers in C - -   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 -   Free Software Foundation, Inc. +/* Skeleton parser for Yacc-like parsing with Bison, +   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.     This program is free software; you can redistribute it and/or modify     it under the terms of the GNU General Public License as published by @@ -20,18 +18,10 @@     Foundation, Inc., 51 Franklin Street, Fifth Floor,     Boston, MA 02110-1301, USA.  */ -/* As a special exception, you may create a larger work that contains -   part or all of the Bison parser skeleton and distribute that work -   under terms of your choice, so long as that work isn't itself a -   parser generator using the skeleton or a modified version thereof -   as a parser skeleton.  Alternatively, if you modify or redistribute -   the parser skeleton itself, you may (at your option) remove this -   special exception, which will cause the skeleton and the resulting -   Bison output files to be licensed under the GNU General Public -   License without this special exception. - -   This special exception was added by the Free Software Foundation in -   version 2.2 of Bison.  */ +/* As a special exception, when this file is copied by Bison into a +   Bison output file, you may use that output file without restriction. +   This special exception was added by the Free Software Foundation +   in version 1.24 of Bison.  */  /* Tokens.  */  #ifndef YYTOKENTYPE @@ -45,131 +35,130 @@       UINTVAL = 261,       FPVAL = 262,       VOID = 263, -     BOOL = 264, -     INTTYPE = 265, -     FLOAT = 266, -     DOUBLE = 267, -     LABEL = 268, -     TYPE = 269, -     VAR_ID = 270, -     LABELSTR = 271, -     STRINGCONSTANT = 272, -     IMPLEMENTATION = 273, -     ZEROINITIALIZER = 274, -     TRUETOK = 275, -     FALSETOK = 276, -     BEGINTOK = 277, -     ENDTOK = 278, -     DECLARE = 279, -     DEFINE = 280, -     GLOBAL = 281, -     CONSTANT = 282, -     SECTION = 283, -     VOLATILE = 284, -     TO = 285, -     DOTDOTDOT = 286, -     NULL_TOK = 287, -     UNDEF = 288, -     INTERNAL = 289, -     LINKONCE = 290, -     WEAK = 291, -     APPENDING = 292, -     DLLIMPORT = 293, -     DLLEXPORT = 294, -     EXTERN_WEAK = 295, -     OPAQUE = 296, -     EXTERNAL = 297, -     TARGET = 298, -     TRIPLE = 299, -     ENDIAN = 300, -     POINTERSIZE = 301, -     LITTLE = 302, -     BIG = 303, -     ALIGN = 304, -     DEPLIBS = 305, -     CALL = 306, -     TAIL = 307, -     ASM_TOK = 308, -     MODULE = 309, -     SIDEEFFECT = 310, -     CC_TOK = 311, -     CCC_TOK = 312, -     CSRETCC_TOK = 313, -     FASTCC_TOK = 314, -     COLDCC_TOK = 315, -     X86_STDCALLCC_TOK = 316, -     X86_FASTCALLCC_TOK = 317, -     DATALAYOUT = 318, -     RET = 319, -     BR = 320, -     SWITCH = 321, -     INVOKE = 322, -     UNWIND = 323, -     UNREACHABLE = 324, -     ADD = 325, -     SUB = 326, -     MUL = 327, -     UDIV = 328, -     SDIV = 329, -     FDIV = 330, -     UREM = 331, -     SREM = 332, -     FREM = 333, -     AND = 334, -     OR = 335, -     XOR = 336, -     ICMP = 337, -     FCMP = 338, -     EQ = 339, -     NE = 340, -     SLT = 341, -     SGT = 342, -     SLE = 343, -     SGE = 344, -     ULT = 345, -     UGT = 346, -     ULE = 347, -     UGE = 348, -     OEQ = 349, -     ONE = 350, -     OLT = 351, -     OGT = 352, -     OLE = 353, -     OGE = 354, -     ORD = 355, -     UNO = 356, -     UEQ = 357, -     UNE = 358, -     MALLOC = 359, -     ALLOCA = 360, -     FREE = 361, -     LOAD = 362, -     STORE = 363, -     GETELEMENTPTR = 364, -     TRUNC = 365, -     ZEXT = 366, -     SEXT = 367, -     FPTRUNC = 368, -     FPEXT = 369, -     BITCAST = 370, -     UITOFP = 371, -     SITOFP = 372, -     FPTOUI = 373, -     FPTOSI = 374, -     INTTOPTR = 375, -     PTRTOINT = 376, -     PHI_TOK = 377, -     SELECT = 378, -     SHL = 379, -     LSHR = 380, -     ASHR = 381, -     VAARG = 382, -     EXTRACTELEMENT = 383, -     INSERTELEMENT = 384, -     SHUFFLEVECTOR = 385, -     NORETURN = 386, -     DEFAULT = 387, -     HIDDEN = 388 +     INTTYPE = 264, +     FLOAT = 265, +     DOUBLE = 266, +     LABEL = 267, +     TYPE = 268, +     VAR_ID = 269, +     LABELSTR = 270, +     STRINGCONSTANT = 271, +     IMPLEMENTATION = 272, +     ZEROINITIALIZER = 273, +     TRUETOK = 274, +     FALSETOK = 275, +     BEGINTOK = 276, +     ENDTOK = 277, +     DECLARE = 278, +     DEFINE = 279, +     GLOBAL = 280, +     CONSTANT = 281, +     SECTION = 282, +     VOLATILE = 283, +     TO = 284, +     DOTDOTDOT = 285, +     NULL_TOK = 286, +     UNDEF = 287, +     INTERNAL = 288, +     LINKONCE = 289, +     WEAK = 290, +     APPENDING = 291, +     DLLIMPORT = 292, +     DLLEXPORT = 293, +     EXTERN_WEAK = 294, +     OPAQUE = 295, +     EXTERNAL = 296, +     TARGET = 297, +     TRIPLE = 298, +     ENDIAN = 299, +     POINTERSIZE = 300, +     LITTLE = 301, +     BIG = 302, +     ALIGN = 303, +     DEPLIBS = 304, +     CALL = 305, +     TAIL = 306, +     ASM_TOK = 307, +     MODULE = 308, +     SIDEEFFECT = 309, +     CC_TOK = 310, +     CCC_TOK = 311, +     CSRETCC_TOK = 312, +     FASTCC_TOK = 313, +     COLDCC_TOK = 314, +     X86_STDCALLCC_TOK = 315, +     X86_FASTCALLCC_TOK = 316, +     DATALAYOUT = 317, +     RET = 318, +     BR = 319, +     SWITCH = 320, +     INVOKE = 321, +     UNWIND = 322, +     UNREACHABLE = 323, +     ADD = 324, +     SUB = 325, +     MUL = 326, +     UDIV = 327, +     SDIV = 328, +     FDIV = 329, +     UREM = 330, +     SREM = 331, +     FREM = 332, +     AND = 333, +     OR = 334, +     XOR = 335, +     ICMP = 336, +     FCMP = 337, +     EQ = 338, +     NE = 339, +     SLT = 340, +     SGT = 341, +     SLE = 342, +     SGE = 343, +     ULT = 344, +     UGT = 345, +     ULE = 346, +     UGE = 347, +     OEQ = 348, +     ONE = 349, +     OLT = 350, +     OGT = 351, +     OLE = 352, +     OGE = 353, +     ORD = 354, +     UNO = 355, +     UEQ = 356, +     UNE = 357, +     MALLOC = 358, +     ALLOCA = 359, +     FREE = 360, +     LOAD = 361, +     STORE = 362, +     GETELEMENTPTR = 363, +     TRUNC = 364, +     ZEXT = 365, +     SEXT = 366, +     FPTRUNC = 367, +     FPEXT = 368, +     BITCAST = 369, +     UITOFP = 370, +     SITOFP = 371, +     FPTOUI = 372, +     FPTOSI = 373, +     INTTOPTR = 374, +     PTRTOINT = 375, +     PHI_TOK = 376, +     SELECT = 377, +     SHL = 378, +     LSHR = 379, +     ASHR = 380, +     VAARG = 381, +     EXTRACTELEMENT = 382, +     INSERTELEMENT = 383, +     SHUFFLEVECTOR = 384, +     NORETURN = 385, +     DEFAULT = 386, +     HIDDEN = 387     };  #endif  /* Tokens.  */ @@ -179,139 +168,137 @@  #define UINTVAL 261  #define FPVAL 262  #define VOID 263 -#define BOOL 264 -#define INTTYPE 265 -#define FLOAT 266 -#define DOUBLE 267 -#define LABEL 268 -#define TYPE 269 -#define VAR_ID 270 -#define LABELSTR 271 -#define STRINGCONSTANT 272 -#define IMPLEMENTATION 273 -#define ZEROINITIALIZER 274 -#define TRUETOK 275 -#define FALSETOK 276 -#define BEGINTOK 277 -#define ENDTOK 278 -#define DECLARE 279 -#define DEFINE 280 -#define GLOBAL 281 -#define CONSTANT 282 -#define SECTION 283 -#define VOLATILE 284 -#define TO 285 -#define DOTDOTDOT 286 -#define NULL_TOK 287 -#define UNDEF 288 -#define INTERNAL 289 -#define LINKONCE 290 -#define WEAK 291 -#define APPENDING 292 -#define DLLIMPORT 293 -#define DLLEXPORT 294 -#define EXTERN_WEAK 295 -#define OPAQUE 296 -#define EXTERNAL 297 -#define TARGET 298 -#define TRIPLE 299 -#define ENDIAN 300 -#define POINTERSIZE 301 -#define LITTLE 302 -#define BIG 303 -#define ALIGN 304 -#define DEPLIBS 305 -#define CALL 306 -#define TAIL 307 -#define ASM_TOK 308 -#define MODULE 309 -#define SIDEEFFECT 310 -#define CC_TOK 311 -#define CCC_TOK 312 -#define CSRETCC_TOK 313 -#define FASTCC_TOK 314 -#define COLDCC_TOK 315 -#define X86_STDCALLCC_TOK 316 -#define X86_FASTCALLCC_TOK 317 -#define DATALAYOUT 318 -#define RET 319 -#define BR 320 -#define SWITCH 321 -#define INVOKE 322 -#define UNWIND 323 -#define UNREACHABLE 324 -#define ADD 325 -#define SUB 326 -#define MUL 327 -#define UDIV 328 -#define SDIV 329 -#define FDIV 330 -#define UREM 331 -#define SREM 332 -#define FREM 333 -#define AND 334 -#define OR 335 -#define XOR 336 -#define ICMP 337 -#define FCMP 338 -#define EQ 339 -#define NE 340 -#define SLT 341 -#define SGT 342 -#define SLE 343 -#define SGE 344 -#define ULT 345 -#define UGT 346 -#define ULE 347 -#define UGE 348 -#define OEQ 349 -#define ONE 350 -#define OLT 351 -#define OGT 352 -#define OLE 353 -#define OGE 354 -#define ORD 355 -#define UNO 356 -#define UEQ 357 -#define UNE 358 -#define MALLOC 359 -#define ALLOCA 360 -#define FREE 361 -#define LOAD 362 -#define STORE 363 -#define GETELEMENTPTR 364 -#define TRUNC 365 -#define ZEXT 366 -#define SEXT 367 -#define FPTRUNC 368 -#define FPEXT 369 -#define BITCAST 370 -#define UITOFP 371 -#define SITOFP 372 -#define FPTOUI 373 -#define FPTOSI 374 -#define INTTOPTR 375 -#define PTRTOINT 376 -#define PHI_TOK 377 -#define SELECT 378 -#define SHL 379 -#define LSHR 380 -#define ASHR 381 -#define VAARG 382 -#define EXTRACTELEMENT 383 -#define INSERTELEMENT 384 -#define SHUFFLEVECTOR 385 -#define NORETURN 386 -#define DEFAULT 387 -#define HIDDEN 388 +#define INTTYPE 264 +#define FLOAT 265 +#define DOUBLE 266 +#define LABEL 267 +#define TYPE 268 +#define VAR_ID 269 +#define LABELSTR 270 +#define STRINGCONSTANT 271 +#define IMPLEMENTATION 272 +#define ZEROINITIALIZER 273 +#define TRUETOK 274 +#define FALSETOK 275 +#define BEGINTOK 276 +#define ENDTOK 277 +#define DECLARE 278 +#define DEFINE 279 +#define GLOBAL 280 +#define CONSTANT 281 +#define SECTION 282 +#define VOLATILE 283 +#define TO 284 +#define DOTDOTDOT 285 +#define NULL_TOK 286 +#define UNDEF 287 +#define INTERNAL 288 +#define LINKONCE 289 +#define WEAK 290 +#define APPENDING 291 +#define DLLIMPORT 292 +#define DLLEXPORT 293 +#define EXTERN_WEAK 294 +#define OPAQUE 295 +#define EXTERNAL 296 +#define TARGET 297 +#define TRIPLE 298 +#define ENDIAN 299 +#define POINTERSIZE 300 +#define LITTLE 301 +#define BIG 302 +#define ALIGN 303 +#define DEPLIBS 304 +#define CALL 305 +#define TAIL 306 +#define ASM_TOK 307 +#define MODULE 308 +#define SIDEEFFECT 309 +#define CC_TOK 310 +#define CCC_TOK 311 +#define CSRETCC_TOK 312 +#define FASTCC_TOK 313 +#define COLDCC_TOK 314 +#define X86_STDCALLCC_TOK 315 +#define X86_FASTCALLCC_TOK 316 +#define DATALAYOUT 317 +#define RET 318 +#define BR 319 +#define SWITCH 320 +#define INVOKE 321 +#define UNWIND 322 +#define UNREACHABLE 323 +#define ADD 324 +#define SUB 325 +#define MUL 326 +#define UDIV 327 +#define SDIV 328 +#define FDIV 329 +#define UREM 330 +#define SREM 331 +#define FREM 332 +#define AND 333 +#define OR 334 +#define XOR 335 +#define ICMP 336 +#define FCMP 337 +#define EQ 338 +#define NE 339 +#define SLT 340 +#define SGT 341 +#define SLE 342 +#define SGE 343 +#define ULT 344 +#define UGT 345 +#define ULE 346 +#define UGE 347 +#define OEQ 348 +#define ONE 349 +#define OLT 350 +#define OGT 351 +#define OLE 352 +#define OGE 353 +#define ORD 354 +#define UNO 355 +#define UEQ 356 +#define UNE 357 +#define MALLOC 358 +#define ALLOCA 359 +#define FREE 360 +#define LOAD 361 +#define STORE 362 +#define GETELEMENTPTR 363 +#define TRUNC 364 +#define ZEXT 365 +#define SEXT 366 +#define FPTRUNC 367 +#define FPEXT 368 +#define BITCAST 369 +#define UITOFP 370 +#define SITOFP 371 +#define FPTOUI 372 +#define FPTOSI 373 +#define INTTOPTR 374 +#define PTRTOINT 375 +#define PHI_TOK 376 +#define SELECT 377 +#define SHL 378 +#define LSHR 379 +#define ASHR 380 +#define VAARG 381 +#define EXTRACTELEMENT 382 +#define INSERTELEMENT 383 +#define SHUFFLEVECTOR 384 +#define NORETURN 385 +#define DEFAULT 386 +#define HIDDEN 387 -#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED -typedef union YYSTYPE -#line 883 "/home/asl/proj/llvm/src/lib/AsmParser/llvmAsmParser.y" -{ +#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) +#line 883 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y" +typedef union YYSTYPE {    llvm::Module                           *ModuleVal;    llvm::Function                         *FunctionVal;    llvm::BasicBlock                       *BasicBlockVal; @@ -356,10 +343,9 @@ typedef union YYSTYPE    llvm::Module::Endianness          Endianness;    llvm::ICmpInst::Predicate         IPredicate;    llvm::FCmpInst::Predicate         FPredicate; -} -/* Line 1489 of yacc.c.  */ -#line 362 "llvmAsmParser.tab.h" -	YYSTYPE; +} YYSTYPE; +/* Line 1447 of yacc.c.  */ +#line 349 "llvmAsmParser.tab.h"  # define yystype YYSTYPE /* obsolescent; will be withdrawn */  # define YYSTYPE_IS_DECLARED 1  # define YYSTYPE_IS_TRIVIAL 1 @@ -367,3 +353,5 @@ typedef union YYSTYPE  extern YYSTYPE llvmAsmlval; + + diff --git a/llvm/lib/AsmParser/llvmAsmParser.y.cvs b/llvm/lib/AsmParser/llvmAsmParser.y.cvs index 52d8847d329..06d4666bb94 100644 --- a/llvm/lib/AsmParser/llvmAsmParser.y.cvs +++ b/llvm/lib/AsmParser/llvmAsmParser.y.cvs @@ -970,7 +970,7 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) {  // Built in types...  %type  <TypeVal> Types ResultTypes  %type  <PrimType> IntType FPType PrimType           // Classifications -%token <PrimType> VOID BOOL INTTYPE  +%token <PrimType> VOID INTTYPE   %token <PrimType> FLOAT DOUBLE LABEL  %token TYPE @@ -1198,7 +1198,7 @@ GlobalVarAttribute : SectionString {  // Derived types are added later...  // -PrimType : BOOL | INTTYPE | FLOAT | DOUBLE | LABEL ; +PrimType : INTTYPE | FLOAT | DOUBLE | LABEL ;  Types     : OPAQUE { @@ -1686,11 +1686,13 @@ ConstVal: Types '[' ConstVector ']' { // Nonempty unsized arr      $$ = ConstantInt::get($1, $2);      CHECK_FOR_ERROR    } -  | BOOL TRUETOK {                      // Boolean constants +  | INTTYPE TRUETOK {                      // Boolean constants +    assert(cast<IntegerType>($1)->getBitWidth() == 1 && "Not Bool?");      $$ = ConstantInt::getTrue();      CHECK_FOR_ERROR    } -  | BOOL FALSETOK {                     // Boolean constants +  | INTTYPE FALSETOK {                     // Boolean constants +    assert(cast<IntegerType>($1)->getBitWidth() == 1 && "Not Bool?");      $$ = ConstantInt::getFalse();      CHECK_FOR_ERROR    } @@ -2362,7 +2364,8 @@ BBTerminatorInst : RET ResolvedVal {              // Return with a result...      CHECK_FOR_ERROR      $$ = new BranchInst(tmpBB);    }                                                  // Conditional Branch... -  | BR BOOL ValueRef ',' LABEL ValueRef ',' LABEL ValueRef {   +  | BR INTTYPE ValueRef ',' LABEL ValueRef ',' LABEL ValueRef {   +    assert(cast<IntegerType>($2)->getBitWidth() == 1 && "Not Bool?");      BasicBlock* tmpBBA = getBBVal($6);      CHECK_FOR_ERROR      BasicBlock* tmpBBB = getBBVal($9); | 

