Fix MemoryBuffer breakage correctly.
authorJeff Cohen <jeffc@jolt-lang.org>
Sun, 29 Apr 2007 14:43:31 +0000 (14:43 +0000)
committerJeff Cohen <jeffc@jolt-lang.org>
Sun, 29 Apr 2007 14:43:31 +0000 (14:43 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36561 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/System/Path.h
lib/AsmParser/llvmAsmParser.cpp.cvs
lib/AsmParser/llvmAsmParser.h.cvs
lib/Support/MemoryBuffer.cpp

index 573edda15c2e40162cc0d44a8df4f859391ea76e..a595efbfed451cb74a770dd71f42d42e6f0679f7 100644 (file)
@@ -559,6 +559,14 @@ namespace sys {
       explicit PathWithStatus(const std::string& p) 
         : Path(p), status(), fsIsValid(false) {}
 
+      /// This constructor will accept a character range as a path.  No checking
+      /// is done on this path to determine if it is valid.  To determine
+      /// validity of the path, use the isValid method. 
+      /// @param p The path to assign.
+      /// @brief Construct a Path from a string.
+      explicit PathWithStatus(const char *StrStart, unsigned StrLen)
+        : Path(StrStart, StrLen), status(), fsIsValid(false) {}
+
       /// Makes a copy of \p that to \p this.
       /// @returns \p this
       /// @brief Assignment Operator
index 9f92ce5bf9b571b74eb1e7673ae96cd20493c404..7a2cddc6d0e21818bbd39badeffcf2d9a8f061bc 100644 (file)
@@ -1,7 +1,7 @@
-/* A Bison parser, made by GNU Bison 2.1.  */
+/* A Bison parser, made from /usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y, by GNU bison 1.75.  */
 
 /* Skeleton parser for Yacc-like parsing with Bison,
-   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -15,8 +15,8 @@
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
 
 /* As a special exception, when this file is copied by Bison into a
    Bison output file, you may use that output file without restriction.
    USER NAME SPACE" below.  */
 
 /* Identify Bison output.  */
-#define YYBISON 1
-
-/* Bison version.  */
-#define YYBISON_VERSION "2.1"
-
-/* Skeleton name.  */
-#define YYSKELETON_NAME "yacc.c"
+#define YYBISON        1
 
 /* Pure parsers.  */
-#define YYPURE 0
+#define YYPURE 0
 
 /* Using locations.  */
 #define YYLSP_NEEDED 0
 
-/* Substitute the variable and function names.  */
+/* If NAME_PREFIX is specified substitute the variables and functions
+   names.  */
 #define yyparse llvmAsmparse
 #define yylex   llvmAsmlex
 #define yyerror llvmAsmerror
      HIDDEN = 390
    };
 #endif
-/* Tokens.  */
 #define ESINT64VAL 258
 #define EUINT64VAL 259
 #define ESAPINTVAL 260
 
 
 /* Copy the first part of user declarations.  */
-#line 14 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 14 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
 
 #include "ParserInternals.h"
 #include "llvm/CallingConv.h"
@@ -1293,14 +1287,9 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) {
 # define YYERROR_VERBOSE 0
 #endif
 
-/* Enabling the token table.  */
-#ifndef YYTOKEN_TABLE
-# define YYTOKEN_TABLE 0
-#endif
-
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 955 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-typedef union YYSTYPE {
+#ifndef YYSTYPE
+#line 955 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+typedef union {
   llvm::Module                           *ModuleVal;
   llvm::Function                         *FunctionVal;
   llvm::BasicBlock                       *BasicBlockVal;
@@ -1345,61 +1334,44 @@ typedef union YYSTYPE {
   llvm::Instruction::OtherOps       OtherOpVal;
   llvm::ICmpInst::Predicate         IPredicate;
   llvm::FCmpInst::Predicate         FPredicate;
-} YYSTYPE;
-/* Line 196 of yacc.c.  */
-#line 1351 "llvmAsmParser.tab.c"
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
+} yystype;
+/* Line 188 of /usr/local/share/bison/yacc.c.  */
+#line 1340 "llvmAsmParser.tab.c"
+# define YYSTYPE yystype
 # define YYSTYPE_IS_TRIVIAL 1
 #endif
 
-
+#ifndef YYLTYPE
+typedef struct yyltype
+{
+  int first_line;
+  int first_column;
+  int last_line;
+  int last_column;
+} yyltype;
+# define YYLTYPE yyltype
+# define YYLTYPE_IS_TRIVIAL 1
+#endif
 
 /* Copy the second part of user declarations.  */
 
 
-/* Line 219 of yacc.c.  */
-#line 1363 "llvmAsmParser.tab.c"
-
-#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
-# define YYSIZE_T __SIZE_TYPE__
-#endif
-#if ! defined (YYSIZE_T) && defined (size_t)
-# define YYSIZE_T size_t
-#endif
-#if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus))
-# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
-# define YYSIZE_T size_t
-#endif
-#if ! defined (YYSIZE_T)
-# define YYSIZE_T unsigned int
-#endif
-
-#ifndef YY_
-# if YYENABLE_NLS
-#  if ENABLE_NLS
-#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
-#   define YY_(msgid) dgettext ("bison-runtime", msgid)
-#  endif
-# endif
-# ifndef YY_
-#  define YY_(msgid) msgid
-# endif
-#endif
+/* Line 213 of /usr/local/share/bison/yacc.c.  */
+#line 1361 "llvmAsmParser.tab.c"
 
 #if ! defined (yyoverflow) || YYERROR_VERBOSE
 
 /* The parser invokes alloca or malloc; define the necessary symbols.  */
 
-# ifdef YYSTACK_USE_ALLOCA
-#  if YYSTACK_USE_ALLOCA
-#   ifdef __GNUC__
-#    define YYSTACK_ALLOC __builtin_alloca
-#   else
+# if YYSTACK_USE_ALLOCA
+#  define YYSTACK_ALLOC alloca
+# else
+#  ifndef YYSTACK_USE_ALLOCA
+#   if defined (alloca) || defined (_ALLOCA_H)
 #    define YYSTACK_ALLOC alloca
-#    if defined (__STDC__) || defined (__cplusplus)
-#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-#     define YYINCLUDED_STDLIB_H
+#   else
+#    ifdef __GNUC__
+#     define YYSTACK_ALLOC __builtin_alloca
 #    endif
 #   endif
 #  endif
@@ -1408,76 +1380,50 @@ typedef union YYSTYPE {
 # ifdef YYSTACK_ALLOC
    /* Pacify GCC's `empty if-body' warning. */
 #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
-#  ifndef YYSTACK_ALLOC_MAXIMUM
-    /* The OS might guarantee only one guard page at the bottom of the stack,
-       and a page size can be as small as 4096 bytes.  So we cannot safely
-       invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
-       to allow for a few compiler-allocated temporary stack slots.  */
-#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2005 */
-#  endif
 # else
-#  define YYSTACK_ALLOC YYMALLOC
-#  define YYSTACK_FREE YYFREE
-#  ifndef YYSTACK_ALLOC_MAXIMUM
-#   define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1)
-#  endif
-#  ifdef __cplusplus
-extern "C" {
-#  endif
-#  ifndef YYMALLOC
-#   define YYMALLOC malloc
-#   if (! defined (malloc) && ! defined (YYINCLUDED_STDLIB_H) \
-       && (defined (__STDC__) || defined (__cplusplus)))
-void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
-#   endif
-#  endif
-#  ifndef YYFREE
-#   define YYFREE free
-#   if (! defined (free) && ! defined (YYINCLUDED_STDLIB_H) \
-       && (defined (__STDC__) || defined (__cplusplus)))
-void free (void *); /* INFRINGES ON USER NAME SPACE */
-#   endif
-#  endif
-#  ifdef __cplusplus
-}
+#  if defined (__STDC__) || defined (__cplusplus)
+#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+#   define YYSIZE_T size_t
 #  endif
+#  define YYSTACK_ALLOC malloc
+#  define YYSTACK_FREE free
 # endif
 #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
 
 
 #if (! defined (yyoverflow) \
      && (! defined (__cplusplus) \
-        || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
+        || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
 
 /* A type that is properly aligned for any stack member.  */
 union yyalloc
 {
-  short int yyss;
+  short yyss;
   YYSTYPE yyvs;
   };
 
 /* The size of the maximum gap between one aligned stack and the next.  */
-# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
+# define YYSTACK_GAP_MAX (sizeof (union yyalloc) - 1)
 
 /* The size of an array large to enough to hold all stacks, each with
    N elements.  */
 # define YYSTACK_BYTES(N) \
-     ((N) * (sizeof (short int) + sizeof (YYSTYPE))                    \
-      + YYSTACK_GAP_MAXIMUM)
+     ((N) * (sizeof (short) + sizeof (YYSTYPE))                                \
+      + YYSTACK_GAP_MAX)
 
 /* Copy COUNT objects from FROM to TO.  The source and destination do
    not overlap.  */
 # ifndef YYCOPY
-#  if defined (__GNUC__) && 1 < __GNUC__
+#  if 1 < __GNUC__
 #   define YYCOPY(To, From, Count) \
       __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
 #  else
 #   define YYCOPY(To, From, Count)             \
       do                                       \
        {                                       \
-         YYSIZE_T yyi;                         \
+         register YYSIZE_T yyi;                \
          for (yyi = 0; yyi < (Count); yyi++)   \
-           (To)[yyi] = (From)[yyi];            \
+           (To)[yyi] = (From)[yyi];    \
        }                                       \
       while (0)
 #  endif
@@ -1494,7 +1440,7 @@ union yyalloc
        YYSIZE_T yynewbytes;                                            \
        YYCOPY (&yyptr->Stack, Stack, yysize);                          \
        Stack = &yyptr->Stack;                                          \
-       yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
+       yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX;   \
        yyptr += yynewbytes / sizeof (*yyptr);                          \
       }                                                                        \
     while (0)
@@ -1504,12 +1450,11 @@ union yyalloc
 #if defined (__STDC__) || defined (__cplusplus)
    typedef signed char yysigned_char;
 #else
-   typedef short int yysigned_char;
+   typedef short yysigned_char;
 #endif
 
 /* YYFINAL -- State number of the termination state. */
 #define YYFINAL  41
-/* YYLAST -- Last index in YYTABLE.  */
 #define YYLAST   1600
 
 /* YYNTOKENS -- Number of terminals. */
@@ -1525,8 +1470,8 @@ union yyalloc
 #define YYUNDEFTOK  2
 #define YYMAXUTOK   390
 
-#define YYTRANSLATE(YYX)                                               \
-  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
+#define YYTRANSLATE(X) \
+  ((unsigned)(X) <= YYMAXUTOK ? yytranslate[X] : YYUNDEFTOK)
 
 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
 static const unsigned char yytranslate[] =
@@ -1576,7 +1521,7 @@ static const unsigned char yytranslate[] =
 #if YYDEBUG
 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
    YYRHS.  */
-static const unsigned short int yyprhs[] =
+static const unsigned short yyprhs[] =
 {
        0,     0,     3,     5,     7,     9,    11,    13,    15,    17,
       19,    21,    23,    25,    27,    29,    31,    33,    35,    37,
@@ -1611,7 +1556,7 @@ static const unsigned short int yyprhs[] =
 };
 
 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
-static const short int yyrhs[] =
+static const short yyrhs[] =
 {
      194,     0,    -1,    69,    -1,    70,    -1,    71,    -1,    72,
       -1,    73,    -1,    74,    -1,    75,    -1,    76,    -1,    77,
@@ -1710,20 +1655,20 @@ static const short int yyrhs[] =
 };
 
 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
-static const unsigned short int yyrline[] =
+static const unsigned short yyrline[] =
 {
        0,  1111,  1111,  1111,  1111,  1111,  1111,  1111,  1111,  1111,
     1111,  1112,  1112,  1112,  1112,  1112,  1112,  1113,  1113,  1113,
-    1113,  1113,  1113,  1114,  1114,  1114,  1114,  1114,  1114,  1117,
+    1113,  1113,  1113,  1113,  1114,  1114,  1114,  1114,  1114,  1117,
     1117,  1118,  1118,  1119,  1119,  1120,  1120,  1121,  1121,  1125,
     1125,  1126,  1126,  1127,  1127,  1128,  1128,  1129,  1129,  1130,
     1130,  1131,  1131,  1132,  1133,  1138,  1139,  1139,  1141,  1141,
     1142,  1142,  1146,  1150,  1155,  1155,  1157,  1158,  1163,  1169,
     1170,  1171,  1172,  1173,  1177,  1178,  1179,  1183,  1184,  1185,
     1189,  1190,  1191,  1195,  1196,  1197,  1198,  1199,  1203,  1204,
-    1205,  1208,  1209,  1210,  1211,  1212,  1213,  1214,  1221,  1222,
+    1205,  1208,  1208,  1209,  1210,  1211,  1212,  1213,  1221,  1222,
     1223,  1224,  1227,  1228,  1233,  1234,  1235,  1238,  1239,  1246,
-    1247,  1253,  1254,  1262,  1270,  1271,  1276,  1277,  1278,  1283,
+    1246,  1253,  1253,  1262,  1270,  1270,  1276,  1276,  1278,  1283,
     1296,  1296,  1296,  1296,  1299,  1303,  1307,  1314,  1319,  1327,
     1357,  1388,  1393,  1405,  1415,  1419,  1429,  1436,  1443,  1450,
     1455,  1460,  1467,  1468,  1475,  1482,  1490,  1496,  1508,  1536,
@@ -1745,58 +1690,58 @@ static const unsigned short int yyrline[] =
 };
 #endif
 
-#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
-/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
+#if YYDEBUG || YYERROR_VERBOSE
+/* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
    First, the terminals, then, starting at YYNTOKENS, nonterminals. */
 static const char *const yytname[] =
 {
-  "$end", "error", "$undefined", "ESINT64VAL", "EUINT64VAL", "ESAPINTVAL",
-  "EUAPINTVAL", "LOCALVAL_ID", "GLOBALVAL_ID", "FPVAL", "VOID", "INTTYPE",
-  "FLOAT", "DOUBLE", "LABEL", "TYPE", "LOCALVAR", "GLOBALVAR", "LABELSTR",
-  "STRINGCONSTANT", "ATSTRINGCONSTANT", "ZEROINITIALIZER", "TRUETOK",
-  "FALSETOK", "BEGINTOK", "ENDTOK", "DECLARE", "DEFINE", "GLOBAL",
-  "CONSTANT", "SECTION", "ALIAS", "VOLATILE", "THREAD_LOCAL", "TO",
-  "DOTDOTDOT", "NULL_TOK", "UNDEF", "INTERNAL", "LINKONCE", "WEAK",
-  "APPENDING", "DLLIMPORT", "DLLEXPORT", "EXTERN_WEAK", "OPAQUE",
-  "EXTERNAL", "TARGET", "TRIPLE", "ALIGN", "DEPLIBS", "CALL", "TAIL",
-  "ASM_TOK", "MODULE", "SIDEEFFECT", "CC_TOK", "CCC_TOK", "FASTCC_TOK",
-  "COLDCC_TOK", "X86_STDCALLCC_TOK", "X86_FASTCALLCC_TOK", "DATALAYOUT",
-  "RET", "BR", "SWITCH", "INVOKE", "UNWIND", "UNREACHABLE", "ADD", "SUB",
-  "MUL", "UDIV", "SDIV", "FDIV", "UREM", "SREM", "FREM", "AND", "OR",
-  "XOR", "SHL", "LSHR", "ASHR", "ICMP", "FCMP", "EQ", "NE", "SLT", "SGT",
-  "SLE", "SGE", "ULT", "UGT", "ULE", "UGE", "OEQ", "ONE", "OLT", "OGT",
-  "OLE", "OGE", "ORD", "UNO", "UEQ", "UNE", "MALLOC", "ALLOCA", "FREE",
-  "LOAD", "STORE", "GETELEMENTPTR", "TRUNC", "ZEXT", "SEXT", "FPTRUNC",
-  "FPEXT", "BITCAST", "UITOFP", "SITOFP", "FPTOUI", "FPTOSI", "INTTOPTR",
-  "PTRTOINT", "PHI_TOK", "SELECT", "VAARG", "EXTRACTELEMENT",
-  "INSERTELEMENT", "SHUFFLEVECTOR", "NORETURN", "INREG", "SRET",
-  "NOUNWIND", "DEFAULT", "HIDDEN", "'='", "','", "'*'", "'\\\\'", "'('",
-  "')'", "'['", "'x'", "']'", "'<'", "'>'", "'{'", "'}'", "'c'", "$accept",
-  "ArithmeticOps", "LogicalOps", "CastOps", "IPredicates", "FPredicates",
-  "IntType", "FPType", "LocalName", "OptLocalName", "OptLocalAssign",
-  "GlobalName", "OptGlobalAssign", "GlobalAssign", "GVInternalLinkage",
-  "GVExternalLinkage", "GVVisibilityStyle", "FunctionDeclareLinkage",
-  "FunctionDefineLinkage", "AliasLinkage", "OptCallingConv", "ParamAttr",
-  "OptParamAttrs", "FuncAttr", "OptFuncAttrs", "OptAlign", "OptCAlign",
-  "SectionString", "OptSection", "GlobalVarAttributes",
-  "GlobalVarAttribute", "PrimType", "Types", "ArgType", "ResultTypes",
-  "ArgTypeList", "ArgTypeListI", "TypeListI", "ConstVal", "ConstExpr",
-  "ConstVector", "GlobalType", "ThreadLocal", "AliaseeRef", "Module",
-  "DefinitionList", "Definition", "@1", "@2", "@3", "@4", "@5", "AsmBlock",
-  "TargetDefinition", "LibrariesDefinition", "LibList", "ArgListH",
-  "ArgList", "FunctionHeaderH", "BEGIN", "FunctionHeader", "END",
-  "Function", "FunctionProto", "OptSideEffect", "ConstValueRef",
-  "SymbolicValueRef", "ValueRef", "ResolvedVal", "BasicBlockList",
-  "BasicBlock", "InstructionList", "BBTerminatorInst", "JumpTable", "Inst",
-  "PHIList", "ValueRefList", "IndexList", "OptTailCall", "InstVal",
-  "OptVolatile", "MemoryInst", 0
+  "$end", "error", "$undefined", "ESINT64VAL", "EUINT64VAL", "ESAPINTVAL", 
+  "EUAPINTVAL", "LOCALVAL_ID", "GLOBALVAL_ID", "FPVAL", "VOID", "INTTYPE", 
+  "FLOAT", "DOUBLE", "LABEL", "TYPE", "LOCALVAR", "GLOBALVAR", "LABELSTR", 
+  "STRINGCONSTANT", "ATSTRINGCONSTANT", "ZEROINITIALIZER", "TRUETOK", 
+  "FALSETOK", "BEGINTOK", "ENDTOK", "DECLARE", "DEFINE", "GLOBAL", 
+  "CONSTANT", "SECTION", "ALIAS", "VOLATILE", "THREAD_LOCAL", "TO", 
+  "DOTDOTDOT", "NULL_TOK", "UNDEF", "INTERNAL", "LINKONCE", "WEAK", 
+  "APPENDING", "DLLIMPORT", "DLLEXPORT", "EXTERN_WEAK", "OPAQUE", 
+  "EXTERNAL", "TARGET", "TRIPLE", "ALIGN", "DEPLIBS", "CALL", "TAIL", 
+  "ASM_TOK", "MODULE", "SIDEEFFECT", "CC_TOK", "CCC_TOK", "FASTCC_TOK", 
+  "COLDCC_TOK", "X86_STDCALLCC_TOK", "X86_FASTCALLCC_TOK", "DATALAYOUT", 
+  "RET", "BR", "SWITCH", "INVOKE", "UNWIND", "UNREACHABLE", "ADD", "SUB", 
+  "MUL", "UDIV", "SDIV", "FDIV", "UREM", "SREM", "FREM", "AND", "OR", 
+  "XOR", "SHL", "LSHR", "ASHR", "ICMP", "FCMP", "EQ", "NE", "SLT", "SGT", 
+  "SLE", "SGE", "ULT", "UGT", "ULE", "UGE", "OEQ", "ONE", "OLT", "OGT", 
+  "OLE", "OGE", "ORD", "UNO", "UEQ", "UNE", "MALLOC", "ALLOCA", "FREE", 
+  "LOAD", "STORE", "GETELEMENTPTR", "TRUNC", "ZEXT", "SEXT", "FPTRUNC", 
+  "FPEXT", "BITCAST", "UITOFP", "SITOFP", "FPTOUI", "FPTOSI", "INTTOPTR", 
+  "PTRTOINT", "PHI_TOK", "SELECT", "VAARG", "EXTRACTELEMENT", 
+  "INSERTELEMENT", "SHUFFLEVECTOR", "NORETURN", "INREG", "SRET", 
+  "NOUNWIND", "DEFAULT", "HIDDEN", "'='", "','", "'*'", "'\\\\'", "'('", 
+  "')'", "'['", "'x'", "']'", "'<'", "'>'", "'{'", "'}'", "'c'", 
+  "$accept", "ArithmeticOps", "LogicalOps", "CastOps", "IPredicates", 
+  "FPredicates", "IntType", "FPType", "LocalName", "OptLocalName", 
+  "OptLocalAssign", "GlobalName", "OptGlobalAssign", "GlobalAssign", 
+  "GVInternalLinkage", "GVExternalLinkage", "GVVisibilityStyle", 
+  "FunctionDeclareLinkage", "FunctionDefineLinkage", "AliasLinkage", 
+  "OptCallingConv", "ParamAttr", "OptParamAttrs", "FuncAttr", 
+  "OptFuncAttrs", "OptAlign", "OptCAlign", "SectionString", "OptSection", 
+  "GlobalVarAttributes", "GlobalVarAttribute", "PrimType", "Types", 
+  "ArgType", "ResultTypes", "ArgTypeList", "ArgTypeListI", "TypeListI", 
+  "ConstVal", "ConstExpr", "ConstVector", "GlobalType", "ThreadLocal", 
+  "AliaseeRef", "Module", "DefinitionList", "Definition", "@1", "@2", 
+  "@3", "@4", "@5", "AsmBlock", "TargetDefinition", "LibrariesDefinition", 
+  "LibList", "ArgListH", "ArgList", "FunctionHeaderH", "BEGIN", 
+  "FunctionHeader", "END", "Function", "FunctionProto", "OptSideEffect", 
+  "ConstValueRef", "SymbolicValueRef", "ValueRef", "ResolvedVal", 
+  "BasicBlockList", "BasicBlock", "InstructionList", "BBTerminatorInst", 
+  "JumpTable", "Inst", "PHIList", "ValueRefList", "IndexList", 
+  "OptTailCall", "InstVal", "OptVolatile", "MemoryInst", 0
 };
 #endif
 
 # ifdef YYPRINT
 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
    token YYLEX-NUM.  */
