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

Reid Spencer reid at x10sys.com
Sun Apr 8 18:56:23 PDT 2007



Changes in directory llvm/lib/AsmParser:

Lexer.cpp.cvs updated: 1.36 -> 1.37
Lexer.l.cvs updated: 1.30 -> 1.31
llvmAsmParser.cpp.cvs updated: 1.80 -> 1.81
llvmAsmParser.h.cvs updated: 1.62 -> 1.63
llvmAsmParser.y.cvs updated: 1.81 -> 1.82
---
Log message:

Regenerate

---
Diffs of the changes:  (+2124 -2170)

 Lexer.cpp.cvs         | 1385 ++++++++++++++--------------
 Lexer.l.cvs           |    1 
 llvmAsmParser.cpp.cvs | 2436 ++++++++++++++++++++++++--------------------------
 llvmAsmParser.h.cvs   |  458 ++++-----
 llvmAsmParser.y.cvs   |   14 
 5 files changed, 2124 insertions(+), 2170 deletions(-)


Index: llvm/lib/AsmParser/Lexer.cpp.cvs
diff -u llvm/lib/AsmParser/Lexer.cpp.cvs:1.36 llvm/lib/AsmParser/Lexer.cpp.cvs:1.37
--- llvm/lib/AsmParser/Lexer.cpp.cvs:1.36	Thu Mar 29 13:50:01 2007
+++ llvm/lib/AsmParser/Lexer.cpp.cvs	Sun Apr  8 20:56:05 2007
@@ -20,7 +20,7 @@
 /* A lexical scanner generated by flex*/
 
 /* Scanner skeleton version:
- * $Header: /var/cvs/llvm/llvm/lib/AsmParser/Lexer.cpp.cvs,v 1.36 2007/03/29 18:50:01 reid Exp $
+ * $Header: /var/cvs/llvm/llvm/lib/AsmParser/Lexer.cpp.cvs,v 1.37 2007/04/09 01:56:05 reid Exp $
  */
 
 #define FLEX_SCANNER
@@ -317,37 +317,37 @@
 	*yy_cp = '\0'; \
 	yy_c_buf_p = yy_cp;
 
-#define YY_NUM_RULES 136
-#define YY_END_OF_BUFFER 137
-static yyconst short int yy_acclist[217] =
+#define YY_NUM_RULES 135
+#define YY_END_OF_BUFFER 136
+static yyconst short int yy_acclist[216] =
     {   0,
-      137,  135,  136,  134,  135,  136,  134,  136,  135,  136,
-      135,  136,  135,  136,  135,  136,  135,  136,  135,  136,
-      127,  135,  136,  127,  135,  136,    1,  135,  136,  135,
-      136,  135,  136,  135,  136,  135,  136,  135,  136,  135,
-      136,  135,  136,  135,  136,  135,  136,  135,  136,  135,
-      136,  135,  136,  135,  136,  135,  136,  135,  136,  135,
-      136,  135,  136,  135,  136,  135,  136,  135,  136,  135,
-      136,  135,  136,  135,  136,  125,  123,  121,  130,  128,
-      132,  127,    1,  122,  131,  107,   36,   70,   52,   71,
-       66,   24,  125,  121,  132,   21,  132,  133,  126,  122,
-
-       53,   65,   34,   37,    3,   55,   80,   85,   83,   84,
-       82,   81,   86,   90,  106,   75,   73,   62,   74,   72,
-       54,   88,   79,   77,   78,   76,   89,   87,   67,  124,
-      132,  132,   64,   91,   69,   58,  114,   61,   68,  115,
-       63,   23,  129,   57,   94,   60,   43,   25,    4,   50,
-       56,   59,   46,   12,   93,  132,   31,    2,    5,   47,
-       96,   42,   49,  116,   92,   22,  113,   39,    7,   48,
-       38,  100,   99,    8,   16,  109,  112,   33,   51,  104,
-       98,  108,   26,   27,   97,  110,  105,  103,    6,   28,
-       95,   32,    9,   18,   10,  101,   11,   45,   44,  102,
+      136,  134,  135,  133,  134,  135,  133,  135,  134,  135,
+      134,  135,  134,  135,  134,  135,  134,  135,  134,  135,
+      126,  134,  135,  126,  134,  135,    1,  134,  135,  134,
+      135,  134,  135,  134,  135,  134,  135,  134,  135,  134,
+      135,  134,  135,  134,  135,  134,  135,  134,  135,  134,
+      135,  134,  135,  134,  135,  134,  135,  134,  135,  134,
+      135,  134,  135,  134,  135,  134,  135,  134,  135,  134,
+      135,  134,  135,  134,  135,  124,  122,  120,  129,  127,
+      131,  126,    1,  121,  130,  106,   35,   69,   51,   70,
+       65,   23,  124,  120,  131,   20,  131,  132,  125,  121,
+
+       52,   64,   33,   36,    3,   54,   79,   84,   82,   83,
+       81,   80,   85,   89,  105,   74,   72,   61,   73,   71,
+       53,   87,   78,   76,   77,   75,   88,   86,   66,  123,
+      131,  131,   63,   90,   68,   57,  113,   60,   67,  114,
+       62,   22,  128,   56,   93,   59,   42,   24,    4,   49,
+       55,   58,   45,   12,   92,  131,   30,    2,    5,   46,
+       95,   41,   48,  115,   91,   21,  112,   38,    7,   47,
+       37,   99,   98,    8,   16,  108,  111,   32,   50,  103,
+       97,  107,   25,   26,   96,  109,  104,  102,    6,   27,
+       94,   31,    9,   18,   10,  100,   11,   44,   43,  101,
 
-       30,   13,   15,   14,   29,   35,   17,  111,  117,  119,
-      120,   40,  118,   19,   41,   20
+       29,   13,   15,   14,   28,   34,   17,  110,  116,  118,
+      119,   39,  117,   40,   19
     } ;
 
-static yyconst short int yy_accept[553] =
+static yyconst short int yy_accept[540] =
     {   0,
         1,    1,    1,    2,    4,    7,    9,   11,   13,   15,
        17,   19,   21,   24,   27,   30,   32,   34,   36,   38,
@@ -358,58 +358,56 @@
        86,   86,   87,   87,   88,   88,   88,   88,   88,   88,
        88,   89,   89,   89,   89,   89,   89,   89,   89,   89,
        89,   89,   90,   90,   90,   90,   90,   90,   90,   90,
-       90,   90,   90,   91,   91,   91,   91,   91,   91,   91,
+       90,   90,   91,   91,   91,   91,   91,   91,   91,   91,
 
-       91,   92,   92,   92,   92,   92,   92,   92,   92,   92,
-       92,   92,   92,   92,   92,   92,   92,   93,   93,   93,
+       92,   92,   92,   92,   92,   92,   92,   92,   92,   92,
+       92,   92,   92,   92,   92,   92,   93,   93,   93,   93,
        93,   93,   93,   93,   93,   93,   93,   93,   93,   93,
-       93,   93,   93,   94,   95,   96,   97,   98,   98,   99,
-       99,  100,  101,  102,  102,  102,  103,  103,  103,  104,
-      104,  104,  104,  105,  105,  105,  105,  105,  105,  105,
-      105,  105,  106,  106,  106,  106,  106,  106,  106,  106,
+       93,   93,   94,   95,   96,   97,   98,   98,   99,   99,
+      100,  101,  102,  102,  102,  103,  103,  103,  104,  104,
+      104,  104,  105,  105,  105,  105,  105,  105,  105,  105,
+      105,  106,  106,  106,  106,  106,  106,  106,  106,  106,
       106,  106,  106,  106,  106,  106,  106,  106,  106,  106,
-      106,  106,  106,  106,  106,  106,  106,  107,  107,  107,
-      107,  108,  109,  110,  111,  112,  113,  113,  114,  115,
+      106,  106,  106,  106,  106,  107,  107,  107,  107,  108,
+      109,  110,  111,  112,  113,  113,  114,  115,  115,  116,
 
-      115,  116,  116,  116,  116,  116,  116,  117,  118,  119,
-      119,  119,  119,  120,  121,  121,  121,  122,  122,  122,
-      122,  122,  122,  122,  122,  123,  124,  125,  125,  126,
-      127,  127,  128,  129,  129,  129,  129,  129,  129,  129,
-      129,  129,  130,  130,  130,  131,  132,  132,  132,  132,
-      133,  133,  133,  133,  134,  134,  134,  135,  135,  135,
-      135,  135,  135,  135,  135,  135,  135,  135,  135,  135,
-      135,  136,  137,  137,  137,  137,  137,  138,  139,  139,
-      139,  139,  140,  140,  140,  140,  140,  140,  140,  140,
-      140,  141,  142,  142,  142,  142,  142,  143,  143,  143,
-
-      144,  145,  145,  145,  146,  146,  146,  146,  147,  148,
-      148,  148,  149,  149,  149,  150,  150,  151,  152,  152,
-      152,  152,  152,  153,  153,  154,  154,  155,  155,  155,
-      156,  157,  158,  158,  158,  159,  159,  159,  159,  159,
-      159,  159,  159,  159,  159,  159,  159,  159,  160,  160,
-      161,  162,  162,  162,  162,  162,  162,  162,  162,  163,
-      163,  163,  163,  163,  164,  164,  164,  164,  164,  164,
-      164,  164,  164,  164,  164,  164,  164,  165,  165,  165,
-      165,  166,  166,  167,  167,  167,  167,  167,  167,  167,
-      167,  168,  168,  168,  169,  169,  169,  169,  170,  170,
-
-      170,  170,  171,  171,  171,  172,  173,  174,  174,  174,
-      175,  176,  176,  176,  176,  176,  177,  177,  178,  179,
-      179,  179,  180,  180,  180,  181,  181,  181,  182,  183,
-      184,  185,  186,  186,  187,  188,  188,  188,  188,  188,
-      188,  189,  189,  189,  190,  191,  191,  191,  191,  191,
-      191,  192,  192,  192,  192,  192,  192,  192,  192,  192,
-      192,  193,  193,  193,  193,  193,  193,  193,  193,  193,
-      194,  194,  194,  194,  194,  195,  195,  195,  195,  195,
-      196,  197,  198,  199,  200,  201,  201,  201,  201,  202,
-      202,  202,  202,  203,  203,  204,  205,  205,  205,  205,
-
-      205,  205,  205,  205,  205,  205,  205,  205,  206,  206,
-      206,  206,  206,  206,  206,  207,  207,  207,  207,  207,
-      208,  208,  208,  208,  208,  208,  209,  209,  209,  209,
-      209,  209,  209,  209,  209,  209,  209,  209,  209,  210,
-      210,  211,  212,  212,  213,  213,  214,  215,  216,  216,
-      217,  217
+      116,  116,  116,  116,  116,  117,  118,  119,  119,  119,
+      119,  120,  121,  121,  121,  122,  122,  122,  122,  122,
+      122,  122,  122,  123,  124,  125,  125,  126,  127,  127,
+      128,  129,  129,  129,  129,  129,  129,  129,  129,  129,
+      130,  130,  130,  131,  132,  132,  132,  132,  133,  133,
+      133,  133,  134,  134,  134,  135,  135,  135,  135,  135,
+      135,  135,  135,  135,  135,  135,  135,  135,  135,  136,
+      137,  137,  137,  137,  137,  138,  139,  139,  139,  139,
+      140,  140,  140,  140,  140,  140,  140,  140,  141,  142,
+      142,  142,  142,  142,  143,  143,  143,  144,  145,  145,
+
+      145,  146,  146,  146,  146,  147,  148,  148,  148,  149,
+      149,  149,  150,  150,  151,  152,  152,  152,  152,  152,
+      153,  153,  154,  154,  155,  155,  155,  156,  157,  158,
+      158,  158,  159,  159,  159,  159,  159,  159,  159,  159,
+      159,  159,  159,  159,  159,  160,  160,  161,  162,  162,
+      162,  162,  162,  162,  162,  163,  163,  163,  163,  163,
+      164,  164,  164,  164,  164,  164,  164,  164,  164,  164,
+      164,  164,  164,  165,  165,  165,  165,  166,  166,  167,
+      167,  167,  167,  167,  167,  167,  167,  168,  168,  168,
+      169,  169,  169,  169,  170,  170,  170,  170,  171,  171,
+
+      171,  172,  173,  174,  174,  174,  175,  176,  176,  176,
+      176,  177,  177,  178,  179,  179,  179,  180,  180,  180,
+      181,  181,  181,  182,  183,  184,  185,  186,  186,  187,
+      188,  188,  188,  188,  188,  188,  189,  189,  189,  190,
+      191,  191,  191,  191,  191,  191,  192,  192,  192,  192,
+      192,  192,  192,  192,  192,  193,  193,  193,  193,  193,
+      193,  193,  193,  193,  194,  194,  194,  194,  194,  195,
+      195,  195,  195,  196,  197,  198,  199,  200,  201,  201,
+      201,  201,  202,  202,  202,  202,  203,  203,  204,  205,
+      205,  205,  205,  205,  205,  205,  205,  205,  205,  205,
+
+      206,  206,  206,  206,  206,  206,  207,  207,  207,  207,
+      207,  208,  208,  208,  208,  208,  209,  209,  209,  209,
+      209,  209,  209,  209,  209,  209,  209,  209,  210,  211,
+      212,  212,  213,  213,  214,  215,  215,  216,  216
     } ;
 
 static yyconst int yy_ec[256] =
@@ -453,137 +451,135 @@
         4,    4,    4,    4
     } ;
 
-static yyconst short int yy_base[560] =
+static yyconst short int yy_base[547] =
     {   0,
-        0,    0, 1199, 1200, 1200, 1200, 1194, 1183,   35,   39,
+        0,    0, 1175, 1176, 1176, 1176, 1170, 1159,   35,   39,
        43,   49,   55,   61,    0,   72,   64,   67,   66,   86,
        76,  106,   91,   65,  133,  121,  117,   99,  152,   95,
-       78,  179,  137,  211,  139,   90,  148,   93, 1192, 1200,
-     1181, 1200,    0,   49,  185,  217,  116,  238,  254,  259,
-        0, 1190,    0,  200,  125,  149,  146,  153,  177,   63,
-      154, 1179,  160,  161,  208,  185,  264,  171,  113,  210,
-     1178,  222,  260,  228,  186,  261,  271,  110,  273,  274,
-      230,  223,  277,  278,  279,  282,  286,  285,  205,  290,
-      287,  292, 1177,  288,  299,  300,  307,  309,  312,  314,
-
-      316,  318,  323,  311,  324,  326,  328,  327,  330,  329,
-      339,  347,  341,  343,  334,  354, 1176,  358,  342,  359,
-      361,  364,  365,  367,  371,  369,  370,  378,  395,  386,
-      385,  387, 1175,    0,  406, 1174,  421,  439,    0, 1183,
-     1200,    0, 1172,  232,  408, 1171,  396,  400, 1170,  397,
-      426,  412, 1169,  414,  424,  440,  413,  430,  441,  442,
-      443, 1168,  445,  448,  449,  454,  451,  453,  458,  460,
-      466,  462,  461,  469,  464,  465,  470,  475,  487,  488,
-      489,  490,  491,  492,  493,  494, 1167,  496,  495,  501,
-     1166, 1165, 1164, 1163, 1162, 1161,  502, 1160, 1159,  498,
-
-     1158,  528,  503,  504,  508,  516, 1157, 1156, 1155,  510,
-      520,  533, 1154, 1153,  541,  542, 1152,  543,  544,  545,
-      546,  551,  549,  547, 1151, 1150, 1149,  553, 1148, 1147,
-      568, 1146, 1145,  570,  548,  554,  550,  574,  575,  576,
-      577, 1144,  579,  563, 1200,  596,  611,  615,  619,  624,
-      584,  588,  585, 1143,  625,  626, 1142,  589,  627,  628,
-      629,  630,  631,  633,  636,  634,  637,  640,  639,  647,
-     1141, 1140,  638,  641,  652,  642, 1139, 1138,  654,  657,
-      656, 1137,  658,  660,  664,  669,  671,  586,  673,  674,
-     1136, 1135,  676,  678,  679,  680, 1134,  681,  682,    0,
-
-     1133,  683,  684, 1132,  685,  688,  699, 1131, 1130,  702,
-      700, 1129,  704,  705, 1128,  709, 1127, 1126,  711,  713,
-      719,  715, 1125,  716, 1124,  718, 1123,  720,  723, 1122,
-      730, 1121,  730,  590, 1120,  732,  739,  734,  735,  744,
-      746,  745,  748,  749,  750,  753,  751, 1119,  754, 1118,
-     1117,  758,  761,  763,  757,  764,  765,  770, 1116,  773,
-      774,  776,  778, 1115,  777,  782,  779,  784,  785,  791,
-      786,  793,  794,  798,  802,  803, 1114,  804,  805,  806,
-     1113,  807, 1112,  811,  815,  808,  821,  822,  810,  825,
-     1111,  826,  830, 1110,  831,  832,  836, 1109,  833,  838,
-
-      839, 1108,  842,  841, 1107, 1106, 1105,  837,  850, 1104,
-     1103,  852,  853,  860,  844, 1102,  851, 1101, 1100,  855,
-      864, 1099,  869,  870, 1098,  871,  872, 1097, 1096, 1095,
-     1094, 1093,  873, 1092, 1091,  874,  875,  876,  878,  879,
-     1090,  880,  884, 1089, 1088,  889,  891,  893,  894,  895,
-     1087,  896,  899,  900,  902,  901,  909,  907,  912,  908,
-     1076,  914,  924,  922,  926,  915,  927,  929,  930, 1066,
-      931,  933,  937,  938, 1065,  943,  944,  941,  945, 1064,
-     1063, 1062, 1059, 1058, 1057,  950,  946,  951, 1056,  963,
-      964,  952, 1054,  949, 1053, 1052,  968,  967,  969,  972,
-
-      975,  976,  979,  980,  981,  982,  983, 1047,  985,  988,
-      986,  990,  991,  994, 1046,  997,  995,  999, 1004,  947,
-     1002, 1008, 1009, 1010, 1016,  687, 1013, 1017, 1019, 1021,
-     1022, 1024, 1026, 1027, 1030, 1034, 1031, 1036,  555, 1037,
-      515,  512, 1040,  463, 1041,  399,  366,  247, 1045,  243,
-     1200, 1081, 1083,  212, 1088, 1091,  167, 1095,  108
+       78,  179,  137,  211,  139,   90,  148,   93, 1168, 1176,
+     1157, 1176,    0,   49,  185,  217,  116,  238,  254,  259,
+        0, 1166,    0,  200,  125,  149,  146,  153,  177,   63,
+      154, 1155,  160,  161,  208,  185,  264,  171,  113,  210,
+     1154,  222,  260,  228,  186,  261,  271,  110,  273,  274,
+      230,  289,  277,  278,  150,  290,  241,  205,  282,  231,
+      291, 1153,  292,  296,  299,  303,  305,  306,  318,  310,
+
+      309,  311,  321,  322,  325,  326,  328,  330,  332,  337,
+      343,  340,  344,  335,  348, 1152,  357,  358,  360,  363,
+      365,  364,  366,  377,  369,  331,  367,  385,  394,  373,
+      380, 1151,    0,  413, 1150,  428,  446,    0, 1159, 1176,
+        0, 1148,  232,  397, 1147,  393,  398, 1146,  400,  405,
+      406, 1145,  421,  418,  401,  415,  419,  434,  437,  429,
+     1144,  448,  449,  435,  453,  452,  454,  455,  457,  464,
+      456,  461,  462,  465,  467,  480,  482,  469,  484,  486,
+      487,  475,  489,  491, 1143,  493,  495,  498, 1142, 1141,
+     1140, 1139, 1138, 1137,  499, 1136, 1135,  500, 1134,  529,
+
+      504,  507,  502,  510, 1133, 1132, 1131,  508,  511,  522,
+     1130, 1129,  529,  523, 1128,  518,  543,  544,  547,  548,
+      550,  549, 1127, 1126, 1125,  551, 1124, 1123,  552, 1122,
+     1121,  554,  555,  557,  509,  563,  565,  561,  568, 1120,
+      577,  578, 1176,  583,  592,  601,  607,  612,  583,  584,
+      595, 1119,  614,  615, 1118,  616,  594,  617,  619,  620,
+      622,  623,  626,  628,  627,  629,  630,  631, 1117, 1116,
+      634,  637,  641,  642, 1115, 1114,  646,  647,  645, 1113,
+      648,  650,  652,  654,  656,  659,  657, 1112, 1111,  663,
+      665,  668,  669, 1110,  670,  678,    0, 1109,  677,  679,
+
+     1108,  683,  680,  688, 1107, 1106,  693,  698, 1105,  700,
+      685, 1104,  704, 1103, 1102,  702,  705,  708,  689, 1101,
+      709, 1100,  711, 1099,  715,  718, 1098,  723, 1097,  717,
+      724, 1096,  725,  728,  734,  737,  727,  729,  744,  730,
+      741,  742,  745,  746, 1095,  747, 1094, 1093,  753,  756,
+      757,  758,  760,  759, 1092,  762,  764,  765,  769, 1091,
+      766,  772,  771,  773,  774,  783,  778,  787,  789,  791,
+      790,  794, 1090,  795,  796,  799, 1089,  797, 1088,  802,
+      803,  804,  805,  815,  800,  811, 1087,  818,  822, 1086,
+      823,  825,  826, 1085,  827,  828,  830, 1084,  833,  831,
+
+     1083, 1082, 1081,  834,  835, 1080, 1079,  843,  845,  837,
+     1078,  840, 1077, 1076,  844,  856, 1075,  857,  858, 1074,
+      859,  860, 1073, 1072, 1071, 1070, 1069,  864, 1068, 1067,
+      862,  863,  870,  867,  865, 1066,  868,  872, 1065, 1064,
+      873,  880,  882,  884,  887, 1063,  888,  885,  889,  890,
+      893,  896,  899,  894, 1062,  904,  906,  907,  910,  911,
+      915,  917,  919, 1061,  921,  924,  925,  922, 1050,  926,
+      927,  928, 1039, 1037, 1036, 1035, 1034, 1033,  929,  936,
+      933, 1032,  943,  947,  950, 1031,  934, 1030, 1029,  954,
+      952,  937,  955,  957,  956,  959,  963,  966,  967, 1024,
+
+      968,  970,  971,  974,  976, 1022,  978,  977,  979,  981,
+     1021,  986,  985,  989,  992, 1018,  990,  994,  998,  999,
+     1001, 1003, 1004, 1005, 1008, 1010, 1014,  686,  684,  517,
+     1020,  463, 1015,  372,  368, 1019,  279, 1176, 1055, 1057,
+      253, 1062, 1065,  212, 1069,  108
     } ;
 
-static yyconst short int yy_def[560] =
+static yyconst short int yy_def[547] =
     {   0,
-      551,    1,  551,  551,  551,  551,  552,  553,  554,  551,
-      553,  553,  553,  553,  555,  556,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  552,  551,
-      553,  551,  557,  551,  551,  553,  553,  553,  553,  553,
-      555,  558,  559,  551,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,   25,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  551,  557,  551,  553,  553,  553,   50,  558,
-      551,  559,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-
-      553,   50,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  551,  551,  551,  551,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  202,
-
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      551,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-      553,  553,  553,  553,  553,  553,  553,  553,  553,  553,
-        0,  551,  551,  551,  551,  551,  551,  551,  551
+      538,    1,  538,  538,  538,  538,  539,  540,  541,  538,
+      540,  540,  540,  540,  542,  543,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  539,  538,
+      540,  538,  544,  538,  538,  540,  540,  540,  540,  540,
+      542,  545,  546,  538,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  538,  544,  538,  540,  540,  540,   50,  545,  538,
+      546,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,   50,
+
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  538,  538,  538,  538,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  200,  540,  540,  540,
+
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  538,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,  540,  540,  540,
+      540,  540,  540,  540,  540,  540,  540,    0,  538,  538,
+      538,  538,  538,  538,  538,  538
     } ;
 
