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

Robert L. Bocchino Jr. bocchino at persephone.cs.uiuc.edu
Tue Jan 10 11:06:27 PST 2006



Changes in directory llvm/lib/AsmParser:

Lexer.cpp updated: 1.12 -> 1.13
Lexer.l updated: 1.66 -> 1.67
llvmAsmParser.cpp updated: 1.27 -> 1.28
llvmAsmParser.h updated: 1.12 -> 1.13
llvmAsmParser.y updated: 1.241 -> 1.242
---
Log message:

Added lexer and parser support for the extractelement operation.



---
Diffs of the changes:  (+1161 -1103)

 Lexer.cpp         |  742 +++++++++++++-------------
 Lexer.l           |    2 
 llvmAsmParser.cpp | 1496 +++++++++++++++++++++++++++---------------------------
 llvmAsmParser.h   |    5 
 llvmAsmParser.y   |   19 
 5 files changed, 1161 insertions(+), 1103 deletions(-)


Index: llvm/lib/AsmParser/Lexer.cpp
diff -u llvm/lib/AsmParser/Lexer.cpp:1.12 llvm/lib/AsmParser/Lexer.cpp:1.13
--- llvm/lib/AsmParser/Lexer.cpp:1.12	Fri Nov 11 18:11:48 2005
+++ llvm/lib/AsmParser/Lexer.cpp	Tue Jan 10 13:04:31 2006
@@ -20,7 +20,7 @@
 /* A lexical scanner generated by flex */
 
 /* Scanner skeleton version:
- * $Header: /private/var/automount/shared/PublicCVS/llvm/lib/AsmParser/Lexer.cpp,v 1.12 2005/11/12 00:11:48 lattner Exp $
+ * $Header: /private/var/automount/shared/PublicCVS/llvm/lib/AsmParser/Lexer.cpp,v 1.13 2006/01/10 19:04:31 bocchino Exp $
  */
 
 #define FLEX_SCANNER
@@ -308,32 +308,32 @@
 	*yy_cp = '\0'; \
 	yy_c_buf_p = yy_cp;
 
-#define YY_NUM_RULES 101
-#define YY_END_OF_BUFFER 102
-static yyconst short int yy_acclist[179] =
+#define YY_NUM_RULES 102
+#define YY_END_OF_BUFFER 103
+static yyconst short int yy_acclist[180] =
     {   0,
-      102,  100,  101,   99,  100,  101,   99,  101,  100,  101,
-      100,  101,  100,  101,  100,  101,  100,  101,  100,  101,
-       92,  100,  101,   92,  100,  101,    1,  100,  101,  100,
-      101,  100,  101,  100,  101,  100,  101,  100,  101,  100,
-      101,  100,  101,  100,  101,  100,  101,  100,  101,  100,
-      101,  100,  101,  100,  101,  100,  101,  100,  101,  100,
-      101,  100,  101,  100,  101,  100,  101,  100,  101,  100,
-      101,   91,   89,   88,   88,   95,   93,   97,   92,    1,
-       77,   34,   59,   20,   91,   88,   88,   96,   97,   17,
-       97,   98,   53,   58,   30,   35,   56,    3,   44,   55,
-
-       22,   67,   57,   76,   71,   72,   54,   60,   90,   97,
-       97,   39,   68,   69,   84,   85,   46,   19,   94,   23,
-        4,   51,   45,   38,   11,   97,   32,    2,    5,   48,
+      103,  101,  102,  100,  101,  102,  100,  102,  101,  102,
+      101,  102,  101,  102,  101,  102,  101,  102,  101,  102,
+       93,  101,  102,   93,  101,  102,    1,  101,  102,  101,
+      102,  101,  102,  101,  102,  101,  102,  101,  102,  101,
+      102,  101,  102,  101,  102,  101,  102,  101,  102,  101,
+      102,  101,  102,  101,  102,  101,  102,  101,  102,  101,
+      102,  101,  102,  101,  102,  101,  102,  101,  102,  101,
+      102,   92,   90,   89,   89,   96,   94,   98,   93,    1,
+       77,   34,   59,   20,   92,   89,   89,   97,   98,   17,
+       98,   99,   53,   58,   30,   35,   56,    3,   44,   55,
+
+       22,   67,   57,   76,   71,   72,   54,   60,   91,   98,
+       98,   39,   68,   69,   84,   85,   46,   19,   95,   23,
+        4,   51,   45,   38,   11,   98,   32,    2,    5,   48,
        50,   40,   62,   66,   64,   65,   63,   61,   42,   86,
        41,   47,   18,   74,   83,   37,   49,   27,   21,   36,
         7,   79,   29,   82,   52,   70,   78,   24,   25,   80,
        43,   75,   73,    6,   26,   33,    8,   14,    9,   10,
-       31,   12,   28,   81,   87,   13,   15,   16
+       31,   12,   28,   81,   87,   13,   88,   15,   16
     } ;
 
-static yyconst short int yy_accept[406] =
+static yyconst short int yy_accept[417] =
     {   0,
         1,    1,    1,    2,    4,    7,    9,   11,   13,   15,
        17,   19,   21,   24,   27,   30,   32,   34,   36,   38,
@@ -358,28 +358,29 @@
       110,  111,  111,  111,  111,  112,  112,  112,  112,  112,
 
       113,  114,  115,  115,  115,  115,  115,  115,  115,  115,
-      115,  115,  115,  115,  116,  116,  116,  116,  116,  116,
-      116,  116,  116,  117,  118,  118,  119,  119,  119,  120,
+      115,  115,  115,  115,  115,  116,  116,  116,  116,  116,
+      116,  116,  116,  116,  117,  118,  118,  119,  119,  119,
       120,  120,  120,  120,  120,  120,  120,  120,  120,  120,
-      121,  121,  121,  122,  123,  123,  124,  124,  124,  124,
-      124,  124,  124,  124,  124,  124,  125,  125,  126,  126,
-      127,  128,  128,  128,  129,  129,  129,  129,  129,  129,
-      129,  129,  129,  130,  130,  131,  131,  131,  131,  131,
-      131,  132,  132,  132,  132,  132,  132,  133,  133,  133,
-      134,  135,  136,  137,  138,  139,  140,  141,  141,  141,
-
-      141,  142,  143,  144,  144,  144,  144,  144,  144,  145,
-      145,  145,  145,  146,  146,  147,  147,  147,  147,  148,
-      149,  150,  150,  151,  151,  152,  152,  152,  153,  153,
-      154,  155,  156,  156,  156,  157,  158,  159,  160,  160,
-      160,  161,  162,  163,  164,  164,  164,  164,  164,  165,
-      166,  166,  166,  166,  166,  166,  166,  167,  167,  167,
-      167,  167,  167,  168,  169,  169,  169,  170,  171,  171,
-      171,  171,  172,  172,  173,  173,  173,  173,  173,  173,
-      173,  173,  173,  173,  173,  173,  173,  173,  173,  174,
-      174,  175,  175,  175,  175,  175,  175,  176,  176,  177,
+      120,  121,  121,  121,  122,  123,  123,  124,  124,  124,
+      124,  124,  124,  124,  124,  124,  124,  125,  125,  126,
+      126,  127,  128,  128,  128,  129,  129,  129,  129,  129,
+      129,  129,  129,  129,  129,  130,  130,  131,  131,  131,
+      131,  131,  131,  132,  132,  132,  132,  132,  132,  133,
+      133,  133,  134,  135,  136,  137,  138,  139,  140,  141,
+
+      141,  141,  141,  142,  143,  144,  144,  144,  144,  144,
+      144,  145,  145,  145,  145,  146,  146,  147,  147,  147,
+      147,  148,  149,  150,  150,  150,  151,  151,  152,  152,
+      152,  153,  153,  154,  155,  156,  156,  156,  157,  158,
+      159,  160,  160,  160,  161,  162,  163,  164,  164,  164,
+      164,  164,  165,  166,  166,  166,  166,  166,  166,  166,
+      166,  167,  167,  167,  167,  167,  167,  168,  169,  169,
+      169,  169,  170,  171,  171,  171,  171,  172,  172,  173,
+      173,  173,  173,  173,  173,  173,  173,  173,  173,  173,
+      173,  173,  173,  173,  173,  173,  173,  174,  174,  175,
 
-      177,  178,  178,  179,  179
+      175,  175,  175,  175,  175,  175,  175,  176,  176,  177,
+      177,  178,  179,  179,  180,  180
     } ;
 
 static yyconst int yy_ec[256] =
@@ -423,105 +424,107 @@
         3
     } ;
 
-static yyconst short int yy_base[410] =
+static yyconst short int yy_base[421] =
     {   0,
-        0,    0,  850,  851,  851,  851,  845,  836,   34,   36,
+        0,    0,  872,  873,  873,  873,  867,  858,   34,   36,
        38,   42,   46,   50,    0,   51,   54,   53,   56,   61,
        76,   77,   79,   80,   82,   83,   84,   90,   31,  111,
-       94,  140,  113,   55,  110,  116,  843,  851,  834,  851,
+       94,  140,  113,   55,  110,  116,  865,  873,  856,  873,
         0,  128,  131,  144,  150,  124,  160,  167,  172,    0,
-      136,  139,  168,  100,   41,  145,  114,  833,  173,  183,
+      136,  139,  168,  100,   41,  145,  114,  855,  173,  183,
       184,  185,  161,  187,  189,  191,  193,  133,  194,  196,
       200,  202,  205,  206,  209,  217,   89,  210,  213,  216,
-       57,  832,  207,  224,  223,  227,  229,  233,  243,  235,
-      238,  242,  247,  831,  249,  250,  251,  259,  245,  267,
+       57,  854,  207,  224,  223,  227,  229,  233,  243,  235,
+      238,  242,  247,  853,  249,  250,  251,  259,  245,  267,
 
-      265,  266,  272,  281,  274,  278,  830,    0,  291,  293,
-      829,  305,  311,    0,  828,  241,  282,  827,  312,  284,
-      826,  298,  301,  294,  825,  315,  318,  319,  320,  824,
+      265,  266,  272,  281,  274,  278,  852,    0,  291,  293,
+      851,  305,  311,    0,  850,  241,  282,  849,  312,  284,
+      848,  298,  301,  294,  847,  315,  318,  319,  320,  846,
       322,  324,  327,  329,  325,  326,  339,  332,  333,  345,
-      331,  343,  330,  350,  353,  354,  355,  357,  356,  823,
-      822,  358,  360,  821,  361,  820,  819,  383,  364,  372,
-      365,  394,  818,  362,  817,  375,  816,  376,  369,  397,
-      379,  401,  404,  400,  402,  407,  406,  412,  417,  414,
-      416,  428,  418,  421,  432,  431,  435,  815,  419,  851,
-      443,  449,  452,  455,  458,  443,  459,  461,  462,  814,
-
-      813,  812,  463,  464,  467,  468,  465,  469,  471,  473,
-      475,  476,  477,  811,  482,  486,  489,  485,  488,  492,
-      420,  493,  810,  809,  495,  808,  496,  499,    0,  501,
-      503,  504,  505,  509,  512,  514,  515,  517,  524,  807,
-      519,  527,  806,  805,  530,  804,  529,  533,  534,  536,
-      537,  544,  545,  546,  548,  803,  549,  802,  550,  553,
-      801,  553,  556,  800,  555,  568,  559,  561,  560,  570,
-      571,  574,  799,  576,  798,  577,  578,  579,  581,  588,
-      797,  582,  592,  589,  600,  602,  796,  585,  584,  795,
-      794,  793,  792,  791,  790,  789,  788,  604,  590,  605,
-
-      787,  786,  785,  606,  608,  610,  612,  617,  784,  619,
-      620,  621,  783,  623,  782,  622,  625,  624,  781,  780,
-      779,  626,  778,  627,  777,  632,  640,  776,  630,  775,
-      774,  773,  644,  647,  772,  771,  770,  769,  648,  650,
-      768,  765,  756,  755,  651,  654,  652,  649,  753,  752,
-      653,  670,  656,  659,  671,  655,  751,  658,  676,  675,
-      660,  678,  750,  749,  682,  685,  748,  747,  687,  686,
-      688,  746,  690,  745,  691,  692,  693,  696,  695,  702,
-      698,  704,  706,  705,  711,  713,  712,  716,  744,  721,
-      739,  718,  719,  723,  724,  725,  738,  726,  737,  733,
+      331,  343,  330,  353,  354,  355,  356,  358,  357,  845,
+      844,  359,  360,  843,  365,  842,  841,  385,  363,  366,
+      361,  396,  840,  376,  839,  377,  838,  379,  385,  399,
+      401,  403,  406,  381,  408,  409,  414,  416,  418,  417,
+      419,  424,  421,  425,  367,  435,  422,  837,  428,  873,
+      440,  449,  452,  454,  457,  441,  459,  460,  461,  836,
+
+      835,  834,  462,  463,  465,  467,  464,  468,  471,  472,
+      476,  474,  475,  484,  833,  485,  487,  488,  489,  491,
+      494,  495,  496,  832,  831,  498,  830,  499,  501,    0,
+      503,  502,  514,  506,  508,  518,  519,  520,  525,  522,
+      829,  530,  532,  828,  827,  533,  826,  535,  538,  536,
+      540,  537,  544,  550,  551,  552,  825,  553,  824,  555,
+      558,  823,  558,  559,  822,  566,  564,  560,  572,  561,
+      574,  575,  577,  580,  821,  582,  820,  583,  584,  585,
+      586,  588,  819,  590,  593,  604,  596,  600,  818,  595,
+      606,  817,  816,  815,  814,  813,  812,  811,  810,  608,
+
+      610,  612,  809,  808,  807,  614,  615,  616,  617,  619,
+      806,  618,  623,  625,  805,  626,  804,  627,  634,  628,
+      803,  802,  801,  646,  631,  800,  632,  799,  638,  652,
+      798,  649,  797,  796,  795,  645,  653,  794,  793,  792,
+      791,  655,  659,  790,  789,  786,  777,  658,  661,  660,
+      662,  776,  774,  663,  667,  672,  665,  664,  675,  669,
+      772,  683,  687,  680,  686,  690,  771,  770,  693,  694,
+      695,  769,  767,  697,  698,  696,  765,  699,  764,  705,
+      700,  715,  703,  704,  706,  719,  722,  707,  716,  725,
+      727,  728,  729,  731,  730,  733,  762,  736,  760,  735,
 
-      657,  736,  422,  851,  769,  771,  379,  775,  375
+      741,  742,  743,  747,  749,  750,  759,  751,  752,  757,
+      635,  504,  754,  432,  873,  790,  792,  382,  796,  380
     } ;
 
-static yyconst short int yy_def[410] =
+static yyconst short int yy_def[421] =
     {   0,
-      404,    1,  404,  404,  404,  404,  405,  406,  407,  404,
-      406,  406,  406,  406,  408,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  405,  404,  406,  404,
-      409,  409,  404,  404,  406,  406,  406,  406,  406,  408,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-
-      406,  406,  406,  406,  406,  406,  404,  409,  409,  404,
-      406,  406,  406,   49,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,   49,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  404,
-      404,  404,  404,  406,  406,  406,  406,  406,  406,  406,
-
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  158,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  404,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
-      406,  406,  406,  406,  406,  406,  406,  406,  406,  406,
+      415,    1,  415,  415,  415,  415,  416,  417,  418,  415,
+      417,  417,  417,  417,  419,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  416,  415,  417,  415,
+      420,  420,  415,  415,  417,  417,  417,  417,  417,  419,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+
+      417,  417,  417,  417,  417,  417,  415,  420,  420,  415,
+      417,  417,  417,   49,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,   49,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  415,
+      415,  415,  415,  417,  417,  417,  417,  417,  417,  417,
+
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  158,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      415,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
 
-      406,  406,  406,    0,  404,  404,  404,  404,  404
+      417,  417,  417,  417,  417,  417,  417,  417,  417,  417,
+      417,  417,  417,  417,    0,  415,  415,  415,  415,  415
     } ;
 
