[llvm-commits] CVS: llvm/lib/AsmParser/llvmAsmParser.cpp.cvs llvmAsmParser.h.cvs llvmAsmParser.y.cvs

Reid Spencer reid at x10sys.com
Tue Dec 5 15:29:56 PST 2006



Changes in directory llvm/lib/AsmParser:

llvmAsmParser.cpp.cvs updated: 1.33 -> 1.34
llvmAsmParser.h.cvs updated: 1.26 -> 1.27
llvmAsmParser.y.cvs updated: 1.34 -> 1.35
---
Log message:

Regenerate.


---
Diffs of the changes:  (+863 -1202)

 llvmAsmParser.cpp.cvs | 1897 ++++++++++++++++++++++----------------------------
 llvmAsmParser.h.cvs   |   10 
 llvmAsmParser.y.cvs   |  158 ----
 3 files changed, 863 insertions(+), 1202 deletions(-)


Index: llvm/lib/AsmParser/llvmAsmParser.cpp.cvs
diff -u llvm/lib/AsmParser/llvmAsmParser.cpp.cvs:1.33 llvm/lib/AsmParser/llvmAsmParser.cpp.cvs:1.34
--- llvm/lib/AsmParser/llvmAsmParser.cpp.cvs:1.33	Tue Dec  5 13:16:11 2006
+++ llvm/lib/AsmParser/llvmAsmParser.cpp.cvs	Tue Dec  5 17:29:42 2006
@@ -205,9 +205,7 @@
      VAARG = 396,
      EXTRACTELEMENT = 397,
      INSERTELEMENT = 398,
-     SHUFFLEVECTOR = 399,
-     VAARG_old = 400,
-     VANEXT_old = 401
+     SHUFFLEVECTOR = 399
    };
 #endif
 /* Tokens.  */
@@ -353,8 +351,6 @@
 #define EXTRACTELEMENT 397
 #define INSERTELEMENT 398
 #define SHUFFLEVECTOR 399
-#define VAARG_old 400
-#define VANEXT_old 401
 
 
 
@@ -414,9 +410,7 @@
 
 #define YYERROR_VERBOSE 1
 
-static bool ObsoleteVarArgs;
 static bool NewVarArgs;
-static BasicBlock *CurBB;
 static GlobalVariable *CurGV;
 
 
@@ -1161,7 +1155,6 @@
 static Module* RunParser(Module * M) {
 
   llvmAsmlineno = 1;      // Reset the current line number...
-  ObsoleteVarArgs = false;
   NewVarArgs = false;
   CurModule.CurrentModule = M;
 
@@ -1180,113 +1173,6 @@
   Module *Result = ParserResult;
   ParserResult = 0;
 
-  //Not all functions use vaarg, so make a second check for ObsoleteVarArgs
-  {
-    Function* F;
-    if ((F = Result->getNamedFunction("llvm.va_start"))
-        && F->getFunctionType()->getNumParams() == 0)
-      ObsoleteVarArgs = true;
-    if((F = Result->getNamedFunction("llvm.va_copy"))
-       && F->getFunctionType()->getNumParams() == 1)
-      ObsoleteVarArgs = true;
-  }
-
-  if (ObsoleteVarArgs && NewVarArgs) {
-    GenerateError(
-      "This file is corrupt: it uses both new and old style varargs");
-    return 0;
-  }
-
-  if(ObsoleteVarArgs) {
-    if(Function* F = Result->getNamedFunction("llvm.va_start")) {
-      if (F->arg_size() != 0) {
-        GenerateError("Obsolete va_start takes 0 argument!");
-        return 0;
-      }
-      
-      //foo = va_start()
-      // ->
-      //bar = alloca typeof(foo)
-      //va_start(bar)
-      //foo = load bar
-
-      const Type* RetTy = Type::getPrimitiveType(Type::VoidTyID);
-      const Type* ArgTy = F->getFunctionType()->getReturnType();
-      const Type* ArgTyPtr = PointerType::get(ArgTy);
-      Function* NF = Result->getOrInsertFunction("llvm.va_start", 
-                                                 RetTy, ArgTyPtr, (Type *)0);
-
-      while (!F->use_empty()) {
-        CallInst* CI = cast<CallInst>(F->use_back());
-        AllocaInst* bar = new AllocaInst(ArgTy, 0, "vastart.fix.1", CI);
-        new CallInst(NF, bar, "", CI);
-        Value* foo = new LoadInst(bar, "vastart.fix.2", CI);
-        CI->replaceAllUsesWith(foo);
-        CI->getParent()->getInstList().erase(CI);
-      }
-      Result->getFunctionList().erase(F);
-    }
-    
-    if(Function* F = Result->getNamedFunction("llvm.va_end")) {
-      if(F->arg_size() != 1) {
-        GenerateError("Obsolete va_end takes 1 argument!");
-        return 0;
-      }
-
-      //vaend foo
-      // ->
-      //bar = alloca 1 of typeof(foo)
-      //vaend bar
-      const Type* RetTy = Type::getPrimitiveType(Type::VoidTyID);
-      const Type* ArgTy = F->getFunctionType()->getParamType(0);
-      const Type* ArgTyPtr = PointerType::get(ArgTy);
-      Function* NF = Result->getOrInsertFunction("llvm.va_end", 
-                                                 RetTy, ArgTyPtr, (Type *)0);
-
-      while (!F->use_empty()) {
-        CallInst* CI = cast<CallInst>(F->use_back());
-        AllocaInst* bar = new AllocaInst(ArgTy, 0, "vaend.fix.1", CI);
-        new StoreInst(CI->getOperand(1), bar, CI);
-        new CallInst(NF, bar, "", CI);
-        CI->getParent()->getInstList().erase(CI);
-      }
-      Result->getFunctionList().erase(F);
-    }
-
-    if(Function* F = Result->getNamedFunction("llvm.va_copy")) {
-      if(F->arg_size() != 1) {
-        GenerateError("Obsolete va_copy takes 1 argument!");
-        return 0;
-      }
-      //foo = vacopy(bar)
-      // ->
-      //a = alloca 1 of typeof(foo)
-      //b = alloca 1 of typeof(foo)
-      //store bar -> b
-      //vacopy(a, b)
-      //foo = load a
-      
-      const Type* RetTy = Type::getPrimitiveType(Type::VoidTyID);
-      const Type* ArgTy = F->getFunctionType()->getReturnType();
-      const Type* ArgTyPtr = PointerType::get(ArgTy);
-      Function* NF = Result->getOrInsertFunction("llvm.va_copy", 
-                                                 RetTy, ArgTyPtr, ArgTyPtr,
-                                                 (Type *)0);
-
-      while (!F->use_empty()) {
-        CallInst* CI = cast<CallInst>(F->use_back());
-        AllocaInst* a = new AllocaInst(ArgTy, 0, "vacopy.fix.1", CI);
-        AllocaInst* b = new AllocaInst(ArgTy, 0, "vacopy.fix.2", CI);
-        new StoreInst(CI->getOperand(1), b, CI);
-        new CallInst(NF, a, b, "", CI);
-        Value* foo = new LoadInst(a, "vacopy.fix.3", CI);
-        CI->replaceAllUsesWith(foo);
-        CI->getParent()->getInstList().erase(CI);
-      }
-      Result->getFunctionList().erase(F);
-    }
-  }
-
   return Result;
 }
 
@@ -1333,7 +1219,7 @@
 #endif
 
 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 967 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 857 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
 typedef union YYSTYPE {
   llvm::Module                           *ModuleVal;
   llvm::Function                         *FunctionVal;
@@ -1377,7 +1263,7 @@
   llvm::FCmpInst::Predicate         FPredicate;
 } YYSTYPE;
 /* Line 196 of yacc.c.  */
-#line 1381 "llvmAsmParser.tab.c"
+#line 1267 "llvmAsmParser.tab.c"
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 # define YYSTYPE_IS_TRIVIAL 1
@@ -1389,7 +1275,7 @@
 
 
 /* Line 219 of yacc.c.  */
-#line 1393 "llvmAsmParser.tab.c"
+#line 1279 "llvmAsmParser.tab.c"
 
 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
 # define YYSIZE_T __SIZE_TYPE__
@@ -1540,20 +1426,20 @@
 /* YYFINAL -- State number of the termination state. */
 #define YYFINAL  4
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   1556
+#define YYLAST   1509
 
 /* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS  161
+#define YYNTOKENS  159
 /* YYNNTS -- Number of nonterminals. */
 #define YYNNTS  78
 /* YYNRULES -- Number of rules. */
-#define YYNRULES  299
+#define YYNRULES  297
 /* YYNRULES -- Number of states. */
-#define YYNSTATES  586
+#define YYNSTATES  578
 
 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
 #define YYUNDEFTOK  2
-#define YYMAXUTOK   401
+#define YYMAXUTOK   399
 
 #define YYTRANSLATE(YYX)						\
   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -1565,15 +1451,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,
-     150,   151,   159,     2,   148,     2,     2,     2,     2,     2,
+     148,   149,   157,     2,   146,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     155,   147,   156,     2,     2,     2,     2,     2,     2,     2,
+     153,   145,   154,     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,   152,   149,   154,     2,     2,     2,     2,     2,   160,
+       2,   150,   147,   152,     2,     2,     2,     2,     2,   158,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     153,     2,     2,   157,     2,   158,     2,     2,     2,     2,
+     151,     2,     2,   155,     2,   156,     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,
@@ -1600,8 +1486,7 @@
      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
-     135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
-     145,   146
+     135,   136,   137,   138,   139,   140,   141,   142,   143,   144
 };
 
 #if YYDEBUG
@@ -1637,14 +1522,14 @@
      686,   689,   692,   696,   706,   716,   725,   739,   741,   743,
      750,   756,   759,   766,   774,   776,   780,   782,   783,   786,
      788,   794,   800,   806,   813,   820,   823,   828,   833,   840,