-static yyconst short int yy_nxt[1245] =
+static yyconst short int yy_nxt[1221] =
     {   0,
         4,    5,    6,    7,    8,    9,   10,   11,   12,   13,
        14,   14,   14,    4,   15,   16,    8,    8,    8,   17,
@@ -593,138 +589,135 @@
        45,   45,   46,   46,   46,   46,   42,   47,   44,   44,
        44,   44,   42,   48,   49,   49,   49,   49,   42,   48,
        49,   49,   49,   49,   42,   52,   42,   42,   42,   42,
-       42,   54,   54,   54,   54,   63,   55,   64,  150,   42,
+       42,   54,   54,   54,   54,   63,   55,   64,  149,   42,
        60,   42,   81,   56,   61,   57,   50,   58,   65,   42,
 
-       59,  104,   62,   42,   42,   66,   42,   70,   42,   67,
-       71,  142,   42,  129,   79,   68,  132,   72,   69,   42,
-       80,  102,   93,   42,  136,   73,   42,   74,   75,   42,
-       42,   94,  103,  171,   42,   76,   90,   95,   42,   77,
-       86,   78,   82,   82,   82,   82,   42,  143,   87,   91,
-       42,  161,   42,   88,   83,   92,  116,   89,  127,   42,
-      130,   42,   42,   84,   85,   42,   42,   42,  146,  117,
-      134,  128,  118,   42,   42,   96,  144,   97,  145,  119,
-      131,   98,  153,   99,   42,  100,  147,  101,  105,  152,
-       42,  151,   42,  135,   45,   45,   45,   45,   42,   42,
-
-      160,  106,  107,  148,  108,  109,  110,  149,  111,   54,
-       54,   54,   54,  167,  112,   43,  113,  114,   42,  115,
-      105,   42,  156,   42,   42,   48,   46,   46,   46,   46,
-       42,  184,  162,  120,  121,   42,  122,  154,  123,  155,
-      124,   42,  125,   42,   41,   42,  126,  137,  137,  137,
-      137,   42,  174,   41,   41,  138,   42,  251,  166,  163,
-       42,  138,   48,   49,   49,   49,   49,   42,  139,  139,
-      139,  139,   42,   42,   42,  139,  139,   42,  139,  139,
-      139,  139,  139,  139,   42,  157,   42,   42,  158,  164,
-       42,   42,   42,  168,  169,   42,  165,  159,   42,   42,
-
-       42,   42,  181,   42,  183,   42,  173,  175,  170,  186,
-      172,  176,   42,   42,  177,  178,  179,  182,  180,  185,
-       42,  187,   42,  188,   42,   42,  189,   42,  190,   42,
-      192,   42,  194,  197,  191,  196,   42,   42,  198,   42,
-       42,   42,   42,   42,  193,  199,  195,   42,  201,  204,
-      207,  211,   42,  203,   42,   42,   42,  205,  200,  209,
-       42,  218,  213,  217,  208,  202,  212,   42,  210,  206,
-      215,   42,   42,  216,   42,  223,  214,   42,   42,   42,
-       42,  219,   42,   42,   42,  221,  224,  226,  237,  220,
-      229,   42,  236,  231,  232,  225,  222,  241,   42,   42,
-
-       42,  227,  228,  233,  230,  238,  234,  239,   42,   42,
-       42,  235,   42,   42,  240,  246,  246,  246,  246,  253,
-      242,   42,  243,  247,  255,   42,   42,   42,  244,  247,
-      137,  137,  137,  137,   42,  254,  258,   42,  138,   42,
-      252,  257,  261,   42,  138,  248,  249,  256,  250,  250,
-      250,  250,   42,   42,   42,   42,   42,  262,   42,  260,
-      259,   42,   42,  266,   42,  264,   42,   42,  267,  265,
-      263,   42,  273,   42,   42,   42,   42,   42,   42,   42,
-      268,  280,   42,   42,  269,  279,  270,  271,   42,  277,
-      272,  281,  275,  284,  283,  276,  278,  282,  285,  274,
-
-       42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
-      286,   42,  289,  291,   42,   42,   42,   42,  290,  295,
-      288,   42,  293,   42,  287,   42,  296,  292,   42,   42,
-      297,  303,  294,   42,  305,  299,  298,  300,  300,  300,
-      300,  302,  301,  306,  300,  300,   42,  300,  300,  300,
-      300,  300,  300,  304,   42,   42,   42,   42,   42,   42,
-       42,   42,   42,   42,   42,  307,   42,   42,   42,  324,
-      313,  308,  317,  312,  315,  322,   42,  310,  309,  314,
-      311,   42,  316,   42,  323,  319,  318,   42,   42,   42,
-       42,  320,   42,  321,  326,  328,  325,   42,   42,   42,
-
-      330,   42,   42,   42,  327,  246,  246,  246,  246,  333,
-      337,  329,  392,  247,  363,  332,  334,  248,  248,  247,
-      331,  331,  331,  331,  331,  331,  331,  331,  250,  250,
-      250,  250,   42,  250,  250,  250,  250,   42,   42,   42,
-       42,   42,   42,   42,   42,  336,   42,   42,  340,   42,
-       42,   42,   42,   42,   42,   42,  335,  339,  342,  347,
-       42,  341,  348,  345,  338,   42,  344,   42,  349,   42,
-       42,   42,  346,   42,  343,  350,  356,   42,  351,  357,
-      354,  358,   42,  355,   42,  359,   42,   42,  352,   42,
-      353,   42,   42,   42,   42,   42,   42,   42,   42,  360,
-
-       42,   42,  364,  362,  361,  373,  365,  367,  366,  374,
-      372,  375,   42,   42,  371,   42,  368,   42,   42,  370,
-      369,  378,   42,  376,   42,  377,   42,  379,   42,   42,
-      381,   42,   42,   42,  380,  382,   42,  383,  384,  331,
-      331,  331,  331,   42,  388,   42,  385,   42,   42,  391,
-      390,  386,   42,  395,  396,  387,  389,   42,   42,   42,
-      394,   42,   42,   42,   42,  399,   42,   42,  393,  398,
-       42,   42,  404,  402,   42,  405,   42,   42,   42,  397,
-      409,  400,  401,   42,  403,  406,   42,   42,  407,   42,
-       42,   42,   42,  410,  408,   42,  411,   42,   42,   42,
-
-      412,  416,  419,  418,   42,  414,   42,   42,  417,  415,
-      413,   42,  421,  423,  422,   42,   42,   42,   42,   42,
-       42,   42,  420,   42,   42,  424,  427,  426,   42,  431,
-      429,  425,  433,  435,   42,   42,  428,  434,   42,   42,
-      432,  437,  430,   42,   42,   42,   42,  438,  436,   42,
-       42,   42,   42,  440,   42,   42,  439,   42,  451,  444,
-      448,  449,  442,   42,   42,   42,   42,  441,   42,  445,
-      446,  447,  457,   42,  443,  453,  454,   42,  450,  455,
-      452,  456,   42,   42,   42,   42,   42,   42,   42,   42,
-      458,   42,   42,   42,  462,  459,  463,   42,  467,  464,
-
-      460,  461,   42,  465,   42,  468,   42,   42,   42,   42,
-      469,  466,   42,   42,   42,   42,  471,  470,  476,  477,
-       42,   42,   42,  475,  472,   42,  473,   42,   42,  479,
-      478,  480,  482,  474,  484,   42,  481,   42,  483,   42,
-       42,  488,   42,   42,   42,  485,   42,  487,  491,  489,
-       42,   42,  490,  486,   42,  493,   42,   42,   42,   42,
-       42,  497,   42,   42,   42,   42,  492,  503,  501,  494,
-      495,  504,  498,  502,  496,  499,   42,   42,  500,  507,
-       42,   42,   42,  506,  505,   42,  508,  509,   42,   42,
-      510,  512,   42,   42,   42,   42,   42,  514,   42,   42,
-
-      517,   42,  519,   42,   42,  513,  511,   42,   42,  516,
-       42,  518,   42,  520,  524,   42,  515,   42,  521,  522,
-      526,   42,   42,   42,  527,  530,   42,  523,  528,   42,
-       42,  525,   42,  529,   42,   42,  532,   42,  536,   42,
-       42,  533,  535,   42,   42,  531,  537,   42,  534,   42,
-       42,  543,  538,   42,   42,  544,  540,  539,   42,   42,
-       42,  548,  542,  541,  549,   42,   42,   42,  547,   42,
-       42,   42,   42,  546,  545,   42,   42,   42,   42,   42,
-      550,   39,   39,   39,   39,   39,   41,   41,   51,   42,
-       51,   51,   51,   53,   53,  140,  140,  140,  140,  140,
-
+       59,  103,   62,   42,   42,   66,   42,   70,   42,   67,
+       71,  141,   42,  128,   79,   68,  131,   72,   69,   42,
+       80,  101,   92,   42,  135,   73,   42,   74,   75,   42,
+       42,   93,  102,  170,   42,   76,   89,   94,   42,   77,
+       85,   78,   82,   82,   82,   82,   42,  142,   86,   90,
+       42,  160,   42,   87,   83,   91,  115,   88,  126,   42,
+      129,   42,   42,   42,   84,   42,   42,   42,  145,  116,
+      179,  127,  117,   42,   42,   95,  143,   96,  144,  118,
+      130,   97,  152,   98,   42,   99,  146,  100,  104,  151,
+       42,  150,   42,  134,   45,   45,   45,   45,   42,   42,
+
+      159,  105,  106,  147,  107,  108,  109,  148,  110,   54,
+       54,   54,   54,  166,  111,  133,  112,  113,   42,  114,
+      104,   42,  155,   42,   42,   48,   46,   46,   46,   46,
+       42,  182,  161,  119,  120,   42,  121,  153,  122,  154,
+      123,   42,  124,   42,   42,   42,  125,  136,  136,  136,
+      136,   42,  173,  184,   42,  137,   43,  249,  165,  162,
+      181,  137,   48,   49,   49,   49,   49,   42,  138,  138,
+      138,  138,   42,   42,   42,  138,  138,   42,  138,  138,
+      138,  138,  138,  138,   42,  156,   42,   42,  157,  163,
+       42,   42,   42,  167,  168,   42,  164,  158,   82,   82,
+
+       82,   82,   42,   42,   42,   42,  172,  174,  169,   42,
+      171,  183,   42,  175,  176,  177,   42,  178,   42,   42,
+      185,  180,   42,   42,   42,  188,  190,  186,  192,  194,
+      187,   42,  196,  189,   42,   42,  197,  195,   42,   42,
+      191,   42,  193,   42,   42,   42,  198,  202,   42,  235,
+       42,  205,  201,   42,  209,  203,   42,   42,  199,  207,
+      211,   42,  216,  200,  215,  206,  213,  204,  208,  210,
+       42,   42,  214,   42,  212,  217,   42,   42,   42,   42,
+       42,   42,   42,  218,  219,   42,   42,  222,  224,  227,
+       42,  221,  234,   42,  236,  220,  237,  223,   42,  229,
+
+      230,  226,  225,  228,  238,  239,   42,   42,  240,  231,
+       42,   42,  232,   42,   42,  241,  251,  233,   42,   42,
+      258,  242,  244,  244,  244,  244,  254,  253,   42,  250,
+      245,   42,   42,  252,   42,  255,  245,  136,  136,  136,
+      136,   42,   42,  256,  259,  137,  260,   42,   42,  264,
+       42,  137,  246,  247,  257,  248,  248,  248,  248,   42,
+      262,   42,   42,  261,  263,   42,   42,   42,   42,   42,
+       42,  265,  268,  271,   42,   42,   42,   42,   42,  277,
+       42,  278,   42,  266,  279,  267,  269,  275,   42,  273,
+      281,  270,  274,   42,  276,   42,  272,   42,  280,   42,
+
+       42,  285,   42,  282,   42,  283,   42,  286,   42,  288,
+      289,   42,   42,   42,  287,   42,  292,   42,  290,  284,
+       42,   42,   42,   42,   42,  300,  293,  294,  321,  291,
+       42,   42,  302,  295,  303,   42,   42,  296,  297,  297,
+      297,  297,   42,  298,  299,  297,  297,  301,  297,  297,
+      297,  297,  297,  297,  304,  308,   42,   42,  307,  305,
+       42,   42,   42,   42,   42,   42,  306,   42,   42,  310,
+       42,  312,  309,  314,   42,  317,   42,  318,   42,  313,
+      311,   42,  319,  316,  323,  322,  325,  320,  315,  324,
+       42,   42,  244,  244,  244,  244,   42,   42,  246,  246,
+
+      245,  328,  328,  328,  328,  330,  245,   42,   42,  326,
+      328,  328,  328,  328,  329,  327,  248,  248,  248,  248,
+       42,  248,  248,  248,  248,   42,  331,   42,   42,   42,
+       42,  335,   42,   42,  333,   42,   42,  334,  337,   42,
+       42,   42,   42,   42,   42,  332,  336,   42,  344,  339,
+       42,  338,  346,  345,   42,   42,  341,  342,   42,   42,
+       42,   42,  343,   42,  340,   42,  353,   42,  354,   42,
+       42,  347,   42,  355,  348,  352,   42,  349,   42,  350,
+      351,   42,   42,   42,  359,  356,  358,  357,  360,  361,
+       42,   42,   42,   42,  363,  362,   42,   42,   42,   42,
+
+      369,   42,   42,  371,  368,  364,   42,  370,  366,  365,
+      367,   42,  372,   42,  376,   42,  373,   42,   42,  374,
+      381,   42,   42,  375,   42,  377,  378,  380,   42,  379,
+       42,   42,  328,  328,  328,  328,  387,   42,   42,  384,
+       42,   42,   42,   42,  382,  386,  388,   42,  383,  390,
+       42,  385,  394,  391,   42,   42,  392,   42,   42,   42,
+       42,  389,  393,  396,  395,  398,   42,  400,  401,   42,
+       42,   42,   42,   42,  397,   42,  399,   42,   42,   42,
+      402,  405,   42,  403,   42,   42,   42,   42,  404,  406,
+      407,   42,  411,  413,  414,  409,   42,  412,  410,  408,
+
+       42,  416,   42,   42,   42,  418,  417,   42,   42,   42,
+       42,  415,   42,   42,  422,   42,   42,   42,   42,  419,
+      421,  424,  426,  428,   42,  429,  420,  423,   42,  430,
+      427,   42,  431,  425,  432,   42,   42,  433,   42,   42,
+       42,   42,  434,   42,   42,  435,   42,   42,   42,  439,
+       42,  443,  444,   42,  437,  446,   42,   42,   42,  436,
+      441,  451,  442,  440,  449,  447,  448,  438,  445,   42,
+       42,   42,   42,   42,  450,   42,   42,   42,   42,  452,
+       42,   42,  456,   42,  457,   42,   42,  453,  454,  455,
+      458,  459,  461,   42,  462,   42,  463,   42,   42,  460,
+
+       42,   42,   42,   42,  465,  464,   42,   42,  466,   42,
+      470,  471,   42,  469,  472,  467,  475,   42,  473,   42,
+       42,  477,  468,   42,   42,  474,  481,  476,   42,  480,
+       42,  478,   42,  482,   42,   42,  484,   42,   42,   42,
+       42,   42,   42,  479,  486,  490,   42,   42,  483,   42,
+       42,  493,  494,  496,  485,  491,   42,  495,  492,  487,
+       42,  488,  489,   42,  497,   42,  498,   42,   42,   42,
+       42,  500,   42,  501,  503,  502,   42,  499,  505,   42,
+       42,   42,  508,   42,   42,  504,  510,   42,  507,   42,
+       42,   42,   42,  506,   42,  509,  511,  514,   42,   42,
+
+      512,  516,   42,   42,  513,   42,  517,   42,  518,  520,
+      519,   42,   42,  515,   42,  525,   42,   42,   42,  524,
+      522,   42,  521,   42,  523,  526,  531,   42,   42,  532,
+      527,   42,   42,   42,   42,   42,  528,   42,  536,  530,
+      529,  535,   42,   42,   42,   42,   42,   42,   42,   42,
+       42,  534,   42,  533,  537,   39,   39,   39,   39,   39,
+       41,   41,   51,   42,   51,   51,   51,   53,   53,  139,
+      139,  139,  139,  139,   42,   42,   42,   42,   42,   42,
        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
+
        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
        42,   42,   42,   42,   42,   42,   42,   42,   42,   42,
-       42,   42,   42,   42,   42,   42,  141,   42,  245,   42,
-       42,   42,   42,  141,   42,  133,   42,   40,  551,    3,
+       42,   42,  140,   42,  243,   42,   42,   42,   42,  140,
+       42,  132,   42,   40,  538,    3,  538,  538,  538,  538,
+      538,  538,  538,  538,  538,  538,  538,  538,  538,  538,
+      538,  538,  538,  538,  538,  538,  538,  538,  538,  538,
 
-      551,  551,  551,  551,  551,  551,  551,  551,  551,  551,
-      551,  551,  551,  551,  551,  551,  551,  551,  551,  551,
-      551,  551,  551,  551,  551,  551,  551,  551,  551,  551,
-      551,  551,  551,  551,  551,  551,  551,  551,  551,  551,
-      551,  551,  551,  551
+      538,  538,  538,  538,  538,  538,  538,  538,  538,  538,
+      538,  538,  538,  538,  538,  538,  538,  538,  538,  538
     } ;
 
-static yyconst short int yy_chk[1245] =
+static yyconst short int yy_chk[1221] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -738,131 +731,128 @@
        18,   31,   24,   17,   18,   17,   13,   17,   19,   20,
 
        17,   31,   18,   36,   23,   20,   38,   21,   30,   20,
-       21,  559,   28,   36,   23,   20,   38,   21,   20,   22,
+       21,  546,   28,   36,   23,   20,   38,   21,   20,   22,
        23,   30,   28,   78,   47,   22,   69,   22,   22,   47,
        27,   28,   30,   78,   26,   22,   27,   28,   55,   22,
        26,   22,   25,   25,   25,   25,   25,   55,   26,   27,
        33,   69,   35,   26,   25,   27,   33,   26,   35,   57,
-       37,   37,   56,   25,   25,   29,   58,   61,   57,   33,
-      557,   35,   33,   63,   64,   29,   56,   29,   56,   33,
+       37,   37,   56,   85,   25,   29,   58,   61,   57,   33,
+       85,   35,   33,   63,   64,   29,   56,   29,   56,   33,
        37,   29,   64,   29,   68,   29,   58,   29,   32,   63,
        59,   61,   32,   45,   45,   45,   45,   45,   66,   75,
 
        68,   32,   32,   59,   32,   32,   32,   59,   32,   54,
-       54,   54,   54,   75,   32,  554,   32,   32,   89,   32,
+       54,   54,   54,   75,   32,  544,   32,   32,   88,   32,
        34,   65,   66,   70,   34,   46,   46,   46,   46,   46,
-       46,   89,   70,   34,   34,   72,   34,   65,   34,   65,
-       34,   74,   34,   81,   82,  144,   34,   48,   48,   48,
-       48,   48,   81,   82,   82,   48,  550,  144,   74,   72,
-      548,   48,   49,   49,   49,   49,   49,   49,   50,   50,
+       46,   88,   70,   34,   34,   72,   34,   65,   34,   65,
+       34,   74,   34,   81,   90,  143,   34,   48,   48,   48,
+       48,   48,   81,   90,   87,   48,  541,  143,   74,   72,
+       87,   48,   49,   49,   49,   49,   49,   49,   50,   50,
        50,   50,   50,   73,   76,   50,   50,   67,   50,   50,
        50,   50,   50,   50,   77,   67,   79,   80,   67,   73,
-       83,   84,   85,   76,   77,   86,   73,   67,   88,   87,
+       83,   84,  537,   76,   77,   89,   73,   67,   82,   82,
 
-       91,   94,   86,   90,   88,   92,   80,   83,   77,   91,
-       79,   84,   95,   96,   85,   85,   85,   87,   85,   90,
-       97,   92,   98,   94,  104,   99,   94,  100,   95,  101,
-       97,  102,   98,  100,   96,   99,  103,  105,  101,  106,
-      108,  107,  110,  109,   97,  102,   98,  115,  104,  107,
-      108,  110,  111,  106,  113,  119,  114,  107,  103,  109,
-      112,  115,  111,  114,  108,  105,  110,  116,  109,  107,
-      112,  118,  120,  113,  121,  119,  111,  122,  123,  547,
-      124,  116,  126,  127,  125,  118,  120,  122,  127,  116,
-      124,  128,  126,  125,  125,  121,  118,  130,  131,  130,
-
-      132,  122,  123,  125,  124,  128,  125,  128,  129,  147,
-      150,  125,  546,  148,  129,  135,  135,  135,  135,  147,
-      131,  145,  132,  135,  150,  152,  157,  154,  132,  135,
-      137,  137,  137,  137,  137,  148,  154,  155,  137,  151,
-      145,  152,  157,  158,  137,  138,  138,  151,  138,  138,
-      138,  138,  138,  156,  159,  160,  161,  158,  163,  156,
-      155,  164,  165,  161,  167,  160,  168,  166,  163,  160,
-      159,  169,  168,  170,  173,  172,  544,  175,  176,  171,
-      163,  173,  174,  177,  164,  172,  165,  166,  178,  171,
-      167,  174,  170,  177,  176,  170,  171,  175,  178,  169,
-
-      179,  180,  181,  182,  183,  184,  185,  186,  189,  188,
-      179,  200,  181,  183,  190,  197,  203,  204,  182,  188,
-      180,  205,  185,  210,  179,  542,  189,  184,  541,  206,
-      190,  205,  186,  211,  210,  200,  197,  202,  202,  202,
-      202,  204,  203,  211,  202,  202,  212,  202,  202,  202,
-      202,  202,  202,  206,  215,  216,  218,  219,  220,  221,
-      224,  235,  223,  237,  222,  212,  228,  236,  539,  237,
-      220,  215,  223,  219,  222,  235,  244,  216,  215,  221,
-      218,  231,  222,  234,  236,  228,  224,  238,  239,  240,
-      241,  231,  243,  234,  239,  241,  238,  251,  253,  288,
-
-      244,  252,  258,  334,  240,  246,  246,  246,  246,  252,
-      258,  243,  334,  246,  288,  251,  253,  247,  247,  246,
-      247,  247,  247,  247,  248,  248,  248,  248,  249,  249,
-      249,  249,  249,  250,  250,  250,  250,  250,  255,  256,
-      259,  260,  261,  262,  263,  256,  264,  266,  261,  265,
-      267,  273,  269,  268,  274,  276,  255,  260,  263,  268,
-      270,  262,  269,  266,  259,  275,  265,  279,  270,  281,
-      280,  283,  267,  284,  264,  273,  280,  285,  274,  281,
-      276,  283,  286,  279,  287,  284,  289,  290,  275,  293,
-      275,  294,  295,  296,  298,  299,  302,  303,  305,  285,
-
-      526,  306,  289,  287,  286,  303,  290,  294,  293,  305,
-      302,  306,  307,  311,  299,  310,  295,  313,  314,  298,
-      296,  311,  316,  307,  319,  310,  320,  313,  322,  324,
-      316,  326,  321,  328,  314,  319,  329,  320,  321,  331,
-      331,  331,  331,  333,  328,  336,  322,  338,  339,  333,
-      329,  324,  337,  338,  339,  326,  328,  340,  342,  341,
-      337,  343,  344,  345,  347,  342,  346,  349,  336,  341,
-      355,  352,  347,  345,  353,  349,  354,  356,  357,  340,
-      355,  343,  344,  358,  346,  352,  360,  361,  353,  362,
-      365,  363,  367,  356,  354,  366,  357,  368,  369,  371,
-
-      358,  363,  367,  366,  370,  361,  372,  373,  365,  362,
-      360,  374,  369,  371,  370,  375,  376,  378,  379,  380,
-      382,  386,  368,  389,  384,  372,  375,  374,  385,  380,
-      378,  373,  384,  386,  387,  388,  376,  385,  390,  392,
-      382,  388,  379,  393,  395,  396,  399,  389,  387,  397,
-      408,  400,  401,  392,  404,  403,  390,  415,  408,  397,
-      403,  403,  395,  409,  417,  412,  413,  393,  420,  399,
-      400,  401,  417,  414,  396,  412,  413,  421,  404,  414,
-      409,  415,  423,  424,  426,  427,  433,  436,  437,  438,
-      420,  439,  440,  442,  426,  421,  427,  443,  438,  433,
-
-      423,  424,  446,  436,  447,  439,  448,  449,  450,  452,
-      440,  437,  453,  454,  456,  455,  443,  442,  450,  452,
-      458,  460,  457,  449,  446,  459,  447,  462,  466,  454,
-      453,  455,  457,  448,  459,  464,  456,  463,  458,  465,
-      467,  464,  468,  469,  471,  460,  472,  463,  467,  465,
-      473,  474,  466,  462,  478,  469,  476,  477,  479,  487,
-      520,  474,  494,  486,  488,  492,  468,  487,  479,  471,
-      472,  488,  476,  486,  473,  477,  490,  491,  478,  492,
-      498,  497,  499,  491,  490,  500,  494,  497,  501,  502,
-      498,  500,  503,  504,  505,  506,  507,  502,  509,  511,
-
-      505,  510,  507,  512,  513,  501,  499,  514,  517,  504,
-      516,  506,  518,  509,  513,  521,  503,  519,  510,  511,
-      516,  522,  523,  524,  517,  521,  527,  512,  518,  525,
-      528,  514,  529,  519,  530,  531,  523,  532,  528,  533,
-      534,  524,  527,  535,  537,  522,  529,  536,  525,  538,
-      540,  535,  530,  543,  545,  536,  532,  531,  549,  515,
-      508,  543,  534,  533,  545,  496,  495,  493,  540,  489,
-      485,  484,  483,  538,  537,  482,  481,  480,  475,  470,
-      549,  552,  552,  552,  552,  552,  553,  553,  555,  461,
-      555,  555,  555,  556,  556,  558,  558,  558,  558,  558,
-
-      451,  445,  444,  441,  435,  434,  432,  431,  430,  429,
-      428,  425,  422,  419,  418,  416,  411,  410,  407,  406,
-      405,  402,  398,  394,  391,  383,  381,  377,  364,  359,
-      351,  350,  348,  335,  332,  330,  327,  325,  323,  318,
-      317,  315,  312,  309,  308,  304,  301,  297,  292,  291,
-      282,  278,  277,  272,  271,  257,  254,  242,  233,  232,
-      230,  229,  227,  226,  225,  217,  214,  213,  209,  208,
-      207,  201,  199,  198,  196,  195,  194,  193,  192,  191,
-      187,  162,  153,  149,  146,  143,  140,  136,  133,  117,
-       93,   71,   62,   52,   41,   39,    8,    7,    3,  551,
-
-      551,  551,  551,  551,  551,  551,  551,  551,  551,  551,
-      551,  551,  551,  551,  551,  551,  551,  551,  551,  551,
-      551,  551,  551,  551,  551,  551,  551,  551,  551,  551,
-      551,  551,  551,  551,  551,  551,  551,  551,  551,  551,
-      551,  551,  551,  551
+       82,   82,   82,   86,   91,   93,   80,   83,   77,   94,
+       79,   89,   95,   84,   84,   84,   96,   84,   97,   98,
+       91,   86,  101,  100,  102,   94,   96,   93,   97,   98,
+       93,   99,  100,   95,  103,  104,  101,   99,  105,  106,
+       96,  107,   97,  108,  126,  109,  102,  106,  114,  126,
+      110,  107,  105,  112,  109,  106,  111,  113,  103,  108,
+      110,  115,  114,  104,  113,  107,  111,  106,  108,  109,
+      117,  118,  112,  119,  110,  115,  120,  122,  121,  123,
+      127,  535,  125,  115,  117,  534,  130,  119,  121,  123,
+      124,  118,  125,  131,  127,  117,  127,  120,  128,  124,
+
+      124,  122,  121,  123,  128,  129,  146,  129,  130,  124,
+      144,  147,  124,  149,  155,  131,  146,  124,  150,  151,
+      155,  131,  134,  134,  134,  134,  150,  149,  156,  144,
+      134,  154,  157,  147,  153,  151,  134,  136,  136,  136,
+      136,  136,  160,  153,  156,  136,  157,  158,  164,  160,
+      159,  136,  137,  137,  154,  137,  137,  137,  137,  137,
+      159,  162,  163,  158,  159,  166,  165,  167,  168,  171,
+      169,  162,  164,  167,  172,  173,  532,  170,  174,  171,
+      175,  172,  178,  162,  173,  163,  165,  170,  182,  169,
+      175,  166,  169,  176,  170,  177,  168,  179,  174,  180,
+
+      181,  178,  183,  176,  184,  177,  186,  179,  187,  181,
+      182,  188,  195,  198,  180,  203,  186,  201,  183,  177,
+      202,  208,  235,  204,  209,  203,  187,  188,  235,  184,
+      530,  216,  208,  195,  209,  210,  214,  198,  200,  200,
+      200,  200,  213,  201,  202,  200,  200,  204,  200,  200,
+      200,  200,  200,  200,  210,  216,  217,  218,  214,  213,
+      219,  220,  222,  221,  226,  229,  213,  232,  233,  218,
+      234,  220,  217,  221,  238,  229,  236,  232,  237,  220,
+      219,  239,  233,  226,  237,  236,  239,  234,  222,  238,
+      241,  242,  244,  244,  244,  244,  249,  250,  245,  245,
+
+      244,  245,  245,  245,  245,  250,  244,  257,  251,  241,
+      246,  246,  246,  246,  249,  242,  247,  247,  247,  247,
+      247,  248,  248,  248,  248,  248,  251,  253,  254,  256,
+      258,  257,  259,  260,  254,  261,  262,  256,  259,  263,
+      265,  264,  266,  267,  268,  253,  258,  271,  266,  261,
+      272,  260,  268,  267,  273,  274,  263,  264,  279,  277,
+      278,  281,  265,  282,  262,  283,  278,  284,  279,  285,
+      287,  271,  286,  281,  272,  277,  290,  273,  291,  273,
+      274,  292,  293,  295,  285,  282,  284,  283,  286,  287,
+      299,  296,  300,  303,  291,  290,  302,  529,  311,  528,
+
+      300,  304,  319,  303,  299,  292,  307,  302,  295,  293,
+      296,  308,  304,  310,  311,  316,  307,  313,  317,  308,
+      319,  318,  321,  310,  323,  313,  316,  318,  325,  317,
+      330,  326,  328,  328,  328,  328,  330,  331,  333,  325,
+      337,  334,  338,  340,  321,  326,  331,  335,  323,  334,
+      336,  325,  338,  335,  341,  342,  336,  339,  343,  344,
+      346,  333,  337,  340,  339,  342,  349,  344,  346,  350,
+      351,  352,  354,  353,  341,  356,  343,  357,  358,  361,
+      349,  352,  359,  350,  363,  362,  364,  365,  351,  353,
+      354,  367,  359,  362,  363,  357,  366,  361,  358,  356,
+
+      368,  365,  369,  371,  370,  367,  366,  372,  374,  375,
+      378,  364,  376,  385,  371,  380,  381,  382,  383,  368,
+      370,  374,  376,  380,  386,  381,  369,  372,  384,  382,
+      378,  388,  383,  375,  384,  389,  391,  385,  392,  393,
+      395,  396,  386,  397,  400,  388,  399,  404,  405,  393,
+      410,  399,  399,  412,  391,  404,  408,  415,  409,  389,
+      396,  412,  397,  395,  409,  405,  408,  392,  400,  416,
+      418,  419,  421,  422,  410,  431,  432,  428,  435,  415,
+      434,  437,  421,  433,  422,  438,  441,  416,  418,  419,
+      428,  431,  433,  442,  434,  443,  435,  444,  448,  432,
+
+      445,  447,  449,  450,  438,  437,  451,  454,  441,  452,
+      445,  447,  453,  444,  448,  442,  451,  456,  449,  457,
+      458,  453,  443,  459,  460,  450,  458,  452,  461,  457,
+      462,  454,  463,  459,  465,  468,  461,  466,  467,  470,
+      471,  472,  479,  456,  463,  468,  481,  487,  460,  480,
+      492,  472,  479,  481,  462,  470,  483,  480,  471,  465,
+      484,  466,  467,  485,  483,  491,  484,  490,  493,  495,
+      494,  487,  496,  490,  492,  491,  497,  485,  494,  498,
+      499,  501,  497,  502,  503,  493,  499,  504,  496,  505,
+      508,  507,  509,  495,  510,  498,  501,  504,  513,  512,
+
+      502,  507,  514,  517,  503,  515,  508,  518,  509,  512,
+      510,  519,  520,  505,  521,  518,  522,  523,  524,  517,
+      514,  525,  513,  526,  515,  519,  524,  527,  533,  525,
+      520,  516,  536,  531,  511,  506,  521,  500,  533,  523,
+      522,  531,  489,  488,  486,  482,  478,  477,  476,  475,
+      474,  527,  473,  526,  536,  539,  539,  539,  539,  539,
+      540,  540,  542,  469,  542,  542,  542,  543,  543,  545,
+      545,  545,  545,  545,  464,  455,  446,  440,  439,  436,
+      430,  429,  427,  426,  425,  424,  423,  420,  417,  414,
+      413,  411,  407,  406,  403,  402,  401,  398,  394,  390,
+
+      387,  379,  377,  373,  360,  355,  348,  347,  345,  332,
+      329,  327,  324,  322,  320,  315,  314,  312,  309,  306,
+      305,  301,  298,  294,  289,  288,  280,  276,  275,  270,
+      269,  255,  252,  240,  231,  230,  228,  227,  225,  224,
+      223,  215,  212,  211,  207,  206,  205,  199,  197,  196,
+      194,  193,  192,  191,  190,  189,  185,  161,  152,  148,
+      145,  142,  139,  135,  132,  116,   92,   71,   62,   52,
+       41,   39,    8,    7,    3,  538,  538,  538,  538,  538,
+      538,  538,  538,  538,  538,  538,  538,  538,  538,  538,
+      538,  538,  538,  538,  538,  538,  538,  538,  538,  538,
+
+      538,  538,  538,  538,  538,  538,  538,  538,  538,  538,
+      538,  538,  538,  538,  538,  538,  538,  538,  538,  538
     } ;
 
 static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
@@ -879,7 +869,7 @@
 #define YY_MORE_ADJ 0
 #define YY_RESTORE_YY_MORE_OFFSET
 char *yytext;
-#line 1 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 1 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 #define INITIAL 0
 /*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===//
 //
@@ -894,7 +884,7 @@
 //
 //===----------------------------------------------------------------------===*/
 #define YY_NEVER_INTERACTIVE 1
-#line 28 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 28 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 #include "ParserInternals.h"
 #include "llvm/Module.h"
 #include <list>
@@ -1027,7 +1017,7 @@
 /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
  * it to deal with 64 bit numbers.
  */
-#line 1031 "Lexer.cpp"
+#line 1021 "Lexer.cpp"
 
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
@@ -1178,10 +1168,10 @@
 	register char *yy_cp = NULL, *yy_bp = NULL;
 	register int yy_act;
 
-#line 190 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 190 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 
 
-#line 1185 "Lexer.cpp"
+#line 1175 "Lexer.cpp"
 
 	if ( yy_init )
 		{
@@ -1229,14 +1219,14 @@
 			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 				{
 				yy_current_state = (int) yy_def[yy_current_state];
-				if ( yy_current_state >= 552 )
+				if ( yy_current_state >= 539 )
 					yy_c = yy_meta[(unsigned int) yy_c];
 				}
 			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 			*yy_state_ptr++ = yy_current_state;
 			++yy_cp;
 			}
-		while ( yy_current_state != 551 );
+		while ( yy_current_state != 538 );
 
 yy_find_action:
 		yy_current_state = *--yy_state_ptr;
@@ -1274,262 +1264,257 @@
 	{ /* beginning of action switch */
 case 1:
 YY_RULE_SETUP
-#line 192 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 192 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { /* Ignore comments for now */ }
 	YY_BREAK
 case 2:
 YY_RULE_SETUP
-#line 194 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 194 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return BEGINTOK; }
 	YY_BREAK
 case 3:
 YY_RULE_SETUP
-#line 195 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 195 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return ENDTOK; }
 	YY_BREAK
 case 4:
 YY_RULE_SETUP
-#line 196 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 196 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return TRUETOK;  }
 	YY_BREAK
 case 5:
 YY_RULE_SETUP
-#line 197 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 197 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return FALSETOK; }
 	YY_BREAK
 case 6:
 YY_RULE_SETUP
-#line 198 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 198 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return DECLARE; }
 	YY_BREAK
 case 7:
 YY_RULE_SETUP
-#line 199 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 199 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return DEFINE; }
 	YY_BREAK
 case 8:
 YY_RULE_SETUP
-#line 200 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 200 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return GLOBAL; }
 	YY_BREAK
 case 9:
 YY_RULE_SETUP
-#line 201 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 201 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return CONSTANT; }
 	YY_BREAK
 case 10:
 YY_RULE_SETUP
-#line 202 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 202 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return INTERNAL; }
 	YY_BREAK
 case 11:
 YY_RULE_SETUP
-#line 203 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 203 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return LINKONCE; }
 	YY_BREAK
 case 12:
 YY_RULE_SETUP
-#line 204 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 204 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return WEAK; }
 	YY_BREAK
 case 13:
 YY_RULE_SETUP
-#line 205 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 205 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return APPENDING; }
 	YY_BREAK
 case 14:
 YY_RULE_SETUP
-#line 206 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 206 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return DLLIMPORT; }
 	YY_BREAK
 case 15:
 YY_RULE_SETUP
-#line 207 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 207 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return DLLEXPORT; }
 	YY_BREAK
 case 16:
 YY_RULE_SETUP
-#line 208 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 208 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return HIDDEN; }
 	YY_BREAK
 case 17:
 YY_RULE_SETUP
-#line 209 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 209 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return EXTERN_WEAK; }
 	YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 210 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 210 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return EXTERNAL; }
 	YY_BREAK
 case 19:
 YY_RULE_SETUP
-#line 211 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
-{ return IMPLEMENTATION; }
-	YY_BREAK
-case 20:
-YY_RULE_SETUP
-#line 212 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 211 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return ZEROINITIALIZER; }
 	YY_BREAK
-case 21:
+case 20:
 YY_RULE_SETUP
-#line 213 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 212 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return DOTDOTDOT; }
 	YY_BREAK
-case 22:
+case 21:
 YY_RULE_SETUP
-#line 214 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 213 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return UNDEF; }
 	YY_BREAK
-case 23:
+case 22:
 YY_RULE_SETUP
-#line 215 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 214 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return NULL_TOK; }
 	YY_BREAK
-case 24:
+case 23:
 YY_RULE_SETUP
-#line 216 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 215 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return TO; }
 	YY_BREAK
-case 25:
+case 24:
 YY_RULE_SETUP
-#line 217 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 216 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return TAIL; }
 	YY_BREAK
-case 26:
+case 25:
 YY_RULE_SETUP
-#line 218 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 217 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return TARGET; }
 	YY_BREAK
-case 27:
+case 26:
 YY_RULE_SETUP
-#line 219 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 218 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return TRIPLE; }
 	YY_BREAK
-case 28:
+case 27:
 YY_RULE_SETUP
-#line 220 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 219 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return DEPLIBS; }
 	YY_BREAK
-case 29:
+case 28:
 YY_RULE_SETUP
-#line 221 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 220 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return DATALAYOUT; }
 	YY_BREAK
-case 30:
+case 29:
 YY_RULE_SETUP