-static const unsigned short int yytoknum[] =
+static const unsigned short yytoknum[] =
 {
        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
@@ -1889,7 +1834,7 @@ static const unsigned char yyr2[] =
 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
    STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
    means the default is an error.  */
-static const unsigned short int yydefact[] =
+static const unsigned short yydefact[] =
 {
       67,    58,    64,    59,    65,   192,   190,     0,     0,     0,
        0,     0,     0,    77,    66,     0,    67,   188,    80,    83,
@@ -1952,7 +1897,7 @@ static const unsigned short int yydefact[] =
 };
 
 /* YYDEFGOTO[NTERM-NUM]. */
-static const short int yydefgoto[] =
+static const short yydefgoto[] =
 {
       -1,   250,   251,   252,   276,   293,   150,   151,    73,   497,
       11,    74,    13,    14,    38,    39,    40,    45,    51,   111,
@@ -1968,7 +1913,7 @@ static const short int yydefgoto[] =
 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    STATE-NUM.  */
 #define YYPACT_NINF -472
-static const short int yypact[] =
+static const short yypact[] =
 {
       50,  -472,  -472,  -472,  -472,  -472,  -472,   -20,  -110,    93,
      -64,   160,    68,    14,  -472,   185,   203,  -472,    77,   199,
@@ -2031,7 +1976,7 @@ static const short int yypact[] =
 };
 
 /* YYPGOTO[NTERM-NUM].  */
-static const short int yypgoto[] =
+static const short yypgoto[] =
 {
     -472,   401,   404,   405,   292,   294,  -161,  -472,     0,     8,
      443,     9,  -472,  -472,  -472,  -472,    44,  -472,  -472,  -472,
@@ -2047,9 +1992,9 @@ static const short int yypgoto[] =
 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
    positive, shift that token.  If negative, reduce the rule which
    number is the opposite.  If zero, do what YYDEFACT says.
-   If YYTABLE_NINF, syntax error.  */
+   If YYTABLE_NINF, parse error.  */
 #define YYTABLE_NINF -188
-static const short int yytable[] =
+static const short yytable[] =
 {
       10,    76,   253,   264,   322,   459,   228,   155,   263,    12,
       99,   387,   370,   254,   263,   387,    10,   156,   265,   296,
@@ -2214,7 +2159,7 @@ static const short int yytable[] =
      206
 };
 
-static const short int yycheck[] =
+static const short yycheck[] =
 {
        0,    26,   152,   164,   224,   414,   145,   121,    11,     0,
        4,   318,   295,   152,    11,   322,    16,    24,   165,   187,
@@ -2443,15 +2388,30 @@ static const unsigned char yystos[] =
       14,    14,   137,   217,   217,    14,    67,   217,    14,   217
 };
 
+#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
+# define YYSIZE_T __SIZE_TYPE__
+#endif
+#if ! defined (YYSIZE_T) && defined (size_t)
+# define YYSIZE_T size_t
+#endif
+#if ! defined (YYSIZE_T)
+# if defined (__STDC__) || defined (__cplusplus)
+#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+#  define YYSIZE_T size_t
+# endif
+#endif
+#if ! defined (YYSIZE_T)
+# define YYSIZE_T unsigned int
+#endif
+
 #define yyerrok                (yyerrstatus = 0)
 #define yyclearin      (yychar = YYEMPTY)
-#define YYEMPTY                (-2)
+#define YYEMPTY                -2
 #define YYEOF          0
 
 #define YYACCEPT       goto yyacceptlab
 #define YYABORT                goto yyabortlab
-#define YYERROR                goto yyerrorlab
-
+#define YYERROR                goto yyerrlab1
 
 /* Like YYERROR except do call yyerror.  This remains here temporarily
    to ease the transition to the new meaning of YYERROR, for GCC.
@@ -2467,71 +2427,34 @@ do                                                              \
     {                                                          \
       yychar = (Token);                                                \
       yylval = (Value);                                                \
-      yytoken = YYTRANSLATE (yychar);                          \
+      yychar1 = YYTRANSLATE (yychar);                          \
       YYPOPSTACK;                                              \
       goto yybackup;                                           \
     }                                                          \
   else                                                         \
-    {                                                          \
-      yyerror (YY_("syntax error: cannot back up")); \
+    {                                                          \
+      yyerror ("syntax error: cannot back up");                        \
       YYERROR;                                                 \
     }                                                          \
 while (0)
 
-
 #define YYTERROR       1
 #define YYERRCODE      256
 
+/* YYLLOC_DEFAULT -- Compute the default location (before the actions
+   are run).  */
 
-/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
-   If N is 0, then set CURRENT to the empty location which ends
-   the previous symbol: RHS[0] (always defined).  */
-
-#define YYRHSLOC(Rhs, K) ((Rhs)[K])
 #ifndef YYLLOC_DEFAULT
-# define YYLLOC_DEFAULT(Current, Rhs, N)                               \
-    do                                                                 \
-      if (N)                                                           \
-       {                                                               \
-         (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
-         (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
-         (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
-         (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
-       }                                                               \
-      else                                                             \
-       {                                                               \
-         (Current).first_line   = (Current).last_line   =              \
-           YYRHSLOC (Rhs, 0).last_line;                                \
-         (Current).first_column = (Current).last_column =              \
-           YYRHSLOC (Rhs, 0).last_column;                              \
-       }                                                               \
-    while (0)
+# define YYLLOC_DEFAULT(Current, Rhs, N)           \
+  Current.first_line   = Rhs[1].first_line;      \
+  Current.first_column = Rhs[1].first_column;    \
+  Current.last_line    = Rhs[N].last_line;       \
+  Current.last_column  = Rhs[N].last_column;
 #endif
 
-
-/* YY_LOCATION_PRINT -- Print the location on the stream.
-   This macro was not mandated originally: define only if we know
-   we won't break user code: when these are the locations we know.  */
-
-#ifndef YY_LOCATION_PRINT
-# if YYLTYPE_IS_TRIVIAL
-#  define YY_LOCATION_PRINT(File, Loc)                 \
-     fprintf (File, "%d.%d-%d.%d",                     \
-              (Loc).first_line, (Loc).first_column,    \
-              (Loc).last_line,  (Loc).last_column)
-# else
-#  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
-# endif
-#endif
-
-
 /* YYLEX -- calling `yylex' with the right arguments.  */
 
-#ifdef YYLEX_PARAM
-# define YYLEX yylex (YYLEX_PARAM)
-#else
-# define YYLEX yylex ()
-#endif
+#define YYLEX  yylex ()
 
 /* Enable debugging if requested.  */
 #if YYDEBUG
@@ -2546,86 +2469,19 @@ do {                                            \
   if (yydebug)                                 \
     YYFPRINTF Args;                            \
 } while (0)
-
-# define YY_SYMBOL_PRINT(Title, Type, Value, Location)         \
-do {                                                           \
-  if (yydebug)                                                 \
-    {                                                          \
-      YYFPRINTF (stderr, "%s ", Title);                                \
-      yysymprint (stderr,                                      \
-                  Type, Value);        \
-      YYFPRINTF (stderr, "\n");                                        \
-    }                                                          \
-} while (0)
-
-/*------------------------------------------------------------------.
-| yy_stack_print -- Print the state stack from its BOTTOM up to its |
-| TOP (included).                                                   |
-`------------------------------------------------------------------*/
-
-#if defined (__STDC__) || defined (__cplusplus)
-static void
-yy_stack_print (short int *bottom, short int *top)
-#else
-static void
-yy_stack_print (bottom, top)
-    short int *bottom;
-    short int *top;
-#endif
-{
-  YYFPRINTF (stderr, "Stack now");
-  for (/* Nothing. */; bottom <= top; ++bottom)
-    YYFPRINTF (stderr, " %d", *bottom);
-  YYFPRINTF (stderr, "\n");
-}
-
-# define YY_STACK_PRINT(Bottom, Top)                           \
-do {                                                           \
-  if (yydebug)                                                 \
-    yy_stack_print ((Bottom), (Top));                          \
-} while (0)
-
-
-/*------------------------------------------------.
-| Report that the YYRULE is going to be reduced.  |
-`------------------------------------------------*/
-
-#if defined (__STDC__) || defined (__cplusplus)
-static void
-yy_reduce_print (int yyrule)
-#else
-static void
-yy_reduce_print (yyrule)
-    int yyrule;
-#endif
-{
-  int yyi;
-  unsigned long int yylno = yyrline[yyrule];
-  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu), ",
-             yyrule - 1, yylno);
-  /* Print the symbols being reduced, and their result.  */
-  for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
-    YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
-  YYFPRINTF (stderr, "-> %s\n", yytname[yyr1[yyrule]]);
-}
-
-# define YY_REDUCE_PRINT(Rule)         \
-do {                                   \
-  if (yydebug)                         \
-    yy_reduce_print (Rule);            \
+# define YYDSYMPRINT(Args)                     \
+do {                                           \
+  if (yydebug)                                 \
+    yysymprint Args;                           \
 } while (0)
-
 /* Nonzero means print parse trace.  It is left uninitialized so that
    multiple parsers can coexist.  */
 int yydebug;
 #else /* !YYDEBUG */
 # define YYDPRINTF(Args)
-# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
-# define YY_STACK_PRINT(Bottom, Top)
-# define YY_REDUCE_PRINT(Rule)
+# define YYDSYMPRINT(Args)
 #endif /* !YYDEBUG */
 
-
 /* YYINITDEPTH -- initial size of the parser's stacks.  */
 #ifndef        YYINITDEPTH
 # define YYINITDEPTH 200
@@ -2635,9 +2491,13 @@ int yydebug;
    if the built-in stack extension method is used).
 
    Do not make this value too large; the results are undefined if
-   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
+   SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
    evaluated with infinite-precision integer arithmetic.  */
 
+#if YYMAXDEPTH == 0
+# undef YYMAXDEPTH
+#endif
+
 #ifndef YYMAXDEPTH
 # define YYMAXDEPTH 10000
 #endif
@@ -2659,7 +2519,7 @@ yystrlen (yystr)
      const char *yystr;
 #   endif
 {
-  const char *yys = yystr;
+  register const char *yys = yystr;
 
   while (*yys++ != '\0')
     continue;
@@ -2684,8 +2544,8 @@ yystpcpy (yydest, yysrc)
      const char *yysrc;
 #   endif
 {
-  char *yyd = yydest;
-  const char *yys = yysrc;
+  register char *yyd = yydest;
+  register const char *yys = yysrc;
 
   while ((*yyd++ = *yys++) != '\0')
     continue;
@@ -2695,186 +2555,124 @@ yystpcpy (yydest, yysrc)
 #  endif
 # endif
 
-# ifndef yytnamerr
-/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
-   quotes and backslashes, so that it's suitable for yyerror.  The
-   heuristic is that double-quoting is unnecessary unless the string
-   contains an apostrophe, a comma, or backslash (other than
-   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
-   null, do not copy; instead, return the length of what the result
-   would have been.  */
-static YYSIZE_T
-yytnamerr (char *yyres, const char *yystr)
-{
-  if (*yystr == '"')
-    {
-      size_t yyn = 0;
-      char const *yyp = yystr;
-
-      for (;;)
-       switch (*++yyp)
-         {
-         case '\'':
-         case ',':
-           goto do_not_strip_quotes;
-
-         case '\\':
-           if (*++yyp != '\\')
-             goto do_not_strip_quotes;
-           /* Fall through.  */
-         default:
-           if (yyres)
-             yyres[yyn] = *yyp;
-           yyn++;
-           break;
-
-         case '"':
-           if (yyres)
-             yyres[yyn] = '\0';
-           return yyn;
-         }
-    do_not_strip_quotes: ;
-    }
-
-  if (! yyres)
-    return yystrlen (yystr);
-
-  return yystpcpy (yyres, yystr) - yyres;
-}
-# endif
-
-#endif /* YYERROR_VERBOSE */
+#endif /* !YYERROR_VERBOSE */
 
 \f
 
 #if YYDEBUG
-/*--------------------------------.
-| Print this symbol on YYOUTPUT.  |
-`--------------------------------*/
+/*-----------------------------.
+| Print this symbol on YYOUT.  |
+`-----------------------------*/
 
-#if defined (__STDC__) || defined (__cplusplus)
 static void
-yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
+#if defined (__STDC__) || defined (__cplusplus)
+yysymprint (FILE* yyout, int yytype, YYSTYPE yyvalue)
 #else
-static void
-yysymprint (yyoutput, yytype, yyvaluep)
-    FILE *yyoutput;
+yysymprint (yyout, yytype, yyvalue)
+    FILE* yyout;
     int yytype;
-    YYSTYPE *yyvaluep;
+    YYSTYPE yyvalue;
 #endif
 {
   /* Pacify ``unused variable'' warnings.  */
-  (void) yyvaluep;
+  (void) yyvalue;
 
   if (yytype < YYNTOKENS)
-    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
-  else
-    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
-
-
+    {
+      YYFPRINTF (yyout, "token %s (", yytname[yytype]);
 # ifdef YYPRINT
-  if (yytype < YYNTOKENS)
-    YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
+      YYPRINT (yyout, yytoknum[yytype], yyvalue);
 # endif
+    }
+  else
+    YYFPRINTF (yyout, "nterm %s (", yytname[yytype]);
+
   switch (yytype)
     {
       default:
         break;
     }
-  YYFPRINTF (yyoutput, ")");
+  YYFPRINTF (yyout, ")");
 }
+#endif /* YYDEBUG. */
+
 
-#endif /* ! YYDEBUG */
 /*-----------------------------------------------.
 | Release the memory associated to this symbol.  |
 `-----------------------------------------------*/
 
-#if defined (__STDC__) || defined (__cplusplus)
 static void
-yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
+#if defined (__STDC__) || defined (__cplusplus)
+yydestruct (int yytype, YYSTYPE yyvalue)
 #else
-static void
-yydestruct (yymsg, yytype, yyvaluep)
-    const char *yymsg;
+yydestruct (yytype, yyvalue)
     int yytype;
-    YYSTYPE *yyvaluep;
+    YYSTYPE yyvalue;
 #endif
 {
   /* Pacify ``unused variable'' warnings.  */
-  (void) yyvaluep;
-
-  if (!yymsg)
-    yymsg = "Deleting";
-  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
+  (void) yyvalue;
 
   switch (yytype)
     {
-
       default:
         break;
     }
 }
+
 \f
 
-/* Prevent warnings from -Wmissing-prototypes.  */
+/* The user can define YYPARSE_PARAM as the name of an argument to be passed
+   into yyparse.  The argument should have type void *.
+   It should actually point to an object.
+   Grammar actions can access the variable by casting it
+   to the proper pointer type.  */
 
 #ifdef YYPARSE_PARAM
 # if defined (__STDC__) || defined (__cplusplus)
-int yyparse (void *YYPARSE_PARAM);
+#  define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
+#  define YYPARSE_PARAM_DECL
 # else
-int yyparse ();
+#  define YYPARSE_PARAM_ARG YYPARSE_PARAM
+#  define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
 # endif
-#else /* ! YYPARSE_PARAM */
-#if defined (__STDC__) || defined (__cplusplus)
+#else /* !YYPARSE_PARAM */
+# define YYPARSE_PARAM_ARG
+# define YYPARSE_PARAM_DECL
+#endif /* !YYPARSE_PARAM */
+
+/* Prevent warning if -Wstrict-prototypes.  */
+#ifdef __GNUC__
+# ifdef YYPARSE_PARAM
+int yyparse (void *);
+# else
 int yyparse (void);
-#else
-int yyparse ();
+# endif
 #endif
-#endif /* ! YYPARSE_PARAM */
-
 
 
-/* The look-ahead symbol.  */
+/* The lookahead symbol.  */
 int yychar;
 
-/* The semantic value of the look-ahead symbol.  */
+/* The semantic value of the lookahead symbol.  */
 YYSTYPE yylval;
 
-/* Number of syntax errors so far.  */
+/* Number of parse errors so far.  */
 int yynerrs;
 
 
-
-/*----------.
-| yyparse.  |
-`----------*/
-
-#ifdef YYPARSE_PARAM
-# if defined (__STDC__) || defined (__cplusplus)
-int yyparse (void *YYPARSE_PARAM)
-# else
-int yyparse (YYPARSE_PARAM)
-  void *YYPARSE_PARAM;
-# endif
-#else /* ! YYPARSE_PARAM */
-#if defined (__STDC__) || defined (__cplusplus)
-int
-yyparse (void)
-#else
 int
-yyparse ()
-
-#endif
-#endif
+yyparse (YYPARSE_PARAM_ARG)
+     YYPARSE_PARAM_DECL
 {
   
-  int yystate;
-  int yyn;
+  register int yystate;
+  register int yyn;
   int yyresult;
   /* Number of tokens to shift before error messages enabled.  */
   int yyerrstatus;
-  /* Look-ahead token as an internal (translated) token number.  */
-  int yytoken = 0;
+  /* Lookahead token as an internal (translated) token number.  */
+  int yychar1 = 0;
 
   /* Three stacks and their tools:
      `yyss': related to states,
@@ -2885,14 +2683,14 @@ yyparse ()
      to reallocate them elsewhere.  */
 
   /* The state stack.  */
-  short int yyssa[YYINITDEPTH];
-  short int *yyss = yyssa;
-  short int *yyssp;
+  short        yyssa[YYINITDEPTH];
+  short *yyss = yyssa;
+  register short *yyssp;
 
   /* The semantic value stack.  */
   YYSTYPE yyvsa[YYINITDEPTH];
   YYSTYPE *yyvs = yyvsa;
-  YYSTYPE *yyvsp;
+  register YYSTYPE *yyvsp;
 
 
 
@@ -2938,7 +2736,7 @@ yyparse ()
  yysetstate:
   *yyssp = yystate;
 
-  if (yyss + yystacksize - 1 <= yyssp)
+  if (yyssp >= yyss + yystacksize - 1)
     {
       /* Get the current used size of the three stacks, in elements.  */
       YYSIZE_T yysize = yyssp - yyss + 1;
@@ -2949,14 +2747,14 @@ yyparse ()
           these so that the &'s don't force the real ones into
           memory.  */
        YYSTYPE *yyvs1 = yyvs;
-       short int *yyss1 = yyss;
+       short *yyss1 = yyss;
 
 
        /* Each stack pointer address is followed by the size of the
           data in use in that stack, in bytes.  This used to be a
           conditional around just the two extra args, but that might
           be undefined if yyoverflow is a macro.  */
-       yyoverflow (YY_("memory exhausted"),
+       yyoverflow ("parser stack overflow",
                    &yyss1, yysize * sizeof (*yyssp),
                    &yyvs1, yysize * sizeof (*yyvsp),
 
@@ -2967,21 +2765,21 @@ yyparse ()
       }
 #else /* no yyoverflow */
 # ifndef YYSTACK_RELOCATE
-      goto yyexhaustedlab;
+      goto yyoverflowlab;
 # else
       /* Extend the stack our own way.  */
-      if (YYMAXDEPTH <= yystacksize)
-       goto yyexhaustedlab;
+      if (yystacksize >= YYMAXDEPTH)
+       goto yyoverflowlab;
       yystacksize *= 2;
-      if (YYMAXDEPTH < yystacksize)
+      if (yystacksize > YYMAXDEPTH)
        yystacksize = YYMAXDEPTH;
 
       {
-       short int *yyss1 = yyss;
+       short *yyss1 = yyss;
        union yyalloc *yyptr =
          (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
        if (! yyptr)
-         goto yyexhaustedlab;
+         goto yyoverflowlab;
        YYSTACK_RELOCATE (yyss);
        YYSTACK_RELOCATE (yyvs);
 
@@ -2999,7 +2797,7 @@ yyparse ()
       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
                  (unsigned long int) yystacksize));
 
-      if (yyss + yystacksize - 1 <= yyssp)
+      if (yyssp >= yyss + yystacksize - 1)
        YYABORT;
     }
 
@@ -3013,39 +2811,50 @@ yyparse ()
 yybackup:
 
 /* Do appropriate processing given the current state.  */
-/* Read a look-ahead token if we need one and don't already have one.  */
+/* Read a lookahead token if we need one and don't already have one.  */
 /* yyresume: */
 
-  /* First try to decide what to do without reference to look-ahead token.  */
+  /* First try to decide what to do without reference to lookahead token.  */
 
   yyn = yypact[yystate];
   if (yyn == YYPACT_NINF)
     goto yydefault;
 
-  /* Not known => get a look-ahead token if don't already have one.  */
+  /* Not known => get a lookahead token if don't already have one.  */
+
+  /* yychar is either YYEMPTY or YYEOF
+     or a valid token in external form.  */
 
-  /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */
   if (yychar == YYEMPTY)
     {
       YYDPRINTF ((stderr, "Reading a token: "));
       yychar = YYLEX;
     }
 
-  if (yychar <= YYEOF)
+  /* Convert token to internal form (in yychar1) for indexing tables with.  */
+
+  if (yychar <= 0)             /* This means end of input.  */
     {
-      yychar = yytoken = YYEOF;
+      yychar1 = 0;
+      yychar = YYEOF;          /* Don't call YYLEX any more.  */
+
       YYDPRINTF ((stderr, "Now at end of input.\n"));
     }
   else
     {
-      yytoken = YYTRANSLATE (yychar);
-      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
+      yychar1 = YYTRANSLATE (yychar);
+
+      /* We have to keep this `#if YYDEBUG', since we use variables
+        which are defined only if `YYDEBUG' is set.  */
+      YYDPRINTF ((stderr, "Next token is "));
+      YYDSYMPRINT ((stderr, yychar1, yylval));
+      YYDPRINTF ((stderr, "\n"));
     }
 
-  /* If the proper action on seeing token YYTOKEN is to reduce or to
+  /* If the proper action on seeing token YYCHAR1 is to reduce or to
      detect an error, take that action.  */
-  yyn += yytoken;
-  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
+  yyn += yychar1;
+  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yychar1)
     goto yydefault;
   yyn = yytable[yyn];
   if (yyn <= 0)
@@ -3059,8 +2868,9 @@ yybackup:
   if (yyn == YYFINAL)
     YYACCEPT;
 
-  /* Shift the look-ahead token.  */
-  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
+  /* Shift the lookahead token.  */
+  YYDPRINTF ((stderr, "Shifting token %d (%s), ",
+             yychar, yytname[yychar1]));
 
   /* Discard the token being shifted unless it is eof.  */
   if (yychar != YYEOF)
@@ -3106,519 +2916,535 @@ yyreduce:
   yyval = yyvsp[1-yylen];
 
 
-  YY_REDUCE_PRINT (yyn);
+
+#if YYDEBUG
+  /* We have to keep this `#if YYDEBUG', since we use variables which
+     are defined only if `YYDEBUG' is set.  */
+  if (yydebug)
+    {
+      int yyi;
+
+      YYFPRINTF (stderr, "Reducing via rule %d (line %d), ",
+                yyn - 1, yyrline[yyn]);
+
+      /* Print the symbols being reduced, and their result.  */
+      for (yyi = yyprhs[yyn]; yyrhs[yyi] >= 0; yyi++)
+       YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
+      YYFPRINTF (stderr, " -> %s\n", yytname[yyr1[yyn]]);
+    }
+#endif
   switch (yyn)
     {
         case 29:
-#line 1117 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_EQ; ;}
+#line 1117 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_EQ; }
     break;
 
   case 30:
-#line 1117 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_NE; ;}
+#line 1117 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_NE; }
     break;
 
   case 31:
-#line 1118 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_SLT; ;}
+#line 1118 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_SLT; }
     break;
 
   case 32:
-#line 1118 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_SGT; ;}
+#line 1118 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_SGT; }
     break;
 
   case 33:
-#line 1119 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_SLE; ;}
+#line 1119 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_SLE; }
     break;
 
   case 34:
-#line 1119 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_SGE; ;}
+#line 1119 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_SGE; }
     break;
 
   case 35:
-#line 1120 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_ULT; ;}
+#line 1120 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_ULT; }
     break;
 
   case 36:
-#line 1120 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_UGT; ;}
+#line 1120 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_UGT; }
     break;
 
   case 37:
-#line 1121 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_ULE; ;}
+#line 1121 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_ULE; }
     break;
 
   case 38:
-#line 1121 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.IPredicate) = ICmpInst::ICMP_UGE; ;}
+#line 1121 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.IPredicate = ICmpInst::ICMP_UGE; }
     break;
 
   case 39:
-#line 1125 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_OEQ; ;}
+#line 1125 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_OEQ; }
     break;
 
   case 40:
-#line 1125 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_ONE; ;}
+#line 1125 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_ONE; }
     break;
 
   case 41:
-#line 1126 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_OLT; ;}
+#line 1126 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_OLT; }
     break;
 
   case 42:
-#line 1126 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_OGT; ;}
+#line 1126 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_OGT; }
     break;
 
   case 43:
-#line 1127 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_OLE; ;}
+#line 1127 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_OLE; }
     break;
 
   case 44:
-#line 1127 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_OGE; ;}
+#line 1127 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_OGE; }
     break;
 
   case 45:
-#line 1128 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_ORD; ;}
+#line 1128 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_ORD; }
     break;
 
   case 46:
-#line 1128 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_UNO; ;}
+#line 1128 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_UNO; }
     break;
 
   case 47:
-#line 1129 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_UEQ; ;}
+#line 1129 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_UEQ; }
     break;
 
   case 48:
-#line 1129 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_UNE; ;}
+#line 1129 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_UNE; }
     break;
 
   case 49:
-#line 1130 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_ULT; ;}
+#line 1130 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_ULT; }
     break;
 
   case 50:
-#line 1130 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_UGT; ;}
+#line 1130 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_UGT; }
     break;
 
   case 51:
-#line 1131 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_ULE; ;}
+#line 1131 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_ULE; }
     break;
 
   case 52:
-#line 1131 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_UGE; ;}
+#line 1131 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_UGE; }
     break;
 
   case 53:
-#line 1132 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_TRUE; ;}
+#line 1132 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_TRUE; }
     break;
 
   case 54:
-#line 1133 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.FPredicate) = FCmpInst::FCMP_FALSE; ;}
+#line 1133 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.FPredicate = FCmpInst::FCMP_FALSE; }
     break;
 
   case 61:
-#line 1142 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.StrVal) = 0; ;}
+#line 1142 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.StrVal = 0; }
     break;
 
   case 62:
-#line 1146 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1146 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.StrVal) = (yyvsp[-1].StrVal);
+    yyval.StrVal = yyvsp[-1].StrVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 63:
-#line 1150 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1150 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.StrVal) = 0;
+    yyval.StrVal = 0;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 67:
-#line 1158 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1158 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.StrVal) = 0;
+    yyval.StrVal = 0;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 68:
-#line 1163 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1163 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.StrVal) = (yyvsp[-1].StrVal);
+    yyval.StrVal = yyvsp[-1].StrVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 69:
-#line 1169 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
+#line 1169 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::InternalLinkage; }
     break;
 
   case 70:
-#line 1170 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
+#line 1170 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::WeakLinkage; }
     break;
 
   case 71:
-#line 1171 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}
+#line 1171 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::LinkOnceLinkage; }
     break;
 
   case 72:
-#line 1172 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::AppendingLinkage; ;}
+#line 1172 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::AppendingLinkage; }
     break;
 
   case 73:
-#line 1173 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}
+#line 1173 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::DLLExportLinkage; }
     break;
 
   case 74:
-#line 1177 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}
+#line 1177 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::DLLImportLinkage; }
     break;
 
   case 75:
-#line 1178 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}
+#line 1178 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::ExternalWeakLinkage; }
     break;
 
   case 76:
-#line 1179 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
+#line 1179 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::ExternalLinkage; }
     break;
 
   case 77:
-#line 1183 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Visibility) = GlobalValue::DefaultVisibility; ;}
+#line 1183 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Visibility = GlobalValue::DefaultVisibility; }
     break;
 
   case 78:
-#line 1184 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Visibility) = GlobalValue::DefaultVisibility; ;}
+#line 1184 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Visibility = GlobalValue::DefaultVisibility; }
     break;
 
   case 79:
-#line 1185 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Visibility) = GlobalValue::HiddenVisibility;  ;}
+#line 1185 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Visibility = GlobalValue::HiddenVisibility;  }
     break;
 
   case 80:
-#line 1189 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
+#line 1189 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::ExternalLinkage; }
     break;
 
   case 81:
-#line 1190 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::DLLImportLinkage; ;}
+#line 1190 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::DLLImportLinkage; }
     break;
 
   case 82:
-#line 1191 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::ExternalWeakLinkage; ;}
+#line 1191 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::ExternalWeakLinkage; }
     break;
 
   case 83:
-#line 1195 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
+#line 1195 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::ExternalLinkage; }
     break;
 
   case 84:
-#line 1196 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
+#line 1196 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::InternalLinkage; }
     break;
 
   case 85:
-#line 1197 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::LinkOnceLinkage; ;}
+#line 1197 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::LinkOnceLinkage; }
     break;
 
   case 86:
-#line 1198 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
+#line 1198 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::WeakLinkage; }
     break;
 
   case 87:
-#line 1199 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::DLLExportLinkage; ;}
+#line 1199 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::DLLExportLinkage; }
     break;
 
   case 88:
-#line 1203 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::ExternalLinkage; ;}
+#line 1203 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::ExternalLinkage; }
     break;
 
   case 89:
-#line 1204 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::WeakLinkage; ;}
+#line 1204 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::WeakLinkage; }
     break;
 
   case 90:
-#line 1205 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.Linkage) = GlobalValue::InternalLinkage; ;}
+#line 1205 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.Linkage = GlobalValue::InternalLinkage; }
     break;
 
   case 91:
-#line 1208 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.UIntVal) = CallingConv::C; ;}
+#line 1208 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.UIntVal = CallingConv::C; }
     break;
 
   case 92:
-#line 1209 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.UIntVal) = CallingConv::C; ;}
+#line 1209 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.UIntVal = CallingConv::C; }
     break;
 
   case 93:
-#line 1210 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.UIntVal) = CallingConv::Fast; ;}
+#line 1210 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.UIntVal = CallingConv::Fast; }
     break;
 
   case 94:
-#line 1211 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.UIntVal) = CallingConv::Cold; ;}
+#line 1211 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.UIntVal = CallingConv::Cold; }
     break;
 
   case 95:
-#line 1212 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.UIntVal) = CallingConv::X86_StdCall; ;}
+#line 1212 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.UIntVal = CallingConv::X86_StdCall; }
     break;
 
   case 96:
-#line 1213 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.UIntVal) = CallingConv::X86_FastCall; ;}
+#line 1213 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.UIntVal = CallingConv::X86_FastCall; }
     break;
 
   case 97:
-#line 1214 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1214 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-                   if ((unsigned)(yyvsp[0].UInt64Val) != (yyvsp[0].UInt64Val))
+                   if ((unsigned)yyvsp[0].UInt64Val != yyvsp[0].UInt64Val)
                      GEN_ERROR("Calling conv too large");
-                   (yyval.UIntVal) = (yyvsp[0].UInt64Val);
+                   yyval.UIntVal = yyvsp[0].UInt64Val;
                   CHECK_FOR_ERROR
-                 ;}
+                 }
     break;
 
   case 98:
-#line 1221 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ParamAttrs) = ParamAttr::ZExt;      ;}
+#line 1221 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ParamAttrs = ParamAttr::ZExt;      }
     break;
 
   case 99:
-#line 1222 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ParamAttrs) = ParamAttr::SExt;      ;}
+#line 1222 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ParamAttrs = ParamAttr::SExt;      }
     break;
 
   case 100:
-#line 1223 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ParamAttrs) = ParamAttr::InReg;     ;}
+#line 1223 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ParamAttrs = ParamAttr::InReg;     }
     break;
 
   case 101:
-#line 1224 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ParamAttrs) = ParamAttr::StructRet; ;}
+#line 1224 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ParamAttrs = ParamAttr::StructRet; }
     break;
 
   case 102:
-#line 1227 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ParamAttrs) = ParamAttr::None; ;}
+#line 1227 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ParamAttrs = ParamAttr::None; }
     break;
 
   case 103:
-#line 1228 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1228 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-                (yyval.ParamAttrs) = (yyvsp[-1].ParamAttrs) | (yyvsp[0].ParamAttrs);
-              ;}
+                yyval.ParamAttrs = yyvsp[-1].ParamAttrs | yyvsp[0].ParamAttrs;
+              }
     break;
 
   case 104:
-#line 1233 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ParamAttrs) = ParamAttr::NoReturn; ;}
+#line 1233 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ParamAttrs = ParamAttr::NoReturn; }
     break;
 
   case 105:
-#line 1234 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ParamAttrs) = ParamAttr::NoUnwind; ;}
+#line 1234 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ParamAttrs = ParamAttr::NoUnwind; }
     break;
 
   case 107:
-#line 1238 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ParamAttrs) = ParamAttr::None; ;}
+#line 1238 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ParamAttrs = ParamAttr::None; }
     break;
 
   case 108:
-#line 1239 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1239 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-                (yyval.ParamAttrs) = (yyvsp[-1].ParamAttrs) | (yyvsp[0].ParamAttrs);
-              ;}
+                yyval.ParamAttrs = yyvsp[-1].ParamAttrs | yyvsp[0].ParamAttrs;
+              }
     break;
 
   case 109:
-#line 1246 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.UIntVal) = 0; ;}
+#line 1246 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.UIntVal = 0; }
     break;
 
   case 110:
-#line 1247 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1247 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-  (yyval.UIntVal) = (yyvsp[0].UInt64Val);
-  if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
+  yyval.UIntVal = yyvsp[0].UInt64Val;
+  if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal))
     GEN_ERROR("Alignment must be a power of two");
   CHECK_FOR_ERROR
-;}
+}
     break;
 
   case 111:
-#line 1253 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.UIntVal) = 0; ;}
+#line 1253 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.UIntVal = 0; }
     break;
 
   case 112:
-#line 1254 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1254 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-  (yyval.UIntVal) = (yyvsp[0].UInt64Val);
-  if ((yyval.UIntVal) != 0 && !isPowerOf2_32((yyval.UIntVal)))
+  yyval.UIntVal = yyvsp[0].UInt64Val;
+  if (yyval.UIntVal != 0 && !isPowerOf2_32(yyval.UIntVal))
     GEN_ERROR("Alignment must be a power of two");
   CHECK_FOR_ERROR
-;}
+}
     break;
 
   case 113:
-#line 1262 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1262 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-  for (unsigned i = 0, e = strlen((yyvsp[0].StrVal)); i != e; ++i)
-    if ((yyvsp[0].StrVal)[i] == '"' || (yyvsp[0].StrVal)[i] == '\\')
+  for (unsigned i = 0, e = strlen(yyvsp[0].StrVal); i != e; ++i)
+    if (yyvsp[0].StrVal[i] == '"' || yyvsp[0].StrVal[i] == '\\')
       GEN_ERROR("Invalid character in section name");
-  (yyval.StrVal) = (yyvsp[0].StrVal);
+  yyval.StrVal = yyvsp[0].StrVal;
   CHECK_FOR_ERROR
-;}
+}
     break;
 
   case 114:
-#line 1270 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.StrVal) = 0; ;}
+#line 1270 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.StrVal = 0; }
     break;
 
   case 115:
-#line 1271 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.StrVal) = (yyvsp[0].StrVal); ;}
+#line 1271 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.StrVal = yyvsp[0].StrVal; }
     break;
 
   case 116:
-#line 1276 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    {;}
+#line 1276 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    {}
     break;
 
   case 117:
-#line 1277 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    {;}
+#line 1277 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    {}
     break;
 
   case 118:
-#line 1278 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1278 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    CurGV->setSection((yyvsp[0].StrVal));
-    free((yyvsp[0].StrVal));
+    CurGV->setSection(yyvsp[0].StrVal);
+    free(yyvsp[0].StrVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 119:
-#line 1283 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1283 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if ((yyvsp[0].UInt64Val) != 0 && !isPowerOf2_32((yyvsp[0].UInt64Val)))
+    if (yyvsp[0].UInt64Val != 0 && !isPowerOf2_32(yyvsp[0].UInt64Val))
       GEN_ERROR("Alignment must be a power of two");
-    CurGV->setAlignment((yyvsp[0].UInt64Val));
+    CurGV->setAlignment(yyvsp[0].UInt64Val);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 124:
-#line 1299 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1299 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TypeVal) = new PATypeHolder(OpaqueType::get());
+    yyval.TypeVal = new PATypeHolder(OpaqueType::get());
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 125:
-#line 1303 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1303 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TypeVal) = new PATypeHolder((yyvsp[0].PrimType));
+    yyval.TypeVal = new PATypeHolder(yyvsp[0].PrimType);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 126:
-#line 1307 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1307 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                             // Pointer type?
-    if (*(yyvsp[-1].TypeVal) == Type::LabelTy)
+    if (*yyvsp[-1].TypeVal == Type::LabelTy)
       GEN_ERROR("Cannot form a pointer to a basic block");
-    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(PointerType::get(*(yyvsp[-1].TypeVal))));
-    delete (yyvsp[-1].TypeVal);
+    yyval.TypeVal = new PATypeHolder(HandleUpRefs(PointerType::get(*yyvsp[-1].TypeVal)));
+    delete yyvsp[-1].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 127:
-#line 1314 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1314 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {            // Named types are also simple types...
-    const Type* tmp = getTypeVal((yyvsp[0].ValIDVal));
+    const Type* tmp = getTypeVal(yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.TypeVal) = new PATypeHolder(tmp);
-  ;}
+    yyval.TypeVal = new PATypeHolder(tmp);
+  }
     break;
 
   case 128:
-#line 1319 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1319 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                   // Type UpReference
-    if ((yyvsp[0].UInt64Val) > (uint64_t)~0U) GEN_ERROR("Value out of range");
+    if (yyvsp[0].UInt64Val > (uint64_t)~0U) GEN_ERROR("Value out of range");
     OpaqueType *OT = OpaqueType::get();        // Use temporary placeholder
-    UpRefs.push_back(UpRefRecord((unsigned)(yyvsp[0].UInt64Val), OT));  // Add to vector...
-    (yyval.TypeVal) = new PATypeHolder(OT);
+    UpRefs.push_back(UpRefRecord((unsigned)yyvsp[0].UInt64Val, OT));  // Add to vector...
+    yyval.TypeVal = new PATypeHolder(OT);
     UR_OUT("New Upreference!\n");
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 129:
-#line 1327 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1327 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     std::vector<const Type*> Params;
     ParamAttrsVector Attrs;
-    if ((yyvsp[0].ParamAttrs) != ParamAttr::None) {
-      ParamAttrsWithIndex X; X.index = 0; X.attrs = (yyvsp[0].ParamAttrs);
+    if (yyvsp[0].ParamAttrs != ParamAttr::None) {
+      ParamAttrsWithIndex X; X.index = 0; X.attrs = yyvsp[0].ParamAttrs;
       Attrs.push_back(X);
     }
     unsigned index = 1;
-    TypeWithAttrsList::iterator I = (yyvsp[-2].TypeWithAttrsList)->begin(), E = (yyvsp[-2].TypeWithAttrsList)->end();
+    TypeWithAttrsList::iterator I = yyvsp[-2].TypeWithAttrsList->begin(), E = yyvsp[-2].TypeWithAttrsList->end();
     for (; I != E; ++I, ++index) {
       const Type *Ty = I->Ty->get();
       Params.push_back(Ty);
@@ -3634,24 +3460,24 @@ yyreduce:
     ParamAttrsList *ActualAttrs = 0;
     if (!Attrs.empty())
       ActualAttrs = ParamAttrsList::get(Attrs);
-    FunctionType *FT = FunctionType::get(*(yyvsp[-4].TypeVal), Params, isVarArg, ActualAttrs);
-    delete (yyvsp[-2].TypeWithAttrsList);   // Delete the argument list
-    delete (yyvsp[-4].TypeVal);   // Delete the return type handle
-    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(FT)); 
+    FunctionType *FT = FunctionType::get(*yyvsp[-4].TypeVal, Params, isVarArg, ActualAttrs);
+    delete yyvsp[-2].TypeWithAttrsList;   // Delete the argument list
+    delete yyvsp[-4].TypeVal;   // Delete the return type handle
+    yyval.TypeVal = new PATypeHolder(HandleUpRefs(FT)); 
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 130:
-#line 1357 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1357 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     std::vector<const Type*> Params;
     ParamAttrsVector Attrs;
-    if ((yyvsp[0].ParamAttrs) != ParamAttr::None) {
-      ParamAttrsWithIndex X; X.index = 0; X.attrs = (yyvsp[0].ParamAttrs);
+    if (yyvsp[0].ParamAttrs != ParamAttr::None) {
+      ParamAttrsWithIndex X; X.index = 0; X.attrs = yyvsp[0].ParamAttrs;
       Attrs.push_back(X);
     }
-    TypeWithAttrsList::iterator I = (yyvsp[-2].TypeWithAttrsList)->begin(), E = (yyvsp[-2].TypeWithAttrsList)->end();
+    TypeWithAttrsList::iterator I = yyvsp[-2].TypeWithAttrsList->begin(), E = yyvsp[-2].TypeWithAttrsList->end();
     unsigned index = 1;
     for ( ; I != E; ++I, ++index) {
       const Type* Ty = I->Ty->get();
@@ -3669,305 +3495,305 @@ yyreduce:
     if (!Attrs.empty())
       ActualAttrs = ParamAttrsList::get(Attrs);
 
-    FunctionType *FT = FunctionType::get((yyvsp[-4].PrimType), Params, isVarArg, ActualAttrs);
-    delete (yyvsp[-2].TypeWithAttrsList);      // Delete the argument list
-    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(FT)); 
+    FunctionType *FT = FunctionType::get(yyvsp[-4].PrimType, Params, isVarArg, ActualAttrs);
+    delete yyvsp[-2].TypeWithAttrsList;      // Delete the argument list
+    yyval.TypeVal = new PATypeHolder(HandleUpRefs(FT)); 
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 131:
-#line 1388 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1388 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {          // Sized array type?
-    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(ArrayType::get(*(yyvsp[-1].TypeVal), (unsigned)(yyvsp[-3].UInt64Val))));
-    delete (yyvsp[-1].TypeVal);
+    yyval.TypeVal = new PATypeHolder(HandleUpRefs(ArrayType::get(*yyvsp[-1].TypeVal, (unsigned)yyvsp[-3].UInt64Val)));
+    delete yyvsp[-1].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 132:
-#line 1393 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1393 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {          // Vector type?
-     const llvm::Type* ElemTy = (yyvsp[-1].TypeVal)->get();
-     if ((unsigned)(yyvsp[-3].UInt64Val) != (yyvsp[-3].UInt64Val))
+     const llvm::Type* ElemTy = yyvsp[-1].TypeVal->get();
+     if ((unsigned)yyvsp[-3].UInt64Val != yyvsp[-3].UInt64Val)
         GEN_ERROR("Unsigned result not equal to signed result");
      if (!ElemTy->isFloatingPoint() && !ElemTy->isInteger())
         GEN_ERROR("Element type of a VectorType must be primitive");
-     if (!isPowerOf2_32((yyvsp[-3].UInt64Val)))
+     if (!isPowerOf2_32(yyvsp[-3].UInt64Val))
        GEN_ERROR("Vector length should be a power of 2");
-     (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(VectorType::get(*(yyvsp[-1].TypeVal), (unsigned)(yyvsp[-3].UInt64Val))));
-     delete (yyvsp[-1].TypeVal);
+     yyval.TypeVal = new PATypeHolder(HandleUpRefs(VectorType::get(*yyvsp[-1].TypeVal, (unsigned)yyvsp[-3].UInt64Val)));
+     delete yyvsp[-1].TypeVal;
      CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 133:
-#line 1405 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1405 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                        // Structure type?
     std::vector<const Type*> Elements;
-    for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[-1].TypeList)->begin(),
-           E = (yyvsp[-1].TypeList)->end(); I != E; ++I)
+    for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-1].TypeList->begin(),
+           E = yyvsp[-1].TypeList->end(); I != E; ++I)
       Elements.push_back(*I);
 
-    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(StructType::get(Elements)));
-    delete (yyvsp[-1].TypeList);
+    yyval.TypeVal = new PATypeHolder(HandleUpRefs(StructType::get(Elements)));
+    delete yyvsp[-1].TypeList;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 134:
-#line 1415 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1415 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                                  // Empty structure type?
-    (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>()));
+    yyval.TypeVal = new PATypeHolder(StructType::get(std::vector<const Type*>()));
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 135:
-#line 1419 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1419 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     std::vector<const Type*> Elements;
-    for (std::list<llvm::PATypeHolder>::iterator I = (yyvsp[-2].TypeList)->begin(),
-           E = (yyvsp[-2].TypeList)->end(); I != E; ++I)
+    for (std::list<llvm::PATypeHolder>::iterator I = yyvsp[-2].TypeList->begin(),
+           E = yyvsp[-2].TypeList->end(); I != E; ++I)
       Elements.push_back(*I);
 
-    (yyval.TypeVal) = new PATypeHolder(HandleUpRefs(StructType::get(Elements, true)));
-    delete (yyvsp[-2].TypeList);
+    yyval.TypeVal = new PATypeHolder(HandleUpRefs(StructType::get(Elements, true)));
+    delete yyvsp[-2].TypeList;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 136:
-#line 1429 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1429 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                         // Empty structure type?
-    (yyval.TypeVal) = new PATypeHolder(StructType::get(std::vector<const Type*>(), true));
+    yyval.TypeVal = new PATypeHolder(StructType::get(std::vector<const Type*>(), true));
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 137:
-#line 1436 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1436 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     { 
-    (yyval.TypeWithAttrs).Ty = (yyvsp[-1].TypeVal)
-    (yyval.TypeWithAttrs).Attrs = (yyvsp[0].ParamAttrs)
-  ;}
+    yyval.TypeWithAttrs.Ty = yyvsp[-1].TypeVal
+    yyval.TypeWithAttrs.Attrs = yyvsp[0].ParamAttrs
+  }
     break;
 
   case 138:
-#line 1443 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1443 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
-    if (!(*(yyvsp[0].TypeVal))->isFirstClassType())
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription());
+    if (!(*yyvsp[0].TypeVal)->isFirstClassType())
       GEN_ERROR("LLVM functions cannot return aggregate types");