-static yyconst short int yy_nxt[893] =
+static yyconst short int yy_nxt[915] =
     {   0,
         4,    5,    6,    7,    8,    9,   10,   11,   12,   13,
        14,    4,   15,    8,    8,    8,   16,   17,   18,   19,
@@ -561,70 +564,72 @@
       195,  195,   40,   40,  200,  113,   40,  201,  202,   40,
        40,   40,  198,   40,  203,   40,   40,   40,   40,  207,
        40,   40,   40,   40,   40,  205,  206,  209,  208,  210,
-       40,  204,  214,  215,   40,  213,   40,  217,  211,  219,
-      212,   40,  216,  218,   40,   40,   40,   40,   40,   40,
-      220,   40,   40,   40,  223,   40,   40,  108,  221,  224,
-       40,   41,  225,   40,  226,  232,   40,   40,  222,  228,
-       40,  227,  229,  229,  237,  240,  229,  229,  230,  229,
-
-      229,  229,  229,  229,  229,   40,  231,  238,   40,  242,
-      239,   40,   40,   40,  233,   40,  234,   40,   40,  241,
-      235,  243,  236,   40,  244,   40,  248,   40,   40,   40,
-       40,   40,   40,   40,  245,  247,  246,  250,  251,   40,
-      249,  255,   40,   40,  253,  252,   40,  257,  259,  282,
-      254,  256,  191,  191,   40,  193,  193,  192,  260,  260,
-      258,  260,  260,  192,  195,  195,   40,  195,  195,   40,
-       40,  261,   40,   40,   40,   40,   40,  262,   40,   40,
-       40,  265,   40,  267,   40,  270,   40,   40,   40,  263,
-      264,  269,  268,   40,  274,  273,   40,   40,  266,   40,
-
-       40,  271,  277,   40,   40,  272,   40,   40,  276,  278,
-       40,  275,   40,  280,   40,   40,   40,  279,  281,  283,
-       40,  287,  289,   40,  284,   40,   40,  288,   40,  291,
-       40,  285,  293,  286,  295,   40,  290,  297,   40,  299,
-       40,   40,  298,  292,   40,   40,  294,   40,   40,  296,
-      301,  302,  305,  300,  303,   40,   40,   40,  304,   40,
-       40,   40,  260,  260,   40,  306,   40,   40,  309,  313,
-       40,   40,   40,  315,  312,  314,  307,  308,  318,   40,
-      319,   40,   40,  311,  316,   40,  310,   40,   40,   40,
-       40,  317,   40,   40,  323,   40,   40,  324,  320,   40,
-
-       40,   40,  322,   40,  325,  321,  326,  331,  328,  327,
-      329,   40,  330,   40,  334,   40,   40,   40,  335,   40,
-      332,   40,  333,   40,  337,  338,  340,  336,   40,  341,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,  343,
-      339,   40,  351,   40,  345,  349,  342,  347,  355,  346,
-      348,   40,  353,  344,  352,   40,  354,  350,   40,   40,
-       40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,   40,  358,  359,  370,  357,  356,  360,  361,  364,
-      362,   40,   40,  363,  366,  367,   40,   40,  369,   40,
-      365,  368,  371,   40,  373,  372,   40,   40,   40,   40,
-
-      374,   40,   40,   40,   40,  379,   40,   40,  382,   40,
-      375,  377,  378,   40,  380,   40,   40,   40,  386,  376,
-      384,  385,   40,   40,   40,  381,  389,   40,  387,   40,
-       40,  391,   40,  383,   40,   40,   40,   40,  388,  392,
-      394,  395,  396,  399,   40,  390,  393,   40,   40,   40,
-       40,  397,  398,  402,  401,   40,   40,   40,   40,   40,
-       40,   40,   40,   40,   40,  400,   40,   40,  403,   37,
-       37,   37,   37,   39,   39,   50,   40,   50,   50,   40,
+       40,  204,  215,  216,   40,  214,   40,  218,  212,  220,
+      213,  211,  217,  219,   40,   40,   40,   40,   40,   40,
+       40,   40,   40,  221,   40,  224,   40,   40,   40,  222,
+      225,  233,  108,  226,   41,  227,  257,   40,   40,  223,
+       40,  228,   40,  229,  230,  230,   40,  231,  230,  230,
+
+      232,  230,  230,  230,  230,  230,  230,   40,  238,  239,
+       40,  241,   40,  240,   40,  246,  234,   40,  235,   40,
+       40,  242,  236,  244,  237,   40,  245,   40,   40,   40,
+       40,  243,   40,   40,  249,   40,   40,  248,  251,   40,
+      254,  252,  247,   40,  250,  256,   40,  259,  253,  191,
+      191,  258,   40,  255,  192,  193,  193,  260,  261,  261,
+      192,  261,  261,  195,  195,   40,  195,  195,   40,  262,
+       40,   40,   40,   40,   40,   40,   40,  263,   40,   40,
+      266,  268,   40,   40,  271,   40,   40,   40,  264,  265,
+      270,  269,  274,  276,  275,   40,   40,  267,   40,   40,
+
+       40,  272,   40,  279,  273,   40,   40,   40,  280,   40,
+       40,  278,   40,   40,   40,   40,  282,   40,  277,   40,
+      283,  281,  285,  289,  284,   40,  290,  286,  293,   40,
+       40,   40,  291,   40,  287,  288,   40,  292,  295,  297,
+      300,   40,  294,   40,   40,  299,   40,   40,   40,   40,
+      301,   40,  296,  303,  298,   40,  307,  304,  302,  305,
+      306,   40,   40,   40,   40,  308,   40,  261,  261,   40,
+       40,   40,   40,  311,  315,   40,  309,   40,  316,  314,
+      318,  321,  310,   40,  317,   40,   40,  313,   40,  320,
+      312,   40,  319,   40,   40,   40,   40,   40,  325,   40,
+
+      326,   40,  322,  327,   40,  324,   40,   40,  331,  323,
+      328,   40,  329,  333,  330,   40,  335,   40,  332,   40,
+      336,   40,  334,   40,  337,   40,   40,   40,   40,   40,
+       40,  339,  341,  343,   40,  344,   40,   40,   40,   40,
+      338,  346,   40,   40,  340,   40,   40,  348,  342,   40,
+      350,  345,  347,  349,  352,  351,   40,   40,  357,  356,
+       40,  353,  354,   40,   40,  355,   40,  359,  358,   40,
+       40,   40,   40,   40,   40,   40,   40,  360,   40,  362,
+       40,  361,  363,   40,  364,  365,   40,  369,  366,  368,
+      372,   40,  370,  371,   40,  373,  367,   40,   40,  375,
+
+      377,   40,  374,  376,   40,   40,   40,   40,   40,   40,
+       40,   40,  379,  385,   40,   40,   40,   40,   40,  380,
+      378,  383,  381,  386,  384,  387,   40,   40,  391,  382,
+       40,  389,  392,   40,  388,  393,   40,  395,   40,   40,
+       40,   40,   40,  390,   40,  397,   40,   40,  399,  394,
+      396,  401,   40,   40,   40,  400,  404,  403,   40,  405,
+       40,   40,   40,   40,  402,   40,  409,  398,   40,  406,
+       40,   40,  408,   40,  407,   40,   40,  413,   40,  412,
+       40,   40,   40,   40,  411,   40,  414,   40,   40,  410,
+       37,   37,   37,   37,   39,   39,   50,   40,   50,   50,
+
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
        40,   40,   40,   40,   40,   40,   40,   40,   40,   40,
-       40,  190,   40,   40,   40,   40,  107,   40,   38,  404,
-        3,  404,  404,  404,  404,  404,  404,  404,  404,  404,
-      404,  404,  404,  404,  404,  404,  404,  404,  404,  404,
-      404,  404,  404,  404,  404,  404,  404,  404,  404,  404,
-      404,  404,  404,  404,  404,  404,  404,  404,  404,  404,
-      404,  404
+       40,   40,   40,  190,   40,   40,   40,   40,  107,   40,
+       38,  415,    3,  415,  415,  415,  415,  415,  415,  415,
+      415,  415,  415,  415,  415,  415,  415,  415,  415,  415,
+      415,  415,  415,  415,  415,  415,  415,  415,  415,  415,
 
+      415,  415,  415,  415,  415,  415,  415,  415,  415,  415,
+      415,  415,  415,  415
     } ;
 
-static yyconst short int yy_chk[893] =
+static yyconst short int yy_chk[915] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -665,66 +670,68 @@
       128,  129,  119,  131,  126,  132,  135,  136,  133,  131,
       134,  143,  141,  138,  139,  128,  129,  133,  132,  134,
       137,  127,  138,  139,  142,  137,  140,  141,  135,  143,
-      136,  144,  140,  142,  145,  146,  147,  149,  148,  152,
-      144,  153,  155,  164,  147,  159,  161,  409,  145,  148,
-      169,  407,  149,  160,  152,  161,  166,  168,  146,  155,
-      171,  153,  158,  158,  164,  169,  158,  158,  159,  158,
-
-      158,  158,  158,  158,  158,  162,  160,  166,  170,  171,
-      168,  174,  172,  175,  162,  173,  162,  177,  176,  170,
-      162,  172,  162,  178,  173,  180,  177,  181,  179,  183,
-      189,  221,  184,  403,  174,  176,  175,  179,  180,  182,
-      178,  184,  186,  185,  182,  181,  187,  186,  189,  221,
-      183,  185,  191,  191,  196,  192,  192,  191,  192,  192,
-      187,  193,  193,  191,  194,  194,  194,  195,  195,  195,
-      197,  196,  198,  199,  203,  204,  207,  197,  205,  206,
-      208,  203,  209,  205,  210,  208,  211,  212,  213,  198,
-      199,  207,  206,  215,  212,  211,  218,  216,  204,  219,
-
-      217,  209,  216,  220,  222,  210,  225,  227,  215,  217,
-      228,  213,  230,  219,  231,  232,  233,  218,  220,  222,
-      234,  230,  232,  235,  225,  236,  237,  231,  238,  234,
-      241,  227,  235,  228,  236,  239,  233,  238,  242,  241,
-      247,  245,  239,  234,  248,  249,  235,  250,  251,  237,
-      245,  247,  250,  242,  248,  252,  253,  254,  249,  255,
-      257,  259,  260,  260,  262,  251,  265,  263,  254,  262,
-      267,  269,  268,  265,  259,  263,  252,  253,  268,  266,
-      269,  270,  271,  257,  266,  272,  255,  274,  276,  277,
-      278,  267,  279,  282,  274,  289,  288,  276,  270,  280,
-
-      284,  299,  272,  283,  277,  271,  278,  284,  280,  279,
-      282,  285,  283,  286,  288,  298,  300,  304,  289,  305,
-      285,  306,  286,  307,  299,  300,  305,  298,  308,  306,
-      310,  311,  312,  316,  314,  318,  317,  322,  324,  308,
-      304,  329,  322,  326,  311,  317,  307,  314,  329,  312,
-      316,  327,  326,  310,  324,  333,  327,  318,  334,  339,
-      348,  340,  345,  347,  351,  346,  356,  353,  401,  358,
-      354,  361,  339,  340,  358,  334,  333,  345,  346,  351,
-      347,  352,  355,  348,  353,  354,  360,  359,  356,  362,
-      352,  355,  359,  365,  361,  360,  366,  370,  369,  371,
-
-      362,  373,  375,  376,  377,  371,  379,  378,  376,  381,
-      365,  369,  370,  380,  373,  382,  384,  383,  380,  366,
-      378,  379,  385,  387,  386,  375,  383,  388,  381,  392,
-      393,  385,  390,  377,  394,  395,  396,  398,  382,  386,
-      388,  390,  392,  395,  400,  384,  387,  402,  399,  397,
-      391,  393,  394,  400,  398,  389,  374,  372,  368,  367,
-      364,  363,  357,  350,  349,  396,  344,  343,  402,  405,
-      405,  405,  405,  406,  406,  408,  342,  408,  408,  341,
-      338,  337,  336,  335,  332,  331,  330,  328,  325,  323,
-      321,  320,  319,  315,  313,  309,  303,  302,  301,  297,
-
-      296,  295,  294,  293,  292,  291,  290,  287,  281,  275,
-      273,  264,  261,  258,  256,  246,  244,  243,  240,  226,
-      224,  223,  214,  202,  201,  200,  188,  167,  165,  163,
-      157,  156,  154,  151,  150,  130,  125,  121,  118,  115,
-      111,  107,   94,   82,   58,   39,   37,    8,    7,    3,
-      404,  404,  404,  404,  404,  404,  404,  404,  404,  404,
-      404,  404,  404,  404,  404,  404,  404,  404,  404,  404,
-      404,  404,  404,  404,  404,  404,  404,  404,  404,  404,
-      404,  404,  404,  404,  404,  404,  404,  404,  404,  404,
-      404,  404
+      136,  134,  140,  142,  144,  145,  146,  147,  149,  148,
+      152,  153,  161,  144,  159,  147,  155,  160,  185,  145,
+      148,  161,  420,  149,  418,  152,  185,  164,  166,  146,
+      168,  153,  174,  155,  158,  158,  169,  159,  158,  158,
+
+      160,  158,  158,  158,  158,  158,  158,  162,  164,  166,
+      170,  169,  171,  168,  172,  174,  162,  173,  162,  175,
+      176,  170,  162,  172,  162,  177,  173,  178,  180,  179,
+      181,  171,  183,  187,  177,  182,  184,  176,  179,  189,
+      182,  180,  175,  414,  178,  184,  186,  187,  181,  191,
+      191,  186,  196,  183,  191,  192,  192,  189,  192,  192,
+      191,  193,  193,  194,  194,  194,  195,  195,  195,  196,
+      197,  198,  199,  203,  204,  207,  205,  197,  206,  208,
+      203,  205,  209,  210,  208,  212,  213,  211,  198,  199,
+      207,  206,  211,  213,  212,  214,  216,  204,  217,  218,
+
+      219,  209,  220,  217,  210,  221,  222,  223,  218,  226,
+      228,  216,  229,  232,  231,  412,  220,  234,  214,  235,
+      221,  219,  223,  231,  222,  233,  232,  226,  235,  236,
+      237,  238,  233,  240,  228,  229,  239,  234,  236,  237,
+      240,  242,  235,  243,  246,  239,  248,  250,  252,  249,
+      242,  251,  236,  246,  238,  253,  251,  248,  243,  249,
+      250,  254,  255,  256,  258,  252,  260,  261,  261,  263,
+      264,  268,  270,  255,  263,  267,  253,  266,  264,  260,
+      267,  270,  254,  269,  266,  271,  272,  258,  273,  269,
+      256,  274,  268,  276,  278,  279,  280,  281,  274,  282,
+
+      276,  284,  271,  278,  285,  273,  290,  287,  282,  272,
+      279,  288,  280,  285,  281,  286,  287,  291,  284,  300,
+      288,  301,  286,  302,  290,  306,  307,  308,  309,  312,
+      310,  300,  302,  307,  313,  308,  314,  316,  318,  320,
+      291,  310,  325,  327,  301,  319,  411,  313,  306,  329,
+      316,  309,  312,  314,  319,  318,  336,  324,  329,  327,
+      332,  320,  324,  330,  337,  325,  342,  332,  330,  348,
+      343,  350,  349,  351,  354,  358,  357,  336,  355,  342,
+      360,  337,  343,  356,  348,  349,  359,  355,  350,  354,
+      358,  364,  356,  357,  362,  359,  351,  365,  363,  362,
+
+      364,  366,  360,  363,  369,  370,  371,  376,  374,  375,
+      378,  381,  366,  376,  383,  384,  380,  385,  388,  369,
+      365,  374,  370,  378,  375,  380,  382,  389,  384,  371,
+      386,  382,  385,  387,  381,  386,  390,  388,  391,  392,
+      393,  395,  394,  383,  396,  390,  400,  398,  392,  387,
+      389,  394,  401,  402,  403,  393,  398,  396,  404,  400,
+      405,  406,  408,  409,  395,  413,  404,  391,  410,  401,
+      407,  399,  403,  397,  402,  379,  377,  410,  373,  408,
+      372,  368,  367,  361,  406,  353,  413,  352,  347,  405,
+      416,  416,  416,  416,  417,  417,  419,  346,  419,  419,
+
+      345,  344,  341,  340,  339,  338,  335,  334,  333,  331,
+      328,  326,  323,  322,  321,  317,  315,  311,  305,  304,
+      303,  299,  298,  297,  296,  295,  294,  293,  292,  289,
+      283,  277,  275,  265,  262,  259,  257,  247,  245,  244,
+      241,  227,  225,  224,  215,  202,  201,  200,  188,  167,
+      165,  163,  157,  156,  154,  151,  150,  130,  125,  121,
+      118,  115,  111,  107,   94,   82,   58,   39,   37,    8,
+        7,    3,  415,  415,  415,  415,  415,  415,  415,  415,
+      415,  415,  415,  415,  415,  415,  415,  415,  415,  415,
+      415,  415,  415,  415,  415,  415,  415,  415,  415,  415,
 
+      415,  415,  415,  415,  415,  415,  415,  415,  415,  415,
+      415,  415,  415,  415
     } ;
 
 static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
@@ -741,7 +748,7 @@
 #define YY_MORE_ADJ 0
 #define YY_RESTORE_YY_MORE_OFFSET
 char *yytext;
-#line 1 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 1 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 #define INITIAL 0
 /*===-- Lexer.l - Scanner for llvm assembly files --------------*- C++ -*--===//
 //
@@ -756,7 +763,7 @@
 //
 //===----------------------------------------------------------------------===*/
 #define YY_NEVER_INTERACTIVE 1
-#line 28 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 28 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 #include "ParserInternals.h"
 #include "llvm/Module.h"
 #include <list>
@@ -882,7 +889,7 @@
 /* HexIntConstant - Hexadecimal constant generated by the CFE to avoid forcing
  * it to deal with 64 bit numbers.
  */
-#line 886 "Lexer.cpp"
+#line 893 "Lexer.cpp"
 
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
@@ -1033,10 +1040,10 @@
 	register char *yy_cp, *yy_bp;
 	register int yy_act;
 
-#line 179 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 179 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 
 
-#line 1040 "Lexer.cpp"
+#line 1047 "Lexer.cpp"
 
 	if ( yy_init )
 		{
@@ -1084,14 +1091,14 @@
 			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 				{
 				yy_current_state = (int) yy_def[yy_current_state];
-				if ( yy_current_state >= 405 )
+				if ( yy_current_state >= 416 )
 					yy_c = yy_meta[(unsigned int) yy_c];
 				}
 			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 			*yy_state_ptr++ = yy_current_state;
 			++yy_cp;
 			}
-		while ( yy_current_state != 404 );
+		while ( yy_current_state != 415 );
 
 yy_find_action:
 		yy_current_state = *--yy_state_ptr;
@@ -1129,451 +1136,456 @@
 	{ /* beginning of action switch */
 case 1:
 YY_RULE_SETUP
-#line 181 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 181 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { /* Ignore comments for now */ }
 	YY_BREAK
 case 2:
 YY_RULE_SETUP
-#line 183 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 183 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return BEGINTOK; }
 	YY_BREAK
 case 3:
 YY_RULE_SETUP
-#line 184 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 184 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return ENDTOK; }
 	YY_BREAK
 case 4:
 YY_RULE_SETUP
-#line 185 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 185 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return TRUETOK;  }
 	YY_BREAK
 case 5:
 YY_RULE_SETUP
-#line 186 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 186 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return FALSETOK; }
 	YY_BREAK
 case 6:
 YY_RULE_SETUP
-#line 187 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 187 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return DECLARE; }
 	YY_BREAK
 case 7:
 YY_RULE_SETUP
-#line 188 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 188 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return GLOBAL; }
 	YY_BREAK
 case 8:
 YY_RULE_SETUP
-#line 189 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 189 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return CONSTANT; }
 	YY_BREAK
 case 9:
 YY_RULE_SETUP
-#line 190 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 190 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return INTERNAL; }
 	YY_BREAK
 case 10:
 YY_RULE_SETUP
-#line 191 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 191 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return LINKONCE; }
 	YY_BREAK
 case 11:
 YY_RULE_SETUP
-#line 192 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 192 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return WEAK; }
 	YY_BREAK
 case 12:
 YY_RULE_SETUP
-#line 193 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 193 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return APPENDING; }
 	YY_BREAK
 case 13:
 YY_RULE_SETUP
-#line 194 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 194 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return EXTERNAL; }    /* Deprecated, turn into external */
 	YY_BREAK
 case 14:
 YY_RULE_SETUP
-#line 195 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 195 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return EXTERNAL; }
 	YY_BREAK
 case 15:
 YY_RULE_SETUP
-#line 196 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 196 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return IMPLEMENTATION; }
 	YY_BREAK
 case 16:
 YY_RULE_SETUP
-#line 197 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 197 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return ZEROINITIALIZER; }
 	YY_BREAK
 case 17:
 YY_RULE_SETUP
-#line 198 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 198 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return DOTDOTDOT; }
 	YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 199 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 199 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return UNDEF; }
 	YY_BREAK
 case 19:
 YY_RULE_SETUP
-#line 200 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 200 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return NULL_TOK; }
 	YY_BREAK
 case 20:
 YY_RULE_SETUP
-#line 201 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 201 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return TO; }
 	YY_BREAK
 case 21:
 YY_RULE_SETUP
-#line 202 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 202 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Unwind, UNWIND); }
 	YY_BREAK
 case 22:
 YY_RULE_SETUP
-#line 203 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 203 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return NOT; }  /* Deprecated, turned into XOR */
 	YY_BREAK
 case 23:
 YY_RULE_SETUP
-#line 204 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 204 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return TAIL; }
 	YY_BREAK
 case 24:
 YY_RULE_SETUP
-#line 205 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 205 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return TARGET; }
 	YY_BREAK
 case 25:
 YY_RULE_SETUP
-#line 206 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 206 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return TRIPLE; }
 	YY_BREAK
 case 26:
 YY_RULE_SETUP
-#line 207 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 207 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return DEPLIBS; }
 	YY_BREAK
 case 27:
 YY_RULE_SETUP
-#line 208 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 208 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return ENDIAN; }
 	YY_BREAK
 case 28:
 YY_RULE_SETUP