-#line 222 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 221 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return VOLATILE; }
 	YY_BREAK
-case 31:
+case 30:
 YY_RULE_SETUP
-#line 223 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 222 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return ALIGN;  }
 	YY_BREAK
-case 32:
+case 31:
 YY_RULE_SETUP
-#line 224 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 223 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return SECTION; }
 	YY_BREAK
-case 33:
+case 32:
 YY_RULE_SETUP
-#line 225 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 224 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return MODULE; }
 	YY_BREAK
-case 34:
+case 33:
 YY_RULE_SETUP
-#line 226 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 225 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return ASM_TOK; }
 	YY_BREAK
-case 35:
+case 34:
 YY_RULE_SETUP
-#line 227 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 226 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return SIDEEFFECT; }
 	YY_BREAK
-case 36:
+case 35:
 YY_RULE_SETUP
-#line 229 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 228 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return CC_TOK; }
 	YY_BREAK
-case 37:
+case 36:
 YY_RULE_SETUP
-#line 230 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 229 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return CCC_TOK; }
 	YY_BREAK
-case 38:
+case 37:
 YY_RULE_SETUP
-#line 231 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 230 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return FASTCC_TOK; }
 	YY_BREAK
-case 39:
+case 38:
 YY_RULE_SETUP
-#line 232 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 231 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return COLDCC_TOK; }
 	YY_BREAK
-case 40:
+case 39:
 YY_RULE_SETUP
-#line 233 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 232 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return X86_STDCALLCC_TOK; }
 	YY_BREAK
-case 41:
+case 40:
 YY_RULE_SETUP
-#line 234 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 233 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return X86_FASTCALLCC_TOK; }
 	YY_BREAK
-case 42:
+case 41:
 YY_RULE_SETUP
-#line 236 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 235 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return INREG; }
 	YY_BREAK
-case 43:
+case 42:
 YY_RULE_SETUP
-#line 237 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 236 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return SRET;  }
 	YY_BREAK
-case 44:
+case 43:
 YY_RULE_SETUP
-#line 238 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 237 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return NOUNWIND; }
 	YY_BREAK
-case 45:
+case 44:
 YY_RULE_SETUP
-#line 239 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 238 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return NORETURN; }
 	YY_BREAK
-case 46:
+case 45:
 YY_RULE_SETUP
-#line 241 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 240 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TY(Type::VoidTy,  VOID);  }
 	YY_BREAK
-case 47:
+case 46:
 YY_RULE_SETUP
-#line 242 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 241 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TY(Type::FloatTy, FLOAT); }
 	YY_BREAK
-case 48:
+case 47:
 YY_RULE_SETUP
-#line 243 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 242 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TY(Type::DoubleTy,DOUBLE);}
 	YY_BREAK
-case 49:
+case 48:
 YY_RULE_SETUP
-#line 244 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 243 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TY(Type::LabelTy, LABEL); }
 	YY_BREAK
-case 50:
+case 49:
 YY_RULE_SETUP
-#line 245 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 244 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return TYPE;   }
 	YY_BREAK
-case 51:
+case 50:
 YY_RULE_SETUP
-#line 246 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 245 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return OPAQUE; }
 	YY_BREAK
-case 52:
+case 51:
 YY_RULE_SETUP
-#line 247 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 246 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { uint64_t NumBits = atoull(yytext+1);
                   if (NumBits < IntegerType::MIN_INT_BITS || 
                       NumBits > IntegerType::MAX_INT_BITS)
@@ -1538,367 +1523,367 @@
                   RET_TY(Ty, INTTYPE);
                 }
 	YY_BREAK
-case 53:
+case 52:
 YY_RULE_SETUP
-#line 255 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 254 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Add, ADD); }
 	YY_BREAK
-case 54:
+case 53:
 YY_RULE_SETUP
-#line 256 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 255 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Sub, SUB); }
 	YY_BREAK
-case 55:
+case 54:
 YY_RULE_SETUP
-#line 257 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 256 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Mul, MUL); }
 	YY_BREAK
-case 56:
+case 55:
 YY_RULE_SETUP
-#line 258 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 257 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, UDiv, UDIV); }
 	YY_BREAK
-case 57:
+case 56:
 YY_RULE_SETUP
-#line 259 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 258 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, SDiv, SDIV); }
 	YY_BREAK
-case 58:
+case 57:
 YY_RULE_SETUP
-#line 260 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 259 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, FDiv, FDIV); }
 	YY_BREAK
-case 59:
+case 58:
 YY_RULE_SETUP
-#line 261 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 260 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, URem, UREM); }
 	YY_BREAK
-case 60:
+case 59:
 YY_RULE_SETUP
-#line 262 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 261 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, SRem, SREM); }
 	YY_BREAK
-case 61:
+case 60:
 YY_RULE_SETUP
-#line 263 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 262 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, FRem, FREM); }
 	YY_BREAK
-case 62:
+case 61:
 YY_RULE_SETUP
-#line 264 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 263 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Shl, SHL); }
 	YY_BREAK
-case 63:
+case 62:
 YY_RULE_SETUP
-#line 265 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 264 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, LShr, LSHR); }
 	YY_BREAK
-case 64:
+case 63:
 YY_RULE_SETUP
-#line 266 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 265 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, AShr, ASHR); }
 	YY_BREAK
-case 65:
+case 64:
 YY_RULE_SETUP
-#line 267 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 266 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, And, AND); }
 	YY_BREAK
-case 66:
+case 65:
 YY_RULE_SETUP
-#line 268 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 267 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Or , OR ); }
 	YY_BREAK
-case 67:
+case 66:
 YY_RULE_SETUP
-#line 269 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 268 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Xor, XOR); }
 	YY_BREAK
-case 68:
+case 67:
 YY_RULE_SETUP
-#line 270 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 269 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal,  ICmp,  ICMP); }
 	YY_BREAK
-case 69:
+case 68:
 YY_RULE_SETUP
-#line 271 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 270 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal,  FCmp,  FCMP); }
 	YY_BREAK
-case 70:
+case 69:
 YY_RULE_SETUP
-#line 273 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 272 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return EQ;  }
 	YY_BREAK
-case 71:
+case 70:
 YY_RULE_SETUP
-#line 274 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 273 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return NE;  }
 	YY_BREAK
-case 72:
+case 71:
 YY_RULE_SETUP
-#line 275 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 274 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return SLT; }
 	YY_BREAK
-case 73:
+case 72:
 YY_RULE_SETUP
-#line 276 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 275 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return SGT; }
 	YY_BREAK
-case 74:
+case 73:
 YY_RULE_SETUP
-#line 277 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 276 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return SLE; }
 	YY_BREAK
-case 75:
+case 74:
 YY_RULE_SETUP
-#line 278 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 277 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return SGE; }
 	YY_BREAK
-case 76:
+case 75:
 YY_RULE_SETUP
-#line 279 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 278 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return ULT; }
 	YY_BREAK
-case 77:
+case 76:
 YY_RULE_SETUP
-#line 280 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 279 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return UGT; }
 	YY_BREAK
-case 78:
+case 77:
 YY_RULE_SETUP
-#line 281 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 280 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return ULE; }
 	YY_BREAK
-case 79:
+case 78:
 YY_RULE_SETUP
-#line 282 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 281 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return UGE; }
 	YY_BREAK
-case 80:
+case 79:
 YY_RULE_SETUP
-#line 283 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 282 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return OEQ; }
 	YY_BREAK
-case 81:
+case 80:
 YY_RULE_SETUP
-#line 284 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 283 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return ONE; }
 	YY_BREAK
-case 82:
+case 81:
 YY_RULE_SETUP
-#line 285 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 284 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return OLT; }
 	YY_BREAK
-case 83:
+case 82:
 YY_RULE_SETUP
-#line 286 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 285 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return OGT; }
 	YY_BREAK
-case 84:
+case 83:
 YY_RULE_SETUP
-#line 287 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 286 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return OLE; }
 	YY_BREAK
-case 85:
+case 84:
 YY_RULE_SETUP
-#line 288 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 287 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return OGE; }
 	YY_BREAK
-case 86:
+case 85:
 YY_RULE_SETUP
-#line 289 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 288 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return ORD; }
 	YY_BREAK
-case 87:
+case 86:
 YY_RULE_SETUP
-#line 290 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 289 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return UNO; }
 	YY_BREAK
-case 88:
+case 87:
 YY_RULE_SETUP
-#line 291 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 290 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return UEQ; }
 	YY_BREAK
-case 89:
+case 88:
 YY_RULE_SETUP
-#line 292 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 291 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return UNE; }
 	YY_BREAK
-case 90:
+case 89:
 YY_RULE_SETUP
-#line 294 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 293 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, PHI, PHI_TOK); }
 	YY_BREAK
-case 91:
+case 90:
 YY_RULE_SETUP
-#line 295 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 294 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, Call, CALL); }
 	YY_BREAK
-case 92:
+case 91:
 YY_RULE_SETUP
-#line 296 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 295 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, Trunc, TRUNC); }
 	YY_BREAK
-case 93:
+case 92:
 YY_RULE_SETUP
-#line 297 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 296 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, ZExt, ZEXT); }
 	YY_BREAK
-case 94:
+case 93:
 YY_RULE_SETUP
-#line 298 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 297 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, SExt, SEXT); }
 	YY_BREAK
-case 95:
+case 94:
 YY_RULE_SETUP
-#line 299 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 298 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, FPTrunc, FPTRUNC); }
 	YY_BREAK
-case 96:
+case 95:
 YY_RULE_SETUP
-#line 300 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 299 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, FPExt, FPEXT); }
 	YY_BREAK
-case 97:
+case 96:
 YY_RULE_SETUP
-#line 301 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 300 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, UIToFP, UITOFP); }
 	YY_BREAK
-case 98:
+case 97:
 YY_RULE_SETUP
-#line 302 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 301 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, SIToFP, SITOFP); }
 	YY_BREAK
-case 99:
+case 98:
 YY_RULE_SETUP
-#line 303 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 302 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, FPToUI, FPTOUI); }
 	YY_BREAK
-case 100:
+case 99:
 YY_RULE_SETUP
-#line 304 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 303 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, FPToSI, FPTOSI); }
 	YY_BREAK
-case 101:
+case 100:
 YY_RULE_SETUP
-#line 305 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 304 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, IntToPtr, INTTOPTR); }
 	YY_BREAK
-case 102:
+case 101:
 YY_RULE_SETUP
-#line 306 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 305 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, PtrToInt, PTRTOINT); }
 	YY_BREAK
-case 103:
+case 102:
 YY_RULE_SETUP
-#line 307 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 306 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(CastOpVal, BitCast, BITCAST); }
 	YY_BREAK
-case 104:
+case 103:
 YY_RULE_SETUP
-#line 308 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 307 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, Select, SELECT); }
 	YY_BREAK
-case 105:
+case 104:
 YY_RULE_SETUP
-#line 309 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 308 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, VAArg , VAARG); }
 	YY_BREAK
-case 106:
+case 105:
 YY_RULE_SETUP
-#line 310 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 309 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Ret, RET); }
 	YY_BREAK
-case 107:
+case 106:
 YY_RULE_SETUP
-#line 311 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 310 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Br, BR); }
 	YY_BREAK
-case 108:
+case 107:
 YY_RULE_SETUP
-#line 312 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 311 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Switch, SWITCH); }
 	YY_BREAK
-case 109:
+case 108:
 YY_RULE_SETUP
-#line 313 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 312 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Invoke, INVOKE); }
 	YY_BREAK
-case 110:
+case 109:
 YY_RULE_SETUP
-#line 314 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 313 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Unwind, UNWIND); }
 	YY_BREAK
-case 111:
+case 110:
 YY_RULE_SETUP
-#line 315 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 314 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
 	YY_BREAK
-case 112:
+case 111:
 YY_RULE_SETUP
-#line 317 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 316 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Malloc, MALLOC); }
 	YY_BREAK
-case 113:
+case 112:
 YY_RULE_SETUP
-#line 318 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 317 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Alloca, ALLOCA); }
 	YY_BREAK
-case 114:
+case 113:
 YY_RULE_SETUP
-#line 319 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 318 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Free, FREE); }
 	YY_BREAK
-case 115:
+case 114:
 YY_RULE_SETUP
-#line 320 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 319 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Load, LOAD); }
 	YY_BREAK
-case 116:
+case 115:
 YY_RULE_SETUP
-#line 321 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 320 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Store, STORE); }
 	YY_BREAK
-case 117:
+case 116:
 YY_RULE_SETUP
-#line 322 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 321 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
 	YY_BREAK
-case 118:
+case 117:
 YY_RULE_SETUP
-#line 324 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 323 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
 	YY_BREAK
-case 119:
+case 118:
 YY_RULE_SETUP
-#line 325 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 324 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, InsertElement, INSERTELEMENT); }
 	YY_BREAK
-case 120:
+case 119:
 YY_RULE_SETUP
-#line 326 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 325 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, ShuffleVector, SHUFFLEVECTOR); }
 	YY_BREAK
-case 121:
+case 120:
 YY_RULE_SETUP
-#line 329 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 328 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 {
                   UnEscapeLexed(yytext+1);
                   llvmAsmlval.StrVal = strdup(yytext+1);             // Skip %
                   return LOCALVAR;
                 }
 	YY_BREAK
-case 122:
+case 121:
 YY_RULE_SETUP
-#line 334 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 333 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 {
                   UnEscapeLexed(yytext+1);
                   llvmAsmlval.StrVal = strdup(yytext+1);             // Skip @
                   return GLOBALVAR;
                 }
 	YY_BREAK
-case 123:
+case 122:
 YY_RULE_SETUP
-#line 339 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 338 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 {
                   yytext[strlen(yytext)-1] = 0;  // nuke colon
                   UnEscapeLexed(yytext);
@@ -1906,9 +1891,9 @@
                   return LABELSTR;
                 }
 	YY_BREAK
-case 124:
+case 123:
 YY_RULE_SETUP
-#line 345 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 344 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 {
                   yytext[strlen(yytext)-2] = 0;  // nuke colon, end quote
                   UnEscapeLexed(yytext+1);
@@ -1916,9 +1901,9 @@
                   return LABELSTR;
                 }
 	YY_BREAK
-case 125:
+case 124:
 YY_RULE_SETUP
-#line 352 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 351 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { // Note that we cannot unescape a string constant here!  The
                    // string constant might contain a \00 which would not be
                    // understood by the string stuff.  It is valid to make a
@@ -1929,18 +1914,18 @@
                    return STRINGCONSTANT;
                  }
 	YY_BREAK
-case 126:
+case 125:
 YY_RULE_SETUP
-#line 361 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 360 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 {
                      yytext[strlen(yytext)-1] = 0;           // nuke end quote
                      llvmAsmlval.StrVal = strdup(yytext+2);  // Nuke @, quote
                      return ATSTRINGCONSTANT;
                    }
 	YY_BREAK
-case 127:
+case 126:
 YY_RULE_SETUP
-#line 367 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 366 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { int len = strlen(yytext); 
                   uint32_t numBits = ((len * 64) / 19) + 1;
                   APInt Tmp(numBits, yytext, len, 10);
@@ -1956,9 +1941,9 @@
                   }
                 }
 	YY_BREAK
-case 128:
+case 127:
 YY_RULE_SETUP
-#line 381 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 380 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { int len = strlen(yytext); 
                   uint32_t numBits = (((len-1) * 64) / 19) + 2;
                   APInt Tmp(numBits, yytext, len, 10);
@@ -1974,9 +1959,9 @@
                   }
                 }
 	YY_BREAK
-case 129:
+case 128:
 YY_RULE_SETUP
-#line 396 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 395 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { int len = strlen(yytext+3) - 3;
                    uint32_t bits = len * 4;
                    APInt Tmp(bits, yytext+3, len, 16);
@@ -1995,9 +1980,9 @@
                    }
                  }
 	YY_BREAK
-case 130:
+case 129:
 YY_RULE_SETUP
-#line 414 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 413 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 {
                   uint64_t Val = atoull(yytext+1);
                   if ((unsigned)Val != Val)
@@ -2006,9 +1991,9 @@
                   return LOCALVAL_ID;
                 }
 	YY_BREAK
-case 131:
+case 130:
 YY_RULE_SETUP
-#line 421 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 420 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 {
                   uint64_t Val = atoull(yytext+1);
                   if ((unsigned)Val != Val)
@@ -2017,18 +2002,18 @@
                   return GLOBALVAL_ID;
                 }
 	YY_BREAK
-case 132:
+case 131:
 YY_RULE_SETUP
-#line 429 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 428 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { llvmAsmlval.FPVal = atof(yytext); return FPVAL; }
 	YY_BREAK
-case 133:
+case 132:
 YY_RULE_SETUP
-#line 430 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 429 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; }
 	YY_BREAK
 case YY_STATE_EOF(INITIAL):
-#line 432 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 431 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 {
                   /* Make sure to free the internal buffers for flex when we are
                    * done reading our input!
@@ -2037,22 +2022,22 @@
                   return EOF;
                 }
 	YY_BREAK
-case 134:
+case 133:
 YY_RULE_SETUP
-#line 440 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 439 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { /* Ignore whitespace */ }
 	YY_BREAK
-case 135:
+case 134:
 YY_RULE_SETUP
-#line 441 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 440 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 { return yytext[0]; }
 	YY_BREAK
-case 136:
+case 135:
 YY_RULE_SETUP
-#line 443 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 442 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 YY_FATAL_ERROR( "flex scanner jammed" );
 	YY_BREAK
-#line 2056 "Lexer.cpp"
+#line 2041 "Lexer.cpp"
 
 	case YY_END_OF_BUFFER:
 		{
@@ -2339,7 +2324,7 @@
 		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 			{
 			yy_current_state = (int) yy_def[yy_current_state];
-			if ( yy_current_state >= 552 )
+			if ( yy_current_state >= 539 )
 				yy_c = yy_meta[(unsigned int) yy_c];
 			}
 		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -2369,11 +2354,11 @@
 	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 		{
 		yy_current_state = (int) yy_def[yy_current_state];
-		if ( yy_current_state >= 552 )
+		if ( yy_current_state >= 539 )
 			yy_c = yy_meta[(unsigned int) yy_c];
 		}
 	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
-	yy_is_jam = (yy_current_state == 551);
+	yy_is_jam = (yy_current_state == 538);
 	if ( ! yy_is_jam )
 		*yy_state_ptr++ = yy_current_state;
 
@@ -2930,5 +2915,5 @@
 	return 0;
 	}
 #endif
-#line 443 "/proj/llvm/llvm-1/lib/AsmParser/Lexer.l"
+#line 442 "/proj/llvm/llvm-4/lib/AsmParser/Lexer.l"
 


Index: llvm/lib/AsmParser/Lexer.l.cvs
diff -u llvm/lib/AsmParser/Lexer.l.cvs:1.30 llvm/lib/AsmParser/Lexer.l.cvs:1.31
--- llvm/lib/AsmParser/Lexer.l.cvs:1.30	Thu Mar 29 13:50:01 2007
+++ llvm/lib/AsmParser/Lexer.l.cvs	Sun Apr  8 20:56:05 2007
@@ -208,7 +208,6 @@
 hidden          { return HIDDEN; }
 extern_weak     { return EXTERN_WEAK; }
 external        { return EXTERNAL; }
-implementation  { return IMPLEMENTATION; }
 zeroinitializer { return ZEROINITIALIZER; }
 \.\.\.          { return DOTDOTDOT; }
 undef           { return UNDEF; }


Index: llvm/lib/AsmParser/llvmAsmParser.cpp.cvs
diff -u llvm/lib/AsmParser/llvmAsmParser.cpp.cvs:1.80 llvm/lib/AsmParser/llvmAsmParser.cpp.cvs:1.81
--- llvm/lib/AsmParser/llvmAsmParser.cpp.cvs:1.80	Thu Mar 29 20:37:39 2007
+++ llvm/lib/AsmParser/llvmAsmParser.cpp.cvs	Sun Apr  8 20:56:05 2007
@@ -82,120 +82,119 @@
      LABELSTR = 273,
      STRINGCONSTANT = 274,
      ATSTRINGCONSTANT = 275,
-     IMPLEMENTATION = 276,
-     ZEROINITIALIZER = 277,
-     TRUETOK = 278,
-     FALSETOK = 279,
-     BEGINTOK = 280,
-     ENDTOK = 281,
-     DECLARE = 282,
-     DEFINE = 283,
-     GLOBAL = 284,
-     CONSTANT = 285,
-     SECTION = 286,
-     VOLATILE = 287,
-     TO = 288,
-     DOTDOTDOT = 289,
-     NULL_TOK = 290,
-     UNDEF = 291,
-     INTERNAL = 292,
-     LINKONCE = 293,
-     WEAK = 294,
-     APPENDING = 295,
-     DLLIMPORT = 296,
-     DLLEXPORT = 297,
-     EXTERN_WEAK = 298,
-     OPAQUE = 299,
-     EXTERNAL = 300,
-     TARGET = 301,
-     TRIPLE = 302,
-     ALIGN = 303,
-     DEPLIBS = 304,
-     CALL = 305,
-     TAIL = 306,
-     ASM_TOK = 307,
-     MODULE = 308,
-     SIDEEFFECT = 309,
-     CC_TOK = 310,
-     CCC_TOK = 311,
-     FASTCC_TOK = 312,
-     COLDCC_TOK = 313,
-     X86_STDCALLCC_TOK = 314,
-     X86_FASTCALLCC_TOK = 315,
-     DATALAYOUT = 316,
-     RET = 317,
-     BR = 318,
-     SWITCH = 319,
-     INVOKE = 320,
-     UNWIND = 321,
-     UNREACHABLE = 322,
-     ADD = 323,
-     SUB = 324,
-     MUL = 325,
-     UDIV = 326,
-     SDIV = 327,
-     FDIV = 328,
-     UREM = 329,
-     SREM = 330,
-     FREM = 331,
-     AND = 332,
-     OR = 333,
-     XOR = 334,
-     SHL = 335,
-     LSHR = 336,
-     ASHR = 337,
-     ICMP = 338,
-     FCMP = 339,
-     EQ = 340,
-     NE = 341,
-     SLT = 342,
-     SGT = 343,
-     SLE = 344,
-     SGE = 345,
-     ULT = 346,
-     UGT = 347,
-     ULE = 348,
-     UGE = 349,
-     OEQ = 350,
-     ONE = 351,
-     OLT = 352,
-     OGT = 353,
-     OLE = 354,
-     OGE = 355,
-     ORD = 356,
-     UNO = 357,
-     UEQ = 358,
-     UNE = 359,
-     MALLOC = 360,
-     ALLOCA = 361,
-     FREE = 362,
-     LOAD = 363,
-     STORE = 364,
-     GETELEMENTPTR = 365,
-     TRUNC = 366,
-     ZEXT = 367,
-     SEXT = 368,
-     FPTRUNC = 369,
-     FPEXT = 370,
-     BITCAST = 371,
-     UITOFP = 372,
-     SITOFP = 373,
-     FPTOUI = 374,
-     FPTOSI = 375,
-     INTTOPTR = 376,
-     PTRTOINT = 377,
-     PHI_TOK = 378,
-     SELECT = 379,
-     VAARG = 380,
-     EXTRACTELEMENT = 381,
-     INSERTELEMENT = 382,
-     SHUFFLEVECTOR = 383,
-     NORETURN = 384,
-     INREG = 385,
-     SRET = 386,
-     NOUNWIND = 387,
-     DEFAULT = 388,
-     HIDDEN = 389
+     ZEROINITIALIZER = 276,
+     TRUETOK = 277,
+     FALSETOK = 278,
+     BEGINTOK = 279,
+     ENDTOK = 280,
+     DECLARE = 281,
+     DEFINE = 282,
+     GLOBAL = 283,
+     CONSTANT = 284,
+     SECTION = 285,
+     VOLATILE = 286,
+     TO = 287,
+     DOTDOTDOT = 288,
+     NULL_TOK = 289,
+     UNDEF = 290,
+     INTERNAL = 291,
+     LINKONCE = 292,
+     WEAK = 293,
+     APPENDING = 294,
+     DLLIMPORT = 295,
+     DLLEXPORT = 296,
+     EXTERN_WEAK = 297,
+     OPAQUE = 298,
+     EXTERNAL = 299,
+     TARGET = 300,
+     TRIPLE = 301,
+     ALIGN = 302,
+     DEPLIBS = 303,
+     CALL = 304,
+     TAIL = 305,
+     ASM_TOK = 306,
+     MODULE = 307,
+     SIDEEFFECT = 308,
+     CC_TOK = 309,
+     CCC_TOK = 310,
+     FASTCC_TOK = 311,
+     COLDCC_TOK = 312,
+     X86_STDCALLCC_TOK = 313,
+     X86_FASTCALLCC_TOK = 314,
+     DATALAYOUT = 315,
+     RET = 316,
+     BR = 317,
+     SWITCH = 318,
+     INVOKE = 319,
+     UNWIND = 320,
+     UNREACHABLE = 321,
+     ADD = 322,
+     SUB = 323,
+     MUL = 324,
+     UDIV = 325,
+     SDIV = 326,
+     FDIV = 327,
+     UREM = 328,
+     SREM = 329,
+     FREM = 330,
+     AND = 331,
+     OR = 332,
+     XOR = 333,
+     SHL = 334,
+     LSHR = 335,
+     ASHR = 336,
+     ICMP = 337,
+     FCMP = 338,
+     EQ = 339,
+     NE = 340,
+     SLT = 341,
+     SGT = 342,
+     SLE = 343,
+     SGE = 344,
+     ULT = 345,
+     UGT = 346,
+     ULE = 347,
+     UGE = 348,
+     OEQ = 349,
+     ONE = 350,
+     OLT = 351,
+     OGT = 352,
+     OLE = 353,
+     OGE = 354,
+     ORD = 355,
+     UNO = 356,
+     UEQ = 357,
+     UNE = 358,
+     MALLOC = 359,
+     ALLOCA = 360,
+     FREE = 361,
+     LOAD = 362,
+     STORE = 363,
+     GETELEMENTPTR = 364,
+     TRUNC = 365,
+     ZEXT = 366,
+     SEXT = 367,
+     FPTRUNC = 368,
+     FPEXT = 369,
+     BITCAST = 370,
+     UITOFP = 371,
+     SITOFP = 372,
+     FPTOUI = 373,
+     FPTOSI = 374,
+     INTTOPTR = 375,
+     PTRTOINT = 376,
+     PHI_TOK = 377,
+     SELECT = 378,
+     VAARG = 379,
+     EXTRACTELEMENT = 380,
+     INSERTELEMENT = 381,
+     SHUFFLEVECTOR = 382,
+     NORETURN = 383,
+     INREG = 384,
+     SRET = 385,
+     NOUNWIND = 386,
+     DEFAULT = 387,
+     HIDDEN = 388
    };
 #endif
 /* Tokens.  */
@@ -217,126 +216,125 @@
 #define LABELSTR 273
 #define STRINGCONSTANT 274
 #define ATSTRINGCONSTANT 275
-#define IMPLEMENTATION 276
-#define ZEROINITIALIZER 277
-#define TRUETOK 278
-#define FALSETOK 279
-#define BEGINTOK 280
-#define ENDTOK 281
-#define DECLARE 282
-#define DEFINE 283
-#define GLOBAL 284
-#define CONSTANT 285
-#define SECTION 286
-#define VOLATILE 287
-#define TO 288
-#define DOTDOTDOT 289
-#define NULL_TOK 290
-#define UNDEF 291
-#define INTERNAL 292
-#define LINKONCE 293
-#define WEAK 294
-#define APPENDING 295
-#define DLLIMPORT 296
-#define DLLEXPORT 297
-#define EXTERN_WEAK 298
-#define OPAQUE 299
-#define EXTERNAL 300
-#define TARGET 301
-#define TRIPLE 302
-#define ALIGN 303
-#define DEPLIBS 304
-#define CALL 305
-#define TAIL 306
-#define ASM_TOK 307
-#define MODULE 308
-#define SIDEEFFECT 309
-#define CC_TOK 310
-#define CCC_TOK 311
-#define FASTCC_TOK 312
-#define COLDCC_TOK 313
-#define X86_STDCALLCC_TOK 314
-#define X86_FASTCALLCC_TOK 315
-#define DATALAYOUT 316
-#define RET 317
-#define BR 318
-#define SWITCH 319
-#define INVOKE 320
-#define UNWIND 321
-#define UNREACHABLE 322
-#define ADD 323
-#define SUB 324
-#define MUL 325
-#define UDIV 326
-#define SDIV 327
-#define FDIV 328
-#define UREM 329
-#define SREM 330
-#define FREM 331
-#define AND 332
-#define OR 333
-#define XOR 334
-#define SHL 335
-#define LSHR 336
-#define ASHR 337
-#define ICMP 338
-#define FCMP 339
-#define EQ 340
-#define NE 341
-#define SLT 342
-#define SGT 343
-#define SLE 344
-#define SGE 345
-#define ULT 346
-#define UGT 347
-#define ULE 348
-#define UGE 349
-#define OEQ 350
-#define ONE 351
-#define OLT 352
-#define OGT 353
-#define OLE 354
-#define OGE 355
-#define ORD 356
-#define UNO 357
-#define UEQ 358
-#define UNE 359
-#define MALLOC 360
-#define ALLOCA 361
-#define FREE 362
-#define LOAD 363
-#define STORE 364
-#define GETELEMENTPTR 365
-#define TRUNC 366
-#define ZEXT 367
-#define SEXT 368
-#define FPTRUNC 369
-#define FPEXT 370
-#define BITCAST 371
-#define UITOFP 372
-#define SITOFP 373
-#define FPTOUI 374
-#define FPTOSI 375
-#define INTTOPTR 376
-#define PTRTOINT 377
-#define PHI_TOK 378
-#define SELECT 379
-#define VAARG 380
-#define EXTRACTELEMENT 381
-#define INSERTELEMENT 382
-#define SHUFFLEVECTOR 383
-#define NORETURN 384
-#define INREG 385
-#define SRET 386
-#define NOUNWIND 387
-#define DEFAULT 388
-#define HIDDEN 389
+#define ZEROINITIALIZER 276
+#define TRUETOK 277
+#define FALSETOK 278
+#define BEGINTOK 279
+#define ENDTOK 280
+#define DECLARE 281
+#define DEFINE 282
+#define GLOBAL 283
+#define CONSTANT 284
+#define SECTION 285
+#define VOLATILE 286
+#define TO 287
+#define DOTDOTDOT 288
+#define NULL_TOK 289
+#define UNDEF 290
+#define INTERNAL 291
+#define LINKONCE 292
+#define WEAK 293
+#define APPENDING 294
+#define DLLIMPORT 295
+#define DLLEXPORT 296
+#define EXTERN_WEAK 297
+#define OPAQUE 298
+#define EXTERNAL 299
+#define TARGET 300
+#define TRIPLE 301
+#define ALIGN 302
+#define DEPLIBS 303
+#define CALL 304
+#define TAIL 305
+#define ASM_TOK 306
+#define MODULE 307
+#define SIDEEFFECT 308
+#define CC_TOK 309
+#define CCC_TOK 310
+#define FASTCC_TOK 311
+#define COLDCC_TOK 312
+#define X86_STDCALLCC_TOK 313
+#define X86_FASTCALLCC_TOK 314
+#define DATALAYOUT 315
+#define RET 316
+#define BR 317
+#define SWITCH 318
+#define INVOKE 319
+#define UNWIND 320
+#define UNREACHABLE 321
+#define ADD 322
+#define SUB 323
+#define MUL 324
+#define UDIV 325
+#define SDIV 326
+#define FDIV 327
+#define UREM 328
+#define SREM 329
+#define FREM 330
+#define AND 331
+#define OR 332
+#define XOR 333
+#define SHL 334
+#define LSHR 335
+#define ASHR 336
+#define ICMP 337
+#define FCMP 338
+#define EQ 339
+#define NE 340
+#define SLT 341
+#define SGT 342
+#define SLE 343
+#define SGE 344
+#define ULT 345
+#define UGT 346
+#define ULE 347
+#define UGE 348
+#define OEQ 349
+#define ONE 350
+#define OLT 351
+#define OGT 352
+#define OLE 353
+#define OGE 354
+#define ORD 355
+#define UNO 356
+#define UEQ 357
+#define UNE 358
+#define MALLOC 359
+#define ALLOCA 360
+#define FREE 361
+#define LOAD 362
+#define STORE 363
+#define GETELEMENTPTR 364
+#define TRUNC 365
+#define ZEXT 366
+#define SEXT 367
+#define FPTRUNC 368
+#define FPEXT 369
+#define BITCAST 370
+#define UITOFP 371
+#define SITOFP 372
+#define FPTOUI 373
+#define FPTOSI 374
+#define INTTOPTR 375
+#define PTRTOINT 376
+#define PHI_TOK 377
+#define SELECT 378
+#define VAARG 379
+#define EXTRACTELEMENT 380
+#define INSERTELEMENT 381
+#define SHUFFLEVECTOR 382
+#define NORETURN 383
+#define INREG 384
+#define SRET 385
+#define NOUNWIND 386
+#define DEFAULT 387
+#define HIDDEN 388
 
 
 
 
 /* Copy the first part of user declarations.  */