-     845,   850,   855,   860,   867,   874,   877,   885,   887,   890,
-     891,   893,   894,   898,   905,   909,   916,   919,   924,   931
+     845,   850,   857,   864,   867,   875,   877,   880,   881,   883,
+     884,   888,   895,   899,   906,   909,   914,   921
 };
 
 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
 static const short int yyrhs[] =
 {
-     195,     0,    -1,     5,    -1,     6,    -1,     3,    -1,     4,
+     193,     0,    -1,     5,    -1,     6,    -1,     3,    -1,     4,
       -1,    78,    -1,    79,    -1,    80,    -1,    81,    -1,    82,
       -1,    83,    -1,    84,    -1,    85,    -1,    86,    -1,    87,
       -1,    88,    -1,    89,    -1,    90,    -1,    91,    -1,    92,
@@ -1658,121 +1543,120 @@
       -1,   115,    -1,   116,    -1,   117,    -1,   104,    -1,   105,
       -1,   106,    -1,   107,    -1,    27,    -1,    28,    -1,    16,
       -1,    14,    -1,    12,    -1,    10,    -1,    17,    -1,    15,
-      -1,    13,    -1,    11,    -1,   171,    -1,   172,    -1,    18,
-      -1,    19,    -1,   207,   147,    -1,    -1,    41,    -1,    42,
+      -1,    13,    -1,    11,    -1,   169,    -1,   170,    -1,    18,
+      -1,    19,    -1,   205,   145,    -1,    -1,    41,    -1,    42,
       -1,    43,    -1,    44,    -1,    45,    -1,    46,    -1,    47,
       -1,    -1,    -1,    65,    -1,    66,    -1,    67,    -1,    68,
       -1,    69,    -1,    70,    -1,    64,     4,    -1,    -1,    57,
-       4,    -1,    -1,   148,    57,     4,    -1,    34,    24,    -1,
-      -1,   180,    -1,    -1,   148,   183,   182,    -1,   180,    -1,
-      57,     4,    -1,   186,    -1,     8,    -1,   188,    -1,     8,
-      -1,   188,    -1,     9,    -1,    10,    -1,    11,    -1,    12,
+       4,    -1,    -1,   146,    57,     4,    -1,    34,    24,    -1,
+      -1,   178,    -1,    -1,   146,   181,   180,    -1,   178,    -1,
+      57,     4,    -1,   184,    -1,     8,    -1,   186,    -1,     8,
+      -1,   186,    -1,     9,    -1,    10,    -1,    11,    -1,    12,
       -1,    13,    -1,    14,    -1,    15,    -1,    16,    -1,    17,
       -1,    18,    -1,    19,    -1,    20,    -1,    21,    -1,    48,
-      -1,   187,    -1,   222,    -1,   149,     4,    -1,   185,   150,
-     190,   151,    -1,   152,     4,   153,   188,   154,    -1,   155,
-       4,   153,   188,   156,    -1,   157,   189,   158,    -1,   157,
-     158,    -1,   188,   159,    -1,   188,    -1,   189,   148,   188,
-      -1,   189,    -1,   189,   148,    37,    -1,    37,    -1,    -1,
-     186,   152,   193,   154,    -1,   186,   152,   154,    -1,   186,
-     160,    24,    -1,   186,   155,   193,   156,    -1,   186,   157,
-     193,   158,    -1,   186,   157,   158,    -1,   186,    38,    -1,
-     186,    39,    -1,   186,   222,    -1,   186,   192,    -1,   186,
-      26,    -1,   171,   163,    -1,   172,     4,    -1,     9,    27,
-      -1,     9,    28,    -1,   174,     7,    -1,   167,   150,   191,
-      36,   186,   151,    -1,   123,   150,   191,   236,   151,    -1,
-     137,   150,   191,   148,   191,   148,   191,   151,    -1,   164,
-     150,   191,   148,   191,   151,    -1,   165,   150,   191,   148,
-     191,   151,    -1,   166,   150,   191,   148,   191,   151,    -1,
-      96,   169,   150,   191,   148,   191,   151,    -1,    97,   170,
-     150,   191,   148,   191,   151,    -1,   168,   150,   191,   148,
-     191,   151,    -1,   142,   150,   191,   148,   191,   151,    -1,
-     143,   150,   191,   148,   191,   148,   191,   151,    -1,   144,
-     150,   191,   148,   191,   148,   191,   151,    -1,   193,   148,
-     191,    -1,   191,    -1,    32,    -1,    33,    -1,   196,    -1,
-     196,   216,    -1,   196,   218,    -1,   196,    62,    61,   202,
-      -1,   196,    25,    -1,   197,    -1,   197,   175,    20,   184,
-      -1,   197,   218,    -1,   197,    62,    61,   202,    -1,    -1,
-     197,   175,   176,   194,   191,   198,   182,    -1,    -1,   197,
-     175,    50,   194,   186,   199,   182,    -1,    -1,   197,   175,
-      45,   194,   186,   200,   182,    -1,    -1,   197,   175,    47,
-     194,   186,   201,   182,    -1,   197,    51,   204,    -1,   197,
-      58,   147,   205,    -1,    -1,    24,    -1,    56,    -1,    55,
-      -1,    53,   147,   203,    -1,    54,   147,     4,    -1,    52,
-     147,    24,    -1,    71,   147,    24,    -1,   152,   206,   154,
-      -1,   206,   148,    24,    -1,    24,    -1,    -1,    22,    -1,
-      24,    -1,   207,    -1,    -1,   186,   208,    -1,   210,   148,
-     209,    -1,   209,    -1,   210,    -1,   210,   148,    37,    -1,
-      37,    -1,    -1,   177,   184,   207,   150,   211,   151,   181,
-     178,    -1,    29,    -1,   157,    -1,   176,   212,   213,    -1,
-      30,    -1,   158,    -1,   225,   215,    -1,    -1,    45,    -1,
-      47,    -1,    -1,    31,   219,   217,   212,    -1,    -1,    63,
+      -1,   185,    -1,   220,    -1,   147,     4,    -1,   183,   148,
+     188,   149,    -1,   150,     4,   151,   186,   152,    -1,   153,
+       4,   151,   186,   154,    -1,   155,   187,   156,    -1,   155,
+     156,    -1,   186,   157,    -1,   186,    -1,   187,   146,   186,
+      -1,   187,    -1,   187,   146,    37,    -1,    37,    -1,    -1,
+     184,   150,   191,   152,    -1,   184,   150,   152,    -1,   184,
+     158,    24,    -1,   184,   153,   191,   154,    -1,   184,   155,
+     191,   156,    -1,   184,   155,   156,    -1,   184,    38,    -1,
+     184,    39,    -1,   184,   220,    -1,   184,   190,    -1,   184,
+      26,    -1,   169,   161,    -1,   170,     4,    -1,     9,    27,
+      -1,     9,    28,    -1,   172,     7,    -1,   165,   148,   189,
+      36,   184,   149,    -1,   123,   148,   189,   234,   149,    -1,
+     137,   148,   189,   146,   189,   146,   189,   149,    -1,   162,
+     148,   189,   146,   189,   149,    -1,   163,   148,   189,   146,
+     189,   149,    -1,   164,   148,   189,   146,   189,   149,    -1,
+      96,   167,   148,   189,   146,   189,   149,    -1,    97,   168,
+     148,   189,   146,   189,   149,    -1,   166,   148,   189,   146,
+     189,   149,    -1,   142,   148,   189,   146,   189,   149,    -1,
+     143,   148,   189,   146,   189,   146,   189,   149,    -1,   144,
+     148,   189,   146,   189,   146,   189,   149,    -1,   191,   146,
+     189,    -1,   189,    -1,    32,    -1,    33,    -1,   194,    -1,
+     194,   214,    -1,   194,   216,    -1,   194,    62,    61,   200,
+      -1,   194,    25,    -1,   195,    -1,   195,   173,    20,   182,
+      -1,   195,   216,    -1,   195,    62,    61,   200,    -1,    -1,
+     195,   173,   174,   192,   189,   196,   180,    -1,    -1,   195,
+     173,    50,   192,   184,   197,   180,    -1,    -1,   195,   173,
+      45,   192,   184,   198,   180,    -1,    -1,   195,   173,    47,
+     192,   184,   199,   180,    -1,   195,    51,   202,    -1,   195,
+      58,   145,   203,    -1,    -1,    24,    -1,    56,    -1,    55,
+      -1,    53,   145,   201,    -1,    54,   145,     4,    -1,    52,
+     145,    24,    -1,    71,   145,    24,    -1,   150,   204,   152,
+      -1,   204,   146,    24,    -1,    24,    -1,    -1,    22,    -1,
+      24,    -1,   205,    -1,    -1,   184,   206,    -1,   208,   146,
+     207,    -1,   207,    -1,   208,    -1,   208,   146,    37,    -1,
+      37,    -1,    -1,   175,   182,   205,   148,   209,   149,   179,
+     176,    -1,    29,    -1,   155,    -1,   174,   210,   211,    -1,
+      30,    -1,   156,    -1,   223,   213,    -1,    -1,    45,    -1,
+      47,    -1,    -1,    31,   217,   215,   210,    -1,    -1,    63,
       -1,     3,    -1,     4,    -1,     7,    -1,    27,    -1,    28,
-      -1,    38,    -1,    39,    -1,    26,    -1,   155,   193,   156,
-      -1,   192,    -1,    61,   220,    24,   148,    24,    -1,   162,
-      -1,   207,    -1,   222,    -1,   221,    -1,   186,   223,    -1,
-     225,   226,    -1,   214,   226,    -1,   227,   175,   228,    -1,
-     227,   230,    -1,    -1,    23,    -1,    72,   224,    -1,    72,
-       8,    -1,    73,    21,   223,    -1,    73,     9,   223,   148,
-      21,   223,   148,    21,   223,    -1,    74,   173,   223,   148,
-      21,   223,   152,   229,   154,    -1,    74,   173,   223,   148,
-      21,   223,   152,   154,    -1,    75,   177,   184,   223,   150,
-     233,   151,    36,    21,   223,    76,    21,   223,    -1,    76,
-      -1,    77,    -1,   229,   173,   221,   148,    21,   223,    -1,
-     173,   221,   148,    21,   223,    -1,   175,   235,    -1,   186,
-     152,   223,   148,   223,   154,    -1,   231,   148,   152,   223,
-     148,   223,   154,    -1,   224,    -1,   232,   148,   224,    -1,
-     232,    -1,    -1,    60,    59,    -1,    59,    -1,   164,   186,
-     223,   148,   223,    -1,   165,   186,   223,   148,   223,    -1,
-     166,   186,   223,   148,   223,    -1,    96,   169,   186,   223,
-     148,   223,    -1,    97,   170,   186,   223,   148,   223,    -1,
-      49,   224,    -1,   168,   224,   148,   224,    -1,   167,   224,
-      36,   186,    -1,   137,   224,   148,   224,   148,   224,    -1,
-     141,   224,   148,   186,    -1,   145,   224,   148,   186,    -1,
-     146,   224,   148,   186,    -1,   142,   224,   148,   224,    -1,
-     143,   224,   148,   224,   148,   224,    -1,   144,   224,   148,
-     224,   148,   224,    -1,   136,   231,    -1,   234,   177,   184,
-     223,   150,   233,   151,    -1,   238,    -1,   148,   232,    -1,
-      -1,    35,    -1,    -1,   118,   186,   179,    -1,   118,   186,
-     148,    15,   223,   179,    -1,   119,   186,   179,    -1,   119,
-     186,   148,    15,   223,   179,    -1,   120,   224,    -1,   237,
-     121,   186,   223,    -1,   237,   122,   224,   148,   186,   223,
-      -1,   123,   186,   223,   236,    -1
+      -1,    38,    -1,    39,    -1,    26,    -1,   153,   191,   154,
+      -1,   190,    -1,    61,   218,    24,   146,    24,    -1,   160,
+      -1,   205,    -1,   220,    -1,   219,    -1,   184,   221,    -1,
+     223,   224,    -1,   212,   224,    -1,   225,   173,   226,    -1,
+     225,   228,    -1,    -1,    23,    -1,    72,   222,    -1,    72,
+       8,    -1,    73,    21,   221,    -1,    73,     9,   221,   146,
+      21,   221,   146,    21,   221,    -1,    74,   171,   221,   146,
+      21,   221,   150,   227,   152,    -1,    74,   171,   221,   146,
+      21,   221,   150,   152,    -1,    75,   175,   182,   221,   148,
+     231,   149,    36,    21,   221,    76,    21,   221,    -1,    76,
+      -1,    77,    -1,   227,   171,   219,   146,    21,   221,    -1,
+     171,   219,   146,    21,   221,    -1,   173,   233,    -1,   184,
+     150,   221,   146,   221,   152,    -1,   229,   146,   150,   221,
+     146,   221,   152,    -1,   222,    -1,   230,   146,   222,    -1,
+     230,    -1,    -1,    60,    59,    -1,    59,    -1,   162,   184,
+     221,   146,   221,    -1,   163,   184,   221,   146,   221,    -1,
+     164,   184,   221,   146,   221,    -1,    96,   167,   184,   221,
+     146,   221,    -1,    97,   168,   184,   221,   146,   221,    -1,
+      49,   222,    -1,   166,   222,   146,   222,    -1,   165,   222,
+      36,   184,    -1,   137,   222,   146,   222,   146,   222,    -1,
+     141,   222,   146,   184,    -1,   142,   222,   146,   222,    -1,
+     143,   222,   146,   222,   146,   222,    -1,   144,   222,   146,
+     222,   146,   222,    -1,   136,   229,    -1,   232,   175,   182,
+     221,   148,   231,   149,    -1,   236,    -1,   146,   230,    -1,
+      -1,    35,    -1,    -1,   118,   184,   177,    -1,   118,   184,
+     146,    15,   221,   177,    -1,   119,   184,   177,    -1,   119,
+     184,   146,    15,   221,   177,    -1,   120,   222,    -1,   235,
+     121,   184,   221,    -1,   235,   122,   222,   146,   184,   221,
+      -1,   123,   184,   221,   234,    -1
 };
 
 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
 static const unsigned short int yyrline[] =
 {
-       0,  1103,  1103,  1104,  1112,  1113,  1123,  1123,  1123,  1123,
-    1123,  1123,  1123,  1123,  1123,  1124,  1124,  1124,  1125,  1125,
-    1125,  1125,  1125,  1125,  1126,  1126,  1126,  1126,  1126,  1126,
-    1127,  1127,  1127,  1127,  1127,  1127,  1128,  1128,  1128,  1130,
-    1130,  1131,  1131,  1132,  1132,  1133,  1133,  1134,  1134,  1138,
-    1138,  1139,  1139,  1140,  1140,  1141,  1141,  1142,  1142,  1143,
-    1143,  1144,  1144,  1145,  1146,  1151,  1151,  1151,  1151,  1152,
-    1152,  1152,  1152,  1153,  1153,  1154,  1154,  1157,  1161,  1166,
-    1167,  1168,  1169,  1170,  1171,  1172,  1173,  1175,  1176,  1177,
-    1178,  1179,  1180,  1181,  1182,  1191,  1192,  1198,  1199,  1207,
-    1215,  1216,  1221,  1222,  1223,  1228,  1242,  1242,  1243,  1243,
-    1245,  1255,  1255,  1255,  1255,  1255,  1255,  1255,  1256,  1256,
-    1256,  1256,  1256,  1256,  1257,  1261,  1265,  1273,  1281,  1294,
-    1299,  1311,  1321,  1325,  1336,  1341,  1347,  1348,  1352,  1356,
-    1367,  1393,  1407,  1437,  1463,  1484,  1497,  1507,  1512,  1573,
-    1580,  1588,  1594,  1600,  1604,  1608,  1616,  1628,  1649,  1657,
-    1663,  1674,  1680,  1685,  1690,  1699,  1705,  1711,  1720,  1724,
-    1732,  1732,  1742,  1750,  1755,  1759,  1763,  1767,  1782,  1804,
-    1807,  1810,  1810,  1818,  1818,  1826,  1826,  1834,  1834,  1843,
-    1846,  1849,  1853,  1866,  1867,  1869,  1873,  1882,  1886,  1891,
-    1893,  1898,  1903,  1912,  1912,  1913,  1913,  1915,  1922,  1928,
-    1935,  1939,  1945,  1950,  1955,  2050,  2050,  2052,  2060,  2060,
-    2062,  2067,  2068,  2069,  2071,  2071,  2081,  2085,  2090,  2094,
-    2098,  2102,  2106,  2110,  2114,  2118,  2122,  2147,  2151,  2165,
-    2169,  2175,  2175,  2181,  2186,  2190,  2199,  2210,  2219,  2231,
-    2244,  2248,  2252,  2257,  2266,  2285,  2294,  2350,  2354,  2361,
-    2372,  2385,  2394,  2403,  2413,  2417,  2424,  2424,  2426,  2430,
-    2435,  2454,  2469,  2483,  2494,  2505,  2518,  2527,  2538,  2546,
-    2552,  2572,  2595,  2601,  2607,  2613,  2628,  2687,  2694,  2697,
-    2702,  2706,  2713,  2718,  2724,  2729,  2735,  2743,  2755,  2770
+       0,   992,   992,   993,  1001,  1002,  1012,  1012,  1012,  1012,
+    1012,  1012,  1012,  1012,  1012,  1013,  1013,  1013,  1014,  1014,
+    1014,  1014,  1014,  1014,  1015,  1015,  1015,  1015,  1015,  1015,
+    1016,  1016,  1016,  1016,  1016,  1016,  1017,  1017,  1017,  1019,
+    1019,  1020,  1020,  1021,  1021,  1022,  1022,  1023,  1023,  1027,
+    1027,  1028,  1028,  1029,  1029,  1030,  1030,  1031,  1031,  1032,
+    1032,  1033,  1033,  1034,  1035,  1040,  1040,  1040,  1040,  1041,
+    1041,  1041,  1041,  1042,  1042,  1043,  1043,  1046,  1050,  1055,
+    1056,  1057,  1058,  1059,  1060,  1061,  1062,  1064,  1065,  1066,
+    1067,  1068,  1069,  1070,  1071,  1080,  1081,  1087,  1088,  1096,
+    1104,  1105,  1110,  1111,  1112,  1117,  1131,  1131,  1132,  1132,
+    1134,  1144,  1144,  1144,  1144,  1144,  1144,  1144,  1145,  1145,
+    1145,  1145,  1145,  1145,  1146,  1150,  1154,  1162,  1170,  1183,
+    1188,  1200,  1210,  1214,  1225,  1230,  1236,  1237,  1241,  1245,
+    1256,  1282,  1296,  1326,  1352,  1373,  1386,  1396,  1401,  1462,
+    1469,  1477,  1483,  1489,  1493,  1497,  1505,  1517,  1538,  1546,
+    1552,  1563,  1569,  1574,  1579,  1588,  1594,  1600,  1609,  1613,
+    1621,  1621,  1631,  1639,  1644,  1648,  1652,  1656,  1671,  1693,
+    1696,  1699,  1699,  1707,  1707,  1715,  1715,  1723,  1723,  1732,
+    1735,  1738,  1742,  1755,  1756,  1758,  1762,  1771,  1775,  1780,
+    1782,  1787,  1792,  1801,  1801,  1802,  1802,  1804,  1811,  1817,
+    1824,  1828,  1834,  1839,  1844,  1939,  1939,  1941,  1949,  1949,
+    1951,  1956,  1957,  1958,  1960,  1960,  1970,  1974,  1979,  1983,
+    1987,  1991,  1995,  1999,  2003,  2007,  2011,  2036,  2040,  2054,
+    2058,  2064,  2064,  2070,  2075,  2079,  2088,  2099,  2108,  2120,
+    2133,  2137,  2141,  2146,  2155,  2174,  2183,  2239,  2243,  2250,
+    2261,  2274,  2283,  2292,  2302,  2306,  2313,  2313,  2315,  2319,
+    2324,  2343,  2358,  2372,  2383,  2394,  2407,  2416,  2427,  2435,
+    2441,  2447,  2453,  2459,  2474,  2533,  2540,  2543,  2548,  2552,
+    2559,  2564,  2570,  2575,  2581,  2589,  2601,  2616
 };
 #endif
 
@@ -1802,24 +1686,24 @@
   "TRUNC", "ZEXT", "SEXT", "FPTRUNC", "FPEXT", "BITCAST", "UITOFP",
   "SITOFP", "FPTOUI", "FPTOSI", "INTTOPTR", "PTRTOINT", "PHI_TOK",
   "SELECT", "SHL", "LSHR", "ASHR", "VAARG", "EXTRACTELEMENT",
-  "INSERTELEMENT", "SHUFFLEVECTOR", "VAARG_old", "VANEXT_old", "'='",
-  "','", "'\\\\'", "'('", "')'", "'['", "'x'", "']'", "'<'", "'>'", "'{'",
-  "'}'", "'*'", "'c'", "$accept", "INTVAL", "EINT64VAL", "ArithmeticOps",
-  "LogicalOps", "SetCondOps", "CastOps", "ShiftOps", "IPredicates",
-  "FPredicates", "SIntType", "UIntType", "IntType", "FPType", "OptAssign",
-  "OptLinkage", "OptCallingConv", "OptAlign", "OptCAlign", "SectionString",
-  "OptSection", "GlobalVarAttributes", "GlobalVarAttribute", "TypesV",
-  "UpRTypesV", "Types", "PrimType", "UpRTypes", "TypeListI",
-  "ArgTypeListI", "ConstVal", "ConstExpr", "ConstVector", "GlobalType",
-  "Module", "FunctionList", "ConstPool", "@1", "@2", "@3", "@4",
-  "AsmBlock", "BigOrLittle", "TargetDefinition", "LibrariesDefinition",
-  "LibList", "Name", "OptName", "ArgVal", "ArgListH", "ArgList",
-  "FunctionHeaderH", "BEGIN", "FunctionHeader", "END", "Function",
-  "FnDeclareLinkage", "FunctionProto", "@5", "OptSideEffect",
-  "ConstValueRef", "SymbolicValueRef", "ValueRef", "ResolvedVal",
-  "BasicBlockList", "BasicBlock", "InstructionList", "BBTerminatorInst",
-  "JumpTable", "Inst", "PHIList", "ValueRefList", "ValueRefListE",
-  "OptTailCall", "InstVal", "IndexList", "OptVolatile", "MemoryInst", 0
+  "INSERTELEMENT", "SHUFFLEVECTOR", "'='", "','", "'\\\\'", "'('", "')'",
+  "'['", "'x'", "']'", "'<'", "'>'", "'{'", "'}'", "'*'", "'c'", "$accept",
+  "INTVAL", "EINT64VAL", "ArithmeticOps", "LogicalOps", "SetCondOps",
+  "CastOps", "ShiftOps", "IPredicates", "FPredicates", "SIntType",
+  "UIntType", "IntType", "FPType", "OptAssign", "OptLinkage",
+  "OptCallingConv", "OptAlign", "OptCAlign", "SectionString", "OptSection",
+  "GlobalVarAttributes", "GlobalVarAttribute", "TypesV", "UpRTypesV",
+  "Types", "PrimType", "UpRTypes", "TypeListI", "ArgTypeListI", "ConstVal",
+  "ConstExpr", "ConstVector", "GlobalType", "Module", "FunctionList",
+  "ConstPool", "@1", "@2", "@3", "@4", "AsmBlock", "BigOrLittle",
+  "TargetDefinition", "LibrariesDefinition", "LibList", "Name", "OptName",
+  "ArgVal", "ArgListH", "ArgList", "FunctionHeaderH", "BEGIN",
+  "FunctionHeader", "END", "Function", "FnDeclareLinkage", "FunctionProto",
+  "@5", "OptSideEffect", "ConstValueRef", "SymbolicValueRef", "ValueRef",
+  "ResolvedVal", "BasicBlockList", "BasicBlock", "InstructionList",
+  "BBTerminatorInst", "JumpTable", "Inst", "PHIList", "ValueRefList",
+  "ValueRefListE", "OptTailCall", "InstVal", "IndexList", "OptVolatile",
+  "MemoryInst", 0
 };
 #endif
 
@@ -1842,45 +1726,44 @@
      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
-     395,   396,   397,   398,   399,   400,   401,    61,    44,    92,
-      40,    41,    91,   120,    93,    60,    62,   123,   125,    42,
-      99
+     395,   396,   397,   398,   399,    61,    44,    92,    40,    41,
+      91,   120,    93,    60,    62,   123,   125,    42,    99
 };
 # endif
 
 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
 static const unsigned char yyr1[] =
 {
-       0,   161,   162,   162,   163,   163,   164,   164,   164,   164,
-     164,   164,   164,   164,   164,   165,   165,   165,   166,   166,
-     166,   166,   166,   166,   167,   167,   167,   167,   167,   167,
-     167,   167,   167,   167,   167,   167,   168,   168,   168,   169,
-     169,   169,   169,   169,   169,   169,   169,   169,   169,   170,
-     170,   170,   170,   170,   170,   170,   170,   170,   170,   170,
-     170,   170,   170,   170,   170,   171,   171,   171,   171,   172,
-     172,   172,   172,   173,   173,   174,   174,   175,   175,   176,
-     176,   176,   176,   176,   176,   176,   176,   177,   177,   177,
-     177,   177,   177,   177,   177,   178,   178,   179,   179,   180,
-     181,   181,   182,   182,   183,   183,   184,   184,   185,   185,
-     186,   187,   187,   187,   187,   187,   187,   187,   187,   187,
-     187,   187,   187,   187,   188,   188,   188,   188,   188,   188,
-     188,   188,   188,   188,   189,   189,   190,   190,   190,   190,
-     191,   191,   191,   191,   191,   191,   191,   191,   191,   191,
-     191,   191,   191,   191,   191,   191,   192,   192,   192,   192,
-     192,   192,   192,   192,   192,   192,   192,   192,   193,   193,
-     194,   194,   195,   196,   196,   196,   196,   196,   197,   197,
-     197,   198,   197,   199,   197,   200,   197,   201,   197,   197,
-     197,   197,   202,   203,   203,   204,   204,   204,   204,   205,
-     206,   206,   206,   207,   207,   208,   208,   209,   210,   210,
-     211,   211,   211,   211,   212,   213,   213,   214,   215,   215,
-     216,   217,   217,   217,   219,   218,   220,   220,   221,   221,
-     221,   221,   221,   221,   221,   221,   221,   221,   221,   222,
-     222,   223,   223,   224,   225,   225,   226,   227,   227,   227,
-     228,   228,   228,   228,   228,   228,   228,   228,   228,   229,
-     229,   230,   231,   231,   232,   232,   233,   233,   234,   234,
-     235,   235,   235,   235,   235,   235,   235,   235,   235,   235,
-     235,   235,   235,   235,   235,   235,   235,   235,   236,   236,
-     237,   237,   238,   238,   238,   238,   238,   238,   238,   238
+       0,   159,   160,   160,   161,   161,   162,   162,   162,   162,
+     162,   162,   162,   162,   162,   163,   163,   163,   164,   164,
+     164,   164,   164,   164,   165,   165,   165,   165,   165,   165,
+     165,   165,   165,   165,   165,   165,   166,   166,   166,   167,
+     167,   167,   167,   167,   167,   167,   167,   167,   167,   168,
+     168,   168,   168,   168,   168,   168,   168,   168,   168,   168,
+     168,   168,   168,   168,   168,   169,   169,   169,   169,   170,
+     170,   170,   170,   171,   171,   172,   172,   173,   173,   174,
+     174,   174,   174,   174,   174,   174,   174,   175,   175,   175,
+     175,   175,   175,   175,   175,   176,   176,   177,   177,   178,
+     179,   179,   180,   180,   181,   181,   182,   182,   183,   183,
+     184,   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,   188,   188,
+     189,   189,   189,   189,   189,   189,   189,   189,   189,   189,
+     189,   189,   189,   189,   189,   189,   190,   190,   190,   190,
+     190,   190,   190,   190,   190,   190,   190,   190,   191,   191,
+     192,   192,   193,   194,   194,   194,   194,   194,   195,   195,
+     195,   196,   195,   197,   195,   198,   195,   199,   195,   195,
+     195,   195,   200,   201,   201,   202,   202,   202,   202,   203,
+     204,   204,   204,   205,   205,   206,   206,   207,   208,   208,
+     209,   209,   209,   209,   210,   211,   211,   212,   213,   213,
+     214,   215,   215,   215,   217,   216,   218,   218,   219,   219,
+     219,   219,   219,   219,   219,   219,   219,   219,   219,   220,
+     220,   221,   221,   222,   223,   223,   224,   225,   225,   225,
+     226,   226,   226,   226,   226,   226,   226,   226,   226,   227,
+     227,   228,   229,   229,   230,   230,   231,   231,   232,   232,
+     233,   233,   233,   233,   233,   233,   233,   233,   233,   233,
+     233,   233,   233,   233,   233,   233,   234,   234,   235,   235,
+     236,   236,   236,   236,   236,   236,   236,   236
 };
 
 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