-    (yyval.TypeVal) = (yyvsp[0].TypeVal);
-  ;}
+    yyval.TypeVal = yyvsp[0].TypeVal;
+  }
     break;
 
   case 139:
-#line 1450 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1450 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TypeVal) = new PATypeHolder(Type::VoidTy);
-  ;}
+    yyval.TypeVal = new PATypeHolder(Type::VoidTy);
+  }
     break;
 
   case 140:
-#line 1455 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1455 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TypeWithAttrsList) = new TypeWithAttrsList();
-    (yyval.TypeWithAttrsList)->push_back((yyvsp[0].TypeWithAttrs));
+    yyval.TypeWithAttrsList = new TypeWithAttrsList();
+    yyval.TypeWithAttrsList->push_back(yyvsp[0].TypeWithAttrs);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 141:
-#line 1460 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1460 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    ((yyval.TypeWithAttrsList)=(yyvsp[-2].TypeWithAttrsList))->push_back((yyvsp[0].TypeWithAttrs));
+    (yyval.TypeWithAttrsList=yyvsp[-2].TypeWithAttrsList)->push_back(yyvsp[0].TypeWithAttrs);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 143:
-#line 1468 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1468 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TypeWithAttrsList)=(yyvsp[-2].TypeWithAttrsList);
+    yyval.TypeWithAttrsList=yyvsp[-2].TypeWithAttrsList;
     TypeWithAttrs TWA; TWA.Attrs = ParamAttr::None;
     TWA.Ty = new PATypeHolder(Type::VoidTy);
-    (yyval.TypeWithAttrsList)->push_back(TWA);
+    yyval.TypeWithAttrsList->push_back(TWA);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 144:
-#line 1475 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1475 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TypeWithAttrsList) = new TypeWithAttrsList;
+    yyval.TypeWithAttrsList = new TypeWithAttrsList;
     TypeWithAttrs TWA; TWA.Attrs = ParamAttr::None;
     TWA.Ty = new PATypeHolder(Type::VoidTy);
-    (yyval.TypeWithAttrsList)->push_back(TWA);
+    yyval.TypeWithAttrsList->push_back(TWA);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 145:
-#line 1482 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1482 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TypeWithAttrsList) = new TypeWithAttrsList();
+    yyval.TypeWithAttrsList = new TypeWithAttrsList();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 146:
-#line 1490 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1490 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TypeList) = new std::list<PATypeHolder>();
-    (yyval.TypeList)->push_back(*(yyvsp[0].TypeVal)); 
-    delete (yyvsp[0].TypeVal);
+    yyval.TypeList = new std::list<PATypeHolder>();
+    yyval.TypeList->push_back(*yyvsp[0].TypeVal); 
+    delete yyvsp[0].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 147:
-#line 1496 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1496 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    ((yyval.TypeList)=(yyvsp[-2].TypeList))->push_back(*(yyvsp[0].TypeVal)); 
-    delete (yyvsp[0].TypeVal);
+    (yyval.TypeList=yyvsp[-2].TypeList)->push_back(*yyvsp[0].TypeVal); 
+    delete yyvsp[0].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 148:
-#line 1508 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1508 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized arr
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
-    const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[-3].TypeVal)->get());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription());
+    const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-3].TypeVal->get());
     if (ATy == 0)
       GEN_ERROR("Cannot make array constant with type: '" + 
-                     (*(yyvsp[-3].TypeVal))->getDescription() + "'");
+                     (*yyvsp[-3].TypeVal)->getDescription() + "'");
     const Type *ETy = ATy->getElementType();
     int NumElements = ATy->getNumElements();
 
     // Verify that we have the correct size...
-    if (NumElements != -1 && NumElements != (int)(yyvsp[-1].ConstVector)->size())
+    if (NumElements != -1 && NumElements != (int)yyvsp[-1].ConstVector->size())
       GEN_ERROR("Type mismatch: constant sized array initialized with " +
-                     utostr((yyvsp[-1].ConstVector)->size()) +  " arguments, but has size of " + 
+                     utostr(yyvsp[-1].ConstVector->size()) +  " arguments, but has size of " + 
                      itostr(NumElements) + "");
 
     // Verify all elements are correct type!
-    for (unsigned i = 0; i < (yyvsp[-1].ConstVector)->size(); i++) {
-      if (ETy != (*(yyvsp[-1].ConstVector))[i]->getType())
+    for (unsigned i = 0; i < yyvsp[-1].ConstVector->size(); i++) {
+      if (ETy != (*yyvsp[-1].ConstVector)[i]->getType())
         GEN_ERROR("Element #" + utostr(i) + " is not of type '" + 
                        ETy->getDescription() +"' as required!\nIt is of type '"+
-                       (*(yyvsp[-1].ConstVector))[i]->getType()->getDescription() + "'.");
+                       (*yyvsp[-1].ConstVector)[i]->getType()->getDescription() + "'.");
     }
 
-    (yyval.ConstVal) = ConstantArray::get(ATy, *(yyvsp[-1].ConstVector));
-    delete (yyvsp[-3].TypeVal); delete (yyvsp[-1].ConstVector);
+    yyval.ConstVal = ConstantArray::get(ATy, *yyvsp[-1].ConstVector);
+    delete yyvsp[-3].TypeVal; delete yyvsp[-1].ConstVector;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 149:
-#line 1536 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1536 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
-    const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[-2].TypeVal)->get());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
+    const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-2].TypeVal->get());
     if (ATy == 0)
       GEN_ERROR("Cannot make array constant with type: '" + 
-                     (*(yyvsp[-2].TypeVal))->getDescription() + "'");
+                     (*yyvsp[-2].TypeVal)->getDescription() + "'");
 
     int NumElements = ATy->getNumElements();
     if (NumElements != -1 && NumElements != 0) 
       GEN_ERROR("Type mismatch: constant sized array initialized with 0"
                      " arguments, but has size of " + itostr(NumElements) +"");
-    (yyval.ConstVal) = ConstantArray::get(ATy, std::vector<Constant*>());
-    delete (yyvsp[-2].TypeVal);
+    yyval.ConstVal = ConstantArray::get(ATy, std::vector<Constant*>());
+    delete yyvsp[-2].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 150:
-#line 1552 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1552 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
-    const ArrayType *ATy = dyn_cast<ArrayType>((yyvsp[-2].TypeVal)->get());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
+    const ArrayType *ATy = dyn_cast<ArrayType>(yyvsp[-2].TypeVal->get());
     if (ATy == 0)
       GEN_ERROR("Cannot make array constant with type: '" + 
-                     (*(yyvsp[-2].TypeVal))->getDescription() + "'");
+                     (*yyvsp[-2].TypeVal)->getDescription() + "'");
 
     int NumElements = ATy->getNumElements();
     const Type *ETy = ATy->getElementType();
-    char *EndStr = UnEscapeLexed((yyvsp[0].StrVal), true);
-    if (NumElements != -1 && NumElements != (EndStr-(yyvsp[0].StrVal)))
+    char *EndStr = UnEscapeLexed(yyvsp[0].StrVal, true);
+    if (NumElements != -1 && NumElements != (EndStr-yyvsp[0].StrVal))
       GEN_ERROR("Can't build string constant of size " + 
-                     itostr((int)(EndStr-(yyvsp[0].StrVal))) +
+                     itostr((int)(EndStr-yyvsp[0].StrVal)) +
                      " when array has size " + itostr(NumElements) + "");
     std::vector<Constant*> Vals;
     if (ETy == Type::Int8Ty) {
-      for (unsigned char *C = (unsigned char *)(yyvsp[0].StrVal)
+      for (unsigned char *C = (unsigned char *)yyvsp[0].StrVal
         C != (unsigned char*)EndStr; ++C)
       Vals.push_back(ConstantInt::get(ETy, *C));
     } else {
-      free((yyvsp[0].StrVal));
+      free(yyvsp[0].StrVal);
       GEN_ERROR("Cannot build string arrays of non byte sized elements");
     }
-    free((yyvsp[0].StrVal));
-    (yyval.ConstVal) = ConstantArray::get(ATy, Vals);
-    delete (yyvsp[-2].TypeVal);
+    free(yyvsp[0].StrVal);
+    yyval.ConstVal = ConstantArray::get(ATy, Vals);
+    delete yyvsp[-2].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 151:
-#line 1581 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1581 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized arr
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
-    const VectorType *PTy = dyn_cast<VectorType>((yyvsp[-3].TypeVal)->get());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription());
+    const VectorType *PTy = dyn_cast<VectorType>(yyvsp[-3].TypeVal->get());
     if (PTy == 0)
       GEN_ERROR("Cannot make packed constant with type: '" + 
-                     (*(yyvsp[-3].TypeVal))->getDescription() + "'");
+                     (*yyvsp[-3].TypeVal)->getDescription() + "'");
     const Type *ETy = PTy->getElementType();
     int NumElements = PTy->getNumElements();
 
     // Verify that we have the correct size...
-    if (NumElements != -1 && NumElements != (int)(yyvsp[-1].ConstVector)->size())
+    if (NumElements != -1 && NumElements != (int)yyvsp[-1].ConstVector->size())
       GEN_ERROR("Type mismatch: constant sized packed initialized with " +
-                     utostr((yyvsp[-1].ConstVector)->size()) +  " arguments, but has size of " + 
+                     utostr(yyvsp[-1].ConstVector->size()) +  " arguments, but has size of " + 
                      itostr(NumElements) + "");
 
     // Verify all elements are correct type!
-    for (unsigned i = 0; i < (yyvsp[-1].ConstVector)->size(); i++) {
-      if (ETy != (*(yyvsp[-1].ConstVector))[i]->getType())
+    for (unsigned i = 0; i < yyvsp[-1].ConstVector->size(); i++) {
+      if (ETy != (*yyvsp[-1].ConstVector)[i]->getType())
         GEN_ERROR("Element #" + utostr(i) + " is not of type '" + 
            ETy->getDescription() +"' as required!\nIt is of type '"+
-           (*(yyvsp[-1].ConstVector))[i]->getType()->getDescription() + "'.");
+           (*yyvsp[-1].ConstVector)[i]->getType()->getDescription() + "'.");
     }
 
-    (yyval.ConstVal) = ConstantVector::get(PTy, *(yyvsp[-1].ConstVector));
-    delete (yyvsp[-3].TypeVal); delete (yyvsp[-1].ConstVector);
+    yyval.ConstVal = ConstantVector::get(PTy, *yyvsp[-1].ConstVector);
+    delete yyvsp[-3].TypeVal; delete yyvsp[-1].ConstVector;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 152:
-#line 1609 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1609 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    const StructType *STy = dyn_cast<StructType>((yyvsp[-3].TypeVal)->get());
+    const StructType *STy = dyn_cast<StructType>(yyvsp[-3].TypeVal->get());
     if (STy == 0)
       GEN_ERROR("Cannot make struct constant with type: '" + 
-                     (*(yyvsp[-3].TypeVal))->getDescription() + "'");
+                     (*yyvsp[-3].TypeVal)->getDescription() + "'");
 
-    if ((yyvsp[-1].ConstVector)->size() != STy->getNumContainedTypes())
+    if (yyvsp[-1].ConstVector->size() != STy->getNumContainedTypes())
       GEN_ERROR("Illegal number of initializers for structure type");
 
     // Check to ensure that constants are compatible with the type initializer!
-    for (unsigned i = 0, e = (yyvsp[-1].ConstVector)->size(); i != e; ++i)
-      if ((*(yyvsp[-1].ConstVector))[i]->getType() != STy->getElementType(i))
+    for (unsigned i = 0, e = yyvsp[-1].ConstVector->size(); i != e; ++i)
+      if ((*yyvsp[-1].ConstVector)[i]->getType() != STy->getElementType(i))
         GEN_ERROR("Expected type '" +
                        STy->getElementType(i)->getDescription() +
                        "' for element #" + utostr(i) +
@@ -3978,21 +3804,21 @@ yyreduce:
       GEN_ERROR("Unpacked Initializer to vector type '" +
                 STy->getDescription() + "'");
 
-    (yyval.ConstVal) = ConstantStruct::get(STy, *(yyvsp[-1].ConstVector));
-    delete (yyvsp[-3].TypeVal); delete (yyvsp[-1].ConstVector);
+    yyval.ConstVal = ConstantStruct::get(STy, *yyvsp[-1].ConstVector);
+    delete yyvsp[-3].TypeVal; delete yyvsp[-1].ConstVector;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 153:
-#line 1635 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1635 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
-    const StructType *STy = dyn_cast<StructType>((yyvsp[-2].TypeVal)->get());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
+    const StructType *STy = dyn_cast<StructType>(yyvsp[-2].TypeVal->get());
     if (STy == 0)
       GEN_ERROR("Cannot make struct constant with type: '" + 
-                     (*(yyvsp[-2].TypeVal))->getDescription() + "'");
+                     (*yyvsp[-2].TypeVal)->getDescription() + "'");
 
     if (STy->getNumContainedTypes() != 0)
       GEN_ERROR("Illegal number of initializers for structure type");
@@ -4002,26 +3828,26 @@ yyreduce:
       GEN_ERROR("Unpacked Initializer to vector type '" +
                 STy->getDescription() + "'");
 
-    (yyval.ConstVal) = ConstantStruct::get(STy, std::vector<Constant*>());
-    delete (yyvsp[-2].TypeVal);
+    yyval.ConstVal = ConstantStruct::get(STy, std::vector<Constant*>());
+    delete yyvsp[-2].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 154:
-#line 1655 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1655 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    const StructType *STy = dyn_cast<StructType>((yyvsp[-5].TypeVal)->get());
+    const StructType *STy = dyn_cast<StructType>(yyvsp[-5].TypeVal->get());
     if (STy == 0)
       GEN_ERROR("Cannot make struct constant with type: '" + 
-                     (*(yyvsp[-5].TypeVal))->getDescription() + "'");
+                     (*yyvsp[-5].TypeVal)->getDescription() + "'");
 
-    if ((yyvsp[-2].ConstVector)->size() != STy->getNumContainedTypes())
+    if (yyvsp[-2].ConstVector->size() != STy->getNumContainedTypes())
       GEN_ERROR("Illegal number of initializers for structure type");
 
     // Check to ensure that constants are compatible with the type initializer!
-    for (unsigned i = 0, e = (yyvsp[-2].ConstVector)->size(); i != e; ++i)
-      if ((*(yyvsp[-2].ConstVector))[i]->getType() != STy->getElementType(i))
+    for (unsigned i = 0, e = yyvsp[-2].ConstVector->size(); i != e; ++i)
+      if ((*yyvsp[-2].ConstVector)[i]->getType() != STy->getElementType(i))
         GEN_ERROR("Expected type '" +
                        STy->getElementType(i)->getDescription() +
                        "' for element #" + utostr(i) +
@@ -4032,21 +3858,21 @@ yyreduce:
       GEN_ERROR("Vector initializer to non-vector type '" + 
                 STy->getDescription() + "'");
 
-    (yyval.ConstVal) = ConstantStruct::get(STy, *(yyvsp[-2].ConstVector));
-    delete (yyvsp[-5].TypeVal); delete (yyvsp[-2].ConstVector);
+    yyval.ConstVal = ConstantStruct::get(STy, *yyvsp[-2].ConstVector);
+    delete yyvsp[-5].TypeVal; delete yyvsp[-2].ConstVector;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 155:
-#line 1681 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1681 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription());
-    const StructType *STy = dyn_cast<StructType>((yyvsp[-4].TypeVal)->get());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-4].TypeVal)->getDescription());
+    const StructType *STy = dyn_cast<StructType>(yyvsp[-4].TypeVal->get());
     if (STy == 0)
       GEN_ERROR("Cannot make struct constant with type: '" + 
-                     (*(yyvsp[-4].TypeVal))->getDescription() + "'");
+                     (*yyvsp[-4].TypeVal)->getDescription() + "'");
 
     if (STy->getNumContainedTypes() != 0)
       GEN_ERROR("Illegal number of initializers for structure type");
@@ -4056,45 +3882,45 @@ yyreduce:
       GEN_ERROR("Vector initializer to non-vector type '" + 
                 STy->getDescription() + "'");
 
-    (yyval.ConstVal) = ConstantStruct::get(STy, std::vector<Constant*>());
-    delete (yyvsp[-4].TypeVal);
+    yyval.ConstVal = ConstantStruct::get(STy, std::vector<Constant*>());
+    delete yyvsp[-4].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 156:
-#line 1701 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1701 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
-    const PointerType *PTy = dyn_cast<PointerType>((yyvsp[-1].TypeVal)->get());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription());
+    const PointerType *PTy = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get());
     if (PTy == 0)
       GEN_ERROR("Cannot make null pointer constant with type: '" + 
-                     (*(yyvsp[-1].TypeVal))->getDescription() + "'");
+                     (*yyvsp[-1].TypeVal)->getDescription() + "'");
 
-    (yyval.ConstVal) = ConstantPointerNull::get(PTy);
-    delete (yyvsp[-1].TypeVal);
+    yyval.ConstVal = ConstantPointerNull::get(PTy);
+    delete yyvsp[-1].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 157:
-#line 1713 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1713 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
-    (yyval.ConstVal) = UndefValue::get((yyvsp[-1].TypeVal)->get());
-    delete (yyvsp[-1].TypeVal);
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription());
+    yyval.ConstVal = UndefValue::get(yyvsp[-1].TypeVal->get());
+    delete yyvsp[-1].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 158:
-#line 1720 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1720 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
-    const PointerType *Ty = dyn_cast<PointerType>((yyvsp[-1].TypeVal)->get());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription());
+    const PointerType *Ty = dyn_cast<PointerType>(yyvsp[-1].TypeVal->get());
     if (Ty == 0)
       GEN_ERROR("Global const reference must be a pointer type");
 
@@ -4108,7 +3934,7 @@ yyreduce:
     Function *SavedCurFn = CurFun.CurrentFunction;
     CurFun.CurrentFunction = 0;
 
-    Value *V = getExistingVal(Ty, (yyvsp[0].ValIDVal));
+    Value *V = getExistingVal(Ty, yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
 
     CurFun.CurrentFunction = SavedCurFn;
@@ -4123,16 +3949,16 @@ yyreduce:
 
       // First check to see if the forward references value is already created!
       PerModuleInfo::GlobalRefsType::iterator I =
-        CurModule.GlobalRefs.find(std::make_pair(PT, (yyvsp[0].ValIDVal)));
+        CurModule.GlobalRefs.find(std::make_pair(PT, yyvsp[0].ValIDVal));
     
       if (I != CurModule.GlobalRefs.end()) {
         V = I->second;             // Placeholder already exists, use it...
-        (yyvsp[0].ValIDVal).destroy();
+        yyvsp[0].ValIDVal.destroy();
       } else {
         std::string Name;
-        if ((yyvsp[0].ValIDVal).Type == ValID::GlobalName)
-          Name = (yyvsp[0].ValIDVal).Name;
-        else if ((yyvsp[0].ValIDVal).Type != ValID::GlobalID)
+        if (yyvsp[0].ValIDVal.Type == ValID::GlobalName)
+          Name = yyvsp[0].ValIDVal.Name;
+        else if (yyvsp[0].ValIDVal.Type != ValID::GlobalID)
           GEN_ERROR("Invalid reference to global");
 
         // Create the forward referenced global.
@@ -4148,371 +3974,371 @@ yyreduce:
         }
 
         // Keep track of the fact that we have a forward ref to recycle it
-        CurModule.GlobalRefs.insert(std::make_pair(std::make_pair(PT, (yyvsp[0].ValIDVal)), GV));
+        CurModule.GlobalRefs.insert(std::make_pair(std::make_pair(PT, yyvsp[0].ValIDVal), GV));
         V = GV;
       }
     }
 
-    (yyval.ConstVal) = cast<GlobalValue>(V);
-    delete (yyvsp[-1].TypeVal);            // Free the type handle
+    yyval.ConstVal = cast<GlobalValue>(V);
+    delete yyvsp[-1].TypeVal;            // Free the type handle
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 159:
-#line 1786 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1786 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
-    if ((yyvsp[-1].TypeVal)->get() != (yyvsp[0].ConstVal)->getType())
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription());
+    if (yyvsp[-1].TypeVal->get() != yyvsp[0].ConstVal->getType())
       GEN_ERROR("Mismatched types for constant expression: " + 
-        (*(yyvsp[-1].TypeVal))->getDescription() + " and " + (yyvsp[0].ConstVal)->getType()->getDescription());
-    (yyval.ConstVal) = (yyvsp[0].ConstVal);
-    delete (yyvsp[-1].TypeVal);
+        (*yyvsp[-1].TypeVal)->getDescription() + " and " + yyvsp[0].ConstVal->getType()->getDescription());
+    yyval.ConstVal = yyvsp[0].ConstVal;
+    delete yyvsp[-1].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 160:
-#line 1796 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1796 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
-    const Type *Ty = (yyvsp[-1].TypeVal)->get();
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription());
+    const Type *Ty = yyvsp[-1].TypeVal->get();
     if (isa<FunctionType>(Ty) || Ty == Type::LabelTy || isa<OpaqueType>(Ty))
       GEN_ERROR("Cannot create a null initialized value of this type");
-    (yyval.ConstVal) = Constant::getNullValue(Ty);
-    delete (yyvsp[-1].TypeVal);
+    yyval.ConstVal = Constant::getNullValue(Ty);
+    delete yyvsp[-1].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 161:
-#line 1806 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1806 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {      // integral constants
-    if (!ConstantInt::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].SInt64Val)))
+    if (!ConstantInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].SInt64Val))
       GEN_ERROR("Constant value doesn't fit in type");
-    (yyval.ConstVal) = ConstantInt::get((yyvsp[-1].PrimType), (yyvsp[0].SInt64Val), true);
+    yyval.ConstVal = ConstantInt::get(yyvsp[-1].PrimType, yyvsp[0].SInt64Val, true);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 162:
-#line 1812 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1812 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {      // arbitrary precision integer constants
-    uint32_t BitWidth = cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth();
-    if ((yyvsp[0].APIntVal)->getBitWidth() > BitWidth) {
+    uint32_t BitWidth = cast<IntegerType>(yyvsp[-1].PrimType)->getBitWidth();
+    if (yyvsp[0].APIntVal->getBitWidth() > BitWidth) {
       GEN_ERROR("Constant value does not fit in type");
     }
-    (yyvsp[0].APIntVal)->sextOrTrunc(BitWidth);
-    (yyval.ConstVal) = ConstantInt::get(*(yyvsp[0].APIntVal));
-    delete (yyvsp[0].APIntVal);
+    yyvsp[0].APIntVal->sextOrTrunc(BitWidth);
+    yyval.ConstVal = ConstantInt::get(*yyvsp[0].APIntVal);
+    delete yyvsp[0].APIntVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 163:
-#line 1822 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1822 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {      // integral constants
-    if (!ConstantInt::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].UInt64Val)))
+    if (!ConstantInt::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].UInt64Val))
       GEN_ERROR("Constant value doesn't fit in type");
