Regenerate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35259 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AsmParser/llvmAsmParser.cpp.cvs b/lib/AsmParser/llvmAsmParser.cpp.cvs
index d631b5c..ae45d47 100644
--- a/lib/AsmParser/llvmAsmParser.cpp.cvs
+++ b/lib/AsmParser/llvmAsmParser.cpp.cvs
@@ -193,8 +193,9 @@
      NORETURN = 384,
      INREG = 385,
      SRET = 386,
-     DEFAULT = 387,
-     HIDDEN = 388
+     NOUNWIND = 387,
+     DEFAULT = 388,
+     HIDDEN = 389
    };
 #endif
 /* Tokens.  */
@@ -327,8 +328,9 @@
 #define NORETURN 384
 #define INREG 385
 #define SRET 386
-#define DEFAULT 387
-#define HIDDEN 388
+#define NOUNWIND 387
+#define DEFAULT 388
+#define HIDDEN 389
 
 
 
@@ -1327,7 +1329,7 @@
   llvm::FCmpInst::Predicate         FPredicate;
 } YYSTYPE;
 /* Line 196 of yacc.c.  */
-#line 1331 "llvmAsmParser.tab.c"
+#line 1333 "llvmAsmParser.tab.c"
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 # define YYSTYPE_IS_TRIVIAL 1
@@ -1339,7 +1341,7 @@
 
 
 /* Line 219 of yacc.c.  */
-#line 1343 "llvmAsmParser.tab.c"
+#line 1345 "llvmAsmParser.tab.c"
 
 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
 # define YYSIZE_T __SIZE_TYPE__
@@ -1490,20 +1492,20 @@
 /* YYFINAL -- State number of the termination state. */
 #define YYFINAL  40
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   1429
+#define YYLAST   1434
 
 /* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS  148
+#define YYNTOKENS  149
 /* YYNNTS -- Number of nonterminals. */
 #define YYNNTS  78
 /* YYNRULES -- Number of rules. */
-#define YYNRULES  286
+#define YYNRULES  287
 /* YYNRULES -- Number of states. */
-#define YYNSTATES  559
+#define YYNSTATES  560
 
 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
 #define YYUNDEFTOK  2
-#define YYMAXUTOK   388
+#define YYMAXUTOK   389
 
 #define YYTRANSLATE(YYX)						\
   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -1515,15 +1517,15 @@
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     138,   139,   136,     2,   135,     2,     2,     2,     2,     2,
+     139,   140,   137,     2,   136,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     143,   134,   144,     2,     2,     2,     2,     2,     2,     2,
+     144,   135,   145,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,   140,   137,   142,     2,     2,     2,     2,     2,   147,
+       2,   141,   138,   143,     2,     2,     2,     2,     2,   148,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     141,     2,     2,   145,     2,   146,     2,     2,     2,     2,
+     142,     2,     2,   146,     2,   147,     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,
@@ -1549,7 +1551,7 @@
       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
-     125,   126,   127,   128,   129,   130,   131,   132,   133
+     125,   126,   127,   128,   129,   130,   131,   132,   133,   134
 };
 
 #if YYDEBUG
@@ -1567,31 +1569,31 @@
      138,   140,   142,   144,   146,   148,   150,   151,   153,   154,
      156,   158,   159,   161,   163,   165,   167,   168,   170,   172,
      174,   176,   178,   181,   183,   185,   187,   189,   190,   193,
-     195,   197,   198,   201,   202,   205,   206,   210,   213,   214,
-     216,   217,   221,   223,   226,   228,   230,   232,   234,   236,
-     238,   241,   243,   246,   252,   258,   264,   270,   274,   277,
-     283,   288,   291,   293,   295,   297,   301,   303,   307,   309,
-     310,   312,   316,   321,   325,   329,   334,   339,   343,   350,
-     356,   359,   362,   365,   368,   371,   374,   377,   380,   383,
-     386,   389,   392,   399,   405,   414,   421,   428,   436,   444,
-     451,   460,   469,   473,   475,   477,   479,   481,   482,   484,
-     487,   488,   492,   493,   497,   501,   503,   507,   511,   512,
-     519,   520,   528,   529,   537,   540,   544,   546,   550,   554,
-     558,   562,   564,   565,   571,   575,   577,   581,   583,   584,
-     594,   596,   598,   603,   605,   607,   610,   614,   615,   617,
-     619,   621,   623,   625,   627,   629,   631,   633,   637,   639,
-     645,   647,   649,   651,   653,   655,   657,   660,   663,   666,
-     670,   673,   674,   676,   679,   682,   686,   696,   706,   715,
-     730,   732,   734,   741,   747,   750,   757,   765,   769,   775,
-     776,   777,   781,   784,   786,   792,   798,   805,   812,   817,
-     824,   829,   834,   841,   848,   851,   860,   862,   864,   865,
-     869,   876,   880,   887,   890,   895,   902
+     195,   197,   199,   200,   203,   204,   207,   208,   212,   215,
+     216,   218,   219,   223,   225,   228,   230,   232,   234,   236,
+     238,   240,   243,   245,   248,   254,   260,   266,   272,   276,
+     279,   285,   290,   293,   295,   297,   299,   303,   305,   309,
+     311,   312,   314,   318,   323,   327,   331,   336,   341,   345,
+     352,   358,   361,   364,   367,   370,   373,   376,   379,   382,
+     385,   388,   391,   394,   401,   407,   416,   423,   430,   438,
+     446,   453,   462,   471,   475,   477,   479,   481,   483,   484,
+     486,   489,   490,   494,   495,   499,   503,   505,   509,   513,
+     514,   521,   522,   530,   531,   539,   542,   546,   548,   552,
+     556,   560,   564,   566,   567,   573,   577,   579,   583,   585,
+     586,   596,   598,   600,   605,   607,   609,   612,   616,   617,
+     619,   621,   623,   625,   627,   629,   631,   633,   635,   639,
+     641,   647,   649,   651,   653,   655,   657,   659,   662,   665,
+     668,   672,   675,   676,   678,   681,   684,   688,   698,   708,
+     717,   732,   734,   736,   743,   749,   752,   759,   767,   771,
+     777,   778,   779,   783,   786,   788,   794,   800,   807,   814,
+     819,   826,   831,   836,   843,   850,   853,   862,   864,   866,
+     867,   871,   878,   882,   889,   892,   897,   904
 };
 
 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
 static const short int yyrhs[] =
 {
-     188,     0,    -1,    68,    -1,    69,    -1,    70,    -1,    71,
+     189,     0,    -1,    68,    -1,    69,    -1,    70,    -1,    71,
       -1,    72,    -1,    73,    -1,    74,    -1,    75,    -1,    76,
       -1,    80,    -1,    81,    -1,    82,    -1,    77,    -1,    78,
       -1,    79,    -1,   111,    -1,   112,    -1,   113,    -1,   114,
@@ -1602,86 +1604,86 @@
       -1,    97,    -1,    98,    -1,    99,    -1,   100,    -1,   101,
       -1,   102,    -1,   103,    -1,   104,    -1,    91,    -1,    92,
       -1,    93,    -1,    94,    -1,    23,    -1,    24,    -1,    11,
-      -1,    12,    -1,    13,    -1,    16,    -1,    19,    -1,   156,
-      -1,    -1,   156,   134,    -1,    -1,    17,    -1,    20,    -1,
-     159,   134,    -1,    -1,    37,    -1,    39,    -1,    38,    -1,
+      -1,    12,    -1,    13,    -1,    16,    -1,    19,    -1,   157,
+      -1,    -1,   157,   135,    -1,    -1,    17,    -1,    20,    -1,
+     160,   135,    -1,    -1,    37,    -1,    39,    -1,    38,    -1,
       40,    -1,    42,    -1,    41,    -1,    43,    -1,    45,    -1,
-      -1,   133,    -1,    -1,    41,    -1,    43,    -1,    -1,    37,
+      -1,   134,    -1,    -1,    41,    -1,    43,    -1,    -1,    37,
       -1,    38,    -1,    39,    -1,    42,    -1,    -1,    56,    -1,
       57,    -1,    58,    -1,    59,    -1,    60,    -1,    55,     4,
       -1,   112,    -1,   113,    -1,   130,    -1,   131,    -1,    -1,
-     168,   167,    -1,   129,    -1,   167,    -1,    -1,   170,   169,
-      -1,    -1,    48,     4,    -1,    -1,   135,    48,     4,    -1,
-      31,    19,    -1,    -1,   173,    -1,    -1,   135,   176,   175,
-      -1,   173,    -1,    48,     4,    -1,    11,    -1,    12,    -1,
-      13,    -1,    14,    -1,    44,    -1,   177,    -1,   178,   136,
-      -1,   210,    -1,   137,     4,    -1,   178,   138,   182,   139,
-     170,    -1,    10,   138,   182,   139,   170,    -1,   140,     4,
-     141,   178,   142,    -1,   143,     4,   141,   178,   144,    -1,
-     145,   183,   146,    -1,   145,   146,    -1,   143,   145,   183,
-     146,   144,    -1,   143,   145,   146,   144,    -1,   178,   168,
-      -1,   178,    -1,    10,    -1,   179,    -1,   181,   135,   179,
-      -1,   181,    -1,   181,   135,    34,    -1,    34,    -1,    -1,
-     178,    -1,   183,   135,   178,    -1,   178,   140,   186,   142,
-      -1,   178,   140,   142,    -1,   178,   147,    19,    -1,   178,
-     143,   186,   144,    -1,   178,   145,   186,   146,    -1,   178,
-     145,   146,    -1,   178,   143,   145,   186,   146,   144,    -1,
-     178,   143,   145,   146,   144,    -1,   178,    35,    -1,   178,
-      36,    -1,   178,   210,    -1,   178,   185,    -1,   178,    22,
-      -1,   154,     3,    -1,   154,     5,    -1,   154,     4,    -1,
-     154,     6,    -1,    11,    23,    -1,    11,    24,    -1,   155,
-       9,    -1,   151,   138,   184,    33,   178,   139,    -1,   110,
-     138,   184,   221,   139,    -1,   124,   138,   184,   135,   184,
-     135,   184,   139,    -1,   149,   138,   184,   135,   184,   139,
-      -1,   150,   138,   184,   135,   184,   139,    -1,    83,   152,
-     138,   184,   135,   184,   139,    -1,    84,   153,   138,   184,
-     135,   184,   139,    -1,   126,   138,   184,   135,   184,   139,
-      -1,   127,   138,   184,   135,   184,   135,   184,   139,    -1,
-     128,   138,   184,   135,   184,   135,   184,   139,    -1,   186,
-     135,   184,    -1,   184,    -1,    29,    -1,    30,    -1,   189,
-      -1,    -1,   190,    -1,   189,   190,    -1,    -1,    28,   191,
-     206,    -1,    -1,    27,   192,   207,    -1,    53,    52,   196,
-      -1,    21,    -1,   158,    15,   178,    -1,   158,    15,    10,
-      -1,    -1,   160,   163,   187,   184,   193,   175,    -1,    -1,
-     160,   161,   163,   187,   184,   194,   175,    -1,    -1,   160,
-     162,   163,   187,   178,   195,   175,    -1,    46,   197,    -1,
-      49,   134,   198,    -1,    19,    -1,    47,   134,    19,    -1,
-      61,   134,    19,    -1,   140,   199,   142,    -1,   199,   135,
-      19,    -1,    19,    -1,    -1,   200,   135,   178,   168,   157,
-      -1,   178,   168,   157,    -1,   200,    -1,   200,   135,    34,
-      -1,    34,    -1,    -1,   166,   180,   159,   138,   201,   139,
-     170,   174,   171,    -1,    25,    -1,   145,    -1,   165,   163,
-     202,   203,    -1,    26,    -1,   146,    -1,   213,   205,    -1,
-     164,   163,   202,    -1,    -1,    54,    -1,     3,    -1,     4,
-      -1,     9,    -1,    23,    -1,    24,    -1,    35,    -1,    36,
-      -1,    22,    -1,   143,   186,   144,    -1,   185,    -1,    52,
-     208,    19,   135,    19,    -1,     7,    -1,     8,    -1,   156,
-      -1,   159,    -1,   210,    -1,   209,    -1,   178,   211,    -1,
-     213,   214,    -1,   204,   214,    -1,   215,   158,   216,    -1,
-     215,   218,    -1,    -1,    18,    -1,    62,   212,    -1,    62,
-      10,    -1,    63,    14,   211,    -1,    63,    11,   211,   135,
-      14,   211,   135,    14,   211,    -1,    64,   154,   211,   135,
-      14,   211,   140,   217,   142,    -1,    64,   154,   211,   135,
-      14,   211,   140,   142,    -1,    65,   166,   180,   211,   138,
-     220,   139,   170,    33,    14,   211,    66,    14,   211,    -1,
-      66,    -1,    67,    -1,   217,   154,   209,   135,    14,   211,
-      -1,   154,   209,   135,    14,   211,    -1,   158,   223,    -1,
-     178,   140,   211,   135,   211,   142,    -1,   219,   135,   140,
-     211,   135,   211,   142,    -1,   178,   211,   168,    -1,   220,
-     135,   178,   211,   168,    -1,    -1,    -1,   221,   135,   212,
-      -1,    51,    50,    -1,    50,    -1,   149,   178,   211,   135,
-     211,    -1,   150,   178,   211,   135,   211,    -1,    83,   152,
-     178,   211,   135,   211,    -1,    84,   153,   178,   211,   135,
-     211,    -1,   151,   212,    33,   178,    -1,   124,   212,   135,
-     212,   135,   212,    -1,   125,   212,   135,   178,    -1,   126,
-     212,   135,   212,    -1,   127,   212,   135,   212,   135,   212,
-      -1,   128,   212,   135,   212,   135,   212,    -1,   123,   219,
-      -1,   222,   166,   180,   211,   138,   220,   139,   170,    -1,
-     225,    -1,    32,    -1,    -1,   105,   178,   172,    -1,   105,
-     178,   135,    11,   211,   172,    -1,   106,   178,   172,    -1,
-     106,   178,   135,    11,   211,   172,    -1,   107,   212,    -1,
-     224,   108,   178,   211,    -1,   224,   109,   212,   135,   178,
-     211,    -1,   110,   178,   211,   221,    -1
+     169,   168,    -1,   129,    -1,   132,    -1,   168,    -1,    -1,
+     171,   170,    -1,    -1,    48,     4,    -1,    -1,   136,    48,
+       4,    -1,    31,    19,    -1,    -1,   174,    -1,    -1,   136,
+     177,   176,    -1,   174,    -1,    48,     4,    -1,    11,    -1,
+      12,    -1,    13,    -1,    14,    -1,    44,    -1,   178,    -1,
+     179,   137,    -1,   211,    -1,   138,     4,    -1,   179,   139,
+     183,   140,   171,    -1,    10,   139,   183,   140,   171,    -1,
+     141,     4,   142,   179,   143,    -1,   144,     4,   142,   179,
+     145,    -1,   146,   184,   147,    -1,   146,   147,    -1,   144,
+     146,   184,   147,   145,    -1,   144,   146,   147,   145,    -1,
+     179,   169,    -1,   179,    -1,    10,    -1,   180,    -1,   182,
+     136,   180,    -1,   182,    -1,   182,   136,    34,    -1,    34,
+      -1,    -1,   179,    -1,   184,   136,   179,    -1,   179,   141,
+     187,   143,    -1,   179,   141,   143,    -1,   179,   148,    19,
+      -1,   179,   144,   187,   145,    -1,   179,   146,   187,   147,
+      -1,   179,   146,   147,    -1,   179,   144,   146,   187,   147,
+     145,    -1,   179,   144,   146,   147,   145,    -1,   179,    35,
+      -1,   179,    36,    -1,   179,   211,    -1,   179,   186,    -1,
+     179,    22,    -1,   155,     3,    -1,   155,     5,    -1,   155,
+       4,    -1,   155,     6,    -1,    11,    23,    -1,    11,    24,
+      -1,   156,     9,    -1,   152,   139,   185,    33,   179,   140,
+      -1,   110,   139,   185,   222,   140,    -1,   124,   139,   185,
+     136,   185,   136,   185,   140,    -1,   150,   139,   185,   136,
+     185,   140,    -1,   151,   139,   185,   136,   185,   140,    -1,
+      83,   153,   139,   185,   136,   185,   140,    -1,    84,   154,
+     139,   185,   136,   185,   140,    -1,   126,   139,   185,   136,
+     185,   140,    -1,   127,   139,   185,   136,   185,   136,   185,
+     140,    -1,   128,   139,   185,   136,   185,   136,   185,   140,
+      -1,   187,   136,   185,    -1,   185,    -1,    29,    -1,    30,
+      -1,   190,    -1,    -1,   191,    -1,   190,   191,    -1,    -1,
+      28,   192,   207,    -1,    -1,    27,   193,   208,    -1,    53,
+      52,   197,    -1,    21,    -1,   159,    15,   179,    -1,   159,
+      15,    10,    -1,    -1,   161,   164,   188,   185,   194,   176,
+      -1,    -1,   161,   162,   164,   188,   185,   195,   176,    -1,
+      -1,   161,   163,   164,   188,   179,   196,   176,    -1,    46,
+     198,    -1,    49,   135,   199,    -1,    19,    -1,    47,   135,
+      19,    -1,    61,   135,    19,    -1,   141,   200,   143,    -1,
+     200,   136,    19,    -1,    19,    -1,    -1,   201,   136,   179,
+     169,   158,    -1,   179,   169,   158,    -1,   201,    -1,   201,
+     136,    34,    -1,    34,    -1,    -1,   167,   181,   160,   139,
+     202,   140,   171,   175,   172,    -1,    25,    -1,   146,    -1,
+     166,   164,   203,   204,    -1,    26,    -1,   147,    -1,   214,
+     206,    -1,   165,   164,   203,    -1,    -1,    54,    -1,     3,
+      -1,     4,    -1,     9,    -1,    23,    -1,    24,    -1,    35,
+      -1,    36,    -1,    22,    -1,   144,   187,   145,    -1,   186,
+      -1,    52,   209,    19,   136,    19,    -1,     7,    -1,     8,
+      -1,   157,    -1,   160,    -1,   211,    -1,   210,    -1,   179,
+     212,    -1,   214,   215,    -1,   205,   215,    -1,   216,   159,
+     217,    -1,   216,   219,    -1,    -1,    18,    -1,    62,   213,
+      -1,    62,    10,    -1,    63,    14,   212,    -1,    63,    11,
+     212,   136,    14,   212,   136,    14,   212,    -1,    64,   155,
+     212,   136,    14,   212,   141,   218,   143,    -1,    64,   155,
+     212,   136,    14,   212,   141,   143,    -1,    65,   167,   181,
+     212,   139,   221,   140,   171,    33,    14,   212,    66,    14,
+     212,    -1,    66,    -1,    67,    -1,   218,   155,   210,   136,
+      14,   212,    -1,   155,   210,   136,    14,   212,    -1,   159,
+     224,    -1,   179,   141,   212,   136,   212,   143,    -1,   220,
+     136,   141,   212,   136,   212,   143,    -1,   179,   212,   169,
+      -1,   221,   136,   179,   212,   169,    -1,    -1,    -1,   222,
+     136,   213,    -1,    51,    50,    -1,    50,    -1,   150,   179,
+     212,   136,   212,    -1,   151,   179,   212,   136,   212,    -1,
+      83,   153,   179,   212,   136,   212,    -1,    84,   154,   179,
+     212,   136,   212,    -1,   152,   213,    33,   179,    -1,   124,
+     213,   136,   213,   136,   213,    -1,   125,   213,   136,   179,
+      -1,   126,   213,   136,   213,    -1,   127,   213,   136,   213,
+     136,   213,    -1,   128,   213,   136,   213,   136,   213,    -1,
+     123,   220,    -1,   223,   167,   181,   212,   139,   221,   140,
+     171,    -1,   226,    -1,    32,    -1,    -1,   105,   179,   173,
+      -1,   105,   179,   136,    11,   212,   173,    -1,   106,   179,
+     173,    -1,   106,   179,   136,    11,   212,   173,    -1,   107,
+     213,    -1,   225,   108,   179,   212,    -1,   225,   109,   213,
+     136,   179,   212,    -1,   110,   179,   212,   222,    -1
 };
 
 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