@@ -1914,8 +1797,8 @@
        2,     2,     3,     9,     9,     8,    13,     1,     1,     6,
        5,     2,     6,     7,     1,     3,     1,     0,     2,     1,
        5,     5,     5,     6,     6,     2,     4,     4,     6,     4,
-       4,     4,     4,     6,     6,     2,     7,     1,     2,     0,
-       1,     0,     3,     6,     3,     6,     2,     4,     6,     4
+       4,     6,     6,     2,     7,     1,     2,     0,     1,     0,
+       3,     6,     3,     6,     2,     4,     6,     4
 };
 
 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@@ -1932,148 +1815,146 @@
      223,    87,   192,   175,    94,     2,     3,   107,   111,   112,
      113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
      123,   124,     0,     0,     0,     0,   239,     0,     0,   106,
-     125,   110,   240,   126,   215,   216,   217,   291,   247,     0,
+     125,   110,   240,   126,   215,   216,   217,   289,   247,     0,
        0,     0,     0,   202,   190,   180,   178,   170,   171,     0,
        0,     0,     0,   225,   127,     0,     0,   109,   132,   134,
-       0,     0,   139,   133,   290,     0,   269,     0,     0,     0,
+       0,     0,   139,   133,   288,     0,   269,     0,     0,     0,
        0,    87,   257,   258,     6,     7,     8,     9,    10,    11,
       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
       22,    23,     0,     0,     0,     0,     0,     0,    24,    25,
       26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
        0,     0,    36,    37,    38,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   246,    87,   261,     0,
-     287,   197,   194,   193,   195,   196,   198,   201,     0,   185,
-     187,   183,   111,   112,   113,   114,   115,   116,   117,   118,
-     119,   120,   121,     0,     0,     0,     0,   181,     0,     0,
-       0,   131,   213,   138,   136,     0,     0,   275,   268,   251,
-     250,     0,     0,    68,    72,    67,    71,    66,    70,    65,
-      69,    73,    74,     0,     0,    39,    40,    41,    42,    43,
-      44,    45,    46,    47,    48,     0,    63,    64,    59,    60,
-      61,    62,    49,    50,    51,    52,    53,    54,    55,    56,
-      57,    58,     0,    97,    97,   296,     0,     0,   285,     0,
+       0,     0,     0,     0,   246,    87,   261,     0,   285,   197,
+     194,   193,   195,   196,   198,   201,     0,   185,   187,   183,
+     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
+     121,     0,     0,     0,     0,   181,     0,     0,     0,   131,
+     213,   138,   136,     0,     0,   275,   268,   251,   250,     0,
+       0,    68,    72,    67,    71,    66,    70,    65,    69,    73,
+      74,     0,     0,    39,    40,    41,    42,    43,    44,    45,
+      46,    47,    48,     0,    63,    64,    59,    60,    61,    62,
+      49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
+       0,    97,    97,   294,     0,     0,   283,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   199,   102,   102,   102,   153,
-     154,     4,     5,   151,   152,   155,   150,   146,   147,     0,
+       0,   199,   102,   102,   102,   153,   154,     4,     5,   151,
+     152,   155,   150,   146,   147,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   149,   148,   102,   108,   108,
-     135,   212,   206,   209,   210,     0,     0,   128,   228,   229,
-     230,   235,   231,   232,   233,   234,   226,     0,   237,   242,
-     241,   243,     0,   252,     0,     0,     0,     0,     0,   292,
-       0,   294,   289,     0,     0,     0,     0,     0,     0,     0,
+       0,   149,   148,   102,   108,   108,   135,   212,   206,   209,
+     210,     0,     0,   128,   228,   229,   230,   235,   231,   232,
+     233,   234,   226,     0,   237,   242,   241,   243,     0,   252,
+       0,     0,     0,     0,     0,   290,     0,   292,   287,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     200,     0,   186,   188,   184,     0,     0,     0,     0,     0,
-       0,     0,   141,   169,     0,     0,   145,     0,   142,     0,
-       0,     0,     0,     0,   182,   129,   130,   205,   207,     0,
-     100,   137,   227,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   299,     0,     0,     0,   279,   282,
-       0,     0,   280,   281,     0,     0,     0,   277,   276,     0,
-     297,     0,     0,     0,   104,   102,     0,     0,   289,     0,
-       0,     0,     0,     0,   140,   143,   144,     0,     0,     0,
-       0,     0,   211,   208,   101,    95,     0,   236,     0,     0,
-     267,     0,     0,    97,    98,    97,   264,   288,     0,     0,
-       0,     0,     0,   270,   271,   272,   267,     0,    99,   105,
-     103,     0,     0,     0,     0,     0,     0,     0,   168,     0,
-       0,     0,     0,     0,     0,   214,     0,     0,     0,   266,
-       0,   273,   274,     0,   293,   295,     0,     0,     0,   278,
-     283,   284,     0,   298,     0,     0,   157,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    96,   238,     0,     0,
-       0,   265,   262,     0,   286,     0,     0,     0,   165,     0,
-       0,   159,   160,   161,   156,   164,     0,   255,     0,     0,
-       0,   263,   162,   163,     0,     0,     0,   253,     0,   254,
-       0,     0,   158,   166,   167,     0,     0,     0,     0,     0,
-       0,   260,     0,     0,   259,   256
+       0,     0,     0,     0,   200,     0,   186,   188,   184,     0,
+       0,     0,     0,     0,     0,     0,   141,   169,     0,     0,
+     145,     0,   142,     0,     0,     0,     0,     0,   182,   129,
+     130,   205,   207,     0,   100,   137,   227,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,   297,     0,
+       0,     0,   279,   280,     0,     0,     0,     0,     0,   277,
+     276,     0,   295,     0,     0,     0,   104,   102,     0,     0,
+     287,     0,     0,     0,     0,     0,   140,   143,   144,     0,
+       0,     0,     0,     0,   211,   208,   101,    95,     0,   236,
+       0,     0,   267,     0,     0,    97,    98,    97,   264,   286,
+       0,     0,     0,     0,     0,   270,   271,   272,   267,     0,
+      99,   105,   103,     0,     0,     0,     0,     0,     0,     0,
+     168,     0,     0,     0,     0,     0,     0,   214,     0,     0,
+       0,   266,     0,   273,   274,     0,   291,   293,     0,     0,
+       0,   278,   281,   282,     0,   296,     0,     0,   157,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,    96,   238,
+       0,     0,     0,   265,   262,     0,   284,     0,     0,     0,
+     165,     0,     0,   159,   160,   161,   156,   164,     0,   255,
+       0,     0,     0,   263,   162,   163,     0,     0,     0,   253,
+       0,   254,     0,     0,   158,   166,   167,     0,     0,     0,
+       0,     0,     0,   260,     0,     0,   259,   256
 };
 
 /* YYDEFGOTO[NTERM-NUM]. */
 static const short int yydefgoto[] =
 {
-      -1,    86,   303,   320,   321,   322,   323,   324,   255,   272,
-     213,   214,   243,   215,    25,    15,    37,   505,   359,   444,
-     465,   382,   445,    87,    88,   216,    90,    91,   120,   225,
-     393,   348,   394,   109,     1,     2,     3,   327,   298,   296,
-     297,    63,   194,    50,   104,   198,    92,   408,   333,   334,
-     335,    38,    96,    16,    44,    17,    61,    18,    28,   413,
-     349,    93,   351,   476,    19,    40,    41,   186,   559,    98,
-     278,   509,   510,   187,   188,   424,   189,   190
+      -1,    86,   299,   316,   317,   318,   319,   320,   253,   270,
+     211,   212,   241,   213,    25,    15,    37,   497,   355,   436,
+     457,   376,   437,    87,    88,   214,    90,    91,   120,   223,
+     387,   344,   388,   109,     1,     2,     3,   323,   294,   292,
+     293,    63,   192,    50,   104,   196,    92,   402,   329,   330,
+     331,    38,    96,    16,    44,    17,    61,    18,    28,   407,
+     345,    93,   347,   468,    19,    40,    41,   184,   551,    98,
+     276,   501,   502,   185,   186,   418,   187,   188
 };
 
 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    STATE-NUM.  */
-#define YYPACT_NINF -536
+#define YYPACT_NINF -517
 static const short int yypact[] =
 {
-    -536,    28,   149,   426,  -536,  -536,  -536,  -536,  -536,  -536,
-    -536,  -536,  -536,  -536,   -16,   158,    41,  -536,  -536,    -1,
-    -536,  -536,    14,   -67,    25,    80,   -31,  -536,    30,   130,
-     155,  -536,  -536,  -536,  -536,  -536,  -536,  1242,    -4,  -536,
-    -536,    65,  -536,  -536,  -536,  -536,    32,    36,    37,    39,
-    -536,    35,   130,  1242,    69,    69,    69,    69,  -536,  -536,
-    -536,   158,  -536,  -536,  -536,  -536,  -536,    38,  -536,  -536,
-    -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,
-    -536,  -536,   185,   193,   194,   659,  -536,    65,    50,  -536,
-    -536,  -113,  -536,  -536,  -536,  -536,  -536,  1410,  -536,   177,
-      59,   198,   179,   180,  -536,  -536,  -536,  -536,  -536,  1262,
-    1262,  1262,  1303,  -536,  -536,    52,    57,  -536,  -536,  -113,
-    -118,    62,  1047,  -536,  -536,  1262,  -536,   150,  1323,    15,
-     151,   158,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,
-    -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,
-    -536,  -536,   399,   210,  1262,  1262,  1262,  1262,  -536,  -536,
-    -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,
-    1262,  1262,  -536,  -536,  -536,  1262,  1262,  1262,  1262,  1262,
-    1262,  1262,  1262,  1262,  1262,  1262,  -536,   158,  -536,     7,
-    -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,   -85,  -536,
-    -536,  -536,   104,   152,   209,   167,   212,   172,   215,   174,
-     216,   207,   225,   178,   229,   227,   566,  -536,  1262,  1262,
-    1262,  -536,  1088,  -536,    91,    89,   757,  -536,  -536,    38,
-    -536,   757,   757,  -536,  -536,  -536,  -536,  -536,  -536,  -536,
-    -536,  -536,  -536,   757,  1242,  -536,  -536,  -536,  -536,  -536,
-    -536,  -536,  -536,  -536,  -536,  1262,  -536,  -536,  -536,  -536,
-    -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,
-    -536,  -536,  1262,    94,   100,  -536,   757,    97,   102,   103,
-     109,   110,   111,   112,   113,   114,   757,   757,   757,   232,
-     117,  1242,  1262,  1262,   245,  -536,   122,   122,   122,  -536,
-    -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,  -536,   399,
-     210,   121,   124,   125,   126,   127,   992,  1303,   719,   248,
-     128,   129,   131,   133,   134,  -536,  -536,   122,  -111,   -80,
-    -113,  -536,    65,  -536,   132,   135,  1145,  -536,  -536,  -536,
-    -536,  -536,  -536,  -536,  -536,  -536,   222,  1303,  -536,  -536,
-    -536,  -536,   139,  -536,   140,   757,   757,   757,     0,  -536,
-       2,  -536,   141,   757,   138,  1262,  1262,  1262,  1262,  1262,
-    1262,  1262,   153,   154,   156,  1262,  1262,   757,   757,   162,
-    -536,   -24,  -536,  -536,  -536,   148,   161,  1303,  1303,  1303,
-    1303,  1303,  -536,  -536,   -70,   -98,  -536,  -117,  -536,  1303,
-    1303,  1303,  1303,  1303,  -536,  -536,  -536,  -536,  -536,  1201,
-     265,  -536,  -536,   276,   -86,   291,   316,   190,   195,   196,
-     757,   337,   757,  1262,  -536,   197,   757,   201,  -536,  -536,
-     202,   206,  -536,  -536,   757,   757,   757,  -536,  -536,   192,
-    -536,  1262,   331,   356,  -536,   122,  1303,  1303,   141,   213,
-     214,   217,   219,  1303,  -536,  -536,  -536,   220,   221,   223,
-     327,   226,  -536,  -536,  -536,   307,   228,  -536,   757,   757,
-    1262,   757,   757,   231,  -536,   231,  -536,   233,   757,   234,
-    1262,  1262,  1262,  -536,  -536,  -536,  1262,   757,  -536,  -536,
-    -536,   235,   236,   224,  1303,  1303,  1303,  1303,  -536,  1303,
-    1303,  1303,  1262,  1303,   366,  -536,   361,   239,   237,   233,
-     240,  -536,  -536,   323,  -536,  -536,  1262,   241,   757,  -536,
-    -536,  -536,   242,  -536,  1303,  1303,  -536,   246,   247,   249,
-     251,   257,   259,   260,   262,   267,  -536,  -536,   367,    82,
-     354,  -536,  -536,   266,  -536,   268,   270,  1303,  -536,  1303,
-    1303,  -536,  -536,  -536,  -536,  -536,   757,  -536,   899,    93,
-     375,  -536,  -536,  -536,   271,   273,   274,  -536,   278,  -536,
-     899,   757,  -536,  -536,  -536,   406,   280,   353,   757,   414,
-     415,  -536,   757,   757,  -536,  -536
+    -517,    40,    69,   528,  -517,  -517,  -517,  -517,  -517,  -517,
+    -517,  -517,  -517,  -517,    16,    90,    76,  -517,  -517,     5,
+    -517,  -517,    50,   -40,    71,    37,   -15,  -517,    -4,   124,
+     164,  -517,  -517,  -517,  -517,  -517,  -517,  1244,   -18,  -517,
+    -517,   125,  -517,  -517,  -517,  -517,    45,    53,    54,    59,
+    -517,    67,   124,  1244,   103,   103,   103,   103,  -517,  -517,
+    -517,    90,  -517,  -517,  -517,  -517,  -517,    70,  -517,  -517,
+    -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,
+    -517,  -517,   197,   215,   216,   670,  -517,   125,    73,  -517,
+    -517,   -62,  -517,  -517,  -517,  -517,  -517,  1349,  -517,   198,
+     111,   219,   200,   201,  -517,  -517,  -517,  -517,  -517,  1264,
+    1264,  1264,  1309,  -517,  -517,    75,    77,  -517,  -517,   -62,
+    -108,    81,  1051,  -517,  -517,  1264,  -517,   168,  1354,    24,
+     112,    90,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,
+    -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,
+    -517,  -517,   108,    65,  1264,  1264,  1264,  1264,  -517,  -517,
+    -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,
+    1264,  1264,  -517,  -517,  -517,  1264,  1264,  1264,  1264,  1264,
+    1264,  1264,  1264,  1264,  -517,    90,  -517,    42,  -517,  -517,
+    -517,  -517,  -517,  -517,  -517,  -517,  -110,  -517,  -517,  -517,
+     157,   183,   226,   185,   227,   189,   228,   191,   230,   231,
+     235,   193,   239,   237,   577,  -517,  1264,  1264,  1264,  -517,
+    1092,  -517,    89,    96,   763,  -517,  -517,    70,  -517,   763,
+     763,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,
+    -517,   763,  1244,  -517,  -517,  -517,  -517,  -517,  -517,  -517,
+    -517,  -517,  -517,  1264,  -517,  -517,  -517,  -517,  -517,  -517,
+    -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,  -517,
+    1264,   101,   102,  -517,   763,    99,   107,   109,   110,   113,
+     114,   115,   763,   763,   763,   218,   116,  1244,  1264,  1264,
+     233,  -517,   117,   117,   117,  -517,  -517,  -517,  -517,  -517,
+    -517,  -517,  -517,  -517,  -517,   108,    65,   119,   120,   121,
+     123,   126,   998,  1309,   728,   234,   127,   128,   129,   130,
+     131,  -517,  -517,   117,   -56,  -142,   -62,  -517,   125,  -517,
+     118,   132,  1149,  -517,  -517,  -517,  -517,  -517,  -517,  -517,
+    -517,  -517,   202,  1309,  -517,  -517,  -517,  -517,   136,  -517,
+     137,   763,   763,   763,    -7,  -517,    -2,  -517,   138,   763,
+     122,  1264,  1264,  1264,  1264,  1264,   146,   147,   148,  1264,
+    1264,   763,   763,   149,  -517,   -20,  -517,  -517,  -517,   150,
+     156,  1309,  1309,  1309,  1309,  1309,  -517,  -517,   -76,   -57,
+    -517,   -71,  -517,  1309,  1309,  1309,  1309,  1309,  -517,  -517,
+    -517,  -517,  -517,  1203,   262,  -517,  -517,   249,   -48,   284,
+     285,   159,   165,   166,   763,   306,   763,  1264,  -517,   167,
+     763,   169,  -517,  -517,   170,   171,   763,   763,   763,  -517,
+    -517,   173,  -517,  1264,   290,   314,  -517,   117,  1309,  1309,
+     138,   176,   177,   188,   190,  1309,  -517,  -517,  -517,   195,
+     196,   206,   283,   208,  -517,  -517,  -517,   272,   209,  -517,
+     763,   763,  1264,   763,   763,   210,  -517,   210,  -517,   211,
+     763,   212,  1264,  1264,  1264,  -517,  -517,  -517,  1264,   763,
+    -517,  -517,  -517,   213,   214,   186,  1309,  1309,  1309,  1309,
+    -517,  1309,  1309,  1309,  1264,  1309,   333,  -517,   319,   221,
+     220,   211,   222,  -517,  -517,   289,  -517,  -517,  1264,   217,
+     763,  -517,  -517,  -517,   223,  -517,  1309,  1309,  -517,   229,
+     224,   232,   236,   225,   238,   240,   241,   242,  -517,  -517,
+     326,    10,   328,  -517,  -517,   248,  -517,   253,   254,  1309,
+    -517,  1309,  1309,  -517,  -517,  -517,  -517,  -517,   763,  -517,
+     905,    51,   344,  -517,  -517,  -517,   256,   261,   263,  -517,
+     265,  -517,   905,   763,  -517,  -517,  -517,   347,   267,   300,
+     763,   356,   358,  -517,   763,   763,  -517,  -517
 };
 
 /* YYPGOTO[NTERM-NUM].  */
 static const short int yypgoto[] =
 {
-    -536,  -536,  -536,   342,   343,   344,   345,   350,   142,   144,
-    -127,  -125,  -525,  -536,   411,   435,  -122,  -536,  -267,    51,
-    -536,  -285,  -536,   -45,  -536,   -37,  -536,   -83,   340,  -536,
-     -94,   250,  -298,    56,  -536,  -536,  -536,  -536,  -536,  -536,
-    -536,   412,  -536,  -536,  -536,  -536,     3,  -536,    54,  -536,
-    -536,   413,  -536,  -536,  -536,  -536,  -536,   472,  -536,  -536,
-    -535,  -205,    60,  -124,  -536,   459,  -536,  -536,  -536,  -536,
-    -536,    58,    -3,  -536,  -536,    42,  -536,  -536
+    -517,  -517,  -517,   286,   288,   291,   317,   320,   134,    80,
+    -127,  -125,  -502,  -517,   340,   391,  -114,  -517,  -265,    14,
+    -517,  -284,  -517,   -51,  -517,   -37,  -517,   -66,   297,  -517,
+     -94,   207,  -283,    52,  -517,  -517,  -517,  -517,  -517,  -517,
+    -517,   368,  -517,  -517,  -517,  -517,     3,  -517,    26,  -517,
+    -517,   372,  -517,  -517,  -517,  -517,  -517,   431,  -517,  -517,
+    -516,    56,    79,  -124,  -517,   421,  -517,  -517,  -517,  -517,
+    -517,    25,   -35,  -517,  -517,     4,  -517,  -517
 };
 
 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