-    (yyval.ConstVal) = ConstantInt::get((yyvsp[-1].PrimType), (yyvsp[0].UInt64Val), false);
+    yyval.ConstVal = ConstantInt::get(yyvsp[-1].PrimType, yyvsp[0].UInt64Val, false);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 164:
-#line 1828 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1828 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {      // arbitrary precision integer constants
-    uint32_t BitWidth = cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth();
-    if ((yyvsp[0].APIntVal)->getBitWidth() > BitWidth) {
+    uint32_t BitWidth = cast<IntegerType>(yyvsp[-1].PrimType)->getBitWidth();
+    if (yyvsp[0].APIntVal->getBitWidth() > BitWidth) {
       GEN_ERROR("Constant value does not fit in type");
     } 
-    (yyvsp[0].APIntVal)->zextOrTrunc(BitWidth);
-    (yyval.ConstVal) = ConstantInt::get(*(yyvsp[0].APIntVal));
-    delete (yyvsp[0].APIntVal);
+    yyvsp[0].APIntVal->zextOrTrunc(BitWidth);
+    yyval.ConstVal = ConstantInt::get(*yyvsp[0].APIntVal);
+    delete yyvsp[0].APIntVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 165:
-#line 1838 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1838 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                      // Boolean constants
-    assert(cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth() == 1 && "Not Bool?");
-    (yyval.ConstVal) = ConstantInt::getTrue();
+    assert(cast<IntegerType>(yyvsp[-1].PrimType)->getBitWidth() == 1 && "Not Bool?");
+    yyval.ConstVal = ConstantInt::getTrue();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 166:
-#line 1843 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1843 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                     // Boolean constants
-    assert(cast<IntegerType>((yyvsp[-1].PrimType))->getBitWidth() == 1 && "Not Bool?");
-    (yyval.ConstVal) = ConstantInt::getFalse();
+    assert(cast<IntegerType>(yyvsp[-1].PrimType)->getBitWidth() == 1 && "Not Bool?");
+    yyval.ConstVal = ConstantInt::getFalse();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 167:
-#line 1848 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1848 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                   // Float & Double constants
-    if (!ConstantFP::isValueValidForType((yyvsp[-1].PrimType), (yyvsp[0].FPVal)))
+    if (!ConstantFP::isValueValidForType(yyvsp[-1].PrimType, yyvsp[0].FPVal))
       GEN_ERROR("Floating point constant invalid for type");
-    (yyval.ConstVal) = ConstantFP::get((yyvsp[-1].PrimType), (yyvsp[0].FPVal));
+    yyval.ConstVal = ConstantFP::get(yyvsp[-1].PrimType, yyvsp[0].FPVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 168:
-#line 1856 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1856 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
-    Constant *Val = (yyvsp[-3].ConstVal);
-    const Type *DestTy = (yyvsp[-1].TypeVal)->get();
-    if (!CastInst::castIsValid((yyvsp[-5].CastOpVal), (yyvsp[-3].ConstVal), DestTy))
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription());
+    Constant *Val = yyvsp[-3].ConstVal;
+    const Type *DestTy = yyvsp[-1].TypeVal->get();
+    if (!CastInst::castIsValid(yyvsp[-5].CastOpVal, yyvsp[-3].ConstVal, DestTy))
       GEN_ERROR("invalid cast opcode for cast from '" +
                 Val->getType()->getDescription() + "' to '" +
                 DestTy->getDescription() + "'"); 
-    (yyval.ConstVal) = ConstantExpr::getCast((yyvsp[-5].CastOpVal), (yyvsp[-3].ConstVal), DestTy);
-    delete (yyvsp[-1].TypeVal);
-  ;}
+    yyval.ConstVal = ConstantExpr::getCast(yyvsp[-5].CastOpVal, yyvsp[-3].ConstVal, DestTy);
+    delete yyvsp[-1].TypeVal;
+  }
     break;
 
   case 169:
-#line 1868 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1868 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if (!isa<PointerType>((yyvsp[-2].ConstVal)->getType()))
+    if (!isa<PointerType>(yyvsp[-2].ConstVal->getType()))
       GEN_ERROR("GetElementPtr requires a pointer operand");
 
     const Type *IdxTy =
-      GetElementPtrInst::getIndexedType((yyvsp[-2].ConstVal)->getType(), &(*(yyvsp[-1].ValueList))[0], (yyvsp[-1].ValueList)->size(),
+      GetElementPtrInst::getIndexedType(yyvsp[-2].ConstVal->getType(), &(*yyvsp[-1].ValueList)[0], yyvsp[-1].ValueList->size(),
                                         true);
     if (!IdxTy)
       GEN_ERROR("Index list invalid for constant getelementptr");
 
     SmallVector<Constant*, 8> IdxVec;
-    for (unsigned i = 0, e = (yyvsp[-1].ValueList)->size(); i != e; ++i)
-      if (Constant *C = dyn_cast<Constant>((*(yyvsp[-1].ValueList))[i]))
+    for (unsigned i = 0, e = yyvsp[-1].ValueList->size(); i != e; ++i)
+      if (Constant *C = dyn_cast<Constant>((*yyvsp[-1].ValueList)[i]))
         IdxVec.push_back(C);
       else
         GEN_ERROR("Indices to constant getelementptr must be constants");
 
-    delete (yyvsp[-1].ValueList);
+    delete yyvsp[-1].ValueList;
 
-    (yyval.ConstVal) = ConstantExpr::getGetElementPtr((yyvsp[-2].ConstVal), &IdxVec[0], IdxVec.size());
+    yyval.ConstVal = ConstantExpr::getGetElementPtr(yyvsp[-2].ConstVal, &IdxVec[0], IdxVec.size());
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 170:
-#line 1890 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1890 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if ((yyvsp[-5].ConstVal)->getType() != Type::Int1Ty)
+    if (yyvsp[-5].ConstVal->getType() != Type::Int1Ty)
       GEN_ERROR("Select condition must be of boolean type");
-    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
+    if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       GEN_ERROR("Select operand types must match");
-    (yyval.ConstVal) = ConstantExpr::getSelect((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));
+    yyval.ConstVal = ConstantExpr::getSelect(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 171:
-#line 1898 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1898 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
+    if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       GEN_ERROR("Binary operator types must match");
     CHECK_FOR_ERROR;
-    (yyval.ConstVal) = ConstantExpr::get((yyvsp[-5].BinaryOpVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));
-  ;}
+    yyval.ConstVal = ConstantExpr::get(yyvsp[-5].BinaryOpVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
+  }
     break;
 
   case 172:
-#line 1904 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1904 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
+    if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       GEN_ERROR("Logical operator types must match");
-    if (!(yyvsp[-3].ConstVal)->getType()->isInteger()) {
-      if (Instruction::isShift((yyvsp[-5].BinaryOpVal)) || !isa<VectorType>((yyvsp[-3].ConstVal)->getType()) || 
-          !cast<VectorType>((yyvsp[-3].ConstVal)->getType())->getElementType()->isInteger())
+    if (!yyvsp[-3].ConstVal->getType()->isInteger()) {
+      if (Instruction::isShift(yyvsp[-5].BinaryOpVal) || !isa<VectorType>(yyvsp[-3].ConstVal->getType()) || 
+          !cast<VectorType>(yyvsp[-3].ConstVal->getType())->getElementType()->isInteger())
         GEN_ERROR("Logical operator requires integral operands");
     }
-    (yyval.ConstVal) = ConstantExpr::get((yyvsp[-5].BinaryOpVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));
+    yyval.ConstVal = ConstantExpr::get(yyvsp[-5].BinaryOpVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 173:
-#line 1915 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1915 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
+    if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       GEN_ERROR("icmp operand types must match");
-    (yyval.ConstVal) = ConstantExpr::getICmp((yyvsp[-5].IPredicate), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));
-  ;}
+    yyval.ConstVal = ConstantExpr::getICmp(yyvsp[-5].IPredicate, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
+  }
     break;
 
   case 174:
-#line 1920 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1920 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if ((yyvsp[-3].ConstVal)->getType() != (yyvsp[-1].ConstVal)->getType())
+    if (yyvsp[-3].ConstVal->getType() != yyvsp[-1].ConstVal->getType())
       GEN_ERROR("fcmp operand types must match");
-    (yyval.ConstVal) = ConstantExpr::getFCmp((yyvsp[-5].FPredicate), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));
-  ;}
+    yyval.ConstVal = ConstantExpr::getFCmp(yyvsp[-5].FPredicate, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
+  }
     break;
 
   case 175:
-#line 1925 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1925 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if (!ExtractElementInst::isValidOperands((yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
+    if (!ExtractElementInst::isValidOperands(yyvsp[-3].ConstVal, yyvsp[-1].ConstVal))
       GEN_ERROR("Invalid extractelement operands");
-    (yyval.ConstVal) = ConstantExpr::getExtractElement((yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));
+    yyval.ConstVal = ConstantExpr::getExtractElement(yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 176:
-#line 1931 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1931 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if (!InsertElementInst::isValidOperands((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
+    if (!InsertElementInst::isValidOperands(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal))
       GEN_ERROR("Invalid insertelement operands");
-    (yyval.ConstVal) = ConstantExpr::getInsertElement((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));
+    yyval.ConstVal = ConstantExpr::getInsertElement(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 177:
-#line 1937 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1937 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if (!ShuffleVectorInst::isValidOperands((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal)))
+    if (!ShuffleVectorInst::isValidOperands(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal))
       GEN_ERROR("Invalid shufflevector operands");
-    (yyval.ConstVal) = ConstantExpr::getShuffleVector((yyvsp[-5].ConstVal), (yyvsp[-3].ConstVal), (yyvsp[-1].ConstVal));
+    yyval.ConstVal = ConstantExpr::getShuffleVector(yyvsp[-5].ConstVal, yyvsp[-3].ConstVal, yyvsp[-1].ConstVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 178:
-#line 1946 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1946 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    ((yyval.ConstVector) = (yyvsp[-2].ConstVector))->push_back((yyvsp[0].ConstVal));
+    (yyval.ConstVector = yyvsp[-2].ConstVector)->push_back(yyvsp[0].ConstVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 179:
-#line 1950 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1950 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ConstVector) = new std::vector<Constant*>();
-    (yyval.ConstVector)->push_back((yyvsp[0].ConstVal));
+    yyval.ConstVector = new std::vector<Constant*>();
+    yyval.ConstVector->push_back(yyvsp[0].ConstVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 180:
-#line 1958 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.BoolVal) = false; ;}
+#line 1958 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.BoolVal = false; }
     break;
 
   case 181:
-#line 1958 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.BoolVal) = true; ;}
+#line 1958 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.BoolVal = true; }
     break;
 
   case 182:
-#line 1961 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.BoolVal) = true; ;}
+#line 1961 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.BoolVal = true; }
     break;
 
   case 183:
-#line 1961 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.BoolVal) = false; ;}
+#line 1961 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.BoolVal = false; }
     break;
 
   case 184:
-#line 1964 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1964 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    const Type* VTy = (yyvsp[-1].TypeVal)->get();
-    Value *V = getVal(VTy, (yyvsp[0].ValIDVal));
+    const Type* VTy = yyvsp[-1].TypeVal->get();
+    Value *V = getVal(VTy, yyvsp[0].ValIDVal);
     GlobalValue* Aliasee = dyn_cast<GlobalValue>(V);
     if (!Aliasee)
       GEN_ERROR("Aliases can be created only to global values");
 
-    (yyval.ConstVal) = Aliasee;
+    yyval.ConstVal = Aliasee;
     CHECK_FOR_ERROR
-    delete (yyvsp[-1].TypeVal);
-   ;}
+    delete yyvsp[-1].TypeVal;
+   }
     break;
 
   case 185:
-#line 1975 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1975 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    Constant *Val = (yyvsp[-3].ConstVal);
-    const Type *DestTy = (yyvsp[-1].TypeVal)->get();
-    if (!CastInst::castIsValid((yyvsp[-5].CastOpVal), (yyvsp[-3].ConstVal), DestTy))
+    Constant *Val = yyvsp[-3].ConstVal;
+    const Type *DestTy = yyvsp[-1].TypeVal->get();
+    if (!CastInst::castIsValid(yyvsp[-5].CastOpVal, yyvsp[-3].ConstVal, DestTy))
       GEN_ERROR("invalid cast opcode for cast from '" +
                 Val->getType()->getDescription() + "' to '" +
                 DestTy->getDescription() + "'");
     
-    (yyval.ConstVal) = ConstantExpr::getCast((yyvsp[-5].CastOpVal), (yyvsp[-3].ConstVal), DestTy);
+    yyval.ConstVal = ConstantExpr::getCast(yyvsp[-5].CastOpVal, yyvsp[-3].ConstVal, DestTy);
     CHECK_FOR_ERROR
-    delete (yyvsp[-1].TypeVal);
-   ;}
+    delete yyvsp[-1].TypeVal;
+   }
     break;
 
   case 186:
-#line 1996 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 1996 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;
+    yyval.ModuleVal = ParserResult = CurModule.CurrentModule;
     CurModule.ModuleDone();
     CHECK_FOR_ERROR;
-  ;}
+  }
     break;
 
   case 187:
-#line 2001 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2001 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ModuleVal) = ParserResult = CurModule.CurrentModule;
+    yyval.ModuleVal = ParserResult = CurModule.CurrentModule;
     CurModule.ModuleDone();
     CHECK_FOR_ERROR;
-  ;}
+  }
     break;
 
   case 190:
-#line 2014 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { CurFun.isDeclare = false; ;}
+#line 2014 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { CurFun.isDeclare = false; }
     break;
 
   case 191:
-#line 2014 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2014 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     CurFun.FunctionDone();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 192:
-#line 2018 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { CurFun.isDeclare = true; ;}
+#line 2018 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { CurFun.isDeclare = true; }
     break;
 
   case 193:
-#line 2018 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2018 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 194:
-#line 2021 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2021 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 195:
-#line 2024 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2024 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription());
     // Eagerly resolve types.  This is not an optimization, this is a
     // requirement that is due to the fact that we could have this:
     //
@@ -4522,271 +4348,271 @@ yyreduce:
     // If types are not resolved eagerly, then the two types will not be
     // determined to be the same type!
     //
-    ResolveTypeTo((yyvsp[-2].StrVal), *(yyvsp[0].TypeVal));
+    ResolveTypeTo(yyvsp[-2].StrVal, *yyvsp[0].TypeVal);
 
-    if (!setTypeName(*(yyvsp[0].TypeVal), (yyvsp[-2].StrVal)) && !(yyvsp[-2].StrVal)) {
+    if (!setTypeName(*yyvsp[0].TypeVal, yyvsp[-2].StrVal) && !yyvsp[-2].StrVal) {
       CHECK_FOR_ERROR
       // If this is a named type that is not a redefinition, add it to the slot
       // table.
-      CurModule.Types.push_back(*(yyvsp[0].TypeVal));
+      CurModule.Types.push_back(*yyvsp[0].TypeVal);
     }
 
-    delete (yyvsp[0].TypeVal);
+    delete yyvsp[0].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 196:
-#line 2048 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2048 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    ResolveTypeTo((yyvsp[-2].StrVal), (yyvsp[0].PrimType));
+    ResolveTypeTo(yyvsp[-2].StrVal, yyvsp[0].PrimType);
 
-    if (!setTypeName((yyvsp[0].PrimType), (yyvsp[-2].StrVal)) && !(yyvsp[-2].StrVal)) {
+    if (!setTypeName(yyvsp[0].PrimType, yyvsp[-2].StrVal) && !yyvsp[-2].StrVal) {
       CHECK_FOR_ERROR
       // If this is a named type that is not a redefinition, add it to the slot
       // table.
-      CurModule.Types.push_back((yyvsp[0].PrimType));
+      CurModule.Types.push_back(yyvsp[0].PrimType);
     }
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 197:
-#line 2059 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2059 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     { 
     /* "Externally Visible" Linkage */
-    if ((yyvsp[0].ConstVal) == 0) 
+    if (yyvsp[0].ConstVal == 0) 
       GEN_ERROR("Global value initializer is not a constant");
-    CurGV = ParseGlobalVariable((yyvsp[-4].StrVal), GlobalValue::ExternalLinkage,
-                                (yyvsp[-3].Visibility), (yyvsp[-1].BoolVal), (yyvsp[0].ConstVal)->getType(), (yyvsp[0].ConstVal), (yyvsp[-2].BoolVal));
+    CurGV = ParseGlobalVariable(yyvsp[-4].StrVal, GlobalValue::ExternalLinkage,
+                                yyvsp[-3].Visibility, yyvsp[-1].BoolVal, yyvsp[0].ConstVal->getType(), yyvsp[0].ConstVal, yyvsp[-2].BoolVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 198:
-#line 2066 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2066 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
-  ;}
+  }
     break;
 
   case 199:
-#line 2070 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2070 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if ((yyvsp[0].ConstVal) == 0) 
+    if (yyvsp[0].ConstVal == 0) 
       GEN_ERROR("Global value initializer is not a constant");
-    CurGV = ParseGlobalVariable((yyvsp[-5].StrVal), (yyvsp[-4].Linkage), (yyvsp[-3].Visibility), (yyvsp[-1].BoolVal), (yyvsp[0].ConstVal)->getType(), (yyvsp[0].ConstVal), (yyvsp[-2].BoolVal));
+    CurGV = ParseGlobalVariable(yyvsp[-5].StrVal, yyvsp[-4].Linkage, yyvsp[-3].Visibility, yyvsp[-1].BoolVal, yyvsp[0].ConstVal->getType(), yyvsp[0].ConstVal, yyvsp[-2].BoolVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 200:
-#line 2075 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2075 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
-  ;}
+  }
     break;
 
   case 201:
-#line 2079 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2079 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
-    CurGV = ParseGlobalVariable((yyvsp[-5].StrVal), (yyvsp[-4].Linkage), (yyvsp[-3].Visibility), (yyvsp[-1].BoolVal), *(yyvsp[0].TypeVal), 0, (yyvsp[-2].BoolVal));
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription());
+    CurGV = ParseGlobalVariable(yyvsp[-5].StrVal, yyvsp[-4].Linkage, yyvsp[-3].Visibility, yyvsp[-1].BoolVal, *yyvsp[0].TypeVal, 0, yyvsp[-2].BoolVal);
     CHECK_FOR_ERROR
-    delete (yyvsp[0].TypeVal);
-  ;}
+    delete yyvsp[0].TypeVal;
+  }
     break;
 
   case 202:
-#line 2085 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2085 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     CurGV = 0;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 203:
-#line 2089 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2089 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    std::string Name((yyvsp[-4].StrVal));
+    std::string Name(yyvsp[-4].StrVal);
     if (Name.empty())
       GEN_ERROR("Alias name cannot be empty");
     
-    Constant* Aliasee = (yyvsp[0].ConstVal);
+    Constant* Aliasee = yyvsp[0].ConstVal;
     if (Aliasee == 0)
-      GEN_ERROR(std::string("Invalid aliasee for alias: ") + (yyvsp[-4].StrVal));
+      GEN_ERROR(std::string("Invalid aliasee for alias: ") + yyvsp[-4].StrVal);
 
-    GlobalAlias* GA = new GlobalAlias(Aliasee->getType(), (yyvsp[-1].Linkage), Name, Aliasee,
+    GlobalAlias* GA = new GlobalAlias(Aliasee->getType(), yyvsp[-1].Linkage, Name, Aliasee,
                                       CurModule.CurrentModule);
-    GA->setVisibility((yyvsp[-3].Visibility));
+    GA->setVisibility(yyvsp[-3].Visibility);
     InsertValue(GA, CurModule.Values);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 204:
-#line 2104 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2104 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     { 
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 205:
-#line 2107 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2107 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 206:
-#line 2113 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2113 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
   const std::string &AsmSoFar = CurModule.CurrentModule->getModuleInlineAsm();
-  char *EndStr = UnEscapeLexed((yyvsp[0].StrVal), true);
-  std::string NewAsm((yyvsp[0].StrVal), EndStr);
-  free((yyvsp[0].StrVal));
+  char *EndStr = UnEscapeLexed(yyvsp[0].StrVal, true);
+  std::string NewAsm(yyvsp[0].StrVal, EndStr);
+  free(yyvsp[0].StrVal);
 
   if (AsmSoFar.empty())
     CurModule.CurrentModule->setModuleInlineAsm(NewAsm);
   else
     CurModule.CurrentModule->setModuleInlineAsm(AsmSoFar+"\n"+NewAsm);
   CHECK_FOR_ERROR
-;}
+}
     break;
 
   case 207:
-#line 2126 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2126 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    CurModule.CurrentModule->setTargetTriple((yyvsp[0].StrVal));
-    free((yyvsp[0].StrVal));
-  ;}
+    CurModule.CurrentModule->setTargetTriple(yyvsp[0].StrVal);
+    free(yyvsp[0].StrVal);
+  }
     break;
 
   case 208:
-#line 2130 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2130 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    CurModule.CurrentModule->setDataLayout((yyvsp[0].StrVal));
-    free((yyvsp[0].StrVal));
-  ;}
+    CurModule.CurrentModule->setDataLayout(yyvsp[0].StrVal);
+    free(yyvsp[0].StrVal);
+  }
     break;
 
   case 210:
-#line 2137 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2137 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-          CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal));
-          free((yyvsp[0].StrVal));
+          CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal);
+          free(yyvsp[0].StrVal);
           CHECK_FOR_ERROR
-        ;}
+        }
     break;
 
   case 211:
-#line 2142 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2142 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-          CurModule.CurrentModule->addLibrary((yyvsp[0].StrVal));
-          free((yyvsp[0].StrVal));
+          CurModule.CurrentModule->addLibrary(yyvsp[0].StrVal);
+          free(yyvsp[0].StrVal);
           CHECK_FOR_ERROR
-        ;}
+        }
     break;
 
   case 212:
-#line 2147 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2147 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
           CHECK_FOR_ERROR
-        ;}
+        }
     break;
 
   case 213:
-#line 2156 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2156 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
-    if (*(yyvsp[-2].TypeVal) == Type::VoidTy)
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
+    if (*yyvsp[-2].TypeVal == Type::VoidTy)
       GEN_ERROR("void typed arguments are invalid");
-    ArgListEntry E; E.Attrs = (yyvsp[-1].ParamAttrs); E.Ty = (yyvsp[-2].TypeVal); E.Name = (yyvsp[0].StrVal);
-    (yyval.ArgList) = (yyvsp[-4].ArgList);
-    (yyvsp[-4].ArgList)->push_back(E);
+    ArgListEntry E; E.Attrs = yyvsp[-1].ParamAttrs; E.Ty = yyvsp[-2].TypeVal; E.Name = yyvsp[0].StrVal;
+    yyval.ArgList = yyvsp[-4].ArgList;
+    yyvsp[-4].ArgList->push_back(E);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 214:
-#line 2166 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2166 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
-    if (*(yyvsp[-2].TypeVal) == Type::VoidTy)
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
+    if (*yyvsp[-2].TypeVal == Type::VoidTy)
       GEN_ERROR("void typed arguments are invalid");