-#line 209 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 209 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return POINTERSIZE; }
 	YY_BREAK
 case 29:
 YY_RULE_SETUP
-#line 210 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 210 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return LITTLE; }
 	YY_BREAK
 case 30:
 YY_RULE_SETUP
-#line 211 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 211 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return BIG; }
 	YY_BREAK
 case 31:
 YY_RULE_SETUP
-#line 212 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 212 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return VOLATILE; }
 	YY_BREAK
 case 32:
 YY_RULE_SETUP
-#line 213 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 213 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return ALIGN;  }
 	YY_BREAK
 case 33:
 YY_RULE_SETUP
-#line 214 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 214 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return SECTION; }
 	YY_BREAK
 case 34:
 YY_RULE_SETUP
-#line 216 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 216 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return CC_TOK; }
 	YY_BREAK
 case 35:
 YY_RULE_SETUP
-#line 217 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 217 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return CCC_TOK; }
 	YY_BREAK
 case 36:
 YY_RULE_SETUP
-#line 218 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 218 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return FASTCC_TOK; }
 	YY_BREAK
 case 37:
 YY_RULE_SETUP
-#line 219 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 219 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return COLDCC_TOK; }
 	YY_BREAK
 case 38:
 YY_RULE_SETUP
-#line 221 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 221 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::VoidTy  ; return VOID;   }
 	YY_BREAK
 case 39:
 YY_RULE_SETUP
-#line 222 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 222 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::BoolTy  ; return BOOL;   }
 	YY_BREAK
 case 40:
 YY_RULE_SETUP
-#line 223 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 223 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::SByteTy ; return SBYTE;  }
 	YY_BREAK
 case 41:
 YY_RULE_SETUP
-#line 224 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 224 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::UByteTy ; return UBYTE;  }
 	YY_BREAK
 case 42:
 YY_RULE_SETUP
-#line 225 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 225 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::ShortTy ; return SHORT;  }
 	YY_BREAK
 case 43:
 YY_RULE_SETUP
-#line 226 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 226 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::UShortTy; return USHORT; }
 	YY_BREAK
 case 44:
 YY_RULE_SETUP
-#line 227 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 227 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::IntTy   ; return INT;    }
 	YY_BREAK
 case 45:
 YY_RULE_SETUP
-#line 228 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 228 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::UIntTy  ; return UINT;   }
 	YY_BREAK
 case 46:
 YY_RULE_SETUP
-#line 229 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 229 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::LongTy  ; return LONG;   }
 	YY_BREAK
 case 47:
 YY_RULE_SETUP
-#line 230 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 230 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::ULongTy ; return ULONG;  }
 	YY_BREAK
 case 48:
 YY_RULE_SETUP
-#line 231 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 231 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::FloatTy ; return FLOAT;  }
 	YY_BREAK
 case 49:
 YY_RULE_SETUP
-#line 232 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 232 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::DoubleTy; return DOUBLE; }
 	YY_BREAK
 case 50:
 YY_RULE_SETUP
-#line 233 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 233 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.PrimType = Type::LabelTy ; return LABEL;  }
 	YY_BREAK
 case 51:
 YY_RULE_SETUP
-#line 234 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 234 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return TYPE;   }
 	YY_BREAK
 case 52:
 YY_RULE_SETUP
-#line 235 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 235 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return OPAQUE; }
 	YY_BREAK
 case 53:
 YY_RULE_SETUP
-#line 237 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 237 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Add, ADD); }
 	YY_BREAK
 case 54:
 YY_RULE_SETUP
-#line 238 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 238 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Sub, SUB); }
 	YY_BREAK
 case 55:
 YY_RULE_SETUP
-#line 239 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 239 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Mul, MUL); }
 	YY_BREAK
 case 56:
 YY_RULE_SETUP
-#line 240 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 240 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Div, DIV); }
 	YY_BREAK
 case 57:
 YY_RULE_SETUP
-#line 241 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 241 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Rem, REM); }
 	YY_BREAK
 case 58:
 YY_RULE_SETUP
-#line 242 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 242 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, And, AND); }
 	YY_BREAK
 case 59:
 YY_RULE_SETUP
-#line 243 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 243 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Or , OR ); }
 	YY_BREAK
 case 60:
 YY_RULE_SETUP
-#line 244 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 244 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, Xor, XOR); }
 	YY_BREAK
 case 61:
 YY_RULE_SETUP
-#line 245 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 245 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, SetNE, SETNE); }
 	YY_BREAK
 case 62:
 YY_RULE_SETUP
-#line 246 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 246 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, SetEQ, SETEQ); }
 	YY_BREAK
 case 63:
 YY_RULE_SETUP
-#line 247 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 247 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, SetLT, SETLT); }
 	YY_BREAK
 case 64:
 YY_RULE_SETUP
-#line 248 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 248 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, SetGT, SETGT); }
 	YY_BREAK
 case 65:
 YY_RULE_SETUP
-#line 249 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 249 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, SetLE, SETLE); }
 	YY_BREAK
 case 66:
 YY_RULE_SETUP
-#line 250 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 250 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(BinaryOpVal, SetGE, SETGE); }
 	YY_BREAK
 case 67:
 YY_RULE_SETUP
-#line 252 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 252 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, PHI, PHI_TOK); }
 	YY_BREAK
 case 68:
 YY_RULE_SETUP
-#line 253 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 253 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, Call, CALL); }
 	YY_BREAK
 case 69:
 YY_RULE_SETUP
-#line 254 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 254 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, Cast, CAST); }
 	YY_BREAK
 case 70:
 YY_RULE_SETUP
-#line 255 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 255 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, Select, SELECT); }
 	YY_BREAK
 case 71:
 YY_RULE_SETUP
-#line 256 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 256 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, Shl, SHL); }
 	YY_BREAK
 case 72:
 YY_RULE_SETUP
-#line 257 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 257 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, Shr, SHR); }
 	YY_BREAK
 case 73:
 YY_RULE_SETUP
-#line 258 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 258 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return VANEXT_old; }
 	YY_BREAK
 case 74:
 YY_RULE_SETUP
-#line 259 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 259 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return VAARG_old; }
 	YY_BREAK
 case 75:
 YY_RULE_SETUP
-#line 260 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 260 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(OtherOpVal, VAArg , VAARG); }
 	YY_BREAK
 case 76:
 YY_RULE_SETUP
-#line 261 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 261 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Ret, RET); }
 	YY_BREAK
 case 77:
 YY_RULE_SETUP
-#line 262 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 262 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Br, BR); }
 	YY_BREAK
 case 78:
 YY_RULE_SETUP
-#line 263 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 263 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Switch, SWITCH); }
 	YY_BREAK
 case 79:
 YY_RULE_SETUP
-#line 264 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 264 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Invoke, INVOKE); }
 	YY_BREAK
 case 80:
 YY_RULE_SETUP
-#line 265 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 265 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Unwind, UNWIND); }
 	YY_BREAK
 case 81:
 YY_RULE_SETUP
-#line 266 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 266 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(TermOpVal, Unreachable, UNREACHABLE); }
 	YY_BREAK
 case 82:
 YY_RULE_SETUP
-#line 268 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 268 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Malloc, MALLOC); }
 	YY_BREAK
 case 83:
 YY_RULE_SETUP
-#line 269 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 269 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Alloca, ALLOCA); }
 	YY_BREAK
 case 84:
 YY_RULE_SETUP
-#line 270 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 270 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Free, FREE); }
 	YY_BREAK
 case 85:
 YY_RULE_SETUP
-#line 271 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 271 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Load, LOAD); }
 	YY_BREAK
 case 86:
 YY_RULE_SETUP
-#line 272 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 272 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, Store, STORE); }
 	YY_BREAK
 case 87:
 YY_RULE_SETUP
-#line 273 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 273 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
 	YY_BREAK
 case 88:
+YY_RULE_SETUP
+#line 275 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
+{ RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
+	YY_BREAK
+case 89:
 YY_RULE_SETUP
-#line 276 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 278 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 {
                   UnEscapeLexed(yytext+1);
                   llvmAsmlval.StrVal = strdup(yytext+1);             // Skip %
                   return VAR_ID;
                 }
 	YY_BREAK
-case 89:
+case 90:
 YY_RULE_SETUP
-#line 281 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 283 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 {
                   yytext[strlen(yytext)-1] = 0;  // nuke colon
                   UnEscapeLexed(yytext);
@@ -1581,9 +1593,9 @@
                   return LABELSTR;
                 }
 	YY_BREAK
-case 90:
+case 91:
 YY_RULE_SETUP
-#line 287 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 289 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 {
                   yytext[strlen(yytext)-2] = 0;  // nuke colon, end quote
                   UnEscapeLexed(yytext+1);
@@ -1591,9 +1603,9 @@
                   return LABELSTR;
                 }
 	YY_BREAK
-case 91:
+case 92:
 YY_RULE_SETUP
-#line 294 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 296 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { // Note that we cannot unescape a string constant here!  The
                    // string constant might contain a \00 which would not be
                    // understood by the string stuff.  It is valid to make a
@@ -1604,14 +1616,14 @@
                    return STRINGCONSTANT;
                  }
 	YY_BREAK
-case 92:
+case 93:
 YY_RULE_SETUP
-#line 305 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 307 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.UInt64Val = atoull(yytext); return EUINT64VAL; }
 	YY_BREAK
-case 93:
+case 94:
 YY_RULE_SETUP
-#line 306 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 308 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 {
                   uint64_t Val = atoull(yytext+1);
                   // +1:  we have bigger negative range
@@ -1621,17 +1633,17 @@
                   return ESINT64VAL;
                 }
 	YY_BREAK
-case 94:
+case 95:
 YY_RULE_SETUP
-#line 314 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 316 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 {
                    llvmAsmlval.UInt64Val = HexIntToVal(yytext+3);
                    return yytext[0] == 's' ? ESINT64VAL : EUINT64VAL;
                  }
 	YY_BREAK
-case 95:
+case 96:
 YY_RULE_SETUP
-#line 319 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 321 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 {
                   uint64_t Val = atoull(yytext+1);
                   if ((unsigned)Val != Val)
@@ -1640,9 +1652,9 @@
                   return UINTVAL;
                 }
 	YY_BREAK
-case 96:
+case 97:
 YY_RULE_SETUP
-#line 326 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 328 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 {
                   uint64_t Val = atoull(yytext+2);
                   // +1:  we have bigger negative range
@@ -1652,18 +1664,18 @@
                   return SINTVAL;
                 }
 	YY_BREAK
-case 97:
+case 98:
 YY_RULE_SETUP
-#line 335 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 337 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.FPVal = atof(yytext); return FPVAL; }
 	YY_BREAK
-case 98:
+case 99:
 YY_RULE_SETUP
-#line 336 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 338 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { llvmAsmlval.FPVal = HexToFP(yytext); return FPVAL; }
 	YY_BREAK
 case YY_STATE_EOF(INITIAL):
-#line 338 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 340 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 {
                   /* Make sure to free the internal buffers for flex when we are
                    * done reading our input!
@@ -1672,22 +1684,22 @@
                   return EOF;
                 }
 	YY_BREAK
-case 99:
+case 100:
 YY_RULE_SETUP
-#line 346 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 348 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { /* Ignore whitespace */ }
 	YY_BREAK
-case 100:
+case 101:
 YY_RULE_SETUP
-#line 347 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 349 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 { return yytext[0]; }
 	YY_BREAK
-case 101:
+case 102:
 YY_RULE_SETUP
-#line 349 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 351 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 YY_FATAL_ERROR( "flex scanner jammed" );
 	YY_BREAK
-#line 1691 "Lexer.cpp"
+#line 1703 "Lexer.cpp"
 
 	case YY_END_OF_BUFFER:
 		{
@@ -1974,7 +1986,7 @@
 		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 			{
 			yy_current_state = (int) yy_def[yy_current_state];
-			if ( yy_current_state >= 405 )
+			if ( yy_current_state >= 416 )
 				yy_c = yy_meta[(unsigned int) yy_c];
 			}
 		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -2004,11 +2016,11 @@
 	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 		{
 		yy_current_state = (int) yy_def[yy_current_state];
-		if ( yy_current_state >= 405 )
+		if ( yy_current_state >= 416 )
 			yy_c = yy_meta[(unsigned int) yy_c];
 		}
 	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
-	yy_is_jam = (yy_current_state == 404);
+	yy_is_jam = (yy_current_state == 415);
 	if ( ! yy_is_jam )
 		*yy_state_ptr++ = yy_current_state;
 
@@ -2569,5 +2581,5 @@
 	return 0;
 	}
 #endif
-#line 349 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/Lexer.l"
+#line 351 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/Lexer.l"
 


Index: llvm/lib/AsmParser/Lexer.l
diff -u llvm/lib/AsmParser/Lexer.l:1.66 llvm/lib/AsmParser/Lexer.l:1.67
--- llvm/lib/AsmParser/Lexer.l:1.66	Fri Nov 11 18:11:30 2005
+++ llvm/lib/AsmParser/Lexer.l	Tue Jan 10 13:04:31 2006
@@ -272,6 +272,8 @@
 store           { RET_TOK(MemOpVal, Store, STORE); }
 getelementptr   { RET_TOK(MemOpVal, GetElementPtr, GETELEMENTPTR); }
 
+extractelement  { RET_TOK(OtherOpVal, ExtractElement, EXTRACTELEMENT); }
+
 
 {VarID}         {
                   UnEscapeLexed(yytext+1);


Index: llvm/lib/AsmParser/llvmAsmParser.cpp
diff -u llvm/lib/AsmParser/llvmAsmParser.cpp:1.27 llvm/lib/AsmParser/llvmAsmParser.cpp:1.28
--- llvm/lib/AsmParser/llvmAsmParser.cpp:1.27	Wed Dec 21 12:31:50 2005
+++ llvm/lib/AsmParser/llvmAsmParser.cpp	Tue Jan 10 13:04:31 2006
@@ -1,5 +1,5 @@
 
-/*  A Bison parser, made from /Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y
+/*  A Bison parser, made from /Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y
     by GNU Bison version 1.28  */
 
 #define YYBISON 1  /* Identify Bison output.  */
@@ -102,10 +102,11 @@
 #define	SHL	345
 #define	SHR	346
 #define	VAARG	347
-#define	VAARG_old	348
-#define	VANEXT_old	349
+#define	EXTRACTELEMENT	348
+#define	VAARG_old	349
+#define	VANEXT_old	350
 
-#line 14 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 14 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 
 #include "ParserInternals.h"
 #include "llvm/CallingConv.h"
@@ -964,7 +965,7 @@
 }
 
 
-#line 873 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 873 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 typedef union {
   llvm::Module                           *ModuleVal;
   llvm::Function                         *FunctionVal;
@@ -1014,26 +1015,26 @@
 
 
 
-#define	YYFINAL		444
+#define	YYFINAL		454
 #define	YYFLAG		-32768
-#define	YYNTBASE	110
+#define	YYNTBASE	111
 
-#define YYTRANSLATE(x) ((unsigned)(x) <= 349 ? yytranslate[x] : 179)
+#define YYTRANSLATE(x) ((unsigned)(x) <= 350 ? yytranslate[x] : 180)
 
 static const char yytranslate[] = {     0,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,     2,     2,     2,     2,     2,    99,
-   100,   108,     2,    97,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,     2,     2,     2,     2,     2,   104,
-    96,   105,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,   100,
+   101,   109,     2,    98,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,   105,
+    97,   106,     2,     2,     2,     2,     2,     2,     2,     2,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-   101,    98,   103,     2,     2,     2,     2,     2,   109,     2,
+   102,    99,   104,     2,     2,     2,     2,     2,   110,     2,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,     2,     2,     2,     2,     2,   102,
-     2,     2,   106,     2,   107,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,   103,
+     2,     2,   107,     2,   108,     2,     2,     2,     2,     2,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
@@ -1055,7 +1056,7 @@
     57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
     67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
     77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
-    87,    88,    89,    90,    91,    92,    93,    94,    95
+    87,    88,    89,    90,    91,    92,    93,    94,    95,    96
 };
 
 #if YYDEBUG != 0
@@ -1071,18 +1072,18 @@
    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,   310,   312,   314,   316,   318,   321,   324,