-#line 14 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 14 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
 
 #include "ParserInternals.h"
 #include "llvm/CallingConv.h"
@@ -1281,7 +1279,7 @@
 #endif
 
 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 939 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 939 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
 typedef union YYSTYPE {
   llvm::Module                           *ModuleVal;
   llvm::Function                         *FunctionVal;
@@ -1329,7 +1327,7 @@
   llvm::FCmpInst::Predicate         FPredicate;
 } YYSTYPE;
 /* Line 196 of yacc.c.  */
-#line 1333 "llvmAsmParser.tab.c"
+#line 1331 "llvmAsmParser.tab.c"
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 # define YYSTYPE_IS_TRIVIAL 1
@@ -1341,7 +1339,7 @@
 
 
 /* Line 219 of yacc.c.  */
-#line 1345 "llvmAsmParser.tab.c"
+#line 1343 "llvmAsmParser.tab.c"
 
 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
 # define YYSIZE_T __SIZE_TYPE__
@@ -1490,22 +1488,22 @@
 #endif
 
 /* YYFINAL -- State number of the termination state. */
-#define YYFINAL  40
+#define YYFINAL  39
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   1434
+#define YYLAST   1441
 
 /* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS  149
+#define YYNTOKENS  148
 /* YYNNTS -- Number of nonterminals. */
 #define YYNNTS  78
 /* YYNRULES -- Number of rules. */
-#define YYNRULES  287
+#define YYNRULES  286
 /* YYNRULES -- Number of states. */
-#define YYNSTATES  560
+#define YYNSTATES  559
 
 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
 #define YYUNDEFTOK  2
-#define YYMAXUTOK   389
+#define YYMAXUTOK   388
 
 #define YYTRANSLATE(YYX)						\
   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -1517,15 +1515,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,
-     139,   140,   137,     2,   136,     2,     2,     2,     2,     2,
+     138,   139,   136,     2,   135,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     144,   135,   145,     2,     2,     2,     2,     2,     2,     2,
+     143,   134,   144,     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,   141,   138,   143,     2,     2,     2,     2,     2,   148,
+       2,   140,   137,   142,     2,     2,     2,     2,     2,   147,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     142,     2,     2,   146,     2,   147,     2,     2,     2,     2,
+     141,     2,     2,   145,     2,   146,     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,
@@ -1551,7 +1549,7 @@
       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
-     125,   126,   127,   128,   129,   130,   131,   132,   133,   134
+     125,   126,   127,   128,   129,   130,   131,   132,   133
 };
 
 #if YYDEBUG
@@ -1577,113 +1575,113 @@
      352,   358,   361,   364,   367,   370,   373,   376,   379,   382,
      385,   388,   391,   394,   401,   407,   416,   423,   430,   438,
      446,   453,   462,   471,   475,   477,   479,   481,   483,   484,
-     486,   489,   490,   494,   495,   499,   503,   505,   509,   513,
-     514,   521,   522,   530,   531,   539,   542,   546,   548,   552,
-     556,   560,   564,   566,   567,   573,   577,   579,   583,   585,
-     586,   596,   598,   600,   605,   607,   609,   612,   616,   617,
-     619,   621,   623,   625,   627,   629,   631,   633,   635,   639,
-     641,   647,   649,   651,   653,   655,   657,   659,   662,   665,
-     668,   672,   675,   676,   678,   681,   684,   688,   698,   708,
-     717,   732,   734,   736,   743,   749,   752,   759,   767,   771,
-     777,   778,   779,   783,   786,   788,   794,   800,   807,   814,
-     819,   826,   831,   836,   843,   850,   853,   862,   864,   866,
-     867,   871,   878,   882,   889,   892,   897,   904
+     486,   489,   490,   494,   495,   499,   503,   507,   511,   512,
+     519,   520,   528,   529,   537,   540,   544,   546,   550,   554,
+     558,   562,   564,   565,   571,   575,   577,   581,   583,   584,
+     594,   596,   598,   603,   605,   607,   610,   614,   615,   617,
+     619,   621,   623,   625,   627,   629,   631,   633,   637,   639,
+     645,   647,   649,   651,   653,   655,   657,   660,   663,   666,
+     670,   673,   674,   676,   679,   682,   686,   696,   706,   715,
+     730,   732,   734,   741,   747,   750,   757,   765,   769,   775,
+     776,   777,   781,   784,   786,   792,   798,   805,   812,   817,
+     824,   829,   834,   841,   848,   851,   860,   862,   864,   865,
+     869,   876,   880,   887,   890,   895,   902
 };
 
 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
 static const short int yyrhs[] =
 {
-     189,     0,    -1,    68,    -1,    69,    -1,    70,    -1,    71,
-      -1,    72,    -1,    73,    -1,    74,    -1,    75,    -1,    76,
-      -1,    80,    -1,    81,    -1,    82,    -1,    77,    -1,    78,
-      -1,    79,    -1,   111,    -1,   112,    -1,   113,    -1,   114,
-      -1,   115,    -1,   116,    -1,   117,    -1,   118,    -1,   119,
-      -1,   120,    -1,   121,    -1,   122,    -1,    85,    -1,    86,
-      -1,    87,    -1,    88,    -1,    89,    -1,    90,    -1,    91,
-      -1,    92,    -1,    93,    -1,    94,    -1,    95,    -1,    96,
-      -1,    97,    -1,    98,    -1,    99,    -1,   100,    -1,   101,
-      -1,   102,    -1,   103,    -1,   104,    -1,    91,    -1,    92,
-      -1,    93,    -1,    94,    -1,    23,    -1,    24,    -1,    11,
-      -1,    12,    -1,    13,    -1,    16,    -1,    19,    -1,   157,
-      -1,    -1,   157,   135,    -1,    -1,    17,    -1,    20,    -1,
-     160,   135,    -1,    -1,    37,    -1,    39,    -1,    38,    -1,
-      40,    -1,    42,    -1,    41,    -1,    43,    -1,    45,    -1,
-      -1,   134,    -1,    -1,    41,    -1,    43,    -1,    -1,    37,
-      -1,    38,    -1,    39,    -1,    42,    -1,    -1,    56,    -1,
-      57,    -1,    58,    -1,    59,    -1,    60,    -1,    55,     4,
-      -1,   112,    -1,   113,    -1,   130,    -1,   131,    -1,    -1,
-     169,   168,    -1,   129,    -1,   132,    -1,   168,    -1,    -1,
-     171,   170,    -1,    -1,    48,     4,    -1,    -1,   136,    48,
-       4,    -1,    31,    19,    -1,    -1,   174,    -1,    -1,   136,
-     177,   176,    -1,   174,    -1,    48,     4,    -1,    11,    -1,
-      12,    -1,    13,    -1,    14,    -1,    44,    -1,   178,    -1,
-     179,   137,    -1,   211,    -1,   138,     4,    -1,   179,   139,
-     183,   140,   171,    -1,    10,   139,   183,   140,   171,    -1,
-     141,     4,   142,   179,   143,    -1,   144,     4,   142,   179,
-     145,    -1,   146,   184,   147,    -1,   146,   147,    -1,   144,
-     146,   184,   147,   145,    -1,   144,   146,   147,   145,    -1,
-     179,   169,    -1,   179,    -1,    10,    -1,   180,    -1,   182,
-     136,   180,    -1,   182,    -1,   182,   136,    34,    -1,    34,
-      -1,    -1,   179,    -1,   184,   136,   179,    -1,   179,   141,
-     187,   143,    -1,   179,   141,   143,    -1,   179,   148,    19,
-      -1,   179,   144,   187,   145,    -1,   179,   146,   187,   147,
-      -1,   179,   146,   147,    -1,   179,   144,   146,   187,   147,
-     145,    -1,   179,   144,   146,   147,   145,    -1,   179,    35,
-      -1,   179,    36,    -1,   179,   211,    -1,   179,   186,    -1,
-     179,    22,    -1,   155,     3,    -1,   155,     5,    -1,   155,
-       4,    -1,   155,     6,    -1,    11,    23,    -1,    11,    24,
-      -1,   156,     9,    -1,   152,   139,   185,    33,   179,   140,
-      -1,   110,   139,   185,   222,   140,    -1,   124,   139,   185,
-     136,   185,   136,   185,   140,    -1,   150,   139,   185,   136,
-     185,   140,    -1,   151,   139,   185,   136,   185,   140,    -1,
-      83,   153,   139,   185,   136,   185,   140,    -1,    84,   154,
-     139,   185,   136,   185,   140,    -1,   126,   139,   185,   136,
-     185,   140,    -1,   127,   139,   185,   136,   185,   136,   185,
-     140,    -1,   128,   139,   185,   136,   185,   136,   185,   140,
-      -1,   187,   136,   185,    -1,   185,    -1,    29,    -1,    30,
-      -1,   190,    -1,    -1,   191,    -1,   190,   191,    -1,    -1,
-      28,   192,   207,    -1,    -1,    27,   193,   208,    -1,    53,
-      52,   197,    -1,    21,    -1,   159,    15,   179,    -1,   159,
-      15,    10,    -1,    -1,   161,   164,   188,   185,   194,   176,
-      -1,    -1,   161,   162,   164,   188,   185,   195,   176,    -1,
-      -1,   161,   163,   164,   188,   179,   196,   176,    -1,    46,
-     198,    -1,    49,   135,   199,    -1,    19,    -1,    47,   135,
-      19,    -1,    61,   135,    19,    -1,   141,   200,   143,    -1,
-     200,   136,    19,    -1,    19,    -1,    -1,   201,   136,   179,
-     169,   158,    -1,   179,   169,   158,    -1,   201,    -1,   201,
-     136,    34,    -1,    34,    -1,    -1,   167,   181,   160,   139,
-     202,   140,   171,   175,   172,    -1,    25,    -1,   146,    -1,
-     166,   164,   203,   204,    -1,    26,    -1,   147,    -1,   214,
-     206,    -1,   165,   164,   203,    -1,    -1,    54,    -1,     3,
-      -1,     4,    -1,     9,    -1,    23,    -1,    24,    -1,    35,
-      -1,    36,    -1,    22,    -1,   144,   187,   145,    -1,   186,
-      -1,    52,   209,    19,   136,    19,    -1,     7,    -1,     8,
-      -1,   157,    -1,   160,    -1,   211,    -1,   210,    -1,   179,
-     212,    -1,   214,   215,    -1,   205,   215,    -1,   216,   159,
-     217,    -1,   216,   219,    -1,    -1,    18,    -1,    62,   213,
-      -1,    62,    10,    -1,    63,    14,   212,    -1,    63,    11,
-     212,   136,    14,   212,   136,    14,   212,    -1,    64,   155,
-     212,   136,    14,   212,   141,   218,   143,    -1,    64,   155,
-     212,   136,    14,   212,   141,   143,    -1,    65,   167,   181,
-     212,   139,   221,   140,   171,    33,    14,   212,    66,    14,
-     212,    -1,    66,    -1,    67,    -1,   218,   155,   210,   136,
-      14,   212,    -1,   155,   210,   136,    14,   212,    -1,   159,
-     224,    -1,   179,   141,   212,   136,   212,   143,    -1,   220,
-     136,   141,   212,   136,   212,   143,    -1,   179,   212,   169,
-      -1,   221,   136,   179,   212,   169,    -1,    -1,    -1,   222,
-     136,   213,    -1,    51,    50,    -1,    50,    -1,   150,   179,
-     212,   136,   212,    -1,   151,   179,   212,   136,   212,    -1,
-      83,   153,   179,   212,   136,   212,    -1,    84,   154,   179,
-     212,   136,   212,    -1,   152,   213,    33,   179,    -1,   124,
-     213,   136,   213,   136,   213,    -1,   125,   213,   136,   179,
-      -1,   126,   213,   136,   213,    -1,   127,   213,   136,   213,
-     136,   213,    -1,   128,   213,   136,   213,   136,   213,    -1,
-     123,   220,    -1,   223,   167,   181,   212,   139,   221,   140,
-     171,    -1,   226,    -1,    32,    -1,    -1,   105,   179,   173,
-      -1,   105,   179,   136,    11,   212,   173,    -1,   106,   179,
-     173,    -1,   106,   179,   136,    11,   212,   173,    -1,   107,
-     213,    -1,   225,   108,   179,   212,    -1,   225,   109,   213,
-     136,   179,   212,    -1,   110,   179,   212,   222,    -1
+     188,     0,    -1,    67,    -1,    68,    -1,    69,    -1,    70,
+      -1,    71,    -1,    72,    -1,    73,    -1,    74,    -1,    75,
+      -1,    79,    -1,    80,    -1,    81,    -1,    76,    -1,    77,
+      -1,    78,    -1,   110,    -1,   111,    -1,   112,    -1,   113,
+      -1,   114,    -1,   115,    -1,   116,    -1,   117,    -1,   118,
+      -1,   119,    -1,   120,    -1,   121,    -1,    84,    -1,    85,
+      -1,    86,    -1,    87,    -1,    88,    -1,    89,    -1,    90,
+      -1,    91,    -1,    92,    -1,    93,    -1,    94,    -1,    95,
+      -1,    96,    -1,    97,    -1,    98,    -1,    99,    -1,   100,
+      -1,   101,    -1,   102,    -1,   103,    -1,    90,    -1,    91,
+      -1,    92,    -1,    93,    -1,    22,    -1,    23,    -1,    11,
+      -1,    12,    -1,    13,    -1,    16,    -1,    19,    -1,   156,
+      -1,    -1,   156,   134,    -1,    -1,    17,    -1,    20,    -1,
+     159,   134,    -1,    -1,    36,    -1,    38,    -1,    37,    -1,
+      39,    -1,    41,    -1,    40,    -1,    42,    -1,    44,    -1,
+      -1,   133,    -1,    -1,    40,    -1,    42,    -1,    -1,    36,
+      -1,    37,    -1,    38,    -1,    41,    -1,    -1,    55,    -1,
+      56,    -1,    57,    -1,    58,    -1,    59,    -1,    54,     4,
+      -1,   111,    -1,   112,    -1,   129,    -1,   130,    -1,    -1,
+     168,   167,    -1,   128,    -1,   131,    -1,   167,    -1,    -1,
+     170,   169,    -1,    -1,    47,     4,    -1,    -1,   135,    47,
+       4,    -1,    30,    19,    -1,    -1,   173,    -1,    -1,   135,
+     176,   175,    -1,   173,    -1,    47,     4,    -1,    11,    -1,
+      12,    -1,    13,    -1,    14,    -1,    43,    -1,   177,    -1,
+     178,   136,    -1,   210,    -1,   137,     4,    -1,   178,   138,
+     182,   139,   170,    -1,    10,   138,   182,   139,   170,    -1,
+     140,     4,   141,   178,   142,    -1,   143,     4,   141,   178,
+     144,    -1,   145,   183,   146,    -1,   145,   146,    -1,   143,
+     145,   183,   146,   144,    -1,   143,   145,   146,   144,    -1,
+     178,   168,    -1,   178,    -1,    10,    -1,   179,    -1,   181,
+     135,   179,    -1,   181,    -1,   181,   135,    33,    -1,    33,
+      -1,    -1,   178,    -1,   183,   135,   178,    -1,   178,   140,
+     186,   142,    -1,   178,   140,   142,    -1,   178,   147,    19,
+      -1,   178,   143,   186,   144,    -1,   178,   145,   186,   146,
+      -1,   178,   145,   146,    -1,   178,   143,   145,   186,   146,
+     144,    -1,   178,   143,   145,   146,   144,    -1,   178,    34,
+      -1,   178,    35,    -1,   178,   210,    -1,   178,   185,    -1,
+     178,    21,    -1,   154,     3,    -1,   154,     5,    -1,   154,
+       4,    -1,   154,     6,    -1,    11,    22,    -1,    11,    23,
+      -1,   155,     9,    -1,   151,   138,   184,    32,   178,   139,
+      -1,   109,   138,   184,   221,   139,    -1,   123,   138,   184,
+     135,   184,   135,   184,   139,    -1,   149,   138,   184,   135,
+     184,   139,    -1,   150,   138,   184,   135,   184,   139,    -1,
+      82,   152,   138,   184,   135,   184,   139,    -1,    83,   153,
+     138,   184,   135,   184,   139,    -1,   125,   138,   184,   135,
+     184,   139,    -1,   126,   138,   184,   135,   184,   135,   184,
+     139,    -1,   127,   138,   184,   135,   184,   135,   184,   139,
+      -1,   186,   135,   184,    -1,   184,    -1,    28,    -1,    29,
+      -1,   189,    -1,    -1,   190,    -1,   189,   190,    -1,    -1,
+      27,   191,   206,    -1,    -1,    26,   192,   207,    -1,    52,
+      51,   196,    -1,   158,    15,   178,    -1,   158,    15,    10,
+      -1,    -1,   160,   163,   187,   184,   193,   175,    -1,    -1,
+     160,   161,   163,   187,   184,   194,   175,    -1,    -1,   160,
+     162,   163,   187,   178,   195,   175,    -1,    45,   197,    -1,
+      48,   134,   198,    -1,    19,    -1,    46,   134,    19,    -1,
+      60,   134,    19,    -1,   140,   199,   142,    -1,   199,   135,
+      19,    -1,    19,    -1,    -1,   200,   135,   178,   168,   157,
+      -1,   178,   168,   157,    -1,   200,    -1,   200,   135,    33,
+      -1,    33,    -1,    -1,   166,   180,   159,   138,   201,   139,
+     170,   174,   171,    -1,    24,    -1,   145,    -1,   165,   163,
+     202,   203,    -1,    25,    -1,   146,    -1,   213,   205,    -1,
+     164,   163,   202,    -1,    -1,    53,    -1,     3,    -1,     4,
+      -1,     9,    -1,    22,    -1,    23,    -1,    34,    -1,    35,
+      -1,    21,    -1,   143,   186,   144,    -1,   185,    -1,    51,
+     208,    19,   135,    19,    -1,     7,    -1,     8,    -1,   156,
+      -1,   159,    -1,   210,    -1,   209,    -1,   178,   211,    -1,
+     213,   214,    -1,   204,   214,    -1,   215,   158,   216,    -1,
+     215,   218,    -1,    -1,    18,    -1,    61,   212,    -1,    61,
+      10,    -1,    62,    14,   211,    -1,    62,    11,   211,   135,
+      14,   211,   135,    14,   211,    -1,    63,   154,   211,   135,
+      14,   211,   140,   217,   142,    -1,    63,   154,   211,   135,
+      14,   211,   140,   142,    -1,    64,   166,   180,   211,   138,
+     220,   139,   170,    32,    14,   211,    65,    14,   211,    -1,
+      65,    -1,    66,    -1,   217,   154,   209,   135,    14,   211,
+      -1,   154,   209,   135,    14,   211,    -1,   158,   223,    -1,
+     178,   140,   211,   135,   211,   142,    -1,   219,   135,   140,
+     211,   135,   211,   142,    -1,   178,   211,   168,    -1,   220,
+     135,   178,   211,   168,    -1,    -1,    -1,   221,   135,   212,
+      -1,    50,    49,    -1,    49,    -1,   149,   178,   211,   135,
+     211,    -1,   150,   178,   211,   135,   211,    -1,    82,   152,
+     178,   211,   135,   211,    -1,    83,   153,   178,   211,   135,
+     211,    -1,   151,   212,    32,   178,    -1,   123,   212,   135,
+     212,   135,   212,    -1,   124,   212,   135,   178,    -1,   125,
+     212,   135,   212,    -1,   126,   212,   135,   212,   135,   212,
+      -1,   127,   212,   135,   212,   135,   212,    -1,   122,   219,
+      -1,   222,   166,   180,   211,   138,   220,   139,   170,    -1,
+     225,    -1,    31,    -1,    -1,   104,   178,   172,    -1,   104,
+     178,   135,    11,   211,   172,    -1,   105,   178,   172,    -1,
+     105,   178,   135,    11,   211,   172,    -1,   106,   212,    -1,
+     224,   107,   178,   211,    -1,   224,   108,   212,   135,   178,
+     211,    -1,   109,   178,   211,   221,    -1
 };
 
 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
@@ -1707,17 +1705,17 @@
     1629,  1649,  1661,  1668,  1734,  1744,  1754,  1760,  1770,  1776,
     1786,  1791,  1796,  1804,  1816,  1838,  1846,  1852,  1863,  1868,
     1873,  1879,  1885,  1894,  1898,  1906,  1906,  1917,  1922,  1930,
-    1931,  1935,  1935,  1939,  1939,  1942,  1945,  1957,  1981,  1992,
-    1992,  2002,  2002,  2010,  2010,  2020,  2023,  2029,  2042,  2046,
-    2051,  2053,  2058,  2063,  2072,  2082,  2093,  2097,  2106,  2115,
-    2120,  2232,  2232,  2234,  2243,  2243,  2245,  2250,  2262,  2266,
-    2271,  2275,  2279,  2283,  2287,  2291,  2295,  2299,  2303,  2328,
-    2332,  2346,  2350,  2354,  2358,  2364,  2364,  2370,  2379,  2383,
-    2392,  2401,  2410,  2414,  2419,  2423,  2427,  2432,  2442,  2461,
-    2470,  2539,  2543,  2550,  2561,  2574,  2584,  2595,  2605,  2614,
-    2623,  2626,  2627,  2634,  2638,  2643,  2664,  2681,  2695,  2709,
-    2721,  2729,  2736,  2742,  2748,  2754,  2769,  2833,  2838,  2842,
-    2849,  2856,  2864,  2871,  2879,  2887,  2901,  2918
+    1931,  1935,  1935,  1939,  1939,  1942,  1945,  1969,  1980,  1980,
+    1990,  1990,  1998,  1998,  2008,  2011,  2017,  2030,  2034,  2039,
+    2041,  2046,  2051,  2060,  2070,  2081,  2085,  2094,  2103,  2108,
+    2220,  2220,  2222,  2231,  2231,  2233,  2238,  2250,  2254,  2259,
+    2263,  2267,  2271,  2275,  2279,  2283,  2287,  2291,  2316,  2320,
+    2334,  2338,  2342,  2346,  2352,  2352,  2358,  2367,  2371,  2380,
+    2389,  2398,  2402,  2407,  2411,  2415,  2420,  2430,  2449,  2458,
+    2527,  2531,  2538,  2549,  2562,  2572,  2583,  2593,  2602,  2611,
+    2614,  2615,  2622,  2626,  2631,  2652,  2669,  2683,  2697,  2709,
+    2717,  2724,  2730,  2736,  2742,  2757,  2821,  2826,  2830,  2837,
+    2844,  2852,  2859,  2867,  2875,  2889,  2906
 };
 #endif
 
@@ -1729,38 +1727,38 @@
   "$end", "error", "$undefined", "ESINT64VAL", "EUINT64VAL", "ESAPINTVAL",
   "EUAPINTVAL", "LOCALVAL_ID", "GLOBALVAL_ID", "FPVAL", "VOID", "INTTYPE",
   "FLOAT", "DOUBLE", "LABEL", "TYPE", "LOCALVAR", "GLOBALVAR", "LABELSTR",
-  "STRINGCONSTANT", "ATSTRINGCONSTANT", "IMPLEMENTATION",
-  "ZEROINITIALIZER", "TRUETOK", "FALSETOK", "BEGINTOK", "ENDTOK",
-  "DECLARE", "DEFINE", "GLOBAL", "CONSTANT", "SECTION", "VOLATILE", "TO",
-  "DOTDOTDOT", "NULL_TOK", "UNDEF", "INTERNAL", "LINKONCE", "WEAK",
-  "APPENDING", "DLLIMPORT", "DLLEXPORT", "EXTERN_WEAK", "OPAQUE",
-  "EXTERNAL", "TARGET", "TRIPLE", "ALIGN", "DEPLIBS", "CALL", "TAIL",
-  "ASM_TOK", "MODULE", "SIDEEFFECT", "CC_TOK", "CCC_TOK", "FASTCC_TOK",
-  "COLDCC_TOK", "X86_STDCALLCC_TOK", "X86_FASTCALLCC_TOK", "DATALAYOUT",
-  "RET", "BR", "SWITCH", "INVOKE", "UNWIND", "UNREACHABLE", "ADD", "SUB",
-  "MUL", "UDIV", "SDIV", "FDIV", "UREM", "SREM", "FREM", "AND", "OR",
-  "XOR", "SHL", "LSHR", "ASHR", "ICMP", "FCMP", "EQ", "NE", "SLT", "SGT",
-  "SLE", "SGE", "ULT", "UGT", "ULE", "UGE", "OEQ", "ONE", "OLT", "OGT",
-  "OLE", "OGE", "ORD", "UNO", "UEQ", "UNE", "MALLOC", "ALLOCA", "FREE",
-  "LOAD", "STORE", "GETELEMENTPTR", "TRUNC", "ZEXT", "SEXT", "FPTRUNC",
-  "FPEXT", "BITCAST", "UITOFP", "SITOFP", "FPTOUI", "FPTOSI", "INTTOPTR",
-  "PTRTOINT", "PHI_TOK", "SELECT", "VAARG", "EXTRACTELEMENT",
-  "INSERTELEMENT", "SHUFFLEVECTOR", "NORETURN", "INREG", "SRET",
-  "NOUNWIND", "DEFAULT", "HIDDEN", "'='", "','", "'*'", "'\\\\'", "'('",
-  "')'", "'['", "'x'", "']'", "'<'", "'>'", "'{'", "'}'", "'c'", "$accept",
-  "ArithmeticOps", "LogicalOps", "CastOps", "IPredicates", "FPredicates",
-  "IntType", "FPType", "LocalName", "OptLocalName", "OptLocalAssign",
-  "GlobalName", "OptGlobalAssign", "GVInternalLinkage",
-  "GVExternalLinkage", "GVVisibilityStyle", "FunctionDeclareLinkage",
-  "FunctionDefineLinkage", "OptCallingConv", "ParamAttr", "OptParamAttrs",
-  "FuncAttr", "OptFuncAttrs", "OptAlign", "OptCAlign", "SectionString",
-  "OptSection", "GlobalVarAttributes", "GlobalVarAttribute", "PrimType",
-  "Types", "ArgType", "ResultTypes", "ArgTypeList", "ArgTypeListI",
-  "TypeListI", "ConstVal", "ConstExpr", "ConstVector", "GlobalType",
-  "Module", "DefinitionList", "Definition", "@1", "@2", "@3", "@4", "@5",
-  "AsmBlock", "TargetDefinition", "LibrariesDefinition", "LibList",
-  "ArgListH", "ArgList", "FunctionHeaderH", "BEGIN", "FunctionHeader",
-  "END", "Function", "FunctionProto", "OptSideEffect", "ConstValueRef",
+  "STRINGCONSTANT", "ATSTRINGCONSTANT", "ZEROINITIALIZER", "TRUETOK",
+  "FALSETOK", "BEGINTOK", "ENDTOK", "DECLARE", "DEFINE", "GLOBAL",
+  "CONSTANT", "SECTION", "VOLATILE", "TO", "DOTDOTDOT", "NULL_TOK",
+  "UNDEF", "INTERNAL", "LINKONCE", "WEAK", "APPENDING", "DLLIMPORT",
+  "DLLEXPORT", "EXTERN_WEAK", "OPAQUE", "EXTERNAL", "TARGET", "TRIPLE",
+  "ALIGN", "DEPLIBS", "CALL", "TAIL", "ASM_TOK", "MODULE", "SIDEEFFECT",
+  "CC_TOK", "CCC_TOK", "FASTCC_TOK", "COLDCC_TOK", "X86_STDCALLCC_TOK",
+  "X86_FASTCALLCC_TOK", "DATALAYOUT", "RET", "BR", "SWITCH", "INVOKE",
+  "UNWIND", "UNREACHABLE", "ADD", "SUB", "MUL", "UDIV", "SDIV", "FDIV",
+  "UREM", "SREM", "FREM", "AND", "OR", "XOR", "SHL", "LSHR", "ASHR",
+  "ICMP", "FCMP", "EQ", "NE", "SLT", "SGT", "SLE", "SGE", "ULT", "UGT",
+  "ULE", "UGE", "OEQ", "ONE", "OLT", "OGT", "OLE", "OGE", "ORD", "UNO",
+  "UEQ", "UNE", "MALLOC", "ALLOCA", "FREE", "LOAD", "STORE",
+  "GETELEMENTPTR", "TRUNC", "ZEXT", "SEXT", "FPTRUNC", "FPEXT", "BITCAST",
+  "UITOFP", "SITOFP", "FPTOUI", "FPTOSI", "INTTOPTR", "PTRTOINT",
+  "PHI_TOK", "SELECT", "VAARG", "EXTRACTELEMENT", "INSERTELEMENT",
+  "SHUFFLEVECTOR", "NORETURN", "INREG", "SRET", "NOUNWIND", "DEFAULT",
+  "HIDDEN", "'='", "','", "'*'", "'\\\\'", "'('", "')'", "'['", "'x'",
+  "']'", "'<'", "'>'", "'{'", "'}'", "'c'", "$accept", "ArithmeticOps",
+  "LogicalOps", "CastOps", "IPredicates", "FPredicates", "IntType",
+  "FPType", "LocalName", "OptLocalName", "OptLocalAssign", "GlobalName",
+  "OptGlobalAssign", "GVInternalLinkage", "GVExternalLinkage",
+  "GVVisibilityStyle", "FunctionDeclareLinkage", "FunctionDefineLinkage",
+  "OptCallingConv", "ParamAttr", "OptParamAttrs", "FuncAttr",
+  "OptFuncAttrs", "OptAlign", "OptCAlign", "SectionString", "OptSection",
+  "GlobalVarAttributes", "GlobalVarAttribute", "PrimType", "Types",
+  "ArgType", "ResultTypes", "ArgTypeList", "ArgTypeListI", "TypeListI",
+  "ConstVal", "ConstExpr", "ConstVector", "GlobalType", "Module",
+  "DefinitionList", "Definition", "@1", "@2", "@3", "@4", "@5", "AsmBlock",
+  "TargetDefinition", "LibrariesDefinition", "LibList", "ArgListH",
+  "ArgList", "FunctionHeaderH", "BEGIN", "FunctionHeader", "END",
+  "Function", "FunctionProto", "OptSideEffect", "ConstValueRef",
   "SymbolicValueRef", "ValueRef", "ResolvedVal", "BasicBlockList",
   "BasicBlock", "InstructionList", "BBTerminatorInst", "JumpTable", "Inst",
   "PHIList", "ValueRefList", "IndexList", "OptTailCall", "InstVal",