@@ -1697,25 +1699,25 @@
     1151,  1152,  1153,  1157,  1158,  1159,  1163,  1164,  1168,  1169,
     1170,  1174,  1175,  1176,  1177,  1178,  1181,  1182,  1183,  1184,
     1185,  1186,  1187,  1194,  1195,  1196,  1197,  1200,  1201,  1206,
-    1207,  1210,  1211,  1218,  1219,  1225,  1226,  1234,  1242,  1243,
-    1248,  1249,  1250,  1255,  1268,  1268,  1268,  1268,  1271,  1275,
-    1279,  1286,  1291,  1299,  1318,  1337,  1342,  1354,  1364,  1368,
-    1378,  1385,  1392,  1399,  1404,  1409,  1416,  1417,  1424,  1431,
-    1439,  1445,  1457,  1485,  1501,  1530,  1558,  1583,  1602,  1628,
-    1648,  1660,  1667,  1733,  1743,  1753,  1759,  1769,  1775,  1785,
-    1790,  1795,  1803,  1815,  1837,  1845,  1851,  1862,  1867,  1872,
-    1878,  1884,  1893,  1897,  1905,  1905,  1916,  1921,  1929,  1930,
-    1934,  1934,  1938,  1938,  1941,  1944,  1956,  1980,  1991,  1991,
-    2001,  2001,  2009,  2009,  2019,  2022,  2028,  2041,  2045,  2050,
-    2052,  2057,  2062,  2071,  2081,  2092,  2096,  2105,  2114,  2119,
-    2231,  2231,  2233,  2242,  2242,  2244,  2249,  2261,  2265,  2270,
-    2274,  2278,  2282,  2286,  2290,  2294,  2298,  2302,  2327,  2331,
-    2345,  2349,  2353,  2357,  2363,  2363,  2369,  2378,  2382,  2391,
-    2400,  2409,  2413,  2418,  2422,  2426,  2431,  2441,  2460,  2469,
-    2538,  2542,  2549,  2560,  2573,  2583,  2594,  2604,  2613,  2622,
-    2625,  2626,  2633,  2637,  2642,  2663,  2680,  2694,  2708,  2720,
-    2728,  2735,  2741,  2747,  2753,  2768,  2832,  2837,  2841,  2848,
-    2855,  2863,  2870,  2878,  2886,  2900,  2917
+    1207,  1208,  1211,  1212,  1219,  1220,  1226,  1227,  1235,  1243,
+    1244,  1249,  1250,  1251,  1256,  1269,  1269,  1269,  1269,  1272,
+    1276,  1280,  1287,  1292,  1300,  1319,  1338,  1343,  1355,  1365,
+    1369,  1379,  1386,  1393,  1400,  1405,  1410,  1417,  1418,  1425,
+    1432,  1440,  1446,  1458,  1486,  1502,  1531,  1559,  1584,  1603,
+    1629,  1649,  1661,  1668,  1734,  1744,  1754,  1760,  1770,  1776,
+    1786,  1791,  1796,  1804,  1816,  1838,  1846,  1852,  1863,  1868,
+    1873,  1879,  1885,  1894,  1898,  1906,  1906,  1917,  1922,  1930,
+    1931,  1935,  1935,  1939,  1939,  1942,  1945,  1957,  1981,  1992,
+    1992,  2002,  2002,  2010,  2010,  2020,  2023,  2029,  2042,  2046,
+    2051,  2053,  2058,  2063,  2072,  2082,  2093,  2097,  2106,  2115,
+    2120,  2232,  2232,  2234,  2243,  2243,  2245,  2250,  2262,  2266,
+    2271,  2275,  2279,  2283,  2287,  2291,  2295,  2299,  2303,  2328,
+    2332,  2346,  2350,  2354,  2358,  2364,  2364,  2370,  2379,  2383,
+    2392,  2401,  2410,  2414,  2419,  2423,  2427,  2432,  2442,  2461,
+    2470,  2539,  2543,  2550,  2561,  2574,  2584,  2595,  2605,  2614,
+    2623,  2626,  2627,  2634,  2638,  2643,  2664,  2681,  2695,  2709,
+    2721,  2729,  2736,  2742,  2748,  2754,  2769,  2833,  2838,  2842,
+    2849,  2856,  2864,  2871,  2879,  2887,  2901,  2918
 };
 #endif
 
@@ -1743,22 +1745,22 @@
   "LOAD", "STORE", "GETELEMENTPTR", "TRUNC", "ZEXT", "SEXT", "FPTRUNC",
   "FPEXT", "BITCAST", "UITOFP", "SITOFP", "FPTOUI", "FPTOSI", "INTTOPTR",
   "PTRTOINT", "PHI_TOK", "SELECT", "VAARG", "EXTRACTELEMENT",
-  "INSERTELEMENT", "SHUFFLEVECTOR", "NORETURN", "INREG", "SRET", "DEFAULT",
-  "HIDDEN", "'='", "','", "'*'", "'\\\\'", "'('", "')'", "'['", "'x'",
-  "']'", "'<'", "'>'", "'{'", "'}'", "'c'", "$accept", "ArithmeticOps",
-  "LogicalOps", "CastOps", "IPredicates", "FPredicates", "IntType",
-  "FPType", "LocalName", "OptLocalName", "OptLocalAssign", "GlobalName",
-  "OptGlobalAssign", "GVInternalLinkage", "GVExternalLinkage",
-  "GVVisibilityStyle", "FunctionDeclareLinkage", "FunctionDefineLinkage",
-  "OptCallingConv", "ParamAttr", "OptParamAttrs", "FuncAttr",
-  "OptFuncAttrs", "OptAlign", "OptCAlign", "SectionString", "OptSection",
-  "GlobalVarAttributes", "GlobalVarAttribute", "PrimType", "Types",
-  "ArgType", "ResultTypes", "ArgTypeList", "ArgTypeListI", "TypeListI",
-  "ConstVal", "ConstExpr", "ConstVector", "GlobalType", "Module",
-  "DefinitionList", "Definition", "@1", "@2", "@3", "@4", "@5", "AsmBlock",
-  "TargetDefinition", "LibrariesDefinition", "LibList", "ArgListH",
-  "ArgList", "FunctionHeaderH", "BEGIN", "FunctionHeader", "END",
-  "Function", "FunctionProto", "OptSideEffect", "ConstValueRef",
+  "INSERTELEMENT", "SHUFFLEVECTOR", "NORETURN", "INREG", "SRET",
+  "NOUNWIND", "DEFAULT", "HIDDEN", "'='", "','", "'*'", "'\\\\'", "'('",
+  "')'", "'['", "'x'", "']'", "'<'", "'>'", "'{'", "'}'", "'c'", "$accept",
+  "ArithmeticOps", "LogicalOps", "CastOps", "IPredicates", "FPredicates",
+  "IntType", "FPType", "LocalName", "OptLocalName", "OptLocalAssign",
+  "GlobalName", "OptGlobalAssign", "GVInternalLinkage",
+  "GVExternalLinkage", "GVVisibilityStyle", "FunctionDeclareLinkage",
+  "FunctionDefineLinkage", "OptCallingConv", "ParamAttr", "OptParamAttrs",
+  "FuncAttr", "OptFuncAttrs", "OptAlign", "OptCAlign", "SectionString",
+  "OptSection", "GlobalVarAttributes", "GlobalVarAttribute", "PrimType",
+  "Types", "ArgType", "ResultTypes", "ArgTypeList", "ArgTypeListI",
+  "TypeListI", "ConstVal", "ConstExpr", "ConstVector", "GlobalType",
+  "Module", "DefinitionList", "Definition", "@1", "@2", "@3", "@4", "@5",
+  "AsmBlock", "TargetDefinition", "LibrariesDefinition", "LibList",
+  "ArgListH", "ArgList", "FunctionHeaderH", "BEGIN", "FunctionHeader",
+  "END", "Function", "FunctionProto", "OptSideEffect", "ConstValueRef",
   "SymbolicValueRef", "ValueRef", "ResolvedVal", "BasicBlockList",
   "BasicBlock", "InstructionList", "BBTerminatorInst", "JumpTable", "Inst",
   "PHIList", "ValueRefList", "IndexList", "OptTailCall", "InstVal",
@@ -1784,43 +1786,43 @@
      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
-     385,   386,   387,   388,    61,    44,    42,    92,    40,    41,
-      91,   120,    93,    60,    62,   123,   125,    99
+     385,   386,   387,   388,   389,    61,    44,    42,    92,    40,
+      41,    91,   120,    93,    60,    62,   123,   125,    99
 };
 # endif
 
 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
 static const unsigned char yyr1[] =
 {
-       0,   148,   149,   149,   149,   149,   149,   149,   149,   149,
-     149,   150,   150,   150,   150,   150,   150,   151,   151,   151,
-     151,   151,   151,   151,   151,   151,   151,   151,   151,   152,
+       0,   149,   150,   150,   150,   150,   150,   150,   150,   150,
+     150,   151,   151,   151,   151,   151,   151,   152,   152,   152,
      152,   152,   152,   152,   152,   152,   152,   152,   152,   153,
-     153,   153,   153,   153,   153,   153,   153,   153,   153,   153,
-     153,   153,   153,   153,   153,   154,   155,   155,   156,   156,
-     157,   157,   158,   158,   159,   159,   160,   160,   161,   161,
-     161,   161,   161,   162,   162,   162,   163,   163,   164,   164,
-     164,   165,   165,   165,   165,   165,   166,   166,   166,   166,
-     166,   166,   166,   167,   167,   167,   167,   168,   168,   169,
-     169,   170,   170,   171,   171,   172,   172,   173,   174,   174,
-     175,   175,   176,   176,   177,   177,   177,   177,   178,   178,
-     178,   178,   178,   178,   178,   178,   178,   178,   178,   178,
-     178,   179,   180,   180,   181,   181,   182,   182,   182,   182,
-     183,   183,   184,   184,   184,   184,   184,   184,   184,   184,
-     184,   184,   184,   184,   184,   184,   184,   184,   184,   184,
-     184,   184,   185,   185,   185,   185,   185,   185,   185,   185,
-     185,   185,   186,   186,   187,   187,   188,   188,   189,   189,
-     191,   190,   192,   190,   190,   190,   190,   190,   193,   190,
-     194,   190,   195,   190,   190,   190,   196,   197,   197,   198,
-     199,   199,   199,   200,   200,   201,   201,   201,   201,   202,
-     203,   203,   204,   205,   205,   206,   207,   208,   208,   209,
-     209,   209,   209,   209,   209,   209,   209,   209,   209,   209,
-     210,   210,   210,   210,   211,   211,   212,   213,   213,   214,
-     215,   215,   215,   216,   216,   216,   216,   216,   216,   216,
-     216,   216,   217,   217,   218,   219,   219,   220,   220,   220,
-     221,   221,   222,   222,   223,   223,   223,   223,   223,   223,
-     223,   223,   223,   223,   223,   223,   223,   224,   224,   225,
-     225,   225,   225,   225,   225,   225,   225
+     153,   153,   153,   153,   153,   153,   153,   153,   153,   154,
+     154,   154,   154,   154,   154,   154,   154,   154,   154,   154,
+     154,   154,   154,   154,   154,   155,   156,   156,   157,   157,
+     158,   158,   159,   159,   160,   160,   161,   161,   162,   162,
+     162,   162,   162,   163,   163,   163,   164,   164,   165,   165,
+     165,   166,   166,   166,   166,   166,   167,   167,   167,   167,
+     167,   167,   167,   168,   168,   168,   168,   169,   169,   170,
+     170,   170,   171,   171,   172,   172,   173,   173,   174,   175,
+     175,   176,   176,   177,   177,   178,   178,   178,   178,   179,
+     179,   179,   179,   179,   179,   179,   179,   179,   179,   179,
+     179,   179,   180,   181,   181,   182,   182,   183,   183,   183,
+     183,   184,   184,   185,   185,   185,   185,   185,   185,   185,
+     185,   185,   185,   185,   185,   185,   185,   185,   185,   185,
+     185,   185,   185,   186,   186,   186,   186,   186,   186,   186,
+     186,   186,   186,   187,   187,   188,   188,   189,   189,   190,
+     190,   192,   191,   193,   191,   191,   191,   191,   191,   194,
+     191,   195,   191,   196,   191,   191,   191,   197,   198,   198,
+     199,   200,   200,   200,   201,   201,   202,   202,   202,   202,
+     203,   204,   204,   205,   206,   206,   207,   208,   209,   209,
+     210,   210,   210,   210,   210,   210,   210,   210,   210,   210,
+     210,   211,   211,   211,   211,   212,   212,   213,   214,   214,
+     215,   216,   216,   216,   217,   217,   217,   217,   217,   217,
+     217,   217,   217,   218,   218,   219,   220,   220,   221,   221,
+     221,   222,   222,   223,   223,   224,   224,   224,   224,   224,
+     224,   224,   224,   224,   224,   224,   224,   224,   225,   225,
+     226,   226,   226,   226,   226,   226,   226,   226
 };
 
 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
@@ -1836,25 +1838,25 @@
        1,     1,     1,     1,     1,     1,     0,     1,     0,     1,
        1,     0,     1,     1,     1,     1,     0,     1,     1,     1,
        1,     1,     2,     1,     1,     1,     1,     0,     2,     1,