-   327,   329,   334,   337,   338,   346,   347,   355,   359,   364,
-   365,   367,   369,   373,   377,   381,   385,   389,   391,   392,
-   394,   396,   398,   399,   402,   406,   408,   410,   414,   416,
-   417,   426,   428,   430,   434,   436,   438,   441,   442,   446,
-   448,   450,   452,   454,   456,   458,   460,   462,   466,   468,
-   470,   472,   474,   476,   479,   482,   485,   489,   492,   493,
-   495,   498,   501,   505,   515,   525,   534,   548,   550,   552,
-   559,   565,   568,   575,   583,   585,   589,   591,   592,   595,
-   597,   603,   609,   615,   618,   623,   628,   635,   640,   645,
-   650,   653,   661,   663,   666,   667,   669,   670,   674,   681,
-   685,   692,   695,   700,   707
+   292,   299,   306,   313,   317,   319,   321,   323,   325,   328,
+   331,   334,   336,   341,   344,   345,   353,   354,   362,   366,
+   371,   372,   374,   376,   380,   384,   388,   392,   396,   398,
+   399,   401,   403,   405,   406,   409,   413,   415,   417,   421,
+   423,   424,   433,   435,   437,   441,   443,   445,   448,   449,
+   453,   455,   457,   459,   461,   463,   465,   467,   469,   473,
+   475,   477,   479,   481,   483,   486,   489,   492,   496,   499,
+   500,   502,   505,   508,   512,   522,   532,   541,   555,   557,
+   559,   566,   572,   575,   582,   590,   592,   596,   598,   599,
+   602,   604,   610,   616,   622,   625,   630,   635,   642,   647,
+   652,   657,   662,   665,   673,   675,   678,   679,   681,   682,
+   686,   693,   697,   704,   707,   712,   719
 };
 
 static const short yyrhs[] = {     5,
@@ -1091,73 +1092,74 @@
      0,    75,     0,    76,     0,    77,     0,    78,     0,    79,
      0,    80,     0,    81,     0,    91,     0,    92,     0,    16,
      0,    14,     0,    12,     0,    10,     0,    17,     0,    15,
-     0,    13,     0,    11,     0,   116,     0,   117,     0,    18,
-     0,    19,     0,   149,    96,     0,     0,    41,     0,    42,
+     0,    13,     0,    11,     0,   117,     0,   118,     0,    18,
+     0,    19,     0,   150,    97,     0,     0,    41,     0,    42,
      0,    43,     0,    44,     0,     0,     0,    59,     0,    60,
      0,    61,     0,    58,     4,     0,     0,    54,     4,     0,
-     0,    97,    54,     4,     0,    34,    24,     0,     0,   125,
-     0,     0,    97,   128,   127,     0,   125,     0,    54,     4,
-     0,   131,     0,     8,     0,   133,     0,     8,     0,   133,
+     0,    98,    54,     4,     0,    34,    24,     0,     0,   126,
+     0,     0,    98,   129,   128,     0,   126,     0,    54,     4,
+     0,   132,     0,     8,     0,   134,     0,     8,     0,   134,
      0,     9,     0,    10,     0,    11,     0,    12,     0,    13,
      0,    14,     0,    15,     0,    16,     0,    17,     0,    18,
-     0,    19,     0,    20,     0,    21,     0,    45,     0,   132,
-     0,   162,     0,    98,     4,     0,   130,    99,   135,   100,
-     0,   101,     4,   102,   133,   103,     0,   104,     4,   102,
-   133,   105,     0,   106,   134,   107,     0,   106,   107,     0,
-   133,   108,     0,   133,     0,   134,    97,   133,     0,   134,
-     0,   134,    97,    37,     0,    37,     0,     0,   131,   101,
-   138,   103,     0,   131,   101,   103,     0,   131,   109,    24,
-     0,   131,   104,   138,   105,     0,   131,   106,   138,   107,
-     0,   131,   106,   107,     0,   131,    38,     0,   131,    39,
-     0,   131,   162,     0,   131,   137,     0,   131,    26,     0,
-   116,   111,     0,   117,     4,     0,     9,    27,     0,     9,
-    28,     0,   119,     7,     0,    89,    99,   136,    36,   131,
-   100,     0,    87,    99,   136,   176,   100,     0,    90,    99,
-   136,    97,   136,    97,   136,   100,     0,   112,    99,   136,
-    97,   136,   100,     0,   113,    99,   136,    97,   136,   100,
-     0,   114,    99,   136,    97,   136,   100,     0,   115,    99,
-   136,    97,   136,   100,     0,   138,    97,   136,     0,   136,
-     0,    32,     0,    33,     0,   141,     0,   141,   158,     0,
-   141,   159,     0,   141,    25,     0,   142,     0,   142,   120,
-    20,   129,     0,   142,   159,     0,     0,   142,   120,   121,
-   139,   136,   143,   127,     0,     0,   142,   120,    47,   139,
-   131,   144,   127,     0,   142,    48,   146,     0,   142,    55,
-    96,   147,     0,     0,    53,     0,    52,     0,    50,    96,
-   145,     0,    51,    96,     4,     0,    49,    96,    24,     0,
-   101,   148,   103,     0,   148,    97,    24,     0,    24,     0,
-     0,    22,     0,    24,     0,   149,     0,     0,   131,   150,
-     0,   152,    97,   151,     0,   151,     0,   152,     0,   152,
-    97,    37,     0,    37,     0,     0,   122,   129,   149,    99,
-   153,   100,   126,   123,     0,    29,     0,   106,     0,   121,
-   154,   155,     0,    30,     0,   107,     0,   165,   157,     0,
-     0,    31,   160,   154,     0,     3,     0,     4,     0,     7,
-     0,    27,     0,    28,     0,    38,     0,    39,     0,    26,
-     0,   104,   138,   105,     0,   137,     0,   110,     0,   149,
-     0,   162,     0,   161,     0,   131,   163,     0,   165,   166,
-     0,   156,   166,     0,   167,   120,   168,     0,   167,   170,
-     0,     0,    23,     0,    62,   164,     0,    62,     8,     0,
-    63,    21,   163,     0,    63,     9,   163,    97,    21,   163,
-    97,    21,   163,     0,    64,   118,   163,    97,    21,   163,
-   101,   169,   103,     0,    64,   118,   163,    97,    21,   163,
-   101,   103,     0,    65,   122,   129,   163,    99,   173,   100,
-    36,    21,   163,    66,    21,   163,     0,    66,     0,    67,
-     0,   169,   118,   161,    97,    21,   163,     0,   118,   161,
-    97,    21,   163,     0,   120,   175,     0,   131,   101,   163,
-    97,   163,   103,     0,   171,    97,   101,   163,    97,   163,
-   103,     0,   164,     0,   172,    97,   164,     0,   172,     0,
-     0,    57,    56,     0,    56,     0,   112,   131,   163,    97,
-   163,     0,   113,   131,   163,    97,   163,     0,   114,   131,
-   163,    97,   163,     0,    46,   164,     0,   115,   164,    97,
-   164,     0,    89,   164,    36,   131,     0,    90,   164,    97,
-   164,    97,   164,     0,    93,   164,    97,   131,     0,    94,
-   164,    97,   131,     0,    95,   164,    97,   131,     0,    88,
-   171,     0,   174,   122,   129,   163,    99,   173,   100,     0,
-   178,     0,    97,   172,     0,     0,    35,     0,     0,    82,
-   131,   124,     0,    82,   131,    97,    15,   163,   124,     0,
-    83,   131,   124,     0,    83,   131,    97,    15,   163,   124,
-     0,    84,   164,     0,   177,    85,   131,   163,     0,   177,
-    86,   164,    97,   131,   163,     0,    87,   131,   163,   176,
-     0
+     0,    19,     0,    20,     0,    21,     0,    45,     0,   133,
+     0,   163,     0,    99,     4,     0,   131,   100,   136,   101,
+     0,   102,     4,   103,   134,   104,     0,   105,     4,   103,
+   134,   106,     0,   107,   135,   108,     0,   107,   108,     0,
+   134,   109,     0,   134,     0,   135,    98,   134,     0,   135,
+     0,   135,    98,    37,     0,    37,     0,     0,   132,   102,
+   139,   104,     0,   132,   102,   104,     0,   132,   110,    24,
+     0,   132,   105,   139,   106,     0,   132,   107,   139,   108,
+     0,   132,   107,   108,     0,   132,    38,     0,   132,    39,
+     0,   132,   163,     0,   132,   138,     0,   132,    26,     0,
+   117,   112,     0,   118,     4,     0,     9,    27,     0,     9,
+    28,     0,   120,     7,     0,    89,   100,   137,    36,   132,
+   101,     0,    87,   100,   137,   177,   101,     0,    90,   100,
+   137,    98,   137,    98,   137,   101,     0,   113,   100,   137,
+    98,   137,   101,     0,   114,   100,   137,    98,   137,   101,
+     0,   115,   100,   137,    98,   137,   101,     0,   116,   100,
+   137,    98,   137,   101,     0,    94,   100,   137,    98,   137,
+   101,     0,   139,    98,   137,     0,   137,     0,    32,     0,
+    33,     0,   142,     0,   142,   159,     0,   142,   160,     0,
+   142,    25,     0,   143,     0,   143,   121,    20,   130,     0,
+   143,   160,     0,     0,   143,   121,   122,   140,   137,   144,
+   128,     0,     0,   143,   121,    47,   140,   132,   145,   128,
+     0,   143,    48,   147,     0,   143,    55,    97,   148,     0,
+     0,    53,     0,    52,     0,    50,    97,   146,     0,    51,
+    97,     4,     0,    49,    97,    24,     0,   102,   149,   104,
+     0,   149,    98,    24,     0,    24,     0,     0,    22,     0,
+    24,     0,   150,     0,     0,   132,   151,     0,   153,    98,
+   152,     0,   152,     0,   153,     0,   153,    98,    37,     0,
+    37,     0,     0,   123,   130,   150,   100,   154,   101,   127,
+   124,     0,    29,     0,   107,     0,   122,   155,   156,     0,
+    30,     0,   108,     0,   166,   158,     0,     0,    31,   161,
+   155,     0,     3,     0,     4,     0,     7,     0,    27,     0,
+    28,     0,    38,     0,    39,     0,    26,     0,   105,   139,
+   106,     0,   138,     0,   111,     0,   150,     0,   163,     0,
+   162,     0,   132,   164,     0,   166,   167,     0,   157,   167,
+     0,   168,   121,   169,     0,   168,   171,     0,     0,    23,
+     0,    62,   165,     0,    62,     8,     0,    63,    21,   164,
+     0,    63,     9,   164,    98,    21,   164,    98,    21,   164,
+     0,    64,   119,   164,    98,    21,   164,   102,   170,   104,
+     0,    64,   119,   164,    98,    21,   164,   102,   104,     0,
+    65,   123,   130,   164,   100,   174,   101,    36,    21,   164,
+    66,    21,   164,     0,    66,     0,    67,     0,   170,   119,
+   162,    98,    21,   164,     0,   119,   162,    98,    21,   164,
+     0,   121,   176,     0,   132,   102,   164,    98,   164,   104,
+     0,   172,    98,   102,   164,    98,   164,   104,     0,   165,
+     0,   173,    98,   165,     0,   173,     0,     0,    57,    56,
+     0,    56,     0,   113,   132,   164,    98,   164,     0,   114,
+   132,   164,    98,   164,     0,   115,   132,   164,    98,   164,
+     0,    46,   165,     0,   116,   165,    98,   165,     0,    89,
+   165,    36,   132,     0,    90,   165,    98,   165,    98,   165,
+     0,    93,   165,    98,   132,     0,    95,   165,    98,   132,
+     0,    96,   165,    98,   132,     0,    94,   165,    98,   165,
+     0,    88,   172,     0,   175,   123,   130,   164,   100,   174,
+   101,     0,   179,     0,    98,   173,     0,     0,    35,     0,
+     0,    82,   132,   125,     0,    82,   132,    98,    15,   164,
+   125,     0,    83,   132,   125,     0,    83,   132,    98,    15,
+   164,   125,     0,    84,   165,     0,   178,    85,   132,   164,
+     0,   178,    86,   165,    98,   132,   164,     0,    87,   132,
+   164,   177,     0
 };
 
 #endif
@@ -1175,18 +1177,18 @@
   1154,  1163,  1166,  1174,  1178,  1183,  1184,  1187,  1190,  1200,
   1225,  1238,  1266,  1291,  1311,  1323,  1332,  1336,  1395,  1401,
   1409,  1414,  1419,  1422,  1425,  1432,  1442,  1473,  1480,  1501,
-  1511,  1516,  1526,  1529,  1536,  1536,  1546,  1553,  1557,  1560,
-  1563,  1576,  1596,  1598,  1601,  1604,  1608,  1611,  1613,  1615,
-  1620,  1621,  1623,  1626,  1634,  1639,  1641,  1645,  1649,  1657,
-  1657,  1658,  1658,  1660,  1666,  1671,  1677,  1680,  1685,  1689,
-  1693,  1779,  1779,  1781,  1789,  1789,  1791,  1795,  1795,  1804,
-  1807,  1810,  1813,  1816,  1819,  1822,  1825,  1828,  1852,  1859,
-  1862,  1867,  1867,  1873,  1877,  1880,  1888,  1897,  1901,  1911,
-  1922,  1925,  1928,  1931,  1934,  1948,  1952,  2005,  2008,  2014,
-  2022,  2032,  2039,  2044,  2051,  2055,  2061,  2061,  2063,  2066,
-  2072,  2084,  2095,  2105,  2117,  2124,  2131,  2138,  2143,  2162,
-  2184,  2198,  2255,  2261,  2263,  2267,  2270,  2276,  2280,  2284,
-  2288,  2292,  2299,  2309,  2322
+  1511,  1516,  1523,  1533,  1536,  1543,  1543,  1553,  1560,  1564,
+  1567,  1570,  1583,  1603,  1605,  1608,  1611,  1615,  1618,  1620,
+  1622,  1627,  1628,  1630,  1633,  1641,  1646,  1648,  1652,  1656,
+  1664,  1664,  1665,  1665,  1667,  1673,  1678,  1684,  1687,  1692,
+  1696,  1700,  1786,  1786,  1788,  1796,  1796,  1798,  1802,  1802,
+  1811,  1814,  1817,  1820,  1823,  1826,  1829,  1832,  1835,  1859,
+  1866,  1869,  1874,  1874,  1880,  1884,  1887,  1895,  1904,  1908,
+  1918,  1929,  1932,  1935,  1938,  1941,  1955,  1959,  2012,  2015,
+  2021,  2029,  2039,  2046,  2051,  2058,  2062,  2068,  2068,  2070,
+  2073,  2079,  2091,  2102,  2112,  2124,  2131,  2138,  2145,  2150,
+  2169,  2191,  2199,  2213,  2270,  2276,  2278,  2282,  2285,  2291,
+  2295,  2299,  2303,  2307,  2314,  2324,  2337
 };
 #endif
 
@@ -1204,10 +1206,10 @@
 "RET","BR","SWITCH","INVOKE","UNWIND","UNREACHABLE","ADD","SUB","MUL","DIV",
 "REM","AND","OR","XOR","SETLE","SETGE","SETLT","SETGT","SETEQ","SETNE","MALLOC",
 "ALLOCA","FREE","LOAD","STORE","GETELEMENTPTR","PHI_TOK","CAST","SELECT","SHL",
-"SHR","VAARG","VAARG_old","VANEXT_old","'='","','","'\\\\'","'('","')'","'['",
-"'x'","']'","'<'","'>'","'{'","'}'","'*'","'c'","INTVAL","EINT64VAL","ArithmeticOps",
-"LogicalOps","SetCondOps","ShiftOps","SIntType","UIntType","IntType","FPType",
-"OptAssign","OptLinkage","OptCallingConv","OptAlign","OptCAlign","SectionString",
+"SHR","VAARG","EXTRACTELEMENT","VAARG_old","VANEXT_old","'='","','","'\\\\'",
+"'('","')'","'['","'x'","']'","'<'","'>'","'{'","'}'","'*'","'c'","INTVAL","EINT64VAL",
+"ArithmeticOps","LogicalOps","SetCondOps","ShiftOps","SIntType","UIntType","IntType",
+"FPType","OptAssign","OptLinkage","OptCallingConv","OptAlign","OptCAlign","SectionString",
 "OptSection","GlobalVarAttributes","GlobalVarAttribute","TypesV","UpRTypesV",
 "Types","PrimType","UpRTypes","TypeListI","ArgTypeListI","ConstVal","ConstExpr",
 "ConstVector","GlobalType","Module","FunctionList","ConstPool","@1","@2","BigOrLittle",
@@ -1221,29 +1223,29 @@
 #endif
 
 static const short yyr1[] = {     0,
-   110,   110,   111,   111,   112,   112,   112,   112,   112,   113,
-   113,   113,   114,   114,   114,   114,   114,   114,   115,   115,
-   116,   116,   116,   116,   117,   117,   117,   117,   118,   118,
-   119,   119,   120,   120,   121,   121,   121,   121,   121,   122,
-   122,   122,   122,   122,   123,   123,   124,   124,   125,   126,
-   126,   127,   127,   128,   128,   129,   129,   130,   130,   131,
-   132,   132,   132,   132,   132,   132,   132,   132,   132,   132,
-   132,   132,   132,   133,   133,   133,   133,   133,   133,   133,
-   133,   133,   133,   134,   134,   135,   135,   135,   135,   136,
-   136,   136,   136,   136,   136,   136,   136,   136,   136,   136,
-   136,   136,   136,   136,   136,   137,   137,   137,   137,   137,
-   137,   137,   138,   138,   139,   139,   140,   141,   141,   141,
-   141,   142,   142,   143,   142,   144,   142,   142,   142,   142,
-   145,   145,   146,   146,   146,   147,   148,   148,   148,   149,
-   149,   150,   150,   151,   152,   152,   153,   153,   153,   153,
-   154,   155,   155,   156,   157,   157,   158,   160,   159,   161,
-   161,   161,   161,   161,   161,   161,   161,   161,   161,   162,
-   162,   163,   163,   164,   165,   165,   166,   167,   167,   167,
-   168,   168,   168,   168,   168,   168,   168,   168,   168,   169,
-   169,   170,   171,   171,   172,   172,   173,   173,   174,   174,
-   175,   175,   175,   175,   175,   175,   175,   175,   175,   175,
-   175,   175,   175,   176,   176,   177,   177,   178,   178,   178,
-   178,   178,   178,   178,   178
+   111,   111,   112,   112,   113,   113,   113,   113,   113,   114,
+   114,   114,   115,   115,   115,   115,   115,   115,   116,   116,
+   117,   117,   117,   117,   118,   118,   118,   118,   119,   119,
+   120,   120,   121,   121,   122,   122,   122,   122,   122,   123,
+   123,   123,   123,   123,   124,   124,   125,   125,   126,   127,
+   127,   128,   128,   129,   129,   130,   130,   131,   131,   132,
+   133,   133,   133,   133,   133,   133,   133,   133,   133,   133,
+   133,   133,   133,   134,   134,   134,   134,   134,   134,   134,
+   134,   134,   134,   135,   135,   136,   136,   136,   136,   137,
+   137,   137,   137,   137,   137,   137,   137,   137,   137,   137,
+   137,   137,   137,   137,   137,   138,   138,   138,   138,   138,
+   138,   138,   138,   139,   139,   140,   140,   141,   142,   142,
+   142,   142,   143,   143,   144,   143,   145,   143,   143,   143,
+   143,   146,   146,   147,   147,   147,   148,   149,   149,   149,
+   150,   150,   151,   151,   152,   153,   153,   154,   154,   154,
+   154,   155,   156,   156,   157,   158,   158,   159,   161,   160,
+   162,   162,   162,   162,   162,   162,   162,   162,   162,   162,
+   163,   163,   164,   164,   165,   166,   166,   167,   168,   168,
+   168,   169,   169,   169,   169,   169,   169,   169,   169,   169,
+   170,   170,   171,   172,   172,   173,   173,   174,   174,   175,
+   175,   176,   176,   176,   176,   176,   176,   176,   176,   176,
+   176,   176,   176,   176,   176,   177,   177,   178,   178,   179,
+   179,   179,   179,   179,   179,   179,   179
 };
 
 static const short yyr2[] = {     0,
@@ -1258,390 +1260,394 @@
      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,     3,     1,     1,     1,     1,     2,     2,     2,
-     1,     4,     2,     0,     7,     0,     7,     3,     4,     0,
-     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,     1,
-     1,     1,     1,     1,     1,     1,     1,     3,     1,     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,
-     2,     7,     1,     2,     0,     1,     0,     3,     6,     3,
-     6,     2,     4,     6,     4
+     6,     6,     6,     3,     1,     1,     1,     1,     2,     2,
+     2,     1,     4,     2,     0,     7,     0,     7,     3,     4,
+     0,     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,
+     1,     1,     1,     1,     1,     1,     1,     1,     3,     1,
+     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,     2,     7,     1,     2,     0,     1,     0,     3,
+     6,     3,     6,     2,     4,     6,     4
 };
 