-    ArgListEntry E; E.Attrs = (yyvsp[-1].ParamAttrs); E.Ty = (yyvsp[-2].TypeVal); E.Name = (yyvsp[0].StrVal);
-    (yyval.ArgList) = new ArgListType;
-    (yyval.ArgList)->push_back(E);
+    ArgListEntry E; E.Attrs = yyvsp[-1].ParamAttrs; E.Ty = yyvsp[-2].TypeVal; E.Name = yyvsp[0].StrVal;
+    yyval.ArgList = new ArgListType;
+    yyval.ArgList->push_back(E);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 215:
-#line 2177 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2177 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ArgList) = (yyvsp[0].ArgList);
+    yyval.ArgList = yyvsp[0].ArgList;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 216:
-#line 2181 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2181 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ArgList) = (yyvsp[-2].ArgList);
+    yyval.ArgList = yyvsp[-2].ArgList;
     struct ArgListEntry E;
     E.Ty = new PATypeHolder(Type::VoidTy);
     E.Name = 0;
     E.Attrs = ParamAttr::None;
-    (yyval.ArgList)->push_back(E);
+    yyval.ArgList->push_back(E);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 217:
-#line 2190 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2190 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ArgList) = new ArgListType;
+    yyval.ArgList = new ArgListType;
     struct ArgListEntry E;
     E.Ty = new PATypeHolder(Type::VoidTy);
     E.Name = 0;
     E.Attrs = ParamAttr::None;
-    (yyval.ArgList)->push_back(E);
+    yyval.ArgList->push_back(E);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 218:
-#line 2199 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2199 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ArgList) = 0;
+    yyval.ArgList = 0;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 219:
-#line 2205 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2205 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-  UnEscapeLexed((yyvsp[-6].StrVal));
-  std::string FunctionName((yyvsp[-6].StrVal));
-  free((yyvsp[-6].StrVal));  // Free strdup'd memory!
+  UnEscapeLexed(yyvsp[-6].StrVal);
+  std::string FunctionName(yyvsp[-6].StrVal);
+  free(yyvsp[-6].StrVal);  // Free strdup'd memory!
   
   // Check the function result for abstractness if this is a define. We should
   // have no abstract types at this point
-  if (!CurFun.isDeclare && CurModule.TypeIsUnresolved((yyvsp[-7].TypeVal)))
-    GEN_ERROR("Reference to abstract result: "+ (yyvsp[-7].TypeVal)->get()->getDescription());
+  if (!CurFun.isDeclare && CurModule.TypeIsUnresolved(yyvsp[-7].TypeVal))
+    GEN_ERROR("Reference to abstract result: "+ yyvsp[-7].TypeVal->get()->getDescription());
 
   std::vector<const Type*> ParamTypeList;
   ParamAttrsVector Attrs;
-  if ((yyvsp[-2].ParamAttrs) != ParamAttr::None) {
-    ParamAttrsWithIndex PAWI; PAWI.index = 0; PAWI.attrs = (yyvsp[-2].ParamAttrs);
+  if (yyvsp[-2].ParamAttrs != ParamAttr::None) {
+    ParamAttrsWithIndex PAWI; PAWI.index = 0; PAWI.attrs = yyvsp[-2].ParamAttrs;
     Attrs.push_back(PAWI);
   }
-  if ((yyvsp[-4].ArgList)) {   // If there are arguments...
+  if (yyvsp[-4].ArgList) {   // If there are arguments...
     unsigned index = 1;
-    for (ArgListType::iterator I = (yyvsp[-4].ArgList)->begin(); I != (yyvsp[-4].ArgList)->end(); ++I, ++index) {
+    for (ArgListType::iterator I = yyvsp[-4].ArgList->begin(); I != yyvsp[-4].ArgList->end(); ++I, ++index) {
       const Type* Ty = I->Ty->get();
       if (!CurFun.isDeclare && CurModule.TypeIsUnresolved(I->Ty))
         GEN_ERROR("Reference to abstract argument: " + Ty->getDescription());
@@ -4806,9 +4632,9 @@ yyreduce:
   if (!Attrs.empty())
     PAL = ParamAttrsList::get(Attrs);
 
-  FunctionType *FT = FunctionType::get(*(yyvsp[-7].TypeVal), ParamTypeList, isVarArg, PAL);
+  FunctionType *FT = FunctionType::get(*yyvsp[-7].TypeVal, ParamTypeList, isVarArg, PAL);
   const PointerType *PFT = PointerType::get(FT);
-  delete (yyvsp[-7].TypeVal);
+  delete yyvsp[-7].TypeVal;
 
   ValID ID;
   if (!FunctionName.empty()) {
@@ -4857,26 +4683,26 @@ yyreduce:
     Fn->setLinkage(CurFun.Linkage);
     Fn->setVisibility(CurFun.Visibility);
   }
-  Fn->setCallingConv((yyvsp[-8].UIntVal));
-  Fn->setAlignment((yyvsp[0].UIntVal));
-  if ((yyvsp[-1].StrVal)) {
-    Fn->setSection((yyvsp[-1].StrVal));
-    free((yyvsp[-1].StrVal));
+  Fn->setCallingConv(yyvsp[-8].UIntVal);
+  Fn->setAlignment(yyvsp[0].UIntVal);
+  if (yyvsp[-1].StrVal) {
+    Fn->setSection(yyvsp[-1].StrVal);
+    free(yyvsp[-1].StrVal);
   }
 
   // Add all of the arguments we parsed to the function...
-  if ((yyvsp[-4].ArgList)) {                     // Is null if empty...
+  if (yyvsp[-4].ArgList) {                     // Is null if empty...
     if (isVarArg) {  // Nuke the last entry
-      assert((yyvsp[-4].ArgList)->back().Ty->get() == Type::VoidTy && (yyvsp[-4].ArgList)->back().Name == 0 &&
+      assert(yyvsp[-4].ArgList->back().Ty->get() == Type::VoidTy && yyvsp[-4].ArgList->back().Name == 0 &&
              "Not a varargs marker!");
-      delete (yyvsp[-4].ArgList)->back().Ty;
-      (yyvsp[-4].ArgList)->pop_back();  // Delete the last entry
+      delete yyvsp[-4].ArgList->back().Ty;
+      yyvsp[-4].ArgList->pop_back();  // Delete the last entry
     }
     Function::arg_iterator ArgIt = Fn->arg_begin();
     Function::arg_iterator ArgEnd = Fn->arg_end();
     unsigned Idx = 1;
-    for (ArgListType::iterator I = (yyvsp[-4].ArgList)->begin(); 
-         I != (yyvsp[-4].ArgList)->end() && ArgIt != ArgEnd; ++I, ++ArgIt) {
+    for (ArgListType::iterator I = yyvsp[-4].ArgList->begin(); 
+         I != yyvsp[-4].ArgList->end() && ArgIt != ArgEnd; ++I, ++ArgIt) {
       delete I->Ty;                          // Delete the typeholder...
       setValueName(ArgIt, I->Name);          // Insert arg into symtab...
       CHECK_FOR_ERROR
@@ -4884,128 +4710,128 @@ yyreduce:
       Idx++;
     }
 
-    delete (yyvsp[-4].ArgList);                     // We're now done with the argument list
+    delete yyvsp[-4].ArgList;                     // We're now done with the argument list
   }
   CHECK_FOR_ERROR
-;}
+}
     break;
 
   case 222:
-#line 2328 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2328 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-  (yyval.FunctionVal) = CurFun.CurrentFunction;
+  yyval.FunctionVal = CurFun.CurrentFunction;
 
   // Make sure that we keep track of the linkage type even if there was a
   // previous "declare".
-  (yyval.FunctionVal)->setLinkage((yyvsp[-3].Linkage));
-  (yyval.FunctionVal)->setVisibility((yyvsp[-2].Visibility));
-;}
+  yyval.FunctionVal->setLinkage(yyvsp[-3].Linkage);
+  yyval.FunctionVal->setVisibility(yyvsp[-2].Visibility);
+}
     break;
 
   case 225:
-#line 2339 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2339 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-  (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
+  yyval.FunctionVal = yyvsp[-1].FunctionVal;
   CHECK_FOR_ERROR
-;}
+}
     break;
 
   case 226:
-#line 2344 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2344 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    CurFun.CurrentFunction->setLinkage((yyvsp[-2].Linkage));
-    CurFun.CurrentFunction->setVisibility((yyvsp[-1].Visibility));
-    (yyval.FunctionVal) = CurFun.CurrentFunction;
+    CurFun.CurrentFunction->setLinkage(yyvsp[-2].Linkage);
+    CurFun.CurrentFunction->setVisibility(yyvsp[-1].Visibility);
+    yyval.FunctionVal = CurFun.CurrentFunction;
     CurFun.FunctionDone();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 227:
-#line 2356 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2356 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.BoolVal) = false;
+    yyval.BoolVal = false;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 228:
-#line 2360 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2360 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.BoolVal) = true;
+    yyval.BoolVal = true;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 229:
-#line 2365 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2365 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {    // A reference to a direct constant
-    (yyval.ValIDVal) = ValID::create((yyvsp[0].SInt64Val));
+    yyval.ValIDVal = ValID::create(yyvsp[0].SInt64Val);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 230:
-#line 2369 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2369 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ValIDVal) = ValID::create((yyvsp[0].UInt64Val));
+    yyval.ValIDVal = ValID::create(yyvsp[0].UInt64Val);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 231:
-#line 2373 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2373 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                     // Perhaps it's an FP constant?
-    (yyval.ValIDVal) = ValID::create((yyvsp[0].FPVal));
+    yyval.ValIDVal = ValID::create(yyvsp[0].FPVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 232:
-#line 2377 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2377 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ValIDVal) = ValID::create(ConstantInt::getTrue());
+    yyval.ValIDVal = ValID::create(ConstantInt::getTrue());
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 233:
-#line 2381 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2381 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ValIDVal) = ValID::create(ConstantInt::getFalse());
+    yyval.ValIDVal = ValID::create(ConstantInt::getFalse());
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 234:
-#line 2385 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2385 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ValIDVal) = ValID::createNull();
+    yyval.ValIDVal = ValID::createNull();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 235:
-#line 2389 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2389 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ValIDVal) = ValID::createUndef();
+    yyval.ValIDVal = ValID::createUndef();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 236:
-#line 2393 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2393 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {     // A vector zero constant.
-    (yyval.ValIDVal) = ValID::createZeroInit();
+    yyval.ValIDVal = ValID::createZeroInit();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 237:
-#line 2397 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2397 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     { // Nonempty unsized packed vector
-    const Type *ETy = (*(yyvsp[-1].ConstVector))[0]->getType();
-    int NumElements = (yyvsp[-1].ConstVector)->size(); 
+    const Type *ETy = (*yyvsp[-1].ConstVector)[0]->getType();
+    int NumElements = yyvsp[-1].ConstVector->size(); 
     
     VectorType* pt = VectorType::get(ETy, NumElements);
     PATypeHolder* PTy = new PATypeHolder(
@@ -5017,233 +4843,233 @@ yyreduce:
                                          );
     
     // Verify all elements are correct type!
-    for (unsigned i = 0; i < (yyvsp[-1].ConstVector)->size(); i++) {
-      if (ETy != (*(yyvsp[-1].ConstVector))[i]->getType())
+    for (unsigned i = 0; i < yyvsp[-1].ConstVector->size(); i++) {
+      if (ETy != (*yyvsp[-1].ConstVector)[i]->getType())
         GEN_ERROR("Element #" + utostr(i) + " is not of type '" + 
                      ETy->getDescription() +"' as required!\nIt is of type '" +
-                     (*(yyvsp[-1].ConstVector))[i]->getType()->getDescription() + "'.");
+                     (*yyvsp[-1].ConstVector)[i]->getType()->getDescription() + "'.");
     }
 
-    (yyval.ValIDVal) = ValID::create(ConstantVector::get(pt, *(yyvsp[-1].ConstVector)));
-    delete PTy; delete (yyvsp[-1].ConstVector);
+    yyval.ValIDVal = ValID::create(ConstantVector::get(pt, *yyvsp[-1].ConstVector));
+    delete PTy; delete yyvsp[-1].ConstVector;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 238:
-#line 2422 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2422 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ValIDVal) = ValID::create((yyvsp[0].ConstVal));
+    yyval.ValIDVal = ValID::create(yyvsp[0].ConstVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 239:
-#line 2426 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2426 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    char *End = UnEscapeLexed((yyvsp[-2].StrVal), true);
-    std::string AsmStr = std::string((yyvsp[-2].StrVal), End);
-    End = UnEscapeLexed((yyvsp[0].StrVal), true);
-    std::string Constraints = std::string((yyvsp[0].StrVal), End);
-    (yyval.ValIDVal) = ValID::createInlineAsm(AsmStr, Constraints, (yyvsp[-3].BoolVal));
-    free((yyvsp[-2].StrVal));
-    free((yyvsp[0].StrVal));
+    char *End = UnEscapeLexed(yyvsp[-2].StrVal, true);
+    std::string AsmStr = std::string(yyvsp[-2].StrVal, End);
+    End = UnEscapeLexed(yyvsp[0].StrVal, true);
+    std::string Constraints = std::string(yyvsp[0].StrVal, End);
+    yyval.ValIDVal = ValID::createInlineAsm(AsmStr, Constraints, yyvsp[-3].BoolVal);
+    free(yyvsp[-2].StrVal);
+    free(yyvsp[0].StrVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 240:
-#line 2440 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2440 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {  // Is it an integer reference...?
-    (yyval.ValIDVal) = ValID::createLocalID((yyvsp[0].UIntVal));
+    yyval.ValIDVal = ValID::createLocalID(yyvsp[0].UIntVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 241:
-#line 2444 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2444 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ValIDVal) = ValID::createGlobalID((yyvsp[0].UIntVal));
+    yyval.ValIDVal = ValID::createGlobalID(yyvsp[0].UIntVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 242:
-#line 2448 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2448 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                   // Is it a named reference...?
-    (yyval.ValIDVal) = ValID::createLocalName((yyvsp[0].StrVal));
+    yyval.ValIDVal = ValID::createLocalName(yyvsp[0].StrVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 243:
-#line 2452 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2452 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                   // Is it a named reference...?
-    (yyval.ValIDVal) = ValID::createGlobalName((yyvsp[0].StrVal));
+    yyval.ValIDVal = ValID::createGlobalName(yyvsp[0].StrVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 246:
-#line 2464 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2464 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
-    (yyval.ValueVal) = getVal(*(yyvsp[-1].TypeVal), (yyvsp[0].ValIDVal)); 
-    delete (yyvsp[-1].TypeVal);
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription());
+    yyval.ValueVal = getVal(*yyvsp[-1].TypeVal, yyvsp[0].ValIDVal); 
+    delete yyvsp[-1].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 247:
-#line 2473 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2473 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
+    yyval.FunctionVal = yyvsp[-1].FunctionVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 248:
-#line 2477 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2477 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     { // Do not allow functions with 0 basic blocks   
-    (yyval.FunctionVal) = (yyvsp[-1].FunctionVal);
+    yyval.FunctionVal = yyvsp[-1].FunctionVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 249:
-#line 2486 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2486 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    setValueName((yyvsp[0].TermInstVal), (yyvsp[-1].StrVal));
+    setValueName(yyvsp[0].TermInstVal, yyvsp[-1].StrVal);
     CHECK_FOR_ERROR
-    InsertValue((yyvsp[0].TermInstVal));
-    (yyvsp[-2].BasicBlockVal)->getInstList().push_back((yyvsp[0].TermInstVal));
-    (yyval.BasicBlockVal) = (yyvsp[-2].BasicBlockVal);
+    InsertValue(yyvsp[0].TermInstVal);
+    yyvsp[-2].BasicBlockVal->getInstList().push_back(yyvsp[0].TermInstVal);
+    yyval.BasicBlockVal = yyvsp[-2].BasicBlockVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 250:
-#line 2495 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2495 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if (CastInst *CI1 = dyn_cast<CastInst>((yyvsp[0].InstVal)))
+    if (CastInst *CI1 = dyn_cast<CastInst>(yyvsp[0].InstVal))
       if (CastInst *CI2 = dyn_cast<CastInst>(CI1->getOperand(0)))
         if (CI2->getParent() == 0)
-          (yyvsp[-1].BasicBlockVal)->getInstList().push_back(CI2);
-    (yyvsp[-1].BasicBlockVal)->getInstList().push_back((yyvsp[0].InstVal));
-    (yyval.BasicBlockVal) = (yyvsp[-1].BasicBlockVal);
+          yyvsp[-1].BasicBlockVal->getInstList().push_back(CI2);
+    yyvsp[-1].BasicBlockVal->getInstList().push_back(yyvsp[0].InstVal);
+    yyval.BasicBlockVal = yyvsp[-1].BasicBlockVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 251:
-#line 2504 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2504 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {          // Empty space between instruction lists
-    (yyval.BasicBlockVal) = defineBBVal(ValID::createLocalID(CurFun.NextValNum));
+    yyval.BasicBlockVal = defineBBVal(ValID::createLocalID(CurFun.NextValNum));
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 252:
-#line 2508 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2508 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {             // Labelled (named) basic block
-    (yyval.BasicBlockVal) = defineBBVal(ValID::createLocalName((yyvsp[0].StrVal)));
+    yyval.BasicBlockVal = defineBBVal(ValID::createLocalName(yyvsp[0].StrVal));
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 253:
-#line 2513 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2513 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {              // Return with a result...
-    (yyval.TermInstVal) = new ReturnInst((yyvsp[0].ValueVal));
+    yyval.TermInstVal = new ReturnInst(yyvsp[0].ValueVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 254:
-#line 2517 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2517 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                                    // Return with no result...
-    (yyval.TermInstVal) = new ReturnInst();
+    yyval.TermInstVal = new ReturnInst();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 255:
-#line 2521 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2521 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {                           // Unconditional Branch...
-    BasicBlock* tmpBB = getBBVal((yyvsp[0].ValIDVal));
+    BasicBlock* tmpBB = getBBVal(yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.TermInstVal) = new BranchInst(tmpBB);
-  ;}
+    yyval.TermInstVal = new BranchInst(tmpBB);
+  }
     break;
 
   case 256:
-#line 2526 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2526 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {  
-    assert(cast<IntegerType>((yyvsp[-7].PrimType))->getBitWidth() == 1 && "Not Bool?");
-    BasicBlock* tmpBBA = getBBVal((yyvsp[-3].ValIDVal));
+    assert(cast<IntegerType>(yyvsp[-7].PrimType)->getBitWidth() == 1 && "Not Bool?");
+    BasicBlock* tmpBBA = getBBVal(yyvsp[-3].ValIDVal);
     CHECK_FOR_ERROR
-    BasicBlock* tmpBBB = getBBVal((yyvsp[0].ValIDVal));
+    BasicBlock* tmpBBB = getBBVal(yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
-    Value* tmpVal = getVal(Type::Int1Ty, (yyvsp[-6].ValIDVal));
+    Value* tmpVal = getVal(Type::Int1Ty, yyvsp[-6].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.TermInstVal) = new BranchInst(tmpBBA, tmpBBB, tmpVal);
-  ;}
+    yyval.TermInstVal = new BranchInst(tmpBBA, tmpBBB, tmpVal);
+  }
     break;
 
   case 257:
-#line 2536 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2536 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    Value* tmpVal = getVal((yyvsp[-7].PrimType), (yyvsp[-6].ValIDVal));
+    Value* tmpVal = getVal(yyvsp[-7].PrimType, yyvsp[-6].ValIDVal);
     CHECK_FOR_ERROR
-    BasicBlock* tmpBB = getBBVal((yyvsp[-3].ValIDVal));
+    BasicBlock* tmpBB = getBBVal(yyvsp[-3].ValIDVal);
     CHECK_FOR_ERROR
-    SwitchInst *S = new SwitchInst(tmpVal, tmpBB, (yyvsp[-1].JumpTable)->size());
-    (yyval.TermInstVal) = S;
+    SwitchInst *S = new SwitchInst(tmpVal, tmpBB, yyvsp[-1].JumpTable->size());
+    yyval.TermInstVal = S;
 
-    std::vector<std::pair<Constant*,BasicBlock*> >::iterator I = (yyvsp[-1].JumpTable)->begin(),
-      E = (yyvsp[-1].JumpTable)->end();
+    std::vector<std::pair<Constant*,BasicBlock*> >::iterator I = yyvsp[-1].JumpTable->begin(),
+      E = yyvsp[-1].JumpTable->end();
     for (; I != E; ++I) {
       if (ConstantInt *CI = dyn_cast<ConstantInt>(I->first))
           S->addCase(CI, I->second);
       else
         GEN_ERROR("Switch case is constant, but not a simple integer");
     }
-    delete (yyvsp[-1].JumpTable);
+    delete yyvsp[-1].JumpTable;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 258:
-#line 2555 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2555 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    Value* tmpVal = getVal((yyvsp[-6].PrimType), (yyvsp[-5].ValIDVal));
+    Value* tmpVal = getVal(yyvsp[-6].PrimType, yyvsp[-5].ValIDVal);
     CHECK_FOR_ERROR
-    BasicBlock* tmpBB = getBBVal((yyvsp[-2].ValIDVal));
+    BasicBlock* tmpBB = getBBVal(yyvsp[-2].ValIDVal);
     CHECK_FOR_ERROR
     SwitchInst *S = new SwitchInst(tmpVal, tmpBB, 0);
-    (yyval.TermInstVal) = S;
+    yyval.TermInstVal = S;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 259:
-#line 2565 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2565 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
 
     // Handle the short syntax
     const PointerType *PFTy = 0;
     const FunctionType *Ty = 0;
-    if (!(PFTy = dyn_cast<PointerType>((yyvsp[-11].TypeVal)->get())) ||
+    if (!(PFTy = dyn_cast<PointerType>(yyvsp[-11].TypeVal->get())) ||
         !(Ty = dyn_cast<FunctionType>(PFTy->getElementType()))) {
       // Pull out the types of all of the arguments...
       std::vector<const Type*> ParamTypes;
       ParamAttrsVector Attrs;
-      if ((yyvsp[-6].ParamAttrs) != ParamAttr::None) {
+      if (yyvsp[-6].ParamAttrs != ParamAttr::None) {
         ParamAttrsWithIndex PAWI; PAWI.index = 0; PAWI.attrs = 8;
         Attrs.push_back(PAWI);
       }
-      ValueRefList::iterator I = (yyvsp[-8].ValueRefList)->begin(), E = (yyvsp[-8].ValueRefList)->end();
+      ValueRefList::iterator I = yyvsp[-8].ValueRefList->begin(), E = yyvsp[-8].ValueRefList->end();
       unsigned index = 1;
       for (; I != E; ++I, ++index) {
         const Type *Ty = I->Val->getType();
@@ -5259,22 +5085,22 @@ yyreduce:
       ParamAttrsList *PAL = 0;
       if (!Attrs.empty())
         PAL = ParamAttrsList::get(Attrs);
-      Ty = FunctionType::get((yyvsp[-11].TypeVal)->get(), ParamTypes, false, PAL);
+      Ty = FunctionType::get(yyvsp[-11].TypeVal->get(), ParamTypes, false, PAL);
       PFTy = PointerType::get(Ty);
     }
 
-    delete (yyvsp[-11].TypeVal);
+    delete yyvsp[-11].TypeVal;
 
-    Value *V = getVal(PFTy, (yyvsp[-10].ValIDVal));   // Get the function we're calling...
+    Value *V = getVal(PFTy, yyvsp[-10].ValIDVal);   // Get the function we're calling...
     CHECK_FOR_ERROR
-    BasicBlock *Normal = getBBVal((yyvsp[-3].ValIDVal));
+    BasicBlock *Normal = getBBVal(yyvsp[-3].ValIDVal);
     CHECK_FOR_ERROR
-    BasicBlock *Except = getBBVal((yyvsp[0].ValIDVal));
+    BasicBlock *Except = getBBVal(yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
 
     // Check the arguments
     ValueList Args;
-    if ((yyvsp[-8].ValueRefList)->empty()) {                                   // Has no arguments?
+    if (yyvsp[-8].ValueRefList->empty()) {                                   // Has no arguments?
       // Make sure no arguments is a good thing!
       if (Ty->getNumParams() != 0)
         GEN_ERROR("No arguments passed to a function that "
@@ -5284,7 +5110,7 @@ yyreduce:
       // correctly!
       FunctionType::param_iterator I = Ty->param_begin();
       FunctionType::param_iterator E = Ty->param_end();
-      ValueRefList::iterator ArgI = (yyvsp[-8].ValueRefList)->begin(), ArgE = (yyvsp[-8].ValueRefList)->end();
+      ValueRefList::iterator ArgI = yyvsp[-8].ValueRefList->begin(), ArgE = yyvsp[-8].ValueRefList->end();
 
       for (; ArgI != ArgE && I != E; ++ArgI, ++I) {
         if (ArgI->Val->getType() != *I)
@@ -5303,348 +5129,348 @@ yyreduce:
 
     // Create the InvokeInst
     InvokeInst *II = new InvokeInst(V, Normal, Except, &Args[0], Args.size());
-    II->setCallingConv((yyvsp[-12].UIntVal));
-    (yyval.TermInstVal) = II;
-    delete (yyvsp[-8].ValueRefList);
+    II->setCallingConv(yyvsp[-12].UIntVal);
+    yyval.TermInstVal = II;
+    delete yyvsp[-8].ValueRefList;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 260:
-#line 2644 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2644 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TermInstVal) = new UnwindInst();
+    yyval.TermInstVal = new UnwindInst();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 261:
-#line 2648 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2648 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.TermInstVal) = new UnreachableInst();
+    yyval.TermInstVal = new UnreachableInst();
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 262:
-#line 2655 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2655 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.JumpTable) = (yyvsp[-5].JumpTable);
-    Constant *V = cast<Constant>(getExistingVal((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));
+    yyval.JumpTable = yyvsp[-5].JumpTable;
+    Constant *V = cast<Constant>(getExistingVal(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal));
     CHECK_FOR_ERROR
     if (V == 0)
       GEN_ERROR("May only switch on a constant pool value");
 
-    BasicBlock* tmpBB = getBBVal((yyvsp[0].ValIDVal));
+    BasicBlock* tmpBB = getBBVal(yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.JumpTable)->push_back(std::make_pair(V, tmpBB));
-  ;}
+    yyval.JumpTable->push_back(std::make_pair(V, tmpBB));
+  }
     break;
 
   case 263:
-#line 2666 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2666 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.JumpTable) = new std::vector<std::pair<Constant*, BasicBlock*> >();
-    Constant *V = cast<Constant>(getExistingVal((yyvsp[-4].PrimType), (yyvsp[-3].ValIDVal)));
+    yyval.JumpTable = new std::vector<std::pair<Constant*, BasicBlock*> >();
+    Constant *V = cast<Constant>(getExistingVal(yyvsp[-4].PrimType, yyvsp[-3].ValIDVal));
     CHECK_FOR_ERROR
 
     if (V == 0)
       GEN_ERROR("May only switch on a constant pool value");
 
-    BasicBlock* tmpBB = getBBVal((yyvsp[0].ValIDVal));
+    BasicBlock* tmpBB = getBBVal(yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.JumpTable)->push_back(std::make_pair(V, tmpBB)); 
-  ;}
+    yyval.JumpTable->push_back(std::make_pair(V, tmpBB)); 
+  }
     break;
 
   case 264:
-#line 2679 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2679 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     // Is this definition named?? if so, assign the name...
-    setValueName((yyvsp[0].InstVal), (yyvsp[-1].StrVal));
+    setValueName(yyvsp[0].InstVal, yyvsp[-1].StrVal);
     CHECK_FOR_ERROR
-    InsertValue((yyvsp[0].InstVal));
-    (yyval.InstVal) = (yyvsp[0].InstVal);
+    InsertValue(yyvsp[0].InstVal);
+    yyval.InstVal = yyvsp[0].InstVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 265:
-#line 2689 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2689 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {    // Used for PHI nodes
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-5].TypeVal))->getDescription());
-    (yyval.PHIList) = new std::list<std::pair<Value*, BasicBlock*> >();
-    Value* tmpVal = getVal(*(yyvsp[-5].TypeVal), (yyvsp[-3].ValIDVal));
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-5].TypeVal)->getDescription());
+    yyval.PHIList = new std::list<std::pair<Value*, BasicBlock*> >();
+    Value* tmpVal = getVal(*yyvsp[-5].TypeVal, yyvsp[-3].ValIDVal);
     CHECK_FOR_ERROR
-    BasicBlock* tmpBB = getBBVal((yyvsp[-1].ValIDVal));
+    BasicBlock* tmpBB = getBBVal(yyvsp[-1].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.PHIList)->push_back(std::make_pair(tmpVal, tmpBB));
-    delete (yyvsp[-5].TypeVal);
-  ;}
+    yyval.PHIList->push_back(std::make_pair(tmpVal, tmpBB));
+    delete yyvsp[-5].TypeVal;
+  }
     break;
 
   case 266:
-#line 2700 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2700 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.PHIList) = (yyvsp[-6].PHIList);
-    Value* tmpVal = getVal((yyvsp[-6].PHIList)->front().first->getType(), (yyvsp[-3].ValIDVal));
+    yyval.PHIList = yyvsp[-6].PHIList;
+    Value* tmpVal = getVal(yyvsp[-6].PHIList->front().first->getType(), yyvsp[-3].ValIDVal);
     CHECK_FOR_ERROR
-    BasicBlock* tmpBB = getBBVal((yyvsp[-1].ValIDVal));
+    BasicBlock* tmpBB = getBBVal(yyvsp[-1].ValIDVal);
     CHECK_FOR_ERROR
-    (yyvsp[-6].PHIList)->push_back(std::make_pair(tmpVal, tmpBB));
-  ;}
+    yyvsp[-6].PHIList->push_back(std::make_pair(tmpVal, tmpBB));
+  }
     break;
 
   case 267:
-#line 2710 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2710 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {    
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
     // Used for call and invoke instructions
-    (yyval.ValueRefList) = new ValueRefList();
-    ValueRefListEntry E; E.Attrs = (yyvsp[0].ParamAttrs); E.Val = getVal((yyvsp[-2].TypeVal)->get(), (yyvsp[-1].ValIDVal));
-    (yyval.ValueRefList)->push_back(E);
-    delete (yyvsp[-2].TypeVal);
-  ;}
+    yyval.ValueRefList = new ValueRefList();
+    ValueRefListEntry E; E.Attrs = yyvsp[0].ParamAttrs; E.Val = getVal(yyvsp[-2].TypeVal->get(), yyvsp[-1].ValIDVal);
+    yyval.ValueRefList->push_back(E);
+    delete yyvsp[-2].TypeVal;
+  }
     break;
 
   case 268:
-#line 2719 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2719 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
-    (yyval.ValueRefList) = (yyvsp[-4].ValueRefList);
-    ValueRefListEntry E; E.Attrs = (yyvsp[0].ParamAttrs); E.Val = getVal((yyvsp[-2].TypeVal)->get(), (yyvsp[-1].ValIDVal));
-    (yyval.ValueRefList)->push_back(E);
-    delete (yyvsp[-2].TypeVal);
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
+    yyval.ValueRefList = yyvsp[-4].ValueRefList;
+    ValueRefListEntry E; E.Attrs = yyvsp[0].ParamAttrs; E.Val = getVal(yyvsp[-2].TypeVal->get(), yyvsp[-1].ValIDVal);
+    yyval.ValueRefList->push_back(E);
+    delete yyvsp[-2].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 269:
-#line 2728 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ValueRefList) = new ValueRefList(); ;}
+#line 2728 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ValueRefList = new ValueRefList(); }
     break;
 
   case 270:
-#line 2731 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-    { (yyval.ValueList) = new std::vector<Value*>(); ;}
+#line 2731 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+    { yyval.ValueList = new std::vector<Value*>(); }
     break;
 
   case 271:
-#line 2732 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2732 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.ValueList) = (yyvsp[-2].ValueList);
-    (yyval.ValueList)->push_back((yyvsp[0].ValueVal));
+    yyval.ValueList = yyvsp[-2].ValueList;
+    yyval.ValueList->push_back(yyvsp[0].ValueVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 272:
-#line 2739 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2739 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.BoolVal) = true;
+    yyval.BoolVal = true;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 273:
-#line 2743 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2743 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.BoolVal) = false;
+    yyval.BoolVal = false;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 274:
-#line 2748 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2748 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
-    if (!(*(yyvsp[-3].TypeVal))->isInteger() && !(*(yyvsp[-3].TypeVal))->isFloatingPoint() && 
-        !isa<VectorType>((*(yyvsp[-3].TypeVal)).get()))
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription());
+    if (!(*yyvsp[-3].TypeVal)->isInteger() && !(*yyvsp[-3].TypeVal)->isFloatingPoint() && 
+        !isa<VectorType>((*yyvsp[-3].TypeVal).get()))
       GEN_ERROR(
         "Arithmetic operator requires integer, FP, or packed operands");
-    if (isa<VectorType>((*(yyvsp[-3].TypeVal)).get()) && 
-        ((yyvsp[-4].BinaryOpVal) == Instruction::URem || 
-         (yyvsp[-4].BinaryOpVal) == Instruction::SRem ||
-         (yyvsp[-4].BinaryOpVal) == Instruction::FRem))
+    if (isa<VectorType>((*yyvsp[-3].TypeVal).get()) && 
+        (yyvsp[-4].BinaryOpVal == Instruction::URem || 
+         yyvsp[-4].BinaryOpVal == Instruction::SRem ||
+         yyvsp[-4].BinaryOpVal == Instruction::FRem))
       GEN_ERROR("Remainder not supported on vector types");
-    Value* val1 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[-2].ValIDVal)); 
+    Value* val1 = getVal(*yyvsp[-3].TypeVal, yyvsp[-2].ValIDVal); 
     CHECK_FOR_ERROR
-    Value* val2 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[0].ValIDVal));
+    Value* val2 = getVal(*yyvsp[-3].TypeVal, yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.InstVal) = BinaryOperator::create((yyvsp[-4].BinaryOpVal), val1, val2);
-    if ((yyval.InstVal) == 0)
+    yyval.InstVal = BinaryOperator::create(yyvsp[-4].BinaryOpVal, val1, val2);
+    if (yyval.InstVal == 0)
       GEN_ERROR("binary operator returned null");
-    delete (yyvsp[-3].TypeVal);
-  ;}
+    delete yyvsp[-3].TypeVal;
+  }
     break;
 
   case 275:
-#line 2769 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2769 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
-    if (!(*(yyvsp[-3].TypeVal))->isInteger()) {
-      if (Instruction::isShift((yyvsp[-4].BinaryOpVal)) || !isa<VectorType>((yyvsp[-3].TypeVal)->get()) ||
-          !cast<VectorType>((yyvsp[-3].TypeVal)->get())->getElementType()->isInteger())
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription());
+    if (!(*yyvsp[-3].TypeVal)->isInteger()) {
+      if (Instruction::isShift(yyvsp[-4].BinaryOpVal) || !isa<VectorType>(yyvsp[-3].TypeVal->get()) ||
+          !cast<VectorType>(yyvsp[-3].TypeVal->get())->getElementType()->isInteger())
         GEN_ERROR("Logical operator requires integral operands");
     }
-    Value* tmpVal1 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[-2].ValIDVal));
+    Value* tmpVal1 = getVal(*yyvsp[-3].TypeVal, yyvsp[-2].ValIDVal);
     CHECK_FOR_ERROR
-    Value* tmpVal2 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[0].ValIDVal));
+    Value* tmpVal2 = getVal(*yyvsp[-3].TypeVal, yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.InstVal) = BinaryOperator::create((yyvsp[-4].BinaryOpVal), tmpVal1, tmpVal2);
-    if ((yyval.InstVal) == 0)
+    yyval.InstVal = BinaryOperator::create(yyvsp[-4].BinaryOpVal, tmpVal1, tmpVal2);
+    if (yyval.InstVal == 0)
       GEN_ERROR("binary operator returned null");
-    delete (yyvsp[-3].TypeVal);
-  ;}
+    delete yyvsp[-3].TypeVal;
+  }
     break;
 
   case 276:
-#line 2786 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2786 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
-    if (isa<VectorType>((*(yyvsp[-3].TypeVal)).get()))
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription());
+    if (isa<VectorType>((*yyvsp[-3].TypeVal).get()))
       GEN_ERROR("Vector types not supported by icmp instruction");
-    Value* tmpVal1 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[-2].ValIDVal));
+    Value* tmpVal1 = getVal(*yyvsp[-3].TypeVal, yyvsp[-2].ValIDVal);
     CHECK_FOR_ERROR
-    Value* tmpVal2 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[0].ValIDVal));
+    Value* tmpVal2 = getVal(*yyvsp[-3].TypeVal, yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.InstVal) = CmpInst::create((yyvsp[-5].OtherOpVal), (yyvsp[-4].IPredicate), tmpVal1, tmpVal2);
-    if ((yyval.InstVal) == 0)
+    yyval.InstVal = CmpInst::create(yyvsp[-5].OtherOpVal, yyvsp[-4].IPredicate, tmpVal1, tmpVal2);
+    if (yyval.InstVal == 0)
       GEN_ERROR("icmp operator returned null");
-    delete (yyvsp[-3].TypeVal);
-  ;}
+    delete yyvsp[-3].TypeVal;
+  }
     break;
 
   case 277:
-#line 2800 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2800 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-3].TypeVal))->getDescription());
-    if (isa<VectorType>((*(yyvsp[-3].TypeVal)).get()))
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-3].TypeVal)->getDescription());
+    if (isa<VectorType>((*yyvsp[-3].TypeVal).get()))
       GEN_ERROR("Vector types not supported by fcmp instruction");
-    Value* tmpVal1 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[-2].ValIDVal));
+    Value* tmpVal1 = getVal(*yyvsp[-3].TypeVal, yyvsp[-2].ValIDVal);
     CHECK_FOR_ERROR
-    Value* tmpVal2 = getVal(*(yyvsp[-3].TypeVal), (yyvsp[0].ValIDVal));
+    Value* tmpVal2 = getVal(*yyvsp[-3].TypeVal, yyvsp[0].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.InstVal) = CmpInst::create((yyvsp[-5].OtherOpVal), (yyvsp[-4].FPredicate), tmpVal1, tmpVal2);
-    if ((yyval.InstVal) == 0)
+    yyval.InstVal = CmpInst::create(yyvsp[-5].OtherOpVal, yyvsp[-4].FPredicate, tmpVal1, tmpVal2);
+    if (yyval.InstVal == 0)
       GEN_ERROR("fcmp operator returned null");
-    delete (yyvsp[-3].TypeVal);
-  ;}
+    delete yyvsp[-3].TypeVal;
+  }
     break;
 
   case 278:
-#line 2814 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2814 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
-    Value* Val = (yyvsp[-2].ValueVal);
-    const Type* DestTy = (yyvsp[0].TypeVal)->get();
-    if (!CastInst::castIsValid((yyvsp[-3].CastOpVal), Val, DestTy))
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription());
+    Value* Val = yyvsp[-2].ValueVal;
+    const Type* DestTy = yyvsp[0].TypeVal->get();
+    if (!CastInst::castIsValid(yyvsp[-3].CastOpVal, Val, DestTy))
       GEN_ERROR("invalid cast opcode for cast from '" +
                 Val->getType()->getDescription() + "' to '" +
                 DestTy->getDescription() + "'"); 
-    (yyval.InstVal) = CastInst::create((yyvsp[-3].CastOpVal), Val, DestTy);
-    delete (yyvsp[0].TypeVal);
-  ;}
+    yyval.InstVal = CastInst::create(yyvsp[-3].CastOpVal, Val, DestTy);
+    delete yyvsp[0].TypeVal;
+  }
     break;
 
   case 279:
-#line 2826 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2826 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if ((yyvsp[-4].ValueVal)->getType() != Type::Int1Ty)
+    if (yyvsp[-4].ValueVal->getType() != Type::Int1Ty)
       GEN_ERROR("select condition must be boolean");
-    if ((yyvsp[-2].ValueVal)->getType() != (yyvsp[0].ValueVal)->getType())
+    if (yyvsp[-2].ValueVal->getType() != yyvsp[0].ValueVal->getType())
       GEN_ERROR("select value types should match");
-    (yyval.InstVal) = new SelectInst((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal));
+    yyval.InstVal = new SelectInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 280:
-#line 2834 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2834 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[0].TypeVal))->getDescription());
-    (yyval.InstVal) = new VAArgInst((yyvsp[-2].ValueVal), *(yyvsp[0].TypeVal));
-    delete (yyvsp[0].TypeVal);
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[0].TypeVal)->getDescription());
+    yyval.InstVal = new VAArgInst(yyvsp[-2].ValueVal, *yyvsp[0].TypeVal);
+    delete yyvsp[0].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 281:
-#line 2841 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2841 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if (!ExtractElementInst::isValidOperands((yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
+    if (!ExtractElementInst::isValidOperands(yyvsp[-2].ValueVal, yyvsp[0].ValueVal))
       GEN_ERROR("Invalid extractelement operands");
-    (yyval.InstVal) = new ExtractElementInst((yyvsp[-2].ValueVal), (yyvsp[0].ValueVal));
+    yyval.InstVal = new ExtractElementInst(yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 282:
-#line 2847 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2847 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if (!InsertElementInst::isValidOperands((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
+    if (!InsertElementInst::isValidOperands(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal))
       GEN_ERROR("Invalid insertelement operands");
-    (yyval.InstVal) = new InsertElementInst((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal));
+    yyval.InstVal = new InsertElementInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 283:
-#line 2853 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2853 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if (!ShuffleVectorInst::isValidOperands((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal)))
+    if (!ShuffleVectorInst::isValidOperands(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal))
       GEN_ERROR("Invalid shufflevector operands");
-    (yyval.InstVal) = new ShuffleVectorInst((yyvsp[-4].ValueVal), (yyvsp[-2].ValueVal), (yyvsp[0].ValueVal));
+    yyval.InstVal = new ShuffleVectorInst(yyvsp[-4].ValueVal, yyvsp[-2].ValueVal, yyvsp[0].ValueVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 284:
-#line 2859 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2859 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    const Type *Ty = (yyvsp[0].PHIList)->front().first->getType();
+    const Type *Ty = yyvsp[0].PHIList->front().first->getType();
     if (!Ty->isFirstClassType())
       GEN_ERROR("PHI node operands must be of first class type");
-    (yyval.InstVal) = new PHINode(Ty);
-    ((PHINode*)(yyval.InstVal))->reserveOperandSpace((yyvsp[0].PHIList)->size());
-    while ((yyvsp[0].PHIList)->begin() != (yyvsp[0].PHIList)->end()) {
-      if ((yyvsp[0].PHIList)->front().first->getType() != Ty) 
+    yyval.InstVal = new PHINode(Ty);
+    ((PHINode*)yyval.InstVal)->reserveOperandSpace(yyvsp[0].PHIList->size());
+    while (yyvsp[0].PHIList->begin() != yyvsp[0].PHIList->end()) {
+      if (yyvsp[0].PHIList->front().first->getType() != Ty) 
         GEN_ERROR("All elements of a PHI node must be of the same type");
-      cast<PHINode>((yyval.InstVal))->addIncoming((yyvsp[0].PHIList)->front().first, (yyvsp[0].PHIList)->front().second);
-      (yyvsp[0].PHIList)->pop_front();
+      cast<PHINode>(yyval.InstVal)->addIncoming(yyvsp[0].PHIList->front().first, yyvsp[0].PHIList->front().second);
+      yyvsp[0].PHIList->pop_front();
     }
-    delete (yyvsp[0].PHIList);  // Free the list...
+    delete yyvsp[0].PHIList;  // Free the list...
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 285:
-#line 2875 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2875 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
 
     // Handle the short syntax
     const PointerType *PFTy = 0;
     const FunctionType *Ty = 0;
-    if (!(PFTy = dyn_cast<PointerType>((yyvsp[-5].TypeVal)->get())) ||
+    if (!(PFTy = dyn_cast<PointerType>(yyvsp[-5].TypeVal->get())) ||
         !(Ty = dyn_cast<FunctionType>(PFTy->getElementType()))) {
       // Pull out the types of all of the arguments...
       std::vector<const Type*> ParamTypes;
       ParamAttrsVector Attrs;
-      if ((yyvsp[0].ParamAttrs) != ParamAttr::None) {
-        ParamAttrsWithIndex PAWI; PAWI.index = 0; PAWI.attrs = (yyvsp[0].ParamAttrs);
+      if (yyvsp[0].ParamAttrs != ParamAttr::None) {
+        ParamAttrsWithIndex PAWI; PAWI.index = 0; PAWI.attrs = yyvsp[0].ParamAttrs;
         Attrs.push_back(PAWI);
       }
       unsigned index = 1;
-      ValueRefList::iterator I = (yyvsp[-2].ValueRefList)->begin(), E = (yyvsp[-2].ValueRefList)->end();
+      ValueRefList::iterator I = yyvsp[-2].ValueRefList->begin(), E = yyvsp[-2].ValueRefList->end();
       for (; I != E; ++I, ++index) {
         const Type *Ty = I->Val->getType();
         if (Ty == Type::VoidTy)
@@ -5660,11 +5486,11 @@ yyreduce:
       if (!Attrs.empty())
         PAL = ParamAttrsList::get(Attrs);
 
-      Ty = FunctionType::get((yyvsp[-5].TypeVal)->get(), ParamTypes, false, PAL);
+      Ty = FunctionType::get(yyvsp[-5].TypeVal->get(), ParamTypes, false, PAL);
       PFTy = PointerType::get(Ty);
     }
 
-    Value *V = getVal(PFTy, (yyvsp[-4].ValIDVal));   // Get the function we're calling...
+    Value *V = getVal(PFTy, yyvsp[-4].ValIDVal);   // Get the function we're calling...
     CHECK_FOR_ERROR
 
     // Check for call to invalid intrinsic to avoid crashing later.
@@ -5678,7 +5504,7 @@ yyreduce:
 
     // Check the arguments 
     ValueList Args;
-    if ((yyvsp[-2].ValueRefList)->empty()) {                                   // Has no arguments?
+    if (yyvsp[-2].ValueRefList->empty()) {                                   // Has no arguments?
       // Make sure no arguments is a good thing!
       if (Ty->getNumParams() != 0)
         GEN_ERROR("No arguments passed to a function that "
@@ -5689,7 +5515,7 @@ yyreduce:
       //
       FunctionType::param_iterator I = Ty->param_begin();
       FunctionType::param_iterator E = Ty->param_end();
-      ValueRefList::iterator ArgI = (yyvsp[-2].ValueRefList)->begin(), ArgE = (yyvsp[-2].ValueRefList)->end();
+      ValueRefList::iterator ArgI = yyvsp[-2].ValueRefList->begin(), ArgE = yyvsp[-2].ValueRefList->end();
 
       for (; ArgI != ArgE && I != E; ++ArgI, ++I) {
         if (ArgI->Val->getType() != *I)
@@ -5706,166 +5532,174 @@ yyreduce:
     }
     // Create the call node
     CallInst *CI = new CallInst(V, &Args[0], Args.size());
-    CI->setTailCall((yyvsp[-7].BoolVal));
-    CI->setCallingConv((yyvsp[-6].UIntVal));
-    (yyval.InstVal) = CI;
-    delete (yyvsp[-2].ValueRefList);
-    delete (yyvsp[-5].TypeVal);
+    CI->setTailCall(yyvsp[-7].BoolVal);
+    CI->setCallingConv(yyvsp[-6].UIntVal);
+    yyval.InstVal = CI;
+    delete yyvsp[-2].ValueRefList;
+    delete yyvsp[-5].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 286:
-#line 2959 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2959 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.InstVal) = (yyvsp[0].InstVal);
+    yyval.InstVal = yyvsp[0].InstVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 287:
-#line 2964 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2964 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.BoolVal) = true;
+    yyval.BoolVal = true;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 288:
-#line 2968 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2968 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    (yyval.BoolVal) = false;
+    yyval.BoolVal = false;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 289:
-#line 2975 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2975 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
-    (yyval.InstVal) = new MallocInst(*(yyvsp[-1].TypeVal), 0, (yyvsp[0].UIntVal));
-    delete (yyvsp[-1].TypeVal);
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription());
+    yyval.InstVal = new MallocInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal);
+    delete yyvsp[-1].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 290:
-#line 2982 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2982 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription());
-    Value* tmpVal = getVal((yyvsp[-2].PrimType), (yyvsp[-1].ValIDVal));
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-4].TypeVal)->getDescription());
+    Value* tmpVal = getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.InstVal) = new MallocInst(*(yyvsp[-4].TypeVal), tmpVal, (yyvsp[0].UIntVal));
-    delete (yyvsp[-4].TypeVal);
-  ;}
+    yyval.InstVal = new MallocInst(*yyvsp[-4].TypeVal, tmpVal, yyvsp[0].UIntVal);
+    delete yyvsp[-4].TypeVal;
+  }
     break;
 
   case 291:
-#line 2990 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2990 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-1].TypeVal))->getDescription());
-    (yyval.InstVal) = new AllocaInst(*(yyvsp[-1].TypeVal), 0, (yyvsp[0].UIntVal));
-    delete (yyvsp[-1].TypeVal);
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-1].TypeVal)->getDescription());
+    yyval.InstVal = new AllocaInst(*yyvsp[-1].TypeVal, 0, yyvsp[0].UIntVal);
+    delete yyvsp[-1].TypeVal;
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 292:
-#line 2997 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 2997 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-4].TypeVal))->getDescription());
-    Value* tmpVal = getVal((yyvsp[-2].PrimType), (yyvsp[-1].ValIDVal));
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-4].TypeVal)->getDescription());
+    Value* tmpVal = getVal(yyvsp[-2].PrimType, yyvsp[-1].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.InstVal) = new AllocaInst(*(yyvsp[-4].TypeVal), tmpVal, (yyvsp[0].UIntVal));
-    delete (yyvsp[-4].TypeVal);
-  ;}
+    yyval.InstVal = new AllocaInst(*yyvsp[-4].TypeVal, tmpVal, yyvsp[0].UIntVal);
+    delete yyvsp[-4].TypeVal;
+  }
     break;
 
   case 293:
-#line 3005 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 3005 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
-    if (!isa<PointerType>((yyvsp[0].ValueVal)->getType()))
+    if (!isa<PointerType>(yyvsp[0].ValueVal->getType()))
       GEN_ERROR("Trying to free nonpointer type " + 
-                     (yyvsp[0].ValueVal)->getType()->getDescription() + "");
-    (yyval.InstVal) = new FreeInst((yyvsp[0].ValueVal));
+                     yyvsp[0].ValueVal->getType()->getDescription() + "");
+    yyval.InstVal = new FreeInst(yyvsp[0].ValueVal);
     CHECK_FOR_ERROR
-  ;}
+  }
     break;
 
   case 294:
-#line 3013 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 3013 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
-    if (!isa<PointerType>((yyvsp[-2].TypeVal)->get()))
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
+    if (!isa<PointerType>(yyvsp[-2].TypeVal->get()))
       GEN_ERROR("Can't load from nonpointer type: " +
-                     (*(yyvsp[-2].TypeVal))->getDescription());
-    if (!cast<PointerType>((yyvsp[-2].TypeVal)->get())->getElementType()->isFirstClassType())
+                     (*yyvsp[-2].TypeVal)->getDescription());
+    if (!cast<PointerType>(yyvsp[-2].TypeVal->get())->getElementType()->isFirstClassType())
       GEN_ERROR("Can't load from pointer of non-first-class type: " +
-                     (*(yyvsp[-2].TypeVal))->getDescription());
-    Value* tmpVal = getVal(*(yyvsp[-2].TypeVal), (yyvsp[-1].ValIDVal));
+                     (*yyvsp[-2].TypeVal)->getDescription());
+    Value* tmpVal = getVal(*yyvsp[-2].TypeVal, yyvsp[-1].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.InstVal) = new LoadInst(tmpVal, "", (yyvsp[-4].BoolVal), (yyvsp[0].UIntVal));
-    delete (yyvsp[-2].TypeVal);
-  ;}
+    yyval.InstVal = new LoadInst(tmpVal, "", yyvsp[-4].BoolVal, yyvsp[0].UIntVal);
+    delete yyvsp[-2].TypeVal;
+  }
     break;
 
   case 295:
-#line 3027 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 3027 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
-    const PointerType *PT = dyn_cast<PointerType>((yyvsp[-2].TypeVal)->get());
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
+    const PointerType *PT = dyn_cast<PointerType>(yyvsp[-2].TypeVal->get());
     if (!PT)
       GEN_ERROR("Can't store to a nonpointer type: " +
-                     (*(yyvsp[-2].TypeVal))->getDescription());
+                     (*yyvsp[-2].TypeVal)->getDescription());
     const Type *ElTy = PT->getElementType();
-    if (ElTy != (yyvsp[-4].ValueVal)->getType())
-      GEN_ERROR("Can't store '" + (yyvsp[-4].ValueVal)->getType()->getDescription() +
+    if (ElTy != yyvsp[-4].ValueVal->getType())
+      GEN_ERROR("Can't store '" + yyvsp[-4].ValueVal->getType()->getDescription() +
                      "' into space of type '" + ElTy->getDescription() + "'");
 
-    Value* tmpVal = getVal(*(yyvsp[-2].TypeVal), (yyvsp[-1].ValIDVal));
+    Value* tmpVal = getVal(*yyvsp[-2].TypeVal, yyvsp[-1].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.InstVal) = new StoreInst((yyvsp[-4].ValueVal), tmpVal, (yyvsp[-6].BoolVal), (yyvsp[0].UIntVal));
-    delete (yyvsp[-2].TypeVal);
-  ;}
+    yyval.InstVal = new StoreInst(yyvsp[-4].ValueVal, tmpVal, yyvsp[-6].BoolVal, yyvsp[0].UIntVal);
+    delete yyvsp[-2].TypeVal;
+  }
     break;
 
   case 296:
-#line 3044 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 3044 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
     {
     if (!UpRefs.empty())
-      GEN_ERROR("Invalid upreference in type: " + (*(yyvsp[-2].TypeVal))->getDescription());
-    if (!isa<PointerType>((yyvsp[-2].TypeVal)->get()))
+      GEN_ERROR("Invalid upreference in type: " + (*yyvsp[-2].TypeVal)->getDescription());
+    if (!isa<PointerType>(yyvsp[-2].TypeVal->get()))
       GEN_ERROR("getelementptr insn requires pointer operand");
 
-    if (!GetElementPtrInst::getIndexedType(*(yyvsp[-2].TypeVal), &(*(yyvsp[0].ValueList))[0], (yyvsp[0].ValueList)->size(), true))
+    if (!GetElementPtrInst::getIndexedType(*yyvsp[-2].TypeVal, &(*yyvsp[0].ValueList)[0], yyvsp[0].ValueList->size(), true))
       GEN_ERROR("Invalid getelementptr indices for type '" +
-                     (*(yyvsp[-2].TypeVal))->getDescription()+ "'");
-    Value* tmpVal = getVal(*(yyvsp[-2].TypeVal), (yyvsp[-1].ValIDVal));
+                     (*yyvsp[-2].TypeVal)->getDescription()+ "'");
+    Value* tmpVal = getVal(*yyvsp[-2].TypeVal, yyvsp[-1].ValIDVal);
     CHECK_FOR_ERROR
-    (yyval.InstVal) = new GetElementPtrInst(tmpVal, &(*(yyvsp[0].ValueList))[0], (yyvsp[0].ValueList)->size());
-    delete (yyvsp[-2].TypeVal)
-    delete (yyvsp[0].ValueList);
-  ;}
+    yyval.InstVal = new GetElementPtrInst(tmpVal, &(*yyvsp[0].ValueList)[0], yyvsp[0].ValueList->size());
+    delete yyvsp[-2].TypeVal
+    delete yyvsp[0].ValueList;
+  }
     break;
 
 
-      default: break;
     }
 
-/* Line 1126 of yacc.c.  */
-#line 5863 "llvmAsmParser.tab.c"
+/* Line 1016 of /usr/local/share/bison/yacc.c.  */
+#line 5688 "llvmAsmParser.tab.c"
 \f
   yyvsp -= yylen;
   yyssp -= yylen;
 
 
-  YY_STACK_PRINT (yyss, yyssp);
+#if YYDEBUG
+  if (yydebug)
+    {
+      short *yyssp1 = yyss - 1;
+      YYFPRINTF (stderr, "state stack now");
+      while (yyssp1 != yyssp)
+       YYFPRINTF (stderr, " %d", *++yyssp1);
+      YYFPRINTF (stderr, "\n");
+    }
+#endif
 
   *++yyvsp = yyval;
 
@@ -5898,153 +5732,90 @@ yyerrlab:
 
       if (YYPACT_NINF < yyn && yyn < YYLAST)
        {
+         YYSIZE_T yysize = 0;
          int yytype = YYTRANSLATE (yychar);
-         YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
-         YYSIZE_T yysize = yysize0;
-         YYSIZE_T yysize1;
-         int yysize_overflow = 0;
-         char *yymsg = 0;
-#        define YYERROR_VERBOSE_ARGS_MAXIMUM 5
-         char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
-         int yyx;
-
-#if 0
-         /* This is so xgettext sees the translatable formats that are
-            constructed on the fly.  */
-         YY_("syntax error, unexpected %s");
-         YY_("syntax error, unexpected %s, expecting %s");
-         YY_("syntax error, unexpected %s, expecting %s or %s");
-         YY_("syntax error, unexpected %s, expecting %s or %s or %s");
-         YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
-#endif
-         char *yyfmt;
-         char const *yyf;
-         static char const yyunexpected[] = "syntax error, unexpected %s";
-         static char const yyexpecting[] = ", expecting %s";
-         static char const yyor[] = " or %s";
-         char yyformat[sizeof yyunexpected
-                       + sizeof yyexpecting - 1
-                       + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
-                          * (sizeof yyor - 1))];
-         char const *yyprefix = yyexpecting;
+         char *yymsg;
+         int yyx, yycount;
 
+         yycount = 0;
          /* Start YYX at -YYN if negative to avoid negative indexes in
             YYCHECK.  */
-         int yyxbegin = yyn < 0 ? -yyn : 0;
-
-         /* Stay within bounds of both yycheck and yytname.  */
-         int yychecklim = YYLAST - yyn;
-         int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
-         int yycount = 1;
-
-         yyarg[0] = yytname[yytype];
-         yyfmt = yystpcpy (yyformat, yyunexpected);
-
-         for (yyx = yyxbegin; yyx < yyxend; ++yyx)
+         for (yyx = yyn < 0 ? -yyn : 0;
+              yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++)
            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
-             {
-               if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
-                 {
-                   yycount = 1;
-                   yysize = yysize0;
-                   yyformat[sizeof yyunexpected - 1] = '\0';
-                   break;
-                 }
-               yyarg[yycount++] = yytname[yyx];
-               yysize1 = yysize + yytnamerr (0, yytname[yyx]);
-               yysize_overflow |= yysize1 < yysize;
-               yysize = yysize1;
-               yyfmt = yystpcpy (yyfmt, yyprefix);
-               yyprefix = yyor;
-             }
-
-         yyf = YY_(yyformat);
-         yysize1 = yysize + yystrlen (yyf);
-         yysize_overflow |= yysize1 < yysize;
-         yysize = yysize1;
-
-         if (!yysize_overflow && yysize <= YYSTACK_ALLOC_MAXIMUM)
-           yymsg = (char *) YYSTACK_ALLOC (yysize);
-         if (yymsg)
+             yysize += yystrlen (yytname[yyx]) + 15, yycount++;
+         yysize += yystrlen ("parse error, unexpected ") + 1;
+         yysize += yystrlen (yytname[yytype]);
+         yymsg = (char *) YYSTACK_ALLOC (yysize);
+         if (yymsg != 0)
            {
-             /* Avoid sprintf, as that infringes on the user's name space.
-                Don't have undefined behavior even if the translation
-                produced a string with the wrong number of "%s"s.  */
-             char *yyp = yymsg;
-             int yyi = 0;
-             while ((*yyp = *yyf))
+             char *yyp = yystpcpy (yymsg, "parse error, unexpected ");
+             yyp = yystpcpy (yyp, yytname[yytype]);
+
+             if (yycount < 5)
                {
-                 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
-                   {
-                     yyp += yytnamerr (yyp, yyarg[yyi++]);
-                     yyf += 2;
-                   }
-                 else
-                   {
-                     yyp++;
-                     yyf++;
-                   }
+                 yycount = 0;
+                 for (yyx = yyn < 0 ? -yyn : 0;
+                      yyx < (int) (sizeof (yytname) / sizeof (char *));
+                      yyx++)
+                   if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
+                     {
+                       const char *yyq = ! yycount ? ", expecting " : " or ";
+                       yyp = yystpcpy (yyp, yyq);
+                       yyp = yystpcpy (yyp, yytname[yyx]);
+                       yycount++;
+                     }
                }
              yyerror (yymsg);
              YYSTACK_FREE (yymsg);
            }
          else
-           {
-             yyerror (YY_("syntax error"));
-             goto yyexhaustedlab;
-           }
+           yyerror ("parse error; also virtual memory exhausted");
        }
       else
 #endif /* YYERROR_VERBOSE */
-       yyerror (YY_("syntax error"));
+       yyerror ("parse error");
     }
+  goto yyerrlab1;
 
 
-
+/*----------------------------------------------------.
+| yyerrlab1 -- error raised explicitly by an action.  |
+`----------------------------------------------------*/
+yyerrlab1:
   if (yyerrstatus == 3)
     {
-      /* If just tried and failed to reuse look-ahead token after an
+      /* If just tried and failed to reuse lookahead token after an
         error, discard it.  */
 
-      if (yychar <= YYEOF)
+      /* Return failure if at end of input.  */
+      if (yychar == YYEOF)
         {
-         /* Return failure if at end of input.  */
-         if (yychar == YYEOF)
-           YYABORT;
+         /* Pop the error token.  */
+          YYPOPSTACK;
+         /* Pop the rest of the stack.  */
+         while (yyssp > yyss)
+           {
+             YYDPRINTF ((stderr, "Error: popping "));
+             YYDSYMPRINT ((stderr,
+                           yystos[*yyssp],
+                           *yyvsp));
+             YYDPRINTF ((stderr, "\n"));
+             yydestruct (yystos[*yyssp], *yyvsp);
+             YYPOPSTACK;
+           }
+         YYABORT;
         }
-      else
-       {
-         yydestruct ("Error: discarding", yytoken, &yylval);
-         yychar = YYEMPTY;
-       }
+
+      YYDPRINTF ((stderr, "Discarding token %d (%s).\n",
+                 yychar, yytname[yychar1]));
+      yydestruct (yychar1, yylval);
+      yychar = YYEMPTY;
     }
 
-  /* Else will try to reuse look-ahead token after shifting the error
+  /* Else will try to reuse lookahead token after shifting the error
      token.  */
-  goto yyerrlab1;
-
-
-/*---------------------------------------------------.
-| yyerrorlab -- error raised explicitly by YYERROR.  |
-`---------------------------------------------------*/
-yyerrorlab:
-
-  /* Pacify compilers like GCC when the user code never invokes
-     YYERROR and the label yyerrorlab therefore never appears in user
-     code.  */
-  if (0)
-     goto yyerrorlab;
-
-yyvsp -= yylen;
-  yyssp -= yylen;
-  yystate = *yyssp;
-  goto yyerrlab1;
 
-
-/*-------------------------------------------------------------.
-| yyerrlab1 -- common code for both syntax error and YYERROR.  |
-`-------------------------------------------------------------*/
-yyerrlab1:
   yyerrstatus = 3;     /* Each real token shifted decrements this.  */
 
   for (;;)
@@ -6065,21 +5836,35 @@ yyerrlab1:
       if (yyssp == yyss)
        YYABORT;
 
+      YYDPRINTF ((stderr, "Error: popping "));
+      YYDSYMPRINT ((stderr,
+                   yystos[*yyssp], *yyvsp));
+      YYDPRINTF ((stderr, "\n"));
+
+      yydestruct (yystos[yystate], *yyvsp);
+      yyvsp--;
+      yystate = *--yyssp;
 
-      yydestruct ("Error: popping", yystos[yystate], yyvsp);
-      YYPOPSTACK;
-      yystate = *yyssp;
-      YY_STACK_PRINT (yyss, yyssp);
+
+#if YYDEBUG
+      if (yydebug)
+       {
+         short *yyssp1 = yyss - 1;
+         YYFPRINTF (stderr, "Error: state stack now");
+         while (yyssp1 != yyssp)
+           YYFPRINTF (stderr, " %d", *++yyssp1);
+         YYFPRINTF (stderr, "\n");
+       }
+#endif
     }
 
   if (yyn == YYFINAL)
     YYACCEPT;
 
-  *++yyvsp = yylval;
+  YYDPRINTF ((stderr, "Shifting error token, "));
 
+  *++yyvsp = yylval;
 
-  /* Shift the error token. */
-  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
 
   yystate = yyn;
   goto yynewstate;
@@ -6100,25 +5885,16 @@ yyabortlab:
   goto yyreturn;
 
 #ifndef yyoverflow
-/*-------------------------------------------------.
-| yyexhaustedlab -- memory exhaustion comes here.  |
-`-------------------------------------------------*/
-yyexhaustedlab:
-  yyerror (YY_("memory exhausted"));
+/*----------------------------------------------.
+| yyoverflowlab -- parser overflow comes here.  |
+`----------------------------------------------*/
+yyoverflowlab:
+  yyerror ("parser stack overflow");
   yyresult = 2;
   /* Fall through.  */
 #endif
 
 yyreturn:
-  if (yychar != YYEOF && yychar != YYEMPTY)
-     yydestruct ("Cleanup: discarding lookahead",
-                yytoken, &yylval);
-  while (yyssp != yyss)
-    {
-      yydestruct ("Cleanup: popping",
-                 yystos[*yyssp], yyvsp);
-      YYPOPSTACK;
-    }
 #ifndef yyoverflow
   if (yyss != yyssa)
     YYSTACK_FREE (yyss);
@@ -6127,7 +5903,7 @@ yyreturn:
 }
 
 
-#line 3061 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
+#line 3061 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
 
 
 // common code from the two 'RunVMAsmParser' functions
index 1346dec4adbc8a28f10a5224800a717caa490037..bd861e5ca6c4780e9938672d8df6e2053ef007b2 100644 (file)
@@ -1,7 +1,7 @@
-/* A Bison parser, made by GNU Bison 2.1.  */
+/* A Bison parser, made from /usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y, by GNU bison 1.75.  */
 
 /* Skeleton parser for Yacc-like parsing with Bison,
-   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
 
 /* As a special exception, when this file is copied by Bison into a
    Bison output file, you may use that output file without restriction.
    This special exception was added by the Free Software Foundation
    in version 1.24 of Bison.  */
 
+#ifndef BISON_LLVMASMPARSER_TAB_H
+# define BISON_LLVMASMPARSER_TAB_H
+
 /* Tokens.  */
 #ifndef YYTOKENTYPE
 # define YYTOKENTYPE
      HIDDEN = 390
    };
 #endif
-/* Tokens.  */
 #define ESINT64VAL 258
 #define EUINT64VAL 259
 #define ESAPINTVAL 260
 
 
 
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 955 "/proj/llvm/llvm-2/lib/AsmParser/llvmAsmParser.y"
-typedef union YYSTYPE {
+#ifndef YYSTYPE
+#line 955 "/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y"
+typedef union {
   llvm::Module                           *ModuleVal;
   llvm::Function                         *FunctionVal;
   llvm::BasicBlock                       *BasicBlockVal;
@@ -349,15 +351,14 @@ typedef union YYSTYPE {
   llvm::Instruction::OtherOps       OtherOpVal;
   llvm::ICmpInst::Predicate         IPredicate;
   llvm::FCmpInst::Predicate         FPredicate;
-} YYSTYPE;
-/* Line 1447 of yacc.c.  */
-#line 355 "llvmAsmParser.tab.h"
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
-# define YYSTYPE_IS_TRIVIAL 1
+} yystype;
+/* Line 1237 of /usr/local/share/bison/yacc.c.  */
+#line 357 "llvmAsmParser.tab.h"
+# define YYSTYPE yystype
 #endif
 
 extern YYSTYPE llvmAsmlval;
 
 
+#endif /* not BISON_LLVMASMPARSER_TAB_H */
 
index 3c1ee90629550f27be7a8d28636d6cc7ba47eff4..96035354e52ba57c295a1d01dd79b0e71972487c 100644 (file)
@@ -159,7 +159,7 @@ MemoryBufferMMapFile::~MemoryBufferMMapFile() {
 
 MemoryBuffer *MemoryBuffer::getFile(const char *FilenameStart, unsigned FnSize,
                                     int64_t FileSize) {
-  sys::PathWithStatus P(std::string(FilenameStart, FnSize));
+  sys::PathWithStatus P(FilenameStart, FnSize);
 #if 1
   return new MemoryBufferMMapFile(P);
 #else