-       1,     0,     2,     0,     2,     0,     3,     2,     0,     1,
-       0,     3,     1,     2,     1,     1,     1,     1,     1,     1,
-       2,     1,     2,     5,     5,     5,     5,     3,     2,     5,
-       4,     2,     1,     1,     1,     3,     1,     3,     1,     0,
-       1,     3,     4,     3,     3,     4,     4,     3,     6,     5,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     6,     5,     8,     6,     6,     7,     7,     6,
-       8,     8,     3,     1,     1,     1,     1,     0,     1,     2,
-       0,     3,     0,     3,     3,     1,     3,     3,     0,     6,
-       0,     7,     0,     7,     2,     3,     1,     3,     3,     3,
-       3,     1,     0,     5,     3,     1,     3,     1,     0,     9,
-       1,     1,     4,     1,     1,     2,     3,     0,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     3,     1,     5,
-       1,     1,     1,     1,     1,     1,     2,     2,     2,     3,
-       2,     0,     1,     2,     2,     3,     9,     9,     8,    14,
-       1,     1,     6,     5,     2,     6,     7,     3,     5,     0,
-       0,     3,     2,     1,     5,     5,     6,     6,     4,     6,
-       4,     4,     6,     6,     2,     8,     1,     1,     0,     3,
-       6,     3,     6,     2,     4,     6,     4
+       1,     1,     0,     2,     0,     2,     0,     3,     2,     0,
+       1,     0,     3,     1,     2,     1,     1,     1,     1,     1,
+       1,     2,     1,     2,     5,     5,     5,     5,     3,     2,
+       5,     4,     2,     1,     1,     1,     3,     1,     3,     1,
+       0,     1,     3,     4,     3,     3,     4,     4,     3,     6,
+       5,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+       2,     2,     2,     6,     5,     8,     6,     6,     7,     7,
+       6,     8,     8,     3,     1,     1,     1,     1,     0,     1,
+       2,     0,     3,     0,     3,     3,     1,     3,     3,     0,
+       6,     0,     7,     0,     7,     2,     3,     1,     3,     3,
+       3,     3,     1,     0,     5,     3,     1,     3,     1,     0,
+       9,     1,     1,     4,     1,     1,     2,     3,     0,     1,
+       1,     1,     1,     1,     1,     1,     1,     1,     3,     1,
+       5,     1,     1,     1,     1,     1,     1,     2,     2,     2,
+       3,     2,     0,     1,     2,     2,     3,     9,     9,     8,
+      14,     1,     1,     6,     5,     2,     6,     7,     3,     5,
+       0,     0,     3,     2,     1,     5,     5,     6,     6,     4,
+       6,     4,     4,     6,     6,     2,     8,     1,     1,     0,
+       3,     6,     3,     6,     2,     4,     6,     4
 };
 
 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@@ -1862,450 +1864,452 @@
    means the default is an error.  */
 static const unsigned short int yydefact[] =
 {
-      67,    58,    64,    59,    65,   185,   182,   180,     0,     0,
-       0,     0,     0,     0,    76,     0,    67,   178,    78,    81,
-       0,     0,   194,     0,     0,    62,     0,    66,    68,    70,
+      67,    58,    64,    59,    65,   186,   183,   181,     0,     0,
+       0,     0,     0,     0,    76,     0,    67,   179,    78,    81,
+       0,     0,   195,     0,     0,    62,     0,    66,    68,    70,
       69,    71,    73,    72,    74,    75,    77,    76,    76,     0,
-       1,   179,    79,    80,    76,   183,    82,    83,    84,    85,
-      76,   241,   181,   241,     0,     0,   202,   195,   196,   184,
-     230,   231,   187,   114,   115,   116,   117,   118,     0,     0,
-       0,     0,   232,   233,   119,   186,   121,     0,     0,   174,
-     175,     0,    86,    86,   242,   238,    63,   213,   214,   215,
-     237,   197,   198,   201,     0,   139,   122,     0,     0,     0,
-       0,   128,   140,     0,   120,   139,     0,     0,   114,   115,
-     116,     0,     0,     0,   188,     0,    87,    88,    89,    90,
-      91,     0,   216,     0,   278,   240,     0,   199,   138,    97,
-     134,   136,     0,     0,     0,     0,     0,     0,   127,     0,
-     190,   192,   159,   160,   155,   157,   156,   158,   161,   154,
-     150,   151,     2,     3,     4,     5,     6,     7,     8,     9,
+       1,   180,    79,    80,    76,   184,    82,    83,    84,    85,
+      76,   242,   182,   242,     0,     0,   203,   196,   197,   185,
+     231,   232,   188,   115,   116,   117,   118,   119,     0,     0,
+       0,     0,   233,   234,   120,   187,   122,     0,     0,   175,
+     176,     0,    86,    86,   243,   239,    63,   214,   215,   216,
+     238,   198,   199,   202,     0,   140,   123,     0,     0,     0,
+       0,   129,   141,     0,   121,   140,     0,     0,   115,   116,
+     117,     0,     0,     0,   189,     0,    87,    88,    89,    90,
+      91,     0,   217,     0,   279,   241,     0,   200,   139,    97,
+     135,   137,     0,     0,     0,     0,     0,     0,   128,     0,
+     191,   193,   160,   161,   156,   158,   157,   159,   162,   155,
+     151,   152,     2,     3,     4,     5,     6,     7,     8,     9,
       10,    14,    15,    16,    11,    12,    13,     0,     0,     0,
       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
       27,    28,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   153,   152,   110,    92,   133,   132,     0,
-     210,   211,   212,   277,   263,     0,     0,     0,     0,    86,
-     250,   251,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   239,    86,   254,
-       0,   276,   200,   131,     0,   101,     0,     0,   130,     0,
-     141,   101,   110,   110,    29,    30,    31,    32,    33,    34,
+       0,     0,     0,   154,   153,   111,    92,   134,   133,     0,
+     211,   212,   213,   278,   264,     0,     0,     0,     0,    86,
+     251,   252,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,   240,    86,   255,
+       0,   277,   201,   132,     0,   102,     0,     0,   131,     0,
+     142,   102,   111,   111,    29,    30,    31,    32,    33,    34,
       35,    36,    37,    38,     0,    53,    54,    49,    50,    51,
       52,    39,    40,    41,    42,    43,    44,    45,    46,    47,
-      48,     0,     0,     0,     0,     0,     0,   143,   173,     0,
-       0,     0,   147,     0,   144,     0,     0,     0,     0,   189,
-       0,   262,   244,     0,   243,     0,     0,    55,     0,     0,
-       0,     0,   105,   105,   283,     0,     0,   274,     0,     0,
+      48,     0,     0,     0,     0,     0,     0,   144,   174,     0,
+       0,     0,   148,     0,   145,     0,     0,     0,     0,   190,
+       0,   263,   245,     0,   244,     0,     0,    55,     0,     0,
+       0,     0,   106,   106,   284,     0,     0,   275,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,    93,
-      94,    95,    96,    98,   137,   135,   124,   125,   126,   129,
-     123,   191,   193,     0,     0,   260,     0,     0,     0,     0,
-       0,   142,   128,   140,     0,   145,   146,     0,     0,     0,
-       0,     0,   112,   110,   208,   219,   220,   221,   226,   222,
-     223,   224,   225,   217,     0,   228,   235,   234,   236,     0,
-     245,     0,     0,     0,     0,     0,   279,     0,   281,   260,
+      94,    95,    96,    98,   138,   136,   125,   126,   127,   130,
+     124,   192,   194,     0,     0,   261,     0,     0,     0,     0,
+       0,   143,   129,   141,     0,   146,   147,     0,     0,     0,
+       0,     0,   113,   111,   209,   220,   221,   222,   227,   223,
+     224,   225,   226,   218,     0,   229,   236,   235,   237,     0,
+     246,     0,     0,     0,     0,     0,   280,     0,   282,   261,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,    99,   100,   102,     0,     0,     0,     0,
-       0,     0,     0,   172,   149,     0,     0,     0,     0,   107,
-     113,   111,   207,    97,   205,     0,   218,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   286,     0,     0,
-       0,   270,   271,     0,     0,     0,     0,   268,     0,   284,
-       0,     0,     0,     0,   163,     0,     0,     0,     0,   148,
-       0,     0,     0,    61,     0,   101,     0,   227,     0,     0,
-     259,     0,     0,   105,   106,   105,     0,     0,     0,     0,
-       0,   264,   265,   259,     0,     0,     0,   261,     0,   169,
-       0,     0,   165,   166,   162,    60,   204,   206,    97,   108,
-       0,     0,     0,     0,     0,   266,   267,     0,   280,   282,
-       0,     0,   269,   272,   273,     0,   285,   167,   168,     0,
-       0,     0,    61,   109,   103,   229,     0,     0,    97,     0,
-     101,   255,     0,   101,   164,   170,   171,   203,     0,   209,
-       0,   248,     0,     0,   257,     0,     0,   256,   275,   104,
-     246,     0,   247,     0,    97,     0,     0,     0,   258,     0,
-       0,     0,     0,   253,     0,     0,   252,     0,   249
+       0,     0,     0,    99,   100,   101,   103,     0,     0,     0,
+       0,     0,     0,     0,   173,   150,     0,     0,     0,     0,
+     108,   114,   112,   208,    97,   206,     0,   219,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,   287,     0,
+       0,     0,   271,   272,     0,     0,     0,     0,   269,     0,
+     285,     0,     0,     0,     0,   164,     0,     0,     0,     0,
+     149,     0,     0,     0,    61,     0,   102,     0,   228,     0,
+       0,   260,     0,     0,   106,   107,   106,     0,     0,     0,
+       0,     0,   265,   266,   260,     0,     0,     0,   262,     0,
+     170,     0,     0,   166,   167,   163,    60,   205,   207,    97,
+     109,     0,     0,     0,     0,     0,   267,   268,     0,   281,
+     283,     0,     0,   270,   273,   274,     0,   286,   168,   169,
+       0,     0,     0,    61,   110,   104,   230,     0,     0,    97,
+       0,   102,   256,     0,   102,   165,   171,   172,   204,     0,
+     210,     0,   249,     0,     0,   258,     0,     0,   257,   276,
+     105,   247,     0,   248,     0,    97,     0,     0,     0,   259,
+       0,     0,     0,     0,   254,     0,     0,   253,     0,   250
 };
 
 /* YYDEFGOTO[NTERM-NUM]. */
 static const short int yydefgoto[] =
 {
-      -1,   190,   191,   192,   254,   271,   111,   112,    72,   486,
+      -1,   190,   191,   192,   254,   271,   111,   112,    72,   487,
       12,    73,    14,    37,    38,    39,    44,    50,   121,   323,
-     233,   395,   326,   529,   376,   352,   514,   289,   353,    74,
+     233,   396,   326,   530,   376,   352,   515,   289,   353,    74,
      113,   130,   199,   131,   132,   103,   278,   365,   279,    81,
       15,    16,    17,    19,    18,   195,   242,   243,    59,    22,
-      57,    94,   414,   415,   122,   202,    51,    89,    52,    45,
-     417,   366,    76,   368,   294,    53,    85,    86,   227,   533,
-     125,   307,   494,   398,   228,   229,   230,   231
+      57,    94,   415,   416,   122,   202,    51,    89,    52,    45,
+     418,   366,    76,   368,   294,    53,    85,    86,   227,   534,
+     125,   307,   495,   399,   228,   229,   230,   231
 };
 
 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    STATE-NUM.  */