-static const short yydefact[] = {   130,
-    39,   121,   120,   158,    35,    36,    37,    38,    40,   179,
-   118,   119,   179,   140,   141,     0,     0,    39,     0,   123,
-    40,     0,    41,    42,    43,     0,     0,   180,   176,    34,
-   155,   156,   157,   175,     0,     0,     0,   128,     0,     0,
-     0,     0,    33,   159,    44,     1,     2,    57,    61,    62,
+static const short yydefact[] = {   131,
+    39,   122,   121,   159,    35,    36,    37,    38,    40,   180,
+   119,   120,   180,   141,   142,     0,     0,    39,     0,   124,
+    40,     0,    41,    42,    43,     0,     0,   181,   177,    34,
+   156,   157,   158,   176,     0,     0,     0,   129,     0,     0,
+     0,     0,    33,   160,    44,     1,     2,    57,    61,    62,
     63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
-    73,    74,     0,     0,     0,     0,   170,     0,     0,    56,
-    75,    60,   171,    76,   152,   153,   154,   217,   178,     0,
-     0,     0,   139,   129,   122,   115,   116,     0,     0,    77,
-     0,     0,    59,    82,    84,     0,     0,    89,    83,   216,
-     0,   200,     0,     0,     0,     0,    40,   188,   189,     5,
+    73,    74,     0,     0,     0,     0,   171,     0,     0,    56,
+    75,    60,   172,    76,   153,   154,   155,   219,   179,     0,
+     0,     0,   140,   130,   123,   116,   117,     0,     0,    77,
+     0,     0,    59,    82,    84,     0,     0,    89,    83,   218,
+     0,   201,     0,     0,     0,     0,    40,   189,   190,     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,   177,
-    40,   192,     0,   213,   135,   132,   131,   133,   134,   138,
-     0,   126,    61,    62,    63,    64,    65,    66,    67,    68,
-    69,    70,    71,     0,     0,     0,     0,   124,     0,     0,
-     0,    81,   150,    88,    86,     0,     0,   204,   199,   182,
-   181,     0,     0,    24,    28,    23,    27,    22,    26,    21,
-    25,    29,    30,     0,     0,    47,    47,   222,     0,     0,
-   211,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,   136,    52,   103,   104,     3,     4,
-   101,   102,   105,   100,    96,    97,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,    99,    98,    52,
-    58,    58,    85,   149,   143,   146,   147,     0,     0,    78,
-   160,   161,   162,   167,   163,   164,   165,   166,     0,   169,
-   173,   172,   174,     0,   183,     0,     0,     0,   218,     0,
-   220,   215,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,   137,     0,   127,     0,
-     0,     0,    91,   114,     0,     0,    95,     0,    92,     0,
-     0,     0,     0,   125,    79,    80,   142,   144,     0,    50,
-    87,     0,     0,     0,     0,     0,     0,     0,     0,   225,
-     0,     0,   206,     0,   208,   209,   210,     0,     0,     0,
-   205,     0,   223,     0,     0,     0,    54,    52,   215,     0,
-     0,     0,    90,    93,    94,     0,     0,     0,     0,   148,
-   145,    51,    45,   168,     0,     0,   198,    47,    48,    47,
-   195,   214,     0,     0,     0,   201,   202,   203,   198,     0,
-    49,    55,    53,     0,     0,     0,   113,     0,     0,     0,
-     0,     0,   151,     0,     0,   197,     0,     0,   219,   221,
-     0,     0,     0,   207,     0,   224,   107,     0,     0,     0,
-     0,     0,     0,    46,     0,     0,     0,   196,   193,     0,
-   212,   106,     0,   109,   110,   111,   112,     0,   186,     0,
-     0,     0,   194,     0,   184,     0,   185,     0,     0,   108,
-     0,     0,     0,     0,     0,     0,   191,     0,     0,   190,
-   187,     0,     0,     0
+    19,    20,     0,     0,     0,     0,     0,     0,     0,     0,
+   178,    40,   193,     0,   215,   136,   133,   132,   134,   135,
+   139,     0,   127,    61,    62,    63,    64,    65,    66,    67,
+    68,    69,    70,    71,     0,     0,     0,     0,   125,     0,
+     0,     0,    81,   151,    88,    86,     0,     0,   205,   200,
+   183,   182,     0,     0,    24,    28,    23,    27,    22,    26,
+    21,    25,    29,    30,     0,     0,    47,    47,   224,     0,
+     0,   213,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,   137,    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,   150,   144,   147,   148,
+     0,     0,    78,   161,   162,   163,   168,   164,   165,   166,
+   167,     0,   170,   174,   173,   175,     0,   184,     0,     0,
+     0,   220,     0,   222,   217,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+   138,     0,   128,     0,     0,     0,     0,    91,   115,     0,
+     0,    95,     0,    92,     0,     0,     0,     0,   126,    79,
+    80,   143,   145,     0,    50,    87,     0,     0,     0,     0,
+     0,     0,     0,     0,   227,     0,     0,   207,     0,   209,
+   212,   210,   211,     0,     0,     0,   206,     0,   225,     0,
+     0,     0,    54,    52,   217,     0,     0,     0,     0,    90,
+    93,    94,     0,     0,     0,     0,   149,   146,    51,    45,
+   169,     0,     0,   199,    47,    48,    47,   196,   216,     0,
+     0,     0,   202,   203,   204,   199,     0,    49,    55,    53,
+     0,     0,     0,     0,   114,     0,     0,     0,     0,     0,
+   152,     0,     0,   198,     0,     0,   221,   223,     0,     0,
+     0,   208,     0,   226,   107,     0,     0,     0,     0,     0,
+     0,     0,    46,     0,     0,     0,   197,   194,     0,   214,
+   106,     0,   113,   109,   110,   111,   112,     0,   187,     0,
+     0,     0,   195,     0,   185,     0,   186,     0,     0,   108,
+     0,     0,     0,     0,     0,     0,   192,     0,     0,   191,
+   188,     0,     0,     0
 };
 
 static const short yydefgoto[] = {    67,
-   221,   234,   235,   236,   237,   164,   165,   194,   166,    18,
-     9,    26,   383,   269,   337,   353,   289,   338,    68,    69,
-   167,    71,    72,    96,   176,   294,   260,   295,    88,   442,
-     1,     2,   240,   216,   148,    38,    84,   151,    73,   308,
-   246,   247,   248,    27,    77,    10,    33,    11,    12,    21,
-   261,    74,   263,   361,    13,    29,    30,   140,   421,    79,
-   201,   386,   387,   141,   142,   320,   143,   144
+   223,   237,   238,   239,   240,   165,   166,   195,   167,    18,
+     9,    26,   391,   272,   343,   360,   293,   344,    68,    69,
+   168,    71,    72,    96,   177,   299,   263,   300,    88,   452,
+     1,     2,   243,   218,   149,    38,    84,   152,    73,   313,
+   249,   250,   251,    27,    77,    10,    33,    11,    12,    21,
+   264,    74,   266,   368,    13,    29,    30,   141,   431,    79,
+   202,   394,   395,   142,   143,   325,   144,   145
 };
 
 static const short yypact[] = {-32768,
-    43,   304,-32768,-32768,-32768,-32768,-32768,-32768,    94,   -17,
--32768,-32768,   -11,-32768,-32768,    72,   -58,    47,   -35,-32768,
-    94,    66,-32768,-32768,-32768,   995,   -25,-32768,-32768,   111,
--32768,-32768,-32768,-32768,    -3,    10,    23,-32768,    35,   995,
-   112,   112,-32768,-32768,-32768,-32768,-32768,    42,-32768,-32768,
+    41,   181,-32768,-32768,-32768,-32768,-32768,-32768,    62,    12,
+-32768,-32768,   -14,-32768,-32768,   100,    -8,    49,     0,-32768,
+    62,    38,-32768,-32768,-32768,   979,   -19,-32768,-32768,   112,
+-32768,-32768,-32768,-32768,     8,    27,    68,-32768,    36,   979,
+   -13,   -13,-32768,-32768,-32768,-32768,-32768,    69,-32768,-32768,
 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
--32768,-32768,   134,   142,   146,   512,-32768,   111,    58,-32768,
--32768,   -39,-32768,-32768,-32768,-32768,-32768,  1110,-32768,   139,
-    27,   163,   149,-32768,-32768,-32768,-32768,  1015,  1059,-32768,
-    79,    80,-32768,-32768,   -39,   -87,    85,   752,-32768,-32768,
-  1015,-32768,   133,  1117,    50,   115,    94,-32768,-32768,-32768,
+-32768,-32768,   169,   171,   173,   491,-32768,   112,    78,-32768,
+-32768,   -82,-32768,-32768,-32768,-32768,-32768,  1140,-32768,   156,
+    24,   177,   158,-32768,-32768,-32768,-32768,  1017,  1055,-32768,
+    81,    83,-32768,-32768,   -82,   -77,    90,   789,-32768,-32768,
+  1017,-32768,   136,  1093,     4,   116,    62,-32768,-32768,-32768,
 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
--32768,-32768,-32768,  1015,  1015,  1015,  1015,  1015,  1015,  1015,
--32768,-32768,  1015,  1015,  1015,  1015,  1015,  1015,  1015,-32768,
-    94,-32768,    63,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-   -20,-32768,   132,   158,   184,   168,   187,   172,   188,   174,
-   189,   190,   191,   176,   195,   193,   410,-32768,  1015,  1015,
-  1015,-32768,   790,-32768,    97,    95,   576,-32768,-32768,    42,
--32768,   576,   576,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
--32768,-32768,-32768,   576,   995,   104,   105,-32768,   576,   102,
-   107,   169,   113,   114,   116,   117,   576,   576,   576,   118,
-   995,  1015,  1015,   185,-32768,   125,-32768,-32768,-32768,-32768,
--32768,-32768,-32768,-32768,-32768,-32768,   124,   126,   127,   854,
-  1059,   532,   203,   129,   130,   135,   136,-32768,-32768,   125,
-   -69,   -13,   -39,-32768,   111,-32768,   141,   131,   892,-32768,
--32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,  1059,-32768,
--32768,-32768,-32768,   143,-32768,   147,   576,    -6,-32768,     3,
--32768,   151,   576,   138,  1015,  1015,  1015,  1015,  1015,   157,
-   159,   164,  1015,   576,   576,   165,-32768,   -19,-32768,  1059,
-  1059,  1059,-32768,-32768,    40,   -33,-32768,   -31,-32768,  1059,
-  1059,  1059,  1059,-32768,-32768,-32768,-32768,-32768,   957,   178,
--32768,   -32,   212,   215,   144,   576,   251,   576,  1015,-32768,
-   166,   576,-32768,   167,-32768,-32768,-32768,   576,   576,   576,
--32768,   161,-32768,  1015,   241,   262,-32768,   125,   151,   231,
-   171,  1059,-32768,-32768,-32768,   173,   177,   179,   180,-32768,
--32768,-32768,   217,-32768,   576,   576,  1015,   181,-32768,   181,
--32768,   183,   576,   192,  1015,-32768,-32768,-32768,  1015,   576,
--32768,-32768,-32768,   182,  1015,  1059,-32768,  1059,  1059,  1059,
-  1059,   265,-32768,   194,   198,   183,   200,   227,-32768,-32768,
-  1015,   201,   576,-32768,   206,-32768,-32768,   207,   213,   209,
-   214,   218,   219,-32768,   263,    11,   252,-32768,-32768,   222,
--32768,-32768,  1059,-32768,-32768,-32768,-32768,   576,-32768,   655,
-    39,   269,-32768,   221,-32768,   233,-32768,   655,   576,-32768,
-   282,   235,   249,   576,   312,   313,-32768,   576,   576,-32768,
--32768,   338,   340,-32768
+-32768,-32768,-32768,  1017,  1017,  1017,  1017,  1017,  1017,  1017,
+-32768,-32768,  1017,  1017,  1017,  1017,  1017,  1017,  1017,  1017,
+-32768,    62,-32768,    59,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,   -24,-32768,   126,   152,   189,   155,   190,   157,   191,
+   160,   192,   193,   195,   168,   194,   197,   360,-32768,  1017,
+  1017,  1017,-32768,   827,-32768,   101,   105,   610,-32768,-32768,
+    69,-32768,   610,   610,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,   610,   979,   113,   117,-32768,   610,
+   114,   119,   196,   128,   132,   133,   137,   139,   610,   610,
+   610,   140,   979,  1017,  1017,   210,-32768,   141,-32768,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   142,   143,
+   144,   147,   865,  1055,   567,   216,   148,   149,   151,   159,
+-32768,-32768,   141,    33,    37,   -82,-32768,   112,-32768,   162,
+   163,   903,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,  1055,-32768,-32768,-32768,-32768,   165,-32768,   167,   610,
+     7,-32768,     9,-32768,   170,   610,   164,  1017,  1017,  1017,
+  1017,  1017,  1017,   172,   174,   175,  1017,   610,   610,   176,
+-32768,    52,-32768,  1055,  1055,  1055,  1055,-32768,-32768,   -17,
+   -83,-32768,   -72,-32768,  1055,  1055,  1055,  1055,-32768,-32768,
+-32768,-32768,-32768,   941,   207,-32768,   -33,   237,   246,   179,
+   610,   265,   610,  1017,-32768,   183,   610,-32768,   184,-32768,
+-32768,-32768,-32768,   610,   610,   610,-32768,   185,-32768,  1017,
+   247,   271,-32768,   141,   170,   241,   188,   208,  1055,-32768,
+-32768,-32768,   209,   211,   213,   215,-32768,-32768,-32768,   229,
+-32768,   610,   610,  1017,   217,-32768,   217,-32768,   219,   610,
+   220,  1017,-32768,-32768,-32768,  1017,   610,-32768,-32768,-32768,
+   186,  1017,  1055,  1055,-32768,  1055,  1055,  1055,  1055,   285,
+-32768,   224,   206,   219,   222,   236,-32768,-32768,  1017,   221,
+   610,-32768,   223,-32768,-32768,   228,   235,   238,   239,   240,
+   242,   243,-32768,   273,    35,   259,-32768,-32768,   232,-32768,
+-32768,  1055,-32768,-32768,-32768,-32768,-32768,   610,-32768,   691,
+    43,   316,-32768,   244,-32768,   249,-32768,   691,   610,-32768,
+   321,   250,   283,   610,   330,   331,-32768,   610,   610,-32768,
+-32768,   353,   354,-32768
 };
 
 static const short yypgoto[] = {-32768,
--32768,   264,   266,   275,   277,  -105,  -104,  -374,-32768,   311,
-   339,   -78,-32768,  -190,    48,-32768,  -223,-32768,   -37,-32768,
-   -26,-32768,   -53,   271,-32768,   -84,   196,  -201,   319,-32768,
--32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,    14,-32768,
-    53,-32768,-32768,   343,-32768,-32768,-32768,-32768,   368,-32768,
-  -323,   -43,    38,   -93,-32768,   358,-32768,-32768,-32768,-32768,
--32768,    54,     5,-32768,-32768,    33,-32768,-32768
+-32768,   277,   279,   281,   282,  -105,  -103,  -403,-32768,   332,
+   343,   -78,-32768,  -191,    48,-32768,  -226,-32768,   -34,-32768,
+   -26,-32768,   -55,   266,-32768,   -87,   199,  -167,   326,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,     2,-32768,
+    55,-32768,-32768,   349,-32768,-32768,-32768,-32768,   369,-32768,
+  -359,   -43,   121,   -96,-32768,   359,-32768,-32768,-32768,-32768,
+-32768,    50,    -1,-32768,-32768,    31,-32768,-32768
 };
 
 
-#define	YYLAST		1223
+#define	YYLAST		1236
 
 
 static const short yytable[] = {    70,
-   192,   193,    85,    75,   168,    28,   271,   178,   316,   171,
-   181,    28,    95,    70,   335,    19,   304,   318,    31,   172,
-   184,   185,   186,   187,   188,   189,   190,   191,   195,   296,
-   298,   420,   198,   305,   336,   202,   203,    39,    99,   204,
-   205,   206,  -117,    19,    95,   210,   428,   317,   184,   185,
-   186,   187,   188,   189,   190,   191,   317,   312,   182,   -58,
-    43,   152,   211,   342,   342,   342,    40,     3,    99,    45,
-   183,   344,   354,     4,   177,   345,   214,   177,   146,   147,
-    76,    97,   215,     5,     6,     7,     8,     5,     6,     7,
-     8,   306,    80,    41,    99,    32,   426,   196,   197,   177,
-   199,   200,   177,   177,   432,    81,   177,   177,   177,   207,
-   208,   209,   177,   419,   373,   241,   242,   243,    82,   286,
-    35,    36,    37,   239,   184,   185,   186,   187,   188,   189,
-   190,   191,    14,   262,    15,    83,   342,    90,   262,   262,
-   -59,   427,   343,    86,    87,    91,   245,   212,   213,    92,
-   262,    22,    23,    24,    25,   262,    98,   267,   217,   218,
-   -24,   -24,   145,   262,   262,   262,   149,   389,    70,   390,
-   -23,   -23,   150,   284,   -22,   -22,   -21,   -21,   219,   220,
-   169,   170,   324,   173,    70,   285,   177,   -28,   179,   331,
-   -27,   -26,   -25,   249,   250,   243,   -31,   -32,   222,   223,
-   268,   270,   273,   274,   275,   339,   340,   341,   287,   276,
-   277,   335,   278,   279,   283,   346,   347,   348,   349,   264,
-   265,   288,   290,   262,   291,   292,   299,   300,   301,   262,
-   310,   266,   355,   302,   303,   356,   272,   309,   322,   313,
-   262,   262,   357,   314,   280,   281,   282,   319,   323,   177,
-   325,   326,   327,   328,   359,   329,   177,   377,   307,   369,
-   330,   334,   363,   365,   371,   372,   375,   376,   404,   378,
-   382,   394,   262,   379,   262,   380,   381,   388,   262,   391,
-   317,   397,   245,   418,   262,   262,   262,   422,   393,   429,
-   405,   399,   177,   400,   401,   402,   403,   408,   406,   407,
-   192,   193,   434,   409,   315,   411,   412,   370,   414,   413,
-   321,   262,   262,   415,   436,   192,   193,   416,   417,   262,
-   430,   332,   333,   -34,   423,    14,   262,    15,   424,   431,
-   177,   435,   438,   439,     4,   -34,   -34,   443,   177,   444,
-    78,   136,   177,   137,   -34,   -34,   -34,   -34,   398,   262,
-   -34,    16,   138,   358,   139,   360,    42,   352,    17,   364,
-    89,   351,   238,    44,   177,   366,   367,   368,   175,    20,
-    34,   374,   362,   395,   262,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,   262,     0,     0,     0,     0,
-   262,     0,   384,   385,   262,   262,     0,     0,     0,     0,
-   392,     0,     0,     0,     0,     0,     0,   396,     0,     0,
-     0,     0,     0,     0,    46,    47,     0,     0,     0,     0,
+   193,   169,   194,    19,   179,    85,   274,   182,    28,    75,
+    95,   430,   183,    70,   349,    31,   309,   -58,    86,    87,
+   172,   321,   351,   323,   184,   349,    99,   438,   196,   199,
+   173,    19,   203,   204,    28,   352,   205,   206,   207,   208,
+  -118,    45,    95,   212,   185,   186,   187,   188,   189,   190,
+   191,   192,   185,   186,   187,   188,   189,   190,   191,   192,
+   322,   153,   322,   213,   349,     3,   301,   303,    40,    97,
+   436,     4,   361,   216,   178,   147,   148,   178,   442,   217,
+   349,     5,     6,     7,     8,   341,   350,    76,    39,     5,
+     6,     7,     8,    32,   317,    41,    43,   197,   198,   178,
+   200,   201,   178,   178,    80,   342,   178,   178,   178,   178,
+   209,   210,   211,   178,   244,   245,   246,   380,   290,    22,
+    23,    24,    25,    81,   242,   185,   186,   187,   188,   189,
+   190,   191,   192,    14,   265,    15,   310,    83,   429,   265,
+   265,    99,   311,   214,   215,    99,   437,   248,    35,    36,
+    37,   265,   219,   220,   -24,   -24,   265,   -23,   -23,   -22,
+   -22,   270,   -21,   -21,    82,   265,   265,   265,   -59,    70,
+   221,   222,    90,   397,    91,   398,    92,    98,   288,   146,
+   150,   151,   329,   170,   331,   171,    70,   289,   178,   174,
+   337,   180,   -28,   -27,   -26,   -25,   246,   224,   252,   -31,
+   -34,   -32,    14,   225,    15,   253,   345,   346,   347,   348,
+   271,     4,   -34,   -34,   273,   276,   277,   353,   354,   355,
+   356,   -34,   -34,   -34,   -34,   279,   265,   -34,    16,   280,
+   281,   278,   265,   291,   282,    17,   283,   287,   292,   304,
+   341,   294,   295,   296,   265,   265,   297,   305,   306,   312,
+   307,   328,   178,   330,   178,   332,   333,   362,   308,   314,
+   178,   385,   318,   315,   319,   327,   363,   324,   366,   334,
+   378,   335,   336,   340,   379,   402,   382,   265,   364,   265,
+   370,   372,   390,   265,   376,   383,   405,   248,   413,   322,
+   265,   265,   265,   428,   432,   407,   408,   178,   409,   410,
+   411,   412,   417,   267,   268,   384,   386,   415,   387,   193,
+   388,   194,   389,   377,   396,   269,   399,   401,   265,   265,
+   275,   414,   416,   420,   418,   193,   265,   194,   421,   284,
+   285,   286,   422,   265,   434,   433,   439,   178,   423,   424,
+   425,   444,   426,   427,   440,   178,   441,   445,   446,   178,
+   448,   449,   453,   454,   137,   406,   138,   265,   139,   140,
+    42,    78,   359,   176,    46,    47,   241,    89,   358,    44,
+    20,    34,   178,   369,   403,   381,     0,     0,     0,     0,
+     0,    14,     0,    15,   265,   226,     0,     0,     0,     0,
+   320,     0,     0,     0,     0,   265,   326,   227,   228,     0,
+   265,     0,     0,     0,   265,   265,     0,     0,   338,   339,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-   410,    14,     0,    15,     0,   224,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,   225,   226,     0,
-     0,     0,     0,     0,     0,   425,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,   433,     0,     0,     0,
-     0,   437,     0,     0,     0,   440,   441,   110,   111,   112,
+     0,     0,     0,     0,     0,     0,     0,   110,   111,   112,
    113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
-   123,     0,     0,     0,     0,     0,   227,     0,   228,   229,
-   131,   132,     0,     0,     0,     0,     0,     0,     0,     0,
-   230,     0,     0,   231,     0,   232,    46,    47,   233,    93,
-    49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
-    59,    60,    61,    14,     0,    15,    46,    47,     0,    93,
-   153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
-   163,    60,    61,    14,     0,    15,    62,     0,     0,     0,
+   123,   365,     0,   367,     0,     0,   229,   371,   230,   231,
+   131,   132,     0,   232,   373,   374,   375,     0,     0,     0,
+     0,   233,     0,     0,   234,     0,   235,     0,     0,   236,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,    62,     0,   251,   252,
-    46,    47,   253,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,    14,     0,    15,
-     0,   254,   255,   256,     0,     0,     0,     0,     0,    63,
-     0,     0,    64,   257,   258,    65,     0,    66,    94,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,     0,    63,
-     0,     0,    64,     0,     0,    65,     0,    66,   297,     0,
-     0,     0,     0,   110,   111,   112,   113,   114,   115,   116,
-   117,   118,   119,   120,   121,   122,   123,   251,   252,     0,
-     0,   253,   227,     0,   228,   229,   131,   132,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,     0,   259,
-   254,   255,   256,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,   257,   258,     0,     0,     0,     0,     0,     0,
+     0,     0,   392,   393,     0,     0,     0,     0,     0,     0,
+   400,     0,     0,     0,     0,    46,    47,   404,    93,    49,
+    50,    51,    52,    53,    54,    55,    56,    57,    58,    59,
+    60,    61,    14,     0,    15,     0,     0,     0,     0,     0,
+     0,   419,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,    62,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,   435,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,   443,
+     0,     0,     0,     0,   447,     0,     0,     0,   450,   451,
+     0,    46,    47,     0,    93,   154,   155,   156,   157,   158,
+   159,   160,   161,   162,   163,   164,    60,    61,    14,    63,
+    15,     0,    64,     0,     0,    65,     0,    66,    94,     0,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,    62,   254,   255,    46,    47,   256,     0,     0,     0,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,   110,   111,   112,   113,   114,   115,   116,   117,
-   118,   119,   120,   121,   122,   123,     0,     0,     0,     0,
-     0,   227,     0,   228,   229,   131,   132,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,    46,    47,   259,    93,
-    49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
-    59,    60,    61,    14,     0,    15,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,   174,     0,
-     0,     0,     0,     0,    46,    47,    62,    93,    49,    50,
-    51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
-    61,    14,     0,    15,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,   244,     0,     0,     0,
-     0,     0,     0,     0,    62,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,     0,    63,
-     0,     0,    64,     0,     0,    65,     0,    66,    46,    47,
-     0,    93,   153,   154,   155,   156,   157,   158,   159,   160,
-   161,   162,   163,    60,    61,    14,     0,    15,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,    63,     0,     0,
-    64,     0,     0,    65,     0,    66,    46,    47,    62,    93,
-    49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
-    59,    60,    61,    14,     0,    15,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,   311,     0,
-     0,     0,     0,     0,     0,     0,    62,     0,     0,     0,
+     0,    14,     0,    15,     0,   257,   258,   259,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,   260,   261,     0,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,    63,     0,     0,    64,     0,   293,    65,     0,    66,
-     0,    46,    47,     0,    93,    49,    50,    51,    52,    53,
-    54,    55,    56,    57,    58,    59,    60,    61,    14,     0,
-    15,     0,     0,     0,     0,     0,     0,     0,     0,    63,
-     0,     0,    64,   350,     0,    65,     0,    66,     0,    46,
-    47,    62,    48,    49,    50,    51,    52,    53,    54,    55,
-    56,    57,    58,    59,    60,    61,    14,     0,    15,    46,
-    47,     0,    93,    49,    50,    51,    52,    53,    54,    55,
-    56,    57,    58,    59,    60,    61,    14,     0,    15,    62,
+     0,     0,     0,     0,     0,    63,     0,     0,    64,     0,
+     0,    65,     0,    66,   302,     0,     0,   110,   111,   112,
+   113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
+   123,     0,     0,   254,   255,     0,   229,   256,   230,   231,
+   131,   132,     0,   232,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,   262,     0,   257,   258,   259,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,   260,   261,
      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,    63,     0,     0,    64,     0,    62,
-    65,     0,    66,    46,    47,     0,    93,   153,   154,   155,
-   156,   157,   158,   159,   160,   161,   162,   163,    60,    61,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,   110,   111,
+   112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
+   122,   123,     0,     0,     0,     0,     0,   229,     0,   230,
+   231,   131,   132,     0,   232,     0,     0,     0,     0,     0,
+     0,     0,     0,    46,    47,   262,    93,    49,    50,    51,
+    52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
     14,     0,    15,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,    63,     0,     0,    64,     0,     0,    65,     0,
-    66,     0,     0,    62,     0,     0,     0,     0,     0,     0,
-     0,     0,    63,     0,     0,    64,     0,     0,    65,     0,
-    66,    46,    47,     0,   180,    49,    50,    51,    52,    53,
+     0,     0,     0,     0,     0,   175,     0,     0,     0,     0,
+     0,    46,    47,    62,    93,    49,    50,    51,    52,    53,
     54,    55,    56,    57,    58,    59,    60,    61,    14,     0,
-    15,     0,     0,     0,   100,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,   101,    63,     0,     0,    64,
-     0,    62,    65,     0,    66,   102,   103,     0,     0,     0,
+    15,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,   247,     0,     0,     0,     0,     0,    46,
+    47,    62,    93,   154,   155,   156,   157,   158,   159,   160,
+   161,   162,   163,   164,    60,    61,    14,    63,    15,     0,
+    64,     0,     0,    65,     0,    66,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,    46,    47,    62,
+    93,    49,    50,    51,    52,    53,    54,    55,    56,    57,
+    58,    59,    60,    61,    14,    63,    15,     0,    64,     0,
+     0,    65,     0,    66,     0,     0,     0,     0,     0,   316,
+     0,     0,     0,     0,     0,    46,    47,    62,    93,    49,
+    50,    51,    52,    53,    54,    55,    56,    57,    58,    59,
+    60,    61,    14,    63,    15,     0,    64,     0,   298,    65,
+     0,    66,     0,     0,     0,     0,     0,   357,     0,     0,
+     0,     0,     0,    46,    47,    62,    48,    49,    50,    51,
+    52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
+    14,    63,    15,     0,    64,     0,     0,    65,     0,    66,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,    46,    47,    62,    93,    49,    50,    51,    52,    53,
+    54,    55,    56,    57,    58,    59,    60,    61,    14,    63,
+    15,     0,    64,     0,     0,    65,     0,    66,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,    46,
+    47,    62,    93,   154,   155,   156,   157,   158,   159,   160,
+   161,   162,   163,   164,    60,    61,    14,    63,    15,     0,
+    64,     0,     0,    65,     0,    66,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,    46,    47,    62,
+   181,    49,    50,    51,    52,    53,    54,    55,    56,    57,
+    58,    59,    60,    61,    14,    63,    15,     0,    64,     0,
+     0,    65,     0,    66,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,    62,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,    63,     0,     0,    64,     0,     0,    65,
+     0,    66,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,   100,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,   101,     0,     0,     0,     0,
+     0,    63,     0,     0,    64,   102,   103,    65,     0,    66,
      0,   104,   105,   106,   107,   108,   109,   110,   111,   112,
    113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
    123,   124,   125,   126,     0,     0,   127,   128,   129,   130,
-   131,   132,   133,   134,   135,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,    63,     0,     0,    64,     0,     0,
-    65,     0,    66
+   131,   132,   133,   134,   135,   136
 };
 
 static const short yycheck[] = {    26,
-   106,   106,    40,    29,    89,    23,   197,   101,    15,    97,
-   104,    23,    66,    40,    34,     2,   240,    15,    30,   107,
-    10,    11,    12,    13,    14,    15,    16,    17,   107,   231,
-   232,   406,   126,   103,    54,   129,   130,    96,   108,   133,
-   134,   135,     0,    30,    98,   139,   421,    54,    10,    11,
-    12,    13,    14,    15,    16,    17,    54,   259,     9,    99,
-    96,    88,   141,    97,    97,    97,    20,    25,   108,     4,
-    21,   105,   105,    31,   101,   107,    97,   104,    52,    53,
-   106,    68,   103,    41,    42,    43,    44,    41,    42,    43,
-    44,   105,    96,    47,   108,   107,   420,   124,   125,   126,
-   127,   128,   129,   130,   428,    96,   133,   134,   135,   136,
-   137,   138,   139,   103,   338,   169,   170,   171,    96,   213,
-    49,    50,    51,   167,    10,    11,    12,    13,    14,    15,
-    16,    17,    22,   177,    24,   101,    97,     4,   182,   183,
-    99,   103,   103,    32,    33,     4,   173,    85,    86,     4,
-   194,    58,    59,    60,    61,   199,    99,   195,    27,    28,
-     3,     4,    24,   207,   208,   209,     4,   358,   195,   360,
-     3,     4,    24,   211,     3,     4,     3,     4,     3,     4,
-   102,   102,   276,    99,   211,   212,   213,     4,    56,   283,
-     4,     4,     4,    97,   100,   249,     7,     7,     4,     7,
-    97,    97,   101,    97,    36,   290,   291,   292,    24,    97,
-    97,    34,    97,    97,    97,   300,   301,   302,   303,   182,
-   183,    97,    99,   267,    99,    99,    24,    99,    99,   273,
-   100,   194,    21,    99,    99,    21,   199,    97,   101,    97,
-   284,   285,    99,    97,   207,   208,   209,    97,   275,   276,
-   277,   278,   279,    97,     4,    97,   283,   342,   245,    99,
-    97,    97,    97,    97,    24,     4,    36,    97,     4,    97,
-    54,   365,   316,    97,   318,    97,    97,    97,   322,    97,
-    54,   100,   309,    21,   328,   329,   330,    36,    97,    21,
-    97,   376,   319,   378,   379,   380,   381,   391,   101,   100,
-   406,   406,    21,   103,   267,   100,   100,   334,   100,    97,
-   273,   355,   356,   100,    66,   421,   421,   100,   100,   363,
-   100,   284,   285,    20,   103,    22,   370,    24,   413,    97,
-   357,    97,    21,    21,    31,    32,    33,     0,   365,     0,
-    30,    78,   369,    78,    41,    42,    43,    44,   375,   393,
-    47,    48,    78,   316,    78,   318,    18,   310,    55,   322,
-    42,   309,   167,    21,   391,   328,   329,   330,    98,     2,
-    13,   339,   319,   369,   418,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,   429,    -1,    -1,    -1,    -1,
-   434,    -1,   355,   356,   438,   439,    -1,    -1,    -1,    -1,
-   363,    -1,    -1,    -1,    -1,    -1,    -1,   370,    -1,    -1,
-    -1,    -1,    -1,    -1,     5,     6,    -1,    -1,    -1,    -1,
+   106,    89,   106,     2,   101,    40,   198,   104,    23,    29,
+    66,   415,     9,    40,    98,    30,   243,   100,    32,    33,
+    98,    15,   106,    15,    21,    98,   109,   431,   107,   126,
+   108,    30,   129,   130,    23,   108,   133,   134,   135,   136,
+     0,     4,    98,   140,    10,    11,    12,    13,    14,    15,
+    16,    17,    10,    11,    12,    13,    14,    15,    16,    17,
+    54,    88,    54,   142,    98,    25,   234,   235,    20,    68,
+   430,    31,   106,    98,   101,    52,    53,   104,   438,   104,
+    98,    41,    42,    43,    44,    34,   104,   107,    97,    41,
+    42,    43,    44,   108,   262,    47,    97,   124,   125,   126,
+   127,   128,   129,   130,    97,    54,   133,   134,   135,   136,
+   137,   138,   139,   140,   170,   171,   172,   344,   215,    58,
+    59,    60,    61,    97,   168,    10,    11,    12,    13,    14,
+    15,    16,    17,    22,   178,    24,   104,   102,   104,   183,
+   184,   109,   106,    85,    86,   109,   104,   174,    49,    50,
+    51,   195,    27,    28,     3,     4,   200,     3,     4,     3,
+     4,   196,     3,     4,    97,   209,   210,   211,   100,   196,
+     3,     4,     4,   365,     4,   367,     4,   100,   213,    24,
+     4,    24,   279,   103,   281,   103,   213,   214,   215,   100,
+   287,    56,     4,     4,     4,     4,   252,     4,    98,     7,
+    20,     7,    22,     7,    24,   101,   294,   295,   296,   297,
+    98,    31,    32,    33,    98,   102,    98,   305,   306,   307,
+   308,    41,    42,    43,    44,    98,   270,    47,    48,    98,
+    98,    36,   276,    24,    98,    55,    98,    98,    98,    24,
+    34,   100,   100,   100,   288,   289,   100,   100,   100,   248,
+   100,   278,   279,   280,   281,   282,   283,    21,   100,    98,
+   287,   349,    98,   101,    98,   102,    21,    98,     4,    98,
+    24,    98,    98,    98,     4,   372,    36,   321,   100,   323,
+    98,    98,    54,   327,   100,    98,   101,   314,     4,    54,
+   334,   335,   336,    21,    36,   383,   384,   324,   386,   387,
+   388,   389,   399,   183,   184,    98,    98,   102,    98,   415,
+    98,   415,    98,   340,    98,   195,    98,    98,   362,   363,
+   200,    98,   101,   101,   104,   431,   370,   431,   101,   209,
+   210,   211,    98,   377,   422,   104,    21,   364,   101,   101,
+   101,    21,   101,   101,   101,   372,    98,    98,    66,   376,
+    21,    21,     0,     0,    78,   382,    78,   401,    78,    78,
+    18,    30,   315,    98,     5,     6,   168,    42,   314,    21,
+     2,    13,   399,   324,   376,   345,    -1,    -1,    -1,    -1,
+    -1,    22,    -1,    24,   428,    26,    -1,    -1,    -1,    -1,
+   270,    -1,    -1,    -1,    -1,   439,   276,    38,    39,    -1,
+   444,    -1,    -1,    -1,   448,   449,    -1,    -1,   288,   289,
     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-   393,    22,    -1,    24,    -1,    26,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,    -1,    38,    39,    -1,
-    -1,    -1,    -1,    -1,    -1,   418,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,   429,    -1,    -1,    -1,
-    -1,   434,    -1,    -1,    -1,   438,   439,    68,    69,    70,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    69,    70,
     71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
-    81,    -1,    -1,    -1,    -1,    -1,    87,    -1,    89,    90,
-    91,    92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-   101,    -1,    -1,   104,    -1,   106,     5,     6,   109,     8,
-     9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
-    19,    20,    21,    22,    -1,    24,     5,     6,    -1,     8,
-     9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
-    19,    20,    21,    22,    -1,    24,    45,    -1,    -1,    -1,
+    81,   321,    -1,   323,    -1,    -1,    87,   327,    89,    90,
+    91,    92,    -1,    94,   334,   335,   336,    -1,    -1,    -1,
+    -1,   102,    -1,    -1,   105,    -1,   107,    -1,    -1,   110,
     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,    45,    -1,     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,    98,
-    -1,    -1,   101,    38,    39,   104,    -1,   106,   107,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,
-    -1,    -1,   101,    -1,    -1,   104,    -1,   106,   107,    -1,
-    -1,    -1,    -1,    68,    69,    70,    71,    72,    73,    74,
-    75,    76,    77,    78,    79,    80,    81,     3,     4,    -1,
-    -1,     7,    87,    -1,    89,    90,    91,    92,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   104,
-    26,    27,    28,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    38,    39,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,   362,   363,    -1,    -1,    -1,    -1,    -1,    -1,
+   370,    -1,    -1,    -1,    -1,     5,     6,   377,     8,     9,
+    10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
+    20,    21,    22,    -1,    24,    -1,    -1,    -1,    -1,    -1,
+    -1,   401,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    45,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   428,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   439,
+    -1,    -1,    -1,    -1,   444,    -1,    -1,    -1,   448,   449,
+    -1,     5,     6,    -1,     8,     9,    10,    11,    12,    13,
+    14,    15,    16,    17,    18,    19,    20,    21,    22,    99,
+    24,    -1,   102,    -1,    -1,   105,    -1,   107,   108,    -1,
     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    45,     3,     4,     5,     6,     7,    -1,    -1,    -1,
     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    68,    69,    70,    71,    72,    73,    74,    75,
-    76,    77,    78,    79,    80,    81,    -1,    -1,    -1,    -1,
-    -1,    87,    -1,    89,    90,    91,    92,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,     5,     6,   104,     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,    -1,    -1,    45,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,
-    -1,    -1,   101,    -1,    -1,   104,    -1,   106,     5,     6,
-    -1,     8,     9,    10,    11,    12,    13,    14,    15,    16,
-    17,    18,    19,    20,    21,    22,    -1,    24,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,    -1,    -1,
-   101,    -1,    -1,   104,    -1,   106,     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,    -1,    -1,    45,    -1,    -1,    -1,
+    -1,    22,    -1,    24,    -1,    26,    27,    28,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    38,    39,    -1,
     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    98,    -1,    -1,   101,    -1,   103,   104,    -1,   106,
-    -1,     5,     6,    -1,     8,     9,    10,    11,    12,    13,
-    14,    15,    16,    17,    18,    19,    20,    21,    22,    -1,
-    24,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    98,
-    -1,    -1,   101,    37,    -1,   104,    -1,   106,    -1,     5,
-     6,    45,     8,     9,    10,    11,    12,    13,    14,    15,
-    16,    17,    18,    19,    20,    21,    22,    -1,    24,     5,
-     6,    -1,     8,     9,    10,    11,    12,    13,    14,    15,
-    16,    17,    18,    19,    20,    21,    22,    -1,    24,    45,
+    -1,    -1,    -1,    -1,    -1,    99,    -1,    -1,   102,    -1,
+    -1,   105,    -1,   107,   108,    -1,    -1,    68,    69,    70,
+    71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
+    81,    -1,    -1,     3,     4,    -1,    87,     7,    89,    90,
+    91,    92,    -1,    94,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,   105,    -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,    98,    -1,    -1,   101,    -1,    45,
-   104,    -1,   106,     5,     6,    -1,     8,     9,    10,    11,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    69,
+    70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
+    80,    81,    -1,    -1,    -1,    -1,    -1,    87,    -1,    89,
+    90,    91,    92,    -1,    94,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,     5,     6,   105,     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,    98,    -1,    -1,   101,    -1,    -1,   104,    -1,
-   106,    -1,    -1,    45,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    98,    -1,    -1,   101,    -1,    -1,   104,    -1,
-   106,     5,     6,    -1,     8,     9,    10,    11,    12,    13,
+    -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,    35,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    46,    98,    -1,    -1,   101,
-    -1,    45,   104,    -1,   106,    56,    57,    -1,    -1,    -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,    99,    24,    -1,
+   102,    -1,    -1,   105,    -1,   107,    -1,    -1,    -1,    -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,    99,    24,    -1,   102,    -1,
+    -1,   105,    -1,   107,    -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,    99,    24,    -1,   102,    -1,   104,   105,
+    -1,   107,    -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,    99,    24,    -1,   102,    -1,    -1,   105,    -1,   107,
+    -1,    -1,    -1,    -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,    99,
+    24,    -1,   102,    -1,    -1,   105,    -1,   107,    -1,    -1,
+    -1,    -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,    99,    24,    -1,
+   102,    -1,    -1,   105,    -1,   107,    -1,    -1,    -1,    -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,    99,    24,    -1,   102,    -1,
+    -1,   105,    -1,   107,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    99,    -1,    -1,   102,    -1,    -1,   105,
+    -1,   107,    -1,    -1,    -1,    -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,    99,    -1,    -1,   102,    56,    57,   105,    -1,   107,
     -1,    62,    63,    64,    65,    66,    67,    68,    69,    70,
     71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
     81,    82,    83,    84,    -1,    -1,    87,    88,    89,    90,
-    91,    92,    93,    94,    95,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    98,    -1,    -1,   101,    -1,    -1,
-   104,    -1,   106
+    91,    92,    93,    94,    95,    96
 };
 /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
 #line 3 "/usr/share/bison.simple"
@@ -2187,7 +2193,7 @@
   switch (yyn) {
 
 case 2:
-#line 992 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 992 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   if (yyvsp[0].UIntVal > (uint32_t)INT32_MAX)     // Outside of my range!
     ThrowException("Value too large for type!");
@@ -2195,7 +2201,7 @@
 ;
     break;}
 case 4:
-#line 1000 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1000 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   if (yyvsp[0].UInt64Val > (uint64_t)INT64_MAX)     // Outside of my range!
     ThrowException("Value too large for type!");
@@ -2203,55 +2209,55 @@
 ;
     break;}
 case 33:
-#line 1023 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1023 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.StrVal = yyvsp[-1].StrVal;
   ;
     break;}
 case 34:
-#line 1026 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1026 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.StrVal = 0;
   ;
     break;}
 case 35:
-#line 1030 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1030 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::InternalLinkage; ;
     break;}
 case 36:
-#line 1031 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1031 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::LinkOnceLinkage; ;
     break;}
 case 37:
-#line 1032 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1032 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::WeakLinkage; ;
     break;}
 case 38:
-#line 1033 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1033 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::AppendingLinkage; ;
     break;}
 case 39:
-#line 1034 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1034 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.Linkage = GlobalValue::ExternalLinkage; ;
     break;}
 case 40:
-#line 1036 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1036 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = CallingConv::C; ;
     break;}
 case 41:
-#line 1037 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1037 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = CallingConv::C; ;
     break;}
 case 42:
-#line 1038 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1038 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = CallingConv::Fast; ;
     break;}
 case 43:
-#line 1039 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1039 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = CallingConv::Cold; ;
     break;}
 case 44:
-#line 1040 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1040 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
                    if ((unsigned)yyvsp[0].UInt64Val != yyvsp[0].UInt64Val)
                      ThrowException("Calling conv too large!");
@@ -2259,11 +2265,11 @@
                  ;
     break;}
 case 45:
-#line 1048 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1048 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = 0; ;
     break;}
 case 46:
-#line 1049 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1049 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.UIntVal = yyvsp[0].UInt64Val;
   if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal))
@@ -2271,11 +2277,11 @@
 ;
     break;}
 case 47:
-#line 1054 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1054 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.UIntVal = 0; ;
     break;}
 case 48:
-#line 1055 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1055 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.UIntVal = yyvsp[0].UInt64Val;
   if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal))
@@ -2283,7 +2289,7 @@
 ;
     break;}
 case 49:
-#line 1062 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1062 "/Users/bocchino/vllvm-checkin/src/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] == '\\')
@@ -2292,30 +2298,30 @@
 ;
     break;}
 case 50:
-#line 1069 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1069 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.StrVal = 0; ;
     break;}
 case 51:
-#line 1070 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1070 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.StrVal = yyvsp[0].StrVal; ;
     break;}
 case 52:
-#line 1075 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1075 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {;
     break;}
 case 53:
-#line 1076 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1076 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {;
     break;}
 case 54:
-#line 1077 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1077 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     CurGV->setSection(yyvsp[0].StrVal);
     free(yyvsp[0].StrVal);
   ;
     break;}
 case 55:
-#line 1081 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1081 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[0].UInt64Val != 0 && !isPowerOf2_32(yyvsp[0].UInt64Val))
       ThrowException("Alignment must be a power of two!");
@@ -2323,15 +2329,15 @@
   ;
     break;}
 case 57:
-#line 1094 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1094 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ;
     break;}
 case 59:
-#line 1095 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1095 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType); ;
     break;}
 case 60:
-#line 1097 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1097 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (!UpRefs.empty())
       ThrowException("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription());
@@ -2339,25 +2345,25 @@
   ;
     break;}
 case 74:
-#line 1108 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1108 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TypeVal = new PATypeHolder(OpaqueType::get());
   ;
     break;}
 case 75:
-#line 1111 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1111 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType);
   ;
     break;}
 case 76:
-#line 1114 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1114 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {            // Named types are also simple types...
   yyval.TypeVal = new PATypeHolder(getTypeVal(yyvsp[0].ValIDVal));
 ;
     break;}
 case 77:
-#line 1120 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1120 "/Users/bocchino/vllvm-checkin/src/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
@@ -2367,7 +2373,7 @@
   ;
     break;}
 case 78:
-#line 1127 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1127 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {           // Function derived type?
     std::vector<const Type*> Params;
     for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-1].TypeList->begin(),
@@ -2382,14 +2388,14 @@
   ;
     break;}
 case 79:
-#line 1139 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1139 "/Users/bocchino/vllvm-checkin/src/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 1143 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1143 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {          // Packed array type?
      const llvm::Type* ElemTy = yyvsp[-1].TypeVal->get();
      if ((unsigned)yyvsp[-3].UInt64Val != yyvsp[-3].UInt64Val)
@@ -2403,7 +2409,7 @@
   ;
     break;}
 case 81:
-#line 1154 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1154 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                        // Structure type?
     std::vector<const Type*> Elements;
     for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-1].TypeList->begin(),
@@ -2415,51 +2421,51 @@
   ;
     break;}
 case 82:
-#line 1163 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1163 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                                  // Empty structure type?
     yyval.TypeVal = new PATypeHolder(StructType::get(std::vector<const Type*>()));
   ;
     break;}
 case 83:
-#line 1166 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1166 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                             // Pointer type?
     yyval.TypeVal = new PATypeHolder(HandleUpRefs(PointerType::get(*yyvsp[-1].TypeVal)));
     delete yyvsp[-1].TypeVal;
   ;
     break;}
 case 84:
-#line 1174 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1174 "/Users/bocchino/vllvm-checkin/src/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 1178 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1178 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     (yyval.TypeList=yyvsp[-2].TypeList)->push_back(*yyvsp[0].TypeVal); delete yyvsp[0].TypeVal;
   ;
     break;}
 case 87:
-#line 1184 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1184 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     (yyval.TypeList=yyvsp[-2].TypeList)->push_back(Type::VoidTy);
   ;
     break;}
 case 88:
-#line 1187 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1187 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     (yyval.TypeList = new std::list<PATypeHolder>())->push_back(Type::VoidTy);
   ;
     break;}
 case 89:
-#line 1190 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1190 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TypeList = new std::list<PATypeHolder>();
   ;
     break;}
 case 90:
-#line 1200 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1200 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { // Nonempty unsized arr
     const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-3].TypeVal->get());
     if (ATy == 0)
@@ -2487,7 +2493,7 @@
   ;
     break;}
 case 91:
-#line 1225 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1225 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-2].TypeVal->get());
     if (ATy == 0)
@@ -2503,7 +2509,7 @@
   ;
     break;}
 case 92:
-#line 1238 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1238 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-2].TypeVal->get());
     if (ATy == 0)
@@ -2534,7 +2540,7 @@
   ;
     break;}
 case 93:
-#line 1266 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1266 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { // Nonempty unsized arr
     const PackedType *PTy = dyn_cast<PackedType>(yyvsp[-3].TypeVal->get());
     if (PTy == 0)
@@ -2562,7 +2568,7 @@
   ;
     break;}
 case 94:
-#line 1291 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1291 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const StructType *STy = dyn_cast<StructType>(yyvsp[-3].TypeVal->get());
     if (STy == 0)
@@ -2585,7 +2591,7 @@
   ;
     break;}
 case 95:
-#line 1311 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1311 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const StructType *STy = dyn_cast<StructType>(yyvsp[-2].TypeVal->get());
     if (STy == 0)
@@ -2600,7 +2606,7 @@
   ;
     break;}
 case 96:
-#line 1323 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1323 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *PTy = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get());
     if (PTy == 0)
@@ -2612,14 +2618,14 @@
   ;
     break;}
 case 97:
-#line 1332 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1332 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ConstVal = UndefValue::get(yyvsp[-1].TypeVal->get());
     delete yyvsp[-1].TypeVal;
   ;
     break;}
 case 98:
-#line 1336 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1336 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *Ty = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get());
     if (Ty == 0)
@@ -2681,7 +2687,7 @@
   ;
     break;}
 case 99:
-#line 1395 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1395 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-1].TypeVal->get() != yyvsp[0].ConstVal->getType())
       ThrowException("Mismatched types for constant expression!");
@@ -2690,7 +2696,7 @@
   ;
     break;}
 case 100:
-#line 1401 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1401 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const Type *Ty = yyvsp[-1].TypeVal->get();
     if (isa<FunctionType>(Ty) || Ty == Type::LabelTy || isa<OpaqueType>(Ty))
@@ -2700,7 +2706,7 @@
   ;
     break;}
 case 101:
-#line 1409 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1409 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {      // integral constants
     if (!ConstantSInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].SInt64Val))
       ThrowException("Constant value doesn't fit in type!");
@@ -2708,7 +2714,7 @@
   ;
     break;}
 case 102:
-#line 1414 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1414 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {            // integral constants
     if (!ConstantUInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].UInt64Val))
       ThrowException("Constant value doesn't fit in type!");
@@ -2716,19 +2722,19 @@
   ;
     break;}
 case 103:
-#line 1419 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1419 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                      // Boolean constants
     yyval.ConstVal = ConstantBool::True;
   ;
     break;}
 case 104:
-#line 1422 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1422 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                     // Boolean constants
     yyval.ConstVal = ConstantBool::False;
   ;
     break;}
 case 105:
-#line 1425 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1425 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                   // Float & Double constants
     if (!ConstantFP::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].FPVal))
       ThrowException("Floating point constant invalid for type!!");
@@ -2736,7 +2742,7 @@
   ;
     break;}
 case 106:
-#line 1432 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1432 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (!yyvsp[-3].ConstVal->getType()->isFirstClassType())
       ThrowException("cast constant expression from a non-primitive type: '" +
@@ -2749,7 +2755,7 @@
   ;
     break;}
 case 107:
-#line 1442 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1442 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PointerType>(yyvsp[-2].ConstVal->getType()))
       ThrowException("GetElementPtr requires a pointer operand!");
@@ -2783,7 +2789,7 @@
   ;
     break;}
 case 108:
-#line 1473 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1473 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-5].ConstVal->getType() != Type::BoolTy)
       ThrowException("Select condition must be of boolean type!");
@@ -2793,7 +2799,7 @@
   ;
     break;}
 case 109:
-#line 1480 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1480 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       ThrowException("Binary operator types must match!");
@@ -2817,7 +2823,7 @@
   ;
     break;}
 case 110:
-#line 1501 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1501 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       ThrowException("Logical operator types must match!");
@@ -2830,7 +2836,7 @@
   ;
     break;}
 case 111:
-#line 1511 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1511 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       ThrowException("setcc operand types must match!");
@@ -2838,7 +2844,7 @@
   ;
     break;}
 case 112:
-#line 1516 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1516 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-1].ConstVal->getType() != Type::UByteTy)
       ThrowException("Shift count for shift constant must be unsigned byte!");
@@ -2848,54 +2854,65 @@
   ;
     break;}
 case 113:
-#line 1526 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1523 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
-    (yyval.ConstVector = yyvsp[-2].ConstVector)->push_back(yyvsp[0].ConstVal);
+        if (!isa<PackedType>(yyvsp[-3].ConstVal->getType()))
+      ThrowException("First operand of extractelement must be "
+                     "packed type!");
+    if (yyvsp[-1].ConstVal->getType() != Type::UIntTy)
+      ThrowException("Second operand of extractelement must be uint!");
+    yyval.ConstVal = ConstantExpr::getExtractElement(yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
   ;
     break;}
 case 114:
-#line 1529 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 1533 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
+    (yyval.ConstVector = yyvsp[-2].ConstVector)->push_back(yyvsp[0].ConstVal);
+  ;
+    break;}
+case 115:
+#line 1536 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
+{
     yyval.ConstVector = new std::vector<Constant*>();
     yyval.ConstVector->push_back(yyvsp[0].ConstVal);
   ;
     break;}
-case 115:
-#line 1536 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 116:
+#line 1543 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.BoolVal = false; ;
     break;}
-case 116:
-#line 1536 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 117:
+#line 1543 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.BoolVal = true; ;
     break;}
-case 117:
-#line 1546 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 118:
+#line 1553 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.ModuleVal = ParserResult = yyvsp[0].ModuleVal;
   CurModule.ModuleDone();
 ;
     break;}
-case 118:
-#line 1553 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 119:
+#line 1560 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ModuleVal = yyvsp[-1].ModuleVal;
     CurFun.FunctionDone();
   ;
     break;}
-case 119:
-#line 1557 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 120:
+#line 1564 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ModuleVal = yyvsp[-1].ModuleVal;
   ;
     break;}
-case 120:
-#line 1560 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 121:
+#line 1567 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ModuleVal = yyvsp[-1].ModuleVal;
   ;
     break;}
-case 121:
-#line 1563 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 122:
+#line 1570 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ModuleVal = CurModule.CurrentModule;
     // Emit an error if there are any unresolved types left.
@@ -2908,8 +2925,8 @@
     }
   ;
     break;}
-case 122:
-#line 1576 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 123:
+#line 1583 "/Users/bocchino/vllvm-checkin/src/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:
@@ -2931,69 +2948,69 @@
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 123:
-#line 1596 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 124:
+#line 1603 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {       // Function prototypes can be in const pool
   ;
     break;}
-case 124:
-#line 1598 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 125:
+#line 1605 "/Users/bocchino/vllvm-checkin/src/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 125:
-#line 1601 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 126:
+#line 1608 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     CurGV = 0;
   ;
     break;}
-case 126:
-#line 1604 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 127:
+#line 1611 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     CurGV = ParseGlobalVariable(yyvsp[-3].StrVal, GlobalValue::ExternalLinkage,
                                              yyvsp[-1].BoolVal, *yyvsp[0].TypeVal, 0);
     delete yyvsp[0].TypeVal;
                                                    ;
     break;}
-case 127:
-#line 1608 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 128:
+#line 1615 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     CurGV = 0;
   ;
     break;}
-case 128:
-#line 1611 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 129:
+#line 1618 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { 
   ;
     break;}
-case 129:
-#line 1613 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 130:
+#line 1620 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   ;
     break;}
-case 130:
-#line 1615 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 131:
+#line 1622 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { 
   ;
     break;}
-case 131:
-#line 1620 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 132:
+#line 1627 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.Endianness = Module::BigEndian; ;
     break;}
-case 132:
-#line 1621 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 133:
+#line 1628 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.Endianness = Module::LittleEndian; ;
     break;}
-case 133:
-#line 1623 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 134:
+#line 1630 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     CurModule.CurrentModule->setEndianness(yyvsp[0].Endianness);
   ;
     break;}
-case 134:
-#line 1626 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 135:
+#line 1633 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[0].UInt64Val == 32)
       CurModule.CurrentModule->setPointerSize(Module::Pointer32);
@@ -3003,89 +3020,89 @@
       ThrowException("Invalid pointer size: '" + utostr(yyvsp[0].UInt64Val) + "'!");
   ;
     break;}
-case 135:
-#line 1634 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 136:
+#line 1641 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     CurModule.CurrentModule->setTargetTriple(yyvsp[0].StrVal);
     free(yyvsp[0].StrVal);
   ;
     break;}
-case 137:
-#line 1641 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 138:
+#line 1648 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
           CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal);
           free(yyvsp[0].StrVal);
         ;
     break;}
-case 138:
-#line 1645 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 139:
+#line 1652 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
           CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal);
           free(yyvsp[0].StrVal);
         ;
     break;}