@@ -1786,43 +1784,43 @@
      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
-     385,   386,   387,   388,   389,    61,    44,    42,    92,    40,
-      41,    91,   120,    93,    60,    62,   123,   125,    99
+     385,   386,   387,   388,    61,    44,    42,    92,    40,    41,
+      91,   120,    93,    60,    62,   123,   125,    99
 };
 # endif
 
 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
 static const unsigned char yyr1[] =
 {
-       0,   149,   150,   150,   150,   150,   150,   150,   150,   150,
-     150,   151,   151,   151,   151,   151,   151,   152,   152,   152,
+       0,   148,   149,   149,   149,   149,   149,   149,   149,   149,
+     149,   150,   150,   150,   150,   150,   150,   151,   151,   151,
+     151,   151,   151,   151,   151,   151,   151,   151,   151,   152,
      152,   152,   152,   152,   152,   152,   152,   152,   152,   153,
-     153,   153,   153,   153,   153,   153,   153,   153,   153,   154,
-     154,   154,   154,   154,   154,   154,   154,   154,   154,   154,
-     154,   154,   154,   154,   154,   155,   156,   156,   157,   157,
-     158,   158,   159,   159,   160,   160,   161,   161,   162,   162,
-     162,   162,   162,   163,   163,   163,   164,   164,   165,   165,
-     165,   166,   166,   166,   166,   166,   167,   167,   167,   167,
-     167,   167,   167,   168,   168,   168,   168,   169,   169,   170,
-     170,   170,   171,   171,   172,   172,   173,   173,   174,   175,
-     175,   176,   176,   177,   177,   178,   178,   178,   178,   179,
-     179,   179,   179,   179,   179,   179,   179,   179,   179,   179,
-     179,   179,   180,   181,   181,   182,   182,   183,   183,   183,
-     183,   184,   184,   185,   185,   185,   185,   185,   185,   185,
-     185,   185,   185,   185,   185,   185,   185,   185,   185,   185,
-     185,   185,   185,   186,   186,   186,   186,   186,   186,   186,
-     186,   186,   186,   187,   187,   188,   188,   189,   189,   190,
-     190,   192,   191,   193,   191,   191,   191,   191,   191,   194,
-     191,   195,   191,   196,   191,   191,   191,   197,   198,   198,
-     199,   200,   200,   200,   201,   201,   202,   202,   202,   202,
-     203,   204,   204,   205,   206,   206,   207,   208,   209,   209,
-     210,   210,   210,   210,   210,   210,   210,   210,   210,   210,
-     210,   211,   211,   211,   211,   212,   212,   213,   214,   214,
-     215,   216,   216,   216,   217,   217,   217,   217,   217,   217,
-     217,   217,   217,   218,   218,   219,   220,   220,   221,   221,
-     221,   222,   222,   223,   223,   224,   224,   224,   224,   224,
-     224,   224,   224,   224,   224,   224,   224,   224,   225,   225,
-     226,   226,   226,   226,   226,   226,   226,   226
+     153,   153,   153,   153,   153,   153,   153,   153,   153,   153,
+     153,   153,   153,   153,   153,   154,   155,   155,   156,   156,
+     157,   157,   158,   158,   159,   159,   160,   160,   161,   161,
+     161,   161,   161,   162,   162,   162,   163,   163,   164,   164,
+     164,   165,   165,   165,   165,   165,   166,   166,   166,   166,
+     166,   166,   166,   167,   167,   167,   167,   168,   168,   169,
+     169,   169,   170,   170,   171,   171,   172,   172,   173,   174,
+     174,   175,   175,   176,   176,   177,   177,   177,   177,   178,
+     178,   178,   178,   178,   178,   178,   178,   178,   178,   178,
+     178,   178,   179,   180,   180,   181,   181,   182,   182,   182,
+     182,   183,   183,   184,   184,   184,   184,   184,   184,   184,
+     184,   184,   184,   184,   184,   184,   184,   184,   184,   184,
+     184,   184,   184,   185,   185,   185,   185,   185,   185,   185,
+     185,   185,   185,   186,   186,   187,   187,   188,   188,   189,
+     189,   191,   190,   192,   190,   190,   190,   190,   193,   190,
+     194,   190,   195,   190,   190,   190,   196,   197,   197,   198,
+     199,   199,   199,   200,   200,   201,   201,   201,   201,   202,
+     203,   203,   204,   205,   205,   206,   207,   208,   208,   209,
+     209,   209,   209,   209,   209,   209,   209,   209,   209,   209,
+     210,   210,   210,   210,   211,   211,   212,   213,   213,   214,
+     215,   215,   215,   216,   216,   216,   216,   216,   216,   216,
+     216,   216,   217,   217,   218,   219,   219,   220,   220,   220,
+     221,   221,   222,   222,   223,   223,   223,   223,   223,   223,
+     223,   223,   223,   223,   223,   223,   223,   224,   224,   225,
+     225,   225,   225,   225,   225,   225,   225
 };
 
 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
@@ -1846,17 +1844,17 @@
        5,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     6,     5,     8,     6,     6,     7,     7,
        6,     8,     8,     3,     1,     1,     1,     1,     0,     1,
-       2,     0,     3,     0,     3,     3,     1,     3,     3,     0,
-       6,     0,     7,     0,     7,     2,     3,     1,     3,     3,
-       3,     3,     1,     0,     5,     3,     1,     3,     1,     0,
-       9,     1,     1,     4,     1,     1,     2,     3,     0,     1,
-       1,     1,     1,     1,     1,     1,     1,     1,     3,     1,
-       5,     1,     1,     1,     1,     1,     1,     2,     2,     2,
-       3,     2,     0,     1,     2,     2,     3,     9,     9,     8,
-      14,     1,     1,     6,     5,     2,     6,     7,     3,     5,
-       0,     0,     3,     2,     1,     5,     5,     6,     6,     4,
-       6,     4,     4,     6,     6,     2,     8,     1,     1,     0,
-       3,     6,     3,     6,     2,     4,     6,     4
+       2,     0,     3,     0,     3,     3,     3,     3,     0,     6,
+       0,     7,     0,     7,     2,     3,     1,     3,     3,     3,
+       3,     1,     0,     5,     3,     1,     3,     1,     0,     9,
+       1,     1,     4,     1,     1,     2,     3,     0,     1,     1,
+       1,     1,     1,     1,     1,     1,     1,     3,     1,     5,
+       1,     1,     1,     1,     1,     1,     2,     2,     2,     3,
+       2,     0,     1,     2,     2,     3,     9,     9,     8,    14,
+       1,     1,     6,     5,     2,     6,     7,     3,     5,     0,
+       0,     3,     2,     1,     5,     5,     6,     6,     4,     6,
+       4,     4,     6,     6,     2,     8,     1,     1,     0,     3,
+       6,     3,     6,     2,     4,     6,     4
 };
 
 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@@ -1864,151 +1862,151 @@
    means the default is an error.  */
 static const unsigned short int yydefact[] =
 {
-      67,    58,    64,    59,    65,   186,   183,   181,     0,     0,
-       0,     0,     0,     0,    76,     0,    67,   179,    78,    81,
-       0,     0,   195,     0,     0,    62,     0,    66,    68,    70,
-      69,    71,    73,    72,    74,    75,    77,    76,    76,     0,
-       1,   180,    79,    80,    76,   184,    82,    83,    84,    85,
-      76,   242,   182,   242,     0,     0,   203,   196,   197,   185,
-     231,   232,   188,   115,   116,   117,   118,   119,     0,     0,
-       0,     0,   233,   234,   120,   187,   122,     0,     0,   175,
-     176,     0,    86,    86,   243,   239,    63,   214,   215,   216,
-     238,   198,   199,   202,     0,   140,   123,     0,     0,     0,
-       0,   129,   141,     0,   121,   140,     0,     0,   115,   116,
-     117,     0,     0,     0,   189,     0,    87,    88,    89,    90,
-      91,     0,   217,     0,   279,   241,     0,   200,   139,    97,
-     135,   137,     0,     0,     0,     0,     0,     0,   128,     0,
-     191,   193,   160,   161,   156,   158,   157,   159,   162,   155,
-     151,   152,     2,     3,     4,     5,     6,     7,     8,     9,
-      10,    14,    15,    16,    11,    12,    13,     0,     0,     0,
-      17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
-      27,    28,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,   154,   153,   111,    92,   134,   133,     0,
-     211,   212,   213,   278,   264,     0,     0,     0,     0,    86,
-     251,   252,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   240,    86,   255,
-       0,   277,   201,   132,     0,   102,     0,     0,   131,     0,
-     142,   102,   111,   111,    29,    30,    31,    32,    33,    34,
-      35,    36,    37,    38,     0,    53,    54,    49,    50,    51,
-      52,    39,    40,    41,    42,    43,    44,    45,    46,    47,
-      48,     0,     0,     0,     0,     0,     0,   144,   174,     0,
-       0,     0,   148,     0,   145,     0,     0,     0,     0,   190,
-       0,   263,   245,     0,   244,     0,     0,    55,     0,     0,
-       0,     0,   106,   106,   284,     0,     0,   275,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,    93,
-      94,    95,    96,    98,   138,   136,   125,   126,   127,   130,
-     124,   192,   194,     0,     0,   261,     0,     0,     0,     0,
-       0,   143,   129,   141,     0,   146,   147,     0,     0,     0,
-       0,     0,   113,   111,   209,   220,   221,   222,   227,   223,
-     224,   225,   226,   218,     0,   229,   236,   235,   237,     0,
-     246,     0,     0,     0,     0,     0,   280,     0,   282,   261,
+      67,    58,    64,    59,    65,   183,   181,     0,     0,     0,
+       0,     0,     0,    76,     0,    67,   179,    78,    81,     0,
+       0,   194,     0,     0,    62,     0,    66,    68,    70,    69,
+      71,    73,    72,    74,    75,    77,    76,    76,     0,     1,
+     180,    79,    80,    76,   184,    82,    83,    84,    85,    76,
+     241,   182,   241,     0,     0,   202,   195,   196,   185,   230,
+     231,   187,   115,   116,   117,   118,   119,     0,     0,     0,
+       0,   232,   233,   120,   186,   122,     0,     0,   175,   176,
+       0,    86,    86,   242,   238,    63,   213,   214,   215,   237,
+     197,   198,   201,     0,   140,   123,     0,     0,     0,     0,
+     129,   141,     0,   121,   140,     0,     0,   115,   116,   117,
+       0,     0,     0,   188,     0,    87,    88,    89,    90,    91,
+       0,   216,     0,   278,   240,     0,   199,   139,    97,   135,
+     137,     0,     0,     0,     0,     0,     0,   128,     0,   190,
+     192,   160,   161,   156,   158,   157,   159,   162,   155,   151,
+     152,     2,     3,     4,     5,     6,     7,     8,     9,    10,
+      14,    15,    16,    11,    12,    13,     0,     0,     0,    17,
+      18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
+      28,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,   154,   153,   111,    92,   134,   133,     0,   210,
+     211,   212,   277,   263,     0,     0,     0,     0,    86,   250,
+     251,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,   239,    86,   254,     0,
+     276,   200,   132,     0,   102,     0,     0,   131,     0,   142,
+     102,   111,   111,    29,    30,    31,    32,    33,    34,    35,
+      36,    37,    38,     0,    53,    54,    49,    50,    51,    52,
+      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
+       0,     0,     0,     0,     0,     0,   144,   174,     0,     0,
+       0,   148,     0,   145,     0,     0,     0,     0,   189,     0,
+     262,   244,     0,   243,     0,     0,    55,     0,     0,     0,
+       0,   106,   106,   283,     0,     0,   274,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,    93,    94,
+      95,    96,    98,   138,   136,   125,   126,   127,   130,   124,
+     191,   193,     0,     0,   260,     0,     0,     0,     0,     0,
+     143,   129,   141,     0,   146,   147,     0,     0,     0,     0,
+       0,   113,   111,   208,   219,   220,   221,   226,   222,   223,
+     224,   225,   217,     0,   228,   235,   234,   236,     0,   245,
+       0,     0,     0,     0,     0,   279,     0,   281,   260,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,    99,   100,   101,   103,     0,     0,     0,
-       0,     0,     0,     0,   173,   150,     0,     0,     0,     0,
-     108,   114,   112,   208,    97,   206,     0,   219,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   287,     0,
-       0,     0,   271,   272,     0,     0,     0,     0,   269,     0,
-     285,     0,     0,     0,     0,   164,     0,     0,     0,     0,
-     149,     0,     0,     0,    61,     0,   102,     0,   228,     0,
-       0,   260,     0,     0,   106,   107,   106,     0,     0,     0,
-       0,     0,   265,   266,   260,     0,     0,     0,   262,     0,
-     170,     0,     0,   166,   167,   163,    60,   205,   207,    97,
-     109,     0,     0,     0,     0,     0,   267,   268,     0,   281,
-     283,     0,     0,   270,   273,   274,     0,   286,   168,   169,
-       0,     0,     0,    61,   110,   104,   230,     0,     0,    97,
-       0,   102,   256,     0,   102,   165,   171,   172,   204,     0,
-     210,     0,   249,     0,     0,   258,     0,     0,   257,   276,
-     105,   247,     0,   248,     0,    97,     0,     0,     0,   259,
-       0,     0,     0,     0,   254,     0,     0,   253,     0,   250
+       0,     0,    99,   100,   101,   103,     0,     0,     0,     0,
+       0,     0,     0,   173,   150,     0,     0,     0,     0,   108,
+     114,   112,   207,    97,   205,     0,   218,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,   286,     0,     0,
+       0,   270,   271,     0,     0,     0,     0,   268,     0,   284,
+       0,     0,     0,     0,   164,     0,     0,     0,     0,   149,
+       0,     0,     0,    61,     0,   102,     0,   227,     0,     0,
+     259,     0,     0,   106,   107,   106,     0,     0,     0,     0,
+       0,   264,   265,   259,     0,     0,     0,   261,     0,   170,
+       0,     0,   166,   167,   163,    60,   204,   206,    97,   109,
+       0,     0,     0,     0,     0,   266,   267,     0,   280,   282,
+       0,     0,   269,   272,   273,     0,   285,   168,   169,     0,
+       0,     0,    61,   110,   104,   229,     0,     0,    97,     0,
+     102,   255,     0,   102,   165,   171,   172,   203,     0,   209,
+       0,   248,     0,     0,   257,     0,     0,   256,   275,   105,
+     246,     0,   247,     0,    97,     0,     0,     0,   258,     0,
+       0,     0,     0,   253,     0,     0,   252,     0,   249
 };
 
 /* YYDEFGOTO[NTERM-NUM]. */
 static const short int yydefgoto[] =
 {
-      -1,   190,   191,   192,   254,   271,   111,   112,    72,   487,
-      12,    73,    14,    37,    38,    39,    44,    50,   121,   323,
-     233,   396,   326,   530,   376,   352,   515,   289,   353,    74,
-     113,   130,   199,   131,   132,   103,   278,   365,   279,    81,
-      15,    16,    17,    19,    18,   195,   242,   243,    59,    22,
-      57,    94,   415,   416,   122,   202,    51,    89,    52,    45,
-     418,   366,    76,   368,   294,    53,    85,    86,   227,   534,
-     125,   307,   495,   399,   228,   229,   230,   231
+      -1,   189,   190,   191,   253,   270,   110,   111,    71,   486,
+      11,    72,    13,    36,    37,    38,    43,    49,   120,   322,
+     232,   395,   325,   529,   375,   351,   514,   288,   352,    73,
+     112,   129,   198,   130,   131,   102,   277,   364,   278,    80,
+      14,    15,    16,    18,    17,   194,   241,   242,    58,    21,
+      56,    93,   414,   415,   121,   201,    50,    88,    51,    44,
+     417,   365,    75,   367,   293,    52,    84,    85,   226,   533,
+     124,   306,   494,   398,   227,   228,   229,   230
 };
 
 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    STATE-NUM.  */
-#define YYPACT_NINF -472
+#define YYPACT_NINF -428
 static const short int yypact[] =
 {
-      44,  -472,  -472,  -472,  -472,  -472,  -472,  -472,    -9,   -93,
-      25,   -40,    89,    40,   303,   124,   406,  -472,   137,   199,
-      48,    73,  -472,    72,   147,  -472,  1101,  -472,  -472,  -472,
-    -472,  -472,  -472,  -472,  -472,  -472,  -472,    86,    86,   110,
-    -472,  -472,  -472,  -472,    86,  -472,  -472,  -472,  -472,  -472,
-      86,   215,  -472,     9,   216,   228,   233,  -472,  -472,  -472,
-    -472,  -472,   118,  -472,  -472,  -472,  -472,  -472,   250,   254,
-       4,   115,  -472,  -472,  -472,    88,  -472,   110,   110,  -472,
-    -472,  1115,   310,   310,  -472,  -472,    31,  -472,  -472,  -472,
-    -472,  -472,  -472,  -472,   -22,   955,  -472,   135,   138,   141,
-     118,  -472,    88,  -102,  -472,   955,  1115,  1153,    52,   251,
-     269,   239,   272,   739,  -472,   280,  -472,  -472,  -472,  -472,
-    -472,  1167,  -472,    -8,  1306,  -472,   270,  -472,  -472,    88,
-    -472,   154,   155,  1153,  1153,   156,   -55,  1153,  -472,   164,
-    -472,    88,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
-    -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
-    -472,  -472,  -472,  -472,  -472,  -472,  -472,   289,   447,   166,
-    -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
-    -472,  -472,   168,   169,   170,   171,   995,  1206,   491,   292,
-     174,   175,   176,  -472,  -472,   182,  -472,   118,    88,    49,
-    -472,  -472,  -472,  -472,  -472,   273,  1221,   122,   313,   310,
-    -472,  -472,   289,   447,  1153,  1153,  1153,  1153,  1153,  1153,
-    1153,  1153,  1153,  1153,  1153,  1153,  1153,  -472,   310,  -472,
-      38,  -472,  -472,   -24,  1010,  -472,    34,   -26,  -472,   180,
-      88,  -472,   182,   182,  -472,  -472,  -472,  -472,  -472,  -472,
-    -472,  -472,  -472,  -472,   187,  -472,  -472,  -472,  -472,  -472,
-    -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
-    -472,   188,  1115,  1115,  1115,  1115,  1115,  -472,  -472,    -6,
-     909,  -104,  -472,   -42,  -472,  1115,  1115,  1115,   -11,  -472,
-     195,  -472,   118,   592,  -472,   718,   718,  -472,   718,  1167,
-    1153,  1153,   -21,    93,  -472,   592,    35,   200,   203,   211,
-     213,   214,   218,   592,   592,   302,  1167,  1153,  1153,  -472,
-    -472,  -472,  -472,  -472,  -472,  -472,   -29,  -472,  -472,  -472,
-     -29,  -472,  -472,  1115,  1115,  -472,   219,   235,   255,   256,
-    1115,  -472,   207,   739,   -37,  -472,  -472,   258,   261,   354,
-     371,   395,  -472,   182,  1050,  -472,  -472,  -472,  -472,  -472,
-    -472,  -472,  -472,   346,  1115,  -472,  -472,  -472,  -472,   266,
-    -472,   267,   718,   592,   592,    19,  -472,    20,  -472,  -472,
-     718,   263,  1153,  1153,  1153,  1153,  1153,   271,   274,  1153,
-     718,   592,   279,  -472,  -472,  -472,  -472,   281,   282,    29,
-    1115,  1115,  1115,  1115,  -472,  -472,   284,  1115,  1115,  1153,
-    -472,  -472,  -472,  -472,    88,   288,   268,  -472,   412,   -96,
-     418,   421,   299,   304,   305,   718,   435,   718,   306,   307,
-     718,   311,    88,  -472,   312,   314,   718,   718,    88,   317,
-    -472,  1153,  1115,  1115,  1153,  -472,   315,   318,   324,   325,
-    -472,   323,   326,   157,    32,  1066,  -472,   328,  -472,   718,
-     718,  1153,   718,   718,   329,  -472,   329,   718,   331,  1153,
-    1153,  1153,  -472,  -472,  1153,   592,   335,   338,  -472,  1115,
-    -472,  1115,  1115,  -472,  -472,  -472,  -472,  -472,  -472,    88,
-     136,   434,   332,   341,   592,    71,  -472,  -472,   431,  -472,
-    -472,   340,   718,  -472,  -472,  -472,    74,  -472,  -472,  -472,
-     345,   347,   348,    32,  -472,   438,  -472,   455,    -2,  -472,
-    1153,  -472,  -472,   349,  -472,  -472,  -472,  -472,  -472,   485,
-    -472,   718,  -472,   866,    -1,   -24,   592,   190,  -472,   -29,
-    -472,  -472,   357,  -472,   866,  -472,   480,   482,   361,   -24,
-     718,   718,   486,   440,  -472,   718,   495,  -472,   718,  -472
+     262,  -428,  -428,  -428,  -428,  -428,  -428,   -26,   -85,    60,
+       5,    50,     9,   282,   135,   406,  -428,   203,   191,    32,
+      74,  -428,    73,   134,  -428,  1106,  -428,  -428,  -428,  -428,
+    -428,  -428,  -428,  -428,  -428,  -428,    87,    87,   150,  -428,
+    -428,  -428,  -428,    87,  -428,  -428,  -428,  -428,  -428,    87,
+     208,  -428,     1,   228,   234,   248,  -428,  -428,  -428,  -428,
+    -428,   130,  -428,  -428,  -428,  -428,  -428,   276,   280,     4,
+     111,  -428,  -428,  -428,   -57,  -428,   150,   150,  -428,  -428,
+    1143,   311,   311,  -428,  -428,   118,  -428,  -428,  -428,  -428,
+    -428,  -428,  -428,    -6,    40,  -428,   144,   146,   908,   130,
+    -428,   -57,   -68,  -428,    40,  1143,  1157,    39,   281,   285,
+     232,   286,   738,  -428,   292,  -428,  -428,  -428,  -428,  -428,
+    1191,  -428,    -7,  1314,  -428,   278,  -428,  -428,   -57,  -428,
+     166,   163,  1157,  1157,   159,   -36,  1157,  -428,   165,  -428,
+     -57,  -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,
+    -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,
+    -428,  -428,  -428,  -428,  -428,  -428,   255,   594,   167,  -428,
+    -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,
+    -428,   170,   171,   173,   175,   497,  1207,   945,   296,   187,
+     196,   197,  -428,  -428,   192,  -428,   130,   -57,   213,  -428,
+    -428,  -428,  -428,  -428,   287,  1228,   247,   338,   311,  -428,
+    -428,   255,   594,  1157,  1157,  1157,  1157,  1157,  1157,  1157,
+    1157,  1157,  1157,  1157,  1157,  1157,  -428,   311,  -428,   152,
+    -428,  -428,   -43,  1003,  -428,   -41,  -103,  -428,   206,   -57,
+    -428,   192,   192,  -428,  -428,  -428,  -428,  -428,  -428,  -428,
+    -428,  -428,  -428,   214,  -428,  -428,  -428,  -428,  -428,  -428,
+    -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,  -428,
+     216,  1143,  1143,  1143,  1143,  1143,  -428,  -428,    17,   987,
+     -18,  -428,   -33,  -428,  1143,  1143,  1143,     8,  -428,   217,
+    -428,   130,   592,  -428,   717,   717,  -428,   717,  1191,  1157,
+    1157,   106,   114,  -428,   592,    31,   236,   239,   240,   241,
+     242,   243,   592,   592,   347,  1191,  1157,  1157,  -428,  -428,
+    -428,  -428,  -428,  -428,  -428,   -40,  -428,  -428,  -428,   -40,
+    -428,  -428,  1143,  1143,  -428,   245,   246,   252,   256,  1143,
+    -428,   238,   738,   -31,  -428,  -428,   257,   259,   351,   371,
+     393,  -428,   192,  1050,  -428,  -428,  -428,  -428,  -428,  -428,
+    -428,  -428,   346,  1143,  -428,  -428,  -428,  -428,   265,  -428,
+     267,   717,   592,   592,    16,  -428,    19,  -428,  -428,   717,
+     263,  1157,  1157,  1157,  1157,  1157,   269,   272,  1157,   717,
+     592,   273,  -428,  -428,  -428,  -428,   275,   283,   -32,  1143,
+    1143,  1143,  1143,  -428,  -428,   290,  1143,  1143,  1157,  -428,
+    -428,  -428,  -428,   -57,   289,   288,  -428,   398,    13,   415,
+     417,   297,   302,   303,   717,   435,   717,   305,   306,   717,
+     307,   -57,  -428,   308,   312,   717,   717,   -57,   310,  -428,
+    1157,  1143,  1143,  1157,  -428,   315,   313,   320,   321,  -428,
+     322,   324,    22,    21,  1088,  -428,   325,  -428,   717,   717,
+    1157,   717,   717,   329,  -428,   329,   717,   330,  1157,  1157,
+    1157,  -428,  -428,  1157,   592,   327,   328,  -428,  1143,  -428,
+    1143,  1143,  -428,  -428,  -428,  -428,  -428,  -428,   -57,    34,
+     440,   333,   331,   592,    72,  -428,  -428,   422,  -428,  -428,
+     336,   717,  -428,  -428,  -428,    75,  -428,  -428,  -428,   340,
+     343,   344,    21,  -428,   423,  -428,   461,    -1,  -428,  1157,
+    -428,  -428,   345,  -428,  -428,  -428,  -428,  -428,   481,  -428,
+     717,  -428,   866,     2,   -43,   592,    44,  -428,   -40,  -428,
+    -428,   353,  -428,   866,  -428,   472,   475,   357,   -43,   717,
+     717,   479,   429,  -428,   717,   482,  -428,   717,  -428
 };
 
 /* YYPGOTO[NTERM-NUM].  */
 static const short int yypgoto[] =
 {
-    -472,   388,   390,   391,   308,   309,  -206,  -472,     0,     3,
-     432,    13,  -472,  -472,  -472,    41,  -472,  -472,  -195,  -311,
-    -402,  -472,  -238,  -472,  -296,    27,  -472,  -189,  -472,  -472,
-     -25,   285,  -273,  -472,   416,   424,   -70,  -109,  -182,   173,
-    -472,  -472,   508,  -472,  -472,  -472,  -472,  -472,  -472,  -472,
-    -472,  -472,  -472,  -472,   443,  -472,  -472,  -472,  -472,  -472,
-    -472,  -471,   -74,   100,  -198,  -472,   475,  -472,  -472,  -472,
-    -472,  -472,    55,   152,  -472,  -472,  -472,  -472
+    -428,   374,   375,   376,   291,   294,  -205,  -428,     0,   -12,
+     416,    14,  -428,  -428,  -428,    57,  -428,  -428,  -150,  -313,
+    -404,  -428,  -237,  -428,  -295,    26,  -428,  -210,  -428,  -428,
+     -24,   270,  -223,  -428,   414,   421,   -69,  -108,  -181,   189,
+    -428,  -428,   505,  -428,  -428,  -428,  -428,  -428,  -428,  -428,
+    -428,  -428,  -428,  -428,   439,  -428,  -428,  -428,  -428,  -428,
+    -428,  -427,   -73,   101,  -197,  -428,   470,  -428,  -428,  -428,
+    -428,  -428,    51,   145,  -428,  -428,  -428,  -428
 };
 
 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