-#define YYPACT_NINF -440
+#define YYPACT_NINF -472
 static const short int yypact[] =
 {
-     406,  -440,  -440,  -440,  -440,  -440,  -440,  -440,    -2,  -101,
-      21,   -55,    80,   -20,    15,   132,   556,  -440,   253,   197,
-      -7,    87,  -440,    20,   207,  -440,   893,  -440,  -440,  -440,
-    -440,  -440,  -440,  -440,  -440,  -440,  -440,    97,    97,   125,
-    -440,  -440,  -440,  -440,    97,  -440,  -440,  -440,  -440,  -440,
-      97,   235,  -440,     6,   240,   248,   258,  -440,  -440,  -440,
-    -440,  -440,   134,  -440,  -440,  -440,  -440,  -440,   269,   277,
-      11,   123,  -440,  -440,  -440,    33,  -440,   125,   125,  -440,
-    -440,  1055,   128,   128,  -440,  -440,    47,  -440,  -440,  -440,
-    -440,  -440,  -440,  -440,   -57,   939,  -440,   154,   156,   488,
-     134,  -440,    33,  -112,  -440,   939,  1055,  1149,    38,   281,
-     289,   239,   293,   850,  -440,   299,  -440,  -440,  -440,  -440,
-    -440,  1168,  -440,     2,  1301,  -440,   285,  -440,  -440,    33,
-    -440,   170,   167,  1149,  1149,   164,   -97,  1149,  -440,   171,
-    -440,    33,  -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,
-    -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,
-    -440,  -440,  -440,  -440,  -440,  -440,  -440,   254,   446,   174,
-    -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,
-    -440,  -440,   175,   176,   177,   178,   109,  1203,   676,   290,
-     181,   182,   183,  -440,  -440,   187,  -440,   134,    33,    93,
-    -440,  -440,  -440,  -440,  -440,   273,  1217,   127,   313,   128,
-    -440,  -440,   254,   446,  1149,  1149,  1149,  1149,  1149,  1149,
-    1149,  1149,  1149,  1149,  1149,  1149,  1149,  -440,   128,  -440,
-      70,  -440,  -440,   -29,  1098,  -440,    72,   -39,  -440,   184,
-      33,  -440,   187,   187,  -440,  -440,  -440,  -440,  -440,  -440,
-    -440,  -440,  -440,  -440,   188,  -440,  -440,  -440,  -440,  -440,
-    -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,  -440,
-    -440,   196,  1055,  1055,  1055,  1055,  1055,  -440,  -440,    22,
-     771,   -44,  -440,   -59,  -440,  1055,  1055,  1055,    -9,  -440,
-     198,  -440,   134,   591,  -440,   728,   728,  -440,   728,  1168,
-    1149,  1149,   112,   147,  -440,   591,    75,   190,   200,   214,
-     215,   217,   219,   591,   591,   322,  1168,  1149,  1149,  -440,
-    -440,  -440,  -440,  -440,  -440,  -440,   -41,  -440,  -440,  -440,
-     -41,  -440,  -440,  1055,  1055,  -440,   230,   231,   232,   233,
-    1055,  -440,   225,   850,   -43,  -440,  -440,   236,   241,   337,
-     355,   371,  -440,   187,  1114,  -440,  -440,  -440,  -440,  -440,
-    -440,  -440,  -440,   323,  1055,  -440,  -440,  -440,  -440,   243,
-    -440,   244,   728,   591,   591,    17,  -440,    19,  -440,  -440,
-     728,   242,  1149,  1149,  1149,  1149,  1149,   245,   246,  1149,
-     728,   591,   249,  -440,  -440,  -440,   252,   255,   -24,  1055,
-    1055,  1055,  1055,  -440,  -440,   247,  1055,  1055,  1149,  -440,
-    -440,  -440,  -440,    33,   257,   260,  -440,   375,   -37,   383,
-     386,   264,   268,   272,   728,   400,   728,   275,   282,   728,
-     284,    33,  -440,   295,   296,   728,   728,    33,   270,  -440,
-    1149,  1055,  1055,  1149,  -440,   297,   298,   301,   303,  -440,
-     300,   302,   150,    32,  1133,  -440,   305,  -440,   728,   728,
-    1149,   728,   728,   307,  -440,   307,   728,   311,  1149,  1149,
-    1149,  -440,  -440,  1149,   591,   308,   310,  -440,  1055,  -440,
-    1055,  1055,  -440,  -440,  -440,  -440,  -440,  -440,    33,    46,
-     397,   315,   314,   591,    26,  -440,  -440,   376,  -440,  -440,
-     309,   728,  -440,  -440,  -440,    89,  -440,  -440,  -440,   317,
-     319,   321,    32,  -440,   413,  -440,   449,     7,  -440,  1149,
-    -440,  -440,   324,  -440,  -440,  -440,  -440,  -440,   460,  -440,
-     728,  -440,   976,     9,   -29,   591,   149,  -440,   -41,  -440,
-    -440,   330,  -440,   976,  -440,   453,   454,   336,   -29,   728,
-     728,   461,   412,  -440,   728,   465,  -440,   728,  -440
+      44,  -472,  -472,  -472,  -472,  -472,  -472,  -472,    -9,   -93,
+      25,   -40,    89,    40,   303,   124,   406,  -472,   137,   199,
+      48,    73,  -472,    72,   147,  -472,  1101,  -472,  -472,  -472,
+    -472,  -472,  -472,  -472,  -472,  -472,  -472,    86,    86,   110,
+    -472,  -472,  -472,  -472,    86,  -472,  -472,  -472,  -472,  -472,
+      86,   215,  -472,     9,   216,   228,   233,  -472,  -472,  -472,
+    -472,  -472,   118,  -472,  -472,  -472,  -472,  -472,   250,   254,
+       4,   115,  -472,  -472,  -472,    88,  -472,   110,   110,  -472,
+    -472,  1115,   310,   310,  -472,  -472,    31,  -472,  -472,  -472,
+    -472,  -472,  -472,  -472,   -22,   955,  -472,   135,   138,   141,
+     118,  -472,    88,  -102,  -472,   955,  1115,  1153,    52,   251,
+     269,   239,   272,   739,  -472,   280,  -472,  -472,  -472,  -472,
+    -472,  1167,  -472,    -8,  1306,  -472,   270,  -472,  -472,    88,
+    -472,   154,   155,  1153,  1153,   156,   -55,  1153,  -472,   164,
+    -472,    88,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
+    -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
+    -472,  -472,  -472,  -472,  -472,  -472,  -472,   289,   447,   166,
+    -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
+    -472,  -472,   168,   169,   170,   171,   995,  1206,   491,   292,
+     174,   175,   176,  -472,  -472,   182,  -472,   118,    88,    49,
+    -472,  -472,  -472,  -472,  -472,   273,  1221,   122,   313,   310,
+    -472,  -472,   289,   447,  1153,  1153,  1153,  1153,  1153,  1153,
+    1153,  1153,  1153,  1153,  1153,  1153,  1153,  -472,   310,  -472,
+      38,  -472,  -472,   -24,  1010,  -472,    34,   -26,  -472,   180,
+      88,  -472,   182,   182,  -472,  -472,  -472,  -472,  -472,  -472,
+    -472,  -472,  -472,  -472,   187,  -472,  -472,  -472,  -472,  -472,
+    -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
+    -472,   188,  1115,  1115,  1115,  1115,  1115,  -472,  -472,    -6,
+     909,  -104,  -472,   -42,  -472,  1115,  1115,  1115,   -11,  -472,
+     195,  -472,   118,   592,  -472,   718,   718,  -472,   718,  1167,
+    1153,  1153,   -21,    93,  -472,   592,    35,   200,   203,   211,
+     213,   214,   218,   592,   592,   302,  1167,  1153,  1153,  -472,
+    -472,  -472,  -472,  -472,  -472,  -472,   -29,  -472,  -472,  -472,
+     -29,  -472,  -472,  1115,  1115,  -472,   219,   235,   255,   256,
+    1115,  -472,   207,   739,   -37,  -472,  -472,   258,   261,   354,
+     371,   395,  -472,   182,  1050,  -472,  -472,  -472,  -472,  -472,
+    -472,  -472,  -472,   346,  1115,  -472,  -472,  -472,  -472,   266,
+    -472,   267,   718,   592,   592,    19,  -472,    20,  -472,  -472,
+     718,   263,  1153,  1153,  1153,  1153,  1153,   271,   274,  1153,
+     718,   592,   279,  -472,  -472,  -472,  -472,   281,   282,    29,
+    1115,  1115,  1115,  1115,  -472,  -472,   284,  1115,  1115,  1153,
+    -472,  -472,  -472,  -472,    88,   288,   268,  -472,   412,   -96,
+     418,   421,   299,   304,   305,   718,   435,   718,   306,   307,
+     718,   311,    88,  -472,   312,   314,   718,   718,    88,   317,
+    -472,  1153,  1115,  1115,  1153,  -472,   315,   318,   324,   325,
+    -472,   323,   326,   157,    32,  1066,  -472,   328,  -472,   718,
+     718,  1153,   718,   718,   329,  -472,   329,   718,   331,  1153,
+    1153,  1153,  -472,  -472,  1153,   592,   335,   338,  -472,  1115,
+    -472,  1115,  1115,  -472,  -472,  -472,  -472,  -472,  -472,    88,
+     136,   434,   332,   341,   592,    71,  -472,  -472,   431,  -472,
+    -472,   340,   718,  -472,  -472,  -472,    74,  -472,  -472,  -472,
+     345,   347,   348,    32,  -472,   438,  -472,   455,    -2,  -472,
+    1153,  -472,  -472,   349,  -472,  -472,  -472,  -472,  -472,   485,
+    -472,   718,  -472,   866,    -1,   -24,   592,   190,  -472,   -29,
+    -472,  -472,   357,  -472,   866,  -472,   480,   482,   361,   -24,
+     718,   718,   486,   440,  -472,   718,   495,  -472,   718,  -472
 };
 
 /* YYPGOTO[NTERM-NUM].  */
 static const short int yypgoto[] =
 {
-    -440,   358,   359,   361,   274,   276,  -206,  -440,     0,   -19,
-     401,    13,  -440,  -440,  -440,    31,  -440,  -440,  -178,  -309,
-    -394,  -440,  -236,  -440,  -297,    -1,  -440,  -207,  -440,  -440,
-     -25,   263,  -252,  -440,   387,   404,   -69,  -110,  -162,   160,
-    -440,  -440,   490,  -440,  -440,  -440,  -440,  -440,  -440,  -440,
-    -440,  -440,  -440,  -440,   426,  -440,  -440,  -440,  -440,  -440,
-    -440,  -439,   -73,   100,  -212,  -440,   457,  -440,  -440,  -440,
-    -440,  -440,    40,   135,  -440,  -440,  -440,  -440
+    -472,   388,   390,   391,   308,   309,  -206,  -472,     0,     3,
+     432,    13,  -472,  -472,  -472,    41,  -472,  -472,  -195,  -311,
+    -402,  -472,  -238,  -472,  -296,    27,  -472,  -189,  -472,  -472,
+     -25,   285,  -273,  -472,   416,   424,   -70,  -109,  -182,   173,
+    -472,  -472,   508,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
+    -472,  -472,  -472,  -472,   443,  -472,  -472,  -472,  -472,  -472,
+    -472,  -471,   -74,   100,  -198,  -472,   475,  -472,  -472,  -472,
+    -472,  -472,    55,   152,  -472,  -472,  -472,  -472
 };
 
 /* 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
+#define YYTABLE_NINF -179
 static const short int yytable[] =
 {
-      11,    75,   298,   193,   304,   330,   378,   308,   309,   310,
-     311,   312,   114,    13,   315,    98,    11,   394,   297,   453,
-     297,   394,   350,   137,    84,   281,   283,   200,   424,    13,
-     426,   299,    87,    23,   138,   331,   332,   140,   137,   351,
-     194,   -55,   -55,   -55,   -55,    20,   102,   372,     1,   239,
-     316,     3,    28,    29,    30,    31,    32,    33,    34,    21,
-      35,   142,   143,     1,   390,   425,     3,   425,    77,    78,
-     129,   319,   320,    24,   102,    82,   340,   350,   126,    25,
-     129,    83,   141,   319,   320,   127,    11,   346,   393,   321,
-     322,   340,   340,   541,   512,    26,   198,   104,   340,   105,
-     345,   321,   322,   405,   547,   328,   392,   457,   236,   237,
-       2,   443,   240,     4,    27,   444,    60,    61,   344,   100,
-     108,   109,   110,    66,   534,     1,     2,    54,     3,     4,
-      60,    61,    40,   100,    63,    64,    65,    66,   295,     1,
-       2,   296,     3,     4,   319,   320,   411,   201,    36,   531,
-     548,   542,    88,    67,    79,    80,    99,   340,   319,   320,
-      56,   519,   321,   322,   341,   520,   498,    67,   499,   104,
-     430,   105,   432,   433,   434,   393,   321,   322,   317,   318,
-     394,   293,   545,   115,   116,   117,   118,   119,   120,   302,
+      11,    75,   298,   330,   193,   281,   283,   378,    98,   297,
+     297,   114,   454,    13,   299,   395,    11,   200,   304,   395,
+     350,   308,   309,   310,   311,   312,   372,    84,   315,    13,
+     425,   427,   340,   316,   137,    87,   140,   351,    20,   194,
+     340,   345,    23,   390,  -178,   138,   102,     1,     1,   458,
+       3,     3,    21,   331,   332,   -55,   -55,   -55,   -55,   -63,
+       1,     2,   542,     3,     4,     5,     2,   426,   426,     4,
+     129,     6,     7,   548,   102,   142,   143,    24,    77,    78,
+     129,   137,   141,   319,   320,    82,    11,   513,   319,   320,
+       8,    83,   239,     9,   340,    25,   198,    10,   344,   340,
+     393,   321,   322,   394,    26,   346,   321,   322,   236,   237,
+     406,   104,   240,   105,   126,   375,   104,   535,   105,   328,
+     392,   127,    60,    61,    40,   100,    63,    64,    65,    66,
+     340,     1,     2,   295,     3,     4,   296,   341,   201,    79,
+      80,   532,   543,   549,   319,   320,   317,   318,    60,    61,
+      99,   100,    63,    64,    65,    66,    88,     1,     2,    67,
+       3,     4,   321,   322,   412,   444,    58,   350,   499,   445,
+     500,   104,   104,   105,   105,    27,   380,   327,    42,   395,
+      43,   293,   419,    54,   431,    67,   433,   434,   435,   302,
      303,   293,   305,   306,   293,   293,   293,   293,   293,   313,
-     314,   293,   418,   335,   336,   337,   338,   339,   104,   129,
-     105,   104,   290,   105,   327,   380,   347,   348,   349,   489,
-     367,    55,   367,   367,   519,   367,    58,   394,   523,   394,
-      36,   477,   367,   193,    46,    47,    48,   106,   107,    49,
-     367,   367,   144,   145,   146,   147,    68,   375,   104,    69,
-     105,   277,    70,    84,    71,   343,   502,   503,   504,    91,
-      68,   319,   320,    69,   396,   397,    70,    92,    71,   101,
-     194,   403,    95,    96,   198,   373,   374,    93,   393,   321,
-     322,    97,   377,   104,   536,   105,   104,   538,   105,   484,
-     -56,   198,   391,   293,    42,   133,    43,   134,   -57,   367,
-     367,   367,   148,   196,   232,   234,   235,   367,   238,   284,
-     241,   532,   272,   273,   274,   275,   276,   367,   367,   285,
-     286,   287,   288,   291,   297,   381,   333,   543,   329,   413,
-     445,   446,   447,   448,   334,   382,   354,   450,   451,   244,
-     245,   246,   247,   248,   249,   250,   251,   252,   253,   383,
-     384,   367,   385,   367,   386,   389,   367,   293,   431,   293,
-     293,   293,   367,   367,   437,   399,   400,   401,   402,   404,
-     408,   406,   475,   476,   409,   410,   407,   416,   419,   420,
-     435,   436,   429,   452,   440,   367,   367,   441,   367,   367,
-     442,   449,   454,   367,   456,   369,   370,   458,   371,   455,
-     459,   367,   460,   461,   464,   379,  -177,   462,   473,   509,
-     443,   510,   511,   387,   388,   474,   515,   466,   293,   468,
-     367,   -63,     1,     2,   425,     3,     4,     5,   367,   488,
-     469,   470,   478,     6,     7,   493,   480,   479,   481,   482,
-     490,   483,   497,   293,   293,   293,   501,   507,   493,   508,
-     516,   521,     8,   485,   517,     9,   524,   367,   525,    10,
-     526,   528,   367,   530,   539,   546,   537,   549,   550,   255,
-     256,   551,   421,   422,   423,   554,   367,   367,   555,   557,
-     428,   367,   224,   225,   367,   226,   300,   124,   513,   301,
-     438,   439,   139,   527,   535,    60,    61,   325,   100,    63,
-      64,    65,    66,   136,     1,     2,    41,     3,     4,   123,
-      90,     0,   485,   505,   427,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   463,     0,   465,     0,     0,   467,
-       0,     0,    67,     0,     0,   471,   472,   257,   258,   259,
-     260,   261,   262,   263,   264,   265,   266,   267,   268,   269,
-     270,     0,     0,     0,     0,     0,  -176,     0,   491,   492,
-       0,   495,   496,     0,     0,     0,   500,     0,     0,     0,
-       0,   -63,     1,     2,   506,     3,     4,     5,     0,     0,
-       0,     0,     0,     6,     7,     0,     0,     0,     0,     0,
-       0,     0,     0,   518,   355,   356,     0,     0,    60,    61,
-     357,   522,     8,     0,     0,     9,     0,     1,     2,    10,
-       3,     4,     0,   358,   359,   360,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,    68,   361,   362,    69,     0,
-     540,    70,     0,    71,   135,   544,     0,     0,     0,     0,
-       0,     0,     0,   363,     0,     0,     0,     0,     0,   552,
-     553,     0,     0,     0,   556,     0,     0,   558,     0,   152,
-     153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
-     163,   164,   165,   166,   167,   168,     0,     0,     0,     0,
-       0,     0,     0,    60,    61,     0,   100,   108,   109,   110,
-      66,     0,     1,     2,     0,     3,     4,     0,     0,     0,
-       0,   169,   170,   171,   172,   173,   174,   175,   176,   177,
-     178,   179,   180,   181,     0,   182,     0,   183,   184,   185,
-      67,     0,     0,     0,     0,     0,     0,   104,     0,   105,
-       0,   355,   356,     0,   364,    60,    61,   357,     0,     0,
-       0,     0,     0,     0,     1,     2,     0,     3,     4,     0,
-     358,   359,   360,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   361,   362,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    60,    61,
-     363,   100,   108,   109,   110,    66,     0,     1,     2,     0,
-       3,     4,     0,     0,     0,     0,   152,   153,   154,   155,
-     156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
-     166,   167,   168,    68,     0,    67,    69,     0,     0,    70,
-       0,    71,   282,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   169,   170,
-     171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
-     181,     0,   182,     0,   183,   184,   185,    60,    61,     0,
-       0,     0,     0,     0,     0,     0,     1,     2,     0,     3,
-       4,   364,   149,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   150,   151,     0,     0,     0,
+     314,   293,   335,   336,   337,   338,   339,   520,    55,   129,
+     520,   521,   290,    56,   524,   347,   348,   349,   490,   367,
+      36,   367,   367,   546,   367,   104,   395,   105,   395,   377,
+     104,   367,   105,    84,   193,    91,    46,    47,    48,   367,
+     367,    49,   144,   145,   146,   147,   478,    92,   319,   320,
+     106,   107,    93,    68,    96,   343,    69,    95,    97,    70,
+     -56,    71,   101,   397,   398,   393,   321,   322,   394,   194,
+     404,   503,   504,   505,   198,   373,   374,   133,   -57,    68,
+     134,   148,    69,   537,   196,    70,   539,    71,   135,   232,
+     234,   198,   391,   293,   104,   235,   105,   485,   367,   367,
+     367,   238,   319,   320,   241,   272,   367,   273,   274,   275,
+     276,   284,   533,   285,   286,   287,   367,   367,   288,   393,
+     321,   322,   394,   291,   297,   329,   333,   334,   544,   414,
+     446,   447,   448,   449,   354,   389,   381,   451,   452,   382,
+      28,    29,    30,    31,    32,    33,    34,   383,    35,   384,
+     385,   367,   405,   367,   386,   400,   367,   293,   432,   293,
+     293,   293,   367,   367,   438,   115,   116,   117,   118,   119,
+     120,   401,   476,   477,   244,   245,   246,   247,   248,   249,
+     250,   251,   252,   253,   453,   367,   367,   409,   367,   367,
+     410,   402,   403,   367,   407,   369,   370,   408,   371,   411,
+     417,   367,   420,   421,   430,   379,  -177,   436,   456,   510,
+     437,   511,   512,   387,   388,   441,   475,   442,   443,   293,
+     367,   -63,     1,     2,   455,     3,     4,     5,   367,   450,
+     489,   457,   459,     6,     7,   460,   494,    36,   461,   465,
+     462,   463,   444,   467,   293,   293,   293,   469,   470,   494,
+     471,   479,     8,   516,   486,     9,   474,   367,   480,    10,
+     481,   482,   367,   483,   491,   498,   484,   502,   517,   531,
+     255,   256,   422,   423,   424,   508,   367,   367,   509,   426,
+     429,   367,   518,   522,   367,   525,   529,   526,   527,   540,
+     439,   440,   538,   547,   550,   536,   551,   552,    60,    61,
+     555,   100,   108,   109,   110,    66,   556,     1,     2,   558,
+       3,     4,   224,   486,   225,   226,   528,   514,   124,   325,
+     300,   139,   301,   136,    41,   464,   123,   466,    90,   506,
+     468,   428,     0,     0,     0,    67,   472,   473,   257,   258,
+     259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
+     269,   270,     0,     0,     0,     0,     0,     0,     0,   492,
+     493,     0,   496,   497,     0,     0,     0,   501,     0,     0,
+       0,     0,     0,     0,     0,   507,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-      60,    61,     0,    62,    63,    64,    65,    66,    68,     1,
-       2,    69,     3,     4,    70,     0,    71,   342,   152,   153,
-     154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
-     164,   165,   166,   167,   168,     0,     0,    67,     0,     0,
-       0,     0,     0,     0,     0,     0,    60,    61,     0,   100,
-      63,    64,    65,    66,     0,     1,     2,     0,     3,     4,
-     169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
-     179,   180,   181,   128,   182,     0,   183,   184,   185,   355,
-     356,     0,     0,    67,     0,   357,   104,     0,   105,     0,
+       0,     0,     0,     0,   519,   355,   356,     0,     0,    60,
+      61,   357,   523,     0,     0,     0,     0,     0,     1,     2,
+       0,     3,     4,     0,   358,   359,   360,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,   361,   362,    68,
+       0,   541,    69,     0,     0,    70,   545,    71,   282,     0,
+       0,     0,     0,     0,   363,     0,     0,     0,     0,     0,
+     553,   554,     0,     0,     0,   557,     0,     0,   559,     0,
+     152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
+     162,   163,   164,   165,   166,   167,   168,     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,   169,   170,   171,   172,   173,   174,   175,   176,
+     177,   178,   179,   180,   181,     0,   182,     0,   183,   184,
+     185,   355,   356,     0,     0,    60,    61,   357,     0,   104,
+       0,   105,     0,     0,     1,     2,   364,     3,     4,     0,
+     358,   359,   360,     0,     0,     0,    60,    61,     0,     0,
+       0,     0,     0,   361,   362,     1,     2,     0,     3,     4,
+       0,   149,     0,     0,     0,     0,     0,     0,     0,     0,
+     363,     0,     0,     0,   150,   151,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,   152,   153,   154,   155,
+     156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
+     166,   167,   168,     0,     0,     0,     0,   152,   153,   154,
+     155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
+     165,   166,   167,   168,     0,     0,     0,     0,   169,   170,
+     171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
+     181,     0,   182,     0,   183,   184,   185,     0,     0,   169,
+     170,   171,   172,   173,   174,   175,   176,   177,   178,   179,
+     180,   181,   364,   182,     0,   183,   184,   185,     0,   355,
+     356,     0,     0,     0,     0,   357,   104,     0,   105,     0,
      186,     0,     0,   187,     0,   188,     0,   189,   358,   359,
      360,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,   361,   362,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   363,     0,
-      68,     0,     0,    69,     0,     0,    70,     0,    71,     0,
+       0,     0,     0,     0,     0,     0,    60,    61,   363,   100,
+     108,   109,   110,    66,     0,     1,     2,     0,     3,     4,
        0,     0,     0,     0,   152,   153,   154,   155,   156,   157,
      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
-     168,     0,    60,    61,     0,   100,   108,   109,   110,    66,
-       0,     1,     2,     0,     3,     4,    68,     0,     0,    69,
-       0,     0,    70,     0,    71,     0,   169,   170,   171,   172,
-     173,   174,   175,   176,   177,   178,   179,   180,   181,    67,
-     182,     0,   183,   184,   185,    60,    61,     0,   100,    63,
-      64,    65,    66,     0,     1,     2,     0,     3,     4,   364,
-       0,    60,    61,     0,   100,    63,    64,    65,    66,     0,
-       1,     2,   324,     3,     4,     0,     0,     0,     0,     0,
-      60,    61,    67,   100,    63,    64,    65,    66,   412,     1,
-       2,     0,     3,     4,     0,     0,    60,    61,    67,   100,
-      63,    64,    65,    66,     0,     1,     2,   487,     3,     4,
-       0,     0,     0,     0,     0,    60,    61,    67,   197,    63,
-      64,    65,    66,     0,     1,     2,     0,     3,     4,     0,
-       0,     0,    68,    67,     0,    69,     0,     0,    70,     0,
-      71,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-      60,    61,    67,   100,   108,   109,   110,    66,     0,     1,
-       2,     0,     3,     4,    60,    61,     0,   292,    63,    64,
-      65,    66,     0,     1,     2,    68,     3,     4,    69,     0,
-       0,    70,     0,    71,     0,     0,     0,    67,     0,     0,
+     168,     0,     0,    67,     0,     0,     0,     0,     0,     0,
+       0,     0,    60,    61,     0,   100,    63,    64,    65,    66,
+       0,     1,     2,     0,     3,     4,   169,   170,   171,   172,
+     173,   174,   175,   176,   177,   178,   179,   180,   181,   128,
+     182,     0,   183,   184,   185,     0,     0,     0,     0,    67,
+       0,     0,    60,    61,     0,   100,   108,   109,   110,    66,
+     364,     1,     2,     0,     3,     4,     0,    60,    61,     0,
+     100,    63,    64,    65,    66,     0,     1,     2,     0,     3,
+       4,     0,     0,     0,     0,     0,     0,     0,     0,    67,
+       0,     0,     0,     0,   324,     0,     0,    68,     0,     0,
+      69,     0,     0,    70,    67,    71,   342,    60,    61,     0,
+     100,    63,    64,    65,    66,     0,     1,     2,     0,     3,
+       4,     0,     0,    60,    61,     0,   100,    63,    64,    65,
+      66,     0,     1,     2,   413,     3,     4,     0,     0,     0,
+       0,     0,     0,    68,    67,     0,    69,     0,     0,    70,
+     488,    71,     0,     0,     0,     0,     0,     0,    60,    61,
+      67,    62,    63,    64,    65,    66,     0,     1,     2,     0,
+       3,     4,    60,    61,     0,   100,   108,   109,   110,    66,
+       0,     1,     2,    68,     3,     4,    69,     0,   277,    70,
+       0,    71,     0,     0,     0,    67,     0,     0,    68,     0,
+       0,    69,     0,     0,    70,     0,    71,     0,     0,    67,
+      60,    61,     0,   100,    63,    64,    65,    66,     0,     1,
+       2,     0,     3,     4,    60,    61,     0,   197,    63,    64,
+      65,    66,     0,     1,     2,     0,     3,     4,    68,     0,
+       0,    69,     0,     0,    70,     0,    71,    67,     0,     0,
+       0,     0,     0,     0,    68,     0,     0,    69,     0,     0,
+      70,    67,    71,    60,    61,     0,   100,   108,   109,   110,
+      66,     0,     1,     2,     0,     3,     4,     0,    60,    61,
+       0,   292,    63,    64,    65,    66,     0,     1,     2,    68,
+       3,     4,    69,     0,     0,    70,     0,    71,     0,     0,
+      67,     0,     0,    68,     0,     0,    69,     0,     0,    70,
+       0,    71,     0,     0,     0,    67,     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,    68,     0,     0,    69,     0,     0,    70,     0,    71,
-       0,    67,     0,     0,     0,     0,     0,     0,     0,     0,
-      68,     0,     0,    69,     0,     0,    70,     0,    71,     0,
-       0,     0,     0,     0,     0,     0,    68,     0,     0,    69,
-       0,     0,    70,     0,    71,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,    68,     0,     0,    69,     0,
        0,    70,     0,    71,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   203,     0,     0,     0,     0,     0,     0,
-      68,     0,     0,    69,     0,     0,    70,     0,   280,     0,
-       0,   204,   205,     0,    68,     0,     0,    69,     0,     0,
-      70,     0,    71,   206,   207,   208,   209,   210,   211,   152,
-     153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
-     163,   164,   165,   166,   212,   213,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,   203,     0,
+       0,     0,     0,     0,    68,     0,     0,    69,     0,     0,
+      70,     0,   280,     0,     0,     0,   204,   205,     0,    68,
+       0,     0,    69,     0,     0,    70,     0,    71,   206,   207,
+     208,   209,   210,   211,   152,   153,   154,   155,   156,   157,
+     158,   159,   160,   161,   162,   163,   164,   165,   166,   212,
+     213,     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,   214,   215,   216,     0,
-       0,   217,   170,   171,   172,   173,   174,   175,   176,   177,
-     178,   179,   180,   181,   218,   219,   220,   221,   222,   223
+       0,   214,   215,   216,     0,     0,   217,   170,   171,   172,
+     173,   174,   175,   176,   177,   178,   179,   180,   181,   218,
+     219,   220,   221,   222,   223
 };
 
 static const short int yycheck[] =
 {
-       0,    26,   208,   113,   216,   241,   303,   219,   220,   221,
-     222,   223,    81,     0,   226,     4,    16,   326,    11,   413,
-      11,   330,    31,   135,    18,   187,   188,    25,    11,    16,
-      11,   209,    26,   134,   146,   242,   243,   106,   135,    48,
-     113,     3,     4,     5,     6,    47,    71,   299,    16,   146,
-     228,    19,    37,    38,    39,    40,    41,    42,    43,    61,
-      45,    23,    24,    16,   316,    48,    19,    48,    37,    38,
-      95,   112,   113,    52,    99,    44,   135,    31,   135,   134,
-     105,    50,   107,   112,   113,   142,    86,   146,   129,   130,
-     131,   135,   135,   532,   488,    15,   121,   136,   135,   138,
-     144,   130,   131,   146,   543,   144,   318,   144,   133,   134,
-      17,   135,   137,    20,   134,   139,     7,     8,   280,    10,
-      11,    12,    13,    14,   518,    16,    17,   134,    19,    20,
-       7,     8,     0,    10,    11,    12,    13,    14,    11,    16,
-      17,    14,    19,    20,   112,   113,   353,   145,   133,   142,
-     544,   142,   146,    44,    29,    30,   145,   135,   112,   113,
-     140,   135,   130,   131,   142,   139,   463,    44,   465,   136,
-     382,   138,   384,   385,   386,   129,   130,   131,   108,   109,
-     489,   206,    33,    55,    56,    57,    58,    59,    60,   214,
+       0,    26,   208,   241,   113,   187,   188,   303,     4,    11,
+      11,    81,   414,     0,   209,   326,    16,    25,   216,   330,
+      31,   219,   220,   221,   222,   223,   299,    18,   226,    16,
+      11,    11,   136,   228,   136,    26,   106,    48,    47,   113,
+     136,   145,   135,   316,     0,   147,    71,    16,    16,   145,
+      19,    19,    61,   242,   243,     3,     4,     5,     6,    15,
+      16,    17,   533,    19,    20,    21,    17,    48,    48,    20,
+      95,    27,    28,   544,    99,    23,    24,    52,    37,    38,
+     105,   136,   107,   112,   113,    44,    86,   489,   112,   113,
+      46,    50,   147,    49,   136,   135,   121,    53,   280,   136,
+     129,   130,   131,   132,    15,   147,   130,   131,   133,   134,
+     147,   137,   137,   139,   136,   136,   137,   519,   139,   145,
+     318,   143,     7,     8,     0,    10,    11,    12,    13,    14,
+     136,    16,    17,    11,    19,    20,    14,   143,   146,    29,
+      30,   143,   143,   545,   112,   113,   108,   109,     7,     8,
+     146,    10,    11,    12,    13,    14,   147,    16,    17,    44,
+      19,    20,   130,   131,   353,   136,    19,    31,   464,   140,
+     466,   137,   137,   139,   139,   135,   141,   143,    41,   490,
+      43,   206,   364,   135,   382,    44,   384,   385,   386,   214,
      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
-     225,   226,   364,   272,   273,   274,   275,   276,   136,   234,
-     138,   136,   199,   138,   142,   140,   285,   286,   287,   455,
-     293,   134,   295,   296,   135,   298,    19,   536,   139,   538,
-     133,   443,   305,   343,    37,    38,    39,    77,    78,    42,
-     313,   314,     3,     4,     5,     6,   137,   135,   136,   140,
-     138,   142,   143,    18,   145,   280,   468,   469,   470,    19,
-     137,   112,   113,   140,   333,   334,   143,    19,   145,   146,
-     343,   340,   138,     4,   299,   300,   301,    19,   129,   130,
-     131,     4,   135,   136,   520,   138,   136,   523,   138,   139,
-       9,   316,   317,   318,    41,   141,    43,   141,     9,   372,
-     373,   374,     9,     4,    19,   135,   139,   380,   144,    19,
-     139,   517,   138,   138,   138,   138,   138,   390,   391,   138,
-     138,   138,   135,    50,    11,   135,   138,   533,   144,   354,
-     399,   400,   401,   402,   138,   135,   138,   406,   407,    85,
-      86,    87,    88,    89,    90,    91,    92,    93,    94,   135,
-     135,   424,   135,   426,   135,    33,   429,   382,   383,   384,
-     385,   386,   435,   436,   389,   135,   135,   135,   135,   144,
-      33,   135,   441,   442,    19,     4,   135,    54,   135,   135,
-     135,   135,   140,   408,   135,   458,   459,   135,   461,   462,
-     135,   144,   135,   466,    19,   295,   296,    14,   298,   139,
-      14,   474,   138,   135,     4,   305,     0,   135,   138,   478,
-     135,   480,   481,   313,   314,   440,    19,   135,   443,   135,
-     493,    15,    16,    17,    48,    19,    20,    21,   501,   454,
-     135,   135,   135,    27,    28,   460,   135,   139,   135,   139,
-     135,   139,   135,   468,   469,   470,   135,   139,   473,   139,
-     135,   142,    46,   453,   140,    49,   139,   530,   139,    53,
-     139,    48,   535,    14,     4,   135,   142,    14,    14,    23,
-      24,   135,   372,   373,   374,    14,   549,   550,    66,    14,
-     380,   554,   124,   124,   557,   124,   212,    86,   489,   213,
-     390,   391,   105,   512,   519,     7,     8,   234,    10,    11,
-      12,    13,    14,    99,    16,    17,    16,    19,    20,    83,
-      53,    -1,   512,   473,   379,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   424,    -1,   426,    -1,    -1,   429,
-      -1,    -1,    44,    -1,    -1,   435,   436,    91,    92,    93,
-      94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
-     104,    -1,    -1,    -1,    -1,    -1,     0,    -1,   458,   459,
-      -1,   461,   462,    -1,    -1,    -1,   466,    -1,    -1,    -1,
-      -1,    15,    16,    17,   474,    19,    20,    21,    -1,    -1,
-      -1,    -1,    -1,    27,    28,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,   493,     3,     4,    -1,    -1,     7,     8,
-       9,   501,    46,    -1,    -1,    49,    -1,    16,    17,    53,
-      19,    20,    -1,    22,    23,    24,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   137,    35,    36,   140,    -1,
-     530,   143,    -1,   145,   146,   535,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    52,    -1,    -1,    -1,    -1,    -1,   549,
-     550,    -1,    -1,    -1,   554,    -1,    -1,   557,    -1,    68,
-      69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
-      79,    80,    81,    82,    83,    84,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,     7,     8,    -1,    10,    11,    12,    13,
-      14,    -1,    16,    17,    -1,    19,    20,    -1,    -1,    -1,
-      -1,   110,   111,   112,   113,   114,   115,   116,   117,   118,
-     119,   120,   121,   122,    -1,   124,    -1,   126,   127,   128,
-      44,    -1,    -1,    -1,    -1,    -1,    -1,   136,    -1,   138,
-      -1,     3,     4,    -1,   143,     7,     8,     9,    -1,    -1,
-      -1,    -1,    -1,    -1,    16,    17,    -1,    19,    20,    -1,
-      22,    23,    24,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    35,    36,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     7,     8,
-      52,    10,    11,    12,    13,    14,    -1,    16,    17,    -1,
-      19,    20,    -1,    -1,    -1,    -1,    68,    69,    70,    71,
-      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
-      82,    83,    84,   137,    -1,    44,   140,    -1,    -1,   143,
-      -1,   145,   146,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   110,   111,
-     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
-     122,    -1,   124,    -1,   126,   127,   128,     7,     8,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    16,    17,    -1,    19,
-      20,   143,    22,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    35,    36,    -1,    -1,    -1,
+     225,   226,   272,   273,   274,   275,   276,   136,   135,   234,
+     136,   140,   199,   141,   140,   285,   286,   287,   456,   293,
+     134,   295,   296,    33,   298,   137,   537,   139,   539,   136,
+     137,   305,   139,    18,   343,    19,    37,    38,    39,   313,
+     314,    42,     3,     4,     5,     6,   444,    19,   112,   113,
+      77,    78,    19,   138,     4,   280,   141,   139,     4,   144,
+       9,   146,   147,   333,   334,   129,   130,   131,   132,   343,
+     340,   469,   470,   471,   299,   300,   301,   142,     9,   138,
+     142,     9,   141,   521,     4,   144,   524,   146,   147,    19,
+     136,   316,   317,   318,   137,   140,   139,   140,   372,   373,
+     374,   145,   112,   113,   140,   139,   380,   139,   139,   139,
+     139,    19,   518,   139,   139,   139,   390,   391,   136,   129,
+     130,   131,   132,    50,    11,   145,   139,   139,   534,   354,
+     400,   401,   402,   403,   139,    33,   136,   407,   408,   136,
+      37,    38,    39,    40,    41,    42,    43,   136,    45,   136,
+     136,   425,   145,   427,   136,   136,   430,   382,   383,   384,
+     385,   386,   436,   437,   389,    55,    56,    57,    58,    59,
+      60,   136,   442,   443,    85,    86,    87,    88,    89,    90,
+      91,    92,    93,    94,   409,   459,   460,    33,   462,   463,
+      19,   136,   136,   467,   136,   295,   296,   136,   298,     4,
+      54,   475,   136,   136,   141,   305,     0,   136,   140,   479,
+     136,   481,   482,   313,   314,   136,   441,   136,   136,   444,
+     494,    15,    16,    17,   136,    19,    20,    21,   502,   145,
+     455,    19,    14,    27,    28,    14,   461,   134,   139,     4,
+     136,   136,   136,   136,   469,   470,   471,   136,   136,   474,
+     136,   136,    46,    19,   454,    49,   139,   531,   140,    53,
+     136,   136,   536,   140,   136,   136,   140,   136,   136,    14,
+      23,    24,   372,   373,   374,   140,   550,   551,   140,    48,
+     380,   555,   141,   143,   558,   140,    48,   140,   140,     4,
+     390,   391,   143,   136,    14,   520,    14,   136,     7,     8,
+      14,    10,    11,    12,    13,    14,    66,    16,    17,    14,
+      19,    20,   124,   513,   124,   124,   513,   490,    86,   234,
+     212,   105,   213,    99,    16,   425,    83,   427,    53,   474,
+     430,   379,    -1,    -1,    -1,    44,   436,   437,    91,    92,
+      93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
+     103,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   459,
+     460,    -1,   462,   463,    -1,    -1,    -1,   467,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   475,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       7,     8,    -1,    10,    11,    12,    13,    14,   137,    16,
-      17,   140,    19,    20,   143,    -1,   145,   146,    68,    69,
-      70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
-      80,    81,    82,    83,    84,    -1,    -1,    44,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,     7,     8,    -1,    10,
-      11,    12,    13,    14,    -1,    16,    17,    -1,    19,    20,
-     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
-     120,   121,   122,    34,   124,    -1,   126,   127,   128,     3,
-       4,    -1,    -1,    44,    -1,     9,   136,    -1,   138,    -1,
-     140,    -1,    -1,   143,    -1,   145,    -1,   147,    22,    23,
+      -1,    -1,    -1,    -1,   494,     3,     4,    -1,    -1,     7,
+       8,     9,   502,    -1,    -1,    -1,    -1,    -1,    16,    17,
+      -1,    19,    20,    -1,    22,    23,    24,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    35,    36,   138,
+      -1,   531,   141,    -1,    -1,   144,   536,   146,   147,    -1,
+      -1,    -1,    -1,    -1,    52,    -1,    -1,    -1,    -1,    -1,
+     550,   551,    -1,    -1,    -1,   555,    -1,    -1,   558,    -1,
+      68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
+      78,    79,    80,    81,    82,    83,    84,    -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,   110,   111,   112,   113,   114,   115,   116,   117,
+     118,   119,   120,   121,   122,    -1,   124,    -1,   126,   127,
+     128,     3,     4,    -1,    -1,     7,     8,     9,    -1,   137,
+      -1,   139,    -1,    -1,    16,    17,   144,    19,    20,    -1,
+      22,    23,    24,    -1,    -1,    -1,     7,     8,    -1,    -1,
+      -1,    -1,    -1,    35,    36,    16,    17,    -1,    19,    20,
+      -1,    22,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      52,    -1,    -1,    -1,    35,    36,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    68,    69,    70,    71,
+      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
+      82,    83,    84,    -1,    -1,    -1,    -1,    68,    69,    70,
+      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
+      81,    82,    83,    84,    -1,    -1,    -1,    -1,   110,   111,
+     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
+     122,    -1,   124,    -1,   126,   127,   128,    -1,    -1,   110,
+     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
+     121,   122,   144,   124,    -1,   126,   127,   128,    -1,     3,
+       4,    -1,    -1,    -1,    -1,     9,   137,    -1,   139,    -1,
+     141,    -1,    -1,   144,    -1,   146,    -1,   148,    22,    23,
       24,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    35,    36,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    52,    -1,
-     137,    -1,    -1,   140,    -1,    -1,   143,    -1,   145,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,     7,     8,    52,    10,
+      11,    12,    13,    14,    -1,    16,    17,    -1,    19,    20,
       -1,    -1,    -1,    -1,    68,    69,    70,    71,    72,    73,
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
-      84,    -1,     7,     8,    -1,    10,    11,    12,    13,    14,
-      -1,    16,    17,    -1,    19,    20,   137,    -1,    -1,   140,
-      -1,    -1,   143,    -1,   145,    -1,   110,   111,   112,   113,
-     114,   115,   116,   117,   118,   119,   120,   121,   122,    44,
-     124,    -1,   126,   127,   128,     7,     8,    -1,    10,    11,
-      12,    13,    14,    -1,    16,    17,    -1,    19,    20,   143,
-      -1,     7,     8,    -1,    10,    11,    12,    13,    14,    -1,
-      16,    17,    34,    19,    20,    -1,    -1,    -1,    -1,    -1,
-       7,     8,    44,    10,    11,    12,    13,    14,    34,    16,
-      17,    -1,    19,    20,    -1,    -1,     7,     8,    44,    10,
-      11,    12,    13,    14,    -1,    16,    17,    34,    19,    20,
-      -1,    -1,    -1,    -1,    -1,     7,     8,    44,    10,    11,
-      12,    13,    14,    -1,    16,    17,    -1,    19,    20,    -1,
-      -1,    -1,   137,    44,    -1,   140,    -1,    -1,   143,    -1,
-     145,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       7,     8,    44,    10,    11,    12,    13,    14,    -1,    16,
+      84,    -1,    -1,    44,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,     7,     8,    -1,    10,    11,    12,    13,    14,
+      -1,    16,    17,    -1,    19,    20,   110,   111,   112,   113,
+     114,   115,   116,   117,   118,   119,   120,   121,   122,    34,
+     124,    -1,   126,   127,   128,    -1,    -1,    -1,    -1,    44,
+      -1,    -1,     7,     8,    -1,    10,    11,    12,    13,    14,
+     144,    16,    17,    -1,    19,    20,    -1,     7,     8,    -1,
+      10,    11,    12,    13,    14,    -1,    16,    17,    -1,    19,
+      20,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    44,
+      -1,    -1,    -1,    -1,    34,    -1,    -1,   138,    -1,    -1,
+     141,    -1,    -1,   144,    44,   146,   147,     7,     8,    -1,
+      10,    11,    12,    13,    14,    -1,    16,    17,    -1,    19,
+      20,    -1,    -1,     7,     8,    -1,    10,    11,    12,    13,
+      14,    -1,    16,    17,    34,    19,    20,    -1,    -1,    -1,
+      -1,    -1,    -1,   138,    44,    -1,   141,    -1,    -1,   144,
+      34,   146,    -1,    -1,    -1,    -1,    -1,    -1,     7,     8,
+      44,    10,    11,    12,    13,    14,    -1,    16,    17,    -1,
+      19,    20,     7,     8,    -1,    10,    11,    12,    13,    14,
+      -1,    16,    17,   138,    19,    20,   141,    -1,   143,   144,
+      -1,   146,    -1,    -1,    -1,    44,    -1,    -1,   138,    -1,
+      -1,   141,    -1,    -1,   144,    -1,   146,    -1,    -1,    44,
+       7,     8,    -1,    10,    11,    12,    13,    14,    -1,    16,
       17,    -1,    19,    20,     7,     8,    -1,    10,    11,    12,
-      13,    14,    -1,    16,    17,   137,    19,    20,   140,    -1,
-      -1,   143,    -1,   145,    -1,    -1,    -1,    44,    -1,    -1,
-      -1,   137,    -1,    -1,   140,    -1,    -1,   143,    -1,   145,
-      -1,    44,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     137,    -1,    -1,   140,    -1,    -1,   143,    -1,   145,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   137,    -1,    -1,   140,
-      -1,    -1,   143,    -1,   145,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   137,    -1,    -1,   140,    -1,
-      -1,   143,    -1,   145,    -1,    -1,    -1,    -1,    -1,    -1,
+      13,    14,    -1,    16,    17,    -1,    19,    20,   138,    -1,
+      -1,   141,    -1,    -1,   144,    -1,   146,    44,    -1,    -1,
+      -1,    -1,    -1,    -1,   138,    -1,    -1,   141,    -1,    -1,
+     144,    44,   146,     7,     8,    -1,    10,    11,    12,    13,
+      14,    -1,    16,    17,    -1,    19,    20,    -1,     7,     8,
+      -1,    10,    11,    12,    13,    14,    -1,    16,    17,   138,
+      19,    20,   141,    -1,    -1,   144,    -1,   146,    -1,    -1,
+      44,    -1,    -1,   138,    -1,    -1,   141,    -1,    -1,   144,
+      -1,   146,    -1,    -1,    -1,    44,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    32,    -1,    -1,    -1,    -1,    -1,    -1,
-     137,    -1,    -1,   140,    -1,    -1,   143,    -1,   145,    -1,
-      -1,    50,    51,    -1,   137,    -1,    -1,   140,    -1,    -1,
-     143,    -1,   145,    62,    63,    64,    65,    66,    67,    68,
-      69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
-      79,    80,    81,    82,    83,    84,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,    -1,
-      -1,   110,   111,   112,   113,   114,   115,   116,   117,   118,
-     119,   120,   121,   122,   123,   124,   125,   126,   127,   128
+      -1,   138,    -1,    -1,   141,    -1,    -1,   144,    -1,   146,
+      -1,    -1,    -1,    -1,    -1,   138,    -1,    -1,   141,    -1,
+      -1,   144,    -1,   146,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    32,    -1,
+      -1,    -1,    -1,    -1,   138,    -1,    -1,   141,    -1,    -1,
+     144,    -1,   146,    -1,    -1,    -1,    50,    51,    -1,   138,
+      -1,    -1,   141,    -1,    -1,   144,    -1,   146,    62,    63,
+      64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
+      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
+      84,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   105,   106,   107,    -1,    -1,   110,   111,   112,   113,
+     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
+     124,   125,   126,   127,   128
 };
 
 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@@ -2313,61 +2317,61 @@
 static const unsigned char yystos[] =
 {
        0,    16,    17,    19,    20,    21,    27,    28,    46,    49,
-      53,   156,   158,   159,   160,   188,   189,   190,   192,   191,
-      47,    61,   197,   134,    52,   134,    15,   134,    37,    38,
-      39,    40,    41,    42,    43,    45,   133,   161,   162,   163,
-       0,   190,    41,    43,   164,   207,    37,    38,    39,    42,
-     165,   204,   206,   213,   134,   134,   140,   198,    19,   196,
-       7,     8,    10,    11,    12,    13,    14,    44,   137,   140,
-     143,   145,   156,   159,   177,   178,   210,   163,   163,    29,
-      30,   187,   163,   163,    18,   214,   215,    26,   146,   205,
-     214,    19,    19,    19,   199,   138,     4,     4,     4,   145,
-      10,   146,   178,   183,   136,   138,   187,   187,    11,    12,
-      13,   154,   155,   178,   184,    55,    56,    57,    58,    59,
-      60,   166,   202,   202,   158,   218,   135,   142,    34,   178,
-     179,   181,   182,   141,   141,   146,   183,   135,   146,   182,
-     184,   178,    23,    24,     3,     4,     5,     6,     9,    22,
+      53,   157,   159,   160,   161,   189,   190,   191,   193,   192,
+      47,    61,   198,   135,    52,   135,    15,   135,    37,    38,
+      39,    40,    41,    42,    43,    45,   134,   162,   163,   164,
+       0,   191,    41,    43,   165,   208,    37,    38,    39,    42,
+     166,   205,   207,   214,   135,   135,   141,   199,    19,   197,
+       7,     8,    10,    11,    12,    13,    14,    44,   138,   141,
+     144,   146,   157,   160,   178,   179,   211,   164,   164,    29,
+      30,   188,   164,   164,    18,   215,   216,    26,   147,   206,
+     215,    19,    19,    19,   200,   139,     4,     4,     4,   146,
+      10,   147,   179,   184,   137,   139,   188,   188,    11,    12,
+      13,   155,   156,   179,   185,    55,    56,    57,    58,    59,
+      60,   167,   203,   203,   159,   219,   136,   143,    34,   179,
+     180,   182,   183,   142,   142,   147,   184,   136,   147,   183,
+     185,   179,    23,    24,     3,     4,     5,     6,     9,    22,
       35,    36,    68,    69,    70,    71,    72,    73,    74,    75,
       76,    77,    78,    79,    80,    81,    82,    83,    84,   110,
      111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
-     121,   122,   124,   126,   127,   128,   140,   143,   145,   147,
-     149,   150,   151,   185,   210,   193,     4,    10,   178,   180,
-      25,   145,   203,    32,    50,    51,    62,    63,    64,    65,
+     121,   122,   124,   126,   127,   128,   141,   144,   146,   148,
+     150,   151,   152,   186,   211,   194,     4,    10,   179,   181,
+      25,   146,   204,    32,    50,    51,    62,    63,    64,    65,
       66,    67,    83,    84,   105,   106,   107,   110,   123,   124,
-     125,   126,   127,   128,   149,   150,   151,   216,   222,   223,
-     224,   225,    19,   168,   135,   139,   178,   178,   144,   146,
-     178,   139,   194,   195,    85,    86,    87,    88,    89,    90,
-      91,    92,    93,    94,   152,    23,    24,    91,    92,    93,
+     125,   126,   127,   128,   150,   151,   152,   217,   223,   224,
+     225,   226,    19,   169,   136,   140,   179,   179,   145,   147,
+     179,   140,   195,   196,    85,    86,    87,    88,    89,    90,
+      91,    92,    93,    94,   153,    23,    24,    91,    92,    93,
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
-     104,   153,   138,   138,   138,   138,   138,   142,   184,   186,
-     145,   186,   146,   186,    19,   138,   138,   138,   135,   175,
-     159,    50,    10,   178,   212,    11,    14,    11,   154,   166,
-     152,   153,   178,   178,   212,   178,   178,   219,   212,   212,
-     212,   212,   212,   178,   178,   212,   166,   108,   109,   112,
-     113,   130,   131,   167,    34,   179,   170,   142,   144,   144,
-     170,   175,   175,   138,   138,   184,   184,   184,   184,   184,
-     135,   142,   146,   178,   186,   144,   146,   184,   184,   184,
-      31,    48,   173,   176,   138,     3,     4,     9,    22,    23,
-      24,    35,    36,    52,   143,   185,   209,   210,   211,   211,
-     211,   211,   180,   178,   178,   135,   172,   135,   172,   211,
-     140,   135,   135,   135,   135,   135,   135,   211,   211,    33,
-     180,   178,   212,   129,   167,   169,   184,   184,   221,   135,
-     135,   135,   135,   184,   144,   146,   135,   135,    33,    19,
-       4,   175,    34,   178,   200,   201,    54,   208,   186,   135,
-     135,   211,   211,   211,    11,    48,    11,   221,   211,   140,
-     212,   178,   212,   212,   212,   135,   135,   178,   211,   211,
-     135,   135,   135,   135,   139,   184,   184,   184,   184,   144,
-     184,   184,   178,   168,   135,   139,    19,   144,    14,    14,
-     138,   135,   135,   211,     4,   211,   135,   211,   135,   135,
-     135,   211,   211,   138,   178,   184,   184,   212,   135,   139,
-     135,   135,   139,   139,   139,   156,   157,    34,   178,   170,
-     135,   211,   211,   178,   220,   211,   211,   135,   172,   172,
-     211,   135,   212,   212,   212,   220,   211,   139,   139,   184,
-     184,   184,   168,   173,   174,    19,   135,   140,   211,   135,
-     139,   142,   211,   139,   139,   139,   139,   157,    48,   171,
-      14,   142,   154,   217,   168,   178,   170,   142,   170,     4,
-     211,   209,   142,   154,   211,    33,   135,   209,   168,    14,
-      14,   135,   211,   211,    14,    66,   211,    14,   211
+     104,   154,   139,   139,   139,   139,   139,   143,   185,   187,
+     146,   187,   147,   187,    19,   139,   139,   139,   136,   176,
+     160,    50,    10,   179,   213,    11,    14,    11,   155,   167,
+     153,   154,   179,   179,   213,   179,   179,   220,   213,   213,
+     213,   213,   213,   179,   179,   213,   167,   108,   109,   112,
+     113,   130,   131,   168,    34,   180,   171,   143,   145,   145,
+     171,   176,   176,   139,   139,   185,   185,   185,   185,   185,
+     136,   143,   147,   179,   187,   145,   147,   185,   185,   185,
+      31,    48,   174,   177,   139,     3,     4,     9,    22,    23,
+      24,    35,    36,    52,   144,   186,   210,   211,   212,   212,
+     212,   212,   181,   179,   179,   136,   173,   136,   173,   212,
+     141,   136,   136,   136,   136,   136,   136,   212,   212,    33,
+     181,   179,   213,   129,   132,   168,   170,   185,   185,   222,
+     136,   136,   136,   136,   185,   145,   147,   136,   136,    33,
+      19,     4,   176,    34,   179,   201,   202,    54,   209,   187,
+     136,   136,   212,   212,   212,    11,    48,    11,   222,   212,
+     141,   213,   179,   213,   213,   213,   136,   136,   179,   212,
+     212,   136,   136,   136,   136,   140,   185,   185,   185,   185,
+     145,   185,   185,   179,   169,   136,   140,    19,   145,    14,
+      14,   139,   136,   136,   212,     4,   212,   136,   212,   136,
+     136,   136,   212,   212,   139,   179,   185,   185,   213,   136,
+     140,   136,   136,   140,   140,   140,   157,   158,    34,   179,
+     171,   136,   212,   212,   179,   221,   212,   212,   136,   173,
+     173,   212,   136,   213,   213,   213,   221,   212,   140,   140,
+     185,   185,   185,   169,   174,   175,    19,   136,   141,   212,
+     136,   140,   143,   212,   140,   140,   140,   140,   158,    48,
+     172,    14,   143,   155,   218,   169,   179,   171,   143,   171,
+       4,   212,   210,   143,   155,   212,    33,   136,   210,   169,
+      14,    14,   136,   212,   212,    14,    66,   212,    14,   212
 };
 
 #define yyerrok		(yyerrstatus = 0)
@@ -3370,25 +3374,30 @@
     { (yyval.ParamAttrs) = FunctionType::NoReturnAttribute; ;}
     break;
 
-  case 101:
-#line 1210 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ParamAttrs) = FunctionType::NoAttributeSet; ;}
+  case 100:
+#line 1207 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    { (yyval.ParamAttrs) = FunctionType::NoUnwindAttribute; ;}
     break;
 
   case 102:
 #line 1211 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    { (yyval.ParamAttrs) = FunctionType::NoAttributeSet; ;}
+    break;
+
+  case 103:
+#line 1212 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
                 (yyval.ParamAttrs) = FunctionType::ParameterAttributes((yyvsp[-1].ParamAttrs) | (yyvsp[0].ParamAttrs));
               ;}
     break;
 
-  case 103:
-#line 1218 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 104:
+#line 1219 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = 0; ;}
     break;
 
-  case 104:
-#line 1219 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 105:
+#line 1220 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.UIntVal) = (yyvsp[0].UInt64Val);
   if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
@@ -3397,13 +3406,13 @@
 ;}
     break;
 
-  case 105:
-#line 1225 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.UIntVal) = 0; ;}
-    break;
-
   case 106:
 #line 1226 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    { (yyval.UIntVal) = 0; ;}
+    break;
+
+  case 107:
+#line 1227 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.UIntVal) = (yyvsp[0].UInt64Val);
   if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
@@ -3412,8 +3421,8 @@
 ;}
     break;
 
-  case 107:
-#line 1234 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 108:
+#line 1235 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   for (unsigned i = 0, e = strlen((yyvsp[0].StrVal)); i != e; ++i)
     if ((yyvsp[0].StrVal)[i] == '"' || (yyvsp[0].StrVal)[i] == '\\')
@@ -3423,19 +3432,14 @@
 ;}
     break;
 
-  case 108:
-#line 1242 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 109:
+#line 1243 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.StrVal) = 0; ;}
     break;
 
-  case 109:
-#line 1243 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.StrVal) = (yyvsp[0].StrVal); ;}
-    break;
-
   case 110:
-#line 1248 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    {;}
+#line 1244 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    { (yyval.StrVal) = (yyvsp[0].StrVal); ;}
     break;
 
   case 111:
@@ -3445,6 +3449,11 @@
 
   case 112:
 #line 1250 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    {;}
+    break;
+
+  case 113:
+#line 1251 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV->setSection((yyvsp[0].StrVal));
     free((yyvsp[0].StrVal));
@@ -3452,8 +3461,8 @@
   ;}
     break;
 
-  case 113:
-#line 1255 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 114:
+#line 1256 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[0].UInt64Val) != 0 && !isPowerOf2_32((yyvsp[0].UInt64Val)))
       GEN_ERROR("Alignment must be a power of two");
@@ -3462,24 +3471,24 @@
   ;}
     break;
 
-  case 118:
-#line 1271 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 119:
+#line 1272 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeVal) = new PATypeHolder(OpaqueType::get());
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 119:
-#line 1275 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 120:
+#line 1276 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeVal) = new PATypeHolder((yyvsp[0].PrimType));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 120:
-#line 1279 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 121:
+#line 1280 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                             // Pointer type?
     if (*(yyvsp[-1].TypeVal) == Type::LabelTy)
       GEN_ERROR("Cannot form a pointer to a basic block");
@@ -3489,8 +3498,8 @@
   ;}
     break;
 
-  case 121:
-#line 1286 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 122:
+#line 1287 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {            // Named types are also simple types...
     const Type* tmp = getTypeVal((yyvsp[0].ValIDVal));
     CHECK_FOR_ERROR
@@ -3498,8 +3507,8 @@
   ;}
     break;
 
-  case 122:
-#line 1291 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 123:
+#line 1292 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                   // Type UpReference
     if ((yyvsp[0].UInt64Val) > (uint64_t)~0U) GEN_ERROR("Value out of range");
     OpaqueType *OT = OpaqueType::get();        // Use temporary placeholder
@@ -3510,8 +3519,8 @@
   ;}
     break;
 
-  case 123:
-#line 1299 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 124:
+#line 1300 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     std::vector<const Type*> Params;
     std::vector<FunctionType::ParameterAttributes> Attrs;
@@ -3533,8 +3542,8 @@
   ;}
     break;
 
-  case 124:
-#line 1318 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 125:
+#line 1319 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     std::vector<const Type*> Params;
     std::vector<FunctionType::ParameterAttributes> Attrs;
@@ -3555,8 +3564,8 @@
   ;}
     break;
 
-  case 125:
-#line 1337 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 126:
+#line 1338 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {          // Sized array type?
     (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(ArrayType::get(*(yyvsp[-1].TypeVal), (unsigned)(yyvsp[-3].UInt64Val))));
     delete (yyvsp[-1].TypeVal);
@@ -3564,8 +3573,8 @@
   ;}
     break;
 
-  case 126:
-#line 1342 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 127:
+#line 1343 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {          // Vector type?
      const llvm::Type* ElemTy = (yyvsp[-1].TypeVal)->get();
      if ((unsigned)(yyvsp[-3].UInt64Val) != (yyvsp[-3].UInt64Val))
@@ -3580,8 +3589,8 @@
   ;}
     break;
 
-  case 127:
-#line 1354 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 128:
+#line 1355 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                        // Structure type?
     std::vector<const Type*> Elements;
     for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[-1].TypeList)->begin(),
@@ -3594,16 +3603,16 @@
   ;}
     break;
 
-  case 128:
-#line 1364 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 129:
+#line 1365 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                                  // Empty structure type?
     (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>()));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 129:
-#line 1368 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 130:
+#line 1369 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     std::vector<const Type*> Elements;
     for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[-2].TypeList)->begin(),
@@ -3616,24 +3625,24 @@
   ;}
     break;
 
-  case 130:
-#line 1378 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 131:
+#line 1379 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                         // Empty structure type?
     (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>(), true));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 131:
-#line 1385 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 132:
+#line 1386 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { 
     (yyval.TypeWithAttrs).Ty = (yyvsp[-1].TypeVal); 
     (yyval.TypeWithAttrs).Attrs = (yyvsp[0].ParamAttrs); 
   ;}
     break;
 
-  case 132:
-#line 1392 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 133:
+#line 1393 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -3643,15 +3652,15 @@
   ;}
     break;
 
-  case 133:
-#line 1399 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 134:
+#line 1400 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeVal) = new PATypeHolder(Type::VoidTy);
   ;}
     break;
 
-  case 134:
-#line 1404 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 135:
+#line 1405 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeWithAttrsList) = new TypeWithAttrsList();
     (yyval.TypeWithAttrsList)->push_back((yyvsp[0].TypeWithAttrs));
@@ -3659,16 +3668,16 @@
   ;}
     break;
 
-  case 135:
-#line 1409 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 136:
+#line 1410 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.TypeWithAttrsList)=(yyvsp[-2].TypeWithAttrsList))->push_back((yyvsp[0].TypeWithAttrs));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 137:
-#line 1417 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 138:
+#line 1418 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeWithAttrsList)=(yyvsp[-2].TypeWithAttrsList);
     TypeWithAttrs TWA; TWA.Attrs = FunctionType::NoAttributeSet;
@@ -3678,8 +3687,8 @@
   ;}
     break;
 
-  case 138:
-#line 1424 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 139:
+#line 1425 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeWithAttrsList) = new TypeWithAttrsList;
     TypeWithAttrs TWA; TWA.Attrs = FunctionType::NoAttributeSet;
@@ -3689,16 +3698,16 @@
   ;}
     break;
 
-  case 139:
-#line 1431 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 140:
+#line 1432 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeWithAttrsList) = new TypeWithAttrsList();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 140:
-#line 1439 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 141:
+#line 1440 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeList) = new std::list<PATypeHolder>();
     (yyval.TypeList)->push_back(*(yyvsp[0].TypeVal)); 
@@ -3707,8 +3716,8 @@
   ;}
     break;
 
-  case 141:
-#line 1445 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 142:
+#line 1446 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.TypeList)=(yyvsp[-2].TypeList))->push_back(*(yyvsp[0].TypeVal)); 
     delete (yyvsp[0].TypeVal);
@@ -3716,8 +3725,8 @@
   ;}
     break;
 
-  case 142:
-#line 1457 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 143:
+#line 1458 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized arr
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -3748,8 +3757,8 @@
   ;}
     break;
 
-  case 143:
-#line 1485 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 144:
+#line 1486 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -3768,8 +3777,8 @@
   ;}
     break;
 
-  case 144:
-#line 1501 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 145:
+#line 1502 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -3801,8 +3810,8 @@
   ;}
     break;
 
-  case 145:
-#line 1530 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 146:
+#line 1531 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized arr
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -3833,8 +3842,8 @@
   ;}
     break;
 
-  case 146:
-#line 1558 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 147:
+#line 1559 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const StructType *STy = dyn_cast<StructType>((yyvsp[-3].TypeVal)->get());
     if (STy == 0)
@@ -3862,8 +3871,8 @@
   ;}
     break;
 
-  case 147:
-#line 1583 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 148:
+#line 1584 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -3885,8 +3894,8 @@
   ;}
     break;
 
-  case 148:
-#line 1602 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 149:
+#line 1603 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const StructType *STy = dyn_cast<StructType>((yyvsp[-5].TypeVal)->get());
     if (STy == 0)
@@ -3915,8 +3924,8 @@
   ;}
     break;
 
-  case 149:
-#line 1628 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 150:
+#line 1629 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription());
@@ -3939,8 +3948,8 @@
   ;}
     break;
 
-  case 150:
-#line 1648 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 151:
+#line 1649 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -3955,8 +3964,8 @@
   ;}
     break;
 
-  case 151:
-#line 1660 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 152:
+#line 1661 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -3966,8 +3975,8 @@
   ;}
     break;
 
-  case 152:
-#line 1667 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 153:
+#line 1668 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4036,8 +4045,8 @@
   ;}
     break;
 
-  case 153:
-#line 1733 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 154:
+#line 1734 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4050,8 +4059,8 @@
   ;}
     break;
 
-  case 154:
-#line 1743 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 155:
+#line 1744 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4064,8 +4073,8 @@
   ;}
     break;
 
-  case 155:
-#line 1753 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 156:
+#line 1754 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {      // integral constants
     if (!ConstantInt::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].SInt64Val)))
       GEN_ERROR("Constant value doesn't fit in type");
@@ -4074,8 +4083,8 @@
   ;}
     break;
 
-  case 156:
-#line 1759 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 157:
+#line 1760 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {      // arbitrary precision integer constants
     uint32_t BitWidth = cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth();
     if ((yyvsp[0].APIntVal)->getBitWidth() > BitWidth) {
@@ -4088,8 +4097,8 @@
   ;}
     break;
 
-  case 157:
-#line 1769 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 158:
+#line 1770 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {      // integral constants
     if (!ConstantInt::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].UInt64Val)))
       GEN_ERROR("Constant value doesn't fit in type");
@@ -4098,8 +4107,8 @@
   ;}
     break;
 
-  case 158:
-#line 1775 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 159:
+#line 1776 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {      // arbitrary precision integer constants
     uint32_t BitWidth = cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth();
     if ((yyvsp[0].APIntVal)->getBitWidth() > BitWidth) {
@@ -4112,8 +4121,8 @@
   ;}
     break;
 
-  case 159:
-#line 1785 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 160:
+#line 1786 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                      // Boolean constants
     assert(cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth() == 1 && "Not Bool?");
     (yyval.ConstVal) = ConstantInt::getTrue();
@@ -4121,8 +4130,8 @@
   ;}
     break;
 
-  case 160:
-#line 1790 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 161:
+#line 1791 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                     // Boolean constants
     assert(cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth() == 1 && "Not Bool?");
     (yyval.ConstVal) = ConstantInt::getFalse();
@@ -4130,8 +4139,8 @@
   ;}
     break;
 
-  case 161:
-#line 1795 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 162:
+#line 1796 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                   // Float & Double constants
     if (!ConstantFP::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].FPVal)))
       GEN_ERROR("Floating point constant invalid for type");
@@ -4140,8 +4149,8 @@
   ;}
     break;
 
-  case 162:
-#line 1803 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 163:
+#line 1804 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4156,8 +4165,8 @@
   ;}
     break;
 
-  case 163:
-#line 1815 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 164:
+#line 1816 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!isa<PointerType>((yyvsp[-2].ConstVal)->getType()))
       GEN_ERROR("GetElementPtr requires a pointer operand");
@@ -4182,8 +4191,8 @@
   ;}
     break;
 
-  case 164:
-#line 1837 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 165:
+#line 1838 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-5].ConstVal)->getType() != Type::Int1Ty)
       GEN_ERROR("Select condition must be of boolean type");
@@ -4194,8 +4203,8 @@
   ;}
     break;
 
-  case 165:
-#line 1845 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 166:
+#line 1846 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("Binary operator types must match");
@@ -4204,8 +4213,8 @@
   ;}
     break;
 
-  case 166:
-#line 1851 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 167:
+#line 1852 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("Logical operator types must match");
@@ -4219,8 +4228,8 @@
   ;}
     break;
 
-  case 167:
-#line 1862 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 168:
+#line 1863 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("icmp operand types must match");
@@ -4228,8 +4237,8 @@
   ;}
     break;
 
-  case 168:
-#line 1867 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 169:
+#line 1868 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("fcmp operand types must match");
@@ -4237,8 +4246,8 @@
   ;}
     break;
 
-  case 169:
-#line 1872 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 170:
+#line 1873 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ExtractElementInst::isValidOperands((yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
       GEN_ERROR("Invalid extractelement operands");
@@ -4247,8 +4256,8 @@
   ;}
     break;
 
-  case 170:
-#line 1878 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 171:
+#line 1879 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!InsertElementInst::isValidOperands((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
       GEN_ERROR("Invalid insertelement operands");
@@ -4257,8 +4266,8 @@
   ;}
     break;
 
-  case 171:
-#line 1884 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 172:
+#line 1885 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ShuffleVectorInst::isValidOperands((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
       GEN_ERROR("Invalid shufflevector operands");
@@ -4267,16 +4276,16 @@
   ;}
     break;
 
-  case 172:
-#line 1893 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 173:
+#line 1894 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.ConstVector) = (yyvsp[-2].ConstVector))->push_back((yyvsp[0].ConstVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 173:
-#line 1897 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 174:
+#line 1898 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ConstVector) = new std::vector<Constant*>();
     (yyval.ConstVector)->push_back((yyvsp[0].ConstVal));
@@ -4284,27 +4293,18 @@
   ;}
     break;
 
-  case 174:
-#line 1905 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 175:
+#line 1906 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.BoolVal) = false; ;}
     break;
 
-  case 175:
-#line 1905 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 176:
+#line 1906 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.BoolVal) = true; ;}
     break;
 
-  case 176:
-#line 1916 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    {
-    (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;
-    CurModule.ModuleDone();
-    CHECK_FOR_ERROR;
-  ;}
-    break;
-
   case 177:
-#line 1921 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1917 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;
     CurModule.ModuleDone();
@@ -4312,40 +4312,49 @@
   ;}
     break;
 
-  case 180:
-#line 1934 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    { CurFun.isDeclare = false; ;}
+  case 178:
+#line 1922 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    {
+    (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;
+    CurModule.ModuleDone();
+    CHECK_FOR_ERROR;
+  ;}
     break;
 
   case 181:
-#line 1934 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1935 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    { CurFun.isDeclare = false; ;}
+    break;
+
+  case 182:
+#line 1935 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurFun.FunctionDone();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 182:
-#line 1938 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 183:
+#line 1939 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { CurFun.isDeclare = true; ;}
     break;
 
-  case 183:
-#line 1938 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    {
-    CHECK_FOR_ERROR
-  ;}
-    break;
-
   case 184:
-#line 1941 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1939 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CHECK_FOR_ERROR
   ;}
     break;
 
   case 185:
-#line 1944 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1942 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    {
+    CHECK_FOR_ERROR
+  ;}
+    break;
+
+  case 186:
+#line 1945 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     // Emit an error if there are any unresolved types left.
     if (!CurModule.LateResolveTypes.empty()) {
@@ -4360,8 +4369,8 @@
   ;}
     break;
 
-  case 186:
-#line 1956 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 187:
+#line 1957 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -4388,8 +4397,8 @@
   ;}
     break;
 
-  case 187:
-#line 1980 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 188:
+#line 1981 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     ResolveTypeTo((yyvsp[-2].StrVal), (yyvsp[0].PrimType));
 
@@ -4403,8 +4412,8 @@
   ;}
     break;
 
-  case 188:
-#line 1991 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 189:
+#line 1992 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { 
     /* "Externally Visible" Linkage */
     if ((yyvsp[0].ConstVal) == 0) 
