Fix persistent conflict madness by removing these from cvs.
authorChris Lattner <sabre@nondot.org>
Fri, 12 Jan 2007 05:35:13 +0000 (05:35 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 12 Jan 2007 05:35:13 +0000 (05:35 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33111 91177308-0d34-0410-b5e6-96231b3b80d8

tools/llvm-upgrade/UpgradeLexer.cpp [deleted file]
tools/llvm-upgrade/UpgradeParser.cpp [deleted file]
tools/llvm-upgrade/UpgradeParser.h [deleted file]

diff --git a/tools/llvm-upgrade/UpgradeLexer.cpp b/tools/llvm-upgrade/UpgradeLexer.cpp
deleted file mode 100644 (file)
index 96d1b8b..0000000
+++ /dev/null
@@ -1,2904 +0,0 @@
-#define yy_create_buffer Upgrade_create_buffer
-#define yy_delete_buffer Upgrade_delete_buffer
-#define yy_scan_buffer Upgrade_scan_buffer
-#define yy_scan_string Upgrade_scan_string
-#define yy_scan_bytes Upgrade_scan_bytes
-#define yy_flex_debug Upgrade_flex_debug
-#define yy_init_buffer Upgrade_init_buffer
-#define yy_flush_buffer Upgrade_flush_buffer
-#define yy_load_buffer_state Upgrade_load_buffer_state
-#define yy_switch_to_buffer Upgrade_switch_to_buffer
-#define yyin Upgradein
-#define yyleng Upgradeleng
-#define yylex Upgradelex
-#define yyout Upgradeout
-#define yyrestart Upgraderestart
-#define yytext Upgradetext
-#define yylineno Upgradelineno
-
-#line 20 "UpgradeLexer.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
-
-#include <stdio.h>
-#include <unistd.h>
-
-
-/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
-#ifdef c_plusplus
-#ifndef __cplusplus
-#define __cplusplus
-#endif
-#endif
-
-
-#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
-
-#else  /* ! __cplusplus */
-
-#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
-
-/* Promotes a possibly negative, possibly signed char to an unsigned
- * integer for use as an array index.  If the signed char is negative,
- * we want to instead treat it as an 8-bit unsigned char, hence the
- * double cast.
- */
-#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
-
-/* Enter a start condition.  This macro really ought to take a parameter,
- * but we do it the disgusting crufty way forced on us by the ()-less
- * definition of BEGIN.
- */
-#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 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 yyrestart( yyin )
-
-#define YY_END_OF_BUFFER_CHAR 0
-
-/* Size of default input buffer. */
-#define YY_BUF_SIZE (16384*64)
-
-typedef struct yy_buffer_state *YY_BUFFER_STATE;
-
-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
-
-/* 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 yytext. */ \
-               *yy_cp = yy_hold_char; \
-               YY_RESTORE_YY_MORE_OFFSET \
-               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 )
-
-/* 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).
- */
-typedef unsigned int yy_size_t;
-
-
-struct yy_buffer_state
-       {
-       FILE *yy_input_file;
-
-       char *yy_ch_buf;                /* input buffer */
-       char *yy_buf_pos;               /* current position in input buffer */
-
-       /* Size of input buffer in bytes, not including room for EOB
-        * characters.
-        */
-       yy_size_t yy_buf_size;
-
-       /* Number of characters read into yy_ch_buf, not including EOB
-        * characters.
-        */
-       int yy_n_chars;
-
-       /* Whether we "own" the buffer - i.e., we know we created it,
-        * and can realloc() it to grow it, and should free() it to
-        * delete it.
-        */
-       int yy_is_our_buffer;
-
-       /* Whether this is an "interactive" input source; if so, and
-        * if we're using stdio for input, then we want to use getc()
-        * instead of fread(), to make sure we stop fetching input after
-        * each newline.
-        */
-       int yy_is_interactive;
-
-       /* Whether we're considered to be at the beginning of a line.
-        * If so, '^' rules will be active on the next match, otherwise
-        * not.
-        */
-       int yy_at_bol;
-
-       /* 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
-        * then we mark the buffer as YY_EOF_PENDING, to indicate that we
-        * shouldn't try reading from the input source any more.  We might
-        * still have a bunch of tokens to match, though, because of
-        * possible backing-up.
-        *
-        * When we actually see the EOF, we change the status to "new"
-        * (via yyrestart()), so that the user can continue scanning by
-        * just pointing yyin at a new input file.
-        */
-#define YY_BUFFER_EOF_PENDING 2
-       };
-
-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".
- */
-#define YY_CURRENT_BUFFER yy_current_buffer
-
-
-/* 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 yyleng;
-
-/* Points to current character in buffer. */
-static char *yy_c_buf_p = (char *) 0;
-static int yy_init = 1;                /* whether we need to initialize */
-static int yy_start = 0;       /* start state number */
-
-/* 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 yyrestart YY_PROTO(( FILE *input_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 )
-
-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 ));
-
-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 * ));
-
-#define yy_new_buffer yy_create_buffer
-
-#define yy_set_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 ) \
-               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->yy_at_bol)
-
-
-#define YY_USES_REJECT
-
-#define yywrap() 1
-#define YY_SKIP_YYWRAP
-typedef unsigned char YY_CHAR;
-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
-
-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 yytext.
- */
-#define YY_DO_BEFORE_ACTION \
-       yytext_ptr = yy_bp; \
-       yyleng = (int) (yy_cp - yy_bp); \
-       yy_hold_char = *yy_cp; \
-       *yy_cp = '\0'; \
-       yy_c_buf_p = yy_cp;
-
-#define YY_NUM_RULES 157
-#define YY_END_OF_BUFFER 158
-static yyconst short int yy_acclist[235] =
-    {   0,
-      158,  156,  157,  155,  156,  157,  155,  157,  156,  157,
-      156,  157,  156,  157,  156,  157,  156,  157,  156,  157,
-      148,  156,  157,  148,  156,  157,    1,  156,  157,  156,
-      157,  156,  157,  156,  157,  156,  157,  156,  157,  156,
-      157,  156,  157,  156,  157,  156,  157,  156,  157,  156,
-      157,  156,  157,  156,  157,  156,  157,  156,  157,  156,
-      157,  156,  157,  156,  157,  156,  157,  156,  157,  156,
-      157,  147,  145,  144,  144,  151,  149,  153,  148,    1,
-      129,   39,   87,   56,   88,   77,   23,  147,  144,  144,
-      152,  153,   20,  153,  154,   65,   76,   37,   32,   40,
-
-       68,    3,   57,   58,   59,   52,   67,   93,   98,   96,
-       97,   95,   94,   99,  107,   72,  128,   92,   90,  123,
-      124,   91,   89,   66,  101,  106,  104,  105,  103,  102,
-      100,   78,  146,  153,  153,  125,   47,  108,  109,   86,
-       71,  137,   75,   85,  138,   54,  126,   22,  150,   70,
-      112,   74,   24,    4,   64,   69,   53,   73,   46,   11,
-      111,  153,   34,    2,    5,   60,  114,   62,   48,   80,
-       84,   82,   83,   81,   79,   50,  139,  110,   49,   55,
-       21,  136,   43,   61,   28,  133,   42,  116,  115,    7,
-      131,   31,  135,   36,   63,  122,  118,  130,   25,   26,
-
-      117,  132,   51,  127,  121,   41,    6,   27,  113,   35,
-        8,   16,    9,  120,   10,  119,   33,   12,   14,   13,
-       30,   38,   15,   29,  134,  140,  142,  143,   17,   44,
-      141,   18,   45,   19
-    } ;
-
-static yyconst short int yy_accept[609] =
-    {   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,   72,   73,   73,
-       74,   75,   76,   77,   77,   78,   78,   79,   80,   80,
-       81,   81,   81,   81,   81,   81,   81,   81,   81,   82,
-       82,   83,   83,   83,   83,   83,   83,   83,   83,   83,
-       84,   84,   84,   84,   84,   84,   84,   84,   84,   84,
-       84,   84,   84,   85,   85,   85,   85,   85,   85,   85,
-       85,   85,   85,   85,   86,   86,   86,   86,   86,   86,
-
-       86,   87,   87,   87,   87,   87,   87,   87,   87,   87,
-       87,   87,   87,   87,   87,   87,   87,   87,   87,   88,
-       88,   88,   88,   88,   88,   88,   88,   88,   88,   88,
-       88,   88,   88,   88,   88,   88,   88,   89,   90,   92,
-       93,   94,   95,   95,   96,   97,   97,   97,   98,   98,
-       98,   99,   99,  100,  100,  100,  100,  100,  101,  101,
-      101,  101,  101,  101,  101,  102,  102,  102,  103,  103,
-      103,  103,  103,  103,  103,  103,  103,  103,  103,  103,
-      103,  104,  105,  106,  106,  106,  106,  107,  107,  107,
-      107,  107,  107,  107,  107,  107,  107,  108,  108,  109,
-
-      110,  111,  112,  113,  114,  114,  115,  116,  116,  116,
-      117,  118,  118,  118,  118,  118,  118,  118,  118,  119,
-      120,  121,  121,  122,  122,  122,  122,  123,  124,  124,
-      124,  125,  125,  125,  125,  125,  125,  125,  125,  125,
-      126,  127,  128,  128,  128,  129,  129,  130,  130,  131,
-      131,  132,  132,  132,  132,  132,  132,  132,  132,  132,
-      132,  133,  133,  133,  134,  135,  135,  135,  135,  136,
-      136,  136,  136,  137,  137,  137,  138,  139,  140,  140,
-      140,  140,  140,  140,  140,  140,  140,  140,  140,  140,
-      140,  140,  140,  140,  141,  142,  142,  142,  142,  142,
-
-      143,  144,  144,  144,  145,  145,  145,  145,  145,  145,
-      145,  145,  145,  146,  147,  148,  148,  148,  149,  149,
-      149,  149,  150,  150,  151,  151,  151,  151,  151,  151,
-      151,  152,  152,  152,  152,  152,  153,  153,  153,  154,
-      154,  154,  155,  155,  156,  156,  157,  158,  158,  158,
-      158,  158,  158,  158,  159,  159,  159,  160,  160,  161,
-      161,  161,  162,  163,  164,  164,  164,  165,  165,  165,
-      165,  165,  165,  165,  165,  165,  165,  165,  165,  165,
-      165,  165,  166,  166,  167,  168,  168,  168,  168,  168,
-      168,  168,  168,  168,  168,  168,  169,  169,  169,  169,
-
-      169,  169,  169,  169,  170,  170,  170,  171,  172,  173,
-      174,  175,  176,  177,  177,  177,  177,  178,  178,  178,
-      178,  179,  180,  180,  181,  182,  182,  182,  182,  182,
-      182,  182,  182,  182,  182,  183,  183,  183,  184,  184,
-      184,  184,  184,  184,  184,  184,  185,  186,  187,  187,
-      187,  188,  189,  190,  190,  190,  191,  191,  191,  191,
-      191,  192,  192,  193,  194,  195,  196,  196,  196,  196,
-      197,  197,  197,  198,  199,  200,  201,  202,  202,  202,
-      203,  204,  205,  205,  205,  205,  205,  205,  206,  206,
-      207,  207,  208,  209,  209,  209,  209,  209,  209,  210,
-
-      210,  210,  210,  210,  210,  210,  210,  210,  211,  211,
-      211,  211,  211,  211,  211,  211,  211,  211,  212,  212,
-      212,  212,  212,  213,  213,  213,  213,  213,  214,  215,
-      216,  216,  217,  217,  217,  217,  217,  218,  218,  218,
-      218,  219,  219,  220,  221,  221,  221,  221,  221,  221,
-      221,  221,  221,  221,  221,  221,  221,  221,  222,  222,
-      222,  222,  222,  222,  222,  222,  223,  223,  223,  223,
-      223,  223,  224,  224,  224,  224,  224,  225,  225,  225,
-      226,  226,  226,  226,  226,  226,  226,  226,  226,  226,
-      226,  226,  226,  226,  227,  227,  228,  229,  230,  230,
-
-      231,  231,  232,  233,  234,  234,  235,  235
-    } ;
-
-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,
-        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    2,    1,    4,    1,    5,    6,    1,    1,    1,
-        1,    1,    7,    1,    8,    9,    1,   10,   11,   12,
-       13,   14,   15,   16,   15,   17,   15,   18,   19,    1,
-        1,    1,    1,    1,   20,   20,   20,   20,   21,   20,
-        5,    5,    5,    5,    5,    5,    5,    5,    5,    5,
-        5,    5,    5,    5,    5,    5,    5,    5,    5,    5,
-        1,    1,    1,    1,   22,    1,   23,   24,   25,   26,
-
-       27,   28,   29,   30,   31,    5,   32,   33,   34,   35,
-       36,   37,   38,   39,   40,   41,   42,   43,   44,   45,
-       46,   47,    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,    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,    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,    1,    1,    1,    1
-    } ;
-
-static yyconst int yy_meta[48] =
-    {   0,
-        1,    1,    2,    1,    3,    1,    4,    5,    3,    6,
-        6,    6,    6,    6,    6,    6,    6,    7,    1,    3,
-        8,    3,    3,    3,    3,    3,    8,    3,    3,    3,
-        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
-        3,    3,    3,    3,    3,    3,    3
-    } ;
-
-static yyconst short int yy_base[617] =
-    {   0,
-        0,    0, 1298, 1299, 1299, 1299, 1293, 1278,   40,    0,
-       48,   58,   68, 1250,    0,   68,   71,   81,   91,   52,
-      105,   93,  134,  117,  118,   73,  137,  143,   98,  175,
-      144,  210,  159,  116,   56,  119, 1290, 1299, 1275, 1299,
-        0,  241,    0, 1283, 1282,  140,  249, 1245,  267,    0,
-       70,  163,  145,   31,  157,  160,  168,   57, 1271,  170,
-       94,  180,  182,   54,  193,  189,  194,  114,  205, 1270,
-      271,  207,  204,  211,  208,  279,  206,  228,  249,   53,
-      121,  254, 1269,  268,  280,  281,  283,  290,  291,  285,
-      286,  287,  300, 1268,  305,  292,  309,  310,  314,  293,
-
-      316,  217,  317,  321,  311,  147,  322,  325,  328,  331,
-      341,  329,  344,  336,  339,  358,  347,  348, 1267,  363,
-      349,  346,  366,  370,  371,  372,  373,  384,  377,  388,
-      253,  398,  378,  401,  385,  403, 1266,    0,    0,  372,
-     1265,    0,  442,    0, 1264,  404,  407, 1263,  408,  412,
-     1262,  409, 1261,  414,  427,  428,  423, 1260,  418,  429,
-      444,  445,  447,  448, 1259,  452,  449,  454,  457,  459,
-      456,  458,  460,  464,  469,  255,  470,  476,  473,  471,
-     1258, 1257, 1256,  475,  472,  484,  486,  483,  490,  496,
-      497,  498,  500,  502,  503,  504, 1255,  507, 1254, 1253,
-
-     1252, 1251, 1250, 1249,  505, 1248, 1247,  512,  508, 1246,
-     1245,  540,  517,  516,  521,  515,  551,  530, 1244, 1243,
-     1242,  552, 1241,  554,  556,  557, 1240, 1239,  555,  558,
-     1238,  559,  561,  563,  567,  572,  569,  570,  577, 1237,
-     1236, 1235,  580,  583, 1234,  587, 1233,  585, 1232,  588,
-     1231,  590,  513,  584,  591,  514,  598,  592,  596,  416,
-     1230,  595,  607, 1299,  605,  622,  626,  628,  630,  621,
-      622,  623, 1229,  624,  626, 1228, 1227, 1226,  625,  627,
-      628,  633,  634,  636,  635,  637,  642,  647,  644,  643,
-      654,  646,  658, 1225, 1224,  645,  656,  660,  661, 1223,
-
-     1222,  666,  667, 1221,  669,  670,  671,  675,  673,  674,
-      676,  680, 1220, 1219, 1218,  683,  688, 1217,  686,  677,
-      690,    0,  696, 1216,  698,  697,  699,  706,  707,  709,
-     1215,  702,  712,  714,  717, 1214,  724,  713, 1213,  726,
-      721, 1212,  731, 1211,  728, 1210, 1209,  732,  734,  739,
-      740,  741,  743, 1208,  744,  747, 1207,  748, 1206,  751,
-      750, 1205,    0, 1204,  752,  754, 1203,  755,  759,  764,
-      767,  770,  758,  772,  776,  780,  781,  783,  782,  784,
-      785, 1202,  786, 1201, 1200,  789,  791,  794,  787,  788,
-      797,  798,  806,  807,  808, 1199,  810,  809,  812,  815,
-
-      816,  820,  822, 1198,  814,  828, 1197, 1196, 1195, 1194,
-     1193, 1192, 1191,  830,  831,  833, 1190,  834,  836,  838,
-     1189, 1188,  837, 1187, 1186,  839,  842,  840,  843,  844,
-      850,  853,  854,  857, 1185,  860,  861, 1184,  864,  865,
-      867,  869,  868,  870,  871, 1183, 1182, 1181,  875,  876,
-     1180, 1179, 1178,  885,  882, 1177,  887,  891,  897,  883,
-     1176,  886, 1175, 1174, 1173, 1172,  894,  901,  903, 1171,
-      904,  907, 1170, 1169, 1168, 1167, 1166,  908,  910, 1165,
-     1164, 1163,  909,  905,  911,  912,  914, 1162,  916, 1161,
-      923, 1160, 1159,  926,  928,  929,  930,  933, 1158,  934,
-
-      935,  936,  938,  937,  948,  932,  940, 1157,  944,  950,
-      956,  960,  962,  964,  966,  967,  968, 1156,  946,  972,
-      974,  975, 1155,  976,  977,  978,  980, 1150, 1147, 1144,
-      983, 1136,  993,  981,  985,  986, 1133,  998,  999, 1003,
-     1130, 1006, 1124, 1113, 1007, 1008, 1009, 1010, 1011, 1013,
-     1014, 1018, 1020, 1019, 1023, 1022, 1025, 1111, 1024, 1031,
-     1026, 1035, 1039, 1040, 1036, 1109, 1043, 1044, 1046, 1050,
-     1051, 1108, 1054, 1052, 1055, 1056, 1106, 1060, 1062, 1104,
-     1064, 1067, 1057, 1069, 1076, 1077, 1080, 1081, 1082, 1084,
-     1085, 1083, 1087, 1101, 1088, 1100, 1099, 1094, 1089,  982,
-
-     1098,  756,  527,  419, 1093,  326, 1299, 1132, 1138, 1144,
-      268, 1152, 1158,  123, 1161, 1166
-    } ;
-
-static yyconst short int yy_def[617] =
-    {   0,
-      607,    1,  607,  607,  607,  607,  608,  609,  610,  611,
-      609,  609,   11,   13,  612,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  608,  607,  609,  607,
-      613,  613,  614,  611,   11,  609,   11,   13,   11,  612,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  607,  613,   42,  615,
-      609,   47,   11,   49,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,   49,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  607,  615,  616,  616,  143,  143,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  212,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  267,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
-
-      609,  609,  609,  609,  609,  609,    0,  607,  607,  607,
-      607,  607,  607,  607,  607,  607
-    } ;
-
-static yyconst short int yy_nxt[1347] =
-    {   0,
-        4,    5,    6,    7,    8,    9,   10,   11,   12,   13,
-       14,   14,   14,   14,   14,   14,   14,    4,   15,    8,
-        8,    8,   16,   17,   18,   19,   20,   21,   22,    8,
-       23,    8,   24,   25,   26,   27,   28,    8,   29,   30,
-       31,   32,   33,   34,   35,    8,   36,   42,   40,   43,
-       43,   43,   43,   43,   43,   43,   43,   45,   45,   45,
-       45,   45,   45,   45,   45,   40,   46,  149,  181,   40,
-       40,   40,  134,   40,   40,   40,   47,   48,   48,   48,
-       48,   48,   48,   48,   48,   40,   69,   40,   40,   70,
-       40,  135,  155,   51,  162,  145,   71,   56,   40,   94,
-
-       52,   57,   53,   60,   54,   61,   58,   55,   40,   59,
-       40,   40,   49,   64,   95,   40,   62,   65,  158,   78,
-       63,   66,   40,   67,  105,   79,   68,   72,   43,   73,
-       74,   40,  182,   40,   40,   40,   40,   75,   40,   87,
-       91,   76,  133,   77,   80,  136,   81,   88,  141,   82,
-       83,   40,   89,   92,   40,  167,   90,   40,   84,   93,
-       40,   40,   40,   96,   40,   97,  118,   85,   86,   98,
-      148,   99,  102,  100,   40,  101,   40,   40,  103,  119,
-       40,  131,  120,  104,  106,   40,  150,   40,  152,  121,
-      151,  212,   40,  146,  132,  147,  153,   40,  107,   40,
-
-      108,  109,  156,  110,  111,  112,   40,  113,  154,  157,
-       40,   40,  159,  114,  160,  115,  116,  163,  117,  106,
-      161,   40,   40,   40,   40,   40,  166,   40,   40,  164,
-      168,  165,  178,  122,   40,  123,  124,  173,  125,  171,
-      126,  174,  127,  175,  128,   40,  172,  207,  129,  130,
-      139,  139,  139,  139,  139,  139,  139,  139,  142,  142,
-      142,  142,  142,  142,  142,  142,   40,  183,  179,  143,
-       40,   40,   40,   44,  256,  143,  144,  144,  144,  144,
-      144,  144,  144,  144,  180,   40,  144,  144,   40,  144,
-      144,  144,  144,  144,  144,  169,   40,   40,   40,  297,
-
-       40,  184,   40,   40,   40,  176,  189,   40,   40,   40,
-       40,  170,  196,  192,  194,  205,  185,   40,  195,  177,
-      186,  187,   40,  188,  190,  193,   40,   40,   40,  199,
-      191,   40,  197,   40,   40,  200,  202,  198,   40,   40,
-      204,  206,   40,   40,  210,   40,   40,  208,   40,  201,
-      203,  211,  215,   40,  225,  214,   40,  219,   40,  209,
-      216,   40,  229,   40,   40,   40,   40,  213,  217,  226,
-      227,  220,  218,  221,  230,   40,  222,  232,  233,  223,
-       40,  231,  224,   40,  228,  237,  234,   40,   40,   40,
-       40,  238,  266,  235,   40,   40,  239,  241,  266,  245,
-
-      259,   40,   40,  254,  236,   40,  243,  240,  246,  248,
-      249,  242,  244,  247,  250,   40,  260,  255,   40,  251,
-       40,   40,  252,  261,   40,   40,   40,  253,  257,   40,
-      258,   40,  270,   40,  272,   40,   40,  360,  275,  274,
-       40,  262,  271,  279,   40,   40,   40,  263,  267,  268,
-      273,  269,  269,  269,  269,  269,  269,  269,  269,  276,
-      277,   40,   40,  278,   40,   40,   40,  282,  280,   40,
-      281,   40,  287,   40,   40,   40,   40,   40,  285,  283,
-      284,   40,  286,  289,  288,  290,   40,   40,   40,   40,
-       40,  296,   40,   40,  303,  292,  294,  291,  293,  302,
-
-       40,   40,  300,   40,  305,  298,  295,   40,  299,  301,
-      306,  304,  307,   40,   40,   40,  310,   40,  309,   40,
-       40,   40,   40,  313,   40,   40,  308,  311,  314,   40,
-       40,   40,   40,   40,   40,  316,  356,  312,   40,  318,
-      315,  326,  319,  353,   40,  317,  320,   40,  321,  322,
-      322,  322,  322,  322,  322,  322,  322,  323,  324,  322,
-      322,  325,  322,  322,  322,  322,  322,  322,   40,   40,
-      331,   40,   40,   40,   40,   40,   40,  327,   40,  328,
-       40,  333,  334,  329,   40,  330,   40,   40,  336,   40,
-      332,  340,  335,  339,   40,  344,  337,   40,  342,  338,
-
-       40,   40,   40,  341,   40,   40,  343,   40,   40,   40,
-      345,  350,   40,   40,  358,   40,  352,  354,  348,  346,
-      347,  349,  351,  357,   40,  266,  355,  359,  267,  267,
-      361,  266,  607,  607,  607,   39,  607,   39,   40,   40,
-       40,   40,   40,   40,   40,   40,  365,  362,  368,  369,
-       40,   40,   40,   40,   40,  364,  373,  366,  367,   40,
-       40,   40,   40,   40,   40,  372,  374,  370,  371,  378,
-      376,   40,  382,   40,  377,   40,  381,   40,   40,  375,
-      379,  380,  383,   40,   40,  384,   40,   40,   40,  390,
-       40,   40,   40,   40,   40,  391,  385,   40,  389,  386,
-
-       40,  387,  388,   40,  395,   40,  396,   40,  392,  393,
-      394,  397,  398,   40,   40,   40,   40,  402,  399,   40,
-      400,  406,  404,   40,   40,  403,   40,  401,  405,   40,
-       40,   40,  408,  410,   40,  412,  407,  418,   40,  414,
-      415,   40,  413,   40,  416,   40,  409,  411,   40,   40,
-      417,   40,  419,  420,  422,  421,   40,   40,   40,  423,
-       40,   40,  424,  427,   40,   40,  425,   40,   40,   40,
-      426,   40,   40,   40,  435,   40,   40,  428,  432,  436,
-      434,   40,  429,  438,   40,  430,  439,   40,  431,   40,
-      433,  440,  441,   40,  437,  443,  442,   40,   40,   40,
-
-       40,   40,   40,   40,   40,   40,   40,  446,   40,  450,
-      451,   40,  444,  455,   40,   40,  445,  447,  449,  452,
-      456,  453,  448,   40,   40,   40,   40,   40,  454,   40,
-      457,   40,   40,   40,  461,  463,  464,   40,  458,   40,
-      459,  465,  466,  460,  462,   40,  467,   40,   40,  469,
-       40,   40,  468,   40,   40,   40,   40,   40,  472,   40,
-       40,   40,  471,  474,  476,  480,  479,   40,  470,  473,
-       40,   40,  482,  477,   40,  484,  475,   40,   40,  478,
-      483,   40,   40,  481,   40,   40,   40,   40,   40,  490,
-      487,  486,   40,   40,  485,  492,  496,  497,  489,   40,
-
-       40,  488,   40,   40,   40,  494,  495,  493,   40,  499,
-      505,   40,  491,  501,   40,  500,  498,  502,   40,  503,
-       40,   40,   40,  504,   40,   40,   40,   40,   40,   40,
-      509,   40,  506,   40,  510,  507,  515,  508,  511,  512,
-       40,  513,  516,   40,  514,   40,   40,   40,  517,   40,
-       40,   40,   40,   40,   40,   40,  518,   40,  519,  524,
-      525,   40,  523,   40,  520,   40,  521,   40,  527,  526,
-      528,  531,  522,   40,  530,  529,  534,   40,  535,   40,
-      532,   40,  536,   40,   40,   40,  533,  542,  537,   40,
-      539,   40,   40,   40,   40,   40,  541,   40,   40,   40,
-
-       40,  545,   40,   40,  538,  552,  549,  540,  546,  554,
-       40,  547,  543,  550,  544,   40,   40,  553,  548,  551,
-       40,  556,  555,   40,   40,   40,   40,   40,   40,  559,
-       40,   40,  562,  557,  560,   40,   40,   40,  565,   40,
-       40,   40,   40,   40,  563,  569,  558,  571,   40,  561,
-      567,  568,   40,   40,  570,  572,   40,   40,  566,  564,
-       40,   40,  574,   40,  573,  576,  577,   40,   40,   40,
-      580,   40,   40,   40,   40,  575,  578,   40,  581,   40,
-      584,   40,  582,  583,   40,  586,   40,  592,  589,  579,
-      587,  591,  585,   40,   40,  588,  590,   40,   40,   40,
-
-       40,   40,   40,  593,   40,   40,   40,  598,  599,  600,
-       40,   40,  595,  604,  594,   40,   40,   40,   40,  597,
-      596,   40,  603,   40,  605,   40,   40,  602,   40,  601,
-       40,  606,   37,   37,   37,   37,   37,   37,   37,   37,
-       39,   40,   39,   39,   39,   39,   41,   40,   41,   41,
-       40,   41,   50,   40,   50,   50,   50,   50,   50,   50,
-      138,   40,  138,  138,   40,  138,  265,   40,  265,  363,
-      363,  363,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,   40,  264,   40,   40,   40,   40,   40,   39,
-       47,  140,   40,  137,   39,   40,   38,  607,    3,  607,
-
-      607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
-      607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
-      607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
-      607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
-      607,  607,  607,  607,  607,  607
-    } ;
-
-static yyconst short int yy_chk[1347] =
-    {   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,    1,    1,    1,    1,    9,   54,    9,
-        9,    9,    9,    9,    9,    9,    9,   11,   11,   11,
-       11,   11,   11,   11,   11,   11,   12,   54,   80,   20,
-       80,   64,   35,   35,   58,   12,   13,   13,   13,   13,
-       13,   13,   13,   13,   13,   16,   20,   51,   17,   20,
-       26,   35,   58,   16,   64,   51,   20,   17,   18,   26,
-
-       16,   17,   16,   18,   16,   18,   17,   16,   19,   17,
-       22,   61,   13,   19,   26,   29,   18,   19,   61,   22,
-       18,   19,   21,   19,   29,   22,   19,   21,  614,   21,
-       21,   68,   81,   34,   24,   25,   36,   21,   81,   24,
-       25,   21,   34,   21,   23,   36,   23,   24,   46,   23,
-       23,   23,   24,   25,   27,   68,   24,   46,   23,   25,
-       28,   31,   53,   27,  106,   27,   31,   23,   23,   27,
-       53,   27,   28,   27,   55,   27,   33,   56,   28,   31,
-       52,   33,   31,   28,   30,   57,   55,   60,   56,   31,
-       55,  106,   30,   52,   33,   52,   57,   62,   30,   63,
-
-       30,   30,   60,   30,   30,   30,   66,   30,   57,   60,
-       65,   67,   62,   30,   62,   30,   30,   65,   30,   32,
-       63,   73,   69,   77,   72,   75,   67,   32,   74,   65,
-       69,   66,   77,   32,  102,   32,   32,   73,   32,   72,
-       32,   74,   32,   75,   32,   78,   72,  102,   32,   32,
-       42,   42,   42,   42,   42,   42,   42,   42,   47,   47,
-       47,   47,   47,   47,   47,   47,   79,   82,   78,   47,
-      131,   82,  176,  611,  131,   47,   49,   49,   49,   49,
-       49,   49,   49,   49,   79,   84,   49,   49,   71,   49,
-       49,   49,   49,   49,   49,   71,   76,   85,   86,  176,
-
-       87,   84,   90,   91,   92,   76,   87,   88,   89,   96,
-      100,   71,   92,   89,   90,  100,   85,   93,   91,   76,
-       86,   86,   95,   86,   88,   89,   97,   98,  105,   96,
-       88,   99,   93,  101,  103,   97,   98,   95,  104,  107,
-       99,  101,  108,  606,  105,  109,  112,  103,  110,   97,
-       98,  105,  109,  114,  112,  108,  115,  110,  111,  104,
-      109,  113,  114,  122,  117,  118,  121,  107,  109,  112,
-      113,  110,  109,  111,  115,  116,  111,  117,  118,  111,
-      120,  116,  111,  123,  113,  121,  118,  124,  125,  126,
-      127,  122,  140,  120,  129,  133,  123,  125,  140,  127,
-
-      133,  128,  135,  129,  120,  130,  126,  124,  127,  128,
-      128,  125,  126,  127,  128,  132,  134,  130,  134,  128,
-      136,  146,  128,  135,  147,  149,  152,  128,  132,  150,
-      132,  154,  146,  260,  149,  159,  604,  260,  154,  152,
-      157,  136,  147,  159,  155,  156,  160,  136,  143,  143,
-      150,  143,  143,  143,  143,  143,  143,  143,  143,  155,
-      156,  161,  162,  157,  163,  164,  167,  162,  160,  166,
-      161,  168,  167,  171,  169,  172,  170,  173,  166,  163,
-      164,  174,  166,  169,  168,  170,  175,  177,  180,  185,
-      179,  175,  184,  178,  180,  171,  173,  170,  172,  179,
-
-      188,  186,  178,  187,  185,  177,  174,  189,  177,  178,
-      186,  184,  187,  190,  191,  192,  189,  193,  188,  194,
-      195,  196,  205,  192,  198,  209,  187,  190,  193,  208,
-      253,  256,  216,  214,  213,  195,  256,  191,  215,  198,
-      194,  216,  205,  253,  603,  196,  208,  218,  209,  212,
-      212,  212,  212,  212,  212,  212,  212,  213,  214,  212,
-      212,  215,  212,  212,  212,  212,  212,  212,  217,  222,
-      218,  224,  229,  225,  226,  230,  232,  217,  233,  217,
-      234,  224,  225,  217,  235,  217,  237,  238,  229,  236,
-      222,  234,  226,  233,  239,  237,  230,  243,  236,  232,
-
-      244,  254,  248,  235,  246,  250,  236,  252,  255,  258,
-      238,  248,  262,  259,  258,  257,  252,  254,  244,  239,
-      243,  246,  250,  257,  263,  265,  255,  259,  266,  266,
-      262,  265,  267,  267,  268,  268,  269,  269,  270,  271,
-      272,  274,  279,  275,  280,  281,  271,  263,  275,  279,
-      282,  283,  285,  284,  286,  270,  283,  272,  274,  287,
-      290,  289,  296,  292,  288,  282,  284,  280,  281,  288,
-      286,  291,  292,  297,  287,  293,  291,  298,  299,  285,
-      289,  290,  293,  302,  303,  296,  305,  306,  307,  303,
-      309,  310,  308,  311,  320,  305,  297,  312,  302,  298,
-
-      316,  298,  299,  319,  309,  317,  310,  321,  306,  307,
-      308,  311,  312,  323,  326,  325,  327,  320,  316,  332,
-      317,  326,  323,  328,  329,  321,  330,  319,  325,  333,
-      338,  334,  328,  329,  335,  330,  327,  338,  341,  333,
-      334,  337,  332,  340,  335,  345,  328,  329,  343,  348,
-      337,  349,  340,  341,  345,  343,  350,  351,  352,  348,
-      353,  355,  349,  352,  356,  358,  350,  361,  360,  365,
-      351,  366,  368,  602,  365,  373,  369,  353,  360,  366,
-      361,  370,  355,  369,  371,  356,  370,  372,  358,  374,
-      360,  371,  372,  375,  368,  374,  373,  376,  377,  379,
-
-      378,  380,  381,  383,  389,  390,  386,  377,  387,  381,
-      383,  388,  375,  389,  391,  392,  376,  378,  380,  386,
-      390,  387,  379,  393,  394,  395,  398,  397,  388,  399,
-      391,  405,  400,  401,  395,  398,  399,  402,  392,  403,
-      393,  400,  401,  394,  397,  406,  402,  414,  415,  405,
-      416,  418,  403,  419,  423,  420,  426,  428,  415,  427,
-      429,  430,  414,  418,  420,  428,  427,  431,  406,  416,
-      432,  433,  430,  423,  434,  432,  419,  436,  437,  426,
-      431,  439,  440,  429,  441,  443,  442,  444,  445,  440,
-      436,  434,  449,  450,  433,  442,  449,  449,  439,  455,
-
-      460,  437,  454,  462,  457,  444,  445,  443,  458,  454,
-      462,  467,  441,  457,  459,  455,  450,  458,  468,  459,
-      469,  471,  484,  460,  472,  478,  483,  479,  485,  486,
-      471,  487,  467,  489,  472,  468,  485,  469,  478,  479,
-      491,  483,  486,  494,  484,  495,  496,  497,  487,  506,
-      498,  500,  501,  502,  504,  503,  489,  507,  491,  498,
-      500,  509,  497,  519,  494,  505,  495,  510,  502,  501,
-      503,  506,  496,  511,  505,  504,  510,  512,  511,  513,
-      507,  514,  512,  515,  516,  517,  509,  519,  513,  520,
-      515,  521,  522,  524,  525,  526,  517,  527,  534,  600,
-
-      531,  522,  535,  536,  514,  534,  527,  516,  524,  536,
-      533,  525,  520,  531,  521,  538,  539,  535,  526,  533,
-      540,  539,  538,  542,  545,  546,  547,  548,  549,  545,
-      550,  551,  548,  540,  546,  552,  554,  553,  551,  556,
-      555,  559,  557,  561,  549,  555,  542,  557,  560,  547,
-      553,  554,  562,  565,  556,  559,  563,  564,  552,  550,
-      567,  568,  561,  569,  560,  563,  564,  570,  571,  574,
-      568,  573,  575,  576,  583,  562,  565,  578,  569,  579,
-      573,  581,  570,  571,  582,  575,  584,  583,  579,  567,
-      576,  582,  574,  585,  586,  578,  581,  587,  588,  589,
-
-      592,  590,  591,  584,  593,  595,  599,  589,  590,  591,
-      605,  598,  586,  599,  585,  601,  597,  596,  594,  588,
-      587,  580,  595,  577,  601,  572,  566,  593,  558,  592,
-      544,  605,  608,  608,  608,  608,  608,  608,  608,  608,
-      609,  543,  609,  609,  609,  609,  610,  541,  610,  610,
-      537,  610,  612,  532,  612,  612,  612,  612,  612,  612,
-      613,  530,  613,  613,  529,  613,  615,  528,  615,  616,
-      616,  616,  523,  518,  508,  499,  493,  492,  490,  488,
-      482,  481,  480,  477,  476,  475,  474,  473,  470,  466,
-      465,  464,  463,  461,  456,  453,  452,  451,  448,  447,
-
-      446,  438,  435,  425,  424,  422,  421,  417,  413,  412,
-      411,  410,  409,  408,  407,  404,  396,  385,  384,  382,
-      367,  364,  362,  359,  357,  354,  347,  346,  344,  342,
-      339,  336,  331,  324,  318,  315,  314,  313,  304,  301,
-      300,  295,  294,  278,  277,  276,  273,  261,  251,  249,
-      247,  245,  242,  241,  240,  231,  228,  227,  223,  221,
-      220,  219,  211,  210,  207,  206,  204,  203,  202,  201,
-      200,  199,  197,  183,  182,  181,  165,  158,  153,  151,
-      148,  145,  141,  137,  119,   94,   83,   70,   59,   48,
-       45,   44,   39,   37,   14,    8,    7,    3,  607,  607,
-
-      607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
-      607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
-      607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
-      607,  607,  607,  607,  607,  607,  607,  607,  607,  607,
-      607,  607,  607,  607,  607,  607
-    } ;
-
-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 *yytext;
-#line 1 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-#define INITIAL 0
-/*===-- UpgradeLexer.l - Scanner for 1.9 assembly files --------*- C++ -*--===//
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file was developed by Reid Spencer and is distributed under the 
-// University of Illinois Open Source License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-//  This file implements the flex scanner for LLVM 1.9 assembly languages files.
-//
-//===----------------------------------------------------------------------===*/
-#define YY_NEVER_INTERACTIVE 1
-#line 28 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-
-#include "UpgradeInternals.h"
-#include "UpgradeParser.h"
-#include <cctype>
-#include <cstdlib>
-
-#define YY_INPUT(buf,result,max_size) \
-{ \
-  if (LexInput->good() && !LexInput->eof()) { \
-    LexInput->read(buf,max_size); \
-    result = LexInput->gcount(); \
-  } else {\
-    result = YY_NULL; \
-  } \
-}
-
-
-// Construct a token value for a non-obsolete token
-#define RET_TOK(sym) \
-  Upgradelval.String = new std::string(yytext); \
-  return sym
-
-#define RET_TY(sym,OldTY,NewTY,sign) \
-  Upgradelval.Type = TypeInfo::get(NewTY, OldTY); \
-  return sym
-
-#define YY_NEVER_INTERACTIVE 1
-/* Comments start with a ; and go till end of line */
-/* Variable(Value) identifiers start with a % sign */
-/* Label identifiers end with a colon */
-/* Quoted names can contain any character except " and \ */
-/* [PN]Integer: match positive and negative literal integer values that
- * are preceeded by a '%' character.  These represent unnamed variable slots.
- */
-/* E[PN]Integer: match positive and negative literal integer values */
-/* FPConstant - A Floating point constant.
- */
-/* HexFPConstant - Floating point constant represented in IEEE format as a
- *  hexadecimal number for when exponential notation is not precise enough.
- */
-/* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
- * it to deal with 64 bit numbers.
- */
-#line 986 "UpgradeLexer.cpp"
-
-/* Macros after this point can all be overridden by user definitions in
- * section 1.
- */
-
-#ifndef YY_SKIP_YYWRAP
-#ifdef __cplusplus
-extern "C" int yywrap YY_PROTO(( void ));
-#else
-extern int yywrap YY_PROTO(( void ));
-#endif
-#endif
-
-#ifndef YY_NO_UNPUT
-static inline void yyunput YY_PROTO(( int c, char *buf_ptr ));
-#endif
-
-#ifndef yytext_ptr
-static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
-#endif
-
-#ifdef YY_NEED_STRLEN
-static int yy_flex_strlen YY_PROTO(( yyconst char * ));
-#endif
-
-#ifndef YY_NO_INPUT
-#ifdef __cplusplus
-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
-#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. */
-#ifndef YY_READ_BUF_SIZE
-#define YY_READ_BUF_SIZE 8192
-#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( yytext, yyleng, 1, yyout )
-#endif
-
-/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
- * is returned in "result".
- */
-#ifndef YY_INPUT
-#define YY_INPUT(buf,result,max_size) \
-       if ( yy_current_buffer->yy_is_interactive ) \
-               { \
-               int c = '*', n; \
-               for ( n = 0; n < max_size && \
-                            (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
-                       buf[n] = (char) c; \
-               if ( c == '\n' ) \
-                       buf[n++] = (char) c; \
-               if ( c == EOF && ferror( yyin ) ) \
-                       YY_FATAL_ERROR( "input in flex scanner failed" ); \
-               result = n; \
-               } \
-       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();" -
- * we don't want an extra ';' after the "return" because that will cause
- * some compilers to complain about unreachable statements.
- */
-#ifndef yyterminate
-#define yyterminate() return YY_NULL
-#endif
-
-/* Number of entries by which start-condition stack grows. */
-#ifndef YY_START_STACK_INCR
-#define YY_START_STACK_INCR 25
-#endif
-
-/* Report a fatal error. */
-#ifndef YY_FATAL_ERROR
-#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
-#endif
-
-/* Default declaration of generated scanner - a define so the user can
- * easily add parameters.
- */
-#ifndef YY_DECL
-#define YY_DECL int yylex YY_PROTO(( void ))
-#endif
-
-/* Code executed at the beginning of each rule, after yytext and yyleng
- * have been set up.
- */
-#ifndef YY_USER_ACTION
-#define YY_USER_ACTION
-#endif
-
-/* Code executed at the end of each rule. */
-#ifndef YY_BREAK
-#define YY_BREAK break;
-#endif
-
-#define YY_RULE_SETUP \
-       YY_USER_ACTION
-
-YY_DECL
-       {
-       register yy_state_type yy_current_state;
-       register char *yy_cp = NULL, *yy_bp = NULL;
-       register int yy_act;
-
-#line 97 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-
-
-#line 1140 "UpgradeLexer.cpp"
-
-       if ( yy_init )
-               {
-               yy_init = 0;
-
-#ifdef YY_USER_INIT
-               YY_USER_INIT;
-#endif
-
-               if ( ! yy_start )
-                       yy_start = 1;   /* first start state */
-
-               if ( ! yyin )
-                       yyin = stdin;
-
-               if ( ! yyout )
-                       yyout = stdout;
-
-               if ( ! yy_current_buffer )
-                       yy_current_buffer =
-                               yy_create_buffer( yyin, YY_BUF_SIZE );
-
-               yy_load_buffer_state();
-               }
-
-       while ( 1 )             /* loops until end-of-file is reached */
-               {
-               yy_cp = yy_c_buf_p;
-
-               /* 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_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)];
-                       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 >= 608 )
-                                       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 != 607 );
-
-yy_find_action:
-               yy_current_state = *--yy_state_ptr;
-               yy_lp = yy_accept[yy_current_state];
-
-               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 )
-                       {
-                       int yyl;
-                       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 1:
-YY_RULE_SETUP
-#line 99 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ /* Ignore comments for now */ }
-       YY_BREAK
-case 2:
-YY_RULE_SETUP
-#line 101 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( BEGINTOK); }
-       YY_BREAK
-case 3:
-YY_RULE_SETUP
-#line 102 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ENDTOK); }
-       YY_BREAK
-case 4:
-YY_RULE_SETUP
-#line 103 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( TRUETOK);  }
-       YY_BREAK
-case 5:
-YY_RULE_SETUP
-#line 104 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FALSETOK); }
-       YY_BREAK
-case 6:
-YY_RULE_SETUP
-#line 105 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( DECLARE); }
-       YY_BREAK
-case 7:
-YY_RULE_SETUP
-#line 106 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( GLOBAL); }
-       YY_BREAK
-case 8:
-YY_RULE_SETUP
-#line 107 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( CONSTANT); }
-       YY_BREAK
-case 9:
-YY_RULE_SETUP
-#line 108 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( INTERNAL); }
-       YY_BREAK
-case 10:
-YY_RULE_SETUP
-#line 109 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( LINKONCE); }
-       YY_BREAK
-case 11:
-YY_RULE_SETUP
-#line 110 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( WEAK); }
-       YY_BREAK
-case 12:
-YY_RULE_SETUP
-#line 111 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( APPENDING); }
-       YY_BREAK
-case 13:
-YY_RULE_SETUP
-#line 112 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( DLLIMPORT); }
-       YY_BREAK
-case 14:
-YY_RULE_SETUP
-#line 113 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( DLLEXPORT); }
-       YY_BREAK
-case 15:
-YY_RULE_SETUP
-#line 114 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( EXTERN_WEAK); }
-       YY_BREAK
-case 16:
-YY_RULE_SETUP
-#line 115 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( EXTERNAL); }
-       YY_BREAK
-case 17:
-YY_RULE_SETUP
-#line 116 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UNINITIALIZED); }  // alias for external
-       YY_BREAK
-case 18:
-YY_RULE_SETUP
-#line 117 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( IMPLEMENTATION); }
-       YY_BREAK
-case 19:
-YY_RULE_SETUP
-#line 118 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ZEROINITIALIZER); }
-       YY_BREAK
-case 20:
-YY_RULE_SETUP
-#line 119 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( DOTDOTDOT); }
-       YY_BREAK
-case 21:
-YY_RULE_SETUP
-#line 120 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UNDEF); }
-       YY_BREAK
-case 22:
-YY_RULE_SETUP
-#line 121 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( NULL_TOK); }
-       YY_BREAK
-case 23:
-YY_RULE_SETUP
-#line 122 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( TO); }
-       YY_BREAK
-case 24:
-YY_RULE_SETUP
-#line 123 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( TAIL); }
-       YY_BREAK
-case 25:
-YY_RULE_SETUP
-#line 124 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( TARGET); }
-       YY_BREAK
-case 26:
-YY_RULE_SETUP
-#line 125 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( TRIPLE); }
-       YY_BREAK
-case 27:
-YY_RULE_SETUP
-#line 126 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( DEPLIBS); }
-       YY_BREAK
-case 28:
-YY_RULE_SETUP
-#line 127 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ENDIAN); }
-       YY_BREAK
-case 29:
-YY_RULE_SETUP
-#line 128 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( POINTERSIZE); }
-       YY_BREAK
-case 30:
-YY_RULE_SETUP
-#line 129 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( DATALAYOUT); }
-       YY_BREAK
-case 31:
-YY_RULE_SETUP
-#line 130 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( LITTLE); }
-       YY_BREAK
-case 32:
-YY_RULE_SETUP
-#line 131 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( BIG); }
-       YY_BREAK
-case 33:
-YY_RULE_SETUP
-#line 132 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( VOLATILE); }
-       YY_BREAK
-case 34:
-YY_RULE_SETUP
-#line 133 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ALIGN);  }
-       YY_BREAK
-case 35:
-YY_RULE_SETUP
-#line 134 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SECTION); }
-       YY_BREAK
-case 36:
-YY_RULE_SETUP
-#line 135 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( MODULE); }
-       YY_BREAK
-case 37:
-YY_RULE_SETUP
-#line 136 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ASM_TOK); }
-       YY_BREAK
-case 38:
-YY_RULE_SETUP
-#line 137 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SIDEEFFECT); }
-       YY_BREAK
-case 39:
-YY_RULE_SETUP
-#line 139 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( CC_TOK); }
-       YY_BREAK
-case 40:
-YY_RULE_SETUP
-#line 140 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( CCC_TOK); }
-       YY_BREAK
-case 41:
-YY_RULE_SETUP
-#line 141 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( CSRETCC_TOK); }
-       YY_BREAK
-case 42:
-YY_RULE_SETUP
-#line 142 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FASTCC_TOK); }
-       YY_BREAK
-case 43:
-YY_RULE_SETUP
-#line 143 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( COLDCC_TOK); }
-       YY_BREAK
-case 44:
-YY_RULE_SETUP
-#line 144 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( X86_STDCALLCC_TOK); }
-       YY_BREAK
-case 45:
-YY_RULE_SETUP
-#line 145 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( X86_FASTCALLCC_TOK); }
-       YY_BREAK
-case 46:
-YY_RULE_SETUP
-#line 147 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(VOID,VoidTy,"void",false); }
-       YY_BREAK
-case 47:
-YY_RULE_SETUP
-#line 148 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(BOOL,BoolTy,"bool",false); }
-       YY_BREAK
-case 48:
-YY_RULE_SETUP
-#line 149 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(SBYTE,SByteTy,"i8",true); }
-       YY_BREAK
-case 49:
-YY_RULE_SETUP
-#line 150 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(UBYTE,UByteTy,"i8",false); }
-       YY_BREAK
-case 50:
-YY_RULE_SETUP
-#line 151 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(SHORT,ShortTy,"i16",true); }
-       YY_BREAK
-case 51:
-YY_RULE_SETUP
-#line 152 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(USHORT,UShortTy,"i16",false); }
-       YY_BREAK
-case 52:
-YY_RULE_SETUP
-#line 153 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(INT,IntTy,"i32",true);   }
-       YY_BREAK
-case 53:
-YY_RULE_SETUP
-#line 154 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(UINT,UIntTy,"i32",false);  }
-       YY_BREAK
-case 54:
-YY_RULE_SETUP
-#line 155 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(LONG,LongTy,"i64",true);  }
-       YY_BREAK
-case 55:
-YY_RULE_SETUP
-#line 156 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(ULONG,ULongTy,"i64",false); }
-       YY_BREAK
-case 56:
-YY_RULE_SETUP
-#line 157 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(UBYTE,UByteTy,"i8",false); }
-       YY_BREAK
-case 57:
-YY_RULE_SETUP
-#line 158 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(USHORT,UShortTy,"i16",false); }
-       YY_BREAK
-case 58:
-YY_RULE_SETUP
-#line 159 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(UINT,UIntTy,"i32",false); }
-       YY_BREAK
-case 59:
-YY_RULE_SETUP
-#line 160 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(ULONG,ULongTy,"i64",false); }
-       YY_BREAK
-case 60:
-YY_RULE_SETUP
-#line 161 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(FLOAT,FloatTy,"float",false); }
-       YY_BREAK
-case 61:
-YY_RULE_SETUP
-#line 162 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(DOUBLE,DoubleTy,"double",false); }
-       YY_BREAK
-case 62:
-YY_RULE_SETUP
-#line 163 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TY(LABEL,LabelTy,"label",false); }
-       YY_BREAK
-case 63:
-YY_RULE_SETUP
-#line 164 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(OPAQUE); }
-       YY_BREAK
-case 64:
-YY_RULE_SETUP
-#line 165 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(TYPE);   }
-       YY_BREAK
-case 65:
-YY_RULE_SETUP
-#line 167 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ADD); }
-       YY_BREAK
-case 66:
-YY_RULE_SETUP
-#line 168 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SUB); }
-       YY_BREAK
-case 67:
-YY_RULE_SETUP
-#line 169 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( MUL); }
-       YY_BREAK
-case 68:
-YY_RULE_SETUP
-#line 170 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( DIV); }
-       YY_BREAK
-case 69:
-YY_RULE_SETUP
-#line 171 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UDIV); }
-       YY_BREAK
-case 70:
-YY_RULE_SETUP
-#line 172 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SDIV); }
-       YY_BREAK
-case 71:
-YY_RULE_SETUP
-#line 173 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FDIV); }
-       YY_BREAK
-case 72:
-YY_RULE_SETUP
-#line 174 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( REM);  }
-       YY_BREAK
-case 73:
-YY_RULE_SETUP
-#line 175 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UREM); }
-       YY_BREAK
-case 74:
-YY_RULE_SETUP
-#line 176 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SREM); }
-       YY_BREAK
-case 75:
-YY_RULE_SETUP
-#line 177 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FREM); }
-       YY_BREAK
-case 76:
-YY_RULE_SETUP
-#line 178 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( AND); }
-       YY_BREAK
-case 77:
-YY_RULE_SETUP
-#line 179 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( OR); }
-       YY_BREAK
-case 78:
-YY_RULE_SETUP
-#line 180 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( XOR); }
-       YY_BREAK
-case 79:
-YY_RULE_SETUP
-#line 181 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SETNE); }
-       YY_BREAK
-case 80:
-YY_RULE_SETUP
-#line 182 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SETEQ); }
-       YY_BREAK
-case 81:
-YY_RULE_SETUP
-#line 183 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SETLT); }
-       YY_BREAK
-case 82:
-YY_RULE_SETUP
-#line 184 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SETGT); }
-       YY_BREAK
-case 83:
-YY_RULE_SETUP
-#line 185 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SETLE); }
-       YY_BREAK
-case 84:
-YY_RULE_SETUP
-#line 186 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SETGE); }
-       YY_BREAK
-case 85:
-YY_RULE_SETUP
-#line 187 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(ICMP); }
-       YY_BREAK
-case 86:
-YY_RULE_SETUP
-#line 188 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(FCMP); }
-       YY_BREAK
-case 87:
-YY_RULE_SETUP
-#line 189 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(EQ); }
-       YY_BREAK
-case 88:
-YY_RULE_SETUP
-#line 190 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(NE); }
-       YY_BREAK
-case 89:
-YY_RULE_SETUP
-#line 191 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(SLT); }
-       YY_BREAK
-case 90:
-YY_RULE_SETUP
-#line 192 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(SGT); }
-       YY_BREAK
-case 91:
-YY_RULE_SETUP
-#line 193 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(SLE); }
-       YY_BREAK
-case 92:
-YY_RULE_SETUP
-#line 194 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(SGE); }
-       YY_BREAK
-case 93:
-YY_RULE_SETUP
-#line 195 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(OEQ); }
-       YY_BREAK
-case 94:
-YY_RULE_SETUP
-#line 196 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(ONE); }
-       YY_BREAK
-case 95:
-YY_RULE_SETUP
-#line 197 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(OLT); }
-       YY_BREAK
-case 96:
-YY_RULE_SETUP
-#line 198 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(OGT); }
-       YY_BREAK
-case 97:
-YY_RULE_SETUP
-#line 199 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(OLE); }
-       YY_BREAK
-case 98:
-YY_RULE_SETUP
-#line 200 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(OGE); }
-       YY_BREAK
-case 99:
-YY_RULE_SETUP
-#line 201 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(ORD); }
-       YY_BREAK
-case 100:
-YY_RULE_SETUP
-#line 202 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(UNO); }
-       YY_BREAK
-case 101:
-YY_RULE_SETUP
-#line 203 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(UEQ); }
-       YY_BREAK
-case 102:
-YY_RULE_SETUP
-#line 204 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(UNE); }
-       YY_BREAK
-case 103:
-YY_RULE_SETUP
-#line 205 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(ULT); }
-       YY_BREAK
-case 104:
-YY_RULE_SETUP
-#line 206 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(UGT); }
-       YY_BREAK
-case 105:
-YY_RULE_SETUP
-#line 207 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(ULE); }
-       YY_BREAK
-case 106:
-YY_RULE_SETUP
-#line 208 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK(UGE); }
-       YY_BREAK
-case 107:
-YY_RULE_SETUP
-#line 210 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( PHI_TOK); }
-       YY_BREAK
-case 108:
-YY_RULE_SETUP
-#line 211 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( CALL); }
-       YY_BREAK
-case 109:
-YY_RULE_SETUP
-#line 212 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( CAST); }
-       YY_BREAK
-case 110:
-YY_RULE_SETUP
-#line 213 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( TRUNC); }
-       YY_BREAK
-case 111:
-YY_RULE_SETUP
-#line 214 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ZEXT); }
-       YY_BREAK
-case 112:
-YY_RULE_SETUP
-#line 215 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SEXT); }
-       YY_BREAK
-case 113:
-YY_RULE_SETUP
-#line 216 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FPTRUNC); }
-       YY_BREAK
-case 114:
-YY_RULE_SETUP
-#line 217 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FPEXT); }
-       YY_BREAK
-case 115:
-YY_RULE_SETUP
-#line 218 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FPTOUI); }
-       YY_BREAK
-case 116:
-YY_RULE_SETUP
-#line 219 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FPTOSI); }
-       YY_BREAK
-case 117:
-YY_RULE_SETUP
-#line 220 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UITOFP); }
-       YY_BREAK
-case 118:
-YY_RULE_SETUP
-#line 221 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SITOFP); }
-       YY_BREAK
-case 119:
-YY_RULE_SETUP
-#line 222 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( PTRTOINT); }
-       YY_BREAK
-case 120:
-YY_RULE_SETUP
-#line 223 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( INTTOPTR); }
-       YY_BREAK
-case 121:
-YY_RULE_SETUP
-#line 224 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( BITCAST); }
-       YY_BREAK
-case 122:
-YY_RULE_SETUP
-#line 225 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SELECT); }
-       YY_BREAK
-case 123:
-YY_RULE_SETUP
-#line 226 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SHL); }
-       YY_BREAK
-case 124:
-YY_RULE_SETUP
-#line 227 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SHR); }
-       YY_BREAK
-case 125:
-YY_RULE_SETUP
-#line 228 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ASHR); }
-       YY_BREAK
-case 126:
-YY_RULE_SETUP
-#line 229 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( LSHR); }
-       YY_BREAK
-case 127:
-YY_RULE_SETUP
-#line 230 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( VAARG); }
-       YY_BREAK
-case 128:
-YY_RULE_SETUP
-#line 231 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( RET); }
-       YY_BREAK
-case 129:
-YY_RULE_SETUP
-#line 232 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( BR); }
-       YY_BREAK
-case 130:
-YY_RULE_SETUP
-#line 233 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SWITCH); }
-       YY_BREAK
-case 131:
-YY_RULE_SETUP
-#line 234 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( INVOKE); }
-       YY_BREAK
-case 132:
-YY_RULE_SETUP
-#line 235 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UNWIND); }
-       YY_BREAK
-case 133:
-YY_RULE_SETUP
-#line 236 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( EXCEPT); } // alias for unwind
-       YY_BREAK
-case 134:
-YY_RULE_SETUP
-#line 237 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UNREACHABLE); }
-       YY_BREAK
-case 135:
-YY_RULE_SETUP
-#line 239 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( MALLOC); }
-       YY_BREAK
-case 136:
-YY_RULE_SETUP
-#line 240 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ALLOCA); }
-       YY_BREAK
-case 137:
-YY_RULE_SETUP
-#line 241 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FREE); }
-       YY_BREAK
-case 138:
-YY_RULE_SETUP
-#line 242 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( LOAD); }
-       YY_BREAK
-case 139:
-YY_RULE_SETUP
-#line 243 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( STORE); }
-       YY_BREAK
-case 140:
-YY_RULE_SETUP
-#line 244 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( GETELEMENTPTR); }
-       YY_BREAK
-case 141:
-YY_RULE_SETUP
-#line 246 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( EXTRACTELEMENT); }
-       YY_BREAK
-case 142:
-YY_RULE_SETUP
-#line 247 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( INSERTELEMENT); }
-       YY_BREAK
-case 143:
-YY_RULE_SETUP
-#line 248 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SHUFFLEVECTOR); }
-       YY_BREAK
-case 144:
-YY_RULE_SETUP
-#line 251 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( VAR_ID); }
-       YY_BREAK
-case 145:
-YY_RULE_SETUP
-#line 252 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( LABELSTR); }
-       YY_BREAK
-case 146:
-YY_RULE_SETUP
-#line 253 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( LABELSTR); }
-       YY_BREAK
-case 147:
-YY_RULE_SETUP
-#line 254 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( STRINGCONSTANT ); }
-       YY_BREAK
-case 148:
-YY_RULE_SETUP
-#line 255 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( EUINT64VAL ); }
-       YY_BREAK
-case 149:
-YY_RULE_SETUP
-#line 256 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( ESINT64VAL ); }
-       YY_BREAK
-case 150:
-YY_RULE_SETUP
-#line 257 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( yytext[0] == 's' ? ESINT64VAL : EUINT64VAL ); }
-       YY_BREAK
-case 151:
-YY_RULE_SETUP
-#line 258 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( UINTVAL); }
-       YY_BREAK
-case 152:
-YY_RULE_SETUP
-#line 259 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( SINTVAL); }
-       YY_BREAK
-case 153:
-YY_RULE_SETUP
-#line 260 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FPVAL); }
-       YY_BREAK
-case 154:
-YY_RULE_SETUP
-#line 261 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ RET_TOK( FPVAL); }
-       YY_BREAK
-case YY_STATE_EOF(INITIAL):
-#line 262 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{
-                  /* Make sure to free the internal buffers for flex when we are
-                   * done reading our input!
-                   */
-                  yy_delete_buffer(YY_CURRENT_BUFFER);
-                  return EOF;
-                }
-       YY_BREAK
-case 155:
-YY_RULE_SETUP
-#line 270 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ /* Ignore whitespace */ }
-       YY_BREAK
-case 156:
-YY_RULE_SETUP
-#line 271 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-{ return yytext[0]; }
-       YY_BREAK
-case 157:
-YY_RULE_SETUP
-#line 273 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-YY_FATAL_ERROR( "flex scanner jammed" );
-       YY_BREAK
-#line 2026 "UpgradeLexer.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;
-
-               /* Undo the effects of YY_DO_BEFORE_ACTION. */
-               *yy_cp = yy_hold_char;
-               YY_RESTORE_YY_MORE_OFFSET
-
-               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 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->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
-                * of the first EOB in the buffer, since yy_c_buf_p will
-                * already have been incremented past the NUL character
-                * (since all states make transitions on EOB to the
-                * end-of-buffer state).  Contrast this with the test
-                * in input().
-                */
-               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_current_state = yy_get_previous_state();
-
-                       /* Okay, we're now positioned to make the NUL
-                        * transition.  We couldn't have
-                        * yy_get_previous_state() go ahead and do it
-                        * for us because it doesn't know how to deal
-                        * with the possibility of jamming (and we don't
-                        * want to build jamming into it because then it
-                        * will run more slowly).
-                        */
-
-                       yy_next_state = yy_try_NUL_trans( yy_current_state );
-
-                       yy_bp = yytext_ptr + YY_MORE_ADJ;
-
-                       if ( yy_next_state )
-                               {
-                               /* Consume the NUL. */
-                               yy_cp = ++yy_c_buf_p;
-                               yy_current_state = yy_next_state;
-                               goto yy_match;
-                               }
-
-                       else
-                               {
-                               yy_cp = yy_c_buf_p;
-                               goto yy_find_action;
-                               }
-                       }
-
-               else switch ( yy_get_next_buffer() )
-                       {
-                       case EOB_ACT_END_OF_FILE:
-                               {
-                               yy_did_buffer_switch_on_eof = 0;
-
-                               if ( yywrap() )
-                                       {
-                                       /* Note: because we've taken care in
-                                        * yy_get_next_buffer() to have 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_act = YY_STATE_EOF(YY_START);
-                                       goto do_action;
-                                       }
-
-                               else
-                                       {
-                                       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_current_state = yy_get_previous_state();
-
-                               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->yy_ch_buf[yy_n_chars];
-
-                               yy_current_state = yy_get_previous_state();
-
-                               yy_cp = yy_c_buf_p;
-                               yy_bp = yytext_ptr + YY_MORE_ADJ;
-                               goto yy_find_action;
-                       }
-               break;
-               }
-
-       default:
-               YY_FATAL_ERROR(
-                       "fatal flex scanner internal error--no action found" );
-       } /* end of action switch */
-               } /* end of scanning one token */
-       } /* end of yylex */
-
-
-/* yy_get_next_buffer - try to read in a new buffer
- *
- * Returns a code representing an action:
- *     EOB_ACT_LAST_MATCH -
- *     EOB_ACT_CONTINUE_SCAN - continue scanning from current position
- *     EOB_ACT_END_OF_FILE - end of file
- */
-
-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->yy_ch_buf[yy_n_chars + 1] )
-               YY_FATAL_ERROR(
-               "fatal flex scanner internal error--end of buffer missed" );
-
-       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 )
-                       {
-                       /* We matched a single character, the EOB, so
-                        * treat this as a final EOF.
-                        */
-                       return EOB_ACT_END_OF_FILE;
-                       }
-
-               else
-                       {
-                       /* We matched some text prior to the EOB, first
-                        * process it.
-                        */
-                       return EOB_ACT_LAST_MATCH;
-                       }
-               }
-
-       /* Try to read more data. */
-
-       /* First move last chars to start of buffer. */
-       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->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->yy_n_chars = yy_n_chars = 0;
-
-       else
-               {
-               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;
-
-                       int yy_c_buf_p_offset =
-                               (int) (yy_c_buf_p - b->yy_ch_buf);
-
-                       if ( b->yy_is_our_buffer )
-                               {
-                               int new_size = b->yy_buf_size * 2;
-
-                               if ( new_size <= 0 )
-                                       b->yy_buf_size += b->yy_buf_size / 8;
-                               else
-                                       b->yy_buf_size *= 2;
-
-                               b->yy_ch_buf = (char *)
-                                       /* Include room in for 2 EOB chars. */
-                                       yy_flex_realloc( (void *) b->yy_ch_buf,
-                                                        b->yy_buf_size + 2 );
-                               }
-                       else
-                               /* Can't grow it, we don't own it. */
-                               b->yy_ch_buf = 0;
-
-                       if ( ! b->yy_ch_buf )
-                               YY_FATAL_ERROR(
-                               "fatal error - scanner input buffer overflow" );
-
-                       yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
-
-                       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->yy_ch_buf[number_to_move]),
-                       yy_n_chars, num_to_read );
-
-               yy_current_buffer->yy_n_chars = yy_n_chars;
-               }
-
-       if ( yy_n_chars == 0 )
-               {
-               if ( number_to_move == YY_MORE_ADJ )
-                       {
-                       ret_val = EOB_ACT_END_OF_FILE;
-                       yyrestart( yyin );
-                       }
-
-               else
-                       {
-                       ret_val = EOB_ACT_LAST_MATCH;
-                       yy_current_buffer->yy_buffer_status =
-                               YY_BUFFER_EOF_PENDING;
-                       }
-               }
-
-       else
-               ret_val = EOB_ACT_CONTINUE_SCAN;
-
-       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->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()
-       {
-       register yy_state_type yy_current_state;
-       register char *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);
-               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 >= 608 )
-                               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 );
- */
-
-#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 YY_CHAR yy_c = 1;
-       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 >= 608 )
-                       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 == 607);
-       if ( ! yy_is_jam )
-               *yy_state_ptr++ = yy_current_state;
-
-       return yy_is_jam ? 0 : yy_current_state;
-       }
-
-
-#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->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->yy_ch_buf[
-                                       yy_current_buffer->yy_buf_size + 2];
-               register char *source =
-                               &yy_current_buffer->yy_ch_buf[number_to_move];
-
-               while ( source > yy_current_buffer->yy_ch_buf )
-                       *--dest = *--source;
-
-               yy_cp += (int) (dest - source);
-               yy_bp += (int) (dest - source);
-               yy_current_buffer->yy_n_chars =
-                       yy_n_chars = yy_current_buffer->yy_buf_size;
-
-               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' )
-               --yylineno;
-
-       yytext_ptr = yy_bp;
-       yy_hold_char = *yy_cp;
-       yy_c_buf_p = yy_cp;
-       }
-#endif /* ifndef YY_NO_UNPUT */
-
-
-#ifndef YY_NO_INPUT
-#ifdef __cplusplus
-static int yyinput()
-#else
-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 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->yy_ch_buf[yy_n_chars] )
-                       /* This was really a NUL. */
-                       *yy_c_buf_p = '\0';
-
-               else
-                       { /* need more input */
-                       int offset = yy_c_buf_p - yytext_ptr;
-                       ++yy_c_buf_p;
-
-                       switch ( yy_get_next_buffer() )
-                               {
-                               case EOB_ACT_LAST_MATCH:
-                                       /* This happens because yy_g_n_b()
-                                        * sees that we've accumulated a
-                                        * token and flags that we need to
-                                        * try matching the token before
-                                        * proceeding.  But for input(),
-                                        * there's no matching to consider.
-                                        * So convert the EOB_ACT_LAST_MATCH
-                                        * to EOB_ACT_END_OF_FILE.
-                                        */
-
-                                       /* Reset buffer status. */
-                                       yyrestart( yyin );
-
-                                       /* fall through */
-
-                               case EOB_ACT_END_OF_FILE:
-                                       {
-                                       if ( yywrap() )
-                                               return EOF;
-
-                                       if ( ! yy_did_buffer_switch_on_eof )
-                                               YY_NEW_FILE;
-#ifdef __cplusplus
-                                       return yyinput();
-#else
-                                       return input();
-#endif
-                                       }
-
-                               case EOB_ACT_CONTINUE_SCAN:
-                                       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 yytext */
-       yy_hold_char = *++yy_c_buf_p;
-
-       if ( c == '\n' )
-               ++yylineno;
-
-       return c;
-       }
-#endif /* YY_NO_INPUT */
-
-#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();
-       }
-
-
-#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 )
-               {
-               /* Flush out information for old buffer. */
-               *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 = new_buffer;
-       yy_load_buffer_state();
-
-       /* We don't actually know whether we did this switch during
-        * 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;
-       }
-
-
-#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) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
-       if ( ! b )
-               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 *) yy_flex_alloc( b->yy_buf_size + 2 );
-       if ( ! b->yy_ch_buf )
-               YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
-
-       b->yy_is_our_buffer = 1;
-
-       yy_init_buffer( b, file );
-
-       return 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 )
-               yy_current_buffer = (YY_BUFFER_STATE) 0;
-
-       if ( b->yy_is_our_buffer )
-               yy_flex_free( (void *) b->yy_ch_buf );
-
-       yy_flex_free( (void *) 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 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
-       }
-
-
-#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;
-
-       /* We always need two end-of-buffer characters.  The first causes
-        * a transition to the end-of-buffer state.  The second causes
-        * a jam in that state.
-        */
-       b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
-       b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
-
-       b->yy_buf_pos = &b->yy_ch_buf[0];
-
-       b->yy_at_bol = 1;
-       b->yy_buffer_status = YY_BUFFER_NEW;
-
-       if ( b == yy_current_buffer )
-               yy_load_buffer_state();
-       }
-
-
-#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) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
-       if ( ! b )
-               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;
-       b->yy_is_our_buffer = 0;
-       b->yy_input_file = 0;
-       b->yy_n_chars = b->yy_buf_size;
-       b->yy_is_interactive = 0;
-       b->yy_at_bol = 1;
-       b->yy_fill_buffer = 0;
-       b->yy_buffer_status = YY_BUFFER_NEW;
-
-       yy_switch_to_buffer( b );
-
-       return b;
-       }
-#endif
-
-
-#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 = len + 2;
-       buf = (char *) yy_flex_alloc( n );
-       if ( ! buf )
-               YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
-
-       for ( i = 0; i < len; ++i )
-               buf[i] = bytes[i];
-
-       buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
-
-       b = yy_scan_buffer( buf, n );
-       if ( ! b )
-               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.
-        */
-       b->yy_is_our_buffer = 1;
-
-       return b;
-       }
-#endif
-
-
-#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;
-
-               yy_start_stack_depth += YY_START_STACK_INCR;
-               new_size = yy_start_stack_depth * sizeof( int );
-
-               if ( ! yy_start_stack )
-                       yy_start_stack = (int *) yy_flex_alloc( new_size );
-
-               else
-                       yy_start_stack = (int *) yy_flex_realloc(
-                                       (void *) yy_start_stack, new_size );
-
-               if ( ! yy_start_stack )
-                       YY_FATAL_ERROR(
-                       "out of memory expanding start-condition stack" );
-               }
-
-       yy_start_stack[yy_start_stack_ptr++] = YY_START;
-
-       BEGIN(new_state);
-       }
-#endif
-
-
-#ifndef YY_NO_POP_STATE
-static void yy_pop_state()
-       {
-       if ( --yy_start_stack_ptr < 0 )
-               YY_FATAL_ERROR( "start-condition stack underflow" );
-
-       BEGIN(yy_start_stack[yy_start_stack_ptr]);
-       }
-#endif
-
-
-#ifndef YY_NO_TOP_STATE
-static int yy_top_state()
-       {
-       return yy_start_stack[yy_start_stack_ptr - 1];
-       }
-#endif
-
-#ifndef YY_EXIT_FAILURE
-#define YY_EXIT_FAILURE 2
-#endif
-
-#ifdef YY_USE_PROTOS
-static void yy_fatal_error( yyconst char msg[] )
-#else
-static void yy_fatal_error( msg )
-char msg[];
-#endif
-       {
-       (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 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 )
-
-
-/* Internal utility routines. */
-
-#ifndef yytext_ptr
-#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
-#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
-
-
-#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 );
-       }
-
-#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
-        * because both ANSI C and C++ allow castless assignment from
-        * any pointer type to void*, and deal with argument conversions
-        * as though doing an assignment.
-        */
-       return (void *) realloc( (char *) ptr, size );
-       }
-
-#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 273 "/proj/llvm/llvm-3/tools/llvm-upgrade/UpgradeLexer.l"
-
diff --git a/tools/llvm-upgrade/UpgradeParser.cpp b/tools/llvm-upgrade/UpgradeParser.cpp
deleted file mode 100644 (file)
index 50d98d9..0000000
+++ /dev/null
@@ -1,4802 +0,0 @@
-/* A Bison parser, made by GNU Bison 2.1.  */
-
-/* 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
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
-
-/* 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.  */
-
-/* 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
-   variables, as they might otherwise be expanded by user macros.
-   There are some unavoidable exceptions within include files to
-   define necessary library symbols; they are noted "INFRINGES ON
-   USER NAME SPACE" below.  */
-
-/* Identify Bison output.  */
-#define YYBISON 1
-
-/* Bison version.  */
-#define YYBISON_VERSION "2.1"
-
-/* Skeleton name.  */
-#define YYSKELETON_NAME "yacc.c"
-
-/* Pure parsers.  */
-#define YYPURE 0
-
-/* Using locations.  */
-#define YYLSP_NEEDED 0
-
-/* Substitute the variable and function names.  */
-#define yyparse Upgradeparse
-#define yylex   Upgradelex
-#define yyerror Upgradeerror
-#define yylval  Upgradelval
-#define yychar  Upgradechar
-#define yydebug Upgradedebug
-#define yynerrs Upgradenerrs
-
-
-/* Tokens.  */
-#ifndef YYTOKENTYPE
-# define YYTOKENTYPE
-   /* Put the tokens into the symbol table, so that GDB and other debuggers
-      know about them.  */
-   enum yytokentype {
-     VOID = 258,
-     BOOL = 259,
-     SBYTE = 260,
-     UBYTE = 261,
-     SHORT = 262,
-     USHORT = 263,
-     INT = 264,
-     UINT = 265,
-     LONG = 266,
-     ULONG = 267,
-     FLOAT = 268,
-     DOUBLE = 269,
-     LABEL = 270,
-     OPAQUE = 271,
-     ESINT64VAL = 272,
-     EUINT64VAL = 273,
-     SINTVAL = 274,
-     UINTVAL = 275,
-     FPVAL = 276,
-     NULL_TOK = 277,
-     UNDEF = 278,
-     ZEROINITIALIZER = 279,
-     TRUETOK = 280,
-     FALSETOK = 281,
-     TYPE = 282,
-     VAR_ID = 283,
-     LABELSTR = 284,
-     STRINGCONSTANT = 285,
-     IMPLEMENTATION = 286,
-     BEGINTOK = 287,
-     ENDTOK = 288,
-     DECLARE = 289,
-     GLOBAL = 290,
-     CONSTANT = 291,
-     SECTION = 292,
-     VOLATILE = 293,
-     TO = 294,
-     DOTDOTDOT = 295,
-     CONST = 296,
-     INTERNAL = 297,
-     LINKONCE = 298,
-     WEAK = 299,
-     DLLIMPORT = 300,
-     DLLEXPORT = 301,
-     EXTERN_WEAK = 302,
-     APPENDING = 303,
-     NOT = 304,
-     EXTERNAL = 305,
-     TARGET = 306,
-     TRIPLE = 307,
-     ENDIAN = 308,
-     POINTERSIZE = 309,
-     LITTLE = 310,
-     BIG = 311,
-     ALIGN = 312,
-     UNINITIALIZED = 313,
-     DEPLIBS = 314,
-     CALL = 315,
-     TAIL = 316,
-     ASM_TOK = 317,
-     MODULE = 318,
-     SIDEEFFECT = 319,
-     CC_TOK = 320,
-     CCC_TOK = 321,
-     CSRETCC_TOK = 322,
-     FASTCC_TOK = 323,
-     COLDCC_TOK = 324,
-     X86_STDCALLCC_TOK = 325,
-     X86_FASTCALLCC_TOK = 326,
-     DATALAYOUT = 327,
-     RET = 328,
-     BR = 329,
-     SWITCH = 330,
-     INVOKE = 331,
-     EXCEPT = 332,
-     UNWIND = 333,
-     UNREACHABLE = 334,
-     ADD = 335,
-     SUB = 336,
-     MUL = 337,
-     DIV = 338,
-     UDIV = 339,
-     SDIV = 340,
-     FDIV = 341,
-     REM = 342,
-     UREM = 343,
-     SREM = 344,
-     FREM = 345,
-     AND = 346,
-     OR = 347,
-     XOR = 348,
-     SETLE = 349,
-     SETGE = 350,
-     SETLT = 351,
-     SETGT = 352,
-     SETEQ = 353,
-     SETNE = 354,
-     ICMP = 355,
-     FCMP = 356,
-     EQ = 357,
-     NE = 358,
-     SLT = 359,
-     SGT = 360,
-     SLE = 361,
-     SGE = 362,
-     OEQ = 363,
-     ONE = 364,
-     OLT = 365,
-     OGT = 366,
-     OLE = 367,
-     OGE = 368,
-     ORD = 369,
-     UNO = 370,
-     UEQ = 371,
-     UNE = 372,
-     ULT = 373,
-     UGT = 374,
-     ULE = 375,
-     UGE = 376,
-     MALLOC = 377,
-     ALLOCA = 378,
-     FREE = 379,
-     LOAD = 380,
-     STORE = 381,
-     GETELEMENTPTR = 382,
-     PHI_TOK = 383,
-     SELECT = 384,
-     SHL = 385,
-     SHR = 386,
-     ASHR = 387,
-     LSHR = 388,
-     VAARG = 389,
-     EXTRACTELEMENT = 390,
-     INSERTELEMENT = 391,
-     SHUFFLEVECTOR = 392,
-     CAST = 393,
-     TRUNC = 394,
-     ZEXT = 395,
-     SEXT = 396,
-     FPTRUNC = 397,
-     FPEXT = 398,
-     FPTOUI = 399,
-     FPTOSI = 400,
-     UITOFP = 401,
-     SITOFP = 402,
-     PTRTOINT = 403,
-     INTTOPTR = 404,
-     BITCAST = 405
-   };
-#endif
-/* Tokens.  */
-#define VOID 258
-#define BOOL 259
-#define SBYTE 260
-#define UBYTE 261
-#define SHORT 262
-#define USHORT 263
-#define INT 264
-#define UINT 265
-#define LONG 266
-#define ULONG 267
-#define FLOAT 268
-#define DOUBLE 269
-#define LABEL 270
-#define OPAQUE 271
-#define ESINT64VAL 272
-#define EUINT64VAL 273
-#define SINTVAL 274
-#define UINTVAL 275
-#define FPVAL 276
-#define NULL_TOK 277
-#define UNDEF 278
-#define ZEROINITIALIZER 279
-#define TRUETOK 280
-#define FALSETOK 281
-#define TYPE 282
-#define VAR_ID 283
-#define LABELSTR 284
-#define STRINGCONSTANT 285
-#define IMPLEMENTATION 286
-#define BEGINTOK 287
-#define ENDTOK 288
-#define DECLARE 289
-#define GLOBAL 290
-#define CONSTANT 291
-#define SECTION 292
-#define VOLATILE 293
-#define TO 294
-#define DOTDOTDOT 295
-#define CONST 296
-#define INTERNAL 297
-#define LINKONCE 298
-#define WEAK 299
-#define DLLIMPORT 300
-#define DLLEXPORT 301
-#define EXTERN_WEAK 302
-#define APPENDING 303
-#define NOT 304
-#define EXTERNAL 305
-#define TARGET 306
-#define TRIPLE 307
-#define ENDIAN 308
-#define POINTERSIZE 309
-#define LITTLE 310
-#define BIG 311
-#define ALIGN 312
-#define UNINITIALIZED 313
-#define DEPLIBS 314
-#define CALL 315
-#define TAIL 316
-#define ASM_TOK 317
-#define MODULE 318
-#define SIDEEFFECT 319
-#define CC_TOK 320
-#define CCC_TOK 321
-#define CSRETCC_TOK 322
-#define FASTCC_TOK 323
-#define COLDCC_TOK 324
-#define X86_STDCALLCC_TOK 325
-#define X86_FASTCALLCC_TOK 326
-#define DATALAYOUT 327
-#define RET 328
-#define BR 329
-#define SWITCH 330
-#define INVOKE 331
-#define EXCEPT 332
-#define UNWIND 333
-#define UNREACHABLE 334
-#define ADD 335
-#define SUB 336
-#define MUL 337
-#define DIV 338
-#define UDIV 339
-#define SDIV 340
-#define FDIV 341
-#define REM 342
-#define UREM 343
-#define SREM 344
-#define FREM 345
-#define AND 346
-#define OR 347
-#define XOR 348
-#define SETLE 349
-#define SETGE 350
-#define SETLT 351
-#define SETGT 352
-#define SETEQ 353
-#define SETNE 354
-#define ICMP 355
-#define FCMP 356
-#define EQ 357
-#define NE 358
-#define SLT 359
-#define SGT 360
-#define SLE 361
-#define SGE 362
-#define OEQ 363
-#define ONE 364
-#define OLT 365
-#define OGT 366
-#define OLE 367
-#define OGE 368
-#define ORD 369
-#define UNO 370
-#define UEQ 371
-#define UNE 372
-#define ULT 373
-#define UGT 374
-#define ULE 375
-#define UGE 376
-#define MALLOC 377
-#define ALLOCA 378
-#define FREE 379
-#define LOAD 380
-#define STORE 381
-#define GETELEMENTPTR 382
-#define PHI_TOK 383
-#define SELECT 384
-#define SHL 385
-#define SHR 386
-#define ASHR 387
-#define LSHR 388
-#define VAARG 389
-#define EXTRACTELEMENT 390
-#define INSERTELEMENT 391
-#define SHUFFLEVECTOR 392
-#define CAST 393
-#define TRUNC 394
-#define ZEXT 395
-#define SEXT 396
-#define FPTRUNC 397
-#define FPEXT 398
-#define FPTOUI 399
-#define FPTOSI 400
-#define UITOFP 401
-#define SITOFP 402
-#define PTRTOINT 403
-#define INTTOPTR 404
-#define BITCAST 405
-
-
-
-
-/* Copy the first part of user declarations.  */
-#line 14 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-
-#include "UpgradeInternals.h"
-#include <algorithm>
-#include <map>
-#include <utility>
-#include <iostream>
-
-#define YYERROR_VERBOSE 1
-#define YYINCLUDED_STDLIB_H
-#define YYDEBUG 1
-
-int yylex();                       // declaration" of xxx warnings.
-int yyparse();
-extern int yydebug;
-
-static std::string CurFilename;
-static std::ostream *O = 0;
-std::istream* LexInput = 0;
-unsigned SizeOfPointer = 32;
-static uint64_t unique = 1;
-
-// This bool controls whether attributes are ever added to function declarations
-// definitions and calls.
-static bool AddAttributes = false;
-
-// This bool is used to communicate between the InstVal and Inst rules about
-// whether or not a cast should be deleted. When the flag is set, InstVal has
-// determined that the cast is a candidate. However, it can only be deleted if
-// the value being casted is the same value name as the instruction. The Inst
-// rule makes that comparison if the flag is set and comments out the
-// instruction if they match.
-static bool deleteUselessCastFlag = false;
-static std::string* deleteUselessCastName = 0;
-
-typedef std::vector<const TypeInfo*> TypeVector;
-static TypeVector EnumeratedTypes;
-typedef std::map<std::string,const TypeInfo*> TypeMap;
-static TypeMap NamedTypes;
-typedef std::map<const TypeInfo*,std::string> TypePlaneMap;
-typedef std::map<std::string,TypePlaneMap> GlobalsTypeMap;
-static GlobalsTypeMap Globals;
-
-static void warning(const std::string& msg);
-
-void destroy(ValueList* VL) {
-  while (!VL->empty()) {
-    ValueInfo& VI = VL->back();
-    VI.destroy();
-    VL->pop_back();
-  }
-  delete VL;
-}
-
-void UpgradeAssembly(const std::string &infile, std::istream& in, 
-                     std::ostream &out, bool debug, bool addAttrs)
-{
-  Upgradelineno = 1; 
-  CurFilename = infile;
-  LexInput = &in;
-  yydebug = debug;
-  AddAttributes = addAttrs;
-  O = &out;
-
-  if (yyparse()) {
-    std::cerr << "Parse failed.\n";
-    out << "llvm-upgrade parse failed.\n";
-    exit(1);
-  }
-}
-
-TypeInfo::TypeRegMap TypeInfo::registry;
-
-const TypeInfo* TypeInfo::get(const std::string &newType, Types oldType) {
-  TypeInfo* Ty = new TypeInfo();
-  Ty->newTy = newType;
-  Ty->oldTy = oldType;
-  return add_new_type(Ty);
-}
-
-const TypeInfo* TypeInfo::get(const std::string& newType, Types oldType, 
-                              const TypeInfo* eTy, const TypeInfo* rTy) {
-  TypeInfo* Ty= new TypeInfo();
-  Ty->newTy = newType;
-  Ty->oldTy = oldType;
-  Ty->elemTy = const_cast<TypeInfo*>(eTy);
-  Ty->resultTy = const_cast<TypeInfo*>(rTy);
-  return add_new_type(Ty);
-}
-
-const TypeInfo* TypeInfo::get(const std::string& newType, Types oldType, 
-                              const TypeInfo *eTy, uint64_t elems) {
-  TypeInfo* Ty = new TypeInfo();
-  Ty->newTy = newType;
-  Ty->oldTy = oldType;
-  Ty->elemTy = const_cast<TypeInfo*>(eTy);
-  Ty->nelems = elems;
-  return  add_new_type(Ty);
-}
-
-const TypeInfo* TypeInfo::get(const std::string& newType, Types oldType, 
-                              TypeList* TL) {
-  TypeInfo* Ty = new TypeInfo();
-  Ty->newTy = newType;
-  Ty->oldTy = oldType;
-  Ty->elements = TL;
-  return add_new_type(Ty);
-}
-
-const TypeInfo* TypeInfo::get(const std::string& newType, const TypeInfo* resTy,
-                              TypeList* TL) {
-  TypeInfo* Ty = new TypeInfo();
-  Ty->newTy = newType;
-  Ty->oldTy = FunctionTy;
-  Ty->resultTy = const_cast<TypeInfo*>(resTy);
-  Ty->elements = TL;
-  return add_new_type(Ty);
-}
-
-const TypeInfo* TypeInfo::resolve() const {
-  if (isUnresolved()) {
-    if (getNewTy()[0] == '%' && isdigit(newTy[1])) {
-      unsigned ref = atoi(&((newTy.c_str())[1])); // skip the %
-      if (ref < EnumeratedTypes.size()) {
-        return EnumeratedTypes[ref];
-      } else {
-        std::string msg("Can't resolve numbered type: ");
-        msg += getNewTy();
-        yyerror(msg.c_str());
-      }
-    } else {
-      TypeMap::iterator I = NamedTypes.find(newTy);
-      if (I != NamedTypes.end()) {
-        return I->second;
-      } else {
-        std::string msg("Cannot resolve type: ");
-        msg += getNewTy();
-        yyerror(msg.c_str());
-      }
-    }
-  }
-  // otherwise its already resolved.
-  return this;
-}
-
-bool TypeInfo::operator<(const TypeInfo& that) const {
-  if (this == &that)
-    return false;
-  if (oldTy != that.oldTy)
-    return oldTy < that.oldTy;
-  switch (oldTy) {
-    case UpRefTy: {
-      unsigned thisUp = this->getUpRefNum();
-      unsigned thatUp = that.getUpRefNum();
-      return thisUp < thatUp;
-    }
-    case PackedTy:
-    case ArrayTy:
-      if (this->nelems != that.nelems)
-        return nelems < that.nelems;
-    case PointerTy: {
-      const TypeInfo* thisTy = this->elemTy;
-      const TypeInfo* thatTy = that.elemTy;
-      return *thisTy < *thatTy;
-    }
-    case FunctionTy: {
-      const TypeInfo* thisTy = this->resultTy;
-      const TypeInfo* thatTy = that.resultTy;
-      if (!thisTy->sameOldTyAs(thatTy))
-        return *thisTy < *thatTy;
-      /* FALL THROUGH */
-    }
-    case StructTy:
-    case PackedStructTy: {
-      if (elements->size() != that.elements->size())
-        return elements->size() < that.elements->size();
-      for (unsigned i = 0; i < elements->size(); i++) {
-        const TypeInfo* thisTy = (*this->elements)[i];
-        const TypeInfo* thatTy = (*that.elements)[i];
-        if (!thisTy->sameOldTyAs(thatTy))
-          return *thisTy < *thatTy;
-      }
-      break;
-    }
-    case UnresolvedTy:
-      return this->newTy < that.newTy;
-    default:
-      break;
-  }
-  return false; 
-}
-
-bool TypeInfo::sameOldTyAs(const TypeInfo* that) const {
-  if (that == 0)
-    return false;
-  if ( this == that ) 
-    return true;
-  if (oldTy != that->oldTy)
-    return false;
-  switch (oldTy) {
-    case PackedTy:
-    case ArrayTy:
-      if (nelems != that->nelems)
-        return false;
-      /* FALL THROUGH */
-    case PointerTy: {
-      const TypeInfo* thisTy = this->elemTy;
-      const TypeInfo* thatTy = that->elemTy;
-      return thisTy->sameOldTyAs(thatTy);
-    }
-    case FunctionTy: {
-      const TypeInfo* thisTy = this->resultTy;
-      const TypeInfo* thatTy = that->resultTy;
-      if (!thisTy->sameOldTyAs(thatTy))
-        return false;
-      /* FALL THROUGH */
-    }
-    case StructTy:
-    case PackedStructTy: {
-      if (elements->size() != that->elements->size())
-        return false;
-      for (unsigned i = 0; i < elements->size(); i++) {
-        const TypeInfo* thisTy = (*this->elements)[i];
-        const TypeInfo* thatTy = (*that->elements)[i];
-        if (!thisTy->sameOldTyAs(thatTy))
-          return false;
-      }
-      return true;
-    }
-    case UnresolvedTy:
-      return this->newTy == that->newTy;
-    default:
-      return true; // for all others oldTy == that->oldTy is sufficient
-  }
-  return true;
-}
-
-bool TypeInfo::isUnresolvedDeep() const {
-  switch (oldTy) {
-    case UnresolvedTy: 
-      return true;
-    case PackedTy:
-    case ArrayTy:
-    case PointerTy:
-      return elemTy->isUnresolvedDeep();
-    case PackedStructTy:
-    case StructTy:
-      for (unsigned i = 0; i < elements->size(); i++)
-        if ((*elements)[i]->isUnresolvedDeep())
-          return true;
-      return false;
-    default:
-      return false;
-  }
-}
-
-unsigned TypeInfo::getBitWidth() const {
-  switch (oldTy) {
-    default:
-    case LabelTy:
-    case VoidTy : return 0;
-    case BoolTy : return 1;
-    case SByteTy: case UByteTy : return 8;
-    case ShortTy: case UShortTy : return 16;
-    case IntTy: case UIntTy: case FloatTy: return 32;
-    case LongTy: case ULongTy: case DoubleTy : return 64;
-    case PointerTy: return SizeOfPointer; // global var
-    case PackedTy: 
-    case ArrayTy: 
-      return nelems * elemTy->getBitWidth();
-    case StructTy:
-    case PackedStructTy: {
-      uint64_t size = 0;
-      for (unsigned i = 0; i < elements->size(); i++) {
-        size += (*elements)[i]->getBitWidth();
-      }
-      return size;
-    }
-  }
-}
-
-const TypeInfo* TypeInfo::getIndexedType(const ValueInfo&  VI) const {
-  if (isStruct()) {
-    if (VI.isConstant() && VI.type->isInteger()) {
-      size_t pos = VI.val->find(' ') + 1;
-      if (pos < VI.val->size()) {
-        uint64_t idx = atoi(VI.val->substr(pos).c_str());
-        return (*elements)[idx];
-      } else {
-        yyerror("Invalid value for constant integer");
-        return 0;
-      }
-    } else {
-      yyerror("Structure requires constant index");
-      return 0;
-    }
-  }
-  if (isArray() || isPacked() || isPointer())
-    return elemTy;
-  yyerror("Invalid type for getIndexedType");
-  return 0;
-}
-
-void TypeInfo::getSignedness(unsigned &sNum, unsigned &uNum, 
-                             UpRefStack& stack) const {
-  switch (oldTy) {
-    default:
-    case OpaqueTy: case LabelTy: case VoidTy: case BoolTy: 
-    case FloatTy : case DoubleTy: case UpRefTy:
-      return;
-    case SByteTy: case ShortTy: case LongTy: case IntTy: 
-      sNum++;
-      return;
-    case UByteTy: case UShortTy: case UIntTy: case ULongTy: 
-      uNum++;
-      return;
-    case PointerTy:
-    case PackedTy: 
-    case ArrayTy:
-      stack.push_back(this);
-      elemTy->getSignedness(sNum, uNum, stack);
-      return;
-    case StructTy:
-    case PackedStructTy: {
-      stack.push_back(this);
-      for (unsigned i = 0; i < elements->size(); i++) {
-        (*elements)[i]->getSignedness(sNum, uNum, stack);
-      }
-      return;
-    }
-    case UnresolvedTy: {
-      const TypeInfo* Ty = this->resolve();
-      // Let's not recurse.
-      UpRefStack::const_iterator I = stack.begin(), E = stack.end();
-      for ( ; I != E && *I != Ty; ++I) 
-        ;
-      if (I == E)
-        Ty->getSignedness(sNum, uNum, stack);
-      return;
-    }
-  }
-}
-
-std::string AddSuffix(const std::string& Name, const std::string& Suffix) {
-  if (Name[Name.size()-1] == '"') {
-    std::string Result = Name;
-    Result.insert(Result.size()-1, Suffix);
-    return Result;
-  }
-  return Name + Suffix;
-}
-
-std::string TypeInfo::makeUniqueName(const std::string& BaseName) const {
-  if (BaseName == "\"alloca point\"")
-    return BaseName;
-  switch (oldTy) {
-    default:
-      break;
-    case OpaqueTy: case LabelTy: case VoidTy: case BoolTy: case UpRefTy:
-    case FloatTy : case DoubleTy: case UnresolvedTy:
-      return BaseName;
-    case SByteTy: case ShortTy: case LongTy: case IntTy: 
-      return AddSuffix(BaseName, ".s");
-    case UByteTy: case UShortTy: case UIntTy: case ULongTy: 
-      return AddSuffix(BaseName, ".u");
-  }
-
-  unsigned uNum = 0, sNum = 0;
-  std::string Suffix;
-  switch (oldTy) {
-    case PointerTy:
-    case PackedTy: 
-    case ArrayTy: {
-      TypeInfo::UpRefStack stack;
-      elemTy->resolve()->getSignedness(sNum, uNum, stack);
-      break;
-    }
-    case StructTy:
-    case PackedStructTy: {
-      for (unsigned i = 0; i < elements->size(); i++) {
-        TypeInfo::UpRefStack stack;
-        (*elements)[i]->resolve()->getSignedness(sNum, uNum, stack);
-      }
-      break;
-    }
-    default:
-      assert(0 && "Invalid Type");
-      break;
-  }
-
-  if (sNum == 0 && uNum == 0)
-    return BaseName;
-
-  switch (oldTy) {
-    default:             Suffix += ".nada"; break;
-    case PointerTy:      Suffix += ".pntr"; break;
-    case PackedTy:       Suffix += ".pckd"; break;
-    case ArrayTy:        Suffix += ".arry"; break;
-    case StructTy:       Suffix += ".strc"; break;
-    case PackedStructTy: Suffix += ".pstr"; break;
-  }
-
-  Suffix += ".s" + llvm::utostr(sNum);
-  Suffix += ".u" + llvm::utostr(uNum);
-  return AddSuffix(BaseName, Suffix);
-}
-
-TypeInfo& TypeInfo::operator=(const TypeInfo& that) {
-  oldTy = that.oldTy;
-  nelems = that.nelems;
-  newTy = that.newTy;
-  elemTy = that.elemTy;
-  resultTy = that.resultTy;
-  if (that.elements) {
-    elements = new TypeList(that.elements->size());
-    *elements = *that.elements;
-  } else {
-    elements = 0;
-  }
-  return *this;
-}
-
-const TypeInfo* TypeInfo::add_new_type(TypeInfo* newTy) {
-  TypeRegMap::iterator I = registry.find(newTy);
-  if (I != registry.end()) {
-    delete newTy;
-    return *I;
-  }
-  registry.insert(newTy);
-  return newTy;
-}
-
-static const char* getCastOpcode(
-  std::string& Source, const TypeInfo* SrcTy, const TypeInfo* DstTy) 
-{
-  unsigned SrcBits = SrcTy->getBitWidth();
-  unsigned DstBits = DstTy->getBitWidth();
-  const char* opcode = "bitcast";
-  // Run through the possibilities ...
-  if (DstTy->isIntegral()) {                        // Casting to integral
-    if (SrcTy->isIntegral()) {                      // Casting from integral
-      if (DstBits < SrcBits)
-        opcode = "trunc";
-      else if (DstBits > SrcBits) {                // its an extension
-        if (SrcTy->isSigned())
-          opcode ="sext";                          // signed -> SEXT
-        else
-          opcode = "zext";                         // unsigned -> ZEXT
-      } else {
-        opcode = "bitcast";                        // Same size, No-op cast
-      }
-    } else if (SrcTy->isFloatingPoint()) {          // Casting from floating pt
-      if (DstTy->isSigned()) 
-        opcode = "fptosi";                         // FP -> sint
-      else
-        opcode = "fptoui";                         // FP -> uint 
-    } else if (SrcTy->isPacked()) {
-      assert(DstBits == SrcTy->getBitWidth() &&
-               "Casting packed to integer of different width");
-        opcode = "bitcast";                        // same size, no-op cast
-    } else {
-      assert(SrcTy->isPointer() &&
-             "Casting from a value that is not first-class type");
-      opcode = "ptrtoint";                         // ptr -> int
-    }
-  } else if (DstTy->isFloatingPoint()) {           // Casting to floating pt
-    if (SrcTy->isIntegral()) {                     // Casting from integral
-      if (SrcTy->isSigned())
-        opcode = "sitofp";                         // sint -> FP
-      else
-        opcode = "uitofp";                         // uint -> FP
-    } else if (SrcTy->isFloatingPoint()) {         // Casting from floating pt
-      if (DstBits < SrcBits) {
-        opcode = "fptrunc";                        // FP -> smaller FP
-      } else if (DstBits > SrcBits) {
-        opcode = "fpext";                          // FP -> larger FP
-      } else  {
-        opcode ="bitcast";                         // same size, no-op cast
-      }
-    } else if (SrcTy->isPacked()) {
-      assert(DstBits == SrcTy->getBitWidth() &&
-             "Casting packed to floating point of different width");
-        opcode = "bitcast";                        // same size, no-op cast
-    } else {
-      assert(0 && "Casting pointer or non-first class to float");
-    }
-  } else if (DstTy->isPacked()) {
-    if (SrcTy->isPacked()) {
-      assert(DstTy->getBitWidth() == SrcTy->getBitWidth() &&
-             "Casting packed to packed of different widths");
-      opcode = "bitcast";                          // packed -> packed
-    } else if (DstTy->getBitWidth() == SrcBits) {
-      opcode = "bitcast";                          // float/int -> packed
-    } else {
-      assert(!"Illegal cast to packed (wrong type or size)");
-    }
-  } else if (DstTy->isPointer()) {
-    if (SrcTy->isPointer()) {
-      opcode = "bitcast";                          // ptr -> ptr
-    } else if (SrcTy->isIntegral()) {
-      opcode = "inttoptr";                         // int -> ptr
-    } else {
-      assert(!"Casting invalid type to pointer");
-    }
-  } else {
-    assert(!"Casting to type that is not first-class");
-  }
-  return opcode;
-}
-
-static std::string getCastUpgrade(const std::string& Src, const TypeInfo* SrcTy,
-                                  const TypeInfo* DstTy, bool isConst)
-{
-  std::string Result;
-  std::string Source = Src;
-  if (SrcTy->isFloatingPoint() && DstTy->isPointer()) {
-    // fp -> ptr cast is no longer supported but we must upgrade this
-    // by doing a double cast: fp -> int -> ptr
-    if (isConst)
-      Source = "i64 fptoui(" + Source + " to i64)";
-    else {
-      *O << "    %cast_upgrade" << unique << " = fptoui " << Source 
-         << " to i64\n";
-      Source = "i64 %cast_upgrade" + llvm::utostr(unique);
-    }
-    // Update the SrcTy for the getCastOpcode call below
-    SrcTy = TypeInfo::get("i64", ULongTy);
-  } else if (DstTy->isBool()) {
-    // cast type %x to bool was previously defined as setne type %x, null
-    // The cast semantic is now to truncate, not compare so we must retain
-    // the original intent by replacing the cast with a setne
-    const char* comparator = SrcTy->isPointer() ? ", null" : 
-      (SrcTy->isFloatingPoint() ? ", 0.0" : 
-       (SrcTy->isBool() ? ", false" : ", 0"));
-    const char* compareOp = SrcTy->isFloatingPoint() ? "fcmp one " : "icmp ne ";
-    if (isConst) { 
-      Result = "(" + Source + comparator + ")";
-      Result = compareOp + Result;
-    } else
-      Result = compareOp + Source + comparator;
-    return Result; // skip cast processing below
-  }
-  SrcTy = SrcTy->resolve();
-  DstTy = DstTy->resolve();
-  std::string Opcode(getCastOpcode(Source, SrcTy, DstTy));
-  if (isConst)
-    Result += Opcode + "( " + Source + " to " + DstTy->getNewTy() + ")";
-  else
-    Result += Opcode + " " + Source + " to " + DstTy->getNewTy();
-  return Result;
-}
-
-const char* getDivRemOpcode(const std::string& opcode, const TypeInfo* TI) {
-  const char* op = opcode.c_str();
-  const TypeInfo* Ty = TI->resolve();
-  if (Ty->isPacked())
-    Ty = Ty->getElementType();
-  if (opcode == "div")
-    if (Ty->isFloatingPoint())
-      op = "fdiv";
-    else if (Ty->isUnsigned())
-      op = "udiv";
-    else if (Ty->isSigned())
-      op = "sdiv";
-    else
-      yyerror("Invalid type for div instruction");
-  else if (opcode == "rem")
-    if (Ty->isFloatingPoint())
-      op = "frem";
-    else if (Ty->isUnsigned())
-      op = "urem";
-    else if (Ty->isSigned())
-      op = "srem";
-    else
-      yyerror("Invalid type for rem instruction");
-  return op;
-}
-
-std::string 
-getCompareOp(const std::string& setcc, const TypeInfo* TI) {
-  assert(setcc.length() == 5);
-  char cc1 = setcc[3];
-  char cc2 = setcc[4];
-  assert(cc1 == 'e' || cc1 == 'n' || cc1 == 'l' || cc1 == 'g');
-  assert(cc2 == 'q' || cc2 == 'e' || cc2 == 'e' || cc2 == 't');
-  std::string result("xcmp xxx");
-  result[6] = cc1;
-  result[7] = cc2;
-  if (TI->isFloatingPoint()) {
-    result[0] = 'f';
-    result[5] = 'o';
-    if (cc1 == 'n')
-      result[5] = 'u'; // NE maps to unordered
-    else
-      result[5] = 'o'; // everything else maps to ordered
-  } else if (TI->isIntegral() || TI->isPointer()) {
-    result[0] = 'i';
-    if ((cc1 == 'e' && cc2 == 'q') || (cc1 == 'n' && cc2 == 'e'))
-      result.erase(5,1);
-    else if (TI->isSigned())
-      result[5] = 's';
-    else if (TI->isUnsigned() || TI->isPointer() || TI->isBool())
-      result[5] = 'u';
-    else
-      yyerror("Invalid integral type for setcc");
-  }
-  return result;
-}
-
-static const TypeInfo* getFunctionReturnType(const TypeInfo* PFTy) {
-  PFTy = PFTy->resolve();
-  if (PFTy->isPointer()) {
-    const TypeInfo* ElemTy = PFTy->getElementType();
-    ElemTy = ElemTy->resolve();
-    if (ElemTy->isFunction())
-      return ElemTy->getResultType();
-  } else if (PFTy->isFunction()) {
-    return PFTy->getResultType();
-  }
-  return PFTy;
-}
-
-static const TypeInfo* ResolveUpReference(const TypeInfo* Ty, 
-                                          TypeInfo::UpRefStack* stack) {
-  assert(Ty->isUpReference() && "Can't resolve a non-upreference");
-  unsigned upref = Ty->getUpRefNum();
-  assert(upref < stack->size() && "Invalid up reference");
-  return (*stack)[upref - stack->size() - 1];
-}
-
-static const TypeInfo* getGEPIndexedType(const TypeInfo* PTy, ValueList* idxs) {
-  const TypeInfo* Result = PTy = PTy->resolve();
-  assert(PTy->isPointer() && "GEP Operand is not a pointer?");
-  TypeInfo::UpRefStack stack;
-  for (unsigned i = 0; i < idxs->size(); ++i) {
-    if (Result->isComposite()) {
-      Result = Result->getIndexedType((*idxs)[i]);
-      Result = Result->resolve();
-      stack.push_back(Result);
-    } else
-      yyerror("Invalid type for index");
-  }
-  // Resolve upreferences so we can return a more natural type
-  if (Result->isPointer()) {
-    if (Result->getElementType()->isUpReference()) {
-      stack.push_back(Result);
-      Result = ResolveUpReference(Result->getElementType(), &stack);
-    }
-  } else if (Result->isUpReference()) {
-    Result = ResolveUpReference(Result->getElementType(), &stack);
-  }
-  return Result->getPointerType();
-}
-
-
-// This function handles appending .u or .s to integer value names that
-// were previously unsigned or signed, respectively. This avoids name
-// collisions since the unsigned and signed type planes have collapsed
-// into a single signless type plane.
-static std::string getUniqueName(const std::string *Name, const TypeInfo* Ty,
-                                 bool isGlobal = false, bool isDef = false) {
-
-  // If its not a symbolic name, don't modify it, probably a constant val.
-  if ((*Name)[0] != '%' && (*Name)[0] != '"')
-    return *Name;
-
-  // If its a numeric reference, just leave it alone.
-  if (isdigit((*Name)[1]))
-    return *Name;
-
-  // Resolve the type
-  Ty = Ty->resolve(); 
-
-  // If its a global name, get its uniquified name, if any
-  GlobalsTypeMap::iterator GI = Globals.find(*Name);
-  if (GI != Globals.end()) {
-    TypePlaneMap::iterator TPI = GI->second.begin();
-    TypePlaneMap::iterator TPE = GI->second.end();
-    for ( ; TPI != TPE ; ++TPI) {
-      if (TPI->first->sameNewTyAs(Ty)) 
-        return TPI->second;
-    }
-  }
-
-  if (isGlobal) {
-    // We didn't find a global name, but if its supposed to be global then all 
-    // we can do is return the name. This is probably a forward reference of a 
-    // global value that hasn't been defined yet. Since we have no definition
-    // we don't know its linkage class. Just assume its an external and the name
-    // shouldn't change.
-    return *Name;
-  }
-
-  // Default the result to the current name
-  std::string Result = Ty->makeUniqueName(*Name);
-
-  return Result;
-}
-
-static unsigned UniqueNameCounter = 0;
-
-std::string getGlobalName(const std::string* Name, const std::string Linkage,
-                          const TypeInfo* Ty, bool isConstant) {
-  // Default to given name
-  std::string Result = *Name; 
-  // Look up the name in the Globals Map
-  GlobalsTypeMap::iterator GI = Globals.find(*Name);
-  // Did we see this global name before?
-  if (GI != Globals.end()) {
-    if (Ty->isUnresolvedDeep()) {
-      // The Gval's type is unresolved. Consequently, we can't disambiguate it
-      // by type. We'll just change its name and emit a warning.
-      warning("Cannot disambiguate global value '" + *Name + 
-              "' because type '" + Ty->getNewTy() + "'is unresolved.\n");
-      Result = *Name + ".unique";
-      UniqueNameCounter++;
-      Result += llvm::utostr(UniqueNameCounter);
-      return Result;
-    } else {
-      TypePlaneMap::iterator TPI = GI->second.find(Ty);
-      if (TPI != GI->second.end()) {
-        // We found an existing name of the same old type. This isn't allowed 
-        // in LLVM 2.0. Consequently, we must alter the name of the global so it
-        // can at least compile. References to the global will yield the first
-        // definition, which is okay. We also must warn about this.
-        Result = *Name + ".unique";
-        UniqueNameCounter++;
-        Result += llvm::utostr(UniqueNameCounter);
-        warning(std::string("Global variable '") + *Name + "' was renamed to '"+
-                Result + "'");
-      } else { 
-        // There isn't an existing definition for this name according to the
-        // old types. Now search the TypePlanMap for types with the same new
-        // name. 
-        TypePlaneMap::iterator TPI = GI->second.begin();
-        TypePlaneMap::iterator TPE = GI->second.end();
-        for ( ; TPI != TPE; ++TPI) {
-          if (TPI->first->sameNewTyAs(Ty)) {
-            // The new types are the same but the old types are different so 
-            // this is a global name collision resulting from type planes 
-            // collapsing. 
-            if (Linkage == "external" || Linkage == "dllimport" || 
-                Linkage == "extern_weak" || Linkage == "") {
-              // The linkage of this gval is external so we can't reliably 
-              // rename it because it could potentially create a linking 
-              // problem.  However, we can't leave the name conflict in the 
-              // output either or it won't assemble with LLVM 2.0.  So, all we 
-              // can do is rename this one to something unique and emit a 
-              // warning about the problem.
-              Result = *Name + ".unique";
-              UniqueNameCounter++;
-              Result += llvm::utostr(UniqueNameCounter);
-              warning("Renaming global value '" + *Name + "' to '" + Result + 
-                      "' may cause linkage errors.");
-              return Result;
-            } else {
-              // Its linkage is internal and its type is known so we can 
-              // disambiguate the name collision successfully based on the type.
-              Result = getUniqueName(Name, Ty);
-              TPI->second = Result;
-              return Result;
-            }
-          }
-        }
-        // We didn't find an entry in the type plane with the same new type and
-        // the old types differ so this is a new type plane for this global 
-        // variable. We just fall through to the logic below which inserts
-        // the global.
-      }
-    }
-  }
-
-  // Its a new global name, if it is external we can't change it
-  if (isConstant || Linkage == "external" || Linkage == "dllimport" || 
-      Linkage == "extern_weak" || Linkage == "") {
-    Globals[Result][Ty] = Result;
-    return Result;
-  }
-
-  // Its a new global name, and it is internal, change the name to make it
-  // unique for its type.
-  // Result = getUniqueName(Name, Ty);
-  Globals[*Name][Ty] = Result;
-  return Result;
-}
-
-
-/* Enabling traces.  */
-#ifndef YYDEBUG
-# define YYDEBUG 0
-#endif
-
-/* Enabling verbose error messages.  */
-#ifdef YYERROR_VERBOSE
-# undef YYERROR_VERBOSE
-# define YYERROR_VERBOSE 1
-#else
-# define YYERROR_VERBOSE 0
-#endif
-
-/* Enabling the token table.  */
-#ifndef YYTOKEN_TABLE
-# define YYTOKEN_TABLE 0
-#endif
-
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 802 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-typedef union YYSTYPE {
-  std::string*    String;
-  const TypeInfo* Type;
-  ValueInfo       Value;
-  ConstInfo       Const;
-  ValueList*      ValList;
-  TypeList*       TypeVec;
-} YYSTYPE;
-/* Line 196 of yacc.c.  */
-#line 1188 "UpgradeParser.tab.c"
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
-# define YYSTYPE_IS_TRIVIAL 1
-#endif
-
-
-
-/* Copy the second part of user declarations.  */
-
-
-/* Line 219 of yacc.c.  */
-#line 1200 "UpgradeParser.tab.c"
-
-#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
-# define YYSIZE_T __SIZE_TYPE__
-#endif
-#if ! defined (YYSIZE_T) && defined (size_t)
-# define YYSIZE_T size_t
-#endif
-#if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus))
-# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
-# define YYSIZE_T size_t
-#endif
-#if ! defined (YYSIZE_T)
-# define YYSIZE_T unsigned int
-#endif
-
-#ifndef YY_
-# if YYENABLE_NLS
-#  if ENABLE_NLS
-#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
-#   define YY_(msgid) dgettext ("bison-runtime", msgid)
-#  endif
-# endif
-# ifndef YY_
-#  define YY_(msgid) msgid
-# endif
-#endif
-
-#if ! defined (yyoverflow) || YYERROR_VERBOSE
-
-/* The parser invokes alloca or malloc; define the necessary symbols.  */
-
-# ifdef YYSTACK_USE_ALLOCA
-#  if YYSTACK_USE_ALLOCA
-#   ifdef __GNUC__
-#    define YYSTACK_ALLOC __builtin_alloca
-#   else
-#    define YYSTACK_ALLOC alloca
-#    if defined (__STDC__) || defined (__cplusplus)
-#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-#     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 (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 2005 */
-#  endif
-# else
-#  define YYSTACK_ALLOC YYMALLOC
-#  define YYSTACK_FREE YYFREE
-#  ifndef YYSTACK_ALLOC_MAXIMUM
-#   define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1)
-#  endif
-#  ifdef __cplusplus
-extern "C" {
-#  endif
-#  ifndef YYMALLOC
-#   define YYMALLOC malloc
-#   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 (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 */
-
-
-#if (! defined (yyoverflow) \
-     && (! defined (__cplusplus) \
-        || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
-
-/* A type that is properly aligned for any stack member.  */
-union yyalloc
-{
-  short int yyss;
-  YYSTYPE yyvs;
-  };
-
-/* The size of the maximum gap between one aligned stack and the next.  */
-# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
-
-/* The size of an array large to enough to hold all stacks, each with
-   N elements.  */
-# define YYSTACK_BYTES(N) \
-     ((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__
-#   define YYCOPY(To, From, Count) \
-      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
-#  else
-#   define YYCOPY(To, From, Count)             \
-      do                                       \
-       {                                       \
-         YYSIZE_T yyi;                         \
-         for (yyi = 0; yyi < (Count); yyi++)   \
-           (To)[yyi] = (From)[yyi];            \
-       }                                       \
-      while (0)
-#  endif
-# endif
-
-/* Relocate STACK from its old location to the new one.  The
-   local variables YYSIZE and YYSTACKSIZE give the old and new number of
-   elements in the stack, and YYPTR gives the new location of the
-   stack.  Advance YYPTR to a properly aligned location for the next
-   stack.  */
-# define YYSTACK_RELOCATE(Stack)                                       \
-    do                                                                 \
-      {                                                                        \
-       YYSIZE_T yynewbytes;                                            \
-       YYCOPY (&yyptr->Stack, Stack, yysize);                          \
-       Stack = &yyptr->Stack;                                          \
-       yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
-       yyptr += yynewbytes / sizeof (*yyptr);                          \
-      }                                                                        \
-    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. */
-#define YYFINAL  4
-/* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   1486
-
-/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS  165
-/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS  75
-/* YYNRULES -- Number of rules. */
-#define YYNRULES  301
-/* YYNRULES -- Number of states. */
-#define YYNSTATES  586
-
-/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
-#define YYUNDEFTOK  2
-#define YYMAXUTOK   405
-
-#define YYTRANSLATE(YYX)                                               \
-  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
-
-/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
-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,
-     154,   155,   163,     2,   152,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     159,   151,   160,     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,   156,   153,   158,     2,     2,     2,     2,     2,   164,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     157,     2,     2,   161,     2,   162,     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,     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,     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,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
-       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
-      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
-      25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
-      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
-      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
-      55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
-      65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
-      75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
-      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
-      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,   134,
-     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
-     145,   146,   147,   148,   149,   150
-};
-
-#if YYDEBUG
-/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
-   YYRHS.  */
-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,
-      39,    41,    43,    45,    47,    49,    51,    53,    55,    57,
-      59,    61,    63,    65,    67,    69,    71,    73,    75,    77,
-      79,    81,    83,    85,    87,    89,    91,    93,    95,    97,
-      99,   101,   103,   105,   107,   109,   111,   113,   115,   117,
-     119,   121,   123,   125,   127,   129,   131,   133,   135,   137,
-     139,   141,   143,   145,   147,   149,   151,   153,   155,   157,
-     159,   161,   164,   165,   167,   169,   171,   173,   175,   177,
-     179,   180,   182,   184,   186,   188,   190,   192,   195,   196,
-     197,   200,   201,   205,   208,   209,   211,   212,   216,   218,
-     221,   223,   225,   227,   229,   231,   233,   235,   237,   239,
-     241,   243,   245,   247,   249,   251,   253,   255,   257,   259,
-     261,   264,   269,   275,   281,   285,   288,   294,   299,   302,
-     304,   308,   310,   314,   316,   317,   322,   326,   330,   335,
-     340,   344,   347,   350,   353,   356,   359,   362,   365,   368,
-     371,   374,   381,   387,   396,   403,   410,   417,   425,   433,
-     440,   447,   456,   465,   469,   471,   473,   475,   477,   480,
-     483,   488,   491,   493,   495,   497,   502,   505,   510,   517,
-     524,   531,   538,   542,   547,   548,   550,   552,   554,   558,
-     562,   566,   570,   574,   578,   580,   581,   583,   585,   587,
-     588,   591,   595,   597,   599,   603,   605,   606,   615,   617,
-     619,   623,   625,   627,   631,   632,   634,   636,   640,   641,
-     643,   645,   647,   649,   651,   653,   655,   657,   659,   663,
-     665,   671,   673,   675,   677,   679,   682,   685,   687,   690,
-     693,   694,   696,   698,   700,   703,   706,   710,   720,   730,
-     739,   754,   756,   758,   765,   771,   774,   781,   789,   791,
-     795,   797,   798,   801,   803,   809,   815,   821,   828,   835,
-     838,   843,   848,   855,   860,   865,   872,   879,   882,   890,
-     892,   895,   896,   898,   899,   903,   910,   914,   921,   924,
-     929,   936
-};
-
-/* YYRHS -- A `-1'-separated list of the rules' RHS. */
-static const short int yyrhs[] =
-{
-     199,     0,    -1,    19,    -1,    20,    -1,    17,    -1,    18,
-      -1,    80,    -1,    81,    -1,    82,    -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,   102,    -1,   103,    -1,   104,    -1,   105,    -1,   106,
-      -1,   107,    -1,   118,    -1,   119,    -1,   120,    -1,   121,
-      -1,   108,    -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,   121,    -1,    25,
-      -1,    26,    -1,   130,    -1,   131,    -1,   132,    -1,   133,
-      -1,   139,    -1,   140,    -1,   141,    -1,   142,    -1,   143,
-      -1,   144,    -1,   145,    -1,   146,    -1,   147,    -1,   148,
-      -1,   149,    -1,   150,    -1,   138,    -1,    11,    -1,     9,
-      -1,     7,    -1,     5,    -1,    12,    -1,    10,    -1,     8,
-      -1,     6,    -1,   175,    -1,   176,    -1,    13,    -1,    14,
-      -1,   208,   151,    -1,    -1,    42,    -1,    43,    -1,    44,
-      -1,    48,    -1,    45,    -1,    46,    -1,    47,    -1,    -1,
-      66,    -1,    67,    -1,    68,    -1,    69,    -1,    70,    -1,
-      71,    -1,    65,    18,    -1,    -1,    -1,    57,    18,    -1,
-      -1,   152,    57,    18,    -1,    37,    30,    -1,    -1,   184,
-      -1,    -1,   152,   187,   186,    -1,   184,    -1,    57,    18,
-      -1,   190,    -1,     3,    -1,   192,    -1,     3,    -1,   192,
-      -1,     4,    -1,     5,    -1,     6,    -1,     7,    -1,     8,
-      -1,     9,    -1,    10,    -1,    11,    -1,    12,    -1,    13,
-      -1,    14,    -1,    15,    -1,    16,    -1,   222,    -1,   191,
-      -1,   153,    18,    -1,   189,   154,   194,   155,    -1,   156,
-      18,   157,   192,   158,    -1,   159,    18,   157,   192,   160,
-      -1,   161,   193,   162,    -1,   161,   162,    -1,   159,   161,
-     193,   162,   160,    -1,   159,   161,   162,   160,    -1,   192,
-     163,    -1,   192,    -1,   193,   152,   192,    -1,   193,    -1,
-     193,   152,    40,    -1,    40,    -1,    -1,   190,   156,   197,
-     158,    -1,   190,   156,   158,    -1,   190,   164,    30,    -1,
-     190,   159,   197,   160,    -1,   190,   161,   197,   162,    -1,
-     190,   161,   162,    -1,   190,    22,    -1,   190,    23,    -1,
-     190,   222,    -1,   190,   196,    -1,   190,    24,    -1,   175,
-     167,    -1,   176,   167,    -1,     4,    25,    -1,     4,    26,
-      -1,   178,    21,    -1,   174,   154,   195,    39,   190,   155,
-      -1,   127,   154,   195,   237,   155,    -1,   129,   154,   195,
-     152,   195,   152,   195,   155,    -1,   168,   154,   195,   152,
-     195,   155,    -1,   169,   154,   195,   152,   195,   155,    -1,
-     170,   154,   195,   152,   195,   155,    -1,   100,   171,   154,
-     195,   152,   195,   155,    -1,   101,   172,   154,   195,   152,
-     195,   155,    -1,   173,   154,   195,   152,   195,   155,    -1,
-     135,   154,   195,   152,   195,   155,    -1,   136,   154,   195,
-     152,   195,   152,   195,   155,    -1,   137,   154,   195,   152,
-     195,   152,   195,   155,    -1,   197,   152,   195,    -1,   195,
-      -1,    35,    -1,    36,    -1,   200,    -1,   200,   217,    -1,
-     200,   219,    -1,   200,    63,    62,   203,    -1,   200,    31,
-      -1,   202,    -1,    50,    -1,    58,    -1,   202,   179,    27,
-     188,    -1,   202,   219,    -1,   202,    63,    62,   203,    -1,
-     202,   179,   180,   198,   195,   186,    -1,   202,   179,   201,
-     198,   190,   186,    -1,   202,   179,    45,   198,   190,   186,
-      -1,   202,   179,    47,   198,   190,   186,    -1,   202,    51,
-     205,    -1,   202,    59,   151,   206,    -1,    -1,    30,    -1,
-      56,    -1,    55,    -1,    53,   151,   204,    -1,    54,   151,
-      18,    -1,    52,   151,    30,    -1,    72,   151,    30,    -1,
-     156,   207,   158,    -1,   207,   152,    30,    -1,    30,    -1,
-      -1,    28,    -1,    30,    -1,   208,    -1,    -1,   190,   209,
-      -1,   211,   152,   210,    -1,   210,    -1,   211,    -1,   211,
-     152,    40,    -1,    40,    -1,    -1,   181,   188,   208,   154,
-     212,   155,   185,   182,    -1,    32,    -1,   161,    -1,   180,
-     213,   214,    -1,    33,    -1,   162,    -1,   215,   225,   216,
-      -1,    -1,    45,    -1,    47,    -1,    34,   218,   213,    -1,
-      -1,    64,    -1,    17,    -1,    18,    -1,    21,    -1,    25,
-      -1,    26,    -1,    22,    -1,    23,    -1,    24,    -1,   159,
-     197,   160,    -1,   196,    -1,    62,   220,    30,   152,    30,
-      -1,   166,    -1,   208,    -1,   222,    -1,   221,    -1,   190,
-     223,    -1,   225,   226,    -1,   226,    -1,   227,   229,    -1,
-     227,   231,    -1,    -1,    29,    -1,    78,    -1,    77,    -1,
-      73,   224,    -1,    73,     3,    -1,    74,    15,   223,    -1,
-      74,     4,   223,   152,    15,   223,   152,    15,   223,    -1,
-      75,   177,   223,   152,    15,   223,   156,   230,   158,    -1,
-      75,   177,   223,   152,    15,   223,   156,   158,    -1,   179,
-      76,   181,   188,   223,   154,   234,   155,    39,    15,   223,
-     228,    15,   223,    -1,   228,    -1,    79,    -1,   230,   177,
-     221,   152,    15,   223,    -1,   177,   221,   152,    15,   223,
-      -1,   179,   236,    -1,   190,   156,   223,   152,   223,   158,
-      -1,   232,   152,   156,   223,   152,   223,   158,    -1,   224,
-      -1,   233,   152,   224,    -1,   233,    -1,    -1,    61,    60,
-      -1,    60,    -1,   168,   190,   223,   152,   223,    -1,   169,
-     190,   223,   152,   223,    -1,   170,   190,   223,   152,   223,
-      -1,   100,   171,   190,   223,   152,   223,    -1,   101,   172,
-     190,   223,   152,   223,    -1,    49,   224,    -1,   173,   224,
-     152,   224,    -1,   174,   224,    39,   190,    -1,   129,   224,
-     152,   224,   152,   224,    -1,   134,   224,   152,   190,    -1,
-     135,   224,   152,   224,    -1,   136,   224,   152,   224,   152,
-     224,    -1,   137,   224,   152,   224,   152,   224,    -1,   128,
-     232,    -1,   235,   181,   188,   223,   154,   234,   155,    -1,
-     239,    -1,   152,   233,    -1,    -1,    38,    -1,    -1,   122,
-     190,   183,    -1,   122,   190,   152,    10,   223,   183,    -1,
-     123,   190,   183,    -1,   123,   190,   152,    10,   223,   183,
-      -1,   124,   224,    -1,   238,   125,   190,   223,    -1,   238,
-     126,   224,   152,   190,   223,    -1,   127,   190,   223,   237,
-      -1
-};
-
-/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
-static const unsigned short int yyrline[] =
-{
-       0,   867,   867,   867,   868,   868,   872,   872,   872,   872,
-     872,   872,   872,   873,   873,   873,   873,   874,   874,   874,
-     875,   875,   875,   875,   875,   875,   876,   876,   876,   876,
-     876,   876,   876,   876,   876,   876,   877,   877,   877,   877,
-     877,   877,   877,   877,   877,   877,   878,   878,   878,   878,
-     878,   878,   879,   879,   879,   879,   880,   880,   880,   880,
-     880,   880,   880,   881,   881,   881,   881,   881,   881,   886,
-     886,   886,   886,   887,   887,   887,   887,   888,   888,   889,
-     889,   892,   895,   900,   900,   900,   900,   900,   900,   901,
-     902,   905,   905,   905,   905,   905,   906,   907,   912,   917,
-     918,   921,   922,   930,   936,   937,   940,   941,   950,   951,
-     964,   964,   965,   965,   966,   970,   970,   970,   970,   970,
-     970,   970,   971,   971,   971,   971,   971,   973,   976,   979,
-     982,   986,   999,  1005,  1011,  1021,  1024,  1034,  1037,  1045,
-    1049,  1056,  1057,  1062,  1067,  1077,  1083,  1088,  1094,  1100,
-    1106,  1111,  1117,  1123,  1130,  1136,  1142,  1148,  1154,  1160,
-    1166,  1174,  1188,  1200,  1205,  1211,  1216,  1222,  1227,  1232,
-    1240,  1245,  1250,  1260,  1265,  1270,  1270,  1280,  1285,  1288,
-    1293,  1297,  1301,  1303,  1303,  1306,  1316,  1321,  1326,  1336,
-    1346,  1356,  1366,  1371,  1376,  1381,  1383,  1383,  1386,  1391,
-    1398,  1403,  1410,  1417,  1422,  1423,  1431,  1431,  1432,  1432,
-    1434,  1443,  1447,  1451,  1454,  1459,  1462,  1465,  1483,  1484,
-    1487,  1498,  1499,  1501,  1510,  1511,  1512,  1516,  1529,  1530,
-    1533,  1533,  1533,  1533,  1533,  1533,  1533,  1534,  1535,  1540,
-    1541,  1550,  1550,  1554,  1559,  1569,  1578,  1581,  1589,  1593,
-    1598,  1601,  1607,  1607,  1609,  1614,  1619,  1624,  1632,  1640,
-    1647,  1669,  1674,  1680,  1686,  1694,  1712,  1720,  1729,  1733,
-    1740,  1741,  1745,  1750,  1753,  1762,  1770,  1779,  1787,  1795,
-    1800,  1809,  1837,  1843,  1849,  1856,  1862,  1868,  1874,  1902,
-    1907,  1908,  1912,  1913,  1916,  1924,  1933,  1941,  1950,  1956,
-    1965,  1974
-};
-#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. */
-static const char *const yytname[] =
-{
-  "$end", "error", "$undefined", "VOID", "BOOL", "SBYTE", "UBYTE",
-  "SHORT", "USHORT", "INT", "UINT", "LONG", "ULONG", "FLOAT", "DOUBLE",
-  "LABEL", "OPAQUE", "ESINT64VAL", "EUINT64VAL", "SINTVAL", "UINTVAL",
-  "FPVAL", "NULL_TOK", "UNDEF", "ZEROINITIALIZER", "TRUETOK", "FALSETOK",
-  "TYPE", "VAR_ID", "LABELSTR", "STRINGCONSTANT", "IMPLEMENTATION",
-  "BEGINTOK", "ENDTOK", "DECLARE", "GLOBAL", "CONSTANT", "SECTION",
-  "VOLATILE", "TO", "DOTDOTDOT", "CONST", "INTERNAL", "LINKONCE", "WEAK",
-  "DLLIMPORT", "DLLEXPORT", "EXTERN_WEAK", "APPENDING", "NOT", "EXTERNAL",
-  "TARGET", "TRIPLE", "ENDIAN", "POINTERSIZE", "LITTLE", "BIG", "ALIGN",
-  "UNINITIALIZED", "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", "EXCEPT", "UNWIND", "UNREACHABLE",
-  "ADD", "SUB", "MUL", "DIV", "UDIV", "SDIV", "FDIV", "REM", "UREM",
-  "SREM", "FREM", "AND", "OR", "XOR", "SETLE", "SETGE", "SETLT", "SETGT",
-  "SETEQ", "SETNE", "ICMP", "FCMP", "EQ", "NE", "SLT", "SGT", "SLE", "SGE",
-  "OEQ", "ONE", "OLT", "OGT", "OLE", "OGE", "ORD", "UNO", "UEQ", "UNE",
-  "ULT", "UGT", "ULE", "UGE", "MALLOC", "ALLOCA", "FREE", "LOAD", "STORE",
-  "GETELEMENTPTR", "PHI_TOK", "SELECT", "SHL", "SHR", "ASHR", "LSHR",
-  "VAARG", "EXTRACTELEMENT", "INSERTELEMENT", "SHUFFLEVECTOR", "CAST",
-  "TRUNC", "ZEXT", "SEXT", "FPTRUNC", "FPEXT", "FPTOUI", "FPTOSI",
-  "UITOFP", "SITOFP", "PTRTOINT", "INTTOPTR", "BITCAST", "'='", "','",
-  "'\\\\'", "'('", "')'", "'['", "'x'", "']'", "'<'", "'>'", "'{'", "'}'",
-  "'*'", "'c'", "$accept", "IntVal", "EInt64Val", "ArithmeticOps",
-  "LogicalOps", "SetCondOps", "IPredicates", "FPredicates", "ShiftOps",
-  "CastOps", "SIntType", "UIntType", "IntType", "FPType", "OptAssign",
-  "OptLinkage", "OptCallingConv", "OptAlign", "OptCAlign", "SectionString",
-  "OptSection", "GlobalVarAttributes", "GlobalVarAttribute", "TypesV",
-  "UpRTypesV", "Types", "PrimType", "UpRTypes", "TypeListI",
-  "ArgTypeListI", "ConstVal", "ConstExpr", "ConstVector", "GlobalType",
-  "Module", "DefinitionList", "External", "ConstPool", "AsmBlock",
-  "BigOrLittle", "TargetDefinition", "LibrariesDefinition", "LibList",
-  "Name", "OptName", "ArgVal", "ArgListH", "ArgList", "FunctionHeaderH",
-  "BEGIN", "FunctionHeader", "END", "Function", "FnDeclareLinkage",
-  "FunctionProto", "OptSideEffect", "ConstValueRef", "SymbolicValueRef",
-  "ValueRef", "ResolvedVal", "BasicBlockList", "BasicBlock",
-  "InstructionList", "Unwind", "BBTerminatorInst", "JumpTable", "Inst",
-  "PHIList", "ValueRefList", "ValueRefListE", "OptTailCall", "InstVal",
-  "IndexList", "OptVolatile", "MemoryInst", 0
-};
-#endif
-
-# ifdef YYPRINT
-/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
-   token YYLEX-NUM.  */
-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,
-     275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
-     285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
-     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
-     305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
-     315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
-     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
-     335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
-     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
-     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,   389,   390,   391,   392,   393,   394,
-     395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
-     405,    61,    44,    92,    40,    41,    91,   120,    93,    60,
-      62,   123,   125,    42,    99
-};
-# endif
-
-/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
-static const unsigned char yyr1[] =
-{
-       0,   165,   166,   166,   167,   167,   168,   168,   168,   168,
-     168,   168,   168,   168,   168,   168,   168,   169,   169,   169,
-     170,   170,   170,   170,   170,   170,   171,   171,   171,   171,
-     171,   171,   171,   171,   171,   171,   172,   172,   172,   172,
-     172,   172,   172,   172,   172,   172,   172,   172,   172,   172,
-     172,   172,   173,   173,   173,   173,   174,   174,   174,   174,
-     174,   174,   174,   174,   174,   174,   174,   174,   174,   175,
-     175,   175,   175,   176,   176,   176,   176,   177,   177,   178,
-     178,   179,   179,   180,   180,   180,   180,   180,   180,   180,
-     180,   181,   181,   181,   181,   181,   181,   181,   181,   182,
-     182,   183,   183,   184,   185,   185,   186,   186,   187,   187,
-     188,   188,   189,   189,   190,   191,   191,   191,   191,   191,
-     191,   191,   191,   191,   191,   191,   191,   192,   192,   192,
-     192,   192,   192,   192,   192,   192,   192,   192,   192,   193,
-     193,   194,   194,   194,   194,   195,   195,   195,   195,   195,
-     195,   195,   195,   195,   195,   195,   195,   195,   195,   195,
-     195,   196,   196,   196,   196,   196,   196,   196,   196,   196,
-     196,   196,   196,   197,   197,   198,   198,   199,   200,   200,
-     200,   200,   200,   201,   201,   202,   202,   202,   202,   202,
-     202,   202,   202,   202,   202,   203,   204,   204,   205,   205,
-     205,   205,   206,   207,   207,   207,   208,   208,   209,   209,
-     210,   211,   211,   212,   212,   212,   212,   213,   214,   214,
-     215,   216,   216,   217,   218,   218,   218,   219,   220,   220,
-     221,   221,   221,   221,   221,   221,   221,   221,   221,   221,
-     221,   222,   222,   223,   223,   224,   225,   225,   226,   227,
-     227,   227,   228,   228,   229,   229,   229,   229,   229,   229,
-     229,   229,   229,   230,   230,   231,   232,   232,   233,   233,
-     234,   234,   235,   235,   236,   236,   236,   236,   236,   236,
-     236,   236,   236,   236,   236,   236,   236,   236,   236,   236,
-     237,   237,   238,   238,   239,   239,   239,   239,   239,   239,
-     239,   239
-};
-
-/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
-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,
-       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,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     2,     0,     1,     1,     1,     1,     1,     1,     1,
-       0,     1,     1,     1,     1,     1,     1,     2,     0,     0,
-       2,     0,     3,     2,     0,     1,     0,     3,     1,     2,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       2,     4,     5,     5,     3,     2,     5,     4,     2,     1,
-       3,     1,     3,     1,     0,     4,     3,     3,     4,     4,
-       3,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     6,     5,     8,     6,     6,     6,     7,     7,     6,
-       6,     8,     8,     3,     1,     1,     1,     1,     2,     2,
-       4,     2,     1,     1,     1,     4,     2,     4,     6,     6,
-       6,     6,     3,     4,     0,     1,     1,     1,     3,     3,
-       3,     3,     3,     3,     1,     0,     1,     1,     1,     0,
-       2,     3,     1,     1,     3,     1,     0,     8,     1,     1,
-       3,     1,     1,     3,     0,     1,     1,     3,     0,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     3,     1,
-       5,     1,     1,     1,     1,     2,     2,     1,     2,     2,
-       0,     1,     1,     1,     2,     2,     3,     9,     9,     8,
-      14,     1,     1,     6,     5,     2,     6,     7,     1,     3,
-       1,     0,     2,     1,     5,     5,     5,     6,     6,     2,
-       4,     4,     6,     4,     4,     6,     6,     2,     7,     1,
-       2,     0,     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 unsigned short int yydefact[] =
-{
-     194,     0,    90,   182,     1,   181,   224,    83,    84,    85,
-      87,    88,    89,    86,     0,    98,   250,   178,   179,   206,
-     207,     0,     0,     0,    90,     0,   186,   225,   226,    98,
-       0,     0,    91,    92,    93,    94,    95,    96,     0,     0,
-     251,   250,   247,    82,     0,     0,     0,     0,   192,     0,
-       0,     0,     0,     0,   183,   184,     0,     0,    81,   227,
-     195,   180,    97,   111,   115,   116,   117,   118,   119,   120,
-     121,   122,   123,   124,   125,   126,   127,     2,     3,     0,
-       0,     0,     0,   241,     0,     0,   110,   129,   114,   242,
-     128,   218,   219,   220,   221,   222,   223,   246,     0,     0,
-       0,   253,   252,   262,   293,   261,   248,   249,     0,     0,
-       0,     0,   205,   193,   187,   185,   175,   176,     0,     0,
-       0,     0,   130,     0,     0,     0,   113,   135,   139,     0,
-       0,   144,   138,   255,     0,   254,     0,     0,    72,    76,
-      71,    75,    70,    74,    69,    73,    77,    78,     0,   292,
-       0,   273,     0,    98,     6,     7,     8,     9,    10,    11,
-      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
-      22,    23,    24,    25,     0,     0,     0,     0,     0,     0,
-       0,     0,    52,    53,    54,    55,     0,     0,     0,     0,
-      68,    56,    57,    58,    59,    60,    61,    62,    63,    64,
-      65,    66,    67,     0,     0,     0,     0,     0,    98,   265,
-       0,   289,   200,   197,   196,   198,   199,   201,   204,     0,
-     106,   106,   115,   116,   117,   118,   119,   120,   121,   122,
-     123,   124,   125,     0,     0,     0,     0,   106,   106,     0,
-       0,     0,     0,     0,   134,   216,   143,   141,     0,   230,
-     231,   232,   235,   236,   237,   233,   234,   228,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   239,   244,   243,   245,     0,   256,     0,   279,   272,
-       0,    26,    27,    28,    29,    30,    31,    32,    33,    34,
-      35,     0,    50,    51,    36,    37,    38,    39,    40,    41,
-      42,    43,    44,    45,    46,    47,    48,    49,     0,   101,
-     101,   298,     0,     0,   287,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,   202,
-       0,   190,   191,   158,   159,     4,     5,   156,   157,   160,
-     151,   152,   155,     0,     0,     0,     0,   154,   153,   188,
-     189,   112,   112,   137,     0,   140,   215,   209,   212,   213,
-       0,     0,   131,   229,     0,     0,     0,     0,     0,     0,
-       0,     0,   174,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   294,     0,   296,   291,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   203,     0,     0,   108,   106,   146,
-       0,     0,   150,     0,   147,   132,   133,   136,   208,   210,
-       0,   104,   142,     0,     0,     0,   291,     0,     0,     0,
-       0,     0,   238,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   301,     0,     0,
-       0,   283,   284,     0,     0,     0,     0,     0,   280,   281,
-       0,   299,     0,   103,   109,   107,   145,   148,   149,   214,
-     211,   105,    99,     0,     0,     0,     0,     0,     0,     0,
-       0,   173,     0,     0,     0,     0,     0,     0,     0,   271,
-       0,     0,   101,   102,   101,   268,   290,     0,     0,     0,
-       0,     0,   274,   275,   276,   271,     0,     0,   217,   240,
-       0,     0,   162,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   270,     0,   277,   278,     0,   295,
-     297,     0,     0,     0,   282,   285,   286,     0,   300,   100,
-       0,     0,     0,   170,     0,     0,   164,   165,   166,   169,
-     161,     0,   259,     0,     0,     0,   269,   266,     0,   288,
-     167,   168,     0,     0,     0,   257,     0,   258,     0,     0,
-     267,   163,   171,   172,     0,     0,     0,     0,     0,     0,
-     264,     0,     0,   263,     0,   260
-};
-
-/* YYDEFGOTO[NTERM-NUM]. */
-static const short int yydefgoto[] =
-{
-      -1,    83,   337,   266,   267,   268,   291,   308,   269,   270,
-     233,   234,   148,   235,    24,    15,    38,   508,   385,   407,
-     472,   331,   408,    84,    85,   236,    87,    88,   129,   248,
-     372,   271,   373,   118,     1,     2,    57,     3,    61,   215,
-      48,   113,   219,    89,   419,   358,   359,   360,    39,    93,
-      16,    96,    17,    29,    18,   364,   272,    90,   274,   495,
-      41,    42,    43,   105,   106,   554,   107,   314,   524,   525,
-     208,   209,   447,   210,   211
-};
-
-/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
-   STATE-NUM.  */
-#define YYPACT_NINF -513
-static const short int yypact[] =
-{
-    -513,    46,   217,   541,  -513,  -513,    82,  -513,  -513,  -513,
-    -513,  -513,  -513,  -513,    16,   111,    25,  -513,  -513,  -513,
-    -513,    34,   -55,    61,    26,   -23,  -513,  -513,  -513,   111,
-     132,   146,  -513,  -513,  -513,  -513,  -513,  -513,   873,   -26,
-    -513,   -18,  -513,    47,    19,    23,    39,    67,  -513,    77,
-     132,   873,    81,    81,  -513,  -513,    81,    81,  -513,  -513,
-    -513,  -513,  -513,    89,  -513,  -513,  -513,  -513,  -513,  -513,
-    -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,   227,
-     229,    -9,   506,  -513,   133,    95,  -513,  -513,  -111,  -513,
-    -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,   901,    36,
-     148,  -513,  -513,  -513,  1336,  -513,  -513,  -513,   222,    76,
-     250,   239,   241,  -513,  -513,  -513,  -513,  -513,   933,   933,
-     963,   933,  -513,   115,   116,   614,  -513,  -513,  -111,  -104,
-     120,   216,  -513,    89,  1134,  -513,  1134,  1134,  -513,  -513,
-    -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  1134,  -513,
-     933,  -513,   218,   111,  -513,  -513,  -513,  -513,  -513,  -513,
-    -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,
-    -513,  -513,  -513,  -513,   195,    84,   933,   933,   933,   933,
-     933,   933,  -513,  -513,  -513,  -513,   933,   933,   933,   933,
-    -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,
-    -513,  -513,  -513,   933,   933,   933,   933,   933,   111,  -513,
-      11,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,   -93,
-     129,   129,   121,   166,   169,   191,   193,   220,   223,   237,
-     240,   261,   263,   249,   249,   264,  1045,   129,   129,   933,
-     933,   126,   -73,   933,  -513,   701,  -513,   138,   136,  -513,
-    -513,  -513,  -513,  -513,  -513,  -513,  -513,   228,   195,    84,
-     140,   150,   154,   156,   158,   963,   167,   168,   170,   171,
-     172,  -513,  -513,  -513,  -513,   175,  -513,   176,  -513,  -513,
-     873,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,
-    -513,   933,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,
-    -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,   933,   177,
-     178,  -513,  1134,   164,   179,   182,   183,   184,   186,   188,
-    1134,  1134,  1134,   189,   284,   873,   933,   933,   312,  -513,
-      -8,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,  -513,
-    -513,  -513,  -513,   741,   963,   673,   314,  -513,  -513,  -513,
-    -513,  -113,   -99,  -513,   185,  -111,  -513,   133,  -513,   194,
-     192,   774,  -513,  -513,   318,   198,   205,   963,   963,   963,
-     963,   963,  -513,   -58,   963,   963,   963,   963,   963,   345,
-     348,  1134,  1134,  1134,    -2,  -513,     9,  -513,   212,  1134,
-     209,   933,   933,   933,   933,   933,   214,   215,   219,   933,
-     933,  1134,  1134,   221,  -513,   338,   352,  -513,   129,  -513,
-     -61,   -57,  -513,   -70,  -513,  -513,  -513,  -513,  -513,  -513,
-     833,   337,  -513,   224,   963,   963,   212,   231,   235,   236,
-     238,   963,  -513,   242,   243,   244,   245,   342,  1134,  1134,
-     247,   251,   252,  1134,   371,  1134,   933,  -513,   253,  1134,
-     254,  -513,  -513,   255,   257,  1134,  1134,  1134,  -513,  -513,
-     248,  -513,   933,  -513,  -513,  -513,  -513,  -513,  -513,  -513,
-    -513,  -513,   335,   363,   258,   262,   260,   963,   963,   963,
-     963,  -513,   963,   963,   963,   963,   933,   265,   266,   933,
-    1134,  1134,   267,  -513,   267,  -513,   268,  1134,   269,   933,
-     933,   933,  -513,  -513,  -513,   933,  1134,   398,  -513,  -513,
-     963,   963,  -513,   271,   273,   277,   278,   276,   279,   282,
-     283,   286,   403,    15,   268,   289,  -513,  -513,   375,  -513,
-    -513,   933,   275,  1134,  -513,  -513,  -513,   292,  -513,  -513,
-     294,   295,   963,  -513,   963,   963,  -513,  -513,  -513,  -513,
-    -513,  1134,  -513,  1223,    27,   400,  -513,  -513,   297,  -513,
-    -513,  -513,   303,   304,   305,  -513,   313,  -513,  1223,   449,
-    -513,  -513,  -513,  -513,   451,   316,  1134,  1134,   454,   135,
-    -513,  1134,   457,  -513,  1134,  -513
-};
-
-/* YYPGOTO[NTERM-NUM].  */
-static const short int yypgoto[] =
-{
-    -513,  -513,   246,   369,   370,   372,   225,   226,   373,   377,
-     -98,   -97,  -507,  -513,   436,   458,  -141,  -513,  -303,    63,
-    -513,  -220,  -513,   -46,  -513,   -38,  -513,   -68,   -20,  -513,
-     130,   256,  -230,    51,  -513,  -513,  -513,  -513,   439,  -513,
-    -513,  -513,  -513,     1,  -513,    66,  -513,  -513,   461,  -513,
-    -513,  -513,  -513,  -513,   488,  -513,  -512,  -106,    -3,   -88,
-    -513,   455,  -513,   -84,  -513,  -513,  -513,  -513,    56,    18,
-    -513,  -513,    98,  -513,  -513
-};
-
-/* 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 -178
-static const short int yytable[] =
-{
-      86,   332,   146,   147,    25,   115,    91,   387,   443,   124,
-     135,    40,   280,    86,   128,    94,   553,   349,   350,   445,
-     138,   139,   140,   141,   142,   143,   144,   145,   273,   405,
-     273,   273,   138,   139,   140,   141,   142,   143,   144,   145,
-     136,   566,   273,  -112,    25,   415,     4,   568,   243,   406,
-     132,   137,   132,    51,    40,   444,   575,   128,   244,   328,
-     134,   416,   278,   128,   132,   329,   444,   325,     7,     8,
-       9,    52,    11,    53,    13,    19,    54,    20,    30,   243,
-     220,   221,   431,   238,    55,   130,    44,    45,    46,   354,
-     311,   431,   468,   315,   431,   431,    49,   466,   316,   317,
-     318,   319,   432,   467,   119,   242,    47,   120,   121,   292,
-     293,   247,   134,   410,   411,   413,   116,   117,   323,   324,
-      98,    99,   100,    50,   101,   102,   103,    27,    58,    28,
-     348,   213,   214,   275,   276,    92,   326,   327,   309,   310,
-     134,   312,   313,   134,    95,   277,   333,   334,   134,   134,
-     134,   134,   125,   138,   139,   140,   141,   142,   143,   144,
-     145,    19,    60,    20,    62,   320,   321,   322,   134,   134,
-     108,   351,   352,   552,   109,   355,    31,    32,    33,    34,
-      35,    36,    37,   -72,   -72,   567,   -76,   -76,   465,   529,
-     110,   530,   294,   295,   296,   297,   298,   299,   300,   301,
-     302,   303,   304,   305,   306,   307,   273,   357,   -71,   -71,
-     -75,   -75,   101,   102,   273,   273,   273,  -177,   111,   126,
-      64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
-      74,    75,    76,   112,   381,    77,    78,   -70,   -70,   403,
-     -74,   -74,    86,  -113,    19,   122,    20,   123,     5,   131,
-     237,     6,   212,   382,   -69,   -69,   246,   -73,   -73,     7,
-       8,     9,    10,    11,    12,    13,   335,   336,   216,   217,
-     383,   218,   239,   240,   245,   273,   273,   273,   279,   401,
-      14,   330,   -79,   273,   -80,   339,   353,    86,   402,   134,
-     361,   362,   363,   355,   367,   273,   273,   281,   282,   283,
-     284,   285,   286,   450,   368,   452,   453,   454,   369,   388,
-     370,   458,   371,   287,   288,   289,   290,   396,   397,   398,
-     389,   374,   375,   400,   376,   377,   378,   379,   380,   384,
-     386,   390,   273,   273,   391,   392,   393,   273,   394,   273,
-     395,   399,   404,   273,   414,   417,   420,   421,   423,   273,
-     273,   273,   424,   134,   451,   134,   134,   134,   418,   425,
-     438,   134,   459,   439,   446,   449,   455,   456,   463,    79,
-     464,   457,    80,   462,   405,    81,   473,    82,   440,   441,
-     442,   486,   357,   477,   273,   273,   448,   478,   479,   493,
-     480,   273,   507,   509,   482,   483,   484,   485,   460,   461,
-     273,   489,   505,   490,   491,   497,   499,   500,   134,   501,
-     510,   534,   535,   536,   511,   512,   539,   522,   551,   528,
-     531,   533,   523,   542,   506,   146,   147,   273,   543,   544,
-     545,   546,   444,   557,   547,   487,   488,   548,   549,   569,
-     492,   550,   494,   556,   555,   273,   498,   559,   521,   560,
-     561,   134,   502,   503,   504,   570,   146,   147,   571,   572,
-     573,   134,   134,   134,   576,   574,   577,   134,   578,   581,
-     273,   273,   584,   203,   204,   273,   205,   206,   273,   104,
-     338,   207,    56,   365,   471,   366,   470,   526,   527,   114,
-      59,    26,   347,   134,   532,   582,    97,   426,   427,   428,
-     429,   430,   496,   538,   433,   434,   435,   436,   437,   126,
-      64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
-      74,    75,    76,   537,   476,    77,    78,     0,     0,     0,
-     558,     0,     0,     0,    19,     0,    20,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   565,     0,
-       0,     0,     0,     0,   474,   475,     0,     0,     0,     0,
-       0,   481,     0,     0,     0,     0,     0,     0,   -82,    19,
-       0,    20,     0,   579,   580,     6,   -82,   -82,   583,     0,
-       0,   585,     0,   -82,   -82,   -82,   -82,   -82,   -82,   -82,
-       0,   -82,    21,     0,     0,     0,     0,     0,     0,   -82,
-      22,     0,     0,     0,    23,     0,     0,   513,   514,   515,
-     516,     0,   517,   518,   519,   520,     0,   126,    64,    65,
-      66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
-      76,     0,     0,    77,    78,     0,     0,     0,     0,     0,
-     540,   541,    19,     0,    20,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,    79,
-       0,     0,    80,     0,     0,    81,     0,    82,   127,     0,
-       0,     0,   562,     0,   563,   564,   126,   222,   223,   224,
-     225,   226,   227,   228,   229,   230,   231,   232,    75,    76,
-       0,     0,    77,    78,     0,     0,     0,     0,     0,     0,
-       0,    19,     0,    20,   126,    64,    65,    66,    67,    68,
-      69,    70,    71,    72,    73,    74,    75,    76,     0,     0,
-      77,    78,     0,     0,     0,     0,     0,     0,     0,    19,
-       0,    20,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   356,     0,     0,   126,   222,   223,   224,   225,   226,
-     227,   228,   229,   230,   231,   232,    75,    76,     0,     0,
-      77,    78,     0,     0,     0,     0,     0,    79,     0,    19,
-      80,    20,     0,    81,     0,    82,   241,   126,    64,    65,
-      66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
-      76,     0,     0,    77,    78,     0,     0,     0,     0,     0,
-       0,     0,    19,     0,    20,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   422,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    79,     0,     0,    80,
-       0,     0,    81,     0,    82,   412,   126,    64,    65,    66,
-      67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
-       0,     0,    77,    78,    79,     0,     0,    80,     0,     0,
-      81,    19,    82,    20,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   469,     0,     0,    63,    64,    65,    66,
-      67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
-       0,     0,    77,    78,    79,     0,     0,    80,     0,   409,
-      81,    19,    82,    20,   133,    64,    65,    66,    67,    68,
-      69,    70,    71,    72,    73,    74,    75,    76,     0,     0,
-      77,    78,     0,     0,     0,     0,     0,    79,     0,    19,
-      80,    20,     0,    81,     0,    82,   126,    64,    65,    66,
-      67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
-       0,     0,    77,    78,     0,     0,     0,     0,     0,     0,
-       0,    19,     0,    20,     0,     0,   126,   222,   223,   224,
-     225,   226,   227,   228,   229,   230,   231,   232,    75,    76,
-       0,     0,    77,    78,     0,     0,    79,     0,     0,    80,
-       0,    19,    81,    20,    82,     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,    79,     0,     0,    80,
-       0,     0,    81,     0,    82,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,    79,     0,     0,    80,     0,     0,
-      81,     0,    82,     0,    77,    78,     0,   340,   341,   342,
-       0,     0,     0,    19,     0,    20,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    79,     0,     0,    80,
-       0,     0,    81,     0,    82,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    79,     0,     0,    80,
-       0,     0,    81,     0,    82,   154,   155,   156,   157,   158,
-     159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
-     169,   170,   171,   172,   173,   258,   259,     0,     0,     0,
-       0,   249,   250,    77,    78,   251,   252,   253,   254,   255,
-     256,     0,    19,     0,    20,     0,     0,     0,     0,     0,
-       0,     0,   260,     0,   261,   182,   183,   184,   185,     0,
-     262,   263,   264,   190,   191,   192,   193,   194,   195,   196,
-     197,   198,   199,   200,   201,   202,   257,     0,     0,     0,
-       0,   343,     0,     0,   344,     0,   345,     0,     0,   346,
-       0,     0,     0,     0,   154,   155,   156,   157,   158,   159,
-     160,   161,   162,   163,   164,   165,   166,   167,   168,   169,
-     170,   171,   172,   173,   258,   259,     0,     0,     0,     0,
-     249,   250,     0,     0,   251,   252,   253,   254,   255,   256,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   260,     0,   261,   182,   183,   184,   185,     0,   262,
-     263,   264,   190,   191,   192,   193,   194,   195,   196,   197,
-     198,   199,   200,   201,   202,   257,     0,     0,     0,     0,
-       0,     0,     0,   265,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   154,   155,   156,   157,   158,   159,   160,
-     161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
-     171,   172,   173,   258,   259,     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,
-     260,     0,   261,   182,   183,   184,   185,     0,   262,   263,
-     264,   190,   191,   192,   193,   194,   195,   196,   197,   198,
-     199,   200,   201,   202,   149,     0,     0,     0,     0,     0,
-       0,     0,   265,     0,     0,   150,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   151,   152,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   153,     0,     0,     0,   154,   155,   156,   157,
-     158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
-     168,   169,   170,   171,   172,   173,   174,   175,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   176,   177,
-     178,     0,     0,   179,   180,   181,   182,   183,   184,   185,
-     186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
-     196,   197,   198,   199,   200,   201,   202
-};
-
-static const short int yycheck[] =
-{
-      38,   221,   100,   100,     3,    51,    32,   310,    10,    18,
-      98,    29,   153,    51,    82,    33,   523,   237,   238,    10,
-       5,     6,     7,     8,     9,    10,    11,    12,   134,    37,
-     136,   137,     5,     6,     7,     8,     9,    10,    11,    12,
-       4,   553,   148,   154,    43,   158,     0,   554,   152,    57,
-     163,    15,   163,    27,    29,    57,   568,   125,   162,   152,
-      98,   160,   150,   131,   163,   158,    57,   208,    42,    43,
-      44,    45,    46,    47,    48,    28,    50,    30,    62,   152,
-     118,   119,   152,   121,    58,    84,    52,    53,    54,   162,
-     178,   152,   162,   181,   152,   152,   151,   158,   186,   187,
-     188,   189,   160,   160,    53,   125,    72,    56,    57,    25,
-      26,   131,   150,   343,   344,   345,    35,    36,   206,   207,
-      73,    74,    75,    62,    77,    78,    79,    45,   151,    47,
-     236,    55,    56,   136,   137,   161,   125,   126,   176,   177,
-     178,   179,   180,   181,   162,   148,    25,    26,   186,   187,
-     188,   189,   161,     5,     6,     7,     8,     9,    10,    11,
-      12,    28,    30,    30,    18,   203,   204,   205,   206,   207,
-     151,   239,   240,   158,   151,   243,    65,    66,    67,    68,
-      69,    70,    71,    17,    18,   158,    17,    18,   408,   492,
-     151,   494,   108,   109,   110,   111,   112,   113,   114,   115,
-     116,   117,   118,   119,   120,   121,   312,   245,    17,    18,
-      17,    18,    77,    78,   320,   321,   322,     0,   151,     3,
-       4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
-      14,    15,    16,   156,   280,    19,    20,    17,    18,   327,
-      17,    18,   280,   154,    28,    18,    30,    18,    31,   154,
-     120,    34,    30,   291,    17,    18,    40,    17,    18,    42,
-      43,    44,    45,    46,    47,    48,    17,    18,    18,    30,
-     308,    30,   157,   157,   154,   381,   382,   383,    60,   325,
-      63,   152,    21,   389,    21,    21,   160,   325,   326,   327,
-     152,   155,    64,   361,   154,   401,   402,   102,   103,   104,
-     105,   106,   107,   391,   154,   393,   394,   395,   154,   312,
-     154,   399,   154,   118,   119,   120,   121,   320,   321,   322,
-     156,   154,   154,    39,   154,   154,   154,   152,   152,   152,
-     152,   152,   438,   439,   152,   152,   152,   443,   152,   445,
-     152,   152,    30,   449,    30,   160,   152,   155,    30,   455,
-     456,   457,   154,   391,   392,   393,   394,   395,   357,   154,
-      15,   399,   400,    15,   152,   156,   152,   152,    30,   153,
-      18,   152,   156,   152,    37,   159,   152,   161,   381,   382,
-     383,    39,   420,   152,   490,   491,   389,   152,   152,    18,
-     152,   497,    57,    30,   152,   152,   152,   152,   401,   402,
-     506,   154,   154,   152,   152,   152,   152,   152,   446,   152,
-     152,   499,   500,   501,   152,   155,    18,   152,    15,   152,
-     152,   152,   156,   152,   462,   523,   523,   533,   155,   152,
-     152,   155,    57,   158,   155,   438,   439,   155,   155,    39,
-     443,   155,   445,   531,   155,   551,   449,   155,   486,   155,
-     155,   489,   455,   456,   457,   158,   554,   554,   155,   155,
-     155,   499,   500,   501,    15,   152,    15,   505,   152,    15,
-     576,   577,    15,   104,   104,   581,   104,   104,   584,    43,
-     234,   104,    24,   258,   421,   259,   420,   490,   491,    50,
-      29,     3,   236,   531,   497,   579,    41,   367,   368,   369,
-     370,   371,   446,   506,   374,   375,   376,   377,   378,     3,
-       4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
-      14,    15,    16,   505,   426,    19,    20,    -1,    -1,    -1,
-     533,    -1,    -1,    -1,    28,    -1,    30,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   551,    -1,
-      -1,    -1,    -1,    -1,   424,   425,    -1,    -1,    -1,    -1,
-      -1,   431,    -1,    -1,    -1,    -1,    -1,    -1,    27,    28,
-      -1,    30,    -1,   576,   577,    34,    35,    36,   581,    -1,
-      -1,   584,    -1,    42,    43,    44,    45,    46,    47,    48,
-      -1,    50,    51,    -1,    -1,    -1,    -1,    -1,    -1,    58,
-      59,    -1,    -1,    -1,    63,    -1,    -1,   477,   478,   479,
-     480,    -1,   482,   483,   484,   485,    -1,     3,     4,     5,
-       6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
-      16,    -1,    -1,    19,    20,    -1,    -1,    -1,    -1,    -1,
-     510,   511,    28,    -1,    30,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   153,
-      -1,    -1,   156,    -1,    -1,   159,    -1,   161,   162,    -1,
-      -1,    -1,   542,    -1,   544,   545,     3,     4,     5,     6,
-       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
-      -1,    -1,    19,    20,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    28,    -1,    30,     3,     4,     5,     6,     7,     8,
-       9,    10,    11,    12,    13,    14,    15,    16,    -1,    -1,
-      19,    20,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    28,
-      -1,    30,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    40,    -1,    -1,     3,     4,     5,     6,     7,     8,
-       9,    10,    11,    12,    13,    14,    15,    16,    -1,    -1,
-      19,    20,    -1,    -1,    -1,    -1,    -1,   153,    -1,    28,
-     156,    30,    -1,   159,    -1,   161,   162,     3,     4,     5,
-       6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
-      16,    -1,    -1,    19,    20,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    28,    -1,    30,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    40,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   153,    -1,    -1,   156,
-      -1,    -1,   159,    -1,   161,   162,     3,     4,     5,     6,
-       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
-      -1,    -1,    19,    20,   153,    -1,    -1,   156,    -1,    -1,
-     159,    28,   161,    30,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    40,    -1,    -1,     3,     4,     5,     6,
-       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
-      -1,    -1,    19,    20,   153,    -1,    -1,   156,    -1,   158,
-     159,    28,   161,    30,     3,     4,     5,     6,     7,     8,
-       9,    10,    11,    12,    13,    14,    15,    16,    -1,    -1,
-      19,    20,    -1,    -1,    -1,    -1,    -1,   153,    -1,    28,
-     156,    30,    -1,   159,    -1,   161,     3,     4,     5,     6,
-       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
-      -1,    -1,    19,    20,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    28,    -1,    30,    -1,    -1,     3,     4,     5,     6,
-       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
-      -1,    -1,    19,    20,    -1,    -1,   153,    -1,    -1,   156,
-      -1,    28,   159,    30,   161,    -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,   153,    -1,    -1,   156,
-      -1,    -1,   159,    -1,   161,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   153,    -1,    -1,   156,    -1,    -1,
-     159,    -1,   161,    -1,    19,    20,    -1,    22,    23,    24,
-      -1,    -1,    -1,    28,    -1,    30,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   153,    -1,    -1,   156,
-      -1,    -1,   159,    -1,   161,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   153,    -1,    -1,   156,
-      -1,    -1,   159,    -1,   161,    80,    81,    82,    83,    84,
-      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
-      95,    96,    97,    98,    99,   100,   101,    -1,    -1,    -1,
-      -1,    17,    18,    19,    20,    21,    22,    23,    24,    25,
-      26,    -1,    28,    -1,    30,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   127,    -1,   129,   130,   131,   132,   133,    -1,
-     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
-     145,   146,   147,   148,   149,   150,    62,    -1,    -1,    -1,
-      -1,   156,    -1,    -1,   159,    -1,   161,    -1,    -1,   164,
-      -1,    -1,    -1,    -1,    80,    81,    82,    83,    84,    85,
-      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
-      96,    97,    98,    99,   100,   101,    -1,    -1,    -1,    -1,
-      17,    18,    -1,    -1,    21,    22,    23,    24,    25,    26,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   127,    -1,   129,   130,   131,   132,   133,    -1,   135,
-     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
-     146,   147,   148,   149,   150,    62,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   159,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    80,    81,    82,    83,    84,    85,    86,
-      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
-      97,    98,    99,   100,   101,    -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,
-     127,    -1,   129,   130,   131,   132,   133,    -1,   135,   136,
-     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
-     147,   148,   149,   150,    38,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   159,    -1,    -1,    49,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    60,    61,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    76,    -1,    -1,    -1,    80,    81,    82,    83,
-      84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
-      94,    95,    96,    97,    98,    99,   100,   101,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   122,   123,
-     124,    -1,    -1,   127,   128,   129,   130,   131,   132,   133,
-     134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
-     144,   145,   146,   147,   148,   149,   150
-};
-
-/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
-   symbol of state STATE-NUM.  */
-static const unsigned char yystos[] =
-{
-       0,   199,   200,   202,     0,    31,    34,    42,    43,    44,
-      45,    46,    47,    48,    63,   180,   215,   217,   219,    28,
-      30,    51,    59,    63,   179,   208,   219,    45,    47,   218,
-      62,    65,    66,    67,    68,    69,    70,    71,   181,   213,
-      29,   225,   226,   227,    52,    53,    54,    72,   205,   151,
-      62,    27,    45,    47,    50,    58,   180,   201,   151,   213,
-      30,   203,    18,     3,     4,     5,     6,     7,     8,     9,
-      10,    11,    12,    13,    14,    15,    16,    19,    20,   153,
-     156,   159,   161,   166,   188,   189,   190,   191,   192,   208,
-     222,    32,   161,   214,    33,   162,   216,   226,    73,    74,
-      75,    77,    78,    79,   179,   228,   229,   231,   151,   151,
-     151,   151,   156,   206,   203,   188,    35,    36,   198,   198,
-     198,   198,    18,    18,    18,   161,     3,   162,   192,   193,
-     208,   154,   163,     3,   190,   224,     4,    15,     5,     6,
-       7,     8,     9,    10,    11,    12,   175,   176,   177,    38,
-      49,    60,    61,    76,    80,    81,    82,    83,    84,    85,
-      86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
-      96,    97,    98,    99,   100,   101,   122,   123,   124,   127,
-     128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
-     138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
-     148,   149,   150,   168,   169,   170,   173,   174,   235,   236,
-     238,   239,    30,    55,    56,   204,    18,    30,    30,   207,
-     190,   190,     4,     5,     6,     7,     8,     9,    10,    11,
-      12,    13,    14,   175,   176,   178,   190,   195,   190,   157,
-     157,   162,   193,   152,   162,   154,    40,   193,   194,    17,
-      18,    21,    22,    23,    24,    25,    26,    62,   100,   101,
-     127,   129,   135,   136,   137,   159,   168,   169,   170,   173,
-     174,   196,   221,   222,   223,   223,   223,   223,   224,    60,
-     181,   102,   103,   104,   105,   106,   107,   118,   119,   120,
-     121,   171,    25,    26,   108,   109,   110,   111,   112,   113,
-     114,   115,   116,   117,   118,   119,   120,   121,   172,   190,
-     190,   224,   190,   190,   232,   224,   224,   224,   224,   224,
-     190,   190,   190,   224,   224,   181,   125,   126,   152,   158,
-     152,   186,   186,    25,    26,    17,    18,   167,   167,    21,
-      22,    23,    24,   156,   159,   161,   164,   196,   222,   186,
-     186,   192,   192,   160,   162,   192,    40,   190,   210,   211,
-     212,   152,   155,    64,   220,   171,   172,   154,   154,   154,
-     154,   154,   195,   197,   154,   154,   154,   154,   154,   152,
-     152,   188,   190,   190,   152,   183,   152,   183,   223,   156,
-     152,   152,   152,   152,   152,   152,   223,   223,   223,   152,
-      39,   188,   190,   224,    30,    37,    57,   184,   187,   158,
-     197,   197,   162,   197,    30,   158,   160,   160,   208,   209,
-     152,   155,    40,    30,   154,   154,   195,   195,   195,   195,
-     195,   152,   160,   195,   195,   195,   195,   195,    15,    15,
-     223,   223,   223,    10,    57,    10,   152,   237,   223,   156,
-     224,   190,   224,   224,   224,   152,   152,   152,   224,   190,
-     223,   223,   152,    30,    18,   186,   158,   160,   162,    40,
-     210,   184,   185,   152,   195,   195,   237,   152,   152,   152,
-     152,   195,   152,   152,   152,   152,    39,   223,   223,   154,
-     152,   152,   223,    18,   223,   224,   233,   152,   223,   152,
-     152,   152,   223,   223,   223,   154,   190,    57,   182,    30,
-     152,   152,   155,   195,   195,   195,   195,   195,   195,   195,
-     195,   190,   152,   156,   233,   234,   223,   223,   152,   183,
-     183,   152,   223,   152,   224,   224,   224,   234,   223,    18,
-     195,   195,   152,   155,   152,   152,   155,   155,   155,   155,
-     155,    15,   158,   177,   230,   155,   224,   158,   223,   155,
-     155,   155,   195,   195,   195,   223,   221,   158,   177,    39,
-     158,   155,   155,   155,   152,   221,    15,    15,   152,   223,
-     223,    15,   228,   223,    15,   223
-};
-
-#define yyerrok                (yyerrstatus = 0)
-#define yyclearin      (yychar = YYEMPTY)
-#define YYEMPTY                (-2)
-#define YYEOF          0
-
-#define YYACCEPT       goto yyacceptlab
-#define YYABORT                goto yyabortlab
-#define YYERROR                goto yyerrorlab
-
-
-/* Like YYERROR except do call yyerror.  This remains here temporarily
-   to ease the transition to the new meaning of YYERROR, for GCC.
-   Once GCC version 2 has supplanted version 1, this can go.  */
-
-#define YYFAIL         goto yyerrlab
-
-#define YYRECOVERING()  (!!yyerrstatus)
-
-#define YYBACKUP(Token, Value)                                 \
-do                                                             \
-  if (yychar == YYEMPTY && yylen == 1)                         \
-    {                                                          \
-      yychar = (Token);                                                \
-      yylval = (Value);                                                \
-      yytoken = YYTRANSLATE (yychar);                          \
-      YYPOPSTACK;                                              \
-      goto yybackup;                                           \
-    }                                                          \
-  else                                                         \
-    {                                                          \
-      yyerror (YY_("syntax error: cannot back up")); \
-      YYERROR;                                                 \
-    }                                                          \
-while (0)
-
-
-#define YYTERROR       1
-#define YYERRCODE      256
-
-
-/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
-   If N is 0, then set CURRENT to the empty location which ends
-   the previous symbol: RHS[0] (always defined).  */
-
-#define YYRHSLOC(Rhs, K) ((Rhs)[K])
-#ifndef YYLLOC_DEFAULT
-# define YYLLOC_DEFAULT(Current, Rhs, N)                               \
-    do                                                                 \
-      if (N)                                                           \
-       {                                                               \
-         (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
-         (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
-         (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
-         (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
-       }                                                               \
-      else                                                             \
-       {                                                               \
-         (Current).first_line   = (Current).last_line   =              \
-           YYRHSLOC (Rhs, 0).last_line;                                \
-         (Current).first_column = (Current).last_column =              \
-           YYRHSLOC (Rhs, 0).last_column;                              \
-       }                                                               \
-    while (0)
-#endif
-
-
-/* YY_LOCATION_PRINT -- Print the location on the stream.
-   This macro was not mandated originally: define only if we know
-   we won't break user code: when these are the locations we know.  */
-
-#ifndef YY_LOCATION_PRINT
-# 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)
-# else
-#  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
-# endif
-#endif
-
-
-/* YYLEX -- calling `yylex' with the right arguments.  */
-
-#ifdef YYLEX_PARAM
-# define YYLEX yylex (YYLEX_PARAM)
-#else
-# define YYLEX yylex ()
-#endif
-
-/* Enable debugging if requested.  */
-#if YYDEBUG
-
-# ifndef YYFPRINTF
-#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
-#  define YYFPRINTF fprintf
-# endif
-
-# define YYDPRINTF(Args)                       \
-do {                                           \
-  if (yydebug)                                 \
-    YYFPRINTF Args;                            \
-} while (0)
-
-# 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 (__cplusplus)
-static void
-yy_stack_print (short int *bottom, short int *top)
-#else
-static void
-yy_stack_print (bottom, top)
-    short int *bottom;
-    short int *top;
-#endif
-{
-  YYFPRINTF (stderr, "Stack now");
-  for (/* Nothing. */; bottom <= top; ++bottom)
-    YYFPRINTF (stderr, " %d", *bottom);
-  YYFPRINTF (stderr, "\n");
-}
-
-# define YY_STACK_PRINT(Bottom, Top)                           \
-do {                                                           \
-  if (yydebug)                                                 \
-    yy_stack_print ((Bottom), (Top));                          \
-} while (0)
-
-
-/*------------------------------------------------.
-| Report that the YYRULE is going to be reduced.  |
-`------------------------------------------------*/
-
-#if defined (__STDC__) || defined (__cplusplus)
-static void
-yy_reduce_print (int yyrule)
-#else
-static void
-yy_reduce_print (yyrule)
-    int yyrule;
-#endif
-{
-  int yyi;
-  unsigned long int yylno = yyrline[yyrule];
-  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 (Rule);            \
-} while (0)
-
-/* Nonzero means print parse trace.  It is left uninitialized so that
-   multiple parsers can coexist.  */
-int yydebug;
-#else /* !YYDEBUG */
-# define YYDPRINTF(Args)
-# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
-# define YY_STACK_PRINT(Bottom, Top)
-# define YY_REDUCE_PRINT(Rule)
-#endif /* !YYDEBUG */
-
-
-/* YYINITDEPTH -- initial size of the parser's stacks.  */
-#ifndef        YYINITDEPTH
-# define YYINITDEPTH 200
-#endif
-
-/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
-   if the built-in stack extension method is used).
-
-   Do not make this value too large; the results are undefined if
-   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
-   evaluated with infinite-precision integer arithmetic.  */
-
-#ifndef YYMAXDEPTH
-# define YYMAXDEPTH 10000
-#endif
-
-\f
-
-#if YYERROR_VERBOSE
-
-# ifndef yystrlen
-#  if defined (__GLIBC__) && defined (_STRING_H)
-#   define yystrlen strlen
-#  else
-/* Return the length of YYSTR.  */
-static YYSIZE_T
-#   if defined (__STDC__) || defined (__cplusplus)
-yystrlen (const char *yystr)
-#   else
-yystrlen (yystr)
-     const char *yystr;
-#   endif
-{
-  const char *yys = yystr;
-
-  while (*yys++ != '\0')
-    continue;
-
-  return yys - yystr - 1;
-}
-#  endif
-# endif
-
-# ifndef yystpcpy
-#  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.  */
-static char *
-#   if defined (__STDC__) || defined (__cplusplus)
-yystpcpy (char *yydest, const char *yysrc)
-#   else
-yystpcpy (yydest, yysrc)
-     char *yydest;
-     const char *yysrc;
-#   endif
-{
-  char *yyd = yydest;
-  const char *yys = yysrc;
-
-  while ((*yyd++ = *yys++) != '\0')
-    continue;
-
-  return yyd - 1;
-}
-#  endif
-# endif
-
-# ifndef yytnamerr
-/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
-   quotes and backslashes, so that it's suitable for yyerror.  The
-   heuristic is that double-quoting is unnecessary unless the string
-   contains an apostrophe, a comma, or backslash (other than
-   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
-   null, do not copy; instead, return the length of what the result
-   would have been.  */
-static YYSIZE_T
-yytnamerr (char *yyres, const char *yystr)
-{
-  if (*yystr == '"')
-    {
-      size_t yyn = 0;
-      char const *yyp = yystr;
-
-      for (;;)
-       switch (*++yyp)
-         {
-         case '\'':
-         case ',':
-           goto do_not_strip_quotes;
-
-         case '\\':
-           if (*++yyp != '\\')
-             goto do_not_strip_quotes;
-           /* Fall through.  */
-         default:
-           if (yyres)
-             yyres[yyn] = *yyp;
-           yyn++;
-           break;
-
-         case '"':
-           if (yyres)
-             yyres[yyn] = '\0';
-           return yyn;
-         }
-    do_not_strip_quotes: ;
-    }
-
-  if (! yyres)
-    return yystrlen (yystr);
-
-  return yystpcpy (yyres, yystr) - yyres;
-}
-# endif
-
-#endif /* YYERROR_VERBOSE */
-
-\f
-
-#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
-{
-  /* Pacify ``unused variable'' warnings.  */
-  (void) yyvaluep;
-
-  if (yytype < YYNTOKENS)
-    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
-  else
-    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
-
-
-# ifdef YYPRINT
-  if (yytype < YYNTOKENS)
-    YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
-# endif
-  switch (yytype)
-    {
-      default:
-        break;
-    }
-  YYFPRINTF (yyoutput, ")");
-}
-
-#endif /* ! YYDEBUG */
-/*-----------------------------------------------.
-| Release the memory associated to this symbol.  |
-`-----------------------------------------------*/
-
-#if defined (__STDC__) || defined (__cplusplus)
-static void
-yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
-#else
-static void
-yydestruct (yymsg, yytype, yyvaluep)
-    const char *yymsg;
-    int yytype;
-    YYSTYPE *yyvaluep;
-#endif
-{
-  /* Pacify ``unused variable'' warnings.  */
-  (void) yyvaluep;
-
-  if (!yymsg)
-    yymsg = "Deleting";
-  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
-
-  switch (yytype)
-    {
-
-      default:
-        break;
-    }
-}
-\f
-
-/* Prevent warnings from -Wmissing-prototypes.  */
-
-#ifdef YYPARSE_PARAM
-# if defined (__STDC__) || defined (__cplusplus)
-int yyparse (void *YYPARSE_PARAM);
-# else
-int yyparse ();
-# endif
-#else /* ! YYPARSE_PARAM */
-#if defined (__STDC__) || defined (__cplusplus)
-int yyparse (void);
-#else
-int yyparse ();
-#endif
-#endif /* ! YYPARSE_PARAM */
-
-
-
-/* The look-ahead symbol.  */
-int yychar;
-
-/* The semantic value of the look-ahead symbol.  */
-YYSTYPE yylval;
-
-/* Number of syntax errors so far.  */
-int yynerrs;
-
-
-
-/*----------.
-| yyparse.  |
-`----------*/
-
-#ifdef YYPARSE_PARAM
-# 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 (__cplusplus)
-int
-yyparse (void)
-#else
-int
-yyparse ()
-    ;
-#endif
-#endif
-{
-  
-  int yystate;
-  int yyn;
-  int yyresult;
-  /* Number of tokens to shift before error messages enabled.  */
-  int yyerrstatus;
-  /* Look-ahead token as an internal (translated) token number.  */
-  int yytoken = 0;
-
-  /* Three stacks and their tools:
-     `yyss': related to states,
-     `yyvs': related to semantic values,
-     `yyls': related to locations.
-
-     Refer to the stacks thru separate pointers, to allow yyoverflow
-     to reallocate them elsewhere.  */
-
-  /* The state stack.  */
-  short int yyssa[YYINITDEPTH];
-  short int *yyss = yyssa;
-  short int *yyssp;
-
-  /* The semantic value stack.  */
-  YYSTYPE yyvsa[YYINITDEPTH];
-  YYSTYPE *yyvs = yyvsa;
-  YYSTYPE *yyvsp;
-
-
-
-#define YYPOPSTACK   (yyvsp--, yyssp--)
-
-  YYSIZE_T yystacksize = YYINITDEPTH;
-
-  /* The variables used to return semantic value and location from the
-     action routines.  */
-  YYSTYPE yyval;
-
-
-  /* When reducing, the number of symbols on the RHS of the reduced
-     rule.  */
-  int yylen;
-
-  YYDPRINTF ((stderr, "Starting parse\n"));
-
-  yystate = 0;
-  yyerrstatus = 0;
-  yynerrs = 0;
-  yychar = YYEMPTY;            /* Cause a token to be read.  */
-
-  /* Initialize stack pointers.
-     Waste one element of value and location stack
-     so that they stay on the same level as the state stack.
-     The wasted elements are never initialized.  */
-
-  yyssp = yyss;
-  yyvsp = yyvs;
-
-  goto yysetstate;
-
-/*------------------------------------------------------------.
-| yynewstate -- Push a new state, which is found in yystate.  |
-`------------------------------------------------------------*/
- 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.
-     */
-  yyssp++;
-
- yysetstate:
-  *yyssp = yystate;
-
-  if (yyss + yystacksize - 1 <= yyssp)
-    {
-      /* Get the current used size of the three stacks, in elements.  */
-      YYSIZE_T yysize = yyssp - yyss + 1;
-
-#ifdef yyoverflow
-      {
-       /* 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;
-       short int *yyss1 = yyss;
-
-
-       /* Each stack pointer address is followed by the size of the
-          data in use in that stack, in bytes.  This used to be a
-          conditional around just the two extra args, but that might
-          be undefined if yyoverflow is a macro.  */
-       yyoverflow (YY_("memory exhausted"),
-                   &yyss1, yysize * sizeof (*yyssp),
-                   &yyvs1, yysize * sizeof (*yyvsp),
-
-                   &yystacksize);
-
-       yyss = yyss1;
-       yyvs = yyvs1;
-      }
-#else /* no yyoverflow */
-# ifndef YYSTACK_RELOCATE
-      goto yyexhaustedlab;
-# else
-      /* Extend the stack our own way.  */
-      if (YYMAXDEPTH <= yystacksize)
-       goto yyexhaustedlab;
-      yystacksize *= 2;
-      if (YYMAXDEPTH < yystacksize)
-       yystacksize = YYMAXDEPTH;
-
-      {
-       short int *yyss1 = yyss;
-       union yyalloc *yyptr =
-         (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
-       if (! yyptr)
-         goto yyexhaustedlab;
-       YYSTACK_RELOCATE (yyss);
-       YYSTACK_RELOCATE (yyvs);
-
-#  undef YYSTACK_RELOCATE
-       if (yyss1 != yyssa)
-         YYSTACK_FREE (yyss1);
-      }
-# endif
-#endif /* no yyoverflow */
-
-      yyssp = yyss + yysize - 1;
-      yyvsp = yyvs + yysize - 1;
-
-
-      YYDPRINTF ((stderr, "Stack size increased to %lu\n",
-                 (unsigned long int) yystacksize));
-
-      if (yyss + yystacksize - 1 <= yyssp)
-       YYABORT;
-    }
-
-  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
-
-  goto yybackup;
-
-/*-----------.
-| yybackup.  |
-`-----------*/
-yybackup:
-
-/* 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;
-
-  /* Not known => get a look-ahead token if don't already have one.  */
-
-  /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */
-  if (yychar == YYEMPTY)
-    {
-      YYDPRINTF ((stderr, "Reading a token: "));
-      yychar = YYLEX;
-    }
-
-  if (yychar <= YYEOF)
-    {
-      yychar = yytoken = YYEOF;
-      YYDPRINTF ((stderr, "Now at end of input.\n"));
-    }
-  else
-    {
-      yytoken = YYTRANSLATE (yychar);
-      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
-    }
-
-  /* If the proper action on seeing token YYTOKEN is to reduce or to
-     detect an error, take that action.  */
-  yyn += yytoken;
-  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
-    goto yydefault;
-  yyn = yytable[yyn];
-  if (yyn <= 0)
-    {
-      if (yyn == 0 || yyn == YYTABLE_NINF)
-       goto yyerrlab;
-      yyn = -yyn;
-      goto yyreduce;
-    }
-
-  if (yyn == YYFINAL)
-    YYACCEPT;
-
-  /* Shift the look-ahead token.  */
-  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
-
-  /* Discard the token being shifted unless it is eof.  */
-  if (yychar != YYEOF)
-    yychar = YYEMPTY;
-
-  *++yyvsp = yylval;
-
-
-  /* Count tokens shifted since error; after three, turn off error
-     status.  */
-  if (yyerrstatus)
-    yyerrstatus--;
-
-  yystate = yyn;
-  goto yynewstate;
-
-
-/*-----------------------------------------------------------.
-| yydefault -- do the default action for the current state.  |
-`-----------------------------------------------------------*/
-yydefault:
-  yyn = yydefact[yystate];
-  if (yyn == 0)
-    goto yyerrlab;
-  goto yyreduce;
-
-
-/*-----------------------------.
-| yyreduce -- Do a reduction.  |
-`-----------------------------*/
-yyreduce:
-  /* yyn is the number of a rule to reduce with.  */
-  yylen = yyr2[yyn];
-
-  /* If YYLEN is nonzero, implement the default value of the action:
-     `$$ = $1'.
-
-     Otherwise, the following line sets YYVAL to garbage.
-     This behavior is undocumented and Bison
-     users should not rely upon it.  Assigning to YYVAL
-     unconditionally makes the parser a bit smaller, and it avoids a
-     GCC warning that YYVAL may be used uninitialized.  */
-  yyval = yyvsp[1-yylen];
-
-
-  YY_REDUCE_PRINT (yyn);
-  switch (yyn)
-    {
-        case 81:
-#line 892 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 82:
-#line 895 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = new std::string(""); 
-  ;}
-    break;
-
-  case 90:
-#line 902 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(""); ;}
-    break;
-
-  case 97:
-#line 907 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    *(yyvsp[-1].String) += *(yyvsp[0].String); 
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-1].String); 
-    ;}
-    break;
-
-  case 98:
-#line 912 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(""); ;}
-    break;
-
-  case 99:
-#line 917 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(); ;}
-    break;
-
-  case 100:
-#line 918 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { *(yyvsp[-1].String) += " " + *(yyvsp[0].String); delete (yyvsp[0].String); (yyval.String) = (yyvsp[-1].String); ;}
-    break;
-
-  case 101:
-#line 921 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(); ;}
-    break;
-
-  case 102:
-#line 922 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    (yyvsp[-1].String)->insert(0, ", "); 
-    *(yyvsp[-1].String) += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 103:
-#line 930 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    *(yyvsp[-1].String) += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 104:
-#line 936 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(); ;}
-    break;
-
-  case 106:
-#line 940 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(); ;}
-    break;
-
-  case 107:
-#line 941 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-      (yyvsp[-1].String)->insert(0, ", ");
-      if (!(yyvsp[0].String)->empty())
-        *(yyvsp[-1].String) += " " + *(yyvsp[0].String);
-      delete (yyvsp[0].String);
-      (yyval.String) = (yyvsp[-1].String);
-    ;}
-    break;
-
-  case 109:
-#line 951 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-      *(yyvsp[-1].String) += " " + *(yyvsp[0].String);
-      delete (yyvsp[0].String);
-      (yyval.String) = (yyvsp[-1].String);
-    ;}
-    break;
-
-  case 127:
-#line 973 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    (yyval.Type) = TypeInfo::get(*(yyvsp[0].String), OpaqueTy);
-  ;}
-    break;
-
-  case 128:
-#line 976 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    (yyval.Type) = TypeInfo::get(*(yyvsp[0].String), UnresolvedTy);
-  ;}
-    break;
-
-  case 129:
-#line 979 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    (yyval.Type) = (yyvsp[0].Type); 
-  ;}
-    break;
-
-  case 130:
-#line 982 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                   // Type UpReference
-    (yyvsp[0].String)->insert(0, "\\");
-    (yyval.Type) = TypeInfo::get(*(yyvsp[0].String), UpRefTy);
-  ;}
-    break;
-
-  case 131:
-#line 986 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {           // Function derived type?
-    std::string newTy( (yyvsp[-3].Type)->getNewTy() + "(");
-    for (unsigned i = 0; i < (yyvsp[-1].TypeVec)->size(); ++i) {
-      if (i != 0)
-        newTy +=  ", ";
-      if ((*(yyvsp[-1].TypeVec))[i]->isVoid())
-        newTy += "...";
-      else
-        newTy += (*(yyvsp[-1].TypeVec))[i]->getNewTy();
-    }
-    newTy += ")";
-    (yyval.Type) = TypeInfo::get(newTy, (yyvsp[-3].Type), (yyvsp[-1].TypeVec));
-  ;}
-    break;
-
-  case 132:
-#line 999 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {          // Sized array type?
-    uint64_t elems = atoi((yyvsp[-3].String)->c_str());
-    (yyvsp[-3].String)->insert(0,"[ ");
-    *(yyvsp[-3].String) += " x " + (yyvsp[-1].Type)->getNewTy() + " ]";
-    (yyval.Type) = TypeInfo::get(*(yyvsp[-3].String), ArrayTy, (yyvsp[-1].Type), elems);
-  ;}
-    break;
-
-  case 133:
-#line 1005 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {          // Packed array type?
-    uint64_t elems = atoi((yyvsp[-3].String)->c_str());
-    (yyvsp[-3].String)->insert(0,"< ");
-    *(yyvsp[-3].String) += " x " + (yyvsp[-1].Type)->getNewTy() + " >";
-    (yyval.Type) = TypeInfo::get(*(yyvsp[-3].String), PackedTy, (yyvsp[-1].Type), elems);
-  ;}
-    break;
-
-  case 134:
-#line 1011 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                        // Structure type?
-    std::string newTy("{");
-    for (unsigned i = 0; i < (yyvsp[-1].TypeVec)->size(); ++i) {
-      if (i != 0)
-        newTy +=  ", ";
-      newTy += (*(yyvsp[-1].TypeVec))[i]->getNewTy();
-    }
-    newTy += "}";
-    (yyval.Type) = TypeInfo::get(newTy, StructTy, (yyvsp[-1].TypeVec));
-  ;}
-    break;
-
-  case 135:
-#line 1021 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                                  // Empty structure type?
-    (yyval.Type) = TypeInfo::get("{}", StructTy, new TypeList());
-  ;}
-    break;
-
-  case 136:
-#line 1024 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                // Packed Structure type?
-    std::string newTy("<{");
-    for (unsigned i = 0; i < (yyvsp[-2].TypeVec)->size(); ++i) {
-      if (i != 0)
-        newTy +=  ", ";
-      newTy += (*(yyvsp[-2].TypeVec))[i]->getNewTy();
-    }
-    newTy += "}>";
-    (yyval.Type) = TypeInfo::get(newTy, PackedStructTy, (yyvsp[-2].TypeVec));
-  ;}
-    break;
-
-  case 137:
-#line 1034 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                          // Empty packed structure type?
-    (yyval.Type) = TypeInfo::get("<{}>", PackedStructTy, new TypeList());
-  ;}
-    break;
-
-  case 138:
-#line 1037 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                             // Pointer type?
-    (yyval.Type) = (yyvsp[-1].Type)->getPointerType();
-  ;}
-    break;
-
-  case 139:
-#line 1045 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.TypeVec) = new TypeList();
-    (yyval.TypeVec)->push_back((yyvsp[0].Type));
-  ;}
-    break;
-
-  case 140:
-#line 1049 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.TypeVec) = (yyvsp[-2].TypeVec);
-    (yyval.TypeVec)->push_back((yyvsp[0].Type));
-  ;}
-    break;
-
-  case 142:
-#line 1057 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.TypeVec) = (yyvsp[-2].TypeVec);
-    (yyval.TypeVec)->push_back(TypeInfo::get("void",VoidTy));
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 143:
-#line 1062 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.TypeVec) = new TypeList();
-    (yyval.TypeVec)->push_back(TypeInfo::get("void",VoidTy));
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 144:
-#line 1067 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.TypeVec) = new TypeList();
-  ;}
-    break;
-
-  case 145:
-#line 1077 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { // Nonempty unsized arr
-    (yyval.Const).type = (yyvsp[-3].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-3].Type)->getNewTy());
-    *(yyval.Const).cnst += " [ " + *(yyvsp[-1].String) + " ]";
-    delete (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 146:
-#line 1083 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Const).type = (yyvsp[-2].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-2].Type)->getNewTy());
-    *(yyval.Const).cnst += "[ ]";
-  ;}
-    break;
-
-  case 147:
-#line 1088 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Const).type = (yyvsp[-2].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-2].Type)->getNewTy());
-    *(yyval.Const).cnst += " c" + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 148:
-#line 1094 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { // Nonempty unsized arr
-    (yyval.Const).type = (yyvsp[-3].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-3].Type)->getNewTy());
-    *(yyval.Const).cnst += " < " + *(yyvsp[-1].String) + " >";
-    delete (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 149:
-#line 1100 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Const).type = (yyvsp[-3].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-3].Type)->getNewTy());
-    *(yyval.Const).cnst += " { " + *(yyvsp[-1].String) + " }";
-    delete (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 150:
-#line 1106 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Const).type = (yyvsp[-2].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-2].Type)->getNewTy());
-    *(yyval.Const).cnst += " {}";
-  ;}
-    break;
-
-  case 151:
-#line 1111 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst +=  " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 152:
-#line 1117 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 153:
-#line 1123 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name = getUniqueName((yyvsp[0].String), (yyvsp[-1].Type)->resolve(), true);
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst += " " + Name;
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 154:
-#line 1130 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 155:
-#line 1136 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 156:
-#line 1142 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {      // integral constants
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 157:
-#line 1148 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {            // integral constants
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 158:
-#line 1154 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                      // Boolean constants
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 159:
-#line 1160 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                     // Boolean constants
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 160:
-#line 1166 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                   // Float & Double constants
-    (yyval.Const).type = (yyvsp[-1].Type);
-    (yyval.Const).cnst = new std::string((yyvsp[-1].Type)->getNewTy());
-    *(yyval.Const).cnst += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 161:
-#line 1174 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string source = *(yyvsp[-3].Const).cnst;
-    const TypeInfo* SrcTy = (yyvsp[-3].Const).type->resolve();
-    const TypeInfo* DstTy = (yyvsp[-1].Type)->resolve(); 
-    if (*(yyvsp[-5].String) == "cast") {
-      // Call getCastUpgrade to upgrade the old cast
-      (yyval.String) = new std::string(getCastUpgrade(source, SrcTy, DstTy, true));
-    } else {
-      // Nothing to upgrade, just create the cast constant expr
-      (yyval.String) = new std::string(*(yyvsp[-5].String));
-      *(yyval.String) += "( " + source + " to " + (yyvsp[-1].Type)->getNewTy() + ")";
-    }
-    delete (yyvsp[-5].String); (yyvsp[-3].Const).destroy(); delete (yyvsp[-2].String);
-  ;}
-    break;
-
-  case 162:
-#line 1188 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-4].String) += "(" + *(yyvsp[-2].Const).cnst;
-    for (unsigned i = 0; i < (yyvsp[-1].ValList)->size(); ++i) {
-      ValueInfo& VI = (*(yyvsp[-1].ValList))[i];
-      *(yyvsp[-4].String) += ", " + *VI.val;
-      VI.destroy();
-    }
-    *(yyvsp[-4].String) += ")";
-    (yyval.String) = (yyvsp[-4].String);
-    (yyvsp[-2].Const).destroy();
-    delete (yyvsp[-1].ValList);
-  ;}
-    break;
-
-  case 163:
-#line 1200 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-7].String) += "(" + *(yyvsp[-5].Const).cnst + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    (yyvsp[-5].Const).destroy(); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-    (yyval.String) = (yyvsp[-7].String);
-  ;}
-    break;
-
-  case 164:
-#line 1205 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    const char* op = getDivRemOpcode(*(yyvsp[-5].String), (yyvsp[-3].Const).type); 
-    (yyval.String) = new std::string(op);
-    *(yyval.String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    delete (yyvsp[-5].String); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-  ;}
-    break;
-
-  case 165:
-#line 1211 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-5].String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-    (yyval.String) = (yyvsp[-5].String);
-  ;}
-    break;
-
-  case 166:
-#line 1216 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-5].String) = getCompareOp(*(yyvsp[-5].String), (yyvsp[-3].Const).type);
-    *(yyvsp[-5].String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-    (yyval.String) = (yyvsp[-5].String);
-  ;}
-    break;
-
-  case 167:
-#line 1222 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-6].String) += " " + *(yyvsp[-5].String) + " (" +  *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    delete (yyvsp[-5].String); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-    (yyval.String) = (yyvsp[-6].String);
-  ;}
-    break;
-
-  case 168:
-#line 1227 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-6].String) += " " + *(yyvsp[-5].String) + " (" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    delete (yyvsp[-5].String); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-    (yyval.String) = (yyvsp[-6].String);
-  ;}
-    break;
-
-  case 169:
-#line 1232 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    const char* shiftop = (yyvsp[-5].String)->c_str();
-    if (*(yyvsp[-5].String) == "shr")
-      shiftop = ((yyvsp[-3].Const).type->isUnsigned()) ? "lshr" : "ashr";
-    (yyval.String) = new std::string(shiftop);
-    *(yyval.String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    delete (yyvsp[-5].String); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-  ;}
-    break;
-
-  case 170:
-#line 1240 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-5].String) += "(" + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-    (yyval.String) = (yyvsp[-5].String);
-  ;}
-    break;
-
-  case 171:
-#line 1245 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-7].String) += "(" + *(yyvsp[-5].Const).cnst + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    (yyvsp[-5].Const).destroy(); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-    (yyval.String) = (yyvsp[-7].String);
-  ;}
-    break;
-
-  case 172:
-#line 1250 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-7].String) += "(" + *(yyvsp[-5].Const).cnst + "," + *(yyvsp[-3].Const).cnst + "," + *(yyvsp[-1].Const).cnst + ")";
-    (yyvsp[-5].Const).destroy(); (yyvsp[-3].Const).destroy(); (yyvsp[-1].Const).destroy();
-    (yyval.String) = (yyvsp[-7].String);
-  ;}
-    break;
-
-  case 173:
-#line 1260 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += ", " + *(yyvsp[0].Const).cnst;
-    (yyvsp[0].Const).destroy();
-    (yyval.String) = (yyvsp[-2].String);
-  ;}
-    break;
-
-  case 174:
-#line 1265 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(*(yyvsp[0].Const).cnst); (yyvsp[0].Const).destroy(); ;}
-    break;
-
-  case 177:
-#line 1280 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-;}
-    break;
-
-  case 178:
-#line 1285 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 179:
-#line 1288 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *O << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 180:
-#line 1293 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *O << "module asm " << ' ' << *(yyvsp[0].String) << '\n';
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 181:
-#line 1297 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *O << "implementation\n";
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 182:
-#line 1301 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = 0; ;}
-    break;
-
-  case 184:
-#line 1303 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = (yyvsp[0].String); *(yyval.String) = "external"; ;}
-    break;
-
-  case 185:
-#line 1306 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    EnumeratedTypes.push_back((yyvsp[0].Type));
-    if (!(yyvsp[-2].String)->empty()) {
-      NamedTypes[*(yyvsp[-2].String)] = (yyvsp[0].Type);
-      *O << *(yyvsp[-2].String) << " = ";
-    }
-    *O << "type " << (yyvsp[0].Type)->getNewTy() << '\n';
-    delete (yyvsp[-2].String); delete (yyvsp[-1].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 186:
-#line 1316 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {       // Function prototypes can be in const pool
-    *O << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 187:
-#line 1321 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {  // Asm blocks can be in the const pool
-    *O << *(yyvsp[-2].String) << ' ' << *(yyvsp[-1].String) << ' ' << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[-2].String); delete (yyvsp[-1].String); delete (yyvsp[0].String); 
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 188:
-#line 1326 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    if (!(yyvsp[-4].String)->empty()) {
-      std::string Name = getGlobalName((yyvsp[-4].String),*(yyvsp[-3].String), (yyvsp[-1].Const).type->getPointerType(),
-                                       *(yyvsp[-2].String) == "constant");
-      *O << Name << " = ";
-    }
-    *O << *(yyvsp[-3].String) << ' ' << *(yyvsp[-2].String) << ' ' << *(yyvsp[-1].Const).cnst << ' ' << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[-4].String); delete (yyvsp[-3].String); delete (yyvsp[-2].String); delete (yyvsp[0].String); 
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 189:
-#line 1336 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    if (!(yyvsp[-4].String)->empty()) {
-      std::string Name = getGlobalName((yyvsp[-4].String),*(yyvsp[-3].String),(yyvsp[-1].Type)->getPointerType(),
-                                       *(yyvsp[-2].String) == "constant");
-      *O << Name << " = ";
-    }
-    *O <<  *(yyvsp[-3].String) << ' ' << *(yyvsp[-2].String) << ' ' << (yyvsp[-1].Type)->getNewTy() << ' ' << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[-4].String); delete (yyvsp[-3].String); delete (yyvsp[-2].String); delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 190:
-#line 1346 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    if (!(yyvsp[-4].String)->empty()) {
-      std::string Name = getGlobalName((yyvsp[-4].String),*(yyvsp[-3].String),(yyvsp[-1].Type)->getPointerType(),
-                                       *(yyvsp[-2].String) == "constant");
-      *O << Name << " = ";
-    }
-    *O << *(yyvsp[-3].String) << ' ' << *(yyvsp[-2].String) << ' ' << (yyvsp[-1].Type)->getNewTy() << ' ' << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[-4].String); delete (yyvsp[-3].String); delete (yyvsp[-2].String); delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 191:
-#line 1356 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    if (!(yyvsp[-4].String)->empty()) {
-      std::string Name = getGlobalName((yyvsp[-4].String),*(yyvsp[-3].String),(yyvsp[-1].Type)->getPointerType(),
-                                       *(yyvsp[-2].String) == "constant");
-      *O << Name << " = ";
-    }
-    *O << *(yyvsp[-3].String) << ' ' << *(yyvsp[-2].String) << ' ' << (yyvsp[-1].Type)->getNewTy() << ' ' << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[-4].String); delete (yyvsp[-3].String); delete (yyvsp[-2].String); delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 192:
-#line 1366 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    *O << *(yyvsp[-1].String) << ' ' << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[-1].String); delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 193:
-#line 1371 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *O << *(yyvsp[-2].String) << " = " << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[-2].String); delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 194:
-#line 1376 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 198:
-#line 1386 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += " = " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-2].String);
-  ;}
-    break;
-
-  case 199:
-#line 1391 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += " = " + *(yyvsp[0].String);
-    if (*(yyvsp[0].String) == "64")
-      SizeOfPointer = 64;
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-2].String);
-  ;}
-    break;
-
-  case 200:
-#line 1398 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += " = " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-2].String);
-  ;}
-    break;
-
-  case 201:
-#line 1403 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += " = " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-2].String);
-  ;}
-    break;
-
-  case 202:
-#line 1410 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyvsp[-1].String)->insert(0, "[ ");
-    *(yyvsp[-1].String) += " ]";
-    (yyval.String) = (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 203:
-#line 1417 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += ", " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-2].String);
-  ;}
-    break;
-
-  case 205:
-#line 1423 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = new std::string();
-  ;}
-    break;
-
-  case 209:
-#line 1432 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(); ;}
-    break;
-
-  case 210:
-#line 1434 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-  (yyval.String) = new std::string((yyvsp[-1].Type)->getNewTy());
-  if (!(yyvsp[0].String)->empty()) {
-    std::string Name = getUniqueName((yyvsp[0].String), (yyvsp[-1].Type)->resolve());
-    *(yyval.String) += " " + Name;
-  }
-  delete (yyvsp[0].String);
-;}
-    break;
-
-  case 211:
-#line 1443 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += ", " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 212:
-#line 1447 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = (yyvsp[0].String);
-  ;}
-    break;
-
-  case 213:
-#line 1451 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = (yyvsp[0].String);
-  ;}
-    break;
-
-  case 214:
-#line 1454 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += ", ...";
-    (yyval.String) = (yyvsp[-2].String);
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 215:
-#line 1459 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = (yyvsp[0].String);
-  ;}
-    break;
-
-  case 216:
-#line 1462 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(); ;}
-    break;
-
-  case 217:
-#line 1465 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    if (!(yyvsp[-7].String)->empty()) {
-      *(yyvsp[-7].String) += " ";
-    }
-    *(yyvsp[-7].String) += (yyvsp[-6].Type)->getNewTy() + " " + *(yyvsp[-5].String) + "(" + *(yyvsp[-3].String) + ")";
-    if (!(yyvsp[-1].String)->empty()) {
-      *(yyvsp[-7].String) += " " + *(yyvsp[-1].String);
-    }
-    if (!(yyvsp[0].String)->empty()) {
-      *(yyvsp[-7].String) += " " + *(yyvsp[0].String);
-    }
-    delete (yyvsp[-5].String);
-    delete (yyvsp[-3].String);
-    delete (yyvsp[-1].String);
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-7].String);
-  ;}
-    break;
-
-  case 218:
-#line 1483 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string("{"); delete (yyvsp[0].String); ;}
-    break;
-
-  case 219:
-#line 1484 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string ("{"); ;}
-    break;
-
-  case 220:
-#line 1487 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *O << "define ";
-    if (!(yyvsp[-2].String)->empty()) {
-      *O << *(yyvsp[-2].String) << ' ';
-    }
-    *O << *(yyvsp[-1].String) << ' ' << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[-2].String); delete (yyvsp[-1].String); delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 221:
-#line 1498 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string("}"); delete (yyvsp[0].String); ;}
-    break;
-
-  case 222:
-#line 1499 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string("}"); ;}
-    break;
-
-  case 223:
-#line 1501 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-  if ((yyvsp[-1].String))
-    *O << *(yyvsp[-1].String);
-  *O << *(yyvsp[0].String) << "\n\n";
-  delete (yyvsp[-2].String); delete (yyvsp[-1].String); delete (yyvsp[0].String);
-  (yyval.String) = 0;
-;}
-    break;
-
-  case 224:
-#line 1510 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(); ;}
-    break;
-
-  case 227:
-#line 1516 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    if (!(yyvsp[-1].String)->empty())
-      *(yyvsp[-2].String) += " " + *(yyvsp[-1].String);
-    *(yyvsp[-2].String) += " " + *(yyvsp[0].String);
-    delete (yyvsp[-1].String);
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-2].String);
-  ;}
-    break;
-
-  case 228:
-#line 1529 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(); ;}
-    break;
-
-  case 238:
-#line 1535 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { 
-    (yyvsp[-1].String)->insert(0, "<");
-    *(yyvsp[-1].String) += ">";
-    (yyval.String) = (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 240:
-#line 1541 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    if (!(yyvsp[-3].String)->empty()) {
-      *(yyvsp[-4].String) += " " + *(yyvsp[-3].String);
-    }
-    *(yyvsp[-4].String) += " " + *(yyvsp[-2].String) + ", " + *(yyvsp[0].String);
-    delete (yyvsp[-3].String); delete (yyvsp[-2].String); delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-4].String);
-  ;}
-    break;
-
-  case 243:
-#line 1554 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Value).val = (yyvsp[0].String);
-    (yyval.Value).constant = false;
-    (yyval.Value).type = 0;
-  ;}
-    break;
-
-  case 244:
-#line 1559 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Value).val = (yyvsp[0].String);
-    (yyval.Value).constant = true;
-    (yyval.Value).type = 0;
-  ;}
-    break;
-
-  case 245:
-#line 1569 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyvsp[-1].Type) = (yyvsp[-1].Type)->resolve();
-    std::string Name = getUniqueName((yyvsp[0].Value).val, (yyvsp[-1].Type));
-    (yyval.Value) = (yyvsp[0].Value);
-    delete (yyval.Value).val;
-    (yyval.Value).val = new std::string((yyvsp[-1].Type)->getNewTy() + " " + Name);
-    (yyval.Value).type = (yyvsp[-1].Type);
-  ;}
-    break;
-
-  case 246:
-#line 1578 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 247:
-#line 1581 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { // Do not allow functions with 0 basic blocks   
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 248:
-#line 1589 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 249:
-#line 1593 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *O << "    " << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 250:
-#line 1598 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 251:
-#line 1601 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *O << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 253:
-#line 1607 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = (yyvsp[0].String); *(yyval.String) = "unwind"; ;}
-    break;
-
-  case 254:
-#line 1609 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {              // Return with a result...
-    *O << "    " << *(yyvsp[-1].String) << ' ' << *(yyvsp[0].Value).val << '\n';
-    delete (yyvsp[-1].String); (yyvsp[0].Value).destroy();
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 255:
-#line 1614 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                                       // Return with no result...
-    *O << "    " << *(yyvsp[-1].String) << ' ' << (yyvsp[0].Type)->getNewTy() << '\n';
-    delete (yyvsp[-1].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 256:
-#line 1619 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {                         // Unconditional Branch...
-    *O << "    " << *(yyvsp[-2].String) << ' ' << (yyvsp[-1].Type)->getNewTy() << ' ' << *(yyvsp[0].Value).val << '\n';
-    delete (yyvsp[-2].String); (yyvsp[0].Value).destroy();
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 257:
-#line 1624 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {  
-    std::string Name = getUniqueName((yyvsp[-6].Value).val, (yyvsp[-7].Type));
-    *O << "    " << *(yyvsp[-8].String) << ' ' << (yyvsp[-7].Type)->getNewTy() << ' ' << Name << ", " 
-       << (yyvsp[-4].Type)->getNewTy() << ' ' << *(yyvsp[-3].Value).val << ", " << (yyvsp[-1].Type)->getNewTy() << ' ' 
-       << *(yyvsp[0].Value).val << '\n';
-    delete (yyvsp[-8].String); (yyvsp[-6].Value).destroy(); (yyvsp[-3].Value).destroy(); (yyvsp[0].Value).destroy();
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 258:
-#line 1632 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name = getUniqueName((yyvsp[-6].Value).val, (yyvsp[-7].Type));
-    *O << "    " << *(yyvsp[-8].String) << ' ' << (yyvsp[-7].Type)->getNewTy() << ' ' << Name << ", " 
-       << (yyvsp[-4].Type)->getNewTy() << ' ' << *(yyvsp[-3].Value).val << " [" << *(yyvsp[-1].String) << " ]\n";
-    delete (yyvsp[-8].String); (yyvsp[-6].Value).destroy(); (yyvsp[-3].Value).destroy(); 
-    delete (yyvsp[-1].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 259:
-#line 1640 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name = getUniqueName((yyvsp[-5].Value).val, (yyvsp[-6].Type));
-    *O << "    " << *(yyvsp[-7].String) << ' ' << (yyvsp[-6].Type)->getNewTy() << ' ' << Name << ", " 
-       << (yyvsp[-3].Type)->getNewTy() << ' ' << *(yyvsp[-2].Value).val << "[]\n";
-    delete (yyvsp[-7].String); (yyvsp[-5].Value).destroy(); (yyvsp[-2].Value).destroy();
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 260:
-#line 1648 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    const TypeInfo* ResTy = getFunctionReturnType((yyvsp[-10].Type));
-    *O << "    ";
-    if (!(yyvsp[-13].String)->empty()) {
-      std::string Name = getUniqueName((yyvsp[-13].String), ResTy);
-      *O << Name << " = ";
-    }
-    *O << *(yyvsp[-12].String) << ' ' << *(yyvsp[-11].String) << ' ' << (yyvsp[-10].Type)->getNewTy() << ' ' << *(yyvsp[-9].Value).val << " (";
-    for (unsigned i = 0; i < (yyvsp[-7].ValList)->size(); ++i) {
-      ValueInfo& VI = (*(yyvsp[-7].ValList))[i];
-      *O << *VI.val;
-      if (i+1 < (yyvsp[-7].ValList)->size())
-        *O << ", ";
-      VI.destroy();
-    }
-    *O << ") " << *(yyvsp[-5].String) << ' ' << (yyvsp[-4].Type)->getNewTy() << ' ' << *(yyvsp[-3].Value).val << ' ' 
-       << *(yyvsp[-2].String) << ' ' << (yyvsp[-1].Type)->getNewTy() << ' ' << *(yyvsp[0].Value).val << '\n';
-    delete (yyvsp[-13].String); delete (yyvsp[-12].String); delete (yyvsp[-11].String); (yyvsp[-9].Value).destroy(); delete (yyvsp[-7].ValList); 
-    delete (yyvsp[-5].String); (yyvsp[-3].Value).destroy(); delete (yyvsp[-2].String); (yyvsp[0].Value).destroy(); 
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 261:
-#line 1669 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *O << "    " << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 262:
-#line 1674 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *O << "    " << *(yyvsp[0].String) << '\n';
-    delete (yyvsp[0].String);
-    (yyval.String) = 0;
-  ;}
-    break;
-
-  case 263:
-#line 1680 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-5].String) += " " + (yyvsp[-4].Type)->getNewTy() + " " + *(yyvsp[-3].String) + ", " + (yyvsp[-1].Type)->getNewTy() + " " + 
-           *(yyvsp[0].Value).val;
-    delete (yyvsp[-3].String); (yyvsp[0].Value).destroy();
-    (yyval.String) = (yyvsp[-5].String);
-  ;}
-    break;
-
-  case 264:
-#line 1686 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyvsp[-3].String)->insert(0, (yyvsp[-4].Type)->getNewTy() + " " );
-    *(yyvsp[-3].String) += ", " + (yyvsp[-1].Type)->getNewTy() + " " + *(yyvsp[0].Value).val;
-    (yyvsp[0].Value).destroy();
-    (yyval.String) = (yyvsp[-3].String);
-  ;}
-    break;
-
-  case 265:
-#line 1694 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    if (!(yyvsp[-1].String)->empty()) {
-      // Get a unique name for this value, based on its type.
-      std::string Name = getUniqueName((yyvsp[-1].String), (yyvsp[0].Value).type);
-      *(yyvsp[-1].String) = Name + " = ";
-      if (deleteUselessCastFlag && *deleteUselessCastName == Name) {
-        // don't actually delete it, just comment it out
-        (yyvsp[-1].String)->insert(0, "; USELSS BITCAST: "); 
-        delete deleteUselessCastName;
-      }
-    }
-    *(yyvsp[-1].String) += *(yyvsp[0].Value).val;
-    (yyvsp[0].Value).destroy();
-    deleteUselessCastFlag = false;
-    (yyval.String) = (yyvsp[-1].String); 
-  ;}
-    break;
-
-  case 266:
-#line 1712 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {    // Used for PHI nodes
-    std::string Name = getUniqueName((yyvsp[-3].Value).val, (yyvsp[-5].Type));
-    Name.insert(0, (yyvsp[-5].Type)->getNewTy() + "[");
-    Name += "," + *(yyvsp[-1].Value).val + "]";
-    (yyval.Value).val = new std::string(Name);
-    (yyval.Value).type = (yyvsp[-5].Type);
-    (yyvsp[-3].Value).destroy(); (yyvsp[-1].Value).destroy();
-  ;}
-    break;
-
-  case 267:
-#line 1720 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name = getUniqueName((yyvsp[-3].Value).val, (yyvsp[-6].Value).type);
-    *(yyvsp[-6].Value).val += ", [" + Name + "," + *(yyvsp[-1].Value).val + "]";
-    (yyvsp[-3].Value).destroy(); (yyvsp[-1].Value).destroy();
-    (yyval.Value) = (yyvsp[-6].Value);
-  ;}
-    break;
-
-  case 268:
-#line 1729 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.ValList) = new ValueList();
-    (yyval.ValList)->push_back((yyvsp[0].Value));
-  ;}
-    break;
-
-  case 269:
-#line 1733 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.ValList) = (yyvsp[-2].ValList);
-    (yyval.ValList)->push_back((yyvsp[0].Value));
-  ;}
-    break;
-
-  case 270:
-#line 1740 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.ValList) = (yyvsp[0].ValList); ;}
-    break;
-
-  case 271:
-#line 1741 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.ValList) = new ValueList(); ;}
-    break;
-
-  case 272:
-#line 1745 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-1].String) += " " + *(yyvsp[0].String);
-    delete (yyvsp[0].String);
-    (yyval.String) = (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 274:
-#line 1753 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    const char* op = getDivRemOpcode(*(yyvsp[-4].String), (yyvsp[-3].Type)); 
-    std::string Name1 = getUniqueName((yyvsp[-2].Value).val, (yyvsp[-3].Type));
-    std::string Name2 = getUniqueName((yyvsp[0].Value).val, (yyvsp[-3].Type));
-    (yyval.Value).val = new std::string(op);
-    *(yyval.Value).val += " " + (yyvsp[-3].Type)->getNewTy() + " " + Name1 + ", " + Name2;
-    (yyval.Value).type = (yyvsp[-3].Type);
-    delete (yyvsp[-4].String); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 275:
-#line 1762 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name1 = getUniqueName((yyvsp[-2].Value).val, (yyvsp[-3].Type));
-    std::string Name2 = getUniqueName((yyvsp[0].Value).val, (yyvsp[-3].Type));
-    *(yyvsp[-4].String) += " " + (yyvsp[-3].Type)->getNewTy() + " " + Name1 + ", " + Name2;
-    (yyval.Value).val = (yyvsp[-4].String);
-    (yyval.Value).type = (yyvsp[-3].Type);
-    (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 276:
-#line 1770 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name1 = getUniqueName((yyvsp[-2].Value).val, (yyvsp[-3].Type));
-    std::string Name2 = getUniqueName((yyvsp[0].Value).val, (yyvsp[-3].Type));
-    *(yyvsp[-4].String) = getCompareOp(*(yyvsp[-4].String), (yyvsp[-3].Type));
-    *(yyvsp[-4].String) += " " + (yyvsp[-3].Type)->getNewTy() + " " + Name1 + ", " + Name2;
-    (yyval.Value).val = (yyvsp[-4].String);
-    (yyval.Value).type = TypeInfo::get("bool",BoolTy);
-    (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 277:
-#line 1779 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name1 = getUniqueName((yyvsp[-2].Value).val, (yyvsp[-3].Type));
-    std::string Name2 = getUniqueName((yyvsp[0].Value).val, (yyvsp[-3].Type));
-    *(yyvsp[-5].String) += " " + *(yyvsp[-4].String) + " " + (yyvsp[-3].Type)->getNewTy() + " " + Name1 + "," + Name2;
-    (yyval.Value).val = (yyvsp[-5].String);
-    (yyval.Value).type = TypeInfo::get("bool",BoolTy);
-    delete (yyvsp[-4].String); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 278:
-#line 1787 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name1 = getUniqueName((yyvsp[-2].Value).val, (yyvsp[-3].Type));
-    std::string Name2 = getUniqueName((yyvsp[0].Value).val, (yyvsp[-3].Type));
-    *(yyvsp[-5].String) += " " + *(yyvsp[-4].String) + " " + (yyvsp[-3].Type)->getNewTy() + " " + Name1 + "," + Name2;
-    (yyval.Value).val = (yyvsp[-5].String);
-    (yyval.Value).type = TypeInfo::get("bool",BoolTy);
-    delete (yyvsp[-4].String); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 279:
-#line 1795 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    (yyval.Value) = (yyvsp[0].Value);
-    (yyval.Value).val->insert(0, *(yyvsp[-1].String) + " ");
-    delete (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 280:
-#line 1800 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    const char* shiftop = (yyvsp[-3].String)->c_str();
-    if (*(yyvsp[-3].String) == "shr")
-      shiftop = ((yyvsp[-2].Value).type->isUnsigned()) ? "lshr" : "ashr";
-    (yyval.Value).val = new std::string(shiftop);
-    *(yyval.Value).val += " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val;
-    (yyval.Value).type = (yyvsp[-2].Value).type;
-    delete (yyvsp[-3].String); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 281:
-#line 1809 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string source = *(yyvsp[-2].Value).val;
-    const TypeInfo* SrcTy = (yyvsp[-2].Value).type->resolve();
-    const TypeInfo* DstTy = (yyvsp[0].Type)->resolve();
-    (yyval.Value).val = new std::string();
-    (yyval.Value).type = DstTy;
-    if (*(yyvsp[-3].String) == "cast") {
-      *(yyval.Value).val += getCastUpgrade(source, SrcTy, DstTy, false);
-    } else {
-      *(yyval.Value).val += *(yyvsp[-3].String) + " " + source + " to " + DstTy->getNewTy();
-    }
-    // Check to see if this is a useless cast of a value to the same name
-    // and the same type. Such casts will probably cause redefinition errors
-    // when assembled and perform no code gen action so just remove them.
-    if (*(yyvsp[-3].String) == "cast" || *(yyvsp[-3].String) == "bitcast")
-      if (SrcTy->isInteger() && DstTy->isInteger() &&
-          SrcTy->getBitWidth() == DstTy->getBitWidth()) {
-        deleteUselessCastFlag = true; // Flag the "Inst" rule
-        deleteUselessCastName = new std::string(*(yyvsp[-2].Value).val); // save the name
-        size_t pos = deleteUselessCastName->find_first_of("%\"",0);
-        if (pos != std::string::npos) {
-          // remove the type portion before val
-          deleteUselessCastName->erase(0, pos);
-        }
-      }
-    delete (yyvsp[-3].String); (yyvsp[-2].Value).destroy();
-    delete (yyvsp[-1].String);
-  ;}
-    break;
-
-  case 282:
-#line 1837 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-5].String) += " " + *(yyvsp[-4].Value).val + ", " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val;
-    (yyval.Value).val = (yyvsp[-5].String);
-    (yyval.Value).type = (yyvsp[-2].Value).type;
-    (yyvsp[-4].Value).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 283:
-#line 1843 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-3].String) += " " + *(yyvsp[-2].Value).val + ", " + (yyvsp[0].Type)->getNewTy();
-    (yyval.Value).val = (yyvsp[-3].String);
-    (yyval.Value).type = (yyvsp[0].Type);
-    (yyvsp[-2].Value).destroy();
-  ;}
-    break;
-
-  case 284:
-#line 1849 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-3].String) += " " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val;
-    (yyval.Value).val = (yyvsp[-3].String);
-    (yyvsp[-2].Value).type = (yyvsp[-2].Value).type->resolve();;
-    (yyval.Value).type = (yyvsp[-2].Value).type->getElementType();
-    (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 285:
-#line 1856 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-5].String) += " " + *(yyvsp[-4].Value).val + ", " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val;
-    (yyval.Value).val = (yyvsp[-5].String);
-    (yyval.Value).type = (yyvsp[-4].Value).type;
-    (yyvsp[-4].Value).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 286:
-#line 1862 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-5].String) += " " + *(yyvsp[-4].Value).val + ", " + *(yyvsp[-2].Value).val + ", " + *(yyvsp[0].Value).val;
-    (yyval.Value).val = (yyvsp[-5].String);
-    (yyval.Value).type = (yyvsp[-4].Value).type;
-    (yyvsp[-4].Value).destroy(); (yyvsp[-2].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 287:
-#line 1868 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-1].String) += " " + *(yyvsp[0].Value).val;
-    (yyval.Value).val = (yyvsp[-1].String);
-    (yyval.Value).type = (yyvsp[0].Value).type;
-    delete (yyvsp[0].Value).val;
-  ;}
-    break;
-
-  case 288:
-#line 1874 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    // map llvm.isunordered to "fcmp uno" 
-    if (*(yyvsp[-3].Value).val == "%llvm.isunordered.f32" ||
-        *(yyvsp[-3].Value).val == "%llvm.isunordered.f64") {
-      (yyval.Value).val = new std::string( "fcmp uno " + *(*(yyvsp[-1].ValList))[0].val + ", ");
-      size_t pos = (*(yyvsp[-1].ValList))[1].val->find(' ');
-      assert(pos != std::string::npos && "no space?");
-      *(yyval.Value).val += (*(yyvsp[-1].ValList))[1].val->substr(pos+1);
-      (yyval.Value).type = TypeInfo::get("bool", BoolTy);
-    } else {
-      if (!(yyvsp[-5].String)->empty())
-        *(yyvsp[-6].String) += " " + *(yyvsp[-5].String);
-      if (!(yyvsp[-6].String)->empty())
-        *(yyvsp[-6].String) += " ";
-      *(yyvsp[-6].String) += (yyvsp[-4].Type)->getNewTy() + " " + *(yyvsp[-3].Value).val + "(";
-      for (unsigned i = 0; i < (yyvsp[-1].ValList)->size(); ++i) {
-        ValueInfo& VI = (*(yyvsp[-1].ValList))[i];
-        *(yyvsp[-6].String) += *VI.val;
-        if (i+1 < (yyvsp[-1].ValList)->size())
-          *(yyvsp[-6].String) += ", ";
-        VI.destroy();
-      }
-      *(yyvsp[-6].String) += ")";
-      (yyval.Value).val = (yyvsp[-6].String);
-      (yyval.Value).type = getFunctionReturnType((yyvsp[-4].Type));
-    }
-    delete (yyvsp[-5].String); (yyvsp[-3].Value).destroy(); delete (yyvsp[-1].ValList);
-  ;}
-    break;
-
-  case 290:
-#line 1907 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.ValList) = (yyvsp[0].ValList); ;}
-    break;
-
-  case 291:
-#line 1908 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {  (yyval.ValList) = new ValueList(); ;}
-    break;
-
-  case 293:
-#line 1913 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    { (yyval.String) = new std::string(); ;}
-    break;
-
-  case 294:
-#line 1916 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += " " + (yyvsp[-1].Type)->getNewTy();
-    if (!(yyvsp[0].String)->empty())
-      *(yyvsp[-2].String) += " " + *(yyvsp[0].String);
-    (yyval.Value).val = (yyvsp[-2].String);
-    (yyval.Value).type = (yyvsp[-1].Type)->getPointerType();
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 295:
-#line 1924 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name = getUniqueName((yyvsp[-1].Value).val, (yyvsp[-2].Type));
-    *(yyvsp[-5].String) += " " + (yyvsp[-4].Type)->getNewTy() + ", " + (yyvsp[-2].Type)->getNewTy() + " " + Name;
-    if (!(yyvsp[0].String)->empty())
-      *(yyvsp[-5].String) += " " + *(yyvsp[0].String);
-    (yyval.Value).val = (yyvsp[-5].String);
-    (yyval.Value).type = (yyvsp[-4].Type)->getPointerType();
-    (yyvsp[-1].Value).destroy(); delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 296:
-#line 1933 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-2].String) += " " + (yyvsp[-1].Type)->getNewTy();
-    if (!(yyvsp[0].String)->empty())
-      *(yyvsp[-2].String) += " " + *(yyvsp[0].String);
-    (yyval.Value).val = (yyvsp[-2].String);
-    (yyval.Value).type = (yyvsp[-1].Type)->getPointerType();
-    delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 297:
-#line 1941 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name = getUniqueName((yyvsp[-1].Value).val, (yyvsp[-2].Type));
-    *(yyvsp[-5].String) += " " + (yyvsp[-4].Type)->getNewTy() + ", " + (yyvsp[-2].Type)->getNewTy() + " " + Name;
-    if (!(yyvsp[0].String)->empty())
-      *(yyvsp[-5].String) += " " + *(yyvsp[0].String);
-    (yyval.Value).val = (yyvsp[-5].String);
-    (yyval.Value).type = (yyvsp[-4].Type)->getPointerType();
-    (yyvsp[-1].Value).destroy(); delete (yyvsp[0].String);
-  ;}
-    break;
-
-  case 298:
-#line 1950 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    *(yyvsp[-1].String) += " " + *(yyvsp[0].Value).val;
-    (yyval.Value).val = (yyvsp[-1].String);
-    (yyval.Value).type = TypeInfo::get("void", VoidTy); 
-    (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 299:
-#line 1956 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name = getUniqueName((yyvsp[0].Value).val, (yyvsp[-1].Type));
-    if (!(yyvsp[-3].String)->empty())
-      *(yyvsp[-3].String) += " ";
-    *(yyvsp[-3].String) += *(yyvsp[-2].String) + " " + (yyvsp[-1].Type)->getNewTy() + " " + Name;
-    (yyval.Value).val = (yyvsp[-3].String);
-    (yyval.Value).type = (yyvsp[-1].Type)->getElementType();
-    delete (yyvsp[-2].String); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 300:
-#line 1965 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name = getUniqueName((yyvsp[0].Value).val, (yyvsp[-1].Type));
-    if (!(yyvsp[-5].String)->empty())
-      *(yyvsp[-5].String) += " ";
-    *(yyvsp[-5].String) += *(yyvsp[-4].String) + " " + *(yyvsp[-3].Value).val + ", " + (yyvsp[-1].Type)->getNewTy() + " " + Name;
-    (yyval.Value).val = (yyvsp[-5].String);
-    (yyval.Value).type = TypeInfo::get("void", VoidTy);
-    delete (yyvsp[-4].String); (yyvsp[-3].Value).destroy(); (yyvsp[0].Value).destroy();
-  ;}
-    break;
-
-  case 301:
-#line 1974 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-    {
-    std::string Name = getUniqueName((yyvsp[-1].Value).val, (yyvsp[-2].Type));
-    // Upgrade the indices
-    for (unsigned i = 0; i < (yyvsp[0].ValList)->size(); ++i) {
-      ValueInfo& VI = (*(yyvsp[0].ValList))[i];
-      if (VI.type->isUnsigned() && !VI.isConstant() && 
-          VI.type->getBitWidth() < 64) {
-        *O << "    %gep_upgrade" << unique << " = zext " << *VI.val 
-           << " to i64\n";
-        *VI.val = "i64 %gep_upgrade" + llvm::utostr(unique++);
-        VI.type = TypeInfo::get("i64",ULongTy);
-      }
-    }
-    *(yyvsp[-3].String) += " " + (yyvsp[-2].Type)->getNewTy() + " " + Name;
-    for (unsigned i = 0; i < (yyvsp[0].ValList)->size(); ++i) {
-      ValueInfo& VI = (*(yyvsp[0].ValList))[i];
-      *(yyvsp[-3].String) += ", " + *VI.val;
-    }
-    (yyval.Value).val = (yyvsp[-3].String);
-    (yyval.Value).type = getGEPIndexedType((yyvsp[-2].Type),(yyvsp[0].ValList)); 
-    (yyvsp[-1].Value).destroy(); delete (yyvsp[0].ValList);
-  ;}
-    break;
-
-
-      default: break;
-    }
-
-/* Line 1126 of yacc.c.  */
-#line 4505 "UpgradeParser.tab.c"
-\f
-  yyvsp -= yylen;
-  yyssp -= yylen;
-
-
-  YY_STACK_PRINT (yyss, yyssp);
-
-  *++yyvsp = yyval;
-
-
-  /* Now `shift' the result of the reduction.  Determine what state
-     that goes to, based on the state we popped back to and the rule
-     number reduced by.  */
-
-  yyn = yyr1[yyn];
-
-  yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
-  if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
-    yystate = yytable[yystate];
-  else
-    yystate = yydefgoto[yyn - YYNTOKENS];
-
-  goto yynewstate;
-
-
-/*------------------------------------.
-| yyerrlab -- here on detecting error |
-`------------------------------------*/
-yyerrlab:
-  /* If not already recovering from an error, report this error.  */
-  if (!yyerrstatus)
-    {
-      ++yynerrs;
-#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)
-             {
-               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;
-
-         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;
-           }
-       }
-      else
-#endif /* YYERROR_VERBOSE */
-       yyerror (YY_("syntax error"));
-    }
-
-
-
-  if (yyerrstatus == 3)
-    {
-      /* If just tried and failed to reuse look-ahead token after an
-        error, discard it.  */
-
-      if (yychar <= YYEOF)
-        {
-         /* Return failure if at end of input.  */
-         if (yychar == YYEOF)
-           YYABORT;
-        }
-      else
-       {
-         yydestruct ("Error: discarding", yytoken, &yylval);
-         yychar = YYEMPTY;
-       }
-    }
-
-  /* Else will try to reuse look-ahead token after shifting the error
-     token.  */
-  goto yyerrlab1;
-
-
-/*---------------------------------------------------.
-| yyerrorlab -- error raised explicitly by YYERROR.  |
-`---------------------------------------------------*/
-yyerrorlab:
-
-  /* Pacify compilers like GCC when the user code never invokes
-     YYERROR and the label yyerrorlab therefore never appears in user
-     code.  */
-  if (0)
-     goto yyerrorlab;
-
-yyvsp -= yylen;
-  yyssp -= yylen;
-  yystate = *yyssp;
-  goto yyerrlab1;
-
-
-/*-------------------------------------------------------------.
-| yyerrlab1 -- common code for both syntax error and YYERROR.  |
-`-------------------------------------------------------------*/
-yyerrlab1:
-  yyerrstatus = 3;     /* Each real token shifted decrements this.  */
-
-  for (;;)
-    {
-      yyn = yypact[yystate];
-      if (yyn != YYPACT_NINF)
-       {
-         yyn += YYTERROR;
-         if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
-           {
-             yyn = yytable[yyn];
-             if (0 < yyn)
-               break;
-           }
-       }
-
-      /* Pop the current state because it cannot handle the error token.  */
-      if (yyssp == yyss)
-       YYABORT;
-
-
-      yydestruct ("Error: popping", yystos[yystate], yyvsp);
-      YYPOPSTACK;
-      yystate = *yyssp;
-      YY_STACK_PRINT (yyss, yyssp);
-    }
-
-  if (yyn == YYFINAL)
-    YYACCEPT;
-
-  *++yyvsp = yylval;
-
-
-  /* Shift the error token. */
-  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
-
-  yystate = yyn;
-  goto yynewstate;
-
-
-/*-------------------------------------.
-| yyacceptlab -- YYACCEPT comes here.  |
-`-------------------------------------*/
-yyacceptlab:
-  yyresult = 0;
-  goto yyreturn;
-
-/*-----------------------------------.
-| yyabortlab -- YYABORT comes here.  |
-`-----------------------------------*/
-yyabortlab:
-  yyresult = 1;
-  goto yyreturn;
-
-#ifndef yyoverflow
-/*-------------------------------------------------.
-| yyexhaustedlab -- memory exhaustion comes here.  |
-`-------------------------------------------------*/
-yyexhaustedlab:
-  yyerror (YY_("memory exhausted"));
-  yyresult = 2;
-  /* Fall through.  */
-#endif
-
-yyreturn:
-  if (yychar != YYEOF && yychar != YYEMPTY)
-     yydestruct ("Cleanup: discarding lookahead",
-                yytoken, &yylval);
-  while (yyssp != yyss)
-    {
-      yydestruct ("Cleanup: popping",
-                 yystos[*yyssp], yyvsp);
-      YYPOPSTACK;
-    }
-#ifndef yyoverflow
-  if (yyss != yyssa)
-    YYSTACK_FREE (yyss);
-#endif
-  return yyresult;
-}
-
-
-#line 1997 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-
-
-int yyerror(const char *ErrorMsg) {
-  std::string where 
-    = std::string((CurFilename == "-") ? std::string("<stdin>") : CurFilename)
-                  + ":" + llvm::utostr((unsigned) Upgradelineno) + ": ";
-  std::string errMsg = where + "error: " + std::string(ErrorMsg) + 
-                       " while reading ";
-  if (yychar == YYEMPTY || yychar == 0)
-    errMsg += "end-of-file.";
-  else
-    errMsg += "token: '" + std::string(Upgradetext, Upgradeleng) + "'";
-  std::cerr << "llvm-upgrade: " << errMsg << '\n';
-  *O << "llvm-upgrade parse failed.\n";
-  exit(1);
-}
-
-static void warning(const std::string& ErrorMsg) {
-  std::string where 
-    = std::string((CurFilename == "-") ? std::string("<stdin>") : CurFilename)
-                  + ":" + llvm::utostr((unsigned) Upgradelineno) + ": ";
-  std::string errMsg = where + "warning: " + std::string(ErrorMsg) + 
-                       " while reading ";
-  if (yychar == YYEMPTY || yychar == 0)
-    errMsg += "end-of-file.";
-  else
-    errMsg += "token: '" + std::string(Upgradetext, Upgradeleng) + "'";
-  std::cerr << "llvm-upgrade: " << errMsg << '\n';
-}
-
diff --git a/tools/llvm-upgrade/UpgradeParser.h b/tools/llvm-upgrade/UpgradeParser.h
deleted file mode 100644 (file)
index 36fd8b3..0000000
+++ /dev/null
@@ -1,355 +0,0 @@
-/* A Bison parser, made by GNU Bison 2.1.  */
-
-/* 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
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
-
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
-
-/* 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
-# define YYTOKENTYPE
-   /* Put the tokens into the symbol table, so that GDB and other debuggers
-      know about them.  */
-   enum yytokentype {
-     VOID = 258,
-     BOOL = 259,
-     SBYTE = 260,
-     UBYTE = 261,
-     SHORT = 262,
-     USHORT = 263,
-     INT = 264,
-     UINT = 265,
-     LONG = 266,
-     ULONG = 267,
-     FLOAT = 268,
-     DOUBLE = 269,
-     LABEL = 270,
-     OPAQUE = 271,
-     ESINT64VAL = 272,
-     EUINT64VAL = 273,
-     SINTVAL = 274,
-     UINTVAL = 275,
-     FPVAL = 276,
-     NULL_TOK = 277,
-     UNDEF = 278,
-     ZEROINITIALIZER = 279,
-     TRUETOK = 280,
-     FALSETOK = 281,
-     TYPE = 282,
-     VAR_ID = 283,
-     LABELSTR = 284,
-     STRINGCONSTANT = 285,
-     IMPLEMENTATION = 286,
-     BEGINTOK = 287,
-     ENDTOK = 288,
-     DECLARE = 289,
-     GLOBAL = 290,
-     CONSTANT = 291,
-     SECTION = 292,
-     VOLATILE = 293,
-     TO = 294,
-     DOTDOTDOT = 295,
-     CONST = 296,
-     INTERNAL = 297,
-     LINKONCE = 298,
-     WEAK = 299,
-     DLLIMPORT = 300,
-     DLLEXPORT = 301,
-     EXTERN_WEAK = 302,
-     APPENDING = 303,
-     NOT = 304,
-     EXTERNAL = 305,
-     TARGET = 306,
-     TRIPLE = 307,
-     ENDIAN = 308,
-     POINTERSIZE = 309,
-     LITTLE = 310,
-     BIG = 311,
-     ALIGN = 312,
-     UNINITIALIZED = 313,
-     DEPLIBS = 314,
-     CALL = 315,
-     TAIL = 316,
-     ASM_TOK = 317,
-     MODULE = 318,
-     SIDEEFFECT = 319,
-     CC_TOK = 320,
-     CCC_TOK = 321,
-     CSRETCC_TOK = 322,
-     FASTCC_TOK = 323,
-     COLDCC_TOK = 324,
-     X86_STDCALLCC_TOK = 325,
-     X86_FASTCALLCC_TOK = 326,
-     DATALAYOUT = 327,
-     RET = 328,
-     BR = 329,
-     SWITCH = 330,
-     INVOKE = 331,
-     EXCEPT = 332,
-     UNWIND = 333,
-     UNREACHABLE = 334,
-     ADD = 335,
-     SUB = 336,
-     MUL = 337,
-     DIV = 338,
-     UDIV = 339,
-     SDIV = 340,
-     FDIV = 341,
-     REM = 342,
-     UREM = 343,
-     SREM = 344,
-     FREM = 345,
-     AND = 346,
-     OR = 347,
-     XOR = 348,
-     SETLE = 349,
-     SETGE = 350,
-     SETLT = 351,
-     SETGT = 352,
-     SETEQ = 353,
-     SETNE = 354,
-     ICMP = 355,
-     FCMP = 356,
-     EQ = 357,
-     NE = 358,
-     SLT = 359,
-     SGT = 360,
-     SLE = 361,
-     SGE = 362,
-     OEQ = 363,
-     ONE = 364,
-     OLT = 365,
-     OGT = 366,
-     OLE = 367,
-     OGE = 368,
-     ORD = 369,
-     UNO = 370,
-     UEQ = 371,
-     UNE = 372,
-     ULT = 373,
-     UGT = 374,
-     ULE = 375,
-     UGE = 376,
-     MALLOC = 377,
-     ALLOCA = 378,
-     FREE = 379,
-     LOAD = 380,
-     STORE = 381,
-     GETELEMENTPTR = 382,
-     PHI_TOK = 383,
-     SELECT = 384,
-     SHL = 385,
-     SHR = 386,
-     ASHR = 387,
-     LSHR = 388,
-     VAARG = 389,
-     EXTRACTELEMENT = 390,
-     INSERTELEMENT = 391,
-     SHUFFLEVECTOR = 392,
-     CAST = 393,
-     TRUNC = 394,
-     ZEXT = 395,
-     SEXT = 396,
-     FPTRUNC = 397,
-     FPEXT = 398,
-     FPTOUI = 399,
-     FPTOSI = 400,
-     UITOFP = 401,
-     SITOFP = 402,
-     PTRTOINT = 403,
-     INTTOPTR = 404,
-     BITCAST = 405
-   };
-#endif
-/* Tokens.  */
-#define VOID 258
-#define BOOL 259
-#define SBYTE 260
-#define UBYTE 261
-#define SHORT 262
-#define USHORT 263
-#define INT 264
-#define UINT 265
-#define LONG 266
-#define ULONG 267
-#define FLOAT 268
-#define DOUBLE 269
-#define LABEL 270
-#define OPAQUE 271
-#define ESINT64VAL 272
-#define EUINT64VAL 273
-#define SINTVAL 274
-#define UINTVAL 275
-#define FPVAL 276
-#define NULL_TOK 277
-#define UNDEF 278
-#define ZEROINITIALIZER 279
-#define TRUETOK 280
-#define FALSETOK 281
-#define TYPE 282
-#define VAR_ID 283
-#define LABELSTR 284
-#define STRINGCONSTANT 285
-#define IMPLEMENTATION 286
-#define BEGINTOK 287
-#define ENDTOK 288
-#define DECLARE 289
-#define GLOBAL 290
-#define CONSTANT 291
-#define SECTION 292
-#define VOLATILE 293
-#define TO 294
-#define DOTDOTDOT 295
-#define CONST 296
-#define INTERNAL 297
-#define LINKONCE 298
-#define WEAK 299
-#define DLLIMPORT 300
-#define DLLEXPORT 301
-#define EXTERN_WEAK 302
-#define APPENDING 303
-#define NOT 304
-#define EXTERNAL 305
-#define TARGET 306
-#define TRIPLE 307
-#define ENDIAN 308
-#define POINTERSIZE 309
-#define LITTLE 310
-#define BIG 311
-#define ALIGN 312
-#define UNINITIALIZED 313
-#define DEPLIBS 314
-#define CALL 315
-#define TAIL 316
-#define ASM_TOK 317
-#define MODULE 318
-#define SIDEEFFECT 319
-#define CC_TOK 320
-#define CCC_TOK 321
-#define CSRETCC_TOK 322
-#define FASTCC_TOK 323
-#define COLDCC_TOK 324
-#define X86_STDCALLCC_TOK 325
-#define X86_FASTCALLCC_TOK 326
-#define DATALAYOUT 327
-#define RET 328
-#define BR 329
-#define SWITCH 330
-#define INVOKE 331
-#define EXCEPT 332
-#define UNWIND 333
-#define UNREACHABLE 334
-#define ADD 335
-#define SUB 336
-#define MUL 337
-#define DIV 338
-#define UDIV 339
-#define SDIV 340
-#define FDIV 341
-#define REM 342
-#define UREM 343
-#define SREM 344
-#define FREM 345
-#define AND 346
-#define OR 347
-#define XOR 348
-#define SETLE 349
-#define SETGE 350
-#define SETLT 351
-#define SETGT 352
-#define SETEQ 353
-#define SETNE 354
-#define ICMP 355
-#define FCMP 356
-#define EQ 357
-#define NE 358
-#define SLT 359
-#define SGT 360
-#define SLE 361
-#define SGE 362
-#define OEQ 363
-#define ONE 364
-#define OLT 365
-#define OGT 366
-#define OLE 367
-#define OGE 368
-#define ORD 369
-#define UNO 370
-#define UEQ 371
-#define UNE 372
-#define ULT 373
-#define UGT 374
-#define ULE 375
-#define UGE 376
-#define MALLOC 377
-#define ALLOCA 378
-#define FREE 379
-#define LOAD 380
-#define STORE 381
-#define GETELEMENTPTR 382
-#define PHI_TOK 383
-#define SELECT 384
-#define SHL 385
-#define SHR 386
-#define ASHR 387
-#define LSHR 388
-#define VAARG 389
-#define EXTRACTELEMENT 390
-#define INSERTELEMENT 391
-#define SHUFFLEVECTOR 392
-#define CAST 393
-#define TRUNC 394
-#define ZEXT 395
-#define SEXT 396
-#define FPTRUNC 397
-#define FPEXT 398
-#define FPTOUI 399
-#define FPTOSI 400
-#define UITOFP 401
-#define SITOFP 402
-#define PTRTOINT 403
-#define INTTOPTR 404
-#define BITCAST 405
-
-
-
-
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 802 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/tools/llvm-upgrade/UpgradeParser.y"
-typedef union YYSTYPE {
-  std::string*    String;
-  const TypeInfo* Type;
-  ValueInfo       Value;
-  ConstInfo       Const;
-  ValueList*      ValList;
-  TypeList*       TypeVec;
-} YYSTYPE;
-/* Line 1447 of yacc.c.  */
-#line 347 "UpgradeParser.tab.h"
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
-# define YYSTYPE_IS_TRIVIAL 1
-#endif
-
-extern YYSTYPE Upgradelval;
-
-
-