@@ -2018,360 +2016,362 @@
 #define YYTABLE_NINF -179
 static const short int yytable[] =
 {
-      11,    75,   298,   330,   193,   281,   283,   378,    98,   297,
-     297,   114,   454,    13,   299,   395,    11,   200,   304,   395,
-     350,   308,   309,   310,   311,   312,   372,    84,   315,    13,
-     425,   427,   340,   316,   137,    87,   140,   351,    20,   194,
-     340,   345,    23,   390,  -178,   138,   102,     1,     1,   458,
-       3,     3,    21,   331,   332,   -55,   -55,   -55,   -55,   -63,
-       1,     2,   542,     3,     4,     5,     2,   426,   426,     4,
-     129,     6,     7,   548,   102,   142,   143,    24,    77,    78,
-     129,   137,   141,   319,   320,    82,    11,   513,   319,   320,
-       8,    83,   239,     9,   340,    25,   198,    10,   344,   340,
-     393,   321,   322,   394,    26,   346,   321,   322,   236,   237,
-     406,   104,   240,   105,   126,   375,   104,   535,   105,   328,
-     392,   127,    60,    61,    40,   100,    63,    64,    65,    66,
-     340,     1,     2,   295,     3,     4,   296,   341,   201,    79,
-      80,   532,   543,   549,   319,   320,   317,   318,    60,    61,
-      99,   100,    63,    64,    65,    66,    88,     1,     2,    67,
-       3,     4,   321,   322,   412,   444,    58,   350,   499,   445,
-     500,   104,   104,   105,   105,    27,   380,   327,    42,   395,
-      43,   293,   419,    54,   431,    67,   433,   434,   435,   302,
-     303,   293,   305,   306,   293,   293,   293,   293,   293,   313,
-     314,   293,   335,   336,   337,   338,   339,   520,    55,   129,
-     520,   521,   290,    56,   524,   347,   348,   349,   490,   367,
-      36,   367,   367,   546,   367,   104,   395,   105,   395,   377,
-     104,   367,   105,    84,   193,    91,    46,    47,    48,   367,
-     367,    49,   144,   145,   146,   147,   478,    92,   319,   320,
-     106,   107,    93,    68,    96,   343,    69,    95,    97,    70,
-     -56,    71,   101,   397,   398,   393,   321,   322,   394,   194,
-     404,   503,   504,   505,   198,   373,   374,   133,   -57,    68,
-     134,   148,    69,   537,   196,    70,   539,    71,   135,   232,
-     234,   198,   391,   293,   104,   235,   105,   485,   367,   367,
-     367,   238,   319,   320,   241,   272,   367,   273,   274,   275,
-     276,   284,   533,   285,   286,   287,   367,   367,   288,   393,
-     321,   322,   394,   291,   297,   329,   333,   334,   544,   414,
-     446,   447,   448,   449,   354,   389,   381,   451,   452,   382,
-      28,    29,    30,    31,    32,    33,    34,   383,    35,   384,
-     385,   367,   405,   367,   386,   400,   367,   293,   432,   293,
-     293,   293,   367,   367,   438,   115,   116,   117,   118,   119,
-     120,   401,   476,   477,   244,   245,   246,   247,   248,   249,
-     250,   251,   252,   253,   453,   367,   367,   409,   367,   367,
-     410,   402,   403,   367,   407,   369,   370,   408,   371,   411,
-     417,   367,   420,   421,   430,   379,  -177,   436,   456,   510,
-     437,   511,   512,   387,   388,   441,   475,   442,   443,   293,
-     367,   -63,     1,     2,   455,     3,     4,     5,   367,   450,
-     489,   457,   459,     6,     7,   460,   494,    36,   461,   465,
-     462,   463,   444,   467,   293,   293,   293,   469,   470,   494,
-     471,   479,     8,   516,   486,     9,   474,   367,   480,    10,
-     481,   482,   367,   483,   491,   498,   484,   502,   517,   531,
-     255,   256,   422,   423,   424,   508,   367,   367,   509,   426,
-     429,   367,   518,   522,   367,   525,   529,   526,   527,   540,
-     439,   440,   538,   547,   550,   536,   551,   552,    60,    61,
-     555,   100,   108,   109,   110,    66,   556,     1,     2,   558,
-       3,     4,   224,   486,   225,   226,   528,   514,   124,   325,
-     300,   139,   301,   136,    41,   464,   123,   466,    90,   506,
-     468,   428,     0,     0,     0,    67,   472,   473,   257,   258,
-     259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
-     269,   270,     0,     0,     0,     0,     0,     0,     0,   492,
-     493,     0,   496,   497,     0,     0,     0,   501,     0,     0,
-       0,     0,     0,     0,     0,   507,     0,     0,     0,     0,
+      10,    74,   297,   329,   192,   280,   282,   377,    97,   453,
+     296,   113,   394,   296,    12,    10,   394,   199,   303,    83,
+      19,   307,   308,   309,   310,   311,    86,   424,   314,    12,
+     426,   330,   331,   103,    20,   104,   139,     1,   349,   193,
+       3,   327,   -55,   -55,   -55,   -55,   101,    59,    60,    22,
+      99,    62,    63,    64,    65,   350,     1,     2,   298,     3,
+       4,   141,   142,   425,   349,    25,   425,   136,   318,   319,
+     128,   318,   319,   127,   101,   371,   545,   315,   137,   103,
+     128,   104,   140,    66,   512,    10,   320,   321,   392,   320,
+     321,   393,   389,    76,    77,   103,   197,   104,   343,   136,
+      81,   326,   339,   443,   339,   541,    82,   444,   235,   236,
+     238,    23,   239,   345,   534,   405,   547,   339,    59,    60,
+     391,    99,    62,    63,    64,    65,   344,     1,     2,   125,
+       3,     4,   318,   319,     1,    39,   126,     3,   200,    24,
+     548,   531,   411,    26,   542,   318,   319,    87,   339,    98,
+     320,   321,   339,    57,    66,   318,   319,   457,   103,   340,
+     104,   484,   392,   320,   321,   393,    53,   103,   498,   104,
+     499,   379,   392,   320,   321,   393,   394,    67,    78,    79,
+      68,   292,   418,    69,   430,    70,   432,   433,   434,   301,
+     302,   292,   304,   305,   292,   292,   292,   292,   292,   312,
+     313,   292,   334,   335,   336,   337,   338,   519,    54,   128,
+     519,   520,   289,    55,   523,   346,   347,   348,   489,   366,
+      35,   366,   366,   394,   366,   394,    83,    45,    46,    47,
+       2,   366,    48,     4,   192,   143,   144,   145,   146,   366,
+     366,   374,   103,    41,   104,    42,   477,    90,    67,   376,
+     103,    68,   104,    91,    69,   342,    70,   100,   294,   316,
+     317,   295,  -178,   396,   397,   105,   106,    92,    94,   193,
+     403,   502,   503,   504,   197,   372,   373,   -63,     1,     2,
+      95,     3,     4,   536,    96,   132,   538,   133,     5,     6,
+     -56,   197,   390,   292,   -57,   147,   195,   231,   366,   366,
+     366,   233,   234,   237,   240,   271,   366,     7,   272,   273,
+       8,   274,   532,   275,     9,   283,   366,   366,    27,    28,
+      29,    30,    31,    32,    33,   284,    34,   287,   543,   413,
+     445,   446,   447,   448,   285,   286,   290,   450,   451,   243,
+     244,   245,   246,   247,   248,   249,   250,   251,   252,   296,
+     328,   366,   332,   366,   333,   353,   366,   292,   431,   292,
+     292,   292,   366,   366,   437,   114,   115,   116,   117,   118,
+     119,   380,   475,   476,   381,   382,   383,   384,   385,   388,
+     399,   400,   404,   408,   452,   366,   366,   401,   366,   366,
+     409,   402,   406,   366,   407,   368,   369,   410,   370,   416,
+     419,   366,   420,   429,   435,   378,  -177,   436,   440,   509,
+     441,   510,   511,   386,   387,    35,   474,   456,   442,   292,
+     366,   -63,     1,     2,   454,     3,     4,   455,   366,   458,
+     488,   459,     5,     6,   449,   460,   493,   461,   462,   464,
+     443,   466,   468,   469,   292,   292,   292,   470,   473,   493,
+     478,     7,   479,   485,     8,   480,   481,   366,     9,   515,
+     490,   482,   366,   483,   497,   501,   507,   508,   516,   425,
+     528,   517,   421,   422,   423,   530,   366,   366,   521,   524,
+     428,   366,   525,   526,   366,   539,   549,   537,   546,   550,
+     438,   439,   551,   554,   555,   535,   557,   223,   224,   225,
+     527,   123,   299,   324,    59,    60,   300,    99,   107,   108,
+     109,    65,   485,     1,     2,   513,     3,     4,   138,   135,
+      40,   122,    89,   427,   505,   463,     0,   465,     0,     0,
+     467,     0,     0,     0,     0,     0,   471,   472,     0,     0,
+      66,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,   491,
+     492,     0,   495,   496,     0,     0,     0,   500,     0,     0,
+       0,     0,     0,     0,     0,   506,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,   519,   355,   356,     0,     0,    60,
-      61,   357,   523,     0,     0,     0,     0,     0,     1,     2,
-       0,     3,     4,     0,   358,   359,   360,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   361,   362,    68,
-       0,   541,    69,     0,     0,    70,   545,    71,   282,     0,
-       0,     0,     0,     0,   363,     0,     0,     0,     0,     0,
-     553,   554,     0,     0,     0,   557,     0,     0,   559,     0,
+       0,     0,     0,     0,   518,   354,   355,     0,     0,    59,
+      60,   356,   522,     0,     0,     0,     0,     0,     1,     2,
+       0,     3,     4,   357,   358,   359,   254,   255,     0,     0,
+       0,     0,     0,     0,     0,     0,   360,   361,     0,     0,
+       0,   540,     0,     0,    67,     0,   544,    68,     0,   276,
+      69,     0,    70,   362,     0,     0,     0,     0,     0,     0,
+     552,   553,     0,     0,     0,   556,     0,     0,   558,   151,
      152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
-     162,   163,   164,   165,   166,   167,   168,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   169,   170,   171,   172,   173,   174,   175,   176,
-     177,   178,   179,   180,   181,     0,   182,     0,   183,   184,
-     185,   355,   356,     0,     0,    60,    61,   357,     0,   104,
-       0,   105,     0,     0,     1,     2,   364,     3,     4,     0,
-     358,   359,   360,     0,     0,     0,    60,    61,     0,     0,
-       0,     0,     0,   361,   362,     1,     2,     0,     3,     4,
-       0,   149,     0,     0,     0,     0,     0,     0,     0,     0,
-     363,     0,     0,     0,   150,   151,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,   152,   153,   154,   155,
+     162,   163,   164,   165,   166,   167,     0,     0,     0,     0,
+       0,     0,     0,     0,   256,   257,   258,   259,   260,   261,
+     262,   263,   264,   265,   266,   267,   268,   269,     0,     0,
+       0,   168,   169,   170,   171,   172,   173,   174,   175,   176,
+     177,   178,   179,   180,     0,   181,     0,   182,   183,   184,
+     354,   355,     0,     0,    59,    60,   356,     0,   103,     0,
+     104,     0,     0,     1,     2,   363,     3,     4,   357,   358,
+     359,     0,     0,     0,     0,    59,    60,     0,     0,     0,
+       0,   360,   361,     0,     1,     2,     0,     3,     4,   148,
+       0,     0,     0,     0,     0,     0,     0,     0,   362,     0,
+       0,     0,   149,   150,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,   151,   152,   153,   154,   155,   156,
+     157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
+     167,     0,     0,     0,     0,   151,   152,   153,   154,   155,
      156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
-     166,   167,   168,     0,     0,     0,     0,   152,   153,   154,
-     155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
-     165,   166,   167,   168,     0,     0,     0,     0,   169,   170,
+     166,   167,     0,     0,     0,     0,   168,   169,   170,   171,
+     172,   173,   174,   175,   176,   177,   178,   179,   180,     0,
+     181,     0,   182,   183,   184,     0,     0,   168,   169,   170,
      171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
-     181,     0,   182,     0,   183,   184,   185,     0,     0,   169,
-     170,   171,   172,   173,   174,   175,   176,   177,   178,   179,
-     180,   181,   364,   182,     0,   183,   184,   185,     0,   355,
-     356,     0,     0,     0,     0,   357,   104,     0,   105,     0,
-     186,     0,     0,   187,     0,   188,     0,   189,   358,   359,
-     360,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   361,   362,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,    60,    61,   363,   100,
-     108,   109,   110,    66,     0,     1,     2,     0,     3,     4,
-       0,     0,     0,     0,   152,   153,   154,   155,   156,   157,
-     158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
-     168,     0,     0,    67,     0,     0,     0,     0,     0,     0,
-       0,     0,    60,    61,     0,   100,    63,    64,    65,    66,
-       0,     1,     2,     0,     3,     4,   169,   170,   171,   172,
-     173,   174,   175,   176,   177,   178,   179,   180,   181,   128,
-     182,     0,   183,   184,   185,     0,     0,     0,     0,    67,
-       0,     0,    60,    61,     0,   100,   108,   109,   110,    66,
-     364,     1,     2,     0,     3,     4,     0,    60,    61,     0,
-     100,    63,    64,    65,    66,     0,     1,     2,     0,     3,
-       4,     0,     0,     0,     0,     0,     0,     0,     0,    67,
-       0,     0,     0,     0,   324,     0,     0,    68,     0,     0,
-      69,     0,     0,    70,    67,    71,   342,    60,    61,     0,
-     100,    63,    64,    65,    66,     0,     1,     2,     0,     3,
-       4,     0,     0,    60,    61,     0,   100,    63,    64,    65,
-      66,     0,     1,     2,   413,     3,     4,     0,     0,     0,
-       0,     0,     0,    68,    67,     0,    69,     0,     0,    70,
-     488,    71,     0,     0,     0,     0,     0,     0,    60,    61,
-      67,    62,    63,    64,    65,    66,     0,     1,     2,     0,
-       3,     4,    60,    61,     0,   100,   108,   109,   110,    66,
-       0,     1,     2,    68,     3,     4,    69,     0,   277,    70,
-       0,    71,     0,     0,     0,    67,     0,     0,    68,     0,
-       0,    69,     0,     0,    70,     0,    71,     0,     0,    67,
-      60,    61,     0,   100,    63,    64,    65,    66,     0,     1,
-       2,     0,     3,     4,    60,    61,     0,   197,    63,    64,
-      65,    66,     0,     1,     2,     0,     3,     4,    68,     0,
-       0,    69,     0,     0,    70,     0,    71,    67,     0,     0,
-       0,     0,     0,     0,    68,     0,     0,    69,     0,     0,
-      70,    67,    71,    60,    61,     0,   100,   108,   109,   110,
-      66,     0,     1,     2,     0,     3,     4,     0,    60,    61,
-       0,   292,    63,    64,    65,    66,     0,     1,     2,    68,
-       3,     4,    69,     0,     0,    70,     0,    71,     0,     0,
-      67,     0,     0,    68,     0,     0,    69,     0,     0,    70,
-       0,    71,     0,     0,     0,    67,     0,     0,     0,     0,
+     363,   181,     0,   182,   183,   184,     0,     0,     0,   354,
+     355,     0,     0,     0,   103,   356,   104,     0,   185,     0,
+       0,   186,     0,   187,     0,   188,     0,   357,   358,   359,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     360,   361,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,    59,    60,   362,    99,    62,
+      63,    64,    65,     0,     1,     2,     0,     3,     4,     0,
+       0,     0,     0,   151,   152,   153,   154,   155,   156,   157,
+     158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
+       0,    66,    59,    60,     0,    99,   107,   108,   109,    65,
+       0,     1,     2,     0,     3,     4,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,   168,   169,   170,   171,   172,
+     173,   174,   175,   176,   177,   178,   179,   180,    66,   181,
+       0,   182,   183,   184,    59,    60,     0,    99,   107,   108,
+     109,    65,     0,     1,     2,     0,     3,     4,     0,   363,
+      59,    60,     0,    99,    62,    63,    64,    65,     0,     1,
+       2,     0,     3,     4,     0,     0,     0,     0,     0,     0,
+      66,     0,     0,     0,     0,     0,   323,     0,     0,     0,
+       0,     0,     0,     0,     0,    67,    66,     0,    68,     0,
+       0,    69,     0,    70,   134,     0,     0,    59,    60,     0,
+      99,    62,    63,    64,    65,     0,     1,     2,     0,     3,
+       4,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,    67,   412,     0,    68,     0,     0,    69,     0,
+      70,   281,     0,    66,     0,    59,    60,     0,    99,    62,
+      63,    64,    65,     0,     1,     2,     0,     3,     4,     0,
+       0,     0,     0,    59,    60,     0,    61,    62,    63,    64,
+      65,   487,     1,     2,    67,     3,     4,    68,     0,     0,
+      69,    66,    70,   341,     0,     0,     0,     0,     0,     0,
+      67,     0,     0,    68,     0,     0,    69,     0,    70,    66,
+      59,    60,     0,    99,   107,   108,   109,    65,     0,     1,
+       2,     0,     3,     4,    59,    60,     0,    99,    62,    63,
+      64,    65,     0,     1,     2,     0,     3,     4,     0,     0,
+       0,     0,     0,     0,     0,     0,    66,    67,     0,     0,
+      68,     0,     0,    69,     0,    70,     0,     0,    59,    60,
+      66,   196,    62,    63,    64,    65,     0,     1,     2,     0,
+       3,     4,     0,     0,    59,    60,     0,    99,   107,   108,
+     109,    65,     0,     1,     2,    67,     3,     4,    68,     0,
+       0,    69,     0,    70,    66,    59,    60,     0,   291,    62,
+      63,    64,    65,    67,     1,     2,    68,     3,     4,    69,
+      66,    70,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    68,     0,     0,    69,     0,     0,    70,     0,    71,
-       0,     0,     0,     0,     0,    68,     0,     0,    69,     0,
-       0,    70,     0,    71,     0,     0,     0,     0,     0,     0,
+       0,    66,     0,     0,     0,     0,     0,     0,     0,     0,
+      67,     0,     0,    68,     0,     0,    69,     0,    70,     0,
+       0,     0,     0,     0,    67,     0,     0,    68,     0,     0,
+      69,     0,    70,     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,   203,     0,
-       0,     0,     0,     0,    68,     0,     0,    69,     0,     0,
-      70,     0,   280,     0,     0,     0,   204,   205,     0,    68,
-       0,     0,    69,     0,     0,    70,     0,    71,   206,   207,
-     208,   209,   210,   211,   152,   153,   154,   155,   156,   157,
-     158,   159,   160,   161,   162,   163,   164,   165,   166,   212,
-     213,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,    67,     0,
+       0,    68,     0,     0,    69,     0,    70,     0,     0,     0,
+       0,     0,     0,     0,    67,   202,     0,    68,     0,     0,
+      69,     0,   279,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,   203,   204,    67,     0,     0,    68,     0,
+       0,    69,     0,    70,     0,   205,   206,   207,   208,   209,
+     210,   151,   152,   153,   154,   155,   156,   157,   158,   159,
+     160,   161,   162,   163,   164,   165,   211,   212,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   214,   215,   216,     0,     0,   217,   170,   171,   172,
-     173,   174,   175,   176,   177,   178,   179,   180,   181,   218,
-     219,   220,   221,   222,   223
+       0,     0,     0,     0,     0,     0,     0,     0,   213,   214,
+     215,     0,     0,   216,   169,   170,   171,   172,   173,   174,
+     175,   176,   177,   178,   179,   180,   217,   218,   219,   220,
+     221,   222
 };
 
 static const short int yycheck[] =
 {
-       0,    26,   208,   241,   113,   187,   188,   303,     4,    11,
-      11,    81,   414,     0,   209,   326,    16,    25,   216,   330,
-      31,   219,   220,   221,   222,   223,   299,    18,   226,    16,
-      11,    11,   136,   228,   136,    26,   106,    48,    47,   113,
-     136,   145,   135,   316,     0,   147,    71,    16,    16,   145,
-      19,    19,    61,   242,   243,     3,     4,     5,     6,    15,
-      16,    17,   533,    19,    20,    21,    17,    48,    48,    20,
-      95,    27,    28,   544,    99,    23,    24,    52,    37,    38,
-     105,   136,   107,   112,   113,    44,    86,   489,   112,   113,
-      46,    50,   147,    49,   136,   135,   121,    53,   280,   136,
-     129,   130,   131,   132,    15,   147,   130,   131,   133,   134,
-     147,   137,   137,   139,   136,   136,   137,   519,   139,   145,
-     318,   143,     7,     8,     0,    10,    11,    12,    13,    14,
-     136,    16,    17,    11,    19,    20,    14,   143,   146,    29,
-      30,   143,   143,   545,   112,   113,   108,   109,     7,     8,
-     146,    10,    11,    12,    13,    14,   147,    16,    17,    44,
-      19,    20,   130,   131,   353,   136,    19,    31,   464,   140,
-     466,   137,   137,   139,   139,   135,   141,   143,    41,   490,
-      43,   206,   364,   135,   382,    44,   384,   385,   386,   214,
-     215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
-     225,   226,   272,   273,   274,   275,   276,   136,   135,   234,
-     136,   140,   199,   141,   140,   285,   286,   287,   456,   293,
-     134,   295,   296,    33,   298,   137,   537,   139,   539,   136,
-     137,   305,   139,    18,   343,    19,    37,    38,    39,   313,
-     314,    42,     3,     4,     5,     6,   444,    19,   112,   113,
-      77,    78,    19,   138,     4,   280,   141,   139,     4,   144,
-       9,   146,   147,   333,   334,   129,   130,   131,   132,   343,
-     340,   469,   470,   471,   299,   300,   301,   142,     9,   138,
-     142,     9,   141,   521,     4,   144,   524,   146,   147,    19,
-     136,   316,   317,   318,   137,   140,   139,   140,   372,   373,
-     374,   145,   112,   113,   140,   139,   380,   139,   139,   139,
-     139,    19,   518,   139,   139,   139,   390,   391,   136,   129,
-     130,   131,   132,    50,    11,   145,   139,   139,   534,   354,
-     400,   401,   402,   403,   139,    33,   136,   407,   408,   136,
-      37,    38,    39,    40,    41,    42,    43,   136,    45,   136,
-     136,   425,   145,   427,   136,   136,   430,   382,   383,   384,
-     385,   386,   436,   437,   389,    55,    56,    57,    58,    59,
-      60,   136,   442,   443,    85,    86,    87,    88,    89,    90,
-      91,    92,    93,    94,   409,   459,   460,    33,   462,   463,
-      19,   136,   136,   467,   136,   295,   296,   136,   298,     4,
-      54,   475,   136,   136,   141,   305,     0,   136,   140,   479,
-     136,   481,   482,   313,   314,   136,   441,   136,   136,   444,
-     494,    15,    16,    17,   136,    19,    20,    21,   502,   145,
-     455,    19,    14,    27,    28,    14,   461,   134,   139,     4,
-     136,   136,   136,   136,   469,   470,   471,   136,   136,   474,
-     136,   136,    46,    19,   454,    49,   139,   531,   140,    53,
-     136,   136,   536,   140,   136,   136,   140,   136,   136,    14,
-      23,    24,   372,   373,   374,   140,   550,   551,   140,    48,
-     380,   555,   141,   143,   558,   140,    48,   140,   140,     4,
-     390,   391,   143,   136,    14,   520,    14,   136,     7,     8,
-      14,    10,    11,    12,    13,    14,    66,    16,    17,    14,
-      19,    20,   124,   513,   124,   124,   513,   490,    86,   234,
-     212,   105,   213,    99,    16,   425,    83,   427,    53,   474,
-     430,   379,    -1,    -1,    -1,    44,   436,   437,    91,    92,
-      93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
-     103,   104,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   459,
-     460,    -1,   462,   463,    -1,    -1,    -1,   467,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,   475,    -1,    -1,    -1,    -1,
+       0,    25,   207,   240,   112,   186,   187,   302,     4,   413,
+      11,    80,   325,    11,     0,    15,   329,    24,   215,    18,
+      46,   218,   219,   220,   221,   222,    25,    11,   225,    15,
+      11,   241,   242,   136,    60,   138,   105,    16,    30,   112,
+      19,   144,     3,     4,     5,     6,    70,     7,     8,   134,
+      10,    11,    12,    13,    14,    47,    16,    17,   208,    19,
+      20,    22,    23,    47,    30,    15,    47,   135,   111,   112,
+      94,   111,   112,    33,    98,   298,    32,   227,   146,   136,
+     104,   138,   106,    43,   488,    85,   129,   130,   128,   129,
+     130,   131,   315,    36,    37,   136,   120,   138,   279,   135,
+      43,   142,   135,   135,   135,   532,    49,   139,   132,   133,
+     146,    51,   136,   146,   518,   146,   543,   135,     7,     8,
+     317,    10,    11,    12,    13,    14,   144,    16,    17,   135,
+      19,    20,   111,   112,    16,     0,   142,    19,   145,   134,
+     544,   142,   352,   134,   142,   111,   112,   146,   135,   145,
+     129,   130,   135,    19,    43,   111,   112,   144,   136,   142,
+     138,   139,   128,   129,   130,   131,   134,   136,   463,   138,
+     465,   140,   128,   129,   130,   131,   489,   137,    28,    29,
+     140,   205,   363,   143,   381,   145,   383,   384,   385,   213,
+     214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
+     224,   225,   271,   272,   273,   274,   275,   135,   134,   233,
+     135,   139,   198,   140,   139,   284,   285,   286,   455,   292,
+     133,   294,   295,   536,   297,   538,    18,    36,    37,    38,
+      17,   304,    41,    20,   342,     3,     4,     5,     6,   312,
+     313,   135,   136,    40,   138,    42,   443,    19,   137,   135,
+     136,   140,   138,    19,   143,   279,   145,   146,    11,   107,
+     108,    14,     0,   332,   333,    76,    77,    19,   138,   342,
+     339,   468,   469,   470,   298,   299,   300,    15,    16,    17,
+       4,    19,    20,   520,     4,   141,   523,   141,    26,    27,
+       9,   315,   316,   317,     9,     9,     4,    19,   371,   372,
+     373,   135,   139,   144,   139,   138,   379,    45,   138,   138,
+      48,   138,   517,   138,    52,    19,   389,   390,    36,    37,
+      38,    39,    40,    41,    42,   138,    44,   135,   533,   353,
+     399,   400,   401,   402,   138,   138,    49,   406,   407,    84,
+      85,    86,    87,    88,    89,    90,    91,    92,    93,    11,
+     144,   424,   138,   426,   138,   138,   429,   381,   382,   383,
+     384,   385,   435,   436,   388,    54,    55,    56,    57,    58,
+      59,   135,   441,   442,   135,   135,   135,   135,   135,    32,
+     135,   135,   144,    32,   408,   458,   459,   135,   461,   462,
+      19,   135,   135,   466,   135,   294,   295,     4,   297,    53,
+     135,   474,   135,   140,   135,   304,     0,   135,   135,   478,
+     135,   480,   481,   312,   313,   133,   440,    19,   135,   443,
+     493,    15,    16,    17,   135,    19,    20,   139,   501,    14,
+     454,    14,    26,    27,   144,   138,   460,   135,   135,     4,
+     135,   135,   135,   135,   468,   469,   470,   135,   138,   473,
+     135,    45,   139,   453,    48,   135,   135,   530,    52,    19,
+     135,   139,   535,   139,   135,   135,   139,   139,   135,    47,
+      47,   140,   371,   372,   373,    14,   549,   550,   142,   139,
+     379,   554,   139,   139,   557,     4,    14,   142,   135,    14,
+     389,   390,   135,    14,    65,   519,    14,   123,   123,   123,
+     512,    85,   211,   233,     7,     8,   212,    10,    11,    12,
+      13,    14,   512,    16,    17,   489,    19,    20,   104,    98,
+      15,    82,    52,   378,   473,   424,    -1,   426,    -1,    -1,
+     429,    -1,    -1,    -1,    -1,    -1,   435,   436,    -1,    -1,
+      43,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   458,
+     459,    -1,   461,   462,    -1,    -1,    -1,   466,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   474,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   494,     3,     4,    -1,    -1,     7,
-       8,     9,   502,    -1,    -1,    -1,    -1,    -1,    16,    17,
-      -1,    19,    20,    -1,    22,    23,    24,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    35,    36,   138,
-      -1,   531,   141,    -1,    -1,   144,   536,   146,   147,    -1,
-      -1,    -1,    -1,    -1,    52,    -1,    -1,    -1,    -1,    -1,
-     550,   551,    -1,    -1,    -1,   555,    -1,    -1,   558,    -1,
+      -1,    -1,    -1,    -1,   493,     3,     4,    -1,    -1,     7,
+       8,     9,   501,    -1,    -1,    -1,    -1,    -1,    16,    17,
+      -1,    19,    20,    21,    22,    23,    22,    23,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    34,    35,    -1,    -1,
+      -1,   530,    -1,    -1,   137,    -1,   535,   140,    -1,   142,
+     143,    -1,   145,    51,    -1,    -1,    -1,    -1,    -1,    -1,
+     549,   550,    -1,    -1,    -1,   554,    -1,    -1,   557,    67,
       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
-      78,    79,    80,    81,    82,    83,    84,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,   110,   111,   112,   113,   114,   115,   116,   117,
-     118,   119,   120,   121,   122,    -1,   124,    -1,   126,   127,
-     128,     3,     4,    -1,    -1,     7,     8,     9,    -1,   137,
-      -1,   139,    -1,    -1,    16,    17,   144,    19,    20,    -1,
-      22,    23,    24,    -1,    -1,    -1,     7,     8,    -1,    -1,
-      -1,    -1,    -1,    35,    36,    16,    17,    -1,    19,    20,
-      -1,    22,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      52,    -1,    -1,    -1,    35,    36,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    68,    69,    70,    71,
+      78,    79,    80,    81,    82,    83,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    90,    91,    92,    93,    94,    95,
+      96,    97,    98,    99,   100,   101,   102,   103,    -1,    -1,
+      -1,   109,   110,   111,   112,   113,   114,   115,   116,   117,
+     118,   119,   120,   121,    -1,   123,    -1,   125,   126,   127,
+       3,     4,    -1,    -1,     7,     8,     9,    -1,   136,    -1,
+     138,    -1,    -1,    16,    17,   143,    19,    20,    21,    22,
+      23,    -1,    -1,    -1,    -1,     7,     8,    -1,    -1,    -1,
+      -1,    34,    35,    -1,    16,    17,    -1,    19,    20,    21,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    51,    -1,
+      -1,    -1,    34,    35,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    67,    68,    69,    70,    71,    72,
+      73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
+      83,    -1,    -1,    -1,    -1,    67,    68,    69,    70,    71,
       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
-      82,    83,    84,    -1,    -1,    -1,    -1,    68,    69,    70,
-      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
-      81,    82,    83,    84,    -1,    -1,    -1,    -1,   110,   111,
+      82,    83,    -1,    -1,    -1,    -1,   109,   110,   111,   112,
+     113,   114,   115,   116,   117,   118,   119,   120,   121,    -1,
+     123,    -1,   125,   126,   127,    -1,    -1,   109,   110,   111,
      112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
-     122,    -1,   124,    -1,   126,   127,   128,    -1,    -1,   110,
-     111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
-     121,   122,   144,   124,    -1,   126,   127,   128,    -1,     3,
-       4,    -1,    -1,    -1,    -1,     9,   137,    -1,   139,    -1,
-     141,    -1,    -1,   144,    -1,   146,    -1,   148,    22,    23,
-      24,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    35,    36,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,     7,     8,    52,    10,
-      11,    12,    13,    14,    -1,    16,    17,    -1,    19,    20,
-      -1,    -1,    -1,    -1,    68,    69,    70,    71,    72,    73,
+     143,   123,    -1,   125,   126,   127,    -1,    -1,    -1,     3,
+       4,    -1,    -1,    -1,   136,     9,   138,    -1,   140,    -1,
+      -1,   143,    -1,   145,    -1,   147,    -1,    21,    22,    23,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      34,    35,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,     7,     8,    51,    10,    11,
+      12,    13,    14,    -1,    16,    17,    -1,    19,    20,    -1,
+      -1,    -1,    -1,    67,    68,    69,    70,    71,    72,    73,
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
-      84,    -1,    -1,    44,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,     7,     8,    -1,    10,    11,    12,    13,    14,
-      -1,    16,    17,    -1,    19,    20,   110,   111,   112,   113,
-     114,   115,   116,   117,   118,   119,   120,   121,   122,    34,
-     124,    -1,   126,   127,   128,    -1,    -1,    -1,    -1,    44,
-      -1,    -1,     7,     8,    -1,    10,    11,    12,    13,    14,
-     144,    16,    17,    -1,    19,    20,    -1,     7,     8,    -1,
-      10,    11,    12,    13,    14,    -1,    16,    17,    -1,    19,
-      20,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    44,
-      -1,    -1,    -1,    -1,    34,    -1,    -1,   138,    -1,    -1,
-     141,    -1,    -1,   144,    44,   146,   147,     7,     8,    -1,
+      -1,    43,     7,     8,    -1,    10,    11,    12,    13,    14,
+      -1,    16,    17,    -1,    19,    20,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   109,   110,   111,   112,   113,
+     114,   115,   116,   117,   118,   119,   120,   121,    43,   123,
+      -1,   125,   126,   127,     7,     8,    -1,    10,    11,    12,
+      13,    14,    -1,    16,    17,    -1,    19,    20,    -1,   143,
+       7,     8,    -1,    10,    11,    12,    13,    14,    -1,    16,
+      17,    -1,    19,    20,    -1,    -1,    -1,    -1,    -1,    -1,
+      43,    -1,    -1,    -1,    -1,    -1,    33,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   137,    43,    -1,   140,    -1,
+      -1,   143,    -1,   145,   146,    -1,    -1,     7,     8,    -1,
       10,    11,    12,    13,    14,    -1,    16,    17,    -1,    19,
-      20,    -1,    -1,     7,     8,    -1,    10,    11,    12,    13,
-      14,    -1,    16,    17,    34,    19,    20,    -1,    -1,    -1,
-      -1,    -1,    -1,   138,    44,    -1,   141,    -1,    -1,   144,
-      34,   146,    -1,    -1,    -1,    -1,    -1,    -1,     7,     8,
-      44,    10,    11,    12,    13,    14,    -1,    16,    17,    -1,
-      19,    20,     7,     8,    -1,    10,    11,    12,    13,    14,
-      -1,    16,    17,   138,    19,    20,   141,    -1,   143,   144,
-      -1,   146,    -1,    -1,    -1,    44,    -1,    -1,   138,    -1,
-      -1,   141,    -1,    -1,   144,    -1,   146,    -1,    -1,    44,
+      20,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,   137,    33,    -1,   140,    -1,    -1,   143,    -1,
+     145,   146,    -1,    43,    -1,     7,     8,    -1,    10,    11,
+      12,    13,    14,    -1,    16,    17,    -1,    19,    20,    -1,
+      -1,    -1,    -1,     7,     8,    -1,    10,    11,    12,    13,
+      14,    33,    16,    17,   137,    19,    20,   140,    -1,    -1,
+     143,    43,   145,   146,    -1,    -1,    -1,    -1,    -1,    -1,
+     137,    -1,    -1,   140,    -1,    -1,   143,    -1,   145,    43,
        7,     8,    -1,    10,    11,    12,    13,    14,    -1,    16,
       17,    -1,    19,    20,     7,     8,    -1,    10,    11,    12,
-      13,    14,    -1,    16,    17,    -1,    19,    20,   138,    -1,
-      -1,   141,    -1,    -1,   144,    -1,   146,    44,    -1,    -1,
-      -1,    -1,    -1,    -1,   138,    -1,    -1,   141,    -1,    -1,
-     144,    44,   146,     7,     8,    -1,    10,    11,    12,    13,
-      14,    -1,    16,    17,    -1,    19,    20,    -1,     7,     8,
-      -1,    10,    11,    12,    13,    14,    -1,    16,    17,   138,
-      19,    20,   141,    -1,    -1,   144,    -1,   146,    -1,    -1,
-      44,    -1,    -1,   138,    -1,    -1,   141,    -1,    -1,   144,
-      -1,   146,    -1,    -1,    -1,    44,    -1,    -1,    -1,    -1,
+      13,    14,    -1,    16,    17,    -1,    19,    20,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    43,   137,    -1,    -1,
+     140,    -1,    -1,   143,    -1,   145,    -1,    -1,     7,     8,
+      43,    10,    11,    12,    13,    14,    -1,    16,    17,    -1,
+      19,    20,    -1,    -1,     7,     8,    -1,    10,    11,    12,
+      13,    14,    -1,    16,    17,   137,    19,    20,   140,    -1,
+      -1,   143,    -1,   145,    43,     7,     8,    -1,    10,    11,
+      12,    13,    14,   137,    16,    17,   140,    19,    20,   143,
+      43,   145,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    43,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     137,    -1,    -1,   140,    -1,    -1,   143,    -1,   145,    -1,
+      -1,    -1,    -1,    -1,   137,    -1,    -1,   140,    -1,    -1,
+     143,    -1,   145,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   138,    -1,    -1,   141,    -1,    -1,   144,    -1,   146,
-      -1,    -1,    -1,    -1,    -1,   138,    -1,    -1,   141,    -1,
-      -1,   144,    -1,   146,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   137,    -1,
+      -1,   140,    -1,    -1,   143,    -1,   145,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,   137,    31,    -1,   140,    -1,    -1,
+     143,    -1,   145,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    49,    50,   137,    -1,    -1,   140,    -1,
+      -1,   143,    -1,   145,    -1,    61,    62,    63,    64,    65,
+      66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
+      76,    77,    78,    79,    80,    81,    82,    83,    -1,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    32,    -1,
-      -1,    -1,    -1,    -1,   138,    -1,    -1,   141,    -1,    -1,
-     144,    -1,   146,    -1,    -1,    -1,    50,    51,    -1,   138,
-      -1,    -1,   141,    -1,    -1,   144,    -1,   146,    62,    63,
-      64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
-      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
-      84,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   105,   106,   107,    -1,    -1,   110,   111,   112,   113,
-     114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
-     124,   125,   126,   127,   128
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,   105,
+     106,    -1,    -1,   109,   110,   111,   112,   113,   114,   115,
+     116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
+     126,   127
 };
 
 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
    symbol of state STATE-NUM.  */
 static const unsigned char yystos[] =
 {
-       0,    16,    17,    19,    20,    21,    27,    28,    46,    49,
-      53,   157,   159,   160,   161,   189,   190,   191,   193,   192,
-      47,    61,   198,   135,    52,   135,    15,   135,    37,    38,
-      39,    40,    41,    42,    43,    45,   134,   162,   163,   164,
-       0,   191,    41,    43,   165,   208,    37,    38,    39,    42,
-     166,   205,   207,   214,   135,   135,   141,   199,    19,   197,
-       7,     8,    10,    11,    12,    13,    14,    44,   138,   141,
-     144,   146,   157,   160,   178,   179,   211,   164,   164,    29,
-      30,   188,   164,   164,    18,   215,   216,    26,   147,   206,
-     215,    19,    19,    19,   200,   139,     4,     4,     4,   146,
-      10,   147,   179,   184,   137,   139,   188,   188,    11,    12,
-      13,   155,   156,   179,   185,    55,    56,    57,    58,    59,
-      60,   167,   203,   203,   159,   219,   136,   143,    34,   179,
-     180,   182,   183,   142,   142,   147,   184,   136,   147,   183,
-     185,   179,    23,    24,     3,     4,     5,     6,     9,    22,
-      35,    36,    68,    69,    70,    71,    72,    73,    74,    75,
-      76,    77,    78,    79,    80,    81,    82,    83,    84,   110,
+       0,    16,    17,    19,    20,    26,    27,    45,    48,    52,
+     156,   158,   159,   160,   188,   189,   190,   192,   191,    46,
+      60,   197,   134,    51,   134,    15,   134,    36,    37,    38,
+      39,    40,    41,    42,    44,   133,   161,   162,   163,     0,
+     190,    40,    42,   164,   207,    36,    37,    38,    41,   165,
+     204,   206,   213,   134,   134,   140,   198,    19,   196,     7,
+       8,    10,    11,    12,    13,    14,    43,   137,   140,   143,
+     145,   156,   159,   177,   178,   210,   163,   163,    28,    29,
+     187,   163,   163,    18,   214,   215,    25,   146,   205,   214,
+      19,    19,    19,   199,   138,     4,     4,     4,   145,    10,
+     146,   178,   183,   136,   138,   187,   187,    11,    12,    13,
+     154,   155,   178,   184,    54,    55,    56,    57,    58,    59,
+     166,   202,   202,   158,   218,   135,   142,    33,   178,   179,
+     181,   182,   141,   141,   146,   183,   135,   146,   182,   184,
+     178,    22,    23,     3,     4,     5,     6,     9,    21,    34,
+      35,    67,    68,    69,    70,    71,    72,    73,    74,    75,
+      76,    77,    78,    79,    80,    81,    82,    83,   109,   110,
      111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
-     121,   122,   124,   126,   127,   128,   141,   144,   146,   148,
-     150,   151,   152,   186,   211,   194,     4,    10,   179,   181,
-      25,   146,   204,    32,    50,    51,    62,    63,    64,    65,
-      66,    67,    83,    84,   105,   106,   107,   110,   123,   124,
-     125,   126,   127,   128,   150,   151,   152,   217,   223,   224,
-     225,   226,    19,   169,   136,   140,   179,   179,   145,   147,
-     179,   140,   195,   196,    85,    86,    87,    88,    89,    90,
-      91,    92,    93,    94,   153,    23,    24,    91,    92,    93,
+     121,   123,   125,   126,   127,   140,   143,   145,   147,   149,
+     150,   151,   185,   210,   193,     4,    10,   178,   180,    24,
+     145,   203,    31,    49,    50,    61,    62,    63,    64,    65,
+      66,    82,    83,   104,   105,   106,   109,   122,   123,   124,
+     125,   126,   127,   149,   150,   151,   216,   222,   223,   224,
+     225,    19,   168,   135,   139,   178,   178,   144,   146,   178,
+     139,   194,   195,    84,    85,    86,    87,    88,    89,    90,
+      91,    92,    93,   152,    22,    23,    90,    91,    92,    93,
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
-     104,   154,   139,   139,   139,   139,   139,   143,   185,   187,
-     146,   187,   147,   187,    19,   139,   139,   139,   136,   176,
-     160,    50,    10,   179,   213,    11,    14,    11,   155,   167,
-     153,   154,   179,   179,   213,   179,   179,   220,   213,   213,
-     213,   213,   213,   179,   179,   213,   167,   108,   109,   112,
-     113,   130,   131,   168,    34,   180,   171,   143,   145,   145,
-     171,   176,   176,   139,   139,   185,   185,   185,   185,   185,
-     136,   143,   147,   179,   187,   145,   147,   185,   185,   185,
-      31,    48,   174,   177,   139,     3,     4,     9,    22,    23,
-      24,    35,    36,    52,   144,   186,   210,   211,   212,   212,
-     212,   212,   181,   179,   179,   136,   173,   136,   173,   212,
-     141,   136,   136,   136,   136,   136,   136,   212,   212,    33,
-     181,   179,   213,   129,   132,   168,   170,   185,   185,   222,
-     136,   136,   136,   136,   185,   145,   147,   136,   136,    33,
-      19,     4,   176,    34,   179,   201,   202,    54,   209,   187,
-     136,   136,   212,   212,   212,    11,    48,    11,   222,   212,
-     141,   213,   179,   213,   213,   213,   136,   136,   179,   212,
-     212,   136,   136,   136,   136,   140,   185,   185,   185,   185,
-     145,   185,   185,   179,   169,   136,   140,    19,   145,    14,
-      14,   139,   136,   136,   212,     4,   212,   136,   212,   136,
-     136,   136,   212,   212,   139,   179,   185,   185,   213,   136,
-     140,   136,   136,   140,   140,   140,   157,   158,    34,   179,
-     171,   136,   212,   212,   179,   221,   212,   212,   136,   173,
-     173,   212,   136,   213,   213,   213,   221,   212,   140,   140,
-     185,   185,   185,   169,   174,   175,    19,   136,   141,   212,
-     136,   140,   143,   212,   140,   140,   140,   140,   158,    48,
-     172,    14,   143,   155,   218,   169,   179,   171,   143,   171,
-       4,   212,   210,   143,   155,   212,    33,   136,   210,   169,
-      14,    14,   136,   212,   212,    14,    66,   212,    14,   212
+     153,   138,   138,   138,   138,   138,   142,   184,   186,   145,
+     186,   146,   186,    19,   138,   138,   138,   135,   175,   159,
+      49,    10,   178,   212,    11,    14,    11,   154,   166,   152,
+     153,   178,   178,   212,   178,   178,   219,   212,   212,   212,
+     212,   212,   178,   178,   212,   166,   107,   108,   111,   112,
+     129,   130,   167,    33,   179,   170,   142,   144,   144,   170,
+     175,   175,   138,   138,   184,   184,   184,   184,   184,   135,
+     142,   146,   178,   186,   144,   146,   184,   184,   184,    30,
+      47,   173,   176,   138,     3,     4,     9,    21,    22,    23,
+      34,    35,    51,   143,   185,   209,   210,   211,   211,   211,
+     211,   180,   178,   178,   135,   172,   135,   172,   211,   140,
+     135,   135,   135,   135,   135,   135,   211,   211,    32,   180,
+     178,   212,   128,   131,   167,   169,   184,   184,   221,   135,
+     135,   135,   135,   184,   144,   146,   135,   135,    32,    19,
+       4,   175,    33,   178,   200,   201,    53,   208,   186,   135,
+     135,   211,   211,   211,    11,    47,    11,   221,   211,   140,
+     212,   178,   212,   212,   212,   135,   135,   178,   211,   211,
+     135,   135,   135,   135,   139,   184,   184,   184,   184,   144,
+     184,   184,   178,   168,   135,   139,    19,   144,    14,    14,
+     138,   135,   135,   211,     4,   211,   135,   211,   135,   135,
+     135,   211,   211,   138,   178,   184,   184,   212,   135,   139,
+     135,   135,   139,   139,   139,   156,   157,    33,   178,   170,
+     135,   211,   211,   178,   220,   211,   211,   135,   172,   172,
+     211,   135,   212,   212,   212,   220,   211,   139,   139,   184,
+     184,   184,   168,   173,   174,    19,   135,   140,   211,   135,
+     139,   142,   211,   139,   139,   139,   139,   157,    47,   171,
+      14,   142,   154,   217,   168,   178,   170,   142,   170,     4,
+     211,   209,   142,   154,   211,    32,   135,   209,   168,    14,
+      14,   135,   211,   211,    14,    65,   211,    14,   211
 };
 
 #define yyerrok		(yyerrstatus = 0)