@@ -2083,387 +1964,376 @@
 #define YYTABLE_NINF -173
 static const short int yytable[] =
 {
-      89,   227,   119,   241,   230,   242,    26,   361,   106,   244,
-     442,   326,   383,   384,   558,   420,    89,   422,   217,   395,
-     397,   350,    39,   568,   231,    94,   350,   350,     4,    42,
-     220,   453,   275,   443,   570,   576,   232,  -108,   350,   119,
-     221,   456,   404,   405,    26,    29,   123,   279,   123,   414,
-     453,   280,   281,   282,   283,   284,   285,   421,   455,   421,
-     289,   290,   453,   294,    39,   291,    46,    47,    48,   295,
-     467,   350,   199,   200,   201,    59,   406,    60,   453,   123,
-      51,   350,   350,   350,   454,    49,    52,    20,   226,    21,
-     121,   226,   233,   234,   235,   236,   237,   238,   239,   240,
-      53,   107,   108,   233,   234,   235,   236,   237,   238,   239,
-     240,   110,   111,   112,   192,   193,    58,   273,   274,   226,
-     276,     7,     8,     9,    10,    54,    12,    55,   292,   293,
-      56,   299,   300,   277,   226,   328,   329,   330,   226,   226,
-     226,   226,   226,   226,   286,   287,   288,   226,   226,  -172,
-     350,   350,   350,    95,    62,   -68,   -68,    43,   350,    64,
-     490,   233,   234,   235,   236,   237,   238,   239,   240,   379,
-     -67,   -67,   350,   350,     5,   -66,   -66,   -65,   -65,    99,
-       6,   301,   302,   100,   101,   332,   102,   103,  -109,   114,
-       7,     8,     9,    10,    11,    12,    13,   115,   116,   355,
-     122,   191,   195,   196,   197,   218,   514,    89,   515,   228,
-     219,    14,   222,   -72,   -75,   350,   -71,   350,   356,   -70,
-     -69,   350,    30,    31,    32,    33,    34,    35,    36,   350,
-     350,   350,   -76,   304,   305,   357,   557,   256,   257,   336,
-     337,   427,   358,   429,   430,   431,   377,   569,   360,   363,
-     364,   365,   438,   330,    89,   378,   226,   366,   367,   368,
-     369,   370,   371,   350,   350,   376,   350,   350,   375,   380,
-     381,   387,   398,   350,   388,   389,   390,   391,   399,   400,
-     409,   401,   350,   402,   403,   412,   410,   415,   416,   423,
-     426,   352,   353,   448,   449,   450,   451,   452,   446,   442,
-     466,   434,   435,   354,   436,   457,   458,   459,   460,   461,
-     441,   447,   468,   350,   258,   259,   260,   261,   262,   263,
-     264,   265,   266,   267,   268,   269,   270,   271,   226,   428,
-     226,   226,   226,   432,   433,   407,   362,   469,   437,   226,
-     470,   474,   486,   471,   472,   478,   372,   373,   374,   480,
-     481,   350,   491,   492,   482,   488,   519,   520,   521,   498,
-     489,   494,   495,   502,   504,   496,   350,   497,   499,   500,
-     536,   501,   332,   350,   503,   526,   506,   350,   350,   513,
-     421,   516,   518,   524,   525,   537,   226,   538,   556,   539,
-     560,   540,   541,   544,   547,   542,   571,   549,   548,   550,
-     527,   528,   529,   530,   487,   531,   532,   533,   551,   535,
-     552,   553,   241,   554,   242,   417,   418,   419,   555,   562,
-     561,   563,   572,   425,   573,   574,   575,   578,   579,   580,
-     545,   546,   241,   226,   242,   582,   583,   439,   440,   181,
-     182,   183,   184,   226,   226,   226,   -78,   185,    20,   226,
-      21,   385,    97,   564,   386,   565,   566,     6,   -78,   -78,
-      57,   464,   224,   463,   105,   534,   325,   -78,   -78,   -78,
-     -78,   -78,   -78,   -78,   113,    27,   -78,    22,    45,   226,
-     473,   477,   475,   522,    23,     0,   479,     0,    24,     0,
-     493,     0,     0,     0,   483,   484,   485,   245,   246,   247,
-     248,   249,   250,   251,   252,   253,   254,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   507,   508,
-       0,   511,   512,     0,     0,     0,     0,     0,   517,     0,
-       0,     0,     0,     0,     0,     0,     0,   523,     0,     0,
+      89,   225,   106,   239,   228,   240,    26,   357,   414,   377,
+     378,    94,   400,   416,   434,   123,    89,   242,   215,   119,
+     231,   232,   233,   234,   235,   236,   237,   238,    39,   550,
+     389,   391,   273,   229,   560,    42,   290,   435,   218,   398,
+       4,    59,   291,    60,    26,   230,   568,   277,   219,   562,
+     415,   278,   279,   280,   281,   415,   119,    53,   285,   286,
+     408,   231,   232,   233,   234,   235,   236,   237,   238,  -172,
+     445,   287,   197,   198,   199,   445,   446,    29,     7,     8,
+       9,    10,    54,    12,    55,   448,  -108,    56,   224,   445,
+     121,   224,   254,   255,     5,   123,   399,   447,   445,    39,
+       6,   123,    46,    47,    48,    51,   459,   110,   111,   112,
+       7,     8,     9,    10,    11,    12,    13,   271,   272,   224,
+     274,    49,   231,   232,   233,   234,   235,   236,   237,   238,
+      58,    14,    52,   275,   224,   107,   108,    95,   224,   224,
+     224,   224,   282,   283,   284,   224,   224,    20,    62,    21,
+     324,   325,   326,   482,    30,    31,    32,    33,    34,    35,
+      36,    43,   549,   288,   289,   373,   190,   191,    64,   256,
+     257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
+     267,   268,   269,   328,   295,   296,   -68,   -68,   -67,   -67,
+      99,   351,   -66,   -66,   -65,   -65,   297,   298,   100,   101,
+     506,   114,   507,   561,   102,    89,   243,   244,   245,   246,
+     247,   248,   249,   250,   251,   252,   352,   103,  -109,   115,
+     116,   122,   189,   193,   194,   195,   216,   226,   217,   220,
+     -72,   -71,   -70,   353,   -69,   332,   371,   421,   -75,   423,
+     424,   425,   -76,   300,   301,   333,   430,   354,   356,   359,
+      89,   372,   224,   360,   369,   361,   362,   374,   392,   363,
+     364,   365,   370,   375,   403,   406,   326,   381,   382,   383,
+     322,   384,   420,   458,   385,   393,   394,   395,   396,   397,
+     346,   404,   409,   410,   417,   346,   346,   440,   441,   442,
+     443,   444,   426,   427,   428,   433,   434,   346,   438,   449,
+     450,   451,   452,   453,   439,   460,   461,   462,   348,   349,
+     466,   463,   464,   470,   480,   472,   473,   474,   481,   494,
+     350,   478,   486,   487,   224,   422,   224,   224,   224,   496,
+     346,   401,   429,   224,   488,   518,   489,   528,   346,   346,
+     346,   491,   492,   529,   483,   484,   415,   548,   511,   512,
+     513,   490,   493,   358,   495,   498,   505,   508,   510,   516,
+     517,   366,   367,   368,   552,   563,   328,   530,   570,   534,
+     531,   532,   536,   540,   543,   539,   572,   574,   541,   575,
+     224,    97,   542,   179,   533,   180,   380,   544,   181,   545,
+     546,   547,   519,   520,   521,   522,   479,   523,   524,   525,
+     553,   527,   554,   555,   239,   564,   240,   346,   346,   346,
+     565,   567,   566,   571,   182,   346,    57,   183,   456,   222,
+     105,   321,   537,   538,   239,   224,   240,   346,   346,   455,
+     411,   412,   413,   113,    27,   224,   224,   224,   419,   379,
+      45,   224,   469,   514,   485,   556,     0,   557,   558,     0,
+     431,   432,     0,     0,     0,     0,     0,   526,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    65,    66,     0,     0,     0,     0,     0,   543,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    20,     0,
-      21,     0,   306,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   307,   308,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   567,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   577,     0,     0,     0,     0,     0,     0,   581,     0,
-       0,     0,   584,   585,   134,   135,   136,   137,   138,   139,
-     140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
-     150,   151,   309,   310,    65,    66,     0,   117,    68,    69,
-      70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
-      80,    20,     0,    21,     0,     0,     0,     0,     0,   311,
-     158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
-     168,   169,     0,   312,   172,   173,   174,    81,   313,   314,
-     315,     0,     0,     0,     0,     0,     0,     0,   316,     0,
-       0,   317,     0,   318,    65,    66,   319,   117,   202,   203,
-     204,   205,   206,   207,   208,   209,   210,   211,   212,    79,
-      80,    20,     0,    21,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     338,   339,    65,    66,   340,     0,     0,    81,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,    20,
-       0,    21,     0,   341,   342,   343,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   344,   345,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    82,     0,
-       0,    83,     0,     0,    84,     0,    85,   118,   346,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   134,   135,   136,   137,   138,
+     346,   224,   346,     0,     0,     0,   346,     0,     0,     0,
+       0,     0,   346,   346,   346,     0,     0,     0,     0,     0,
+       0,     0,     0,   465,     0,   467,     0,     0,     0,   471,
+       0,     0,     0,     0,     0,   475,   476,   477,     0,     0,
+       0,     0,     0,     0,     0,     0,   346,   346,     0,   346,
+     346,     0,     0,     0,     0,     0,   346,     0,     0,     0,
+       0,     0,     0,     0,     0,   346,     0,     0,     0,   499,
+     500,     0,   503,   504,     0,     0,     0,     0,   -78,   509,
+      20,     0,    21,     0,     0,     0,     0,     0,   515,     6,
+     -78,   -78,     0,     0,     0,     0,   346,     0,     0,   -78,
+     -78,   -78,   -78,   -78,   -78,   -78,     0,     0,   -78,    22,
+       0,     0,    65,    66,     0,     0,    23,     0,     0,   535,
+      24,     0,     0,     0,     0,     0,     0,     0,     0,    20,
+       0,    21,     0,   302,   346,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,   303,   304,     0,     0,   346,
+       0,     0,     0,     0,     0,     0,   346,   559,     0,     0,
+     346,   346,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,   569,     0,     0,     0,     0,     0,     0,   573,
+       0,     0,     0,   576,   577,   134,   135,   136,   137,   138,
      139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
-     149,   150,   151,   309,   310,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    82,     0,
-       0,    83,     0,     0,    84,     0,    85,   396,     0,     0,
-     311,   158,   159,   160,   161,   162,   163,   164,   165,   166,
-     167,   168,   169,     0,   312,   172,   173,   174,     0,   313,
-     314,   315,   338,   339,     0,     0,   340,     0,     0,     0,
-       0,     0,   347,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   341,   342,   343,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   344,   345,     0,
+     149,   150,   151,   305,   306,    65,    66,     0,   117,    68,
+      69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
+      79,    80,    20,     0,    21,     0,     0,     0,     0,     0,
+     307,   158,   159,   160,   161,   162,   163,   164,   165,   166,
+     167,   168,   169,     0,   308,   172,   173,   174,    81,   309,
+     310,   311,     0,     0,     0,     0,     0,   312,     0,     0,
+     313,     0,   314,    65,    66,   315,   117,   200,   201,   202,
+     203,   204,   205,   206,   207,   208,   209,   210,    79,    80,
+      20,     0,    21,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,   334,   335,    65,    66,
+     336,     0,     0,     0,     0,     0,    81,     0,     0,     0,
+       0,     0,     0,     0,     0,    20,     0,    21,     0,   337,
+     338,   339,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,   340,   341,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,    82,     0,     0,
+      83,     0,     0,    84,   342,    85,   118,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,   134,   135,   136,   137,   138,   139,   140,   141,   142,
+     143,   144,   145,   146,   147,   148,   149,   150,   151,   305,
+     306,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,    82,     0,     0,    83,     0,
+       0,    84,     0,    85,   390,     0,   307,   158,   159,   160,
+     161,   162,   163,   164,   165,   166,   167,   168,   169,     0,
+     308,   172,   173,   174,     0,   309,   310,   311,   334,   335,
+       0,     0,   336,     0,     0,     0,   343,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     346,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   134,   135,   136,
-     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
-     147,   148,   149,   150,   151,   309,   310,    65,    66,     0,
-     117,   202,   203,   204,   205,   206,   207,   208,   209,   210,
-     211,   212,    79,    80,    20,     0,    21,     0,     0,     0,
-       0,     0,   311,   158,   159,   160,   161,   162,   163,   164,
-     165,   166,   167,   168,   169,     0,   312,   172,   173,   174,
-      81,   313,   314,   315,     0,     0,     0,     0,     0,     0,
-       0,     0,    65,    66,   347,   117,    68,    69,    70,    71,
-      72,    73,    74,    75,    76,    77,    78,    79,    80,    20,
-       0,    21,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   223,     0,     0,     0,     0,     0,
-       0,     0,     0,    65,    66,    81,   117,    68,    69,    70,
-      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
-      20,     0,    21,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,   331,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    81,     0,     0,     0,
-       0,    82,     0,     0,    83,     0,   392,    84,     0,    85,
-      65,    66,     0,   117,    68,    69,    70,    71,    72,    73,
-      74,    75,    76,    77,    78,    79,    80,    20,     0,    21,
+       0,   337,   338,   339,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,   340,   341,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   411,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,    81,     0,     0,    82,     0,     0,    83,
-       0,     0,    84,     0,    85,     0,    65,    66,     0,   117,
+       0,     0,     0,     0,     0,     0,   342,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,   134,   135,   136,   137,   138,   139,   140,
+     141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
+     151,   305,   306,    65,    66,     0,   117,   200,   201,   202,
+     203,   204,   205,   206,   207,   208,   209,   210,    79,    80,
+      20,     0,    21,     0,     0,     0,     0,     0,   307,   158,
+     159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
+     169,     0,   308,   172,   173,   174,    81,   309,   310,   311,
+       0,     0,     0,     0,     0,     0,    65,    66,   343,   117,
       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
       78,    79,    80,    20,     0,    21,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    82,   462,     0,
-      83,     0,     0,    84,     0,    85,     0,    65,    66,    81,
-      67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
-      77,    78,    79,    80,    20,     0,    21,    65,    66,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,   221,     0,
+       0,     0,     0,     0,     0,     0,     0,    65,    66,    81,
      117,    68,    69,    70,    71,    72,    73,    74,    75,    76,
       77,    78,    79,    80,    20,     0,    21,     0,     0,     0,
-      81,     0,     0,     0,    82,     0,     0,    83,     0,     0,
-      84,     0,    85,     0,     0,     0,     0,     0,    65,    66,
-      81,   117,   202,   203,   204,   205,   206,   207,   208,   209,
-     210,   211,   212,    79,    80,    20,     0,    21,    65,    66,
-       0,   229,    68,    69,    70,    71,    72,    73,    74,    75,
-      76,    77,    78,    79,    80,    20,     0,    21,     0,     0,
-      82,    81,     0,    83,     0,     0,    84,     0,    85,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    81,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,   327,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    82,     0,     0,    83,     0,     0,    84,     0,    85,
+      81,     0,     0,     0,     0,    82,     0,     0,    83,     0,
+     386,    84,     0,    85,    65,    66,     0,   117,    68,    69,
+      70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
+      80,    20,     0,    21,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,   405,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,    81,    82,     0,
+       0,    83,     0,     0,    84,     0,    85,     0,    65,    66,
+       0,   117,    68,    69,    70,    71,    72,    73,    74,    75,
+      76,    77,    78,    79,    80,    20,     0,    21,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,    82,
+     454,     0,    83,     0,     0,    84,     0,    85,     0,    65,
+      66,    81,    67,    68,    69,    70,    71,    72,    73,    74,
+      75,    76,    77,    78,    79,    80,    20,     0,    21,    65,
+      66,     0,   117,    68,    69,    70,    71,    72,    73,    74,
+      75,    76,    77,    78,    79,    80,    20,     0,    21,     0,
+       0,     0,    81,     0,     0,     0,    82,     0,     0,    83,
+       0,     0,    84,     0,    85,     0,     0,     0,     0,     0,
+       0,     0,    81,     0,    65,    66,     0,   117,   200,   201,
+     202,   203,   204,   205,   206,   207,   208,   209,   210,    79,
+      80,    20,     0,    21,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+      82,     0,     0,    83,     0,     0,    84,    81,    85,    65,
+      66,     0,   227,    68,    69,    70,    71,    72,    73,    74,
+      75,    76,    77,    78,    79,    80,    20,     0,    21,     0,
+       0,     0,     0,     0,   124,     0,     0,     0,     0,     0,
+       0,    82,     0,     0,    83,     0,     0,    84,   125,    85,
+       0,     0,    81,     0,     0,     0,     0,     0,   126,   127,
        0,    82,     0,     0,    83,     0,     0,    84,     0,    85,
-       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,   124,     0,     0,     0,     0,
-       0,     0,    82,     0,     0,    83,     0,     0,    84,   125,
-      85,     0,     0,     0,     0,     0,     0,     0,     0,   126,
-     127,     0,    82,     0,     0,    83,     0,     0,    84,     0,
-      85,     0,   128,   129,   130,   131,   132,   133,   134,   135,
-     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
-     146,   147,   148,   149,   150,   151,   152,   153,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   154,   155,
-     156,     0,     0,   157,   158,   159,   160,   161,   162,   163,
-     164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
-     174,   175,   176,   177,   178,   179,   180
+       0,   128,   129,   130,   131,   132,   133,   134,   135,   136,
+     137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
+     147,   148,   149,   150,   151,   152,   153,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,    82,     0,     0,    83,
+       0,     0,    84,     0,    85,     0,     0,   154,   155,   156,
+       0,     0,   157,   158,   159,   160,   161,   162,   163,   164,
+     165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
+     175,   176,   177,   178,     0,     0,     0,     0,     0,     0,
+       0,    82,     0,     0,    83,     0,     0,    84,     0,    85
 };
 
 static const short int yycheck[] =
 {
-      37,   125,    85,   130,   128,   130,     3,   274,    53,   131,
-      34,   216,   297,   298,   539,    15,    53,    15,   112,   317,
-     318,   226,    23,   558,     9,    29,   231,   232,     0,    30,
-     148,   148,   156,    57,   559,   570,    21,   150,   243,   122,
-     158,   158,   327,   154,    41,    61,   159,   171,   159,   347,
-     148,   175,   176,   177,   178,   179,   180,    57,   156,    57,
-     184,   185,   148,   148,    23,   187,    52,    53,    54,   154,
-     156,   276,   109,   110,   111,    45,   156,    47,   148,   159,
-     147,   286,   287,   288,   154,    71,    61,    22,   125,    24,
-      87,   128,    10,    11,    12,    13,    14,    15,    16,    17,
-      20,    32,    33,    10,    11,    12,    13,    14,    15,    16,
-      17,    55,    56,    57,    55,    56,   147,   154,   155,   156,
-     157,    41,    42,    43,    44,    45,    46,    47,   121,   122,
-      50,    27,    28,   170,   171,   218,   219,   220,   175,   176,
-     177,   178,   179,   180,   181,   182,   183,   184,   185,     0,
-     355,   356,   357,   157,    24,     3,     4,   158,   363,     4,
-     445,    10,    11,    12,    13,    14,    15,    16,    17,   293,
-       3,     4,   377,   378,    25,     3,     4,     3,     4,   147,
-      31,     3,     4,   147,   147,   222,   147,   152,   150,     4,
-      41,    42,    43,    44,    45,    46,    47,     4,     4,   244,
-     150,    24,     4,    24,    24,   153,   473,   244,   475,    59,
-     153,    62,   150,     4,     7,   420,     4,   422,   255,     4,
-       4,   426,    64,    65,    66,    67,    68,    69,    70,   434,
-     435,   436,     7,     4,     7,   272,   154,    27,    28,   148,
-     151,   365,   148,   367,   368,   369,   291,   154,   148,   152,
-     148,   148,   376,   336,   291,   292,   293,   148,   148,   148,
-     148,   148,   148,   468,   469,   148,   471,   472,    36,    24,
-     148,   150,    24,   478,   150,   150,   150,   150,   150,   150,
-     148,   150,   487,   150,   150,    63,   151,   148,   148,   148,
-     152,   231,   232,   387,   388,   389,   390,   391,   150,    34,
-      24,   148,   148,   243,   148,   399,   400,   401,   402,   403,
-     148,   150,    21,   518,   104,   105,   106,   107,   108,   109,
-     110,   111,   112,   113,   114,   115,   116,   117,   365,   366,
-     367,   368,   369,   370,   371,   332,   276,    21,   375,   376,
-     150,     4,   150,   148,   148,   148,   286,   287,   288,   148,
-     148,   556,   446,   447,   148,    24,   480,   481,   482,   453,
-       4,   148,   148,    36,    57,   148,   571,   148,   148,   148,
-       4,   148,   409,   578,   148,   151,   148,   582,   583,   148,
-      57,   148,   148,   148,   148,    24,   423,   148,    21,   152,
-      36,   151,   516,   151,   148,   154,    21,   148,   151,   148,
-     494,   495,   496,   497,   441,   499,   500,   501,   151,   503,
-     151,   151,   539,   151,   539,   355,   356,   357,   151,   151,
-     154,   151,   151,   363,   151,   151,   148,    21,   148,    76,
-     524,   525,   559,   470,   559,    21,    21,   377,   378,    97,
-      97,    97,    97,   480,   481,   482,    20,    97,    22,   486,
-      24,   309,    41,   547,   310,   549,   550,    31,    32,    33,
-      25,   410,   122,   409,    52,   502,   216,    41,    42,    43,
-      44,    45,    46,    47,    61,     3,    50,    51,    19,   516,
-     420,   423,   422,   486,    58,    -1,   426,    -1,    62,    -1,
-     448,    -1,    -1,    -1,   434,   435,   436,    98,    99,   100,
-     101,   102,   103,   104,   105,   106,   107,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   468,   469,
-      -1,   471,   472,    -1,    -1,    -1,    -1,    -1,   478,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   487,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,     5,     6,    -1,    -1,    -1,    -1,    -1,   518,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    22,    -1,
-      24,    -1,    26,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    38,    39,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,   556,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   571,    -1,    -1,    -1,    -1,    -1,    -1,   578,    -1,
-      -1,    -1,   582,   583,    78,    79,    80,    81,    82,    83,
-      84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
-      94,    95,    96,    97,     5,     6,    -1,     8,     9,    10,
-      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
-      21,    22,    -1,    24,    -1,    -1,    -1,    -1,    -1,   123,
-     124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
-     134,   135,    -1,   137,   138,   139,   140,    48,   142,   143,
-     144,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   152,    -1,
-      -1,   155,    -1,   157,     5,     6,   160,     8,     9,    10,
-      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
-      21,    22,    -1,    24,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       3,     4,     5,     6,     7,    -1,    -1,    48,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    22,
-      -1,    24,    -1,    26,    27,    28,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    38,    39,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   149,    -1,
-      -1,   152,    -1,    -1,   155,    -1,   157,   158,    61,    -1,
+      37,   125,    53,   130,   128,   130,     3,   272,    15,   293,
+     294,    29,   154,    15,    34,   157,    53,   131,   112,    85,
+      10,    11,    12,    13,    14,    15,    16,    17,    23,   531,
+     313,   314,   156,     9,   550,    30,   146,    57,   146,   323,
+       0,    45,   152,    47,    41,    21,   562,   171,   156,   551,
+      57,   175,   176,   177,   178,    57,   122,    20,   182,   183,
+     343,    10,    11,    12,    13,    14,    15,    16,    17,     0,
+     146,   185,   109,   110,   111,   146,   152,    61,    41,    42,
+      43,    44,    45,    46,    47,   156,   148,    50,   125,   146,
+      87,   128,    27,    28,    25,   157,   152,   154,   146,    23,
+      31,   157,    52,    53,    54,   145,   154,    55,    56,    57,
+      41,    42,    43,    44,    45,    46,    47,   154,   155,   156,
+     157,    71,    10,    11,    12,    13,    14,    15,    16,    17,
+     145,    62,    61,   170,   171,    32,    33,   155,   175,   176,
+     177,   178,   179,   180,   181,   182,   183,    22,    24,    24,
+     216,   217,   218,   437,    64,    65,    66,    67,    68,    69,
+      70,   156,   152,   121,   122,   289,    55,    56,     4,   104,
+     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
+     115,   116,   117,   220,    27,    28,     3,     4,     3,     4,
+     145,   242,     3,     4,     3,     4,     3,     4,   145,   145,
+     465,     4,   467,   152,   145,   242,    98,    99,   100,   101,
+     102,   103,   104,   105,   106,   107,   253,   150,   148,     4,
+       4,   148,    24,     4,    24,    24,   151,    59,   151,   148,
+       4,     4,     4,   270,     4,   146,   287,   361,     7,   363,
+     364,   365,     7,     4,     7,   149,   370,   146,   146,   150,
+     287,   288,   289,   146,    36,   146,   146,    24,    24,   146,
+     146,   146,   146,   146,   146,    63,   332,   148,   148,   148,
+     214,   148,   150,    24,   148,   148,   148,   148,   148,   148,
+     224,   149,   146,   146,   146,   229,   230,   381,   382,   383,
+     384,   385,   146,   146,   146,   146,    34,   241,   148,   393,
+     394,   395,   396,   397,   148,    21,    21,   148,   229,   230,
+       4,   146,   146,   146,    24,   146,   146,   146,     4,    36,
+     241,   148,   146,   146,   361,   362,   363,   364,   365,    57,
+     274,   328,   369,   370,   146,   149,   146,     4,   282,   283,
+     284,   146,   146,    24,   438,   439,    57,    21,   472,   473,
+     474,   445,   146,   274,   146,   146,   146,   146,   146,   146,
+     146,   282,   283,   284,    36,    21,   403,   146,    21,   152,
+     150,   149,   149,   149,   149,   146,    76,    21,   146,    21,
+     417,    41,   146,    97,   508,    97,   306,   149,    97,   149,
+     149,   149,   486,   487,   488,   489,   433,   491,   492,   493,
+     152,   495,   149,   149,   531,   149,   531,   351,   352,   353,
+     149,   146,   149,   146,    97,   359,    25,    97,   404,   122,
+      52,   214,   516,   517,   551,   462,   551,   371,   372,   403,
+     351,   352,   353,    61,     3,   472,   473,   474,   359,   305,
+      19,   478,   417,   478,   440,   539,    -1,   541,   542,    -1,
+     371,   372,    -1,    -1,    -1,    -1,    -1,   494,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    78,    79,    80,    81,    82,
+     414,   508,   416,    -1,    -1,    -1,   420,    -1,    -1,    -1,
+      -1,    -1,   426,   427,   428,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   414,    -1,   416,    -1,    -1,    -1,   420,
+      -1,    -1,    -1,    -1,    -1,   426,   427,   428,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,   460,   461,    -1,   463,
+     464,    -1,    -1,    -1,    -1,    -1,   470,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   479,    -1,    -1,    -1,   460,
+     461,    -1,   463,   464,    -1,    -1,    -1,    -1,    20,   470,
+      22,    -1,    24,    -1,    -1,    -1,    -1,    -1,   479,    31,
+      32,    33,    -1,    -1,    -1,    -1,   510,    -1,    -1,    41,
+      42,    43,    44,    45,    46,    47,    -1,    -1,    50,    51,
+      -1,    -1,     5,     6,    -1,    -1,    58,    -1,    -1,   510,
+      62,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    22,
+      -1,    24,    -1,    26,   548,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    38,    39,    -1,    -1,   563,
+      -1,    -1,    -1,    -1,    -1,    -1,   570,   548,    -1,    -1,
+     574,   575,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   563,    -1,    -1,    -1,    -1,    -1,    -1,   570,
+      -1,    -1,    -1,   574,   575,    78,    79,    80,    81,    82,
       83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
-      93,    94,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   149,    -1,
-      -1,   152,    -1,    -1,   155,    -1,   157,   158,    -1,    -1,
+      93,    94,    95,    96,    97,     5,     6,    -1,     8,     9,
+      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
+      20,    21,    22,    -1,    24,    -1,    -1,    -1,    -1,    -1,
      123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
-     133,   134,   135,    -1,   137,   138,   139,   140,    -1,   142,
-     143,   144,     3,     4,    -1,    -1,     7,    -1,    -1,    -1,
-      -1,    -1,   155,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    26,    27,    28,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    38,    39,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      61,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    78,    79,    80,
-      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
-      91,    92,    93,    94,    95,    96,    97,     5,     6,    -1,
-       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
-      18,    19,    20,    21,    22,    -1,    24,    -1,    -1,    -1,
-      -1,    -1,   123,   124,   125,   126,   127,   128,   129,   130,
-     131,   132,   133,   134,   135,    -1,   137,   138,   139,   140,
-      48,   142,   143,   144,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,     5,     6,   155,     8,     9,    10,    11,    12,
-      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
-      -1,    24,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    37,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,     5,     6,    48,     8,     9,    10,    11,
+     133,   134,   135,    -1,   137,   138,   139,   140,    48,   142,
+     143,   144,    -1,    -1,    -1,    -1,    -1,   150,    -1,    -1,
+     153,    -1,   155,     5,     6,   158,     8,     9,    10,    11,
       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
       22,    -1,    24,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    37,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    48,    -1,    -1,    -1,
-      -1,   149,    -1,    -1,   152,    -1,   154,   155,    -1,   157,
-       5,     6,    -1,     8,     9,    10,    11,    12,    13,    14,
-      15,    16,    17,    18,    19,    20,    21,    22,    -1,    24,
+      -1,    -1,    -1,    -1,    -1,    -1,     3,     4,     5,     6,
+       7,    -1,    -1,    -1,    -1,    -1,    48,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    22,    -1,    24,    -1,    26,
+      27,    28,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,   147,    -1,    -1,
+     150,    -1,    -1,   153,    61,   155,   156,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    78,    79,    80,    81,    82,    83,    84,    85,    86,
+      87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
+      97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   147,    -1,    -1,   150,    -1,
+      -1,   153,    -1,   155,   156,    -1,   123,   124,   125,   126,
+     127,   128,   129,   130,   131,   132,   133,   134,   135,    -1,
+     137,   138,   139,   140,    -1,   142,   143,   144,     3,     4,
+      -1,    -1,     7,    -1,    -1,    -1,   153,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    37,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    48,    -1,    -1,   149,    -1,    -1,   152,
-      -1,    -1,   155,    -1,   157,    -1,     5,     6,    -1,     8,
+      -1,    26,    27,    28,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    38,    39,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    61,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    78,    79,    80,    81,    82,    83,    84,
+      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
+      95,    96,    97,     5,     6,    -1,     8,     9,    10,    11,
+      12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
+      22,    -1,    24,    -1,    -1,    -1,    -1,    -1,   123,   124,
+     125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
+     135,    -1,   137,   138,   139,   140,    48,   142,   143,   144,
+      -1,    -1,    -1,    -1,    -1,    -1,     5,     6,   153,     8,
        9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
       19,    20,    21,    22,    -1,    24,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   149,    37,    -1,
-     152,    -1,    -1,   155,    -1,   157,    -1,     5,     6,    48,
-       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
-      18,    19,    20,    21,    22,    -1,    24,     5,     6,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,     5,     6,    48,
        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
       18,    19,    20,    21,    22,    -1,    24,    -1,    -1,    -1,
-      48,    -1,    -1,    -1,   149,    -1,    -1,   152,    -1,    -1,
-     155,    -1,   157,    -1,    -1,    -1,    -1,    -1,     5,     6,
-      48,     8,     9,    10,    11,    12,    13,    14,    15,    16,
-      17,    18,    19,    20,    21,    22,    -1,    24,     5,     6,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      48,    -1,    -1,    -1,    -1,   147,    -1,    -1,   150,    -1,
+     152,   153,    -1,   155,     5,     6,    -1,     8,     9,    10,
+      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
+      21,    22,    -1,    24,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    37,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    48,   147,    -1,
+      -1,   150,    -1,    -1,   153,    -1,   155,    -1,     5,     6,
       -1,     8,     9,    10,    11,    12,    13,    14,    15,    16,
       17,    18,    19,    20,    21,    22,    -1,    24,    -1,    -1,
-     149,    48,    -1,   152,    -1,    -1,   155,    -1,   157,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    48,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   149,    -1,    -1,   152,    -1,    -1,   155,    -1,   157,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   149,    -1,    -1,   152,    -1,    -1,   155,    -1,   157,
-      -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,    35,    -1,    -1,    -1,    -1,
-      -1,    -1,   149,    -1,    -1,   152,    -1,    -1,   155,    49,
-     157,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    59,
-      60,    -1,   149,    -1,    -1,   152,    -1,    -1,   155,    -1,
-     157,    -1,    72,    73,    74,    75,    76,    77,    78,    79,
-      80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
-      90,    91,    92,    93,    94,    95,    96,    97,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   147,
+      37,    -1,   150,    -1,    -1,   153,    -1,   155,    -1,     5,
+       6,    48,     8,     9,    10,    11,    12,    13,    14,    15,
+      16,    17,    18,    19,    20,    21,    22,    -1,    24,     5,
+       6,    -1,     8,     9,    10,    11,    12,    13,    14,    15,
+      16,    17,    18,    19,    20,    21,    22,    -1,    24,    -1,
+      -1,    -1,    48,    -1,    -1,    -1,   147,    -1,    -1,   150,
+      -1,    -1,   153,    -1,   155,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    48,    -1,     5,     6,    -1,     8,     9,    10,
+      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
+      21,    22,    -1,    24,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   118,   119,
-     120,    -1,    -1,   123,   124,   125,   126,   127,   128,   129,
-     130,   131,   132,   133,   134,   135,   136,   137,   138,   139,
-     140,   141,   142,   143,   144,   145,   146
+     147,    -1,    -1,   150,    -1,    -1,   153,    48,   155,     5,
+       6,    -1,     8,     9,    10,    11,    12,    13,    14,    15,
+      16,    17,    18,    19,    20,    21,    22,    -1,    24,    -1,
+      -1,    -1,    -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,
+      -1,   147,    -1,    -1,   150,    -1,    -1,   153,    49,   155,
+      -1,    -1,    48,    -1,    -1,    -1,    -1,    -1,    59,    60,
+      -1,   147,    -1,    -1,   150,    -1,    -1,   153,    -1,   155,
+      -1,    72,    73,    74,    75,    76,    77,    78,    79,    80,
+      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
+      91,    92,    93,    94,    95,    96,    97,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,   147,    -1,    -1,   150,
+      -1,    -1,   153,    -1,   155,    -1,    -1,   118,   119,   120,
+      -1,    -1,   123,   124,   125,   126,   127,   128,   129,   130,
+     131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
+     141,   142,   143,   144,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   147,    -1,    -1,   150,    -1,    -1,   153,    -1,   155
 };
 
 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
    symbol of state STATE-NUM.  */
 static const unsigned char yystos[] =
 {
-       0,   195,   196,   197,     0,    25,    31,    41,    42,    43,
-      44,    45,    46,    47,    62,   176,   214,   216,   218,   225,
-      22,    24,    51,    58,    62,   175,   207,   218,   219,    61,
-      64,    65,    66,    67,    68,    69,    70,   177,   212,    23,
-     226,   227,    30,   158,   215,   226,    52,    53,    54,    71,
-     204,   147,    61,    20,    45,    47,    50,   176,   147,    45,
-      47,   217,    24,   202,     4,     5,     6,     8,     9,    10,
+       0,   193,   194,   195,     0,    25,    31,    41,    42,    43,
+      44,    45,    46,    47,    62,   174,   212,   214,   216,   223,
+      22,    24,    51,    58,    62,   173,   205,   216,   217,    61,
+      64,    65,    66,    67,    68,    69,    70,   175,   210,    23,
+     224,   225,    30,   156,   213,   224,    52,    53,    54,    71,
+     202,   145,    61,    20,    45,    47,    50,   174,   145,    45,
+      47,   215,    24,   200,     4,     5,     6,     8,     9,    10,
       11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
-      21,    48,   149,   152,   155,   157,   162,   184,   185,   186,
-     187,   188,   207,   222,    29,   157,   213,   175,   230,   147,
-     147,   147,   147,   152,   205,   202,   184,    32,    33,   194,
-     194,   194,   194,   212,     4,     4,     4,     8,   158,   188,
-     189,   207,   150,   159,    35,    49,    59,    60,    72,    73,
+      21,    48,   147,   150,   153,   155,   160,   182,   183,   184,
+     185,   186,   205,   220,    29,   155,   211,   173,   228,   145,
+     145,   145,   145,   150,   203,   200,   182,    32,    33,   192,
+     192,   192,   192,   210,     4,     4,     4,     8,   156,   186,
+     187,   205,   148,   157,    35,    49,    59,    60,    72,    73,
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
       94,    95,    96,    97,   118,   119,   120,   123,   124,   125,
      126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
-     136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
-     146,   164,   165,   166,   167,   168,   228,   234,   235,   237,
-     238,    24,    55,    56,   203,     4,    24,    24,   206,   186,
-     186,   186,     9,    10,    11,    12,    13,    14,    15,    16,
-      17,    18,    19,   171,   172,   174,   186,   191,   153,   153,
-     148,   158,   150,    37,   189,   190,   186,   224,    59,     8,
-     224,     9,    21,    10,    11,    12,    13,    14,    15,    16,
-      17,   171,   172,   173,   177,    98,    99,   100,   101,   102,
-     103,   104,   105,   106,   107,   169,    27,    28,   104,   105,
-     106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
-     116,   117,   170,   186,   186,   224,   186,   186,   231,   224,
-     224,   224,   224,   224,   224,   224,   186,   186,   186,   224,
-     224,   177,   121,   122,   148,   154,   200,   201,   199,    27,
-      28,     3,     4,   163,     4,     7,    26,    38,    39,    96,
-      97,   123,   137,   142,   143,   144,   152,   155,   157,   160,
-     164,   165,   166,   167,   168,   192,   222,   198,   188,   188,
-     188,    37,   186,   209,   210,   211,   148,   151,     3,     4,
-       7,    26,    27,    28,    38,    39,    61,   155,   192,   221,
-     222,   223,   223,   223,   223,   184,   186,   186,   148,   179,
-     148,   179,   223,   152,   148,   148,   148,   148,   148,   148,
-     148,   148,   223,   223,   223,    36,   148,   184,   186,   224,
-      24,   148,   182,   182,   182,   169,   170,   150,   150,   150,
-     150,   150,   154,   191,   193,   193,   158,   193,    24,   150,
-     150,   150,   150,   150,   182,   154,   156,   207,   208,   148,
-     151,    37,    63,   220,   193,   148,   148,   223,   223,   223,
-      15,    57,    15,   148,   236,   223,   152,   224,   186,   224,
-     224,   224,   186,   186,   148,   148,   148,   186,   224,   223,
-     223,   148,    34,    57,   180,   183,   150,   150,   191,   191,
-     191,   191,   191,   148,   154,   156,   158,   191,   191,   191,
-     191,   191,    37,   209,   180,   181,    24,   156,    21,    21,
-     150,   148,   148,   223,     4,   223,   224,   232,   148,   223,
-     148,   148,   148,   223,   223,   223,   150,   186,    24,     4,
-     182,   191,   191,   236,   148,   148,   148,   148,   191,   148,
-     148,   148,    36,   148,    57,   178,   148,   223,   223,   232,
-     233,   223,   223,   148,   179,   179,   148,   223,   148,   224,
-     224,   224,   233,   223,   148,   148,   151,   191,   191,   191,
-     191,   191,   191,   191,   186,   191,     4,    24,   148,   152,
-     151,   224,   154,   223,   151,   191,   191,   148,   151,   148,
-     148,   151,   151,   151,   151,   151,    21,   154,   173,   229,
-      36,   154,   151,   151,   191,   191,   191,   223,   221,   154,
-     173,    21,   151,   151,   151,   148,   221,   223,    21,   148,
-      76,   223,    21,    21,   223,   223
+     136,   137,   138,   139,   140,   141,   142,   143,   144,   162,
+     163,   164,   165,   166,   226,   232,   233,   235,   236,    24,
+      55,    56,   201,     4,    24,    24,   204,   184,   184,   184,
+       9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
+      19,   169,   170,   172,   184,   189,   151,   151,   146,   156,
+     148,    37,   187,   188,   184,   222,    59,     8,   222,     9,
+      21,    10,    11,    12,    13,    14,    15,    16,    17,   169,
+     170,   171,   175,    98,    99,   100,   101,   102,   103,   104,
+     105,   106,   107,   167,    27,    28,   104,   105,   106,   107,
+     108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
+     168,   184,   184,   222,   184,   184,   229,   222,   222,   222,
+     222,   222,   184,   184,   184,   222,   222,   175,   121,   122,
+     146,   152,   198,   199,   197,    27,    28,     3,     4,   161,
+       4,     7,    26,    38,    39,    96,    97,   123,   137,   142,
+     143,   144,   150,   153,   155,   158,   162,   163,   164,   165,
+     166,   190,   220,   196,   186,   186,   186,    37,   184,   207,
+     208,   209,   146,   149,     3,     4,     7,    26,    27,    28,
+      38,    39,    61,   153,   190,   219,   220,   221,   221,   221,
+     221,   182,   184,   184,   146,   177,   146,   177,   221,   150,
+     146,   146,   146,   146,   146,   146,   221,   221,   221,    36,
+     146,   182,   184,   222,    24,   146,   180,   180,   180,   167,
+     168,   148,   148,   148,   148,   148,   152,   189,   191,   191,
+     156,   191,    24,   148,   148,   148,   148,   148,   180,   152,
+     154,   205,   206,   146,   149,    37,    63,   218,   191,   146,
+     146,   221,   221,   221,    15,    57,    15,   146,   234,   221,
+     150,   222,   184,   222,   222,   222,   146,   146,   146,   184,
+     222,   221,   221,   146,    34,    57,   178,   181,   148,   148,
+     189,   189,   189,   189,   189,   146,   152,   154,   156,   189,
+     189,   189,   189,   189,    37,   207,   178,   179,    24,   154,
+      21,    21,   148,   146,   146,   221,     4,   221,   222,   230,
+     146,   221,   146,   146,   146,   221,   221,   221,   148,   184,
+      24,     4,   180,   189,   189,   234,   146,   146,   146,   146,
+     189,   146,   146,   146,    36,   146,    57,   176,   146,   221,
+     221,   230,   231,   221,   221,   146,   177,   177,   146,   221,
+     146,   222,   222,   222,   231,   221,   146,   146,   149,   189,
+     189,   189,   189,   189,   189,   189,   184,   189,     4,    24,
+     146,   150,   149,   222,   152,   221,   149,   189,   189,   146,
+     149,   146,   146,   149,   149,   149,   149,   149,    21,   152,
+     171,   227,    36,   152,   149,   149,   189,   189,   189,   221,
+     219,   152,   171,    21,   149,   149,   149,   146,   219,   221,
+      21,   146,    76,   221,    21,    21,   221,   221
 };
 
 #define yyerrok		(yyerrstatus = 0)