-case 139:
-#line 1649 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 140:
+#line 1656 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
         ;
     break;}
-case 143:
-#line 1658 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 144:
+#line 1665 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.StrVal = 0; ;
     break;}
-case 144:
-#line 1660 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 145:
+#line 1667 "/Users/bocchino/vllvm-checkin/src/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 145:
-#line 1666 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 146:
+#line 1673 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = yyvsp[-2].ArgList;
     yyvsp[-2].ArgList->push_back(*yyvsp[0].ArgVal);
     delete yyvsp[0].ArgVal;
   ;
     break;}
-case 146:
-#line 1671 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 147:
+#line 1678 "/Users/bocchino/vllvm-checkin/src/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 147:
-#line 1677 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 148:
+#line 1684 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = yyvsp[0].ArgList;
   ;
     break;}
-case 148:
-#line 1680 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 149:
+#line 1687 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = yyvsp[-2].ArgList;
     yyval.ArgList->push_back(std::pair<PATypeHolder*,
                             char*>(new PATypeHolder(Type::VoidTy), 0));
   ;
     break;}
-case 149:
-#line 1685 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 150:
+#line 1692 "/Users/bocchino/vllvm-checkin/src/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 150:
-#line 1689 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 151:
+#line 1696 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ArgList = 0;
   ;
     break;}
-case 151:
-#line 1694 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 152:
+#line 1701 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   UnEscapeLexed(yyvsp[-5].StrVal);
   std::string FunctionName(yyvsp[-5].StrVal);
@@ -3171,8 +3188,8 @@
   }
 ;
     break;}
-case 154:
-#line 1781 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 155:
+#line 1788 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.FunctionVal = CurFun.CurrentFunction;
 
@@ -3181,73 +3198,73 @@
   yyval.FunctionVal->setLinkage(yyvsp[-2].Linkage);
 ;
     break;}
-case 157:
-#line 1791 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 158:
+#line 1798 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.FunctionVal = yyvsp[-1].FunctionVal;
 ;
     break;}
-case 158:
-#line 1795 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 159:
+#line 1802 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { CurFun.isDeclare = true; ;
     break;}
-case 159:
-#line 1795 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 160:
+#line 1802 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   yyval.FunctionVal = CurFun.CurrentFunction;
   CurFun.FunctionDone();
 ;
     break;}
-case 160:
-#line 1804 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 161:
+#line 1811 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {    // A reference to a direct constant
     yyval.ValIDVal = ValID::create(yyvsp[0].SInt64Val);
   ;
     break;}
-case 161:
-#line 1807 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 162:
+#line 1814 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::create(yyvsp[0].UInt64Val);
   ;
     break;}
-case 162:
-#line 1810 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 163:
+#line 1817 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                     // Perhaps it's an FP constant?
     yyval.ValIDVal = ValID::create(yyvsp[0].FPVal);
   ;
     break;}
-case 163:
-#line 1813 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 164:
+#line 1820 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::create(ConstantBool::True);
   ;
     break;}
-case 164:
-#line 1816 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 165:
+#line 1823 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::create(ConstantBool::False);
   ;
     break;}
-case 165:
-#line 1819 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 166:
+#line 1826 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::createNull();
   ;
     break;}
-case 166:
-#line 1822 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 167:
+#line 1829 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::createUndef();
   ;
     break;}
-case 167:
-#line 1825 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 168:
+#line 1832 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {     // A vector zero constant.
     yyval.ValIDVal = ValID::createZeroInit();
   ;
     break;}
-case 168:
-#line 1828 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 169:
+#line 1835 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { // Nonempty unsized packed vector
     const Type *ETy = (*yyvsp[-1].ConstVector)[0]->getType();
     int NumElements = yyvsp[-1].ConstVector->size(); 
@@ -3273,44 +3290,44 @@
     delete PTy; delete yyvsp[-1].ConstVector;
   ;
     break;}
-case 169:
-#line 1852 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 170:
+#line 1859 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValIDVal = ValID::create(yyvsp[0].ConstVal);
   ;
     break;}
-case 170:
-#line 1859 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 171:
+#line 1866 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {  // Is it an integer reference...?
     yyval.ValIDVal = ValID::create(yyvsp[0].SIntVal);
   ;
     break;}
-case 171:
-#line 1862 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 172:
+#line 1869 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                   // Is it a named reference...?
     yyval.ValIDVal = ValID::create(yyvsp[0].StrVal);
   ;
     break;}
-case 174:
-#line 1873 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 175:
+#line 1880 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValueVal = getVal(*yyvsp[-1].TypeVal, yyvsp[0].ValIDVal); delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 175:
-#line 1877 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 176:
+#line 1884 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.FunctionVal = yyvsp[-1].FunctionVal;
   ;
     break;}
-case 176:
-#line 1880 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 177:
+#line 1887 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { // Do not allow functions with 0 basic blocks   
     yyval.FunctionVal = yyvsp[-1].FunctionVal;
   ;
     break;}
-case 177:
-#line 1888 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 178:
+#line 1895 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     setValueName(yyvsp[0].TermInstVal, yyvsp[-1].StrVal);
     InsertValue(yyvsp[0].TermInstVal);
@@ -3320,15 +3337,15 @@
     yyval.BasicBlockVal = yyvsp[-2].BasicBlockVal;
   ;
     break;}
-case 178:
-#line 1897 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 179:
+#line 1904 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyvsp[-1].BasicBlockVal->getInstList().push_back(yyvsp[0].InstVal);
     yyval.BasicBlockVal = yyvsp[-1].BasicBlockVal;
   ;
     break;}
-case 179:
-#line 1901 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 180:
+#line 1908 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BasicBlockVal = CurBB = getBBVal(ValID::create((int)CurFun.NextBBNum++), true);
 
@@ -3340,8 +3357,8 @@
     BBL.splice(BBL.end(), BBL, yyval.BasicBlockVal);
   ;
     break;}
-case 180:
-#line 1911 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 181:
+#line 1918 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BasicBlockVal = CurBB = getBBVal(ValID::create(yyvsp[0].StrVal), true);
 
@@ -3353,32 +3370,32 @@
     BBL.splice(BBL.end(), BBL, yyval.BasicBlockVal);
   ;
     break;}
-case 181:
-#line 1922 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 182:
+#line 1929 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {              // Return with a result...
     yyval.TermInstVal = new ReturnInst(yyvsp[0].ValueVal);
   ;
     break;}
-case 182:
-#line 1925 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 183:
+#line 1932 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                                       // Return with no result...
     yyval.TermInstVal = new ReturnInst();
   ;
     break;}
-case 183:
-#line 1928 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 184:
+#line 1935 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {                         // Unconditional Branch...
     yyval.TermInstVal = new BranchInst(getBBVal(yyvsp[0].ValIDVal));
   ;
     break;}
-case 184:
-#line 1931 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 185:
+#line 1938 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {  
     yyval.TermInstVal = new BranchInst(getBBVal(yyvsp[-3].ValIDVal), getBBVal(yyvsp[0].ValIDVal), getVal(Type::BoolTy, yyvsp[-6].ValIDVal));
   ;
     break;}
-case 185:
-#line 1934 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 186:
+#line 1941 "/Users/bocchino/vllvm-checkin/src/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;
@@ -3394,15 +3411,15 @@
     delete yyvsp[-1].JumpTable;
   ;
     break;}
-case 186:
-#line 1948 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 187:
+#line 1955 "/Users/bocchino/vllvm-checkin/src/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 187:
-#line 1953 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 188:
+#line 1960 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *PFTy;
     const FunctionType *Ty;
@@ -3456,20 +3473,20 @@
     delete yyvsp[-7].ValueList;
   ;
     break;}
-case 188:
-#line 2005 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 189:
+#line 2012 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TermInstVal = new UnwindInst();
   ;
     break;}
-case 189:
-#line 2008 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 190:
+#line 2015 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.TermInstVal = new UnreachableInst();
   ;
     break;}
-case 190:
-#line 2014 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 191:
+#line 2021 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.JumpTable = yyvsp[-5].JumpTable;
     Constant *V = cast<Constant>(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal));
@@ -3479,8 +3496,8 @@
     yyval.JumpTable->push_back(std::make_pair(V, getBBVal(yyvsp[0].ValIDVal)));
   ;
     break;}
-case 191:
-#line 2022 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 192:
+#line 2029 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.JumpTable = new std::vector<std::pair<Constant*, BasicBlock*> >();
     Constant *V = cast<Constant>(getValNonImprovising(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal));
@@ -3491,8 +3508,8 @@
     yyval.JumpTable->push_back(std::make_pair(V, getBBVal(yyvsp[0].ValIDVal)));
   ;
     break;}
-case 192:
-#line 2032 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 193:
+#line 2039 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
   // Is this definition named?? if so, assign the name...
   setValueName(yyvsp[0].InstVal, yyvsp[-1].StrVal);
@@ -3500,54 +3517,54 @@
   yyval.InstVal = yyvsp[0].InstVal;
 ;
     break;}
-case 193:
-#line 2039 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 194:
+#line 2046 "/Users/bocchino/vllvm-checkin/src/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 194:
-#line 2044 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 195:
+#line 2051 "/Users/bocchino/vllvm-checkin/src/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 195:
-#line 2051 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 196:
+#line 2058 "/Users/bocchino/vllvm-checkin/src/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 196:
-#line 2055 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 197:
+#line 2062 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.ValueList = yyvsp[-2].ValueList;
     yyvsp[-2].ValueList->push_back(yyvsp[0].ValueVal);
   ;
     break;}
-case 198:
-#line 2061 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 199:
+#line 2068 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { yyval.ValueList = 0; ;
     break;}
-case 199:
-#line 2063 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 200:
+#line 2070 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = true;
   ;
     break;}
-case 200:
-#line 2066 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 201:
+#line 2073 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = false;
   ;
     break;}
-case 201:
-#line 2072 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 202:
+#line 2079 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (!(*yyvsp[-3].TypeVal)->isInteger() && !(*yyvsp[-3].TypeVal)->isFloatingPoint() && 
         !isa<PackedType>((*yyvsp[-3].TypeVal).get()))
@@ -3561,8 +3578,8 @@
     delete yyvsp[-3].TypeVal;
   ;
     break;}
-case 202:
-#line 2084 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 203:
+#line 2091 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (!(*yyvsp[-3].TypeVal)->isIntegral()) {
       if (!isa<PackedType>(yyvsp[-3].TypeVal->get()) ||
@@ -3575,8 +3592,8 @@
     delete yyvsp[-3].TypeVal;
   ;
     break;}
-case 203:
-#line 2095 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 204:
+#line 2102 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if(isa<PackedType>((*yyvsp[-3].TypeVal).get())) {
       ThrowException(
@@ -3588,8 +3605,8 @@
     delete yyvsp[-3].TypeVal;
   ;
     break;}
-case 204:
-#line 2105 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 205:
+#line 2112 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     std::cerr << "WARNING: Use of eliminated 'not' instruction:"
               << " Replacing with 'xor'.\n";
@@ -3603,8 +3620,8 @@
       ThrowException("Could not create a xor instruction!");
   ;
     break;}
-case 205:
-#line 2117 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 206:
+#line 2124 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[0].ValueVal->getType() != Type::UByteTy)
       ThrowException("Shift amount must be ubyte!");
@@ -3613,8 +3630,8 @@
     yyval.InstVal = new ShiftInst(yyvsp[-3].OtherOpVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
   ;
     break;}
-case 206:
-#line 2124 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 207:
+#line 2131 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (!yyvsp[0].TypeVal->get()->isFirstClassType())
       ThrowException("cast instruction to a non-primitive type: '" +
@@ -3623,8 +3640,8 @@
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 207:
-#line 2131 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 208:
+#line 2138 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (yyvsp[-4].ValueVal->getType() != Type::BoolTy)
       ThrowException("select condition must be boolean!");
@@ -3633,16 +3650,16 @@
     yyval.InstVal = new SelectInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
   ;
     break;}
-case 208:
-#line 2138 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 209:
+#line 2145 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     NewVarArgs = true;
     yyval.InstVal = new VAArgInst(yyvsp[-2].ValueVal, *yyvsp[0].TypeVal);
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 209:
-#line 2143 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 210:
+#line 2150 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     ObsoleteVarArgs = true;
     const Type* ArgTy = yyvsp[-2].ValueVal->getType();
@@ -3663,8 +3680,8 @@
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 210:
-#line 2162 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 211:
+#line 2169 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     ObsoleteVarArgs = true;
     const Type* ArgTy = yyvsp[-2].ValueVal->getType();
@@ -3688,8 +3705,19 @@
     delete yyvsp[0].TypeVal;
   ;
     break;}
-case 211:
-#line 2184 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 212:
+#line 2191 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
+{
+    if (!isa<PackedType>(yyvsp[-2].ValueVal->getType()))
+      ThrowException("First operand of extractelement must be a "
+                     "packed type val!");
+    if (yyvsp[0].ValueVal->getType() != Type::UIntTy)
+      ThrowException("Second operand of extractelement must be a uint!");
+    yyval.InstVal = new ExtractElementInst(yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
+  ;
+    break;}
+case 213:
+#line 2199 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const Type *Ty = yyvsp[0].PHIList->front().first->getType();
     if (!Ty->isFirstClassType())
@@ -3705,8 +3733,8 @@
     delete yyvsp[0].PHIList;  // Free the list...
   ;
     break;}
-case 212:
-#line 2198 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 214:
+#line 2213 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *PFTy;
     const FunctionType *Ty;
@@ -3765,66 +3793,66 @@
     delete yyvsp[-1].ValueList;
   ;
     break;}
-case 213:
-#line 2255 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 215:
+#line 2270 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.InstVal = yyvsp[0].InstVal;
   ;
     break;}
-case 214:
-#line 2261 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 216:
+#line 2276 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { 
     yyval.ValueList = yyvsp[0].ValueList; 
   ;
     break;}
-case 215:
-#line 2263 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 217:
+#line 2278 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 { 
     yyval.ValueList = new std::vector<Value*>(); 
   ;
     break;}
-case 216:
-#line 2267 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 218:
+#line 2282 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = true;
   ;
     break;}
-case 217:
-#line 2270 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 219:
+#line 2285 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.BoolVal = false;
   ;
     break;}
-case 218:
-#line 2276 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 220:
+#line 2291 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.InstVal = new MallocInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal);
     delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 219:
-#line 2280 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 221:
+#line 2295 "/Users/bocchino/vllvm-checkin/src/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 220:
-#line 2284 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 222:
+#line 2299 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     yyval.InstVal = new AllocaInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal);
     delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 221:
-#line 2288 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 223:
+#line 2303 "/Users/bocchino/vllvm-checkin/src/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 222:
-#line 2292 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 224:
+#line 2307 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PointerType>(yyvsp[0].ValueVal->getType()))
       ThrowException("Trying to free nonpointer type " + 
@@ -3832,8 +3860,8 @@
     yyval.InstVal = new FreeInst(yyvsp[0].ValueVal);
   ;
     break;}
-case 223:
-#line 2299 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 225:
+#line 2314 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PointerType>(yyvsp[-1].TypeVal->get()))
       ThrowException("Can't load from nonpointer type: " +
@@ -3845,8 +3873,8 @@
     delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 224:
-#line 2309 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 226:
+#line 2324 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     const PointerType *PT = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get());
     if (!PT)
@@ -3861,8 +3889,8 @@
     delete yyvsp[-1].TypeVal;
   ;
     break;}
-case 225:
-#line 2322 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+case 227:
+#line 2337 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 {
     if (!isa<PointerType>(yyvsp[-2].TypeVal->get()))
       ThrowException("getelementptr insn requires pointer operand!");
@@ -4107,7 +4135,7 @@
     }
   return 1;
 }
-#line 2345 "/Volumes/ProjectsDisk/cvs/llvm/lib/AsmParser/llvmAsmParser.y"
+#line 2360 "/Users/bocchino/vllvm-checkin/src/lib/AsmParser/llvmAsmParser.y"
 
 int yyerror(const char *ErrorMsg) {
   std::string where 


Index: llvm/lib/AsmParser/llvmAsmParser.h
diff -u llvm/lib/AsmParser/llvmAsmParser.h:1.12 llvm/lib/AsmParser/llvmAsmParser.h:1.13
--- llvm/lib/AsmParser/llvmAsmParser.h:1.12	Fri Nov 11 18:11:49 2005
+++ llvm/lib/AsmParser/llvmAsmParser.h	Tue Jan 10 13:04:32 2006
@@ -128,8 +128,9 @@
 #define	SHL	345
 #define	SHR	346
 #define	VAARG	347
-#define	VAARG_old	348
-#define	VANEXT_old	349
+#define	EXTRACTELEMENT	348
+#define	VAARG_old	349
+#define	VANEXT_old	350
 
 
 extern YYSTYPE llvmAsmlval;


Index: llvm/lib/AsmParser/llvmAsmParser.y
diff -u llvm/lib/AsmParser/llvmAsmParser.y:1.241 llvm/lib/AsmParser/llvmAsmParser.y:1.242
--- llvm/lib/AsmParser/llvmAsmParser.y:1.241	Wed Dec 21 12:31:29 2005
+++ llvm/lib/AsmParser/llvmAsmParser.y	Tue Jan 10 13:04:32 2006
@@ -979,7 +979,7 @@
 
 // Other Operators
 %type  <OtherOpVal> ShiftOps
-%token <OtherOpVal> PHI_TOK CAST SELECT SHL SHR VAARG
+%token <OtherOpVal> PHI_TOK CAST SELECT SHL SHR VAARG EXTRACTELEMENT
 %token VAARG_old VANEXT_old //OBSOLETE
 
 
@@ -1519,9 +1519,16 @@
     if (!$3->getType()->isInteger())
       ThrowException("Shift constant expression requires integer operand!");
     $$ = ConstantExpr::get($1, $3, $5);
+  }
+  | EXTRACTELEMENT '(' ConstVal ',' ConstVal ')' {
+        if (!isa<PackedType>($3->getType()))
+      ThrowException("First operand of extractelement must be "
+                     "packed type!");
+    if ($5->getType() != Type::UIntTy)
+      ThrowException("Second operand of extractelement must be uint!");
+    $$ = ConstantExpr::getExtractElement($3, $5);
   };
 
-
 // ConstVector - A list of comma separated constants.
 ConstVector : ConstVector ',' ConstVal {
     ($$ = $1)->push_back($3);
@@ -2180,6 +2187,14 @@
     CurBB->getInstList().push_back(tmp);
     $$ = new LoadInst(foo);
     delete $4;
+  }
+  | EXTRACTELEMENT ResolvedVal ',' ResolvedVal {
+    if (!isa<PackedType>($2->getType()))
+      ThrowException("First operand of extractelement must be a "
+                     "packed type val!");
+    if ($4->getType() != Type::UIntTy)
+      ThrowException("Second operand of extractelement must be a uint!");
+    $$ = new ExtractElementInst($2, $4);
   }
   | PHI_TOK PHIList {
     const Type *Ty = $2->front().first->getType();






More information about the llvm-commits mailing list