@@ -4415,15 +4424,15 @@
   ;}
     break;
 
-  case 189:
-#line 1998 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 190:
+#line 1999 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
   ;}
     break;
 
-  case 190:
-#line 2001 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 191:
+#line 2002 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[0].ConstVal) == 0) 
       GEN_ERROR("Global value initializer is not a constant");
@@ -4432,15 +4441,15 @@
   ;}
     break;
 
-  case 191:
-#line 2006 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 192:
+#line 2007 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
   ;}
     break;
 
-  case 192:
-#line 2009 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 193:
+#line 2010 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -4450,30 +4459,30 @@
   ;}
     break;
 
-  case 193:
-#line 2015 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 194:
+#line 2016 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 194:
-#line 2019 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 195:
+#line 2020 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { 
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 195:
-#line 2022 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 196:
+#line 2023 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 196:
-#line 2028 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 197:
+#line 2029 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm();
   char *EndStr = UnEscapeLexed((yyvsp[0].StrVal), true);
@@ -4488,33 +4497,24 @@
 ;}
     break;
 
-  case 197:
-#line 2041 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 198:
+#line 2042 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurModule.CurrentModule->setTargetTriple((yyvsp[0].StrVal));
     free((yyvsp[0].StrVal));
   ;}
     break;
 