@@ -3133,7 +3003,7 @@
   switch (yyn)
     {
         case 3:
-#line 1104 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 993 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   if ((yyvsp[0].UIntVal) > (uint32_t)INT32_MAX)     // Outside of my range!
     GEN_ERROR("Value too large for type!");
@@ -3143,7 +3013,7 @@
     break;
 
   case 5:
-#line 1113 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1002 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   if ((yyvsp[0].UInt64Val) > (uint64_t)INT64_MAX)     // Outside of my range!
     GEN_ERROR("Value too large for type!");
@@ -3153,137 +3023,137 @@
     break;
 
   case 39:
-#line 1130 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1019 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_EQ; ;}
     break;
 
   case 40:
-#line 1130 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1019 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_NE; ;}
     break;
 
   case 41:
-#line 1131 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1020 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_SLT; ;}
     break;
 
   case 42:
-#line 1131 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1020 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_SGT; ;}
     break;
 
   case 43:
-#line 1132 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1021 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_SLE; ;}
     break;
 
   case 44:
-#line 1132 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1021 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_SGE; ;}
     break;
 
   case 45:
-#line 1133 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1022 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_ULT; ;}
     break;
 
   case 46:
-#line 1133 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1022 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_UGT; ;}
     break;
 
   case 47:
-#line 1134 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1023 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_ULE; ;}
     break;
 
   case 48:
-#line 1134 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1023 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_UGE; ;}
     break;
 
   case 49:
-#line 1138 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1027 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OEQ; ;}
     break;
 
   case 50:
-#line 1138 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1027 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_ONE; ;}
     break;
 
   case 51:
-#line 1139 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1028 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OLT; ;}
     break;
 
   case 52:
-#line 1139 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1028 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OGT; ;}
     break;
 
   case 53:
-#line 1140 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1029 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OLE; ;}
     break;
 
   case 54:
-#line 1140 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1029 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OGE; ;}
     break;
 
   case 55:
-#line 1141 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1030 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_ORD; ;}
     break;
 
   case 56:
-#line 1141 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1030 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UNO; ;}
     break;
 
   case 57:
-#line 1142 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1031 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UEQ; ;}
     break;
 
   case 58:
-#line 1142 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1031 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UNE; ;}
     break;
 
   case 59:
-#line 1143 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1032 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_ULT; ;}
     break;
 
   case 60:
-#line 1143 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1032 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UGT; ;}
     break;
 
   case 61:
-#line 1144 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1033 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_ULE; ;}
     break;
 
   case 62:
-#line 1144 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1033 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UGE; ;}
     break;
 
   case 63:
-#line 1145 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1034 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_TRUE; ;}
     break;
 
   case 64:
-#line 1146 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1035 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_FALSE; ;}
     break;
 
   case 77:
-#line 1157 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1046 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.StrVal) = (yyvsp[-1].StrVal);
     CHECK_FOR_ERROR
@@ -3291,7 +3161,7 @@
     break;
 
   case 78:
-#line 1161 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1050 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.StrVal) = 0;
     CHECK_FOR_ERROR
@@ -3299,82 +3169,82 @@
     break;
 
   case 79:
-#line 1166 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1055 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
     break;
 
   case 80:
-#line 1167 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1056 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}
     break;
 
   case 81:
-#line 1168 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1057 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
     break;
 
   case 82:
-#line 1169 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1058 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::AppendingLinkage; ;}
     break;
 
   case 83:
-#line 1170 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1059 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}
     break;
 
   case 84:
-#line 1171 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1060 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}
     break;
 
   case 85:
-#line 1172 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1061 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}
     break;
 
   case 86:
-#line 1173 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1062 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
     break;
 
   case 87:
-#line 1175 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1064 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::C; ;}
     break;
 
   case 88:
-#line 1176 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1065 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::C; ;}
     break;
 
   case 89:
-#line 1177 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1066 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::CSRet; ;}
     break;
 
   case 90:
-#line 1178 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1067 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::Fast; ;}
     break;
 
   case 91:
-#line 1179 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1068 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::Cold; ;}
     break;
 
   case 92:
-#line 1180 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1069 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::X86_StdCall; ;}
     break;
 
   case 93:
-#line 1181 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1070 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::X86_FastCall; ;}
     break;
 
   case 94:
-#line 1182 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1071 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
                    if ((unsigned)(yyvsp[0].UInt64Val) != (yyvsp[0].UInt64Val))
                      GEN_ERROR("Calling conv too large!");
@@ -3384,12 +3254,12 @@
     break;
 
   case 95:
-#line 1191 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1080 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = 0; ;}
     break;
 
   case 96:
-#line 1192 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1081 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.UIntVal) = (yyvsp[0].UInt64Val);
   if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
@@ -3399,12 +3269,12 @@
     break;
 
   case 97:
-#line 1198 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1087 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = 0; ;}
     break;
 
   case 98:
-#line 1199 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1088 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.UIntVal) = (yyvsp[0].UInt64Val);
   if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
@@ -3414,7 +3284,7 @@
     break;
 
   case 99:
-#line 1207 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1096 "/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] == '\\')
@@ -3425,27 +3295,27 @@
     break;
 
   case 100:
-#line 1215 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1104 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.StrVal) = 0; ;}
     break;
 
   case 101:
-#line 1216 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1105 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.StrVal) = (yyvsp[0].StrVal); ;}
     break;
 
   case 102:
-#line 1221 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1110 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {;}
     break;
 
   case 103:
-#line 1222 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1111 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {;}
     break;
 
   case 104:
-#line 1223 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1112 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV->setSection((yyvsp[0].StrVal));
     free((yyvsp[0].StrVal));
@@ -3454,7 +3324,7 @@
     break;
 
   case 105:
-#line 1228 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1117 "/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!");
@@ -3464,17 +3334,17 @@
     break;
 
   case 107:
-#line 1242 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1131 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.TypeVal) = new PATypeHolder((yyvsp[0].PrimType)); ;}
     break;
 
   case 109:
-#line 1243 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1132 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.TypeVal) = new PATypeHolder((yyvsp[0].PrimType)); ;}
     break;
 
   case 110:
-#line 1245 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1134 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -3484,7 +3354,7 @@
     break;
 
   case 124:
-#line 1257 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1146 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeVal) = new PATypeHolder(OpaqueType::get());
     CHECK_FOR_ERROR
@@ -3492,7 +3362,7 @@
     break;
 
   case 125:
-#line 1261 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1150 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeVal) = new PATypeHolder((yyvsp[0].PrimType));
     CHECK_FOR_ERROR
@@ -3500,7 +3370,7 @@
     break;
 
   case 126:
-#line 1265 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1154 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {            // Named types are also simple types...
   const Type* tmp = getTypeVal((yyvsp[0].ValIDVal));
   CHECK_FOR_ERROR
@@ -3509,7 +3379,7 @@
     break;
 
   case 127:
-#line 1273 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1162 "/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
@@ -3521,7 +3391,7 @@
     break;
 
   case 128:
-#line 1281 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1170 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {           // Function derived type?
     std::vector<const Type*> Params;
     for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[-1].TypeList)->begin(),
