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

Chris Lattner lattner at cs.uiuc.edu
Fri Apr 7 20:55:29 PDT 2006



Changes in directory llvm/lib/AsmParser:

llvmAsmParser.cpp.cvs updated: 1.3 -> 1.4
llvmAsmParser.y.cvs updated: 1.3 -> 1.4
---
Log message:

regenerate


---
Diffs of the changes:  (+778 -731)

 llvmAsmParser.cpp.cvs | 1474 ++++++++++++++++++++++++++------------------------
 llvmAsmParser.y.cvs   |   13 
 2 files changed, 778 insertions(+), 709 deletions(-)


Index: llvm/lib/AsmParser/llvmAsmParser.cpp.cvs
diff -u llvm/lib/AsmParser/llvmAsmParser.cpp.cvs:1.3 llvm/lib/AsmParser/llvmAsmParser.cpp.cvs:1.4
--- llvm/lib/AsmParser/llvmAsmParser.cpp.cvs:1.3	Fri Apr  7 20:18:56 2006
+++ llvm/lib/AsmParser/llvmAsmParser.cpp.cvs	Fri Apr  7 22:55:17 2006
@@ -1,5 +1,5 @@
 
-/*  A Bison parser, made from /Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y
+/*  A Bison parser, made from /Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y
     by GNU Bison version 1.28  */
 
 #define YYBISON 1  /* Identify Bison output.  */
@@ -111,7 +111,7 @@
 #define	VAARG_old	354
 #define	VANEXT_old	355
 
-#line 14 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 14 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 
 #include "ParserInternals.h"
 #include "llvm/CallingConv.h"
@@ -987,7 +987,7 @@
 }
 
 
-#line 890 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 890 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 typedef union {
   llvm::Module                           *ModuleVal;
   llvm::Function                         *FunctionVal;
@@ -1037,7 +1037,7 @@
 
 
 
-#define	YYFINAL		479
+#define	YYFINAL		495
 #define	YYFLAG		-32768
 #define	YYNTBASE	116
 
@@ -1095,19 +1095,19 @@
    174,   178,   181,   184,   186,   190,   192,   196,   198,   199,
    204,   208,   212,   217,   222,   226,   229,   232,   235,   238,
    241,   244,   247,   250,   253,   256,   263,   269,   278,   285,
-   292,   299,   306,   313,   317,   319,   321,   323,   325,   328,
-   331,   336,   339,   341,   346,   349,   354,   355,   363,   364,
-   372,   376,   381,   382,   384,   386,   388,   392,   396,   400,
-   404,   408,   410,   411,   413,   415,   417,   418,   421,   425,
-   427,   429,   433,   435,   436,   445,   447,   449,   453,   455,
-   457,   460,   461,   465,   466,   468,   470,   472,   474,   476,
-   478,   480,   482,   484,   488,   490,   496,   498,   500,   502,
-   504,   507,   510,   513,   517,   520,   521,   523,   526,   529,
-   533,   543,   553,   562,   576,   578,   580,   587,   593,   596,
-   603,   611,   613,   617,   619,   620,   623,   625,   631,   637,
-   643,   646,   651,   656,   663,   668,   673,   678,   683,   690,
-   697,   700,   708,   710,   713,   714,   716,   717,   721,   728,
-   732,   739,   742,   747,   754
+   292,   299,   306,   313,   322,   331,   335,   337,   339,   341,
+   343,   346,   349,   354,   357,   359,   364,   367,   372,   373,
+   381,   382,   390,   394,   399,   400,   402,   404,   406,   410,
+   414,   418,   422,   426,   428,   429,   431,   433,   435,   436,
+   439,   443,   445,   447,   451,   453,   454,   463,   465,   467,
+   471,   473,   475,   478,   479,   483,   484,   486,   488,   490,
+   492,   494,   496,   498,   500,   502,   506,   508,   514,   516,
+   518,   520,   522,   525,   528,   531,   535,   538,   539,   541,
+   544,   547,   551,   561,   571,   580,   594,   596,   598,   605,
+   611,   614,   621,   629,   631,   635,   637,   638,   641,   643,
+   649,   655,   661,   664,   669,   674,   681,   686,   691,   696,
+   701,   708,   715,   718,   726,   728,   731,   732,   734,   735,
+   739,   746,   750,   757,   760,   765,   772
 };
 
 static const short yyrhs[] = {     5,
@@ -1142,51 +1142,53 @@
    103,   142,   106,     0,   119,   105,   142,   103,   142,   106,
      0,   120,   105,   142,   103,   142,   106,     0,   121,   105,
    142,   103,   142,   106,     0,    97,   105,   142,   103,   142,
-   106,     0,   144,   103,   142,     0,   142,     0,    32,     0,
-    33,     0,   147,     0,   147,   165,     0,   147,   166,     0,
-   147,    59,    58,   151,     0,   147,    25,     0,   148,     0,
-   148,   126,    20,   135,     0,   148,   166,     0,   148,    59,
-    58,   151,     0,     0,   148,   126,   127,   145,   142,   149,
-   133,     0,     0,   148,   126,    47,   145,   137,   150,   133,
-     0,   148,    48,   153,     0,   148,    55,   102,   154,     0,
-     0,    24,     0,    53,     0,    52,     0,    50,   102,   152,
-     0,    51,   102,     4,     0,    49,   102,    24,     0,   107,
-   155,   109,     0,   155,   103,    24,     0,    24,     0,     0,
-    22,     0,    24,     0,   156,     0,     0,   137,   157,     0,
-   159,   103,   158,     0,   158,     0,   159,     0,   159,   103,
-    37,     0,    37,     0,     0,   128,   135,   156,   105,   160,
-   106,   132,   129,     0,    29,     0,   112,     0,   127,   161,
-   162,     0,    30,     0,   113,     0,   173,   164,     0,     0,
-    31,   167,   161,     0,     0,    60,     0,     3,     0,     4,
-     0,     7,     0,    27,     0,    28,     0,    38,     0,    39,
-     0,    26,     0,   110,   144,   111,     0,   143,     0,    58,
-   168,    24,   103,    24,     0,   116,     0,   156,     0,   170,
-     0,   169,     0,   137,   171,     0,   173,   174,     0,   163,
-   174,     0,   175,   126,   176,     0,   175,   178,     0,     0,
-    23,     0,    65,   172,     0,    65,     8,     0,    66,    21,
-   171,     0,    66,     9,   171,   103,    21,   171,   103,    21,
-   171,     0,    67,   124,   171,   103,    21,   171,   107,   177,
-   109,     0,    67,   124,   171,   103,    21,   171,   107,   109,
-     0,    68,   128,   135,   171,   105,   181,   106,    36,    21,
-   171,    69,    21,   171,     0,    69,     0,    70,     0,   177,
-   124,   169,   103,    21,   171,     0,   124,   169,   103,    21,
-   171,     0,   126,   183,     0,   137,   107,   171,   103,   171,
-   109,     0,   179,   103,   107,   171,   103,   171,   109,     0,
-   172,     0,   180,   103,   172,     0,   180,     0,     0,    57,
-    56,     0,    56,     0,   118,   137,   171,   103,   171,     0,
-   119,   137,   171,   103,   171,     0,   120,   137,   171,   103,
-   171,     0,    46,   172,     0,   121,   172,   103,   172,     0,
-    92,   172,    36,   137,     0,    93,   172,   103,   172,   103,
-   172,     0,    96,   172,   103,   137,     0,   100,   172,   103,
-   137,     0,   101,   172,   103,   137,     0,    97,   172,   103,
-   172,     0,    98,   172,   103,   172,   103,   172,     0,    99,
-   172,   103,   172,   103,   172,     0,    91,   179,     0,   182,
-   128,   135,   171,   105,   181,   106,     0,   186,     0,   103,
-   180,     0,     0,    35,     0,     0,    85,   137,   130,     0,
-    85,   137,   103,    15,   171,   130,     0,    86,   137,   130,
-     0,    86,   137,   103,    15,   171,   130,     0,    87,   172,
-     0,   185,    88,   137,   171,     0,   185,    89,   172,   103,
-   137,   171,     0,    90,   137,   171,   184,     0
+   106,     0,    98,   105,   142,   103,   142,   103,   142,   106,
+     0,    99,   105,   142,   103,   142,   103,   142,   106,     0,
+   144,   103,   142,     0,   142,     0,    32,     0,    33,     0,
+   147,     0,   147,   165,     0,   147,   166,     0,   147,    59,
+    58,   151,     0,   147,    25,     0,   148,     0,   148,   126,
+    20,   135,     0,   148,   166,     0,   148,    59,    58,   151,
+     0,     0,   148,   126,   127,   145,   142,   149,   133,     0,
+     0,   148,   126,    47,   145,   137,   150,   133,     0,   148,
+    48,   153,     0,   148,    55,   102,   154,     0,     0,    24,
+     0,    53,     0,    52,     0,    50,   102,   152,     0,    51,
+   102,     4,     0,    49,   102,    24,     0,   107,   155,   109,
+     0,   155,   103,    24,     0,    24,     0,     0,    22,     0,
+    24,     0,   156,     0,     0,   137,   157,     0,   159,   103,
+   158,     0,   158,     0,   159,     0,   159,   103,    37,     0,
+    37,     0,     0,   128,   135,   156,   105,   160,   106,   132,
+   129,     0,    29,     0,   112,     0,   127,   161,   162,     0,
+    30,     0,   113,     0,   173,   164,     0,     0,    31,   167,
+   161,     0,     0,    60,     0,     3,     0,     4,     0,     7,
+     0,    27,     0,    28,     0,    38,     0,    39,     0,    26,
+     0,   110,   144,   111,     0,   143,     0,    58,   168,    24,
+   103,    24,     0,   116,     0,   156,     0,   170,     0,   169,
+     0,   137,   171,     0,   173,   174,     0,   163,   174,     0,
+   175,   126,   176,     0,   175,   178,     0,     0,    23,     0,
+    65,   172,     0,    65,     8,     0,    66,    21,   171,     0,
+    66,     9,   171,   103,    21,   171,   103,    21,   171,     0,
+    67,   124,   171,   103,    21,   171,   107,   177,   109,     0,
+    67,   124,   171,   103,    21,   171,   107,   109,     0,    68,
+   128,   135,   171,   105,   181,   106,    36,    21,   171,    69,
+    21,   171,     0,    69,     0,    70,     0,   177,   124,   169,
+   103,    21,   171,     0,   124,   169,   103,    21,   171,     0,
+   126,   183,     0,   137,   107,   171,   103,   171,   109,     0,
+   179,   103,   107,   171,   103,   171,   109,     0,   172,     0,
+   180,   103,   172,     0,   180,     0,     0,    57,    56,     0,
+    56,     0,   118,   137,   171,   103,   171,     0,   119,   137,
+   171,   103,   171,     0,   120,   137,   171,   103,   171,     0,
+    46,   172,     0,   121,   172,   103,   172,     0,    92,   172,
+    36,   137,     0,    93,   172,   103,   172,   103,   172,     0,
+    96,   172,   103,   137,     0,   100,   172,   103,   137,     0,
+   101,   172,   103,   137,     0,    97,   172,   103,   172,     0,
+    98,   172,   103,   172,   103,   172,     0,    99,   172,   103,
+   172,   103,   172,     0,    91,   179,     0,   182,   128,   135,
+   171,   105,   181,   106,     0,   186,     0,   103,   180,     0,
+     0,    35,     0,     0,    85,   137,   130,     0,    85,   137,
+   103,    15,   171,   130,     0,    86,   137,   130,     0,    86,
+   137,   103,    15,   171,   130,     0,    87,   172,     0,   185,
+    88,   137,   171,     0,   185,    89,   172,   103,   137,   171,
+     0,    90,   137,   171,   184,     0
 };
 
 #endif
@@ -1204,19 +1206,19 @@
   1173,  1182,  1185,  1193,  1197,  1202,  1203,  1206,  1209,  1219,
   1244,  1257,  1286,  1311,  1331,  1343,  1352,  1356,  1415,  1421,
   1429,  1434,  1439,  1442,  1445,  1452,  1462,  1493,  1500,  1521,