-  case 198:
-#line 2045 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 199:
+#line 2046 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurModule.CurrentModule->setDataLayout((yyvsp[0].StrVal));
     free((yyvsp[0].StrVal));
   ;}
     break;
 
-  case 200:
-#line 2052 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    {
-          CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal));
-          free((yyvsp[0].StrVal));
-          CHECK_FOR_ERROR
-        ;}
-    break;
-
   case 201:
-#line 2057 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2053 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
           CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal));
           free((yyvsp[0].StrVal));
@@ -4523,14 +4523,23 @@
     break;
 
   case 202:
-#line 2062 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2058 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
+          CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal));
+          free((yyvsp[0].StrVal));
           CHECK_FOR_ERROR
         ;}
     break;
 
   case 203:
-#line 2071 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2063 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    {
+          CHECK_FOR_ERROR
+        ;}
+    break;
+
+  case 204:
+#line 2072 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -4543,8 +4552,8 @@
   ;}
     break;
 
-  case 204:
-#line 2081 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 205:
+#line 2082 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -4557,16 +4566,16 @@
   ;}
     break;
 
-  case 205:
-#line 2092 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 206:
+#line 2093 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = (yyvsp[0].ArgList);
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 206:
-#line 2096 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 207:
+#line 2097 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = (yyvsp[-2].ArgList);
     struct ArgListEntry E;