@@ -3538,7 +3408,7 @@
     break;
 
   case 129:
-#line 1294 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1183 "/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);
@@ -3547,7 +3417,7 @@
     break;
 
   case 130:
-#line 1299 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1188 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {          // Packed array type?
      const llvm::Type* ElemTy = (yyvsp[-1].TypeVal)->get();
      if ((unsigned)(yyvsp[-3].UInt64Val) != (yyvsp[-3].UInt64Val))
@@ -3563,7 +3433,7 @@
     break;
 
   case 131:
-#line 1311 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1200 "/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(),
@@ -3577,7 +3447,7 @@
     break;
 
   case 132:
-#line 1321 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1210 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                                  // Empty structure type?
     (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>()));
     CHECK_FOR_ERROR
@@ -3585,7 +3455,7 @@
     break;
 
   case 133:
-#line 1325 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1214 "/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");
@@ -3596,7 +3466,7 @@
     break;
 
   case 134:
-#line 1336 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1225 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeList) = new std::list<PATypeHolder>();
     (yyval.TypeList)->push_back(*(yyvsp[0].TypeVal)); delete (yyvsp[0].TypeVal);
@@ -3605,7 +3475,7 @@
     break;
 
   case 135:
-#line 1341 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1230 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.TypeList)=(yyvsp[-2].TypeList))->push_back(*(yyvsp[0].TypeVal)); delete (yyvsp[0].TypeVal);
     CHECK_FOR_ERROR
@@ -3613,7 +3483,7 @@
     break;
 
   case 137:
-#line 1348 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1237 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.TypeList)=(yyvsp[-2].TypeList))->push_back(Type::VoidTy);
     CHECK_FOR_ERROR
@@ -3621,7 +3491,7 @@
     break;
 
   case 138:
-#line 1352 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1241 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.TypeList) = new std::list<PATypeHolder>())->push_back(Type::VoidTy);
     CHECK_FOR_ERROR
@@ -3629,7 +3499,7 @@
     break;
 
   case 139:
-#line 1356 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1245 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeList) = new std::list<PATypeHolder>();
     CHECK_FOR_ERROR
@@ -3637,7 +3507,7 @@
     break;
 
   case 140:
-#line 1367 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1256 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized arr
     const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[-3].TypeVal)->get());
     if (ATy == 0)
@@ -3667,7 +3537,7 @@
     break;
 
   case 141:
-#line 1393 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1282 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[-2].TypeVal)->get());
     if (ATy == 0)
@@ -3685,7 +3555,7 @@
     break;
 
   case 142:
-#line 1407 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1296 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[-2].TypeVal)->get());
     if (ATy == 0)
@@ -3719,7 +3589,7 @@
     break;
 
   case 143:
-#line 1437 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1326 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized arr
     const PackedType *PTy = dyn_cast<PackedType>((yyvsp[-3].TypeVal)->get());
     if (PTy == 0)
@@ -3749,7 +3619,7 @@
     break;
 
   case 144:
-#line 1463 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1352 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const StructType *STy = dyn_cast<StructType>((yyvsp[-3].TypeVal)->get());
     if (STy == 0)
@@ -3774,7 +3644,7 @@
     break;
 
   case 145:
-#line 1484 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1373 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const StructType *STy = dyn_cast<StructType>((yyvsp[-2].TypeVal)->get());
     if (STy == 0)
@@ -3791,7 +3661,7 @@
     break;
 
   case 146:
-#line 1497 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1386 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const PointerType *PTy = dyn_cast<PointerType>((yyvsp[-1].TypeVal)->get());
     if (PTy == 0)
@@ -3805,7 +3675,7 @@
     break;
 
   case 147:
-#line 1507 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1396 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ConstVal) = UndefValue::get((yyvsp[-1].TypeVal)->get());
     delete (yyvsp[-1].TypeVal);
@@ -3814,7 +3684,7 @@
     break;
 
   case 148:
-#line 1512 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1401 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const PointerType *Ty = dyn_cast<PointerType>((yyvsp[-1].TypeVal)->get());
     if (Ty == 0)
@@ -3879,7 +3749,7 @@
     break;
 
   case 149:
-#line 1573 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1462 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-1].TypeVal)->get() != (yyvsp[0].ConstVal)->getType())
       GEN_ERROR("Mismatched types for constant expression!");
@@ -3890,7 +3760,7 @@
     break;
 
   case 150:
-#line 1580 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1469 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const Type *Ty = (yyvsp[-1].TypeVal)->get();
     if (isa<FunctionType>(Ty) || Ty == Type::LabelTy || isa<OpaqueType>(Ty))
@@ -3902,7 +3772,7 @@
     break;
 
   case 151:
-#line 1588 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1477 "/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!");
@@ -3912,7 +3782,7 @@
     break;
 
   case 152:
-#line 1594 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1483 "/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!");
@@ -3922,7 +3792,7 @@
     break;
 
   case 153:
-#line 1600 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1489 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                      // Boolean constants
     (yyval.ConstVal) = ConstantBool::getTrue();
     CHECK_FOR_ERROR
@@ -3930,7 +3800,7 @@
     break;
 
   case 154:
-#line 1604 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1493 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                     // Boolean constants
     (yyval.ConstVal) = ConstantBool::getFalse();
     CHECK_FOR_ERROR
@@ -3938,7 +3808,7 @@
     break;
 
   case 155:
-#line 1608 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1497 "/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!!");
@@ -3948,7 +3818,7 @@
     break;
 
   case 156:
-#line 1616 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1505 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     Constant *Val = (yyvsp[-3].ConstVal);
     const Type *Ty = (yyvsp[-1].TypeVal)->get();
@@ -3964,7 +3834,7 @@
     break;
 
   case 157:
-#line 1628 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1517 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!isa<PointerType>((yyvsp[-2].ConstVal)->getType()))
       GEN_ERROR("GetElementPtr requires a pointer operand!");
@@ -3989,7 +3859,7 @@
     break;
 
   case 158:
-#line 1649 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1538 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-5].ConstVal)->getType() != Type::BoolTy)
       GEN_ERROR("Select condition must be of boolean type!");
@@ -4001,7 +3871,7 @@
     break;
 
   case 159:
-#line 1657 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1546 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("Binary operator types must match!");
@@ -4011,7 +3881,7 @@
     break;
 
   case 160:
-#line 1663 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1552 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("Logical operator types must match!");
@@ -4026,7 +3896,7 @@
     break;
 
   case 161:
-#line 1674 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1563 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("setcc operand types must match!");
@@ -4036,7 +3906,7 @@
     break;
 
   case 162:
-#line 1680 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1569 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("icmp operand types must match!");
@@ -4045,7 +3915,7 @@
     break;
 
   case 163:
-#line 1685 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1574 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("fcmp operand types must match!");
@@ -4054,7 +3924,7 @@
     break;
 
   case 164:
-#line 1690 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1579 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-1].ConstVal)->getType() != Type::UByteTy)
       GEN_ERROR("Shift count for shift constant must be unsigned byte!");
@@ -4067,7 +3937,7 @@
     break;
 
   case 165:
-#line 1699 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1588 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ExtractElementInst::isValidOperands((yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
       GEN_ERROR("Invalid extractelement operands!");
@@ -4077,7 +3947,7 @@
     break;
 
   case 166:
-#line 1705 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1594 "/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!");
@@ -4087,7 +3957,7 @@
     break;
 
   case 167:
-#line 1711 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1600 "/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!");
@@ -4097,7 +3967,7 @@
     break;
 
   case 168:
-#line 1720 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1609 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.ConstVector) = (yyvsp[-2].ConstVector))->push_back((yyvsp[0].ConstVal));
     CHECK_FOR_ERROR
@@ -4105,7 +3975,7 @@
     break;
 
   case 169:
-#line 1724 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1613 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ConstVector) = new std::vector<Constant*>();
     (yyval.ConstVector)->push_back((yyvsp[0].ConstVal));
@@ -4114,17 +3984,17 @@
     break;
 
   case 170:
-#line 1732 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1621 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.BoolVal) = false; ;}
     break;
 
   case 171:
-#line 1732 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1621 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.BoolVal) = true; ;}
     break;
 
   case 172:
-#line 1742 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1631 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.ModuleVal) = ParserResult = (yyvsp[0].ModuleVal);
   CurModule.ModuleDone();
@@ -4133,7 +4003,7 @@
     break;
 
   case 173:
-#line 1750 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1639 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ModuleVal) = (yyvsp[-1].ModuleVal);
     CurFun.FunctionDone();
@@ -4142,7 +4012,7 @@
     break;
 
   case 174:
-#line 1755 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1644 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ModuleVal) = (yyvsp[-1].ModuleVal);
     CHECK_FOR_ERROR
@@ -4150,7 +4020,7 @@
     break;
 
   case 175:
-#line 1759 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1648 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ModuleVal) = (yyvsp[-3].ModuleVal);
     CHECK_FOR_ERROR
@@ -4158,7 +4028,7 @@
     break;
 
   case 176:
-#line 1763 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1652 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ModuleVal) = (yyvsp[-1].ModuleVal);
     CHECK_FOR_ERROR
@@ -4166,7 +4036,7 @@
     break;
 
   case 177:
-#line 1767 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1656 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ModuleVal) = CurModule.CurrentModule;
     // Emit an error if there are any unresolved types left.
@@ -4183,7 +4053,7 @@
     break;
 
   case 178:
-#line 1782 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1671 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     // Eagerly resolve types.  This is not an optimization, this is a
     // requirement that is due to the fact that we could have this:
@@ -4209,21 +4079,21 @@
     break;
 
   case 179:
-#line 1804 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1693 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {       // Function prototypes can be in const pool
     CHECK_FOR_ERROR
   ;}
     break;
 
   case 180:
-#line 1807 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1696 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {  // Asm blocks can be in the const pool
     CHECK_FOR_ERROR
   ;}
     break;
 
   case 181:
-#line 1810 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1699 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[0].ConstVal) == 0) 
       GEN_ERROR("Global value initializer is not a constant!");
@@ -4233,14 +4103,14 @@
     break;
 
   case 182:
-#line 1815 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1704 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
   ;}
     break;
 
   case 183:
-#line 1818 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1707 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = ParseGlobalVariable((yyvsp[-3].StrVal), GlobalValue::ExternalLinkage, (yyvsp[-1].BoolVal), *(yyvsp[0].TypeVal), 0);
     CHECK_FOR_ERROR
@@ -4249,7 +4119,7 @@
     break;
 
   case 184:
-#line 1822 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1711 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
     CHECK_FOR_ERROR
@@ -4257,7 +4127,7 @@
     break;
 
   case 185:
-#line 1826 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1715 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = ParseGlobalVariable((yyvsp[-3].StrVal), GlobalValue::DLLImportLinkage, (yyvsp[-1].BoolVal), *(yyvsp[0].TypeVal), 0);
     CHECK_FOR_ERROR
@@ -4266,7 +4136,7 @@
     break;
 
   case 186:
-#line 1830 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1719 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
     CHECK_FOR_ERROR
@@ -4274,7 +4144,7 @@
     break;
 
   case 187:
-#line 1834 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1723 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 
       ParseGlobalVariable((yyvsp[-3].StrVal), GlobalValue::ExternalWeakLinkage, (yyvsp[-1].BoolVal), *(yyvsp[0].TypeVal), 0);
@@ -4284,7 +4154,7 @@
     break;
 
   case 188:
-#line 1839 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1728 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
     CHECK_FOR_ERROR
@@ -4292,27 +4162,27 @@
     break;
 
   case 189:
-#line 1843 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1732 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { 
     CHECK_FOR_ERROR
   ;}
     break;
 
   case 190:
-#line 1846 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1735 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CHECK_FOR_ERROR
   ;}
     break;
 
   case 191:
-#line 1849 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1738 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { 
   ;}
     break;
 
   case 192:
-#line 1853 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1742 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm();
   char *EndStr = UnEscapeLexed((yyvsp[0].StrVal), true);
@@ -4328,17 +4198,17 @@
     break;
 
   case 193:
-#line 1866 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1755 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Endianness) = Module::BigEndian; ;}
     break;
 
   case 194:
-#line 1867 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1756 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Endianness) = Module::LittleEndian; ;}
     break;
 
   case 195:
-#line 1869 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1758 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurModule.CurrentModule->setEndianness((yyvsp[0].Endianness));
     CHECK_FOR_ERROR
@@ -4346,7 +4216,7 @@
     break;
 
   case 196:
-#line 1873 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1762 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[0].UInt64Val) == 32)
       CurModule.CurrentModule->setPointerSize(Module::Pointer32);
@@ -4359,7 +4229,7 @@
     break;
 
   case 197:
-#line 1882 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1771 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurModule.CurrentModule->setTargetTriple((yyvsp[0].StrVal));
     free((yyvsp[0].StrVal));
@@ -4367,7 +4237,7 @@
     break;
 
   case 198:
-#line 1886 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1775 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     CurModule.CurrentModule->setDataLayout((yyvsp[0].StrVal));
     free((yyvsp[0].StrVal));
@@ -4375,7 +4245,7 @@
     break;
 
   case 200:
-#line 1893 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1782 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
           CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal));
           free((yyvsp[0].StrVal));
@@ -4384,7 +4254,7 @@
     break;
 
   case 201:
-#line 1898 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1787 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
           CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal));
           free((yyvsp[0].StrVal));
@@ -4393,19 +4263,19 @@
     break;
 
   case 202:
-#line 1903 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1792 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
           CHECK_FOR_ERROR
         ;}
     break;
 
   case 206:
-#line 1913 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1802 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.StrVal) = 0; ;}
     break;
 
   case 207:
-#line 1915 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1804 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   if (*(yyvsp[-1].TypeVal) == Type::VoidTy)
     GEN_ERROR("void typed arguments are invalid!");
@@ -4415,7 +4285,7 @@
     break;
 
   case 208:
-#line 1922 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1811 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = (yyvsp[-2].ArgList);
     (yyvsp[-2].ArgList)->push_back(*(yyvsp[0].ArgVal));
@@ -4425,7 +4295,7 @@
     break;
 
   case 209:
-#line 1928 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1817 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = new std::vector<std::pair<PATypeHolder*,char*> >();
     (yyval.ArgList)->push_back(*(yyvsp[0].ArgVal));
@@ -4435,7 +4305,7 @@
     break;
 
   case 210:
-#line 1935 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1824 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = (yyvsp[0].ArgList);
     CHECK_FOR_ERROR
@@ -4443,7 +4313,7 @@
     break;
 
   case 211:
-#line 1939 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1828 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = (yyvsp[-2].ArgList);
     (yyval.ArgList)->push_back(std::pair<PATypeHolder*,
@@ -4453,7 +4323,7 @@
     break;
 
   case 212:
-#line 1945 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1834 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = new std::vector<std::pair<PATypeHolder*,char*> >();
     (yyval.ArgList)->push_back(std::make_pair(new PATypeHolder(Type::VoidTy), (char*)0));
@@ -4462,7 +4332,7 @@
     break;
 
   case 213:
-#line 1950 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1839 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = 0;
     CHECK_FOR_ERROR
@@ -4470,7 +4340,7 @@
     break;
 
   case 214:
-#line 1956 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1845 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   UnEscapeLexed((yyvsp[-5].StrVal));
   std::string FunctionName((yyvsp[-5].StrVal));
@@ -4567,7 +4437,7 @@
     break;
 
   case 217:
-#line 2052 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1941 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.FunctionVal) = CurFun.CurrentFunction;
 
@@ -4578,7 +4448,7 @@
     break;
 
   case 220:
-#line 2062 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1951 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
   CHECK_FOR_ERROR
@@ -4586,22 +4456,22 @@
     break;
 
   case 222:
-#line 2068 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1957 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { CurFun.Linkage = GlobalValue::DLLImportLinkage; ;}
     break;
 
   case 223:
-#line 2069 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1958 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { CurFun.Linkage = GlobalValue::ExternalWeakLinkage; ;}
     break;
 
   case 224:
-#line 2071 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1960 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { CurFun.isDeclare = true; ;}
     break;
 
   case 225:
-#line 2071 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1960 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.FunctionVal) = CurFun.CurrentFunction;
     CurFun.FunctionDone();
@@ -4610,7 +4480,7 @@
     break;
 
   case 226:
-#line 2081 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1970 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = false;
     CHECK_FOR_ERROR
@@ -4618,7 +4488,7 @@
     break;
 
   case 227:
-#line 2085 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1974 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = true;
     CHECK_FOR_ERROR
@@ -4626,7 +4496,7 @@
     break;
 
   case 228:
-#line 2090 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1979 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {    // A reference to a direct constant
     (yyval.ValIDVal) = ValID::create((yyvsp[0].SInt64Val));
     CHECK_FOR_ERROR
@@ -4634,7 +4504,7 @@
     break;
 
   case 229:
-#line 2094 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1983 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create((yyvsp[0].UInt64Val));
     CHECK_FOR_ERROR
@@ -4642,7 +4512,7 @@
     break;
 
   case 230:
-#line 2098 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1987 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                     // Perhaps it's an FP constant?
     (yyval.ValIDVal) = ValID::create((yyvsp[0].FPVal));
     CHECK_FOR_ERROR
@@ -4650,7 +4520,7 @@
     break;
 
   case 231:
-#line 2102 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1991 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create(ConstantBool::getTrue());
     CHECK_FOR_ERROR
@@ -4658,7 +4528,7 @@
     break;
 
   case 232:
-#line 2106 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1995 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create(ConstantBool::getFalse());
     CHECK_FOR_ERROR
@@ -4666,7 +4536,7 @@
     break;
 
   case 233:
-#line 2110 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1999 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::createNull();
     CHECK_FOR_ERROR
@@ -4674,7 +4544,7 @@
     break;
 
   case 234:
-#line 2114 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2003 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::createUndef();
     CHECK_FOR_ERROR
@@ -4682,7 +4552,7 @@
     break;
 
   case 235:
-#line 2118 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2007 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {     // A vector zero constant.
     (yyval.ValIDVal) = ValID::createZeroInit();
     CHECK_FOR_ERROR
@@ -4690,7 +4560,7 @@
     break;
 
   case 236:
-#line 2122 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2011 "/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(); 
@@ -4719,7 +4589,7 @@
     break;
 
   case 237:
-#line 2147 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2036 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create((yyvsp[0].ConstVal));
     CHECK_FOR_ERROR
@@ -4727,7 +4597,7 @@
     break;
 
   case 238:
-#line 2151 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2040 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     char *End = UnEscapeLexed((yyvsp[-2].StrVal), true);
     std::string AsmStr = std::string((yyvsp[-2].StrVal), End);
@@ -4741,7 +4611,7 @@
     break;
 
   case 239:
-#line 2165 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2054 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {  // Is it an integer reference...?
     (yyval.ValIDVal) = ValID::create((yyvsp[0].SIntVal));
     CHECK_FOR_ERROR
@@ -4749,7 +4619,7 @@
     break;
 
   case 240:
-#line 2169 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2058 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                   // Is it a named reference...?
     (yyval.ValIDVal) = ValID::create((yyvsp[0].StrVal));
     CHECK_FOR_ERROR
@@ -4757,7 +4627,7 @@
     break;
 
   case 243:
-#line 2181 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2070 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValueVal) = getVal(*(yyvsp[-1].TypeVal), (yyvsp[0].ValIDVal)); delete (yyvsp[-1].TypeVal);
     CHECK_FOR_ERROR
@@ -4765,7 +4635,7 @@
     break;
 
   case 244:
-#line 2186 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2075 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
     CHECK_FOR_ERROR
@@ -4773,7 +4643,7 @@
     break;
 
   case 245:
-#line 2190 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2079 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { // Do not allow functions with 0 basic blocks   
     (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
     CHECK_FOR_ERROR
@@ -4781,7 +4651,7 @@
     break;
 
   case 246:
-#line 2199 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2088 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     setValueName((yyvsp[0].TermInstVal), (yyvsp[-1].StrVal));
     CHECK_FOR_ERROR
@@ -4795,7 +4665,7 @@
     break;
 
   case 247:
-#line 2210 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2099 "/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)))
@@ -4808,9 +4678,9 @@
     break;
 
   case 248:
-#line 2219 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2108 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.BasicBlockVal) = CurBB = getBBVal(ValID::create((int)CurFun.NextBBNum++), true);
+    (yyval.BasicBlockVal) = getBBVal(ValID::create((int)CurFun.NextBBNum++), true);
     CHECK_FOR_ERROR
 
     // Make sure to move the basic block to the correct location in the
@@ -4824,9 +4694,9 @@
     break;
 
   case 249:
-#line 2231 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2120 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.BasicBlockVal) = CurBB = getBBVal(ValID::create((yyvsp[0].StrVal)), true);
+    (yyval.BasicBlockVal) = getBBVal(ValID::create((yyvsp[0].StrVal)), true);
     CHECK_FOR_ERROR
 
     // Make sure to move the basic block to the correct location in the
@@ -4840,7 +4710,7 @@
     break;
 
   case 250:
-#line 2244 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2133 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {              // Return with a result...
     (yyval.TermInstVal) = new ReturnInst((yyvsp[0].ValueVal));
     CHECK_FOR_ERROR
@@ -4848,7 +4718,7 @@
     break;
 
   case 251:
-#line 2248 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2137 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                                       // Return with no result...
     (yyval.TermInstVal) = new ReturnInst();
     CHECK_FOR_ERROR
@@ -4856,7 +4726,7 @@
     break;
 
   case 252:
-#line 2252 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2141 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {                         // Unconditional Branch...
     BasicBlock* tmpBB = getBBVal((yyvsp[0].ValIDVal));
     CHECK_FOR_ERROR
@@ -4865,7 +4735,7 @@
     break;
 
   case 253:
-#line 2257 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2146 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {  
     BasicBlock* tmpBBA = getBBVal((yyvsp[-3].ValIDVal));
     CHECK_FOR_ERROR
@@ -4878,7 +4748,7 @@
     break;
 
   case 254:
-#line 2266 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2155 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     Value* tmpVal = getVal((yyvsp[-7].PrimType), (yyvsp[-6].ValIDVal));
     CHECK_FOR_ERROR
@@ -4901,7 +4771,7 @@
     break;
 
   case 255:
-#line 2285 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2174 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     Value* tmpVal = getVal((yyvsp[-6].PrimType), (yyvsp[-5].ValIDVal));
     CHECK_FOR_ERROR
@@ -4914,7 +4784,7 @@
     break;
 
   case 256:
-#line 2295 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2184 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const PointerType *PFTy;
     const FunctionType *Ty;
@@ -4973,7 +4843,7 @@
     break;
 
   case 257:
-#line 2350 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2239 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TermInstVal) = new UnwindInst();
     CHECK_FOR_ERROR
@@ -4981,7 +4851,7 @@
     break;
 
   case 258:
-#line 2354 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2243 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TermInstVal) = new UnreachableInst();
     CHECK_FOR_ERROR
@@ -4989,7 +4859,7 @@
     break;
 
   case 259:
-#line 2361 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2250 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.JumpTable) = (yyvsp[-5].JumpTable);
     Constant *V = cast<Constant>(getValNonImprovising((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));
@@ -5004,7 +4874,7 @@
     break;
 
   case 260:
-#line 2372 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2261 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.JumpTable) = new std::vector<std::pair<Constant*, BasicBlock*> >();
     Constant *V = cast<Constant>(getValNonImprovising((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));
@@ -5020,7 +4890,7 @@
     break;
 
   case 261:
-#line 2385 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2274 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
   // Is this definition named?? if so, assign the name...
   setValueName((yyvsp[0].InstVal), (yyvsp[-1].StrVal));
@@ -5032,7 +4902,7 @@
     break;
 
   case 262:
-#line 2394 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2283 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {    // Used for PHI nodes
     (yyval.PHIList) = new std::list<std::pair<Value*, BasicBlock*> >();
     Value* tmpVal = getVal(*(yyvsp[-5].TypeVal), (yyvsp[-3].ValIDVal));
@@ -5045,7 +4915,7 @@
     break;
 
   case 263:
-#line 2403 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2292 "/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));
@@ -5057,7 +4927,7 @@
     break;
 
   case 264:
-#line 2413 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2302 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {    // Used for call statements, and memory insts...
     (yyval.ValueList) = new std::vector<Value*>();
     (yyval.ValueList)->push_back((yyvsp[0].ValueVal));
@@ -5065,7 +4935,7 @@
     break;
 
   case 265:
-#line 2417 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2306 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValueList) = (yyvsp[-2].ValueList);
     (yyvsp[-2].ValueList)->push_back((yyvsp[0].ValueVal));
@@ -5074,12 +4944,12 @@
     break;
 
   case 267:
-#line 2424 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2313 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ValueList) = 0; ;}
     break;
 
   case 268:
-#line 2426 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2315 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = true;
     CHECK_FOR_ERROR
@@ -5087,7 +4957,7 @@
     break;
 
   case 269:
-#line 2430 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2319 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = false;
     CHECK_FOR_ERROR
@@ -5095,7 +4965,7 @@
     break;
 
   case 270:
-#line 2435 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2324 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!(*(yyvsp[-3].TypeVal))->isInteger() && !(*(yyvsp[-3].TypeVal))->isFloatingPoint() && 
         !isa<PackedType>((*(yyvsp[-3].TypeVal)).get()))
@@ -5118,7 +4988,7 @@
     break;
 
   case 271:
-#line 2454 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2343 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!(*(yyvsp[-3].TypeVal))->isIntegral()) {
       if (!isa<PackedType>((yyvsp[-3].TypeVal)->get()) ||
@@ -5137,7 +5007,7 @@
     break;
 
   case 272:
-#line 2469 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2358 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if(isa<PackedType>((*(yyvsp[-3].TypeVal)).get())) {
       GEN_ERROR(
@@ -5155,7 +5025,7 @@
     break;
 
   case 273:
-#line 2483 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2372 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (isa<PackedType>((*(yyvsp[-3].TypeVal)).get()))
       GEN_ERROR("Packed types not supported by icmp instruction");
@@ -5170,7 +5040,7 @@
     break;
 
   case 274:
-#line 2494 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2383 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (isa<PackedType>((*(yyvsp[-3].TypeVal)).get()))
       GEN_ERROR("Packed types not supported by fcmp instruction");
@@ -5185,7 +5055,7 @@
     break;
 
   case 275:
-#line 2505 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2394 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     llvm_cerr << "WARNING: Use of eliminated 'not' instruction:"
               << " Replacing with 'xor'.\n";
@@ -5202,7 +5072,7 @@
     break;
 
   case 276:
-#line 2518 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2407 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[0].ValueVal)->getType() != Type::UByteTy)
       GEN_ERROR("Shift amount must be ubyte!");
@@ -5215,7 +5085,7 @@
     break;
 
   case 277:
-#line 2527 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2416 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     Value* Val = (yyvsp[-2].ValueVal);
     const Type* Ty = (yyvsp[0].TypeVal)->get();
@@ -5230,7 +5100,7 @@
     break;
 
   case 278:
-#line 2538 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2427 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-4].ValueVal)->getType() != Type::BoolTy)
       GEN_ERROR("select condition must be boolean!");
@@ -5242,7 +5112,7 @@
     break;
 
   case 279:
-#line 2546 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2435 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     NewVarArgs = true;
     (yyval.InstVal) = new VAArgInst((yyvsp[-2].ValueVal), *(yyvsp[0].TypeVal));
@@ -5252,58 +5122,7 @@
     break;
 
   case 280:
-#line 2552 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    {
-    ObsoleteVarArgs = true;
-    const Type* ArgTy = (yyvsp[-2].ValueVal)->getType();
-    Function* NF = CurModule.CurrentModule->
-      getOrInsertFunction("llvm.va_copy", ArgTy, ArgTy, (Type *)0);
-
-    //b = vaarg a, t -> 
-    //foo = alloca 1 of t
-    //bar = vacopy a 
-    //store bar -> foo
-    //b = vaarg foo, t
-    AllocaInst* foo = new AllocaInst(ArgTy, 0, "vaarg.fix");
-    CurBB->getInstList().push_back(foo);
-    CallInst* bar = new CallInst(NF, (yyvsp[-2].ValueVal));
-    CurBB->getInstList().push_back(bar);
-    CurBB->getInstList().push_back(new StoreInst(bar, foo));
-    (yyval.InstVal) = new VAArgInst(foo, *(yyvsp[0].TypeVal));
-    delete (yyvsp[0].TypeVal);
-    CHECK_FOR_ERROR
-  ;}
-    break;
-
-  case 281:
-#line 2572 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    {
-    ObsoleteVarArgs = true;
-    const Type* ArgTy = (yyvsp[-2].ValueVal)->getType();
-    Function* NF = CurModule.CurrentModule->
-      getOrInsertFunction("llvm.va_copy", ArgTy, ArgTy, (Type *)0);
-
-    //b = vanext a, t ->
-    //foo = alloca 1 of t
-    //bar = vacopy a
-    //store bar -> foo
-    //tmp = vaarg foo, t
-    //b = load foo
-    AllocaInst* foo = new AllocaInst(ArgTy, 0, "vanext.fix");
-    CurBB->getInstList().push_back(foo);
-    CallInst* bar = new CallInst(NF, (yyvsp[-2].ValueVal));
-    CurBB->getInstList().push_back(bar);
-    CurBB->getInstList().push_back(new StoreInst(bar, foo));
-    Instruction* tmp = new VAArgInst(foo, *(yyvsp[0].TypeVal));
-    CurBB->getInstList().push_back(tmp);
-    (yyval.InstVal) = new LoadInst(foo);
-    delete (yyvsp[0].TypeVal);
-    CHECK_FOR_ERROR
-  ;}
-    break;
-
-  case 282:
-#line 2595 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2441 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ExtractElementInst::isValidOperands((yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
       GEN_ERROR("Invalid extractelement operands!");
@@ -5312,8 +5131,8 @@
   ;}
     break;
 
-  case 283:
-#line 2601 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 281:
+#line 2447 "/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!");
@@ -5322,8 +5141,8 @@
   ;}
     break;
 
-  case 284:
-#line 2607 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 282:
+#line 2453 "/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!");
@@ -5332,8 +5151,8 @@
   ;}
     break;
 