-  1531,  1536,  1543,  1553,  1556,  1563,  1563,  1573,  1580,  1584,
-  1587,  1590,  1593,  1606,  1626,  1628,  1630,  1633,  1636,  1640,
-  1643,  1645,  1647,  1651,  1663,  1664,  1666,  1669,  1677,  1682,
-  1684,  1688,  1692,  1700,  1700,  1701,  1701,  1703,  1709,  1714,
-  1720,  1723,  1728,  1732,  1736,  1822,  1822,  1824,  1832,  1832,
-  1834,  1838,  1838,  1847,  1850,  1854,  1857,  1860,  1863,  1866,
-  1869,  1872,  1875,  1878,  1902,  1905,  1918,  1921,  1926,  1926,
-  1932,  1936,  1939,  1947,  1956,  1960,  1970,  1981,  1984,  1987,
-  1990,  1993,  2007,  2011,  2064,  2067,  2073,  2081,  2091,  2098,
-  2103,  2110,  2114,  2120,  2120,  2122,  2125,  2131,  2143,  2154,
-  2164,  2176,  2183,  2190,  2197,  2202,  2221,  2243,  2251,  2263,
-  2268,  2282,  2339,  2345,  2347,  2351,  2354,  2360,  2364,  2368,
-  2372,  2376,  2383,  2393,  2406
+  1531,  1536,  1543,  1551,  1554,  1562,  1565,  1572,  1572,  1582,
+  1589,  1593,  1596,  1599,  1602,  1615,  1635,  1637,  1639,  1642,
+  1645,  1649,  1652,  1654,  1656,  1660,  1672,  1673,  1675,  1678,
+  1686,  1691,  1693,  1697,  1701,  1709,  1709,  1710,  1710,  1712,
+  1718,  1723,  1729,  1732,  1737,  1741,  1745,  1831,  1831,  1833,
+  1841,  1841,  1843,  1847,  1847,  1856,  1859,  1863,  1866,  1869,
+  1872,  1875,  1878,  1881,  1884,  1887,  1911,  1914,  1927,  1930,
+  1935,  1935,  1941,  1945,  1948,  1956,  1965,  1969,  1979,  1990,
+  1993,  1996,  1999,  2002,  2016,  2020,  2073,  2076,  2082,  2090,
+  2100,  2107,  2112,  2119,  2123,  2129,  2129,  2131,  2134,  2140,
+  2152,  2163,  2173,  2185,  2192,  2199,  2206,  2211,  2230,  2252,
+  2260,  2272,  2277,  2291,  2348,  2354,  2356,  2360,  2363,  2369,
+  2373,  2377,  2381,  2385,  2392,  2402,  2415
 };
 #endif
 
@@ -1263,19 +1265,19 @@
    139,   139,   139,   140,   140,   141,   141,   141,   141,   142,
    142,   142,   142,   142,   142,   142,   142,   142,   142,   142,
    142,   142,   142,   142,   142,   143,   143,   143,   143,   143,
-   143,   143,   143,   144,   144,   145,   145,   146,   147,   147,
-   147,   147,   147,   148,   148,   148,   149,   148,   150,   148,
-   148,   148,   148,   151,   152,   152,   153,   153,   153,   154,
-   155,   155,   155,   156,   156,   157,   157,   158,   159,   159,
-   160,   160,   160,   160,   161,   162,   162,   163,   164,   164,
-   165,   167,   166,   168,   168,   169,   169,   169,   169,   169,
-   169,   169,   169,   169,   169,   169,   170,   170,   171,   171,
-   172,   173,   173,   174,   175,   175,   175,   176,   176,   176,
-   176,   176,   176,   176,   176,   176,   177,   177,   178,   179,
-   179,   180,   180,   181,   181,   182,   182,   183,   183,   183,
+   143,   143,   143,   143,   143,   144,   144,   145,   145,   146,
+   147,   147,   147,   147,   147,   148,   148,   148,   149,   148,
+   150,   148,   148,   148,   148,   151,   152,   152,   153,   153,
+   153,   154,   155,   155,   155,   156,   156,   157,   157,   158,
+   159,   159,   160,   160,   160,   160,   161,   162,   162,   163,
+   164,   164,   165,   167,   166,   168,   168,   169,   169,   169,
+   169,   169,   169,   169,   169,   169,   169,   169,   170,   170,
+   171,   171,   172,   173,   173,   174,   175,   175,   175,   176,
+   176,   176,   176,   176,   176,   176,   176,   176,   177,   177,
+   178,   179,   179,   180,   180,   181,   181,   182,   182,   183,
    183,   183,   183,   183,   183,   183,   183,   183,   183,   183,
-   183,   183,   183,   184,   184,   185,   185,   186,   186,   186,
-   186,   186,   186,   186,   186
+   183,   183,   183,   183,   183,   184,   184,   185,   185,   186,
+   186,   186,   186,   186,   186,   186,   186
 };
 
 static const short yyr2[] = {     0,
@@ -1290,397 +1292,419 @@
      3,     2,     2,     1,     3,     1,     3,     1,     0,     4,
      3,     3,     4,     4,     3,     2,     2,     2,     2,     2,
      2,     2,     2,     2,     2,     6,     5,     8,     6,     6,
-     6,     6,     6,     3,     1,     1,     1,     1,     2,     2,
-     4,     2,     1,     4,     2,     4,     0,     7,     0,     7,
-     3,     4,     0,     1,     1,     1,     3,     3,     3,     3,
-     3,     1,     0,     1,     1,     1,     0,     2,     3,     1,
-     1,     3,     1,     0,     8,     1,     1,     3,     1,     1,
-     2,     0,     3,     0,     1,     1,     1,     1,     1,     1,
-     1,     1,     1,     3,     1,     5,     1,     1,     1,     1,
-     2,     2,     2,     3,     2,     0,     1,     2,     2,     3,
-     9,     9,     8,    13,     1,     1,     6,     5,     2,     6,
-     7,     1,     3,     1,     0,     2,     1,     5,     5,     5,
-     2,     4,     4,     6,     4,     4,     4,     4,     6,     6,
-     2,     7,     1,     2,     0,     1,     0,     3,     6,     3,
-     6,     2,     4,     6,     4
+     6,     6,     6,     8,     8,     3,     1,     1,     1,     1,
+     2,     2,     4,     2,     1,     4,     2,     4,     0,     7,
+     0,     7,     3,     4,     0,     1,     1,     1,     3,     3,
+     3,     3,     3,     1,     0,     1,     1,     1,     0,     2,
+     3,     1,     1,     3,     1,     0,     8,     1,     1,     3,
+     1,     1,     2,     0,     3,     0,     1,     1,     1,     1,
+     1,     1,     1,     1,     1,     3,     1,     5,     1,     1,
+     1,     1,     2,     2,     2,     3,     2,     0,     1,     2,
+     2,     3,     9,     9,     8,    13,     1,     1,     6,     5,
+     2,     6,     7,     1,     3,     1,     0,     2,     1,     5,
+     5,     5,     2,     4,     4,     6,     4,     4,     4,     4,
+     6,     6,     2,     7,     1,     2,     0,     1,     0,     3,
+     6,     3,     6,     2,     4,     6,     4
 };
 