@@ -4578,8 +4587,8 @@
   ;}
     break;
 
-  case 207:
-#line 2105 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 208:
+#line 2106 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = new ArgListType;
     struct ArgListEntry E;
@@ -4591,16 +4600,16 @@
   ;}
     break;
 
-  case 208:
-#line 2114 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 209:
+#line 2115 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = 0;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 209:
-#line 2120 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 210:
+#line 2121 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   UnEscapeLexed((yyvsp[-6].StrVal));
   std::string FunctionName((yyvsp[-6].StrVal));
@@ -4713,8 +4722,8 @@
 ;}
     break;
 
-  case 212:
-#line 2233 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 213:
+#line 2234 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.FunctionVal) = CurFun.CurrentFunction;
 
@@ -4725,16 +4734,16 @@
 ;}
     break;
 
-  case 215:
-#line 2244 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 216:
+#line 2245 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
   CHECK_FOR_ERROR
 ;}
     break;
 
-  case 216:
-#line 2249 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 217:
+#line 2250 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurFun.CurrentFunction->setLinkage((yyvsp[-2].Linkage));
     CurFun.CurrentFunction->setVisibility((yyvsp[-1].Visibility));
@@ -4744,88 +4753,88 @@
   ;}
     break;
 
-  case 217:
-#line 2261 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 218:
+#line 2262 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = false;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 218:
-#line 2265 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 219:
+#line 2266 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = true;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 219:
-#line 2270 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 220:
+#line 2271 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {    // A reference to a direct constant
     (yyval.ValIDVal) = ValID::create((yyvsp[0].SInt64Val));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 220:
-#line 2274 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 221:
+#line 2275 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create((yyvsp[0].UInt64Val));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 221:
-#line 2278 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 222:
+#line 2279 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                     // Perhaps it's an FP constant?
     (yyval.ValIDVal) = ValID::create((yyvsp[0].FPVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 222:
-#line 2282 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 223:
+#line 2283 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create(ConstantInt::getTrue());
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 223:
-#line 2286 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 224:
+#line 2287 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create(ConstantInt::getFalse());
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 224:
-#line 2290 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 225:
+#line 2291 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::createNull();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 225:
-#line 2294 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 226:
+#line 2295 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::createUndef();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 226:
-#line 2298 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 227:
+#line 2299 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {     // A vector zero constant.
     (yyval.ValIDVal) = ValID::createZeroInit();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 227:
-#line 2302 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 228:
+#line 2303 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized packed vector
     const Type *ETy = (*(yyvsp[-1].ConstVector))[0]->getType();
     int NumElements = (yyvsp[-1].ConstVector)->size(); 
@@ -4853,16 +4862,16 @@
   ;}
     break;
 
-  case 228:
-#line 2327 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 229:
+#line 2328 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create((yyvsp[0].ConstVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 229:
-#line 2331 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 230:
+#line 2332 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     char *End = UnEscapeLexed((yyvsp[-2].StrVal), true);
     std::string AsmStr = std::string((yyvsp[-2].StrVal), End);
@@ -4875,40 +4884,40 @@
   ;}
     break;
 
-  case 230:
-#line 2345 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 231:
+#line 2346 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {  // Is it an integer reference...?
     (yyval.ValIDVal) = ValID::createLocalID((yyvsp[0].UIntVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 231:
-#line 2349 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 232:
+#line 2350 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::createGlobalID((yyvsp[0].UIntVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 232:
-#line 2353 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 233:
+#line 2354 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                   // Is it a named reference...?
     (yyval.ValIDVal) = ValID::createLocalName((yyvsp[0].StrVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 233:
-#line 2357 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 234:
+#line 2358 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                   // Is it a named reference...?
     (yyval.ValIDVal) = ValID::createGlobalName((yyvsp[0].StrVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 236:
-#line 2369 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 237:
+#line 2370 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4918,24 +4927,24 @@
   ;}
     break;
 
-  case 237:
-#line 2378 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 238:
+#line 2379 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 238:
-#line 2382 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 239:
+#line 2383 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { // Do not allow functions with 0 basic blocks   
     (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 239:
-#line 2391 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 240:
+#line 2392 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     setValueName((yyvsp[0].TermInstVal), (yyvsp[-1].StrVal));
     CHECK_FOR_ERROR
@@ -4946,8 +4955,8 @@
   ;}
     break;
 
-  case 240:
-#line 2400 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 241:
+#line 2401 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (CastInst *CI1 = dyn_cast<CastInst>((yyvsp[0].InstVal)))
       if (CastInst *CI2 = dyn_cast<CastInst>(CI1->getOperand(0)))
@@ -4959,40 +4968,40 @@
   ;}
     break;
 
-  case 241:
-#line 2409 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 242:
+#line 2410 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {          // Empty space between instruction lists
     (yyval.BasicBlockVal) = defineBBVal(ValID::createLocalID(CurFun.NextValNum));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 242:
-#line 2413 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 243:
+#line 2414 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {             // Labelled (named) basic block
     (yyval.BasicBlockVal) = defineBBVal(ValID::createLocalName((yyvsp[0].StrVal)));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 243:
-#line 2418 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 244:
+#line 2419 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {              // Return with a result...
     (yyval.TermInstVal) = new ReturnInst((yyvsp[0].ValueVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 244:
-#line 2422 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 245:
+#line 2423 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                                    // Return with no result...
     (yyval.TermInstVal) = new ReturnInst();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 245:
-#line 2426 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 246:
+#line 2427 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                           // Unconditional Branch...
     BasicBlock* tmpBB = getBBVal((yyvsp[0].ValIDVal));
     CHECK_FOR_ERROR
@@ -5000,8 +5009,8 @@
   ;}
     break;
 
-  case 246:
-#line 2431 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 247:
+#line 2432 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {  
     assert(cast<IntegerType>((yyvsp[-7].PrimType))->getBitWidth() == 1 && "Not Bool?");
     BasicBlock* tmpBBA = getBBVal((yyvsp[-3].ValIDVal));
@@ -5014,8 +5023,8 @@
   ;}
     break;
 
-  case 247:
-#line 2441 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 248:
+#line 2442 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     Value* tmpVal = getVal((yyvsp[-7].PrimType), (yyvsp[-6].ValIDVal));
     CHECK_FOR_ERROR
@@ -5037,8 +5046,8 @@
   ;}
     break;
 
-  case 248:
-#line 2460 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 249:
+#line 2461 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     Value* tmpVal = getVal((yyvsp[-6].PrimType), (yyvsp[-5].ValIDVal));
     CHECK_FOR_ERROR
@@ -5050,8 +5059,8 @@
   ;}
     break;
 
-  case 249:
-#line 2470 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 250:
+#line 2471 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
 
     // Handle the short syntax
@@ -5122,24 +5131,24 @@
   ;}
     break;
 
-  case 250:
-#line 2538 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 251:
+#line 2539 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TermInstVal) = new UnwindInst();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 251:
-#line 2542 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 252:
+#line 2543 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TermInstVal) = new UnreachableInst();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 252:
-#line 2549 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 253:
+#line 2550 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.JumpTable) = (yyvsp[-5].JumpTable);
     Constant *V = cast<Constant>(getExistingVal((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));
@@ -5153,8 +5162,8 @@
   ;}
     break;
 
-  case 253:
-#line 2560 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 254:
+#line 2561 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.JumpTable) = new std::vector<std::pair<Constant*, BasicBlock*> >();
     Constant *V = cast<Constant>(getExistingVal((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));
@@ -5169,8 +5178,8 @@
   ;}
     break;
 
-  case 254:
-#line 2573 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 255:
+#line 2574 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     // Is this definition named?? if so, assign the name...
     setValueName((yyvsp[0].InstVal), (yyvsp[-1].StrVal));
@@ -5181,8 +5190,8 @@
   ;}
     break;
 
-  case 255:
-#line 2583 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 256:
+#line 2584 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {    // Used for PHI nodes
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-5].TypeVal))->getDescription());
@@ -5196,8 +5205,8 @@
   ;}
     break;
 
-  case 256:
-#line 2594 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 257:
+#line 2595 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.PHIList) = (yyvsp[-6].PHIList);
     Value* tmpVal = getVal((yyvsp[-6].PHIList)->front().first->getType(), (yyvsp[-3].ValIDVal));
@@ -5208,8 +5217,8 @@
   ;}
     break;
 
-  case 257:
-#line 2604 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 258:
+#line 2605 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {    
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -5221,8 +5230,8 @@
   ;}
     break;
 
-  case 258:
-#line 2613 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 259:
+#line 2614 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -5234,18 +5243,18 @@
   ;}
     break;
 
-  case 259:
-#line 2622 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ValueRefList) = new ValueRefList(); ;}
-    break;
-
   case 260:
-#line 2625 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ValueList) = new std::vector<Value*>(); ;}
+#line 2623 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    { (yyval.ValueRefList) = new ValueRefList(); ;}
     break;
 
   case 261:
 #line 2626 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+    { (yyval.ValueList) = new std::vector<Value*>(); ;}
+    break;
+
+  case 262:
+#line 2627 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValueList) = (yyvsp[-2].ValueList);
     (yyval.ValueList)->push_back((yyvsp[0].ValueVal));
@@ -5253,24 +5262,24 @@
   ;}
     break;
 
-  case 262:
-#line 2633 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 263:
+#line 2634 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = true;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 263:
-#line 2637 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 264:
+#line 2638 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = false;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 264:
-#line 2642 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 265:
+#line 2643 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -5294,8 +5303,8 @@
   ;}
     break;
 
-  case 265:
-#line 2663 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 266:
+#line 2664 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -5315,8 +5324,8 @@
   ;}
     break;
 
-  case 266:
-#line 2680 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 267:
+#line 2681 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -5333,8 +5342,8 @@
   ;}
     break;
 
-  case 267:
-#line 2694 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 268:
+#line 2695 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -5351,8 +5360,8 @@
   ;}
     break;
 
-  case 268:
-#line 2708 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 269:
+#line 2709 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -5367,8 +5376,8 @@
   ;}
     break;
 
-  case 269:
-#line 2720 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 270:
+#line 2721 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-4].ValueVal)->getType() != Type::Int1Ty)
       GEN_ERROR("select condition must be boolean");
@@ -5379,8 +5388,8 @@
   ;}
     break;
 
-  case 270:
-#line 2728 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 271:
+#line 2729 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -5390,8 +5399,8 @@
   ;}
     break;
 
-  case 271:
-#line 2735 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 272:
+#line 2736 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ExtractElementInst::isValidOperands((yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
       GEN_ERROR("Invalid extractelement operands");
@@ -5400,8 +5409,8 @@
   ;}
     break;
 
-  case 272:
-#line 2741 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 273:
+#line 2742 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!InsertElementInst::isValidOperands((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
       GEN_ERROR("Invalid insertelement operands");
@@ -5410,8 +5419,8 @@
   ;}
     break;
 
-  case 273:
-#line 2747 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 274:
+#line 2748 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ShuffleVectorInst::isValidOperands((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
       GEN_ERROR("Invalid shufflevector operands");
@@ -5420,8 +5429,8 @@
   ;}
     break;
 
-  case 274:
-#line 2753 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 275:
+#line 2754 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const Type *Ty = (yyvsp[0].PHIList)->front().first->getType();
     if (!Ty->isFirstClassType())
@@ -5439,8 +5448,8 @@
   ;}
     break;
 
-  case 275:
-#line 2769 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 276:
+#line 2770 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
 
     // Handle the short syntax
@@ -5506,32 +5515,32 @@
   ;}
     break;
 
-  case 276:
-#line 2832 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 277:
+#line 2833 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.InstVal) = (yyvsp[0].InstVal);
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 277:
-#line 2837 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 278:
+#line 2838 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = true;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 278:
-#line 2841 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 279:
+#line 2842 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = false;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 279:
-#line 2848 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 280:
+#line 2849 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -5541,8 +5550,8 @@
   ;}
     break;
 
-  case 280:
-#line 2855 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 281:
+#line 2856 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription());
@@ -5553,8 +5562,8 @@
   ;}
     break;
 
-  case 281:
-#line 2863 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 282:
+#line 2864 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -5564,8 +5573,8 @@
   ;}
     break;
 
-  case 282:
-#line 2870 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 283:
+#line 2871 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription());
@@ -5576,8 +5585,8 @@
   ;}
     break;
 
-  case 283:
-#line 2878 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 284:
+#line 2879 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!isa<PointerType>((yyvsp[0].ValueVal)->getType()))
       GEN_ERROR("Trying to free nonpointer type " + 
@@ -5587,8 +5596,8 @@
   ;}
     break;
 
-  case 284:
-#line 2886 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 285:
+#line 2887 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -5605,8 +5614,8 @@
   ;}
     break;
 
-  case 285:
-#line 2900 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 286:
+#line 2901 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -5626,8 +5635,8 @@
   ;}
     break;
 
-  case 286:
-#line 2917 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 287:
+#line 2918 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -5650,7 +5659,7 @@
     }
 
 /* Line 1126 of yacc.c.  */
-#line 5654 "llvmAsmParser.tab.c"
+#line 5663 "llvmAsmParser.tab.c"
 
   yyvsp -= yylen;
   yyssp -= yylen;
@@ -5918,7 +5927,7 @@
 }
 
 
-#line 2934 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2935 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
 
 
 // common code from the two 'RunVMAsmParser' functions