-  case 285:
-#line 2613 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 283:
+#line 2459 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const Type *Ty = (yyvsp[0].PHIList)->front().first->getType();
     if (!Ty->isFirstClassType())
@@ -5351,8 +5170,8 @@
   ;}
     break;
 
-  case 286:
-#line 2628 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 284:
+#line 2474 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const PointerType *PFTy = 0;
     const FunctionType *Ty = 0;
@@ -5414,48 +5233,48 @@
   ;}
     break;
 
-  case 287:
-#line 2687 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 285:
+#line 2533 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.InstVal) = (yyvsp[0].InstVal);
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 288:
-#line 2694 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 286:
+#line 2540 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { 
     (yyval.ValueList) = (yyvsp[0].ValueList); 
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 289:
-#line 2697 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 287:
+#line 2543 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     { 
     (yyval.ValueList) = new std::vector<Value*>(); 
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 290:
-#line 2702 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 288:
+#line 2548 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = true;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 291:
-#line 2706 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 289:
+#line 2552 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = false;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 292:
-#line 2713 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 290:
+#line 2559 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.InstVal) = new MallocInst(*(yyvsp[-1].TypeVal), 0, (yyvsp[0].UIntVal));
     delete (yyvsp[-1].TypeVal);
@@ -5463,8 +5282,8 @@
   ;}
     break;
 
-  case 293:
-#line 2718 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 291:
+#line 2564 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     Value* tmpVal = getVal((yyvsp[-2].PrimType), (yyvsp[-1].ValIDVal));
     CHECK_FOR_ERROR
@@ -5473,8 +5292,8 @@
   ;}
     break;
 
-  case 294:
-#line 2724 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 292:
+#line 2570 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.InstVal) = new AllocaInst(*(yyvsp[-1].TypeVal), 0, (yyvsp[0].UIntVal));
     delete (yyvsp[-1].TypeVal);
@@ -5482,8 +5301,8 @@
   ;}
     break;
 
-  case 295:
-#line 2729 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 293:
+#line 2575 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     Value* tmpVal = getVal((yyvsp[-2].PrimType), (yyvsp[-1].ValIDVal));
     CHECK_FOR_ERROR
@@ -5492,8 +5311,8 @@
   ;}
     break;
 
-  case 296:
-#line 2735 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 294:
+#line 2581 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!isa<PointerType>((yyvsp[0].ValueVal)->getType()))
       GEN_ERROR("Trying to free nonpointer type " + 
@@ -5503,8 +5322,8 @@
   ;}
     break;
 
-  case 297:
-#line 2743 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 295:
+#line 2589 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!isa<PointerType>((yyvsp[-1].TypeVal)->get()))
       GEN_ERROR("Can't load from nonpointer type: " +
@@ -5519,8 +5338,8 @@
   ;}
     break;
 
-  case 298:
-#line 2755 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 296:
+#line 2601 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     const PointerType *PT = dyn_cast<PointerType>((yyvsp[-1].TypeVal)->get());
     if (!PT)
@@ -5538,8 +5357,8 @@
   ;}
     break;
 
-  case 299:
-#line 2770 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 297:
+#line 2616 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
     {
     if (!isa<PointerType>((yyvsp[-2].TypeVal)->get()))
       GEN_ERROR("getelementptr insn requires pointer operand!");
@@ -5560,7 +5379,7 @@
     }
 
 /* Line 1126 of yacc.c.  */
-#line 5564 "llvmAsmParser.tab.c"
+#line 5383 "llvmAsmParser.tab.c"
 
   yyvsp -= yylen;
   yyssp -= yylen;
@@ -5828,7 +5647,7 @@
 }
 
 
-#line 2785 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2631 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
 
 
 void llvm::GenerateError(const std::string &message, int LineNo) {


Index: llvm/lib/AsmParser/llvmAsmParser.h.cvs
diff -u llvm/lib/AsmParser/llvmAsmParser.h.cvs:1.26 llvm/lib/AsmParser/llvmAsmParser.h.cvs:1.27
--- llvm/lib/AsmParser/llvmAsmParser.h.cvs:1.26	Sun Dec  3 23:24:24 2006
+++ llvm/lib/AsmParser/llvmAsmParser.h.cvs	Tue Dec  5 17:29:42 2006
@@ -170,9 +170,7 @@
      VAARG = 396,
      EXTRACTELEMENT = 397,
      INSERTELEMENT = 398,
-     SHUFFLEVECTOR = 399,
-     VAARG_old = 400,
-     VANEXT_old = 401
+     SHUFFLEVECTOR = 399
    };
 #endif
 /* Tokens.  */
@@ -318,14 +316,12 @@
 #define EXTRACTELEMENT 397
 #define INSERTELEMENT 398
 #define SHUFFLEVECTOR 399
-#define VAARG_old 400
-#define VANEXT_old 401
 
 
 
 
 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 967 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 857 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
 typedef union YYSTYPE {
   llvm::Module                           *ModuleVal;
   llvm::Function                         *FunctionVal;
@@ -369,7 +365,7 @@
   llvm::FCmpInst::Predicate         FPredicate;
 } YYSTYPE;
 /* Line 1447 of yacc.c.  */
-#line 373 "llvmAsmParser.tab.h"
+#line 369 "llvmAsmParser.tab.h"
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 # define YYSTYPE_IS_TRIVIAL 1


Index: llvm/lib/AsmParser/llvmAsmParser.y.cvs
diff -u llvm/lib/AsmParser/llvmAsmParser.y.cvs:1.34 llvm/lib/AsmParser/llvmAsmParser.y.cvs:1.35
--- llvm/lib/AsmParser/llvmAsmParser.y.cvs:1.34	Tue Dec  5 13:16:11 2006
+++ llvm/lib/AsmParser/llvmAsmParser.y.cvs	Tue Dec  5 17:29:42 2006
@@ -64,9 +64,7 @@
 
 #define YYERROR_VERBOSE 1
 
-static bool ObsoleteVarArgs;
 static bool NewVarArgs;
-static BasicBlock *CurBB;
 static GlobalVariable *CurGV;
 
 
@@ -811,7 +809,6 @@
 static Module* RunParser(Module * M) {
 
   llvmAsmlineno = 1;      // Reset the current line number...
-  ObsoleteVarArgs = false;
   NewVarArgs = false;
   CurModule.CurrentModule = M;
 
@@ -830,113 +827,6 @@
   Module *Result = ParserResult;
   ParserResult = 0;
 
-  //Not all functions use vaarg, so make a second check for ObsoleteVarArgs
-  {
-    Function* F;
-    if ((F = Result->getNamedFunction("llvm.va_start"))
-        && F->getFunctionType()->getNumParams() == 0)
-      ObsoleteVarArgs = true;
-    if((F = Result->getNamedFunction("llvm.va_copy"))
-       && F->getFunctionType()->getNumParams() == 1)
-      ObsoleteVarArgs = true;
-  }
-
-  if (ObsoleteVarArgs && NewVarArgs) {
-    GenerateError(
-      "This file is corrupt: it uses both new and old style varargs");
-    return 0;
-  }
-
-  if(ObsoleteVarArgs) {
-    if(Function* F = Result->getNamedFunction("llvm.va_start")) {
-      if (F->arg_size() != 0) {
-        GenerateError("Obsolete va_start takes 0 argument!");
-        return 0;
-      }
-      
-      //foo = va_start()
-      // ->
-      //bar = alloca typeof(foo)
-      //va_start(bar)
-      //foo = load bar
-
-      const Type* RetTy = Type::getPrimitiveType(Type::VoidTyID);
-      const Type* ArgTy = F->getFunctionType()->getReturnType();
-      const Type* ArgTyPtr = PointerType::get(ArgTy);
-      Function* NF = Result->getOrInsertFunction("llvm.va_start", 
-                                                 RetTy, ArgTyPtr, (Type *)0);
-
-      while (!F->use_empty()) {
-        CallInst* CI = cast<CallInst>(F->use_back());
-        AllocaInst* bar = new AllocaInst(ArgTy, 0, "vastart.fix.1", CI);
-        new CallInst(NF, bar, "", CI);
-        Value* foo = new LoadInst(bar, "vastart.fix.2", CI);
-        CI->replaceAllUsesWith(foo);
-        CI->getParent()->getInstList().erase(CI);
-      }
-      Result->getFunctionList().erase(F);
-    }
-    
-    if(Function* F = Result->getNamedFunction("llvm.va_end")) {
-      if(F->arg_size() != 1) {
-        GenerateError("Obsolete va_end takes 1 argument!");
-        return 0;
-      }
-
-      //vaend foo
-      // ->
-      //bar = alloca 1 of typeof(foo)
-      //vaend bar
-      const Type* RetTy = Type::getPrimitiveType(Type::VoidTyID);
-      const Type* ArgTy = F->getFunctionType()->getParamType(0);
-      const Type* ArgTyPtr = PointerType::get(ArgTy);
-      Function* NF = Result->getOrInsertFunction("llvm.va_end", 
-                                                 RetTy, ArgTyPtr, (Type *)0);
-
-      while (!F->use_empty()) {
-        CallInst* CI = cast<CallInst>(F->use_back());
-        AllocaInst* bar = new AllocaInst(ArgTy, 0, "vaend.fix.1", CI);
-        new StoreInst(CI->getOperand(1), bar, CI);
-        new CallInst(NF, bar, "", CI);
-        CI->getParent()->getInstList().erase(CI);
-      }
-      Result->getFunctionList().erase(F);
-    }
-
-    if(Function* F = Result->getNamedFunction("llvm.va_copy")) {
-      if(F->arg_size() != 1) {
-        GenerateError("Obsolete va_copy takes 1 argument!");
-        return 0;
-      }
-      //foo = vacopy(bar)
-      // ->
-      //a = alloca 1 of typeof(foo)
-      //b = alloca 1 of typeof(foo)
-      //store bar -> b
-      //vacopy(a, b)
-      //foo = load a
-      
-      const Type* RetTy = Type::getPrimitiveType(Type::VoidTyID);
-      const Type* ArgTy = F->getFunctionType()->getReturnType();
-      const Type* ArgTyPtr = PointerType::get(ArgTy);
-      Function* NF = Result->getOrInsertFunction("llvm.va_copy", 
-                                                 RetTy, ArgTyPtr, ArgTyPtr,
-                                                 (Type *)0);
-
-      while (!F->use_empty()) {
-        CallInst* CI = cast<CallInst>(F->use_back());
-        AllocaInst* a = new AllocaInst(ArgTy, 0, "vacopy.fix.1", CI);
-        AllocaInst* b = new AllocaInst(ArgTy, 0, "vacopy.fix.2", CI);
-        new StoreInst(CI->getOperand(1), b, CI);
-        new CallInst(NF, a, b, "", CI);
-        Value* foo = new LoadInst(a, "vacopy.fix.3", CI);
-        CI->replaceAllUsesWith(foo);
-        CI->getParent()->getInstList().erase(CI);
-      }
-      Result->getFunctionList().erase(F);
-    }
-  }
-
   return Result;
 }
 
@@ -1092,7 +982,6 @@
 %type  <OtherOpVal> ShiftOps
 %token <OtherOpVal> PHI_TOK SELECT SHL LSHR ASHR VAARG
 %token <OtherOpVal> EXTRACTELEMENT INSERTELEMENT SHUFFLEVECTOR
-%token VAARG_old VANEXT_old //OBSOLETE
 
 
 %start Module
@@ -2217,7 +2106,7 @@
     CHECK_FOR_ERROR
   }
   | /* empty */ {
-    $$ = CurBB = getBBVal(ValID::create((int)CurFun.NextBBNum++), true);
+    $$ = getBBVal(ValID::create((int)CurFun.NextBBNum++), true);
     CHECK_FOR_ERROR
 
     // Make sure to move the basic block to the correct location in the
@@ -2229,7 +2118,7 @@
     CHECK_FOR_ERROR
   }
   | LABELSTR {
-    $$ = CurBB = getBBVal(ValID::create($1), true);
+    $$ = getBBVal(ValID::create($1), true);
     CHECK_FOR_ERROR
 
     // Make sure to move the basic block to the correct location in the
@@ -2549,49 +2438,6 @@
     delete $4;
     CHECK_FOR_ERROR
   }
-  | VAARG_old ResolvedVal ',' Types {
-    ObsoleteVarArgs = true;
-    const Type* ArgTy = $2->getType();
-    Function* NF = CurModule.CurrentModule->
-      getOrInsertFunction("llvm.va_copy", ArgTy, ArgTy, (Type *)0);
-
-    //b = vaarg a, t -> 
-    //foo = alloca 1 of t
-    //bar = vacopy a 
-    //store bar -> foo
-    //b = vaarg foo, t
-    AllocaInst* foo = new AllocaInst(ArgTy, 0, "vaarg.fix");
-    CurBB->getInstList().push_back(foo);
-    CallInst* bar = new CallInst(NF, $2);
-    CurBB->getInstList().push_back(bar);
-    CurBB->getInstList().push_back(new StoreInst(bar, foo));
-    $$ = new VAArgInst(foo, *$4);
-    delete $4;
-    CHECK_FOR_ERROR
-  }
-  | VANEXT_old ResolvedVal ',' Types {
-    ObsoleteVarArgs = true;
-    const Type* ArgTy = $2->getType();
-    Function* NF = CurModule.CurrentModule->
-      getOrInsertFunction("llvm.va_copy", ArgTy, ArgTy, (Type *)0);
-
-    //b = vanext a, t ->
-    //foo = alloca 1 of t
-    //bar = vacopy a
-    //store bar -> foo
-    //tmp = vaarg foo, t
-    //b = load foo
-    AllocaInst* foo = new AllocaInst(ArgTy, 0, "vanext.fix");
-    CurBB->getInstList().push_back(foo);
-    CallInst* bar = new CallInst(NF, $2);
-    CurBB->getInstList().push_back(bar);
-    CurBB->getInstList().push_back(new StoreInst(bar, foo));
-    Instruction* tmp = new VAArgInst(foo, *$4);
-    CurBB->getInstList().push_back(tmp);
-    $$ = new LoadInst(foo);
-    delete $4;
-    CHECK_FOR_ERROR
-  }
   | EXTRACTELEMENT ResolvedVal ',' ResolvedVal {
     if (!ExtractElementInst::isValidOperands($2, $4))
       GEN_ERROR("Invalid extractelement operands!");






More information about the llvm-commits mailing list