-static const short yydefact[] = {   133,
-    39,   123,   122,   162,    35,    36,    37,    38,     0,    40,
-   186,   119,   120,   186,   144,   145,     0,     0,     0,    39,
-     0,   125,    40,     0,     0,    41,    42,    43,     0,     0,
-   187,   183,    34,   159,   160,   161,   182,     0,     0,     0,
-   131,     0,     0,     0,     0,     0,    33,   163,   134,   121,
+static const short yydefact[] = {   135,
+    39,   125,   124,   164,    35,    36,    37,    38,     0,    40,
+   188,   121,   122,   188,   146,   147,     0,     0,     0,    39,
+     0,   127,    40,     0,     0,    41,    42,    43,     0,     0,
+   189,   185,    34,   161,   162,   163,   184,     0,     0,     0,
+   133,     0,     0,     0,     0,     0,    33,   165,   136,   123,
     44,     1,     2,    57,    61,    62,    63,    64,    65,    66,
     67,    68,    69,    70,    71,    72,    73,    74,     0,     0,
-     0,     0,   177,     0,     0,    56,    75,    60,   178,    76,
-   156,   157,   158,   227,   185,     0,     0,     0,   143,   132,
-   126,   124,   116,   117,     0,     0,    77,     0,     0,    59,
-    82,    84,     0,     0,    89,    83,   226,     0,   207,     0,
-     0,     0,     0,    40,   195,   196,     5,     6,     7,     8,
+     0,     0,   179,     0,     0,    56,    75,    60,   180,    76,
+   158,   159,   160,   229,   187,     0,     0,     0,   145,   134,
+   128,   126,   118,   119,     0,     0,    77,     0,     0,    59,
+    82,    84,     0,     0,    89,    83,   228,     0,   209,     0,
+     0,     0,     0,    40,   197,   198,     5,     6,     7,     8,
      9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
      0,     0,     0,     0,     0,     0,     0,    19,    20,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,     0,   184,
-    40,   199,     0,   223,   139,   136,   135,   137,   138,   142,
-     0,   129,    61,    62,    63,    64,    65,    66,    67,    68,
-    69,    70,    71,     0,     0,     0,     0,   127,     0,     0,
-     0,    81,   154,    88,    86,     0,     0,   211,   206,   189,
-   188,     0,     0,    24,    28,    23,    27,    22,    26,    21,
-    25,    29,    30,     0,     0,    47,    47,   232,     0,     0,
-   221,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,   140,    52,   103,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,   186,
+    40,   201,     0,   225,   141,   138,   137,   139,   140,   144,
+     0,   131,    61,    62,    63,    64,    65,    66,    67,    68,
+    69,    70,    71,     0,     0,     0,     0,   129,     0,     0,
+     0,    81,   156,    88,    86,     0,     0,   213,   208,   191,
+   190,     0,     0,    24,    28,    23,    27,    22,    26,    21,
+    25,    29,    30,     0,     0,    47,    47,   234,     0,     0,
+   223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,   142,    52,   103,
    104,     3,     4,   101,   102,   105,   100,    96,    97,     0,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,    99,    98,    52,    58,    58,    85,   153,   147,   150,
-   151,     0,     0,    78,   166,   167,   168,   173,   169,   170,
-   171,   172,   164,     0,   175,   180,   179,   181,     0,   190,
-     0,     0,     0,   228,     0,   230,   225,     0,     0,     0,
+     0,     0,     0,    99,    98,    52,    58,    58,    85,   155,
+   149,   152,   153,     0,     0,    78,   168,   169,   170,   175,
+   171,   172,   173,   174,   166,     0,   177,   182,   181,   183,
+     0,   192,     0,     0,     0,   230,     0,   232,   227,     0,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,   141,     0,   130,     0,     0,     0,
-     0,    91,   115,     0,     0,    95,     0,    92,     0,     0,
-     0,     0,   128,    79,    80,   146,   148,     0,    50,    87,
-   165,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-   235,     0,     0,   213,     0,   215,   218,     0,     0,   216,
-   217,     0,     0,     0,   212,     0,   233,     0,     0,     0,
-    54,    52,   225,     0,     0,     0,     0,    90,    93,    94,
-     0,     0,     0,     0,   152,   149,    51,    45,     0,   174,
-     0,     0,   205,    47,    48,    47,   202,   224,     0,     0,
-     0,     0,     0,   208,   209,   210,   205,     0,    49,    55,
-    53,     0,     0,     0,     0,   114,     0,     0,     0,     0,
-     0,   155,     0,     0,     0,   204,     0,     0,   229,   231,
-     0,     0,     0,   214,   219,   220,     0,   234,   107,     0,
-     0,     0,     0,     0,     0,     0,    46,   176,     0,     0,
-     0,   203,   200,     0,   222,   106,     0,   113,   109,   110,
-   111,   112,     0,   193,     0,     0,     0,   201,     0,   191,
-     0,   192,     0,     0,   108,     0,     0,     0,     0,     0,
-     0,   198,     0,     0,   197,   194,     0,     0,     0
+     0,     0,     0,     0,     0,     0,   143,     0,   132,     0,
+     0,     0,     0,     0,     0,    91,   117,     0,     0,    95,
+     0,    92,     0,     0,     0,     0,   130,    79,    80,   148,
+   150,     0,    50,    87,   167,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,   237,     0,     0,   215,     0,   217,
+   220,     0,     0,   218,   219,     0,     0,     0,   214,     0,
+   235,     0,     0,     0,    54,    52,   227,     0,     0,     0,
+     0,     0,     0,    90,    93,    94,     0,     0,     0,     0,
+   154,   151,    51,    45,     0,   176,     0,     0,   207,    47,
+    48,    47,   204,   226,     0,     0,     0,     0,     0,   210,
+   211,   212,   207,     0,    49,    55,    53,     0,     0,     0,
+     0,     0,     0,   116,     0,     0,     0,     0,     0,   157,
+     0,     0,     0,   206,     0,     0,   231,   233,     0,     0,
+     0,   216,   221,   222,     0,   236,   107,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,    46,   178,     0,     0,
+     0,   205,   202,     0,   224,   106,     0,   113,     0,     0,
+   109,   110,   111,   112,     0,   195,     0,     0,     0,   203,
+     0,     0,     0,   193,     0,   194,     0,     0,   108,   114,
+   115,     0,     0,     0,     0,     0,     0,   200,     0,     0,
+   199,   196,     0,     0,     0
 };
 
 static const short yydefgoto[] = {    73,
-   234,   248,   249,   250,   251,   174,   175,   204,   176,    20,
-    10,    29,   412,   284,   361,   378,   307,   362,    74,    75,
-   187,    77,    78,   103,   186,   313,   275,   314,    95,   477,
-     1,     2,   254,   229,    50,   158,    41,    90,   161,    79,
-   327,   260,   261,   262,    30,    83,    11,    36,    12,    13,
-    23,   332,   276,    80,   278,   387,    14,    32,    33,   150,
-   456,    85,   211,   416,   417,   151,   152,   341,   153,   154
+   234,   250,   251,   252,   253,   174,   175,   204,   176,    20,
+    10,    29,   420,   286,   365,   384,   309,   366,    74,    75,
+   177,    77,    78,   103,   186,   317,   277,   318,    95,   493,
+     1,     2,   256,   229,    50,   158,    41,    90,   161,    79,
+   331,   262,   263,   264,    30,    83,    11,    36,    12,    13,
+    23,   336,   278,    80,   280,   393,    14,    32,    33,   150,
+   468,    85,   211,   424,   425,   151,   152,   345,   153,   154
 };
 
 static const short yypact[] = {-32768,
-   107,   362,-32768,-32768,-32768,-32768,-32768,-32768,   -37,    78,
-    23,-32768,-32768,   -12,-32768,-32768,    75,     2,    32,    -6,
-    27,-32768,    78,    85,   140,-32768,-32768,-32768,   957,   -20,
--32768,-32768,   121,-32768,-32768,-32768,-32768,    45,    53,    70,
--32768,    68,    85,   957,    31,    31,-32768,-32768,-32768,-32768,
--32768,-32768,-32768,    76,-32768,-32768,-32768,-32768,-32768,-32768,
--32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   178,   179,
-   182,    67,-32768,   121,    88,-32768,-32768,    16,-32768,-32768,
--32768,-32768,-32768,  1120,-32768,   170,   100,   184,   173,-32768,
--32768,-32768,-32768,-32768,   995,  1033,-32768,    91,    92,-32768,
--32768,    16,   -42,    96,   767,-32768,-32768,   995,-32768,   147,
-  1071,    22,   223,    78,-32768,-32768,-32768,-32768,-32768,-32768,
+   181,   364,-32768,-32768,-32768,-32768,-32768,-32768,     6,    -1,
+    60,-32768,-32768,   -14,-32768,-32768,    47,   -22,    72,    45,
+    33,-32768,    -1,   125,   157,-32768,-32768,-32768,  1050,   -21,
+-32768,-32768,    22,-32768,-32768,-32768,-32768,    61,    67,    68,
+-32768,    55,   125,  1050,    -6,    -6,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,    66,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   168,   170,
+   171,   566,-32768,    22,    73,-32768,-32768,   -24,-32768,-32768,
+-32768,-32768,-32768,  1213,-32768,   149,    57,   173,   155,-32768,
+-32768,-32768,-32768,-32768,  1088,  1126,-32768,    74,    75,-32768,
+-32768,   -24,   -82,    79,   860,-32768,-32768,  1088,-32768,   124,
+  1164,    14,   128,    -1,-32768,-32768,-32768,-32768,-32768,-32768,
 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-   995,   995,   995,   995,   995,   995,   995,-32768,-32768,   995,
-   995,   995,   995,   995,   995,   995,   995,   995,   995,-32768,
-    78,-32768,    47,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-    24,-32768,    41,   154,   203,   156,   204,   160,   205,   164,
-   206,   207,   215,   166,   209,   216,   425,-32768,   995,   995,
-   995,-32768,   805,-32768,   108,   118,   604,-32768,-32768,    76,
--32768,   604,   604,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
--32768,-32768,-32768,   604,   957,   122,   123,-32768,   604,   120,
-   125,   208,   138,   139,   143,   144,   145,   146,   149,   604,
-   604,   604,   150,   957,   995,   995,   219,-32768,   151,-32768,
--32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   153,
-   155,   157,   159,   843,  1033,   548,   226,   161,   165,   168,
-   169,-32768,-32768,   151,   -75,    -3,    16,-32768,   121,-32768,
-   152,   163,   881,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
--32768,-32768,   196,  1033,-32768,-32768,-32768,-32768,   162,-32768,
-   172,   604,    -5,-32768,     5,-32768,   175,   604,   176,   995,
-   995,   995,   995,   995,   995,   995,   995,   181,   183,   185,
-   995,   604,   604,   186,-32768,   -22,-32768,  1033,  1033,  1033,
-  1033,-32768,-32768,    25,   -46,-32768,     7,-32768,  1033,  1033,
-  1033,  1033,-32768,-32768,-32768,-32768,-32768,   919,   242,-32768,
--32768,   261,   -41,   266,   273,   190,   604,   292,   604,   995,
--32768,   194,   604,-32768,   195,-32768,-32768,   197,   198,-32768,
--32768,   604,   604,   604,-32768,   200,-32768,   995,   283,   305,
--32768,   151,   175,   274,   210,   213,  1033,-32768,-32768,-32768,
-   224,   228,   230,   231,-32768,-32768,-32768,   257,   232,-32768,
-   604,   604,   995,   234,-32768,   234,-32768,   236,   604,   237,
-   995,   995,   995,-32768,-32768,-32768,   995,   604,-32768,-32768,
--32768,   220,   995,  1033,  1033,-32768,  1033,  1033,  1033,  1033,
-   338,-32768,   319,   244,   238,   236,   243,   294,-32768,-32768,
-   995,   246,   604,-32768,-32768,-32768,   250,-32768,-32768,   253,
-   258,   254,   256,   259,   260,   262,-32768,-32768,   342,    13,
-   328,-32768,-32768,   263,-32768,-32768,  1033,-32768,-32768,-32768,
--32768,-32768,   604,-32768,   664,    83,   348,-32768,   264,-32768,
-   268,-32768,   664,   604,-32768,   352,   280,   308,   604,   364,
-   366,-32768,   604,   604,-32768,-32768,   388,   389,-32768
+  1088,  1088,  1088,  1088,  1088,  1088,  1088,-32768,-32768,  1088,
+  1088,  1088,  1088,  1088,  1088,  1088,  1088,  1088,  1088,-32768,
+    -1,-32768,    40,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+    -9,-32768,   106,   143,   183,   148,   190,   152,   194,   154,
+   196,   178,   195,   156,   197,   198,   425,-32768,  1088,  1088,
+  1088,-32768,   898,-32768,   100,    98,   660,-32768,-32768,    66,
+-32768,   660,   660,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,   660,  1050,   104,   105,-32768,   660,   102,
+   108,   177,   111,   112,   123,   130,   132,   133,   134,   660,
+   660,   660,   135,  1050,  1088,  1088,   203,-32768,   136,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   137,
+   138,   139,   140,   141,   142,   936,  1126,   604,   217,   145,
+   146,   147,   150,-32768,-32768,   136,    18,   -86,   -24,-32768,
+    22,-32768,   151,   153,   974,-32768,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,   193,  1126,-32768,-32768,-32768,-32768,
+   158,-32768,   159,   660,    -5,-32768,     5,-32768,   172,   660,
+   165,  1088,  1088,  1088,  1088,  1088,  1088,  1088,  1088,   174,
+   175,   179,  1088,   660,   660,   180,-32768,   -20,-32768,  1126,
+  1126,  1126,  1126,  1126,  1126,-32768,-32768,    -8,   -81,-32768,
+   -36,-32768,  1126,  1126,  1126,  1126,-32768,-32768,-32768,-32768,
+-32768,  1012,   222,-32768,-32768,   233,   -18,   237,   239,   176,
+   660,   269,   660,  1088,-32768,   185,   660,-32768,   186,-32768,
+-32768,   187,   189,-32768,-32768,   660,   660,   660,-32768,   191,
+-32768,  1088,   252,   276,-32768,   136,   172,   248,   201,   202,
+   204,   205,  1126,-32768,-32768,-32768,   206,   207,   208,   209,
+-32768,-32768,-32768,   232,   210,-32768,   660,   660,  1088,   211,
+-32768,   211,-32768,   223,   660,   224,  1088,  1088,  1088,-32768,
+-32768,-32768,  1088,   660,-32768,-32768,-32768,   192,  1088,  1126,
+  1126,  1126,  1126,-32768,  1126,  1126,  1126,  1126,   293,-32768,
+   275,   225,   199,   223,   214,   280,-32768,-32768,  1088,   220,
+   660,-32768,-32768,-32768,   229,-32768,-32768,   230,   227,   231,
+   238,   240,   236,   241,   243,   244,-32768,-32768,   323,    41,
+   309,-32768,-32768,   242,-32768,-32768,  1126,-32768,  1126,  1126,
+-32768,-32768,-32768,-32768,   660,-32768,   757,    59,   325,-32768,
+   246,   247,   249,-32768,   251,-32768,   757,   660,-32768,-32768,
+-32768,   336,   256,   295,   660,   346,   350,-32768,   660,   660,
+-32768,-32768,   372,   376,-32768
 };
 
 static const short yypgoto[] = {-32768,
--32768,   306,   307,   312,   313,  -112,  -110,  -398,-32768,   365,
-   379,  -101,-32768,  -199,    71,-32768,  -249,-32768,   -40,-32768,
-   -29,-32768,   -65,   296,-32768,   -90,   225,  -229,   361,-32768,
--32768,-32768,-32768,-32768,   368,-32768,-32768,-32768,-32768,     0,
--32768,    80,-32768,-32768,   390,-32768,-32768,-32768,-32768,   410,
--32768,-32768,  -332,   -31,   132,   -89,-32768,   401,-32768,-32768,
--32768,-32768,-32768,    79,    19,-32768,-32768,    60,-32768,-32768
+-32768,   297,   298,   299,   301,  -112,  -110,  -426,-32768,   344,
+   359,  -103,-32768,  -202,    54,-32768,  -243,-32768,   -38,-32768,
+   -29,-32768,   -55,   287,-32768,   -94,   216,  -229,   348,-32768,
+-32768,-32768,-32768,-32768,   355,-32768,-32768,-32768,-32768,    10,
+-32768,    69,-32768,-32768,   379,-32768,-32768,-32768,-32768,   397,
+-32768,-32768,  -399,   -56,   169,  -104,-32768,   389,-32768,-32768,
+-32768,-32768,-32768,    70,     1,-32768,-32768,    43,-32768,-32768
 };
 
 
-#define	YYLAST		1221
+#define	YYLAST		1314
 
 
 static const short yytable[] = {    76,
-   202,    21,   203,    92,   323,   178,   102,   286,    81,   337,
-    31,   359,   205,    44,    76,   315,   317,    34,   188,   339,
-    24,   191,   194,   195,   196,   197,   198,   199,   200,   201,
-   192,   360,    21,   324,     5,     6,     7,     8,   106,   102,
-    45,   455,   193,   208,   333,    31,   212,   213,   338,   224,
-   214,   215,   216,   217,   218,   219,   367,   463,   338,   223,
-   181,   367,    93,    94,   369,   162,   177,   230,   231,   380,
-   182,    52,    53,   104,   100,    55,    56,    57,    58,    59,
-    60,    61,    62,    63,    64,    65,    66,    67,    15,    43,
-    16,    82,   194,   195,   196,   197,   198,   199,   200,   201,
-    35,   206,   207,    42,   209,   210,  -118,   325,    49,   367,
-   106,    68,   401,   255,   256,   257,   220,   221,   222,   370,
-   -58,   454,   461,    38,    39,    40,   227,   367,    47,   106,
-   467,     3,   228,   368,   225,   226,   304,     4,    25,    26,
-    27,    28,    15,    51,    16,   253,    86,     5,     6,     7,
-     8,   156,   157,   259,    87,   277,   -24,   -24,   -23,   -23,
-   277,   277,   -22,   -22,   282,     9,   -21,   -21,   232,   233,
-    69,    88,   277,    70,    89,    76,    71,   277,    72,   101,
-   -59,    97,    98,   302,   419,    99,   420,   159,   277,   277,
-   277,   462,   105,   155,    76,   303,   160,   257,   179,   180,
-   183,   345,   189,   347,   348,   349,   -28,   -27,   -26,   -25,
-   263,   355,   235,   -31,   177,   177,   177,   363,   364,   365,
-   366,   -32,   236,   264,   283,   285,   288,   289,   371,   372,
-   373,   374,   194,   195,   196,   197,   198,   199,   200,   201,
-   291,   292,   305,   290,   177,   293,   294,   295,   296,   318,
-   277,   297,   301,   306,   328,   331,   277,   308,   326,   309,
-   344,   310,   346,   311,   334,   319,   350,   351,   329,   320,
-   277,   277,   321,   322,   335,   359,   406,   340,   177,   177,
-   177,   177,   343,   352,   379,   353,   381,   354,   358,   177,
-   177,   177,   177,   382,   383,   385,   389,   391,   259,   392,
-   393,   424,   425,   426,   397,   277,   399,   277,   400,   403,
-   411,   277,   404,   431,   432,   405,   433,   434,   435,   436,
-   277,   277,   277,   279,   280,   429,   407,   202,   398,   203,
-   408,   442,   409,   410,   413,   281,   418,   177,   421,   423,
-   287,   437,   438,   202,   440,   203,   439,   338,   441,   277,
-   277,   298,   299,   300,   443,   445,   459,   277,   446,   448,
-   447,   449,   453,   457,   450,   451,   277,   452,   464,   465,
-   466,   458,   469,   430,   177,   177,   471,   177,   177,   177,
-   177,   -34,   470,    15,   473,    16,   474,   478,   479,   146,
-   147,   277,     4,   -34,   -34,   148,   149,    84,    46,   377,
-   185,   252,   -34,   -34,   -34,   -34,    96,   376,   -34,    17,
-    91,    22,    48,   336,    37,   427,    18,   177,   388,   342,
-    19,   277,   402,     0,     0,     0,     0,     0,     0,    52,
-    53,     0,   277,   356,   357,     0,     0,   277,     0,     0,
-     0,   277,   277,     0,     0,     0,    15,     0,    16,     0,
-   237,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,   238,   239,     0,     0,     0,     0,   384,     0,
-   386,     0,     0,     0,   390,     0,     0,     0,     0,     0,
-     0,     0,     0,   394,   395,   396,     0,     0,     0,     0,
+   202,   178,   203,   188,   288,    92,   191,    81,    31,   341,
+   205,    21,   327,   363,    76,    34,   102,   319,   321,   343,
+   181,   373,   192,   467,   329,    93,    94,   106,   208,   375,
+   182,   212,   213,   364,   193,   214,   215,   216,   217,   218,
+   219,   477,    21,    15,   223,    16,   337,   224,   342,   102,
+   194,   195,   196,   197,   198,   199,   200,   201,   342,    25,
+    26,    27,    28,    24,    44,   162,   373,   475,   194,   195,
+   196,   197,   198,   199,   200,   201,   376,   483,   187,    42,
+   -58,   187,    31,   104,   373,     5,     6,     7,     8,   106,
+    82,    45,   386,   227,   373,    38,    39,    40,    35,   228,
+   374,   206,   207,   187,   209,   210,   187,   187,   156,   157,
+   187,   187,   187,   187,   187,   187,   220,   221,   222,   187,
+   255,   306,   407,   257,   258,   259,   328,   225,   226,    43,
+   279,   106,   230,   231,    47,   279,   279,   194,   195,   196,
+   197,   198,   199,   200,   201,   -24,   -24,   279,    49,   466,
+   -23,   -23,   279,   261,   -22,   -22,   -21,   -21,   232,   233,
+    51,    89,    86,   279,   279,   279,   284,   476,    87,    88,
+   -59,    97,   155,    98,    99,    76,   159,   105,   160,   189,
+  -120,   179,   180,   183,   -31,   304,   -28,   427,   349,   428,
+   351,   352,   353,   -27,    76,   305,   187,   -26,   359,   -25,
+   235,   -32,   265,   266,   236,     3,   285,   287,   290,   259,
+   291,     4,   292,   293,   294,   367,   368,   369,   370,   371,
+   372,     5,     6,     7,     8,   295,   307,   279,   377,   378,
+   379,   380,   296,   279,   297,   298,   299,   303,   308,     9,
+   322,   310,   311,   312,   313,   314,   315,   279,   279,   323,
+   324,   325,   335,   332,   326,   363,   385,   387,   333,   388,
+   338,   339,   348,   187,   350,   187,   187,   187,   354,   355,
+   330,   347,   391,   187,   344,   405,   356,   357,   414,   406,
+   389,   358,   362,   409,   279,   419,   279,   395,   397,   398,
+   279,   399,   432,   433,   434,   403,   447,   437,   448,   279,
+   279,   279,   261,   410,   411,   450,   412,   413,   415,   416,
+   417,   418,   421,   426,   187,   439,   440,   441,   442,   451,
+   443,   444,   445,   446,   452,   429,   431,   449,   453,   457,
+   279,   279,   404,   342,   455,   456,   458,   202,   279,   203,
+   459,   461,   460,   465,   469,   478,   462,   279,   463,   464,
+   470,   479,   480,   482,   481,   202,   485,   203,   486,   187,
+   281,   282,   471,   487,   472,   473,   489,   187,   187,   187,
+   490,   494,   283,   187,   279,   495,    84,   289,    46,   438,
+   146,   147,   148,   -34,   149,    15,   383,    16,   300,   301,
+   302,   185,   254,    96,     4,   -34,   -34,    91,    22,   187,
+   382,    48,    37,   435,   -34,   -34,   -34,   -34,   279,   408,
+   -34,    17,     0,   394,     0,     0,     0,     0,    18,     0,
+     0,   279,    19,     0,     0,     0,     0,     0,   279,    52,
+    53,     0,   279,   279,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,    15,     0,    16,     0,
+   237,     0,   340,     0,     0,     0,     0,     0,   346,     0,
+     0,     0,   238,   239,     0,     0,     0,     0,     0,     0,
+     0,     0,   360,   361,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
      0,     0,     0,     0,     0,   117,   118,   119,   120,   121,
-   122,   123,   124,   125,   126,   127,   128,   129,   130,     0,
-     0,     0,   414,   415,   240,     0,   241,   242,   138,   139,
-   422,   243,     0,     0,     0,     0,     0,     0,     0,   428,
-     0,   244,     0,     0,   245,     0,   246,     0,     0,   247,
+   122,   123,   124,   125,   126,   127,   128,   129,   130,   390,
+     0,   392,     0,     0,   240,   396,   241,   242,   138,   139,
+     0,   243,   244,   245,   400,   401,   402,     0,     0,     0,
+     0,   246,     0,     0,   247,     0,   248,     0,     0,   249,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,   422,   423,     0,     0,     0,
+     0,     0,     0,   430,     0,     0,     0,     0,     0,     0,
+    52,    53,   436,   100,    55,    56,    57,    58,    59,    60,
+    61,    62,    63,    64,    65,    66,    67,    15,     0,    16,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,   454,
+     0,     0,     0,     0,     0,     0,     0,     0,    52,    53,
+    68,   100,   163,   164,   165,   166,   167,   168,   169,   170,
+   171,   172,   173,    66,    67,    15,     0,    16,     0,     0,
+     0,     0,     0,   474,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,   484,     0,    68,     0,
+     0,     0,     0,   488,     0,     0,     0,   491,   492,     0,
+     0,     0,   267,   268,    52,    53,   269,     0,     0,    69,
+     0,     0,    70,     0,     0,    71,     0,    72,   101,     0,
+     0,    15,     0,    16,     0,   270,   271,   272,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,   273,   274,     0,
+     0,     0,     0,     0,     0,     0,     0,    69,     0,     0,
+    70,     0,     0,    71,     0,    72,   320,   275,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+   117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
+   127,   128,   129,   130,     0,     0,     0,     0,     0,   240,
+     0,   241,   242,   138,   139,     0,   243,   244,   245,   267,
+   268,     0,     0,   269,     0,     0,     0,     0,     0,   276,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,    52,    53,   444,   100,   163,   164,   165,   166,
-   167,   168,   169,   170,   171,   172,   173,    66,    67,    15,
+     0,     0,   270,   271,   272,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,   273,   274,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,   275,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,   117,   118,   119,
+   120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
+   130,     0,     0,     0,     0,     0,   240,     0,   241,   242,
+   138,   139,     0,   243,   244,   245,     0,     0,     0,     0,
+     0,     0,     0,     0,    52,    53,   276,   100,    55,    56,
+    57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
+    67,    15,     0,    16,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,   184,     0,     0,     0,
+     0,     0,    52,    53,    68,   100,    55,    56,    57,    58,
+    59,    60,    61,    62,    63,    64,    65,    66,    67,    15,
      0,    16,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,   460,     0,     0,     0,     0,     0,
-     0,     0,    68,     0,     0,   468,     0,     0,     0,     0,
-   472,     0,     0,     0,   475,   476,   265,   266,    52,    53,
-   267,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,    15,     0,    16,     0,   268,
-   269,   270,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,   271,   272,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,   260,     0,     0,     0,     0,     0,
+    52,    53,    68,   100,   163,   164,   165,   166,   167,   168,
+   169,   170,   171,   172,   173,    66,    67,    15,     0,    16,
+     0,     0,     0,    69,     0,     0,    70,     0,     0,    71,
+     0,    72,     0,     0,     0,     0,     0,     0,    52,    53,
+    68,   100,    55,    56,    57,    58,    59,    60,    61,    62,
+    63,    64,    65,    66,    67,    15,     0,    16,     0,     0,
      0,    69,     0,     0,    70,     0,     0,    71,     0,    72,
-   316,   273,     0,     0,     0,     0,   265,   266,     0,     0,
-   267,     0,     0,     0,   117,   118,   119,   120,   121,   122,
-   123,   124,   125,   126,   127,   128,   129,   130,     0,   268,
-   269,   270,     0,   240,     0,   241,   242,   138,   139,     0,
-   243,   271,   272,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,   274,     0,     0,     0,     0,     0,     0,
-     0,   273,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,   117,   118,   119,   120,   121,   122,
-   123,   124,   125,   126,   127,   128,   129,   130,     0,     0,
-     0,     0,     0,   240,     0,   241,   242,   138,   139,     0,
-   243,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,    52,    53,   274,   100,    55,    56,    57,    58,    59,
-    60,    61,    62,    63,    64,    65,    66,    67,    15,     0,
-    16,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,   184,     0,     0,     0,     0,     0,    52,
-    53,    68,   100,    55,    56,    57,    58,    59,    60,    61,
-    62,    63,    64,    65,    66,    67,    15,     0,    16,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,   258,     0,     0,     0,     0,     0,    52,    53,    68,
-   100,   163,   164,   165,   166,   167,   168,   169,   170,   171,
-   172,   173,    66,    67,    15,     0,    16,     0,     0,     0,
-    69,     0,     0,    70,     0,     0,    71,     0,    72,     0,
-     0,     0,     0,     0,     0,    52,    53,    68,   100,    55,
-    56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
-    66,    67,    15,     0,    16,     0,     0,     0,    69,     0,
-     0,    70,     0,     0,    71,     0,    72,   330,     0,     0,
-     0,     0,     0,    52,    53,    68,   100,    55,    56,    57,
-    58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
-    15,     0,    16,     0,     0,     0,    69,     0,     0,    70,
-     0,   312,    71,     0,    72,   375,     0,     0,     0,     0,
-     0,    52,    53,    68,    54,    55,    56,    57,    58,    59,
-    60,    61,    62,    63,    64,    65,    66,    67,    15,     0,
-    16,     0,     0,     0,    69,     0,     0,    70,     0,     0,
-    71,     0,    72,     0,     0,     0,     0,     0,     0,    52,
-    53,    68,   100,    55,    56,    57,    58,    59,    60,    61,
-    62,    63,    64,    65,    66,    67,    15,     0,    16,     0,
-     0,     0,    69,     0,     0,    70,     0,     0,    71,     0,
-    72,     0,     0,     0,     0,     0,     0,    52,    53,    68,
-   100,   163,   164,   165,   166,   167,   168,   169,   170,   171,
-   172,   173,    66,    67,    15,     0,    16,     0,     0,     0,
-    69,     0,     0,    70,     0,     0,    71,     0,    72,     0,
-     0,     0,     0,     0,     0,    52,    53,    68,   190,    55,
-    56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
-    66,    67,    15,     0,    16,     0,     0,     0,    69,     0,
-     0,    70,     0,     0,    71,     0,    72,     0,     0,     0,
-     0,     0,     0,     0,     0,    68,     0,     0,     0,     0,
+   334,     0,     0,     0,     0,     0,    52,    53,    68,   100,
+    55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
+    65,    66,    67,    15,     0,    16,     0,     0,     0,    69,
+     0,     0,    70,     0,   316,    71,     0,    72,   381,     0,
+     0,     0,     0,     0,    52,    53,    68,    54,    55,    56,
+    57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
+    67,    15,     0,    16,     0,     0,     0,    69,     0,     0,
+    70,     0,     0,    71,     0,    72,     0,     0,     0,     0,
+     0,     0,    52,    53,    68,   100,    55,    56,    57,    58,
+    59,    60,    61,    62,    63,    64,    65,    66,    67,    15,
+     0,    16,     0,     0,     0,    69,     0,     0,    70,     0,
+     0,    71,     0,    72,     0,     0,     0,     0,     0,     0,
+    52,    53,    68,   100,   163,   164,   165,   166,   167,   168,
+   169,   170,   171,   172,   173,    66,    67,    15,     0,    16,
+     0,     0,     0,    69,     0,     0,    70,     0,     0,    71,
+     0,    72,     0,     0,     0,     0,     0,     0,    52,    53,
+    68,   190,    55,    56,    57,    58,    59,    60,    61,    62,
+    63,    64,    65,    66,    67,    15,     0,    16,     0,     0,
+     0,    69,     0,     0,    70,     0,     0,    71,     0,    72,
+     0,     0,     0,     0,     0,     0,     0,     0,    68,     0,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,    69,     0,     0,    70,
-     0,     0,    71,     0,    72,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,   107,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,   108,     0,     0,     0,     0,
-     0,     0,     0,     0,    69,   109,   110,    70,     0,     0,
-    71,     0,    72,     0,   111,   112,   113,   114,   115,   116,
-   117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
-   127,   128,   129,   130,   131,   132,   133,     0,     0,   134,
-   135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
-   145
+     0,     0,     0,     0,     0,     0,     0,     0,     0,    69,
+     0,     0,    70,     0,     0,    71,     0,    72,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,   107,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,   108,     0,
+     0,     0,     0,     0,     0,     0,     0,    69,   109,   110,
+    70,     0,     0,    71,     0,    72,     0,   111,   112,   113,
+   114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
+   124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
+     0,     0,   134,   135,   136,   137,   138,   139,   140,   141,
+   142,   143,   144,   145
 };
 
 static const short yycheck[] = {    29,
-   113,     2,   113,    44,   254,    96,    72,   207,    29,    15,
-    23,    34,   114,    20,    44,   245,   246,    30,   108,    15,
-    58,   111,    10,    11,    12,    13,    14,    15,    16,    17,
-     9,    54,    33,   109,    41,    42,    43,    44,   114,   105,
-    47,   440,    21,   133,   274,    23,   136,   137,    54,   151,
-   140,   141,   142,   143,   144,   145,   103,   456,    54,   149,
-   103,   103,    32,    33,   111,    95,    96,    27,    28,   111,
-   113,     5,     6,    74,     8,     9,    10,    11,    12,    13,
-    14,    15,    16,    17,    18,    19,    20,    21,    22,    58,
-    24,   112,    10,    11,    12,    13,    14,    15,    16,    17,
-   113,   131,   132,   102,   134,   135,     0,   111,    24,   103,
-   114,    45,   362,   179,   180,   181,   146,   147,   148,   113,
-   105,   109,   455,    49,    50,    51,   103,   103,   102,   114,
-   463,    25,   109,   109,    88,    89,   226,    31,    61,    62,
-    63,    64,    22,     4,    24,   177,   102,    41,    42,    43,
-    44,    52,    53,   183,   102,   187,     3,     4,     3,     4,
-   192,   193,     3,     4,   205,    59,     3,     4,     3,     4,
-   104,   102,   204,   107,   107,   205,   110,   209,   112,   113,
-   105,     4,     4,   224,   384,     4,   386,     4,   220,   221,
-   222,   109,   105,    24,   224,   225,    24,   263,   108,   108,
-   105,   291,    56,   293,   294,   295,     4,     4,     4,     4,
-   103,   301,     4,     7,   244,   245,   246,   308,   309,   310,
-   311,     7,     7,   106,   103,   103,   107,   103,   319,   320,
-   321,   322,    10,    11,    12,    13,    14,    15,    16,    17,
-   103,   103,    24,    36,   274,   103,   103,   103,   103,    24,
-   282,   103,   103,   103,   103,    60,   288,   105,   259,   105,
-   290,   105,   292,   105,   103,   105,   296,   297,   106,   105,
-   302,   303,   105,   105,   103,    34,   367,   103,   308,   309,
-   310,   311,   107,   103,    24,   103,    21,   103,   103,   319,
-   320,   321,   322,    21,   105,     4,   103,   103,   328,   103,
-   103,   391,   392,   393,   105,   337,    24,   339,     4,    36,
-    54,   343,   103,   404,   405,   103,   407,   408,   409,   410,
-   352,   353,   354,   192,   193,   106,   103,   440,   358,   440,
-   103,   421,   103,   103,   103,   204,   103,   367,   103,   103,
-   209,     4,    24,   456,   107,   456,   103,    54,   106,   381,
-   382,   220,   221,   222,   109,   106,   447,   389,   106,   106,
-   103,   106,    21,    36,   106,   106,   398,   106,    21,   106,
-   103,   109,    21,   403,   404,   405,    69,   407,   408,   409,
-   410,    20,   103,    22,    21,    24,    21,     0,     0,    84,
-    84,   423,    31,    32,    33,    84,    84,    33,    20,   329,
-   105,   177,    41,    42,    43,    44,    46,   328,    47,    48,
-    43,     2,    23,   282,    14,   397,    55,   447,   340,   288,
-    59,   453,   363,    -1,    -1,    -1,    -1,    -1,    -1,     5,
-     6,    -1,   464,   302,   303,    -1,    -1,   469,    -1,    -1,
-    -1,   473,   474,    -1,    -1,    -1,    22,    -1,    24,    -1,
-    26,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    38,    39,    -1,    -1,    -1,    -1,   337,    -1,
-   339,    -1,    -1,    -1,   343,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,   352,   353,   354,    -1,    -1,    -1,    -1,
+   113,    96,   113,   108,   207,    44,   111,    29,    23,    15,
+   114,     2,   256,    34,    44,    30,    72,   247,   248,    15,
+   103,   103,     9,   450,   111,    32,    33,   114,   133,   111,
+   113,   136,   137,    54,    21,   140,   141,   142,   143,   144,
+   145,   468,    33,    22,   149,    24,   276,   151,    54,   105,
+    10,    11,    12,    13,    14,    15,    16,    17,    54,    61,
+    62,    63,    64,    58,    20,    95,   103,   467,    10,    11,
+    12,    13,    14,    15,    16,    17,   113,   477,   108,   102,
+   105,   111,    23,    74,   103,    41,    42,    43,    44,   114,
+   112,    47,   111,   103,   103,    49,    50,    51,   113,   109,
+   109,   131,   132,   133,   134,   135,   136,   137,    52,    53,
+   140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
+   177,   226,   366,   179,   180,   181,   109,    88,    89,    58,
+   187,   114,    27,    28,   102,   192,   193,    10,    11,    12,
+    13,    14,    15,    16,    17,     3,     4,   204,    24,   109,
+     3,     4,   209,   183,     3,     4,     3,     4,     3,     4,
+     4,   107,   102,   220,   221,   222,   205,   109,   102,   102,
+   105,     4,    24,     4,     4,   205,     4,   105,    24,    56,
+     0,   108,   108,   105,     7,   224,     4,   390,   293,   392,
+   295,   296,   297,     4,   224,   225,   226,     4,   303,     4,
+     4,     7,   103,   106,     7,    25,   103,   103,   107,   265,
+   103,    31,    36,   103,   103,   310,   311,   312,   313,   314,
+   315,    41,    42,    43,    44,   103,    24,   284,   323,   324,
+   325,   326,   103,   290,   103,   103,   103,   103,   103,    59,
+    24,   105,   105,   105,   105,   105,   105,   304,   305,   105,
+   105,   105,    60,   103,   105,    34,    24,    21,   106,    21,
+   103,   103,   292,   293,   294,   295,   296,   297,   298,   299,
+   261,   107,     4,   303,   103,    24,   103,   103,   373,     4,
+   105,   103,   103,    36,   341,    54,   343,   103,   103,   103,
+   347,   103,   397,   398,   399,   105,     4,   106,    24,   356,
+   357,   358,   332,   103,   103,   107,   103,   103,   103,   103,
+   103,   103,   103,   103,   344,   410,   411,   412,   413,   106,
+   415,   416,   417,   418,   429,   103,   103,   103,   109,   103,
+   387,   388,   362,    54,   106,   106,   106,   450,   395,   450,
+   103,   106,   103,    21,    36,    21,   106,   404,   106,   106,
+   109,   106,   106,   103,   106,   468,    21,   468,   103,   389,
+   192,   193,   457,    69,   459,   460,    21,   397,   398,   399,
+    21,     0,   204,   403,   431,     0,    33,   209,    20,   409,
+    84,    84,    84,    20,    84,    22,   333,    24,   220,   221,
+   222,   105,   177,    46,    31,    32,    33,    43,     2,   429,
+   332,    23,    14,   403,    41,    42,    43,    44,   465,   367,
+    47,    48,    -1,   344,    -1,    -1,    -1,    -1,    55,    -1,
+    -1,   478,    59,    -1,    -1,    -1,    -1,    -1,   485,     5,
+     6,    -1,   489,   490,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    22,    -1,    24,    -1,
+    26,    -1,   284,    -1,    -1,    -1,    -1,    -1,   290,    -1,
+    -1,    -1,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,   304,   305,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     -1,    -1,    -1,    -1,    -1,    71,    72,    73,    74,    75,
-    76,    77,    78,    79,    80,    81,    82,    83,    84,    -1,
-    -1,    -1,   381,   382,    90,    -1,    92,    93,    94,    95,
-   389,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   398,
+    76,    77,    78,    79,    80,    81,    82,    83,    84,   341,
+    -1,   343,    -1,    -1,    90,   347,    92,    93,    94,    95,
+    -1,    97,    98,    99,   356,   357,   358,    -1,    -1,    -1,
     -1,   107,    -1,    -1,   110,    -1,   112,    -1,    -1,   115,
     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,     5,     6,   423,     8,     9,    10,    11,    12,
+    -1,    -1,    -1,    -1,    -1,   387,   388,    -1,    -1,    -1,
+    -1,    -1,    -1,   395,    -1,    -1,    -1,    -1,    -1,    -1,
+     5,     6,   404,     8,     9,    10,    11,    12,    13,    14,
+    15,    16,    17,    18,    19,    20,    21,    22,    -1,    24,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   431,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     5,     6,
+    45,     8,     9,    10,    11,    12,    13,    14,    15,    16,
+    17,    18,    19,    20,    21,    22,    -1,    24,    -1,    -1,
+    -1,    -1,    -1,   465,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,   478,    -1,    45,    -1,
+    -1,    -1,    -1,   485,    -1,    -1,    -1,   489,   490,    -1,
+    -1,    -1,     3,     4,     5,     6,     7,    -1,    -1,   104,
+    -1,    -1,   107,    -1,    -1,   110,    -1,   112,   113,    -1,
+    -1,    22,    -1,    24,    -1,    26,    27,    28,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    38,    39,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,    -1,    -1,
+   107,    -1,    -1,   110,    -1,   112,   113,    58,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
+    81,    82,    83,    84,    -1,    -1,    -1,    -1,    -1,    90,
+    -1,    92,    93,    94,    95,    -1,    97,    98,    99,     3,
+     4,    -1,    -1,     7,    -1,    -1,    -1,    -1,    -1,   110,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    26,    27,    28,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    38,    39,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    71,    72,    73,
+    74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
+    84,    -1,    -1,    -1,    -1,    -1,    90,    -1,    92,    93,
+    94,    95,    -1,    97,    98,    99,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,     5,     6,   110,     8,     9,    10,
+    11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
+    21,    22,    -1,    24,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    37,    -1,    -1,    -1,
+    -1,    -1,     5,     6,    45,     8,     9,    10,    11,    12,
     13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
     -1,    24,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,   453,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    45,    -1,    -1,   464,    -1,    -1,    -1,    -1,
-   469,    -1,    -1,    -1,   473,   474,     3,     4,     5,     6,
-     7,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    22,    -1,    24,    -1,    26,
-    27,    28,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    37,    -1,    -1,    -1,    -1,    -1,
+     5,     6,    45,     8,     9,    10,    11,    12,    13,    14,
+    15,    16,    17,    18,    19,    20,    21,    22,    -1,    24,
+    -1,    -1,    -1,   104,    -1,    -1,   107,    -1,    -1,   110,
+    -1,   112,    -1,    -1,    -1,    -1,    -1,    -1,     5,     6,
+    45,     8,     9,    10,    11,    12,    13,    14,    15,    16,
+    17,    18,    19,    20,    21,    22,    -1,    24,    -1,    -1,
     -1,   104,    -1,    -1,   107,    -1,    -1,   110,    -1,   112,
-   113,    58,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
-     7,    -1,    -1,    -1,    71,    72,    73,    74,    75,    76,
-    77,    78,    79,    80,    81,    82,    83,    84,    -1,    26,
-    27,    28,    -1,    90,    -1,    92,    93,    94,    95,    -1,
-    97,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,   110,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    71,    72,    73,    74,    75,    76,
-    77,    78,    79,    80,    81,    82,    83,    84,    -1,    -1,
-    -1,    -1,    -1,    90,    -1,    92,    93,    94,    95,    -1,
-    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,     5,     6,   110,     8,     9,    10,    11,    12,    13,
-    14,    15,    16,    17,    18,    19,    20,    21,    22,    -1,
-    24,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    37,    -1,    -1,    -1,    -1,    -1,     5,
-     6,    45,     8,     9,    10,    11,    12,    13,    14,    15,
-    16,    17,    18,    19,    20,    21,    22,    -1,    24,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    37,    -1,    -1,    -1,    -1,    -1,     5,     6,    45,
-     8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
-    18,    19,    20,    21,    22,    -1,    24,    -1,    -1,    -1,
-   104,    -1,    -1,   107,    -1,    -1,   110,    -1,   112,    -1,
-    -1,    -1,    -1,    -1,    -1,     5,     6,    45,     8,     9,
-    10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
-    20,    21,    22,    -1,    24,    -1,    -1,    -1,   104,    -1,
-    -1,   107,    -1,    -1,   110,    -1,   112,    37,    -1,    -1,
-    -1,    -1,    -1,     5,     6,    45,     8,     9,    10,    11,
-    12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
-    22,    -1,    24,    -1,    -1,    -1,   104,    -1,    -1,   107,
-    -1,   109,   110,    -1,   112,    37,    -1,    -1,    -1,    -1,
-    -1,     5,     6,    45,     8,     9,    10,    11,    12,    13,
-    14,    15,    16,    17,    18,    19,    20,    21,    22,    -1,
-    24,    -1,    -1,    -1,   104,    -1,    -1,   107,    -1,    -1,
-   110,    -1,   112,    -1,    -1,    -1,    -1,    -1,    -1,     5,
-     6,    45,     8,     9,    10,    11,    12,    13,    14,    15,
-    16,    17,    18,    19,    20,    21,    22,    -1,    24,    -1,
-    -1,    -1,   104,    -1,    -1,   107,    -1,    -1,   110,    -1,
-   112,    -1,    -1,    -1,    -1,    -1,    -1,     5,     6,    45,
-     8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
-    18,    19,    20,    21,    22,    -1,    24,    -1,    -1,    -1,
-   104,    -1,    -1,   107,    -1,    -1,   110,    -1,   112,    -1,
-    -1,    -1,    -1,    -1,    -1,     5,     6,    45,     8,     9,
-    10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
-    20,    21,    22,    -1,    24,    -1,    -1,    -1,   104,    -1,
-    -1,   107,    -1,    -1,   110,    -1,   112,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    45,    -1,    -1,    -1,    -1,
+    37,    -1,    -1,    -1,    -1,    -1,     5,     6,    45,     8,
+     9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
+    19,    20,    21,    22,    -1,    24,    -1,    -1,    -1,   104,
+    -1,    -1,   107,    -1,   109,   110,    -1,   112,    37,    -1,
+    -1,    -1,    -1,    -1,     5,     6,    45,     8,     9,    10,
+    11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
+    21,    22,    -1,    24,    -1,    -1,    -1,   104,    -1,    -1,
+   107,    -1,    -1,   110,    -1,   112,    -1,    -1,    -1,    -1,
+    -1,    -1,     5,     6,    45,     8,     9,    10,    11,    12,
+    13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
+    -1,    24,    -1,    -1,    -1,   104,    -1,    -1,   107,    -1,
+    -1,   110,    -1,   112,    -1,    -1,    -1,    -1,    -1,    -1,
+     5,     6,    45,     8,     9,    10,    11,    12,    13,    14,
+    15,    16,    17,    18,    19,    20,    21,    22,    -1,    24,
+    -1,    -1,    -1,   104,    -1,    -1,   107,    -1,    -1,   110,
+    -1,   112,    -1,    -1,    -1,    -1,    -1,    -1,     5,     6,
+    45,     8,     9,    10,    11,    12,    13,    14,    15,    16,
+    17,    18,    19,    20,    21,    22,    -1,    24,    -1,    -1,
+    -1,   104,    -1,    -1,   107,    -1,    -1,   110,    -1,   112,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    -1,
     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,   104,    -1,    -1,   107,
-    -1,    -1,   110,    -1,   112,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    35,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    46,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,   104,    56,    57,   107,    -1,    -1,
-   110,    -1,   112,    -1,    65,    66,    67,    68,    69,    70,
-    71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
-    81,    82,    83,    84,    85,    86,    87,    -1,    -1,    90,
-    91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
-   101
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,
+    -1,    -1,   107,    -1,    -1,   110,    -1,   112,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    35,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    46,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,    56,    57,
+   107,    -1,    -1,   110,    -1,   112,    -1,    65,    66,    67,
+    68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
+    78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
+    -1,    -1,    90,    91,    92,    93,    94,    95,    96,    97,
+    98,    99,   100,   101
 };
 /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
 #line 3 "/usr/share/bison.simple"
@@ -2226,7 +2250,7 @@
   switch (yyn) {
 
 case 2:
-#line 1011 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1011 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   if (yyvsp[0].UIntVal > (uint32_t)INT32_MAX)     // Outside of my range!
     ThrowException("Value too large for type!");
@@ -2234,7 +2258,7 @@
 ;
     break;}
 case 4:
-#line 1019 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1019 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   if (yyvsp[0].UInt64Val > (uint64_t)INT64_MAX)     // Outside of my range!
     ThrowException("Value too large for type!");
@@ -2242,55 +2266,55 @@
 ;
     break;}
 case 33:
-#line 1042 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1042 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.StrVal = yyvsp[-1].StrVal;
   ;
     break;}
 case 34:
-#line 1045 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1045 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.StrVal = 0;
   ;
     break;}
 case 35:
-#line 1049 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1049 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::InternalLinkage; ;
     break;}
 case 36:
-#line 1050 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1050 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::LinkOnceLinkage; ;
     break;}
 case 37:
-#line 1051 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1051 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::WeakLinkage; ;
     break;}
 case 38:
-#line 1052 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1052 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::AppendingLinkage; ;
     break;}
 case 39:
-#line 1053 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1053 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::ExternalLinkage; ;
     break;}
 case 40:
-#line 1055 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1055 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = CallingConv::C; ;
     break;}
 case 41:
-#line 1056 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1056 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = CallingConv::C; ;
     break;}
 case 42:
-#line 1057 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1057 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = CallingConv::Fast; ;
     break;}
 case 43:
-#line 1058 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1058 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = CallingConv::Cold; ;
     break;}
 case 44:
-#line 1059 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1059 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
                    if ((unsigned)yyvsp[0].UInt64Val != yyvsp[0].UInt64Val)
                      ThrowException("Calling conv too large!");
@@ -2298,11 +2322,11 @@
                  ;
     break;}
 case 45:
-#line 1067 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1067 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = 0; ;
     break;}
 case 46:
-#line 1068 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1068 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.UIntVal = yyvsp[0].UInt64Val;
   if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal))
@@ -2310,11 +2334,11 @@
 ;
     break;}
 case 47:
-#line 1073 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1073 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = 0; ;
     break;}
 case 48:
-#line 1074 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1074 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.UIntVal = yyvsp[0].UInt64Val;
   if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal))
@@ -2322,7 +2346,7 @@
 ;
     break;}
 case 49:
-#line 1081 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1081 "/Users/sabre/cvs/llvm/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] == '\\')
@@ -2331,30 +2355,30 @@
 ;
     break;}
 case 50:
-#line 1088 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1088 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.StrVal = 0; ;
     break;}
 case 51:
-#line 1089 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1089 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.StrVal = yyvsp[0].StrVal; ;
     break;}
 case 52:
-#line 1094 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1094 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {;
     break;}
 case 53:
-#line 1095 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1095 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {;
     break;}
 case 54:
-#line 1096 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1096 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     CurGV->setSection(yyvsp[0].StrVal);
     free(yyvsp[0].StrVal);
   ;
     break;}
 case 55:
-#line 1100 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1100 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[0].UInt64Val != 0 && !isPowerOf2_32(yyvsp[0].UInt64Val))
       ThrowException("Alignment must be a power of two!");