@@ -3041,142 +3041,142 @@
   switch (yyn)
     {
         case 29:
-#line 1099 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1099 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_EQ; ;}
     break;
 
   case 30:
-#line 1099 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1099 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_NE; ;}
     break;
 
   case 31:
-#line 1100 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1100 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_SLT; ;}
     break;
 
   case 32:
-#line 1100 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1100 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_SGT; ;}
     break;
 
   case 33:
-#line 1101 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1101 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_SLE; ;}
     break;
 
   case 34:
-#line 1101 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1101 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_SGE; ;}
     break;
 
   case 35:
-#line 1102 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1102 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_ULT; ;}
     break;
 
   case 36:
-#line 1102 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1102 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_UGT; ;}
     break;
 
   case 37:
-#line 1103 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1103 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_ULE; ;}
     break;
 
   case 38:
-#line 1103 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1103 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.IPredicate) = ICmpInst::ICMP_UGE; ;}
     break;
 
   case 39:
-#line 1107 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1107 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OEQ; ;}
     break;
 
   case 40:
-#line 1107 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1107 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_ONE; ;}
     break;
 
   case 41:
-#line 1108 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1108 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OLT; ;}
     break;
 
   case 42:
-#line 1108 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1108 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OGT; ;}
     break;
 
   case 43:
-#line 1109 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1109 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OLE; ;}
     break;
 
   case 44:
-#line 1109 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1109 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_OGE; ;}
     break;
 
   case 45:
-#line 1110 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1110 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_ORD; ;}
     break;
 
   case 46:
-#line 1110 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1110 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UNO; ;}
     break;
 
   case 47:
-#line 1111 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1111 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UEQ; ;}
     break;
 
   case 48:
-#line 1111 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1111 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UNE; ;}
     break;
 
   case 49:
-#line 1112 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1112 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_ULT; ;}
     break;
 
   case 50:
-#line 1112 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1112 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UGT; ;}
     break;
 
   case 51:
-#line 1113 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1113 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_ULE; ;}
     break;
 
   case 52:
-#line 1113 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1113 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_UGE; ;}
     break;
 
   case 53:
-#line 1114 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1114 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_TRUE; ;}
     break;
 
   case 54:
-#line 1115 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1115 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.FPredicate) = FCmpInst::FCMP_FALSE; ;}
     break;
 
   case 61:
-#line 1124 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1124 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.StrVal) = 0; ;}
     break;
 
   case 62:
-#line 1128 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1128 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.StrVal) = (yyvsp[-1].StrVal);
     CHECK_FOR_ERROR
@@ -3184,7 +3184,7 @@
     break;
 
   case 63:
-#line 1132 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1132 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.StrVal) = 0;
     CHECK_FOR_ERROR
@@ -3192,7 +3192,7 @@
     break;
 
   case 66:
-#line 1139 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1139 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.StrVal) = (yyvsp[-1].StrVal);
     CHECK_FOR_ERROR
@@ -3200,7 +3200,7 @@
     break;
 
   case 67:
-#line 1143 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1143 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.StrVal) = 0;
     CHECK_FOR_ERROR
@@ -3208,127 +3208,127 @@
     break;
 
   case 68:
-#line 1149 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1149 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
     break;
 
   case 69:
-#line 1150 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1150 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
     break;
 
   case 70:
-#line 1151 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1151 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}
     break;
 
   case 71:
-#line 1152 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1152 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::AppendingLinkage; ;}
     break;
 
   case 72:
-#line 1153 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1153 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}
     break;
 
   case 73:
-#line 1157 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1157 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}
     break;
 
   case 74:
-#line 1158 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1158 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}
     break;
 
   case 75:
-#line 1159 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1159 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
     break;
 
   case 76:
-#line 1163 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1163 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Visibility) = GlobalValue::DefaultVisibility; ;}
     break;
 
   case 77:
-#line 1164 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1164 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Visibility) = GlobalValue::HiddenVisibility;  ;}
     break;
 
   case 78:
-#line 1168 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1168 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
     break;
 
   case 79:
-#line 1169 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1169 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}
     break;
 
   case 80:
-#line 1170 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1170 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}
     break;
 
   case 81:
-#line 1174 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1174 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
     break;
 
   case 82:
-#line 1175 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1175 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
     break;
 
   case 83:
-#line 1176 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1176 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}
     break;
 
   case 84:
-#line 1177 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1177 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
     break;
 
   case 85:
-#line 1178 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1178 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}
     break;
 
   case 86:
-#line 1181 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1181 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::C; ;}
     break;
 
   case 87:
-#line 1182 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1182 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::C; ;}
     break;
 
   case 88:
-#line 1183 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1183 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::Fast; ;}
     break;
 
   case 89:
-#line 1184 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1184 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::Cold; ;}
     break;
 
   case 90:
-#line 1185 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1185 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::X86_StdCall; ;}
     break;
 
   case 91:
-#line 1186 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1186 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = CallingConv::X86_FastCall; ;}
     break;
 
   case 92:
-#line 1187 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1187 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
                    if ((unsigned)(yyvsp[0].UInt64Val) != (yyvsp[0].UInt64Val))
                      GEN_ERROR("Calling conv too large");
@@ -3338,66 +3338,66 @@
     break;
 
   case 93:
-#line 1194 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1194 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ParamAttrs) = FunctionType::ZExtAttribute;      ;}
     break;
 
   case 94:
-#line 1195 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1195 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ParamAttrs) = FunctionType::SExtAttribute;      ;}
     break;
 
   case 95:
-#line 1196 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1196 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ParamAttrs) = FunctionType::InRegAttribute;     ;}
     break;
 
   case 96:
-#line 1197 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1197 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ParamAttrs) = FunctionType::StructRetAttribute; ;}
     break;
 
   case 97:
-#line 1200 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1200 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ParamAttrs) = FunctionType::NoAttributeSet; ;}
     break;
 
   case 98:
-#line 1201 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1201 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
                 (yyval.ParamAttrs) = FunctionType::ParameterAttributes((yyvsp[-1].ParamAttrs) | (yyvsp[0].ParamAttrs));
               ;}
     break;
 
   case 99:
-#line 1206 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1206 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ParamAttrs) = FunctionType::NoReturnAttribute; ;}
     break;
 
   case 100:
-#line 1207 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1207 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ParamAttrs) = FunctionType::NoUnwindAttribute; ;}
     break;
 
   case 102:
-#line 1211 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1211 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ParamAttrs) = FunctionType::NoAttributeSet; ;}
     break;
 
   case 103:
-#line 1212 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1212 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
                 (yyval.ParamAttrs) = FunctionType::ParameterAttributes((yyvsp[-1].ParamAttrs) | (yyvsp[0].ParamAttrs));
               ;}
     break;
 
   case 104:
-#line 1219 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1219 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = 0; ;}
     break;
 
   case 105:
-#line 1220 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1220 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.UIntVal) = (yyvsp[0].UInt64Val);
   if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
@@ -3407,12 +3407,12 @@
     break;
 
   case 106:
-#line 1226 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1226 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.UIntVal) = 0; ;}
     break;
 
   case 107:
-#line 1227 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1227 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.UIntVal) = (yyvsp[0].UInt64Val);
   if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
@@ -3422,7 +3422,7 @@
     break;
 
   case 108:
-#line 1235 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1235 "/proj/llvm/llvm-4/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] == '\\')
@@ -3433,27 +3433,27 @@
     break;
 
   case 109:
-#line 1243 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1243 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.StrVal) = 0; ;}
     break;
 
   case 110:
-#line 1244 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1244 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.StrVal) = (yyvsp[0].StrVal); ;}
     break;
 
   case 111:
-#line 1249 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1249 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {;}
     break;
 
   case 112:
-#line 1250 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1250 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {;}
     break;
 
   case 113:
-#line 1251 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1251 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV->setSection((yyvsp[0].StrVal));
     free((yyvsp[0].StrVal));
@@ -3462,7 +3462,7 @@
     break;
 
   case 114:
-#line 1256 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1256 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[0].UInt64Val) != 0 && !isPowerOf2_32((yyvsp[0].UInt64Val)))
       GEN_ERROR("Alignment must be a power of two");
@@ -3472,7 +3472,7 @@
     break;
 
   case 119:
-#line 1272 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1272 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeVal) = new PATypeHolder(OpaqueType::get());
     CHECK_FOR_ERROR
@@ -3480,7 +3480,7 @@
     break;
 
   case 120:
-#line 1276 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1276 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeVal) = new PATypeHolder((yyvsp[0].PrimType));
     CHECK_FOR_ERROR
@@ -3488,7 +3488,7 @@
     break;
 
   case 121:
-#line 1280 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1280 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                             // Pointer type?
     if (*(yyvsp[-1].TypeVal) == Type::LabelTy)
       GEN_ERROR("Cannot form a pointer to a basic block");
@@ -3499,7 +3499,7 @@
     break;
 
   case 122:
-#line 1287 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1287 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {            // Named types are also simple types...
     const Type* tmp = getTypeVal((yyvsp[0].ValIDVal));
     CHECK_FOR_ERROR
@@ -3508,7 +3508,7 @@
     break;
 
   case 123:
-#line 1292 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1292 "/proj/llvm/llvm-4/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
@@ -3520,7 +3520,7 @@
     break;
 
   case 124:
-#line 1300 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1300 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     std::vector<const Type*> Params;
     std::vector<FunctionType::ParameterAttributes> Attrs;
@@ -3543,7 +3543,7 @@
     break;
 
   case 125:
-#line 1319 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1319 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     std::vector<const Type*> Params;
     std::vector<FunctionType::ParameterAttributes> Attrs;
@@ -3565,7 +3565,7 @@
     break;
 
   case 126:
-#line 1338 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1338 "/proj/llvm/llvm-4/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);
@@ -3574,7 +3574,7 @@
     break;
 
   case 127:
-#line 1343 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1343 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {          // Vector type?
      const llvm::Type* ElemTy = (yyvsp[-1].TypeVal)->get();
      if ((unsigned)(yyvsp[-3].UInt64Val) != (yyvsp[-3].UInt64Val))
@@ -3590,7 +3590,7 @@
     break;
 
   case 128:
-#line 1355 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1355 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                        // Structure type?
     std::vector<const Type*> Elements;
     for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[-1].TypeList)->begin(),
@@ -3604,7 +3604,7 @@
     break;
 
   case 129:
-#line 1365 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1365 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                                  // Empty structure type?
     (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>()));
     CHECK_FOR_ERROR
@@ -3612,7 +3612,7 @@
     break;
 
   case 130:
-#line 1369 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1369 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     std::vector<const Type*> Elements;
     for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[-2].TypeList)->begin(),
@@ -3626,7 +3626,7 @@
     break;
 
   case 131:
-#line 1379 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1379 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                         // Empty structure type?
     (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>(), true));
     CHECK_FOR_ERROR
@@ -3634,7 +3634,7 @@
     break;
 
   case 132:
-#line 1386 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1386 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { 
     (yyval.TypeWithAttrs).Ty = (yyvsp[-1].TypeVal); 
     (yyval.TypeWithAttrs).Attrs = (yyvsp[0].ParamAttrs); 
@@ -3642,7 +3642,7 @@
     break;
 
   case 133:
-#line 1393 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1393 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -3653,14 +3653,14 @@
     break;
 
   case 134:
-#line 1400 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1400 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeVal) = new PATypeHolder(Type::VoidTy);
   ;}
     break;
 
   case 135:
-#line 1405 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1405 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeWithAttrsList) = new TypeWithAttrsList();
     (yyval.TypeWithAttrsList)->push_back((yyvsp[0].TypeWithAttrs));
@@ -3669,7 +3669,7 @@
     break;
 
   case 136:
-#line 1410 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1410 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.TypeWithAttrsList)=(yyvsp[-2].TypeWithAttrsList))->push_back((yyvsp[0].TypeWithAttrs));
     CHECK_FOR_ERROR
@@ -3677,7 +3677,7 @@
     break;
 
   case 138:
-#line 1418 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1418 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeWithAttrsList)=(yyvsp[-2].TypeWithAttrsList);
     TypeWithAttrs TWA; TWA.Attrs = FunctionType::NoAttributeSet;
@@ -3688,7 +3688,7 @@
     break;
 
   case 139:
-#line 1425 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1425 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeWithAttrsList) = new TypeWithAttrsList;
     TypeWithAttrs TWA; TWA.Attrs = FunctionType::NoAttributeSet;
@@ -3699,7 +3699,7 @@
     break;
 
   case 140:
-#line 1432 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1432 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeWithAttrsList) = new TypeWithAttrsList();
     CHECK_FOR_ERROR
@@ -3707,7 +3707,7 @@
     break;
 
   case 141:
-#line 1440 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1440 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TypeList) = new std::list<PATypeHolder>();
     (yyval.TypeList)->push_back(*(yyvsp[0].TypeVal)); 
@@ -3717,7 +3717,7 @@
     break;
 
   case 142:
-#line 1446 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1446 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.TypeList)=(yyvsp[-2].TypeList))->push_back(*(yyvsp[0].TypeVal)); 
     delete (yyvsp[0].TypeVal);
@@ -3726,7 +3726,7 @@
     break;
 
   case 143:
-#line 1458 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1458 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized arr
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -3758,7 +3758,7 @@
     break;
 
   case 144:
-#line 1486 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1486 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -3778,7 +3778,7 @@
     break;
 
   case 145:
-#line 1502 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1502 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -3811,7 +3811,7 @@
     break;
 
   case 146:
-#line 1531 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1531 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized arr
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -3843,7 +3843,7 @@
     break;
 
   case 147:
-#line 1559 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1559 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     const StructType *STy = dyn_cast<StructType>((yyvsp[-3].TypeVal)->get());
     if (STy == 0)
@@ -3872,7 +3872,7 @@
     break;
 
   case 148:
-#line 1584 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1584 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -3895,7 +3895,7 @@
     break;
 
   case 149:
-#line 1603 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1603 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     const StructType *STy = dyn_cast<StructType>((yyvsp[-5].TypeVal)->get());
     if (STy == 0)
@@ -3925,7 +3925,7 @@
     break;
 
   case 150:
-#line 1629 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1629 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription());
@@ -3949,7 +3949,7 @@
     break;
 
   case 151:
-#line 1649 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1649 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -3965,7 +3965,7 @@
     break;
 
   case 152:
-#line 1661 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1661 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -3976,7 +3976,7 @@
     break;
 
   case 153:
-#line 1668 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1668 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4046,7 +4046,7 @@
     break;
 
   case 154:
-#line 1734 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1734 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4060,7 +4060,7 @@
     break;
 
   case 155:
-#line 1744 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1744 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4074,7 +4074,7 @@
     break;
 
   case 156:
-#line 1754 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1754 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {      // integral constants
     if (!ConstantInt::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].SInt64Val)))
       GEN_ERROR("Constant value doesn't fit in type");
@@ -4084,7 +4084,7 @@
     break;
 
   case 157:
-#line 1760 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1760 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {      // arbitrary precision integer constants
     uint32_t BitWidth = cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth();
     if ((yyvsp[0].APIntVal)->getBitWidth() > BitWidth) {
@@ -4098,7 +4098,7 @@
     break;
 
   case 158:
-#line 1770 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1770 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {      // integral constants
     if (!ConstantInt::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].UInt64Val)))
       GEN_ERROR("Constant value doesn't fit in type");
@@ -4108,7 +4108,7 @@
     break;
 
   case 159:
-#line 1776 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1776 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {      // arbitrary precision integer constants
     uint32_t BitWidth = cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth();
     if ((yyvsp[0].APIntVal)->getBitWidth() > BitWidth) {
@@ -4122,7 +4122,7 @@
     break;
 
   case 160:
-#line 1786 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1786 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                      // Boolean constants
     assert(cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth() == 1 && "Not Bool?");
     (yyval.ConstVal) = ConstantInt::getTrue();
@@ -4131,7 +4131,7 @@
     break;
 
   case 161:
-#line 1791 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1791 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                     // Boolean constants
     assert(cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth() == 1 && "Not Bool?");
     (yyval.ConstVal) = ConstantInt::getFalse();
@@ -4140,7 +4140,7 @@
     break;
 
   case 162:
-#line 1796 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1796 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                   // Float & Double constants
     if (!ConstantFP::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].FPVal)))
       GEN_ERROR("Floating point constant invalid for type");
@@ -4150,7 +4150,7 @@
     break;
 
   case 163:
-#line 1804 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1804 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4166,7 +4166,7 @@
     break;
 
   case 164:
-#line 1816 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1816 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!isa<PointerType>((yyvsp[-2].ConstVal)->getType()))
       GEN_ERROR("GetElementPtr requires a pointer operand");
@@ -4192,7 +4192,7 @@
     break;
 
   case 165:
-#line 1838 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1838 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-5].ConstVal)->getType() != Type::Int1Ty)
       GEN_ERROR("Select condition must be of boolean type");
@@ -4204,7 +4204,7 @@
     break;
 
   case 166:
-#line 1846 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1846 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("Binary operator types must match");
@@ -4214,7 +4214,7 @@
     break;
 
   case 167:
-#line 1852 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1852 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("Logical operator types must match");
@@ -4229,7 +4229,7 @@
     break;
 
   case 168:
-#line 1863 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1863 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("icmp operand types must match");
@@ -4238,7 +4238,7 @@
     break;
 
   case 169:
-#line 1868 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1868 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
       GEN_ERROR("fcmp operand types must match");
@@ -4247,7 +4247,7 @@
     break;
 
   case 170:
-#line 1873 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1873 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ExtractElementInst::isValidOperands((yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
       GEN_ERROR("Invalid extractelement operands");
@@ -4257,7 +4257,7 @@
     break;
 
   case 171:
-#line 1879 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1879 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!InsertElementInst::isValidOperands((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
       GEN_ERROR("Invalid insertelement operands");
@@ -4267,7 +4267,7 @@
     break;
 
   case 172:
-#line 1885 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1885 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ShuffleVectorInst::isValidOperands((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
       GEN_ERROR("Invalid shufflevector operands");
@@ -4277,7 +4277,7 @@
     break;
 
   case 173:
-#line 1894 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1894 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     ((yyval.ConstVector) = (yyvsp[-2].ConstVector))->push_back((yyvsp[0].ConstVal));
     CHECK_FOR_ERROR
@@ -4285,7 +4285,7 @@
     break;
 
   case 174:
-#line 1898 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1898 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ConstVector) = new std::vector<Constant*>();
     (yyval.ConstVector)->push_back((yyvsp[0].ConstVal));
@@ -4294,17 +4294,17 @@
     break;
 
   case 175:
-#line 1906 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1906 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.BoolVal) = false; ;}
     break;
 
   case 176:
-#line 1906 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1906 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.BoolVal) = true; ;}
     break;
 
   case 177:
-#line 1917 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1917 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;
     CurModule.ModuleDone();
@@ -4313,7 +4313,7 @@
     break;
 
   case 178:
-#line 1922 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1922 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;
     CurModule.ModuleDone();
@@ -4322,12 +4322,12 @@
     break;
 
   case 181:
-#line 1935 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1935 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { CurFun.isDeclare = false; ;}
     break;
 
   case 182:
-#line 1935 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1935 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CurFun.FunctionDone();
     CHECK_FOR_ERROR
@@ -4335,42 +4335,26 @@
     break;
 
   case 183:
-#line 1939 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1939 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { CurFun.isDeclare = true; ;}
     break;
 
   case 184:
-#line 1939 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1939 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CHECK_FOR_ERROR
   ;}
     break;
 
   case 185:
-#line 1942 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1942 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CHECK_FOR_ERROR
   ;}
     break;
 
   case 186:
-#line 1945 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
-    {
-    // Emit an error if there are any unresolved types left.
-    if (!CurModule.LateResolveTypes.empty()) {
-      const ValID &DID = CurModule.LateResolveTypes.begin()->first;
-      if (DID.Type == ValID::LocalName) {
-        GEN_ERROR("Reference to an undefined type: '"+DID.getName() + "'");
-      } else {
-        GEN_ERROR("Reference to an undefined type: #" + itostr(DID.Num));
-      }
-    }
-    CHECK_FOR_ERROR
-  ;}
-    break;
-
-  case 187:
-#line 1957 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 1945 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -4397,8 +4381,8 @@
   ;}
     break;
 
-  case 188:
-#line 1981 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 187:
+#line 1969 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     ResolveTypeTo((yyvsp[-2].StrVal), (yyvsp[0].PrimType));
 
@@ -4412,8 +4396,8 @@
   ;}
     break;
 
-  case 189:
-#line 1992 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 188:
+#line 1980 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { 
     /* "Externally Visible" Linkage */
     if ((yyvsp[0].ConstVal) == 0) 
@@ -4424,15 +4408,15 @@
   ;}
     break;
 
-  case 190:
-#line 1999 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 189:
+#line 1987 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
   ;}
     break;
 