@@ -2362,15 +2386,15 @@
   ;
     break;}
 case 57:
-#line 1113 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1113 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ;
     break;}
 case 59:
-#line 1114 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1114 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ;
     break;}
 case 60:
-#line 1116 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1116 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!UpRefs.empty())
       ThrowException("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription());
@@ -2378,25 +2402,25 @@
   ;
     break;}
 case 74:
-#line 1127 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1127 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TypeVal = new PATypeHolder(OpaqueType::get());
   ;
     break;}
 case 75:
-#line 1130 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1130 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType);
   ;
     break;}
 case 76:
-#line 1133 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1133 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {            // Named types are also simple types...
   yyval.TypeVal = new PATypeHolder(getTypeVal(yyvsp[0].ValIDVal));
 ;
     break;}
 case 77:
-#line 1139 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1139 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                   // Type UpReference
     if (yyvsp[0].UInt64Val > (uint64_t)~0U) ThrowException("Value out of range!");
     OpaqueType *OT = OpaqueType::get();        // Use temporary placeholder
@@ -2406,7 +2430,7 @@
   ;
     break;}
 case 78:
-#line 1146 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1146 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {           // Function derived type?
     std::vector<const Type*> Params;
     for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-1].TypeList->begin(),
@@ -2421,14 +2445,14 @@
   ;
     break;}
 case 79:
-#line 1158 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1158 "/Users/sabre/cvs/llvm/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;
   ;
     break;}
 case 80:
-#line 1162 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1162 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {          // Packed array type?
      const llvm::Type* ElemTy = yyvsp[-1].TypeVal->get();
      if ((unsigned)yyvsp[-3].UInt64Val != yyvsp[-3].UInt64Val)
@@ -2442,7 +2466,7 @@
   ;
     break;}
 case 81:
-#line 1173 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1173 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                        // Structure type?
     std::vector<const Type*> Elements;
     for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-1].TypeList->begin(),
@@ -2454,51 +2478,51 @@
   ;
     break;}
 case 82:
-#line 1182 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1182 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                                  // Empty structure type?
     yyval.TypeVal = new PATypeHolder(StructType::get(std::vector<const Type*>()));
   ;
     break;}
 case 83:
-#line 1185 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1185 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                             // Pointer type?
     yyval.TypeVal = new PATypeHolder(HandleUpRefs(PointerType::get(*yyvsp[-1].TypeVal)));
     delete yyvsp[-1].TypeVal;
   ;
     break;}
 case 84:
-#line 1193 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1193 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TypeList = new std::list<PATypeHolder>();
     yyval.TypeList->push_back(*yyvsp[0].TypeVal); delete yyvsp[0].TypeVal;
   ;
     break;}
 case 85:
-#line 1197 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1197 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     (yyval.TypeList=yyvsp[-2].TypeList)->push_back(*yyvsp[0].TypeVal); delete yyvsp[0].TypeVal;
   ;
     break;}
 case 87:
-#line 1203 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1203 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     (yyval.TypeList=yyvsp[-2].TypeList)->push_back(Type::VoidTy);
   ;
     break;}
 case 88:
-#line 1206 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1206 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     (yyval.TypeList = new std::list<PATypeHolder>())->push_back(Type::VoidTy);
   ;
     break;}
 case 89:
-#line 1209 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1209 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TypeList = new std::list<PATypeHolder>();
   ;
     break;}
 case 90:
-#line 1219 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1219 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { // Nonempty unsized arr
     const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-3].TypeVal->get());
     if (ATy == 0)
@@ -2526,7 +2550,7 @@
   ;
     break;}
 case 91:
-#line 1244 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1244 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-2].TypeVal->get());
     if (ATy == 0)
@@ -2542,7 +2566,7 @@
   ;
     break;}
 case 92:
-#line 1257 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1257 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-2].TypeVal->get());
     if (ATy == 0)
@@ -2574,7 +2598,7 @@
   ;
     break;}
 case 93:
-#line 1286 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1286 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { // Nonempty unsized arr
     const PackedType *PTy = dyn_cast<PackedType>(yyvsp[-3].TypeVal->get());
     if (PTy == 0)
@@ -2602,7 +2626,7 @@
   ;
     break;}
 case 94:
-#line 1311 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1311 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const StructType *STy = dyn_cast<StructType>(yyvsp[-3].TypeVal->get());
     if (STy == 0)
@@ -2625,7 +2649,7 @@
   ;
     break;}
 case 95:
-#line 1331 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1331 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const StructType *STy = dyn_cast<StructType>(yyvsp[-2].TypeVal->get());
     if (STy == 0)
@@ -2640,7 +2664,7 @@
   ;
     break;}
 case 96:
-#line 1343 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1343 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *PTy = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get());
     if (PTy == 0)
@@ -2652,14 +2676,14 @@
   ;
     break;}
 case 97:
-#line 1352 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1352 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ConstVal = UndefValue::get(yyvsp[-1].TypeVal->get());
     delete yyvsp[-1].TypeVal;
   ;
     break;}
 case 98:
-#line 1356 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1356 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *Ty = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get());
     if (Ty == 0)
@@ -2721,7 +2745,7 @@
   ;
     break;}
 case 99:
-#line 1415 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1415 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-1].TypeVal->get() != yyvsp[0].ConstVal->getType())
       ThrowException("Mismatched types for constant expression!");
@@ -2730,7 +2754,7 @@
   ;
     break;}
 case 100:
-#line 1421 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1421 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const Type *Ty = yyvsp[-1].TypeVal->get();
     if (isa<FunctionType>(Ty) || Ty == Type::LabelTy || isa<OpaqueType>(Ty))
@@ -2740,7 +2764,7 @@
   ;
     break;}
 case 101:
-#line 1429 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1429 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {      // integral constants
     if (!ConstantSInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].SInt64Val))
       ThrowException("Constant value doesn't fit in type!");
@@ -2748,7 +2772,7 @@
   ;
     break;}
 case 102:
-#line 1434 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1434 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {            // integral constants
     if (!ConstantUInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].UInt64Val))
       ThrowException("Constant value doesn't fit in type!");
@@ -2756,19 +2780,19 @@
   ;
     break;}
 case 103:
-#line 1439 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1439 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                      // Boolean constants
     yyval.ConstVal = ConstantBool::True;
   ;
     break;}
 case 104:
-#line 1442 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1442 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                     // Boolean constants
     yyval.ConstVal = ConstantBool::False;
   ;
     break;}
 case 105:
-#line 1445 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1445 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                   // Float & Double constants
     if (!ConstantFP::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].FPVal))
       ThrowException("Floating point constant invalid for type!!");
@@ -2776,7 +2800,7 @@
   ;
     break;}
 case 106:
-#line 1452 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1452 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!yyvsp[-3].ConstVal->getType()->isFirstClassType())
       ThrowException("cast constant expression from a non-primitive type: '" +
@@ -2789,7 +2813,7 @@
   ;
     break;}
 case 107:
-#line 1462 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1462 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PointerType>(yyvsp[-2].ConstVal->getType()))
       ThrowException("GetElementPtr requires a pointer operand!");
@@ -2823,7 +2847,7 @@
   ;
     break;}
 case 108:
-#line 1493 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1493 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-5].ConstVal->getType() != Type::BoolTy)
       ThrowException("Select condition must be of boolean type!");
@@ -2833,7 +2857,7 @@
   ;
     break;}
 case 109:
-#line 1500 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1500 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       ThrowException("Binary operator types must match!");
@@ -2857,7 +2881,7 @@
   ;
     break;}
 case 110:
-#line 1521 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1521 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       ThrowException("Logical operator types must match!");
@@ -2870,7 +2894,7 @@
   ;
     break;}
 case 111:
-#line 1531 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1531 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       ThrowException("setcc operand types must match!");
@@ -2878,7 +2902,7 @@
   ;
     break;}
 case 112:
-#line 1536 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1536 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-1].ConstVal->getType() != Type::UByteTy)
       ThrowException("Shift count for shift constant must be unsigned byte!");
@@ -2888,7 +2912,7 @@
   ;
     break;}
 case 113:
-#line 1543 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1543 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
         if (!isa<PackedType>(yyvsp[-3].ConstVal->getType()))
       ThrowException("First operand of extractelement must be "
@@ -2899,60 +2923,74 @@
   ;
     break;}
 case 114:
-#line 1553 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1551 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
-    (yyval.ConstVector = yyvsp[-2].ConstVector)->push_back(yyvsp[0].ConstVal);
+    yyval.ConstVal = ConstantExpr::getInsertElement(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
   ;
     break;}
 case 115:
-#line 1556 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1554 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+{
+    if (!ShuffleVectorInst::isValidOperands(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal))
+      ThrowException("Invalid shufflevector operands!");
+    yyval.ConstVal = ConstantExpr::getShuffleVector(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
+  ;
+    break;}
+case 116:
+#line 1562 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+{
+    (yyval.ConstVector = yyvsp[-2].ConstVector)->push_back(yyvsp[0].ConstVal);
+  ;
+    break;}
+case 117:
+#line 1565 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ConstVector = new std::vector<Constant*>();
     yyval.ConstVector->push_back(yyvsp[0].ConstVal);
   ;
     break;}
-case 116:
-#line 1563 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 118:
+#line 1572 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.BoolVal = false; ;
     break;}
-case 117:
-#line 1563 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 119:
+#line 1572 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.BoolVal = true; ;
     break;}
-case 118:
-#line 1573 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 120:
+#line 1582 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.ModuleVal = ParserResult = yyvsp[0].ModuleVal;
   CurModule.ModuleDone();
 ;
     break;}
-case 119:
-#line 1580 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 121:
+#line 1589 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ModuleVal = yyvsp[-1].ModuleVal;
     CurFun.FunctionDone();
   ;
     break;}
-case 120:
-#line 1584 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 122:
+#line 1593 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ModuleVal = yyvsp[-1].ModuleVal;
   ;
     break;}
-case 121:
-#line 1587 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 123:
+#line 1596 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ModuleVal = yyvsp[-3].ModuleVal;
   ;
     break;}
-case 122:
-#line 1590 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 124:
+#line 1599 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ModuleVal = yyvsp[-1].ModuleVal;
   ;
     break;}
-case 123:
-#line 1593 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 125:
+#line 1602 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ModuleVal = CurModule.CurrentModule;
     // Emit an error if there are any unresolved types left.
@@ -2965,8 +3003,8 @@
     }
   ;
     break;}
-case 124:
-#line 1606 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 126:
+#line 1615 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     // Eagerly resolve types.  This is not an optimization, this is a
     // requirement that is due to the fact that we could have this:
@@ -2988,60 +3026,60 @@
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 125:
-#line 1626 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 127:
+#line 1635 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {       // Function prototypes can be in const pool
   ;
     break;}
-case 126:
-#line 1628 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 128:
+#line 1637 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {  // Asm blocks can be in the const pool
   ;
     break;}
-case 127:
-#line 1630 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 129:
+#line 1639 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[0].ConstVal == 0) ThrowException("Global value initializer is not a constant!");
     CurGV = ParseGlobalVariable(yyvsp[-3].StrVal, yyvsp[-2].Linkage, yyvsp[-1].BoolVal, yyvsp[0].ConstVal->getType(), yyvsp[0].ConstVal);
                                                        ;
     break;}
-case 128:
-#line 1633 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 130:
+#line 1642 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     CurGV = 0;
   ;
     break;}
-case 129:
-#line 1636 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 131:
+#line 1645 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     CurGV = ParseGlobalVariable(yyvsp[-3].StrVal, GlobalValue::ExternalLinkage,
                                              yyvsp[-1].BoolVal, *yyvsp[0].TypeVal, 0);
     delete yyvsp[0].TypeVal;
                                                    ;
     break;}
-case 130:
-#line 1640 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 132:
+#line 1649 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     CurGV = 0;
   ;
     break;}
-case 131:
-#line 1643 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 133:
+#line 1652 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { 
   ;
     break;}
-case 132:
-#line 1645 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 134:
+#line 1654 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   ;
     break;}
-case 133:
-#line 1647 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 135:
+#line 1656 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { 
   ;
     break;}
-case 134:
-#line 1651 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 136:
+#line 1660 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm();
   char *EndStr = UnEscapeLexed(yyvsp[0].StrVal, true);
@@ -3054,22 +3092,22 @@
     CurModule.CurrentModule->setModuleInlineAsm(AsmSoFar+"\n"+NewAsm);
 ;
     break;}
-case 135:
-#line 1663 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 137:
+#line 1672 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.Endianness = Module::BigEndian; ;
     break;}
-case 136:
-#line 1664 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 138:
+#line 1673 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.Endianness = Module::LittleEndian; ;
     break;}
-case 137:
-#line 1666 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 139:
+#line 1675 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     CurModule.CurrentModule->setEndianness(yyvsp[0].Endianness);
   ;
     break;}
-case 138:
-#line 1669 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 140:
+#line 1678 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[0].UInt64Val == 32)
       CurModule.CurrentModule->setPointerSize(Module::Pointer32);
@@ -3079,89 +3117,89 @@
       ThrowException("Invalid pointer size: '" + utostr(yyvsp[0].UInt64Val) + "'!");
   ;
     break;}
-case 139:
-#line 1677 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 141:
+#line 1686 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     CurModule.CurrentModule->setTargetTriple(yyvsp[0].StrVal);
     free(yyvsp[0].StrVal);
   ;
     break;}
-case 141:
-#line 1684 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 143:
+#line 1693 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
           CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal);
           free(yyvsp[0].StrVal);
         ;
     break;}
-case 142:
-#line 1688 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 144:
+#line 1697 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
           CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal);
           free(yyvsp[0].StrVal);
         ;
     break;}
-case 143:
-#line 1692 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 145:
+#line 1701 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
         ;
     break;}
-case 147:
-#line 1701 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 149:
+#line 1710 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.StrVal = 0; ;
     break;}
-case 148:
-#line 1703 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 150:
+#line 1712 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   if (*yyvsp[-1].TypeVal == Type::VoidTy)
     ThrowException("void typed arguments are invalid!");
   yyval.ArgVal = new std::pair<PATypeHolder*, char*>(yyvsp[-1].TypeVal, yyvsp[0].StrVal);
 ;
     break;}
-case 149:
-#line 1709 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 151:
+#line 1718 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = yyvsp[-2].ArgList;
     yyvsp[-2].ArgList->push_back(*yyvsp[0].ArgVal);
     delete yyvsp[0].ArgVal;
   ;
     break;}
-case 150:
-#line 1714 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 152:
+#line 1723 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = new std::vector<std::pair<PATypeHolder*,char*> >();
     yyval.ArgList->push_back(*yyvsp[0].ArgVal);
     delete yyvsp[0].ArgVal;
   ;
     break;}
-case 151:
-#line 1720 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 153:
+#line 1729 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = yyvsp[0].ArgList;
   ;
     break;}
-case 152:
-#line 1723 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 154:
+#line 1732 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = yyvsp[-2].ArgList;
     yyval.ArgList->push_back(std::pair<PATypeHolder*,
                             char*>(new PATypeHolder(Type::VoidTy), 0));
   ;
     break;}
-case 153:
-#line 1728 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 155:
+#line 1737 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = new std::vector<std::pair<PATypeHolder*,char*> >();
     yyval.ArgList->push_back(std::make_pair(new PATypeHolder(Type::VoidTy), (char*)0));
   ;
     break;}
-case 154:
-#line 1732 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 156:
+#line 1741 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = 0;
   ;
     break;}
-case 155:
-#line 1737 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 157:
+#line 1746 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   UnEscapeLexed(yyvsp[-5].StrVal);
   std::string FunctionName(yyvsp[-5].StrVal);
@@ -3247,8 +3285,8 @@
   }
 ;
     break;}
-case 158:
-#line 1824 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 160:
+#line 1833 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.FunctionVal = CurFun.CurrentFunction;
 
@@ -3257,85 +3295,85 @@
   yyval.FunctionVal->setLinkage(yyvsp[-2].Linkage);
 ;
     break;}
-case 161:
-#line 1834 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 163:
+#line 1843 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.FunctionVal = yyvsp[-1].FunctionVal;
 ;
     break;}
-case 162:
-#line 1838 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 164:
+#line 1847 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { CurFun.isDeclare = true; ;
     break;}
-case 163:
-#line 1838 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 165:
+#line 1847 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.FunctionVal = CurFun.CurrentFunction;
   CurFun.FunctionDone();
 ;
     break;}
-case 164:
-#line 1847 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 166:
+#line 1856 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = false;
   ;
     break;}
-case 165:
-#line 1850 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 167:
+#line 1859 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = true;
   ;
     break;}
-case 166:
-#line 1854 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 168:
+#line 1863 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {    // A reference to a direct constant
     yyval.ValIDVal = ValID::create(yyvsp[0].SInt64Val);
   ;
     break;}
-case 167:
-#line 1857 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 169:
+#line 1866 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::create(yyvsp[0].UInt64Val);
   ;
     break;}
-case 168:
-#line 1860 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 170:
+#line 1869 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                     // Perhaps it's an FP constant?
     yyval.ValIDVal = ValID::create(yyvsp[0].FPVal);
   ;
     break;}
-case 169:
-#line 1863 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 171:
+#line 1872 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::create(ConstantBool::True);
   ;
     break;}
-case 170:
-#line 1866 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 172:
+#line 1875 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::create(ConstantBool::False);
   ;
     break;}
-case 171:
-#line 1869 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 173:
+#line 1878 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::createNull();
   ;
     break;}
-case 172:
-#line 1872 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 174:
+#line 1881 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::createUndef();
   ;
     break;}
-case 173:
-#line 1875 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 175:
+#line 1884 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {     // A vector zero constant.
     yyval.ValIDVal = ValID::createZeroInit();
   ;
     break;}
-case 174:
-#line 1878 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 176:
+#line 1887 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { // Nonempty unsized packed vector
     const Type *ETy = (*yyvsp[-1].ConstVector)[0]->getType();
     int NumElements = yyvsp[-1].ConstVector->size(); 
@@ -3361,14 +3399,14 @@
     delete PTy; delete yyvsp[-1].ConstVector;
   ;
     break;}
-case 175:
-#line 1902 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 177:
+#line 1911 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::create(yyvsp[0].ConstVal);
   ;
     break;}
-case 176:
-#line 1905 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 178:
+#line 1914 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     char *End = UnEscapeLexed(yyvsp[-2].StrVal, true);
     std::string AsmStr = std::string(yyvsp[-2].StrVal, End);
@@ -3379,38 +3417,38 @@
     free(yyvsp[0].StrVal);
   ;
     break;}
-case 177:
-#line 1918 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 179:
+#line 1927 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {  // Is it an integer reference...?
     yyval.ValIDVal = ValID::create(yyvsp[0].SIntVal);
   ;
     break;}
-case 178:
-#line 1921 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 180:
+#line 1930 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                   // Is it a named reference...?
     yyval.ValIDVal = ValID::create(yyvsp[0].StrVal);
   ;
     break;}
-case 181:
-#line 1932 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 183:
+#line 1941 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValueVal = getVal(*yyvsp[-1].TypeVal, yyvsp[0].ValIDVal); delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 182:
-#line 1936 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 184:
+#line 1945 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.FunctionVal = yyvsp[-1].FunctionVal;
   ;
     break;}
-case 183:
-#line 1939 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 185:
+#line 1948 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { // Do not allow functions with 0 basic blocks   
     yyval.FunctionVal = yyvsp[-1].FunctionVal;
   ;
     break;}
-case 184:
-#line 1947 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 186:
+#line 1956 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     setValueName(yyvsp[0].TermInstVal, yyvsp[-1].StrVal);
     InsertValue(yyvsp[0].TermInstVal);
@@ -3420,15 +3458,15 @@
     yyval.BasicBlockVal = yyvsp[-2].BasicBlockVal;
   ;
     break;}
-case 185:
-#line 1956 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 187:
+#line 1965 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyvsp[-1].BasicBlockVal->getInstList().push_back(yyvsp[0].InstVal);
     yyval.BasicBlockVal = yyvsp[-1].BasicBlockVal;
   ;
     break;}
-case 186:
-#line 1960 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 188:
+#line 1969 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BasicBlockVal = CurBB = getBBVal(ValID::create((int)CurFun.NextBBNum++), true);
 
@@ -3440,8 +3478,8 @@
     BBL.splice(BBL.end(), BBL, yyval.BasicBlockVal);
   ;
     break;}
-case 187:
-#line 1970 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 189:
+#line 1979 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BasicBlockVal = CurBB = getBBVal(ValID::create(yyvsp[0].StrVal), true);
 
@@ -3453,32 +3491,32 @@
     BBL.splice(BBL.end(), BBL, yyval.BasicBlockVal);
   ;
     break;}
-case 188:
-#line 1981 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 190:
+#line 1990 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {              // Return with a result...
     yyval.TermInstVal = new ReturnInst(yyvsp[0].ValueVal);
   ;
     break;}
-case 189:
-#line 1984 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 191:
+#line 1993 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                                       // Return with no result...
     yyval.TermInstVal = new ReturnInst();
   ;
     break;}
-case 190:
-#line 1987 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 192:
+#line 1996 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {                         // Unconditional Branch...
     yyval.TermInstVal = new BranchInst(getBBVal(yyvsp[0].ValIDVal));
   ;
     break;}
-case 191:
-#line 1990 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 193:
+#line 1999 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {  
     yyval.TermInstVal = new BranchInst(getBBVal(yyvsp[-3].ValIDVal), getBBVal(yyvsp[0].ValIDVal), getVal(Type::BoolTy, yyvsp[-6].ValIDVal));
   ;
     break;}
-case 192:
-#line 1993 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 194:
+#line 2002 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     SwitchInst *S = new SwitchInst(getVal(yyvsp[-7].PrimType, yyvsp[-6].ValIDVal), getBBVal(yyvsp[-3].ValIDVal), yyvsp[-1].JumpTable->size());
     yyval.TermInstVal = S;
@@ -3494,15 +3532,15 @@
     delete yyvsp[-1].JumpTable;
   ;
     break;}
-case 193:
-#line 2007 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 195:
+#line 2016 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     SwitchInst *S = new SwitchInst(getVal(yyvsp[-6].PrimType, yyvsp[-5].ValIDVal), getBBVal(yyvsp[-2].ValIDVal), 0);
     yyval.TermInstVal = S;
   ;
     break;}
-case 194:
-#line 2012 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 196:
+#line 2021 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *PFTy;
     const FunctionType *Ty;
@@ -3556,20 +3594,20 @@
     delete yyvsp[-7].ValueList;
   ;
     break;}
-case 195:
-#line 2064 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 197:
+#line 2073 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TermInstVal = new UnwindInst();
   ;
     break;}
-case 196:
-#line 2067 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 198:
+#line 2076 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TermInstVal = new UnreachableInst();
   ;
     break;}
-case 197:
-#line 2073 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 199:
+#line 2082 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.JumpTable = yyvsp[-5].JumpTable;
     Constant *V = cast<Constant>(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal));
@@ -3579,8 +3617,8 @@
     yyval.JumpTable->push_back(std::make_pair(V, getBBVal(yyvsp[0].ValIDVal)));
   ;
     break;}
-case 198:
-#line 2081 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 200:
+#line 2090 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.JumpTable = new std::vector<std::pair<Constant*, BasicBlock*> >();
     Constant *V = cast<Constant>(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal));
@@ -3591,8 +3629,8 @@
     yyval.JumpTable->push_back(std::make_pair(V, getBBVal(yyvsp[0].ValIDVal)));
   ;
     break;}
-case 199:
-#line 2091 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 201:
+#line 2100 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
   // Is this definition named?? if so, assign the name...
   setValueName(yyvsp[0].InstVal, yyvsp[-1].StrVal);
@@ -3600,54 +3638,54 @@
   yyval.InstVal = yyvsp[0].InstVal;
 ;
     break;}
-case 200:
-#line 2098 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 202:
+#line 2107 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {    // Used for PHI nodes
     yyval.PHIList = new std::list<std::pair<Value*, BasicBlock*> >();
     yyval.PHIList->push_back(std::make_pair(getVal(*yyvsp[-5].TypeVal, yyvsp[-3].ValIDVal), getBBVal(yyvsp[-1].ValIDVal)));
     delete yyvsp[-5].TypeVal;
   ;
     break;}
-case 201:
-#line 2103 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 203:
+#line 2112 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.PHIList = yyvsp[-6].PHIList;
     yyvsp[-6].PHIList->push_back(std::make_pair(getVal(yyvsp[-6].PHIList->front().first->getType(), yyvsp[-3].ValIDVal),
                                  getBBVal(yyvsp[-1].ValIDVal)));
   ;
     break;}
-case 202:
-#line 2110 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 204:
+#line 2119 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {    // Used for call statements, and memory insts...
     yyval.ValueList = new std::vector<Value*>();
     yyval.ValueList->push_back(yyvsp[0].ValueVal);
   ;
     break;}
-case 203:
-#line 2114 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 205:
+#line 2123 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValueList = yyvsp[-2].ValueList;
     yyvsp[-2].ValueList->push_back(yyvsp[0].ValueVal);
   ;
     break;}
-case 205:
-#line 2120 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 207:
+#line 2129 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { yyval.ValueList = 0; ;
     break;}
-case 206:
-#line 2122 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 208:
+#line 2131 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = true;
   ;
     break;}
-case 207:
-#line 2125 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 209:
+#line 2134 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = false;
   ;
     break;}
-case 208:
-#line 2131 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 210:
+#line 2140 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!(*yyvsp[-3].TypeVal)->isInteger() && !(*yyvsp[-3].TypeVal)->isFloatingPoint() && 
         !isa<PackedType>((*yyvsp[-3].TypeVal).get()))
@@ -3661,8 +3699,8 @@
     delete yyvsp[-3].TypeVal;
   ;
     break;}
-case 209:
-#line 2143 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 211:
+#line 2152 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!(*yyvsp[-3].TypeVal)->isIntegral()) {
       if (!isa<PackedType>(yyvsp[-3].TypeVal->get()) ||
@@ -3675,8 +3713,8 @@
     delete yyvsp[-3].TypeVal;
   ;
     break;}
-case 210:
-#line 2154 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 212:
+#line 2163 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if(isa<PackedType>((*yyvsp[-3].TypeVal).get())) {
       ThrowException(
@@ -3688,8 +3726,8 @@
     delete yyvsp[-3].TypeVal;
   ;
     break;}
-case 211:
-#line 2164 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 213:
+#line 2173 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     std::cerr << "WARNING: Use of eliminated 'not' instruction:"
               << " Replacing with 'xor'.\n";
@@ -3703,8 +3741,8 @@
       ThrowException("Could not create a xor instruction!");
   ;
     break;}
-case 212:
-#line 2176 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 214:
+#line 2185 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[0].ValueVal->getType() != Type::UByteTy)
       ThrowException("Shift amount must be ubyte!");
@@ -3713,8 +3751,8 @@
     yyval.InstVal = new ShiftInst(yyvsp[-3].OtherOpVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
   ;
     break;}
-case 213:
-#line 2183 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 215:
+#line 2192 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!yyvsp[0].TypeVal->get()->isFirstClassType())
       ThrowException("cast instruction to a non-primitive type: '" +
@@ -3723,8 +3761,8 @@
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 214:
-#line 2190 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 216:
+#line 2199 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-4].ValueVal->getType() != Type::BoolTy)
       ThrowException("select condition must be boolean!");
@@ -3733,16 +3771,16 @@
     yyval.InstVal = new SelectInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
   ;
     break;}
-case 215:
-#line 2197 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 217:
+#line 2206 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     NewVarArgs = true;
     yyval.InstVal = new VAArgInst(yyvsp[-2].ValueVal, *yyvsp[0].TypeVal);
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 216:
-#line 2202 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 218:
+#line 2211 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     ObsoleteVarArgs = true;
     const Type* ArgTy = yyvsp[-2].ValueVal->getType();
@@ -3763,8 +3801,8 @@
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 217:
-#line 2221 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 219:
+#line 2230 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     ObsoleteVarArgs = true;
     const Type* ArgTy = yyvsp[-2].ValueVal->getType();
@@ -3788,8 +3826,8 @@
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 218:
-#line 2243 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 220:
+#line 2252 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PackedType>(yyvsp[-2].ValueVal->getType()))
       ThrowException("First operand of extractelement must be "
@@ -3799,8 +3837,8 @@
     yyval.InstVal = new ExtractElementInst(yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
   ;
     break;}
-case 219:
-#line 2251 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 221:
+#line 2260 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PackedType>(yyvsp[-4].ValueVal->getType()))
       ThrowException("First operand of insertelement must be "
@@ -3814,16 +3852,16 @@
     yyval.InstVal = new InsertElementInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
   ;
     break;}
-case 220:
-#line 2263 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 222:
+#line 2272 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
-  if (!ShuffleVectorInst::isValidOperands(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal))
-    ThrowException("Invalid shufflevector operands!");
+    if (!ShuffleVectorInst::isValidOperands(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal))
+      ThrowException("Invalid shufflevector operands!");
     yyval.InstVal = new ShuffleVectorInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
   ;
     break;}
-case 221:
-#line 2268 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 223:
+#line 2277 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const Type *Ty = yyvsp[0].PHIList->front().first->getType();
     if (!Ty->isFirstClassType())
@@ -3839,8 +3877,8 @@
     delete yyvsp[0].PHIList;  // Free the list...
   ;
     break;}
-case 222:
-#line 2282 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 224:
+#line 2291 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *PFTy;
     const FunctionType *Ty;
@@ -3899,66 +3937,66 @@
     delete yyvsp[-1].ValueList;
   ;
     break;}
-case 223:
-#line 2339 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 225:
+#line 2348 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.InstVal = yyvsp[0].InstVal;
   ;
     break;}
-case 224:
-#line 2345 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 226:
+#line 2354 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { 
     yyval.ValueList = yyvsp[0].ValueList; 
   ;
     break;}
-case 225:
-#line 2347 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 227:
+#line 2356 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 { 
     yyval.ValueList = new std::vector<Value*>(); 
   ;
     break;}
-case 226:
-#line 2351 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 228:
+#line 2360 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = true;
   ;
     break;}
-case 227:
-#line 2354 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 229:
+#line 2363 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = false;
   ;
     break;}
-case 228:
-#line 2360 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 230:
+#line 2369 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.InstVal = new MallocInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal);
     delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 229:
-#line 2364 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 231:
+#line 2373 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.InstVal = new MallocInst(*yyvsp[-4].TypeVal, getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal), yyvsp[0].UIntVal);
     delete yyvsp[-4].TypeVal;
   ;
     break;}
-case 230:
-#line 2368 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 232:
+#line 2377 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.InstVal = new AllocaInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal);
     delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 231:
-#line 2372 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 233:
+#line 2381 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.InstVal = new AllocaInst(*yyvsp[-4].TypeVal, getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal), yyvsp[0].UIntVal);
     delete yyvsp[-4].TypeVal;
   ;
     break;}
-case 232:
-#line 2376 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 234:
+#line 2385 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PointerType>(yyvsp[0].ValueVal->getType()))
       ThrowException("Trying to free nonpointer type " + 
@@ -3966,8 +4004,8 @@
     yyval.InstVal = new FreeInst(yyvsp[0].ValueVal);
   ;
     break;}
-case 233:
-#line 2383 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 235:
+#line 2392 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PointerType>(yyvsp[-1].TypeVal->get()))
       ThrowException("Can't load from nonpointer type: " +
@@ -3979,8 +4017,8 @@
     delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 234:
-#line 2393 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 236:
+#line 2402 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *PT = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get());
     if (!PT)
@@ -3995,8 +4033,8 @@
     delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 235:
-#line 2406 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 237:
+#line 2415 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PointerType>(yyvsp[-2].TypeVal->get()))
       ThrowException("getelementptr insn requires pointer operand!");
@@ -4241,7 +4279,7 @@
     }
   return 1;
 }
-#line 2429 "/Volumes/Projects/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2438 "/Users/sabre/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
 
 int yyerror(const char *ErrorMsg) {
   std::string where 


Index: llvm/lib/AsmParser/llvmAsmParser.y.cvs
diff -u llvm/lib/AsmParser/llvmAsmParser.y.cvs:1.3 llvm/lib/AsmParser/llvmAsmParser.y.cvs:1.4
--- llvm/lib/AsmParser/llvmAsmParser.y.cvs:1.3	Fri Apr  7 20:18:56 2006
+++ llvm/lib/AsmParser/llvmAsmParser.y.cvs	Fri Apr  7 22:55:17 2006
@@ -1547,8 +1547,17 @@
     if ($5->getType() != Type::UIntTy)
       ThrowException("Second operand of extractelement must be uint!");
     $$ = ConstantExpr::getExtractElement($3, $5);
+  }
+  | INSERTELEMENT '(' ConstVal ',' ConstVal ',' ConstVal ')' {
+    $$ = ConstantExpr::getInsertElement($3, $5, $7);
+  }
+  | SHUFFLEVECTOR '(' ConstVal ',' ConstVal ',' ConstVal ')' {
+    if (!ShuffleVectorInst::isValidOperands($3, $5, $7))
+      ThrowException("Invalid shufflevector operands!");
+    $$ = ConstantExpr::getShuffleVector($3, $5, $7);
   };
 
+
 // ConstVector - A list of comma separated constants.
 ConstVector : ConstVector ',' ConstVal {
     ($$ = $1)->push_back($3);
@@ -2261,8 +2270,8 @@
     $$ = new InsertElementInst($2, $4, $6);
   }
   | SHUFFLEVECTOR ResolvedVal ',' ResolvedVal ',' ResolvedVal {
-  if (!ShuffleVectorInst::isValidOperands($2, $4, $6))
-    ThrowException("Invalid shufflevector operands!");
+    if (!ShuffleVectorInst::isValidOperands($2, $4, $6))
+      ThrowException("Invalid shufflevector operands!");
     $$ = new ShuffleVectorInst($2, $4, $6);
   }
   | PHI_TOK PHIList {






More information about the llvm-commits mailing list