-  case 191:
-#line 2002 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 190:
+#line 1990 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[0].ConstVal) == 0) 
       GEN_ERROR("Global value initializer is not a constant");
@@ -4441,15 +4425,15 @@
   ;}
     break;
 
-  case 192:
-#line 2007 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 191:
+#line 1995 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
   ;}
     break;
 
-  case 193:
-#line 2010 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 192:
+#line 1998 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -4459,30 +4443,30 @@
   ;}
     break;
 
-  case 194:
-#line 2016 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 193:
+#line 2004 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 195:
-#line 2020 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 194:
+#line 2008 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { 
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 196:
-#line 2023 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 195:
+#line 2011 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 197:
-#line 2029 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 196:
+#line 2017 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
   const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm();
   char *EndStr = UnEscapeLexed((yyvsp[0].StrVal), true);
@@ -4497,24 +4481,24 @@
 ;}
     break;
 
-  case 198:
-#line 2042 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 197:
+#line 2030 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CurModule.CurrentModule->setTargetTriple((yyvsp[0].StrVal));
     free((yyvsp[0].StrVal));
   ;}
     break;
 
-  case 199:
-#line 2046 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 198:
+#line 2034 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CurModule.CurrentModule->setDataLayout((yyvsp[0].StrVal));
     free((yyvsp[0].StrVal));
   ;}
     break;
 
-  case 201:
-#line 2053 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 200:
+#line 2041 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
           CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal));
           free((yyvsp[0].StrVal));
@@ -4522,8 +4506,8 @@
         ;}
     break;
 
-  case 202:
-#line 2058 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 201:
+#line 2046 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
           CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal));
           free((yyvsp[0].StrVal));
@@ -4531,15 +4515,15 @@
         ;}
     break;
 
-  case 203:
-#line 2063 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 202:
+#line 2051 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
           CHECK_FOR_ERROR
         ;}
     break;
 
-  case 204:
-#line 2072 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 203:
+#line 2060 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -4552,8 +4536,8 @@
   ;}
     break;
 
-  case 205:
-#line 2082 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 204:
+#line 2070 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -4566,16 +4550,16 @@
   ;}
     break;
 
-  case 206:
-#line 2093 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 205:
+#line 2081 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = (yyvsp[0].ArgList);
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 207:
-#line 2097 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 206:
+#line 2085 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = (yyvsp[-2].ArgList);
     struct ArgListEntry E;
@@ -4587,8 +4571,8 @@
   ;}
     break;
 
-  case 208:
-#line 2106 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 207:
+#line 2094 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = new ArgListType;
     struct ArgListEntry E;
@@ -4600,16 +4584,16 @@
   ;}
     break;
 
-  case 209:
-#line 2115 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 208:
+#line 2103 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ArgList) = 0;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 210:
-#line 2121 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 209:
+#line 2109 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
   UnEscapeLexed((yyvsp[-6].StrVal));
   std::string FunctionName((yyvsp[-6].StrVal));
@@ -4722,8 +4706,8 @@
 ;}
     break;
 
-  case 213:
-#line 2234 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 212:
+#line 2222 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.FunctionVal) = CurFun.CurrentFunction;
 
@@ -4734,16 +4718,16 @@
 ;}
     break;
 
-  case 216:
-#line 2245 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 215:
+#line 2233 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
   (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
   CHECK_FOR_ERROR
 ;}
     break;
 
-  case 217:
-#line 2250 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 216:
+#line 2238 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     CurFun.CurrentFunction->setLinkage((yyvsp[-2].Linkage));
     CurFun.CurrentFunction->setVisibility((yyvsp[-1].Visibility));
@@ -4753,88 +4737,88 @@
   ;}
     break;
 
-  case 218:
-#line 2262 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 217:
+#line 2250 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = false;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 219:
-#line 2266 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 218:
+#line 2254 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = true;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 220:
-#line 2271 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 219:
+#line 2259 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {    // A reference to a direct constant
     (yyval.ValIDVal) = ValID::create((yyvsp[0].SInt64Val));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 221:
-#line 2275 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 220:
+#line 2263 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create((yyvsp[0].UInt64Val));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 222:
-#line 2279 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 221:
+#line 2267 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                     // Perhaps it's an FP constant?
     (yyval.ValIDVal) = ValID::create((yyvsp[0].FPVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 223:
-#line 2283 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 222:
+#line 2271 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create(ConstantInt::getTrue());
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 224:
-#line 2287 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 223:
+#line 2275 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create(ConstantInt::getFalse());
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 225:
-#line 2291 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 224:
+#line 2279 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::createNull();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 226:
-#line 2295 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 225:
+#line 2283 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::createUndef();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 227:
-#line 2299 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 226:
+#line 2287 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {     // A vector zero constant.
     (yyval.ValIDVal) = ValID::createZeroInit();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 228:
-#line 2303 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 227:
+#line 2291 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized packed vector
     const Type *ETy = (*(yyvsp[-1].ConstVector))[0]->getType();
     int NumElements = (yyvsp[-1].ConstVector)->size(); 
@@ -4862,16 +4846,16 @@
   ;}
     break;
 
-  case 229:
-#line 2328 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 228:
+#line 2316 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::create((yyvsp[0].ConstVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 230:
-#line 2332 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 229:
+#line 2320 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     char *End = UnEscapeLexed((yyvsp[-2].StrVal), true);
     std::string AsmStr = std::string((yyvsp[-2].StrVal), End);
@@ -4884,40 +4868,40 @@
   ;}
     break;
 
-  case 231:
-#line 2346 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 230:
+#line 2334 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {  // Is it an integer reference...?
     (yyval.ValIDVal) = ValID::createLocalID((yyvsp[0].UIntVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 232:
-#line 2350 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 231:
+#line 2338 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValIDVal) = ValID::createGlobalID((yyvsp[0].UIntVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 233:
-#line 2354 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 232:
+#line 2342 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                   // Is it a named reference...?
     (yyval.ValIDVal) = ValID::createLocalName((yyvsp[0].StrVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 234:
-#line 2358 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 233:
+#line 2346 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                   // Is it a named reference...?
     (yyval.ValIDVal) = ValID::createGlobalName((yyvsp[0].StrVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 237:
-#line 2370 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 236:
+#line 2358 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -4927,24 +4911,24 @@
   ;}
     break;
 
-  case 238:
-#line 2379 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 237:
+#line 2367 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 239:
-#line 2383 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 238:
+#line 2371 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { // Do not allow functions with 0 basic blocks   
     (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 240:
-#line 2392 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 239:
+#line 2380 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     setValueName((yyvsp[0].TermInstVal), (yyvsp[-1].StrVal));
     CHECK_FOR_ERROR
@@ -4955,8 +4939,8 @@
   ;}
     break;
 
-  case 241:
-#line 2401 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 240:
+#line 2389 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (CastInst *CI1 = dyn_cast<CastInst>((yyvsp[0].InstVal)))
       if (CastInst *CI2 = dyn_cast<CastInst>(CI1->getOperand(0)))
@@ -4968,40 +4952,40 @@
   ;}
     break;
 
-  case 242:
-#line 2410 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 241:
+#line 2398 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {          // Empty space between instruction lists
     (yyval.BasicBlockVal) = defineBBVal(ValID::createLocalID(CurFun.NextValNum));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 243:
-#line 2414 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 242:
+#line 2402 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {             // Labelled (named) basic block
     (yyval.BasicBlockVal) = defineBBVal(ValID::createLocalName((yyvsp[0].StrVal)));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 244:
-#line 2419 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 243:
+#line 2407 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {              // Return with a result...
     (yyval.TermInstVal) = new ReturnInst((yyvsp[0].ValueVal));
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 245:
-#line 2423 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 244:
+#line 2411 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                                    // Return with no result...
     (yyval.TermInstVal) = new ReturnInst();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 246:
-#line 2427 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 245:
+#line 2415 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {                           // Unconditional Branch...
     BasicBlock* tmpBB = getBBVal((yyvsp[0].ValIDVal));
     CHECK_FOR_ERROR
@@ -5009,8 +4993,8 @@
   ;}
     break;
 
-  case 247:
-#line 2432 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 246:
+#line 2420 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {  
     assert(cast<IntegerType>((yyvsp[-7].PrimType))->getBitWidth() == 1 && "Not Bool?");
     BasicBlock* tmpBBA = getBBVal((yyvsp[-3].ValIDVal));
@@ -5023,8 +5007,8 @@
   ;}
     break;
 
-  case 248:
-#line 2442 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 247:
+#line 2430 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     Value* tmpVal = getVal((yyvsp[-7].PrimType), (yyvsp[-6].ValIDVal));
     CHECK_FOR_ERROR
@@ -5046,8 +5030,8 @@
   ;}
     break;
 
-  case 249:
-#line 2461 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 248:
+#line 2449 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     Value* tmpVal = getVal((yyvsp[-6].PrimType), (yyvsp[-5].ValIDVal));
     CHECK_FOR_ERROR
@@ -5059,8 +5043,8 @@
   ;}
     break;
 
-  case 250:
-#line 2471 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 249:
+#line 2459 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
 
     // Handle the short syntax
@@ -5131,24 +5115,24 @@
   ;}
     break;
 
-  case 251:
-#line 2539 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 250:
+#line 2527 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TermInstVal) = new UnwindInst();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 252:
-#line 2543 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 251:
+#line 2531 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.TermInstVal) = new UnreachableInst();
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 253:
-#line 2550 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 252:
+#line 2538 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.JumpTable) = (yyvsp[-5].JumpTable);
     Constant *V = cast<Constant>(getExistingVal((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));
@@ -5162,8 +5146,8 @@
   ;}
     break;
 
-  case 254:
-#line 2561 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 253:
+#line 2549 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.JumpTable) = new std::vector<std::pair<Constant*, BasicBlock*> >();
     Constant *V = cast<Constant>(getExistingVal((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));
@@ -5178,8 +5162,8 @@
   ;}
     break;
 
-  case 255:
-#line 2574 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 254:
+#line 2562 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     // Is this definition named?? if so, assign the name...
     setValueName((yyvsp[0].InstVal), (yyvsp[-1].StrVal));
@@ -5190,8 +5174,8 @@
   ;}
     break;
 
-  case 256:
-#line 2584 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 255:
+#line 2572 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {    // Used for PHI nodes
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-5].TypeVal))->getDescription());
@@ -5205,8 +5189,8 @@
   ;}
     break;
 
-  case 257:
-#line 2595 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 256:
+#line 2583 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.PHIList) = (yyvsp[-6].PHIList);
     Value* tmpVal = getVal((yyvsp[-6].PHIList)->front().first->getType(), (yyvsp[-3].ValIDVal));
@@ -5217,8 +5201,8 @@
   ;}
     break;
 
-  case 258:
-#line 2605 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 257:
+#line 2593 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {    
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -5230,8 +5214,8 @@
   ;}
     break;
 
-  case 259:
-#line 2614 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 258:
+#line 2602 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -5243,18 +5227,18 @@
   ;}
     break;
 
-  case 260:
-#line 2623 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 259:
+#line 2611 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ValueRefList) = new ValueRefList(); ;}
     break;
 
-  case 261:
-#line 2626 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 260:
+#line 2614 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     { (yyval.ValueList) = new std::vector<Value*>(); ;}
     break;
 
-  case 262:
-#line 2627 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 261:
+#line 2615 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.ValueList) = (yyvsp[-2].ValueList);
     (yyval.ValueList)->push_back((yyvsp[0].ValueVal));
@@ -5262,24 +5246,24 @@
   ;}
     break;
 
-  case 263:
-#line 2634 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 262:
+#line 2622 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = true;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 264:
-#line 2638 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 263:
+#line 2626 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = false;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 265:
-#line 2643 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 264:
+#line 2631 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -5303,8 +5287,8 @@
   ;}
     break;
 
-  case 266:
-#line 2664 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 265:
+#line 2652 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -5324,8 +5308,8 @@
   ;}
     break;
 
-  case 267:
-#line 2681 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 266:
+#line 2669 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -5342,8 +5326,8 @@
   ;}
     break;
 
-  case 268:
-#line 2695 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 267:
+#line 2683 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
@@ -5360,8 +5344,8 @@
   ;}
     break;
 
-  case 269:
-#line 2709 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 268:
+#line 2697 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -5376,8 +5360,8 @@
   ;}
     break;
 
-  case 270:
-#line 2721 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 269:
+#line 2709 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if ((yyvsp[-4].ValueVal)->getType() != Type::Int1Ty)
       GEN_ERROR("select condition must be boolean");
@@ -5388,8 +5372,8 @@
   ;}
     break;
 
-  case 271:
-#line 2729 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 270:
+#line 2717 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
@@ -5399,8 +5383,8 @@
   ;}
     break;
 
-  case 272:
-#line 2736 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 271:
+#line 2724 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ExtractElementInst::isValidOperands((yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
       GEN_ERROR("Invalid extractelement operands");
@@ -5409,8 +5393,8 @@
   ;}
     break;
 
-  case 273:
-#line 2742 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 272:
+#line 2730 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!InsertElementInst::isValidOperands((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
       GEN_ERROR("Invalid insertelement operands");
@@ -5419,8 +5403,8 @@
   ;}
     break;
 
-  case 274:
-#line 2748 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 273:
+#line 2736 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!ShuffleVectorInst::isValidOperands((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
       GEN_ERROR("Invalid shufflevector operands");
@@ -5429,8 +5413,8 @@
   ;}
     break;
 
-  case 275:
-#line 2754 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 274:
+#line 2742 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     const Type *Ty = (yyvsp[0].PHIList)->front().first->getType();
     if (!Ty->isFirstClassType())
@@ -5448,8 +5432,8 @@
   ;}
     break;
 
-  case 276:
-#line 2770 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 275:
+#line 2758 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
 
     // Handle the short syntax
@@ -5515,32 +5499,32 @@
   ;}
     break;
 
-  case 277:
-#line 2833 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 276:
+#line 2821 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.InstVal) = (yyvsp[0].InstVal);
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 278:
-#line 2838 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 277:
+#line 2826 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = true;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 279:
-#line 2842 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 278:
+#line 2830 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     (yyval.BoolVal) = false;
     CHECK_FOR_ERROR
   ;}
     break;
 
-  case 280:
-#line 2849 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 279:
+#line 2837 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -5550,8 +5534,8 @@
   ;}
     break;
 
-  case 281:
-#line 2856 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 280:
+#line 2844 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription());
@@ -5562,8 +5546,8 @@
   ;}
     break;
 
-  case 282:
-#line 2864 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 281:
+#line 2852 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -5573,8 +5557,8 @@
   ;}
     break;
 
-  case 283:
-#line 2871 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 282:
+#line 2859 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription());
@@ -5585,8 +5569,8 @@
   ;}
     break;
 
-  case 284:
-#line 2879 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 283:
+#line 2867 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!isa<PointerType>((yyvsp[0].ValueVal)->getType()))
       GEN_ERROR("Trying to free nonpointer type " + 
@@ -5596,8 +5580,8 @@
   ;}
     break;
 
-  case 285:
-#line 2887 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 284:
+#line 2875 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -5614,8 +5598,8 @@
   ;}
     break;
 
-  case 286:
-#line 2901 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 285:
+#line 2889 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
@@ -5635,8 +5619,8 @@
   ;}
     break;
 
-  case 287:
-#line 2918 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+  case 286:
+#line 2906 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
@@ -5659,7 +5643,7 @@
     }
 
 /* Line 1126 of yacc.c.  */
-#line 5663 "llvmAsmParser.tab.c"
+#line 5647 "llvmAsmParser.tab.c"
 
   yyvsp -= yylen;
   yyssp -= yylen;
@@ -5927,7 +5911,7 @@
 }
 
 
-#line 2935 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 2923 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
 
 
 // common code from the two 'RunVMAsmParser' functions


Index: llvm/lib/AsmParser/llvmAsmParser.h.cvs
diff -u llvm/lib/AsmParser/llvmAsmParser.h.cvs:1.62 llvm/lib/AsmParser/llvmAsmParser.h.cvs:1.63
--- llvm/lib/AsmParser/llvmAsmParser.h.cvs:1.62	Thu Mar 29 13:50:01 2007
+++ llvm/lib/AsmParser/llvmAsmParser.h.cvs	Sun Apr  8 20:56:05 2007
@@ -47,120 +47,119 @@
      LABELSTR = 273,
      STRINGCONSTANT = 274,
      ATSTRINGCONSTANT = 275,
-     IMPLEMENTATION = 276,
-     ZEROINITIALIZER = 277,
-     TRUETOK = 278,
-     FALSETOK = 279,
-     BEGINTOK = 280,
-     ENDTOK = 281,
-     DECLARE = 282,
-     DEFINE = 283,
-     GLOBAL = 284,
-     CONSTANT = 285,
-     SECTION = 286,
-     VOLATILE = 287,
-     TO = 288,
-     DOTDOTDOT = 289,
-     NULL_TOK = 290,
-     UNDEF = 291,
-     INTERNAL = 292,
-     LINKONCE = 293,
-     WEAK = 294,
-     APPENDING = 295,
-     DLLIMPORT = 296,
-     DLLEXPORT = 297,
-     EXTERN_WEAK = 298,
-     OPAQUE = 299,
-     EXTERNAL = 300,
-     TARGET = 301,
-     TRIPLE = 302,
-     ALIGN = 303,
-     DEPLIBS = 304,
-     CALL = 305,
-     TAIL = 306,
-     ASM_TOK = 307,
-     MODULE = 308,
-     SIDEEFFECT = 309,
-     CC_TOK = 310,
-     CCC_TOK = 311,
-     FASTCC_TOK = 312,
-     COLDCC_TOK = 313,
-     X86_STDCALLCC_TOK = 314,
-     X86_FASTCALLCC_TOK = 315,
-     DATALAYOUT = 316,
-     RET = 317,
-     BR = 318,
-     SWITCH = 319,
-     INVOKE = 320,
-     UNWIND = 321,
-     UNREACHABLE = 322,
-     ADD = 323,
-     SUB = 324,
-     MUL = 325,
-     UDIV = 326,
-     SDIV = 327,
-     FDIV = 328,
-     UREM = 329,
-     SREM = 330,
-     FREM = 331,
-     AND = 332,
-     OR = 333,
-     XOR = 334,
-     SHL = 335,
-     LSHR = 336,
-     ASHR = 337,
-     ICMP = 338,
-     FCMP = 339,
-     EQ = 340,
-     NE = 341,
-     SLT = 342,
-     SGT = 343,
-     SLE = 344,
-     SGE = 345,
-     ULT = 346,
-     UGT = 347,
-     ULE = 348,
-     UGE = 349,
-     OEQ = 350,
-     ONE = 351,
-     OLT = 352,
-     OGT = 353,
-     OLE = 354,
-     OGE = 355,
-     ORD = 356,
-     UNO = 357,
-     UEQ = 358,
-     UNE = 359,
-     MALLOC = 360,
-     ALLOCA = 361,
-     FREE = 362,
-     LOAD = 363,
-     STORE = 364,
-     GETELEMENTPTR = 365,
-     TRUNC = 366,
-     ZEXT = 367,
-     SEXT = 368,
-     FPTRUNC = 369,
-     FPEXT = 370,
-     BITCAST = 371,
-     UITOFP = 372,
-     SITOFP = 373,
-     FPTOUI = 374,
-     FPTOSI = 375,
-     INTTOPTR = 376,
-     PTRTOINT = 377,
-     PHI_TOK = 378,
-     SELECT = 379,
-     VAARG = 380,
-     EXTRACTELEMENT = 381,
-     INSERTELEMENT = 382,
-     SHUFFLEVECTOR = 383,
-     NORETURN = 384,
-     INREG = 385,
-     SRET = 386,
-     NOUNWIND = 387,
-     DEFAULT = 388,
-     HIDDEN = 389
+     ZEROINITIALIZER = 276,
+     TRUETOK = 277,
+     FALSETOK = 278,
+     BEGINTOK = 279,
+     ENDTOK = 280,
+     DECLARE = 281,
+     DEFINE = 282,
+     GLOBAL = 283,
+     CONSTANT = 284,
+     SECTION = 285,
+     VOLATILE = 286,
+     TO = 287,
+     DOTDOTDOT = 288,
+     NULL_TOK = 289,
+     UNDEF = 290,
+     INTERNAL = 291,
+     LINKONCE = 292,
+     WEAK = 293,
+     APPENDING = 294,
+     DLLIMPORT = 295,
+     DLLEXPORT = 296,
+     EXTERN_WEAK = 297,
+     OPAQUE = 298,
+     EXTERNAL = 299,
+     TARGET = 300,
+     TRIPLE = 301,
+     ALIGN = 302,
+     DEPLIBS = 303,
+     CALL = 304,
+     TAIL = 305,
+     ASM_TOK = 306,
+     MODULE = 307,
+     SIDEEFFECT = 308,
+     CC_TOK = 309,
+     CCC_TOK = 310,
+     FASTCC_TOK = 311,
+     COLDCC_TOK = 312,
+     X86_STDCALLCC_TOK = 313,
+     X86_FASTCALLCC_TOK = 314,
+     DATALAYOUT = 315,
+     RET = 316,
+     BR = 317,
+     SWITCH = 318,
+     INVOKE = 319,
+     UNWIND = 320,
+     UNREACHABLE = 321,
+     ADD = 322,
+     SUB = 323,
+     MUL = 324,
+     UDIV = 325,
+     SDIV = 326,
+     FDIV = 327,
+     UREM = 328,
+     SREM = 329,
+     FREM = 330,
+     AND = 331,
+     OR = 332,
+     XOR = 333,
+     SHL = 334,
+     LSHR = 335,
+     ASHR = 336,
+     ICMP = 337,
+     FCMP = 338,
+     EQ = 339,
+     NE = 340,
+     SLT = 341,
+     SGT = 342,
+     SLE = 343,
+     SGE = 344,
+     ULT = 345,
+     UGT = 346,
+     ULE = 347,
+     UGE = 348,
+     OEQ = 349,
+     ONE = 350,
+     OLT = 351,
+     OGT = 352,
+     OLE = 353,
+     OGE = 354,
+     ORD = 355,
+     UNO = 356,
+     UEQ = 357,
+     UNE = 358,
+     MALLOC = 359,
+     ALLOCA = 360,
+     FREE = 361,
+     LOAD = 362,
+     STORE = 363,
+     GETELEMENTPTR = 364,
+     TRUNC = 365,
+     ZEXT = 366,
+     SEXT = 367,
+     FPTRUNC = 368,
+     FPEXT = 369,
+     BITCAST = 370,
+     UITOFP = 371,
+     SITOFP = 372,
+     FPTOUI = 373,
+     FPTOSI = 374,
+     INTTOPTR = 375,
+     PTRTOINT = 376,
+     PHI_TOK = 377,
+     SELECT = 378,
+     VAARG = 379,
+     EXTRACTELEMENT = 380,
+     INSERTELEMENT = 381,
+     SHUFFLEVECTOR = 382,
+     NORETURN = 383,
+     INREG = 384,
+     SRET = 385,
+     NOUNWIND = 386,
+     DEFAULT = 387,
+     HIDDEN = 388
    };
 #endif
 /* Tokens.  */
@@ -182,126 +181,125 @@
 #define LABELSTR 273
 #define STRINGCONSTANT 274
 #define ATSTRINGCONSTANT 275
-#define IMPLEMENTATION 276
-#define ZEROINITIALIZER 277
-#define TRUETOK 278
-#define FALSETOK 279
-#define BEGINTOK 280
-#define ENDTOK 281
-#define DECLARE 282
-#define DEFINE 283
-#define GLOBAL 284
-#define CONSTANT 285
-#define SECTION 286
-#define VOLATILE 287
-#define TO 288
-#define DOTDOTDOT 289
-#define NULL_TOK 290
-#define UNDEF 291
-#define INTERNAL 292
-#define LINKONCE 293
-#define WEAK 294
-#define APPENDING 295
-#define DLLIMPORT 296
-#define DLLEXPORT 297
-#define EXTERN_WEAK 298
-#define OPAQUE 299
-#define EXTERNAL 300
-#define TARGET 301
-#define TRIPLE 302
-#define ALIGN 303
-#define DEPLIBS 304
-#define CALL 305
-#define TAIL 306
-#define ASM_TOK 307
-#define MODULE 308
-#define SIDEEFFECT 309
-#define CC_TOK 310
-#define CCC_TOK 311
-#define FASTCC_TOK 312
-#define COLDCC_TOK 313
-#define X86_STDCALLCC_TOK 314
-#define X86_FASTCALLCC_TOK 315
-#define DATALAYOUT 316
-#define RET 317
-#define BR 318
-#define SWITCH 319
-#define INVOKE 320
-#define UNWIND 321
-#define UNREACHABLE 322
-#define ADD 323
-#define SUB 324
-#define MUL 325
-#define UDIV 326
-#define SDIV 327
-#define FDIV 328
-#define UREM 329
-#define SREM 330
-#define FREM 331
-#define AND 332
-#define OR 333
-#define XOR 334
-#define SHL 335
-#define LSHR 336
-#define ASHR 337
-#define ICMP 338
-#define FCMP 339
-#define EQ 340
-#define NE 341
-#define SLT 342
-#define SGT 343
-#define SLE 344
-#define SGE 345
-#define ULT 346
-#define UGT 347
-#define ULE 348
-#define UGE 349
-#define OEQ 350
-#define ONE 351
-#define OLT 352
-#define OGT 353
-#define OLE 354
-#define OGE 355
-#define ORD 356
-#define UNO 357
-#define UEQ 358
-#define UNE 359
-#define MALLOC 360
-#define ALLOCA 361
-#define FREE 362
-#define LOAD 363
-#define STORE 364
-#define GETELEMENTPTR 365
-#define TRUNC 366
-#define ZEXT 367
-#define SEXT 368
-#define FPTRUNC 369
-#define FPEXT 370
-#define BITCAST 371
-#define UITOFP 372
-#define SITOFP 373
-#define FPTOUI 374
-#define FPTOSI 375
-#define INTTOPTR 376
-#define PTRTOINT 377
-#define PHI_TOK 378
-#define SELECT 379
-#define VAARG 380
-#define EXTRACTELEMENT 381
-#define INSERTELEMENT 382
-#define SHUFFLEVECTOR 383
-#define NORETURN 384
-#define INREG 385
-#define SRET 386
-#define NOUNWIND 387
-#define DEFAULT 388
-#define HIDDEN 389
+#define ZEROINITIALIZER 276
+#define TRUETOK 277
+#define FALSETOK 278
+#define BEGINTOK 279
+#define ENDTOK 280
+#define DECLARE 281
+#define DEFINE 282
+#define GLOBAL 283
+#define CONSTANT 284
+#define SECTION 285
+#define VOLATILE 286
+#define TO 287
+#define DOTDOTDOT 288
+#define NULL_TOK 289
+#define UNDEF 290
+#define INTERNAL 291
+#define LINKONCE 292
+#define WEAK 293
+#define APPENDING 294
+#define DLLIMPORT 295
+#define DLLEXPORT 296
+#define EXTERN_WEAK 297
+#define OPAQUE 298
+#define EXTERNAL 299
+#define TARGET 300
+#define TRIPLE 301
+#define ALIGN 302
+#define DEPLIBS 303
+#define CALL 304
+#define TAIL 305
+#define ASM_TOK 306
+#define MODULE 307
+#define SIDEEFFECT 308
+#define CC_TOK 309
+#define CCC_TOK 310
+#define FASTCC_TOK 311
+#define COLDCC_TOK 312
+#define X86_STDCALLCC_TOK 313
+#define X86_FASTCALLCC_TOK 314
+#define DATALAYOUT 315
+#define RET 316
+#define BR 317
+#define SWITCH 318
+#define INVOKE 319
+#define UNWIND 320
+#define UNREACHABLE 321
+#define ADD 322
+#define SUB 323
+#define MUL 324
+#define UDIV 325
+#define SDIV 326
+#define FDIV 327
+#define UREM 328
+#define SREM 329
+#define FREM 330
+#define AND 331
+#define OR 332
+#define XOR 333
+#define SHL 334
+#define LSHR 335
+#define ASHR 336
+#define ICMP 337
+#define FCMP 338
+#define EQ 339
+#define NE 340
+#define SLT 341
+#define SGT 342
+#define SLE 343
+#define SGE 344
+#define ULT 345
+#define UGT 346
+#define ULE 347
+#define UGE 348
+#define OEQ 349
+#define ONE 350
+#define OLT 351
+#define OGT 352
+#define OLE 353
+#define OGE 354
+#define ORD 355
+#define UNO 356
+#define UEQ 357
+#define UNE 358
+#define MALLOC 359
+#define ALLOCA 360
+#define FREE 361
+#define LOAD 362
+#define STORE 363
+#define GETELEMENTPTR 364
+#define TRUNC 365
+#define ZEXT 366
+#define SEXT 367
+#define FPTRUNC 368
+#define FPEXT 369
+#define BITCAST 370
+#define UITOFP 371
+#define SITOFP 372
+#define FPTOUI 373
+#define FPTOSI 374
+#define INTTOPTR 375
+#define PTRTOINT 376
+#define PHI_TOK 377
+#define SELECT 378
+#define VAARG 379
+#define EXTRACTELEMENT 380
+#define INSERTELEMENT 381
+#define SHUFFLEVECTOR 382
+#define NORETURN 383
+#define INREG 384
+#define SRET 385
+#define NOUNWIND 386
+#define DEFAULT 387
+#define HIDDEN 388
 
 
 
 
 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 939 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
+#line 939 "/proj/llvm/llvm-4/lib/AsmParser/llvmAsmParser.y"
 typedef union YYSTYPE {
   llvm::Module                           *ModuleVal;
   llvm::Function                         *FunctionVal;
@@ -349,7 +347,7 @@
   llvm::FCmpInst::Predicate         FPredicate;
 } YYSTYPE;
 /* Line 1447 of yacc.c.  */
-#line 353 "llvmAsmParser.tab.h"
+#line 351 "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.81 llvm/lib/AsmParser/llvmAsmParser.y.cvs:1.82
--- llvm/lib/AsmParser/llvmAsmParser.y.cvs:1.81	Thu Mar 29 20:37:39 2007
+++ llvm/lib/AsmParser/llvmAsmParser.y.cvs	Sun Apr  8 20:56:05 2007
@@ -1039,7 +1039,7 @@
 %type <UIntVal> OptAlign OptCAlign
 %type <StrVal> OptSection SectionString
 
-%token IMPLEMENTATION ZEROINITIALIZER TRUETOK FALSETOK BEGINTOK ENDTOK
+%token ZEROINITIALIZER TRUETOK FALSETOK BEGINTOK ENDTOK
 %token DECLARE DEFINE GLOBAL CONSTANT SECTION VOLATILE
 %token TO DOTDOTDOT NULL_TOK UNDEF INTERNAL LINKONCE WEAK APPENDING
 %token DLLIMPORT DLLEXPORT EXTERN_WEAK
@@ -1942,18 +1942,6 @@
   | MODULE ASM_TOK AsmBlock {
     CHECK_FOR_ERROR
   }  
-  | IMPLEMENTATION {
-    // Emit an error if there are any unresolved types left.
-    if (!CurModule.LateResolveTypes.empty()) {
-      const ValID &DID = CurModule.LateResolveTypes.begin()->first;
-      if (DID.Type == ValID::LocalName) {
-        GEN_ERROR("Reference to an undefined type: '"+DID.getName() + "'");
-      } else {
-        GEN_ERROR("Reference to an undefined type: #" + itostr(DID.Num));
-      }
-    }
-    CHECK_FOR_ERROR
-  }
   | OptLocalAssign TYPE Types {
     if (!UpRefs.empty())
       GEN_ERROR("Invalid upreference in type: " + (*$3)->getDescription());






More information about the llvm-commits mailing list