diff options
Diffstat (limited to 'lib')
36 files changed, 1682 insertions, 1524 deletions
diff --git a/lib/Analysis/BasicAliasAnalysis.cpp b/lib/Analysis/BasicAliasAnalysis.cpp index caabc86f3f..179f069716 100644 --- a/lib/Analysis/BasicAliasAnalysis.cpp +++ b/lib/Analysis/BasicAliasAnalysis.cpp @@ -434,7 +434,8 @@ BasicAliasAnalysis::alias(const Value *V1, unsigned V1Size, if (cast<PointerType>( BasePtr->getType())->getElementType()->isSized()) { for (unsigned i = 0; i != GEPOperands.size(); ++i) - if (!isa<ConstantInt>(GEPOperands[i])) + if (!isa<ConstantInt>(GEPOperands[i]) || + GEPOperands[i]->getType() == Type::BoolTy) GEPOperands[i] = Constant::getNullValue(GEPOperands[i]->getType()); int64_t Offset = @@ -584,8 +585,8 @@ BasicAliasAnalysis::CheckGEPInstructions( if (G1OC) { Constant *Compare = ConstantExpr::getICmp(ICmpInst::ICMP_SGT, G1OC, G2OC); - if (ConstantBool *CV = dyn_cast<ConstantBool>(Compare)) { - if (CV->getValue()) // If they are comparable and G2 > G1 + if (ConstantInt *CV = dyn_cast<ConstantInt>(Compare)) { + if (CV->getBoolValue()) // If they are comparable and G2 > G1 std::swap(GEP1Ops, GEP2Ops); // Make GEP1 < GEP2 break; } @@ -608,13 +609,15 @@ BasicAliasAnalysis::CheckGEPInstructions( // Is there anything to check? if (GEP1Ops.size() > MinOperands) { for (unsigned i = FirstConstantOper; i != MaxOperands; ++i) - if (isa<ConstantInt>(GEP1Ops[i]) && + if (isa<ConstantInt>(GEP1Ops[i]) && + GEP1Ops[i]->getType() != Type::BoolTy && !cast<Constant>(GEP1Ops[i])->isNullValue()) { // Yup, there's a constant in the tail. Set all variables to // constants in the GEP instruction to make it suiteable for // TargetData::getIndexedOffset. for (i = 0; i != MaxOperands; ++i) - if (!isa<ConstantInt>(GEP1Ops[i])) + if (!isa<ConstantInt>(GEP1Ops[i]) || + GEP1Ops[i]->getType() == Type::BoolTy) GEP1Ops[i] = Constant::getNullValue(GEP1Ops[i]->getType()); // Okay, now get the offset. This is the relative offset for the full // instruction. @@ -667,7 +670,7 @@ BasicAliasAnalysis::CheckGEPInstructions( const Value *Op2 = i < GEP2Ops.size() ? GEP2Ops[i] : 0; // If they are equal, use a zero index... if (Op1 == Op2 && BasePtr1Ty == BasePtr2Ty) { - if (!isa<ConstantInt>(Op1)) + if (!isa<ConstantInt>(Op1) || Op1->getType() == Type::BoolTy) GEP1Ops[i] = GEP2Ops[i] = Constant::getNullValue(Op1->getType()); // Otherwise, just keep the constants we have. } else { diff --git a/lib/Analysis/ConstantRange.cpp b/lib/Analysis/ConstantRange.cpp index a8ffa5813e..1d49e22472 100644 --- a/lib/Analysis/ConstantRange.cpp +++ b/lib/Analysis/ConstantRange.cpp @@ -30,9 +30,9 @@ #include <ostream> using namespace llvm; -static ConstantIntegral *getMaxValue(const Type *Ty, bool isSigned = false) { +static ConstantInt *getMaxValue(const Type *Ty, bool isSigned = false) { if (Ty == Type::BoolTy) - return ConstantBool::getTrue(); + return ConstantInt::getTrue(); if (Ty->isInteger()) { if (isSigned) { // Calculate 011111111111111... @@ -47,9 +47,9 @@ static ConstantIntegral *getMaxValue(const Type *Ty, bool isSigned = false) { } // Static constructor to create the minimum constant for an integral type... -static ConstantIntegral *getMinValue(const Type *Ty, bool isSigned = false) { +static ConstantInt *getMinValue(const Type *Ty, bool isSigned = false) { if (Ty == Type::BoolTy) - return ConstantBool::getFalse(); + return ConstantInt::getFalse(); if (Ty->isInteger()) { if (isSigned) { // Calculate 1111111111000000000000 @@ -62,37 +62,37 @@ static ConstantIntegral *getMinValue(const Type *Ty, bool isSigned = false) { } return 0; } -static ConstantIntegral *Next(ConstantIntegral *CI) { - if (ConstantBool *CB = dyn_cast<ConstantBool>(CI)) - return ConstantBool::get(!CB->getValue()); +static ConstantInt *Next(ConstantInt *CI) { + if (CI->getType() == Type::BoolTy) + return ConstantInt::get(!CI->getBoolValue()); Constant *Result = ConstantExpr::getAdd(CI, ConstantInt::get(CI->getType(), 1)); - return cast<ConstantIntegral>(Result); + return cast<ConstantInt>(Result); } -static bool LT(ConstantIntegral *A, ConstantIntegral *B, bool isSigned) { +static bool LT(ConstantInt *A, ConstantInt *B, bool isSigned) { Constant *C = ConstantExpr::getICmp( (isSigned ? ICmpInst::ICMP_SLT : ICmpInst::ICMP_ULT), A, B); - assert(isa<ConstantBool>(C) && "Constant folding of integrals not impl??"); - return cast<ConstantBool>(C)->getValue(); + assert(isa<ConstantInt>(C) && "Constant folding of integrals not impl??"); + return cast<ConstantInt>(C)->getBoolValue(); } -static bool LTE(ConstantIntegral *A, ConstantIntegral *B, bool isSigned) { +static bool LTE(ConstantInt *A, ConstantInt *B, bool isSigned) { Constant *C = ConstantExpr::getICmp( (isSigned ? ICmpInst::ICMP_SLE : ICmpInst::ICMP_ULE), A, B); - assert(isa<ConstantBool>(C) && "Constant folding of integrals not impl??"); - return cast<ConstantBool>(C)->getValue(); + assert(isa<ConstantInt>(C) && "Constant folding of integrals not impl??"); + return cast<ConstantInt>(C)->getBoolValue(); } -static bool GT(ConstantIntegral *A, ConstantIntegral *B, bool isSigned) { +static bool GT(ConstantInt *A, ConstantInt *B, bool isSigned) { return LT(B, A, isSigned); } -static ConstantIntegral *Min(ConstantIntegral *A, ConstantIntegral *B, +static ConstantInt *Min(ConstantInt *A, ConstantInt *B, bool isSigned) { return LT(A, B, isSigned) ? A : B; } -static ConstantIntegral *Max(ConstantIntegral *A, ConstantIntegral *B, +static ConstantInt *Max(ConstantInt *A, ConstantInt *B, bool isSigned) { return GT(A, B, isSigned) ? A : B; } @@ -111,14 +111,14 @@ ConstantRange::ConstantRange(const Type *Ty, bool Full) { /// Initialize a range to hold the single specified value. /// ConstantRange::ConstantRange(Constant *V) - : Lower(cast<ConstantIntegral>(V)), Upper(Next(cast<ConstantIntegral>(V))) { } + : Lower(cast<ConstantInt>(V)), Upper(Next(cast<ConstantInt>(V))) { } /// Initialize a range of values explicitly... this will assert out if /// Lower==Upper and Lower != Min or Max for its type (or if the two constants /// have different types) /// ConstantRange::ConstantRange(Constant *L, Constant *U) - : Lower(cast<ConstantIntegral>(L)), Upper(cast<ConstantIntegral>(U)) { + : Lower(cast<ConstantInt>(L)), Upper(cast<ConstantInt>(U)) { assert(Lower->getType() == Upper->getType() && "Incompatible types for ConstantRange!"); @@ -130,7 +130,7 @@ ConstantRange::ConstantRange(Constant *L, Constant *U) /// Initialize a set of values that all satisfy the condition with C. /// -ConstantRange::ConstantRange(unsigned short ICmpOpcode, ConstantIntegral *C) { +ConstantRange::ConstantRange(unsigned short ICmpOpcode, ConstantInt *C) { switch (ICmpOpcode) { default: assert(0 && "Invalid ICmp opcode to ConstantRange ctor!"); case ICmpInst::ICMP_EQ: Lower = C; Upper = Next(C); return; @@ -195,7 +195,7 @@ bool ConstantRange::isWrappedSet(bool isSigned) const { /// getSingleElement - If this set contains a single element, return it, /// otherwise return null. -ConstantIntegral *ConstantRange::getSingleElement() const { +ConstantInt *ConstantRange::getSingleElement() const { if (Upper == Next(Lower)) // Is it a single element range? return Lower; return 0; @@ -292,8 +292,8 @@ ConstantRange ConstantRange::intersectWith(const ConstantRange &CR, if (!isWrappedSet(isSigned)) { if (!CR.isWrappedSet(isSigned)) { - ConstantIntegral *L = Max(Lower, CR.Lower, isSigned); - ConstantIntegral *U = Min(Upper, CR.Upper, isSigned); + ConstantInt *L = Max(Lower, CR.Lower, isSigned); + ConstantInt *U = Min(Upper, CR.Upper, isSigned); if (LT(L, U, isSigned)) // If range isn't empty... return ConstantRange(L, U); @@ -306,8 +306,8 @@ ConstantRange ConstantRange::intersectWith(const ConstantRange &CR, return intersect1Wrapped(*this, CR, isSigned); else { // Both ranges are wrapped... - ConstantIntegral *L = Max(Lower, CR.Lower, isSigned); - ConstantIntegral *U = Min(Upper, CR.Upper, isSigned); + ConstantInt *L = Max(Lower, CR.Lower, isSigned); + ConstantInt *U = Min(Upper, CR.Upper, isSigned); return ConstantRange(L, U); } } diff --git a/lib/Analysis/ScalarEvolution.cpp b/lib/Analysis/ScalarEvolution.cpp index 55036a45c5..9fcbf8c75e 100644 --- a/lib/Analysis/ScalarEvolution.cpp +++ b/lib/Analysis/ScalarEvolution.cpp @@ -1721,8 +1721,8 @@ ComputeLoadConstantCompareIterationCount(LoadInst *LI, Constant *RHS, // Evaluate the condition for this iteration. Result = ConstantExpr::getICmp(predicate, Result, RHS); - if (!isa<ConstantBool>(Result)) break; // Couldn't decide for sure - if (cast<ConstantBool>(Result)->getValue() == false) { + if (!isa<ConstantInt>(Result)) break; // Couldn't decide for sure + if (cast<ConstantInt>(Result)->getBoolValue() == false) { #if 0 cerr << "\n***\n*** Computed loop count " << *ItCst << "\n*** From global " << *GV << "*** BB: " << *L->getHeader() @@ -1926,11 +1926,13 @@ ComputeIterationCountExhaustively(const Loop *L, Value *Cond, bool ExitWhen) { unsigned MaxIterations = MaxBruteForceIterations; // Limit analysis. for (Constant *PHIVal = StartCST; IterationNum != MaxIterations; ++IterationNum) { - ConstantBool *CondVal = - dyn_cast_or_null<ConstantBool>(EvaluateExpression(Cond, PHIVal)); - if (!CondVal) return UnknownValue; // Couldn't symbolically evaluate. + ConstantInt *CondVal = + dyn_cast_or_null<ConstantInt>(EvaluateExpression(Cond, PHIVal)); - if (CondVal->getValue() == ExitWhen) { + // Couldn't symbolically evaluate. + if (!CondVal || CondVal->getType() != Type::BoolTy) return UnknownValue; + + if (CondVal->getBoolValue() == ExitWhen) { ConstantEvolutionLoopExitValue[PN] = PHIVal; ++NumBruteForceTripCountsComputed; return SCEVConstant::get(ConstantInt::get(Type::Int32Ty, IterationNum)); @@ -2199,10 +2201,10 @@ SCEVHandle ScalarEvolutionsImpl::HowFarToZero(SCEV *V, const Loop *L) { << " sol#2: " << *R2 << "\n"; #endif // Pick the smallest positive root value. - if (ConstantBool *CB = - dyn_cast<ConstantBool>(ConstantExpr::getICmp(ICmpInst::ICMP_ULT, + if (ConstantInt *CB = + dyn_cast<ConstantInt>(ConstantExpr::getICmp(ICmpInst::ICMP_ULT, R1->getValue(), R2->getValue()))) { - if (CB->getValue() == false) + if (CB->getBoolValue() == false) std::swap(R1, R2); // R1 is the minimum root now. // We can only use this value if the chrec ends up with an exact zero @@ -2233,7 +2235,7 @@ SCEVHandle ScalarEvolutionsImpl::HowFarToNonZero(SCEV *V, const Loop *L) { Constant *Zero = Constant::getNullValue(C->getValue()->getType()); Constant *NonZero = ConstantExpr::getICmp(ICmpInst::ICMP_NE, C->getValue(), Zero); - if (NonZero == ConstantBool::getTrue()) + if (NonZero == ConstantInt::getTrue()) return getSCEV(Zero); return UnknownValue; // Otherwise it will loop infinitely. } @@ -2424,10 +2426,10 @@ SCEVHandle SCEVAddRecExpr::getNumIterationsInRange(ConstantRange Range, SCEVConstant *R2 = dyn_cast<SCEVConstant>(Roots.second); if (R1) { // Pick the smallest positive root value. - if (ConstantBool *CB = - dyn_cast<ConstantBool>(ConstantExpr::getICmp(ICmpInst::ICMP_ULT, + if (ConstantInt *CB = + dyn_cast<ConstantInt>(ConstantExpr::getICmp(ICmpInst::ICMP_ULT, R1->getValue(), R2->getValue()))) { - if (CB->getValue() == false) + if (CB->getBoolValue() == false) std::swap(R1, R2); // R1 is the minimum root now. // Make sure the root is not off by one. The returned iteration should diff --git a/lib/Analysis/ScalarEvolutionExpander.cpp b/lib/Analysis/ScalarEvolutionExpander.cpp index 5e395db5e2..6bc113e0bc 100644 --- a/lib/Analysis/ScalarEvolutionExpander.cpp +++ b/lib/Analysis/ScalarEvolutionExpander.cpp @@ -143,7 +143,7 @@ Value *SCEVExpander::visitAddRecExpr(SCEVAddRecExpr *S) { Value *F = expandInTy(S->getOperand(1), Ty); // IF the step is by one, just return the inserted IV. - if (ConstantIntegral *CI = dyn_cast<ConstantIntegral>(F)) + if (ConstantInt *CI = dyn_cast<ConstantInt>(F)) if (CI->getZExtValue() == 1) return I; diff --git a/lib/AsmParser/ParserInternals.h b/lib/AsmParser/ParserInternals.h index faeed1caf9..613e8ce39c 100644 --- a/lib/AsmParser/ParserInternals.h +++ b/lib/AsmParser/ParserInternals.h @@ -172,8 +172,8 @@ struct ValID { case ConstUIntVal : case ConstSIntVal : return std::string("%") + itostr(ConstPool64); case ConstantVal: - if (ConstantValue == ConstantBool::getTrue()) return "true"; - if (ConstantValue == ConstantBool::getFalse()) return "false"; + if (ConstantValue == ConstantInt::getTrue()) return "true"; + if (ConstantValue == ConstantInt::getFalse()) return "false"; return "<constant expression>"; default: assert(0 && "Unknown value!"); diff --git a/lib/AsmParser/llvmAsmParser.cpp.cvs b/lib/AsmParser/llvmAsmParser.cpp.cvs index ebbffeb7ab..d1382fc5c8 100644 --- a/lib/AsmParser/llvmAsmParser.cpp.cvs +++ b/lib/AsmParser/llvmAsmParser.cpp.cvs @@ -338,7 +338,7 @@ /* Copy the first part of user declarations. */ -#line 14 "/proj/llvm/llvm-3/lib/AsmParser/llvmAsmParser.y" +#line 14 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/lib/AsmParser/llvmAsmParser.y" #include "ParserInternals.h" #include "llvm/CallingConv.h" @@ -1220,7 +1220,7 @@ Module *llvm::RunVMAsmParser(const char * AsmString, Module * M) { #endif #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) -#line 876 "/proj/llvm/llvm-3/lib/AsmParser/llvmAsmParser.y" +#line 876 "/developer/zsth/llvm-gcc-dev/HEAD/llvm/llvm/lib/AsmParser/llvmAsmParser.y" typedef union YYSTYPE { llvm::Module *ModuleVal; llvm::Function *FunctionVal; @@ -1430,16 +1430,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 37 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1405 +#define YYLAST 1584 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 150 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 78 /* YYNRULES -- Number of rules. */ -#define YYNRULES 289 +#define YYNRULES 291 /* YYNRULES -- Number of states. */ -#define YYNSTATES 569 +#define YYNSTATES 576 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -1512,21 +1512,22 @@ static const unsigned short int yyprhs[] = 220, 222, 224, 226, 228, 230, 232, 234, 236, 239, 241, 244, 250, 256, 262, 268, 272, 275, 281, 286, 289, 291, 293, 295, 299, 301, 305, 307, 308, 310, - 314, 319, 323, 327, 332, 337, 341, 344, 347, 350, - 353, 356, 359, 362, 365, 368, 371, 378, 384, 393, - 400, 407, 415, 423, 430, 437, 446, 455, 459, 461, - 463, 465, 467, 468, 470, 473, 474, 478, 479, 483, - 487, 489, 493, 497, 498, 504, 505, 512, 513, 520, - 523, 527, 529, 531, 533, 537, 541, 545, 549, 553, - 557, 559, 560, 562, 564, 566, 567, 573, 577, 579, - 583, 585, 586, 596, 598, 600, 604, 606, 608, 611, - 614, 615, 617, 619, 621, 623, 625, 627, 629, 631, - 633, 637, 639, 645, 647, 649, 651, 653, 656, 659, - 662, 666, 669, 670, 672, 675, 678, 682, 692, 702, - 711, 726, 728, 730, 737, 743, 746, 753, 761, 765, - 771, 772, 773, 777, 780, 782, 788, 794, 801, 808, - 811, 816, 821, 828, 833, 838, 845, 852, 855, 864, - 866, 868, 869, 873, 880, 884, 891, 894, 899, 906 + 314, 319, 323, 327, 332, 337, 341, 348, 354, 357, + 360, 363, 366, 369, 372, 375, 378, 381, 384, 391, + 397, 406, 413, 420, 428, 436, 443, 450, 459, 468, + 472, 474, 476, 478, 480, 481, 483, 486, 487, 491, + 492, 496, 500, 502, 506, 510, 511, 517, 518, 525, + 526, 533, 536, 540, 542, 544, 546, 550, 554, 558, + 562, 566, 570, 572, 573, 575, 577, 579, 580, 586, + 590, 592, 596, 598, 599, 609, 611, 613, 617, 619, + 621, 624, 627, 628, 630, 632, 634, 636, 638, 640, + 642, 644, 646, 650, 652, 658, 660, 662, 664, 666, + 669, 672, 675, 679, 682, 683, 685, 688, 691, 695, + 705, 715, 724, 739, 741, 743, 750, 756, 759, 766, + 774, 778, 784, 785, 786, 790, 793, 795, 801, 807, + 814, 821, 824, 829, 834, 841, 846, 851, 858, 865, + 868, 877, 879, 881, 882, 886, 893, 897, 904, 907, + 912, 919 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -1566,64 +1567,65 @@ static const short int yyrhs[] = 182, 137, 177, -1, 177, 142, 185, 144, -1, 177, 142, 144, -1, 177, 149, 20, -1, 177, 145, 185, 146, -1, 177, 147, 185, 148, -1, 177, 147, 148, - -1, 177, 35, -1, 177, 36, -1, 177, 212, -1, - 177, 184, -1, 177, 22, -1, 158, 3, -1, 158, - 4, -1, 9, 23, -1, 9, 24, -1, 159, 7, - -1, 154, 140, 183, 33, 177, 141, -1, 113, 140, - 183, 223, 141, -1, 127, 140, 183, 137, 183, 137, - 183, 141, -1, 152, 140, 183, 137, 183, 141, -1, - 153, 140, 183, 137, 183, 141, -1, 86, 156, 140, - 183, 137, 183, 141, -1, 87, 157, 140, 183, 137, - 183, 141, -1, 155, 140, 183, 137, 183, 141, -1, - 132, 140, 183, 137, 183, 141, -1, 133, 140, 183, - 137, 183, 137, 183, 141, -1, 134, 140, 183, 137, - 183, 137, 183, 141, -1, 185, 137, 183, -1, 183, - -1, 29, -1, 30, -1, 188, -1, -1, 189, -1, - 188, 189, -1, -1, 28, 190, 208, -1, -1, 27, - 191, 209, -1, 58, 57, 195, -1, 21, -1, 160, - 17, 177, -1, 160, 17, 8, -1, -1, 160, 186, - 183, 192, 174, -1, -1, 160, 161, 186, 183, 193, - 174, -1, -1, 160, 162, 186, 177, 194, 174, -1, - 47, 197, -1, 54, 136, 198, -1, 20, -1, 52, - -1, 51, -1, 49, 136, 196, -1, 50, 136, 4, - -1, 48, 136, 20, -1, 67, 136, 20, -1, 142, - 199, 144, -1, 199, 137, 20, -1, 20, -1, -1, - 18, -1, 20, -1, 200, -1, -1, 202, 137, 177, - 167, 201, -1, 177, 167, 201, -1, 202, -1, 202, - 137, 34, -1, 34, -1, -1, 165, 179, 200, 140, - 203, 141, 169, 173, 170, -1, 25, -1, 147, -1, - 164, 204, 205, -1, 26, -1, 148, -1, 215, 207, - -1, 163, 204, -1, -1, 59, -1, 3, -1, 4, - -1, 7, -1, 23, -1, 24, -1, 35, -1, 36, - -1, 22, -1, 145, 185, 146, -1, 184, -1, 57, - 210, 20, 137, 20, -1, 151, -1, 200, -1, 212, - -1, 211, -1, 177, 213, -1, 215, 216, -1, 206, - 216, -1, 217, 160, 218, -1, 217, 220, -1, -1, - 19, -1, 68, 214, -1, 68, 8, -1, 69, 16, - 213, -1, 69, 9, 213, 137, 16, 213, 137, 16, - 213, -1, 70, 158, 213, 137, 16, 213, 142, 219, - 144, -1, 70, 158, 213, 137, 16, 213, 142, 144, - -1, 71, 165, 179, 213, 140, 222, 141, 169, 33, - 16, 213, 72, 16, 213, -1, 72, -1, 73, -1, - 219, 158, 211, 137, 16, 213, -1, 158, 211, 137, - 16, 213, -1, 160, 225, -1, 177, 142, 213, 137, - 213, 144, -1, 221, 137, 142, 213, 137, 213, 144, - -1, 177, 213, 167, -1, 222, 137, 177, 213, 167, - -1, -1, -1, 223, 137, 214, -1, 56, 55, -1, - 55, -1, 152, 177, 213, 137, 213, -1, 153, 177, - 213, 137, 213, -1, 86, 156, 177, 213, 137, 213, - -1, 87, 157, 177, 213, 137, 213, -1, 45, 214, - -1, 155, 214, 137, 214, -1, 154, 214, 33, 177, - -1, 127, 214, 137, 214, 137, 214, -1, 131, 214, - 137, 177, -1, 132, 214, 137, 214, -1, 133, 214, - 137, 214, 137, 214, -1, 134, 214, 137, 214, 137, - 214, -1, 126, 221, -1, 224, 165, 179, 213, 140, - 222, 141, 169, -1, 227, -1, 32, -1, -1, 108, - 177, 171, -1, 108, 177, 137, 12, 213, 171, -1, - 109, 177, 171, -1, 109, 177, 137, 12, 213, 171, - -1, 110, 214, -1, 226, 111, 177, 213, -1, 226, - 112, 214, 137, 177, 213, -1, 113, 177, 213, 223, - -1 + -1, 177, 145, 147, 185, 148, 146, -1, 177, 145, + 147, 148, 146, -1, 177, 35, -1, 177, 36, -1, + 177, 212, -1, 177, 184, -1, 177, 22, -1, 158, + 3, -1, 158, 4, -1, 9, 23, -1, 9, 24, + -1, 159, 7, -1, 154, 140, 183, 33, 177, 141, + -1, 113, 140, 183, 223, 141, -1, 127, 140, 183, + 137, 183, 137, 183, 141, -1, 152, 140, 183, 137, + 183, 141, -1, 153, 140, 183, 137, 183, 141, -1, + 86, 156, 140, 183, 137, 183, 141, -1, 87, 157, + 140, 183, 137, 183, 141, -1, 155, 140, 183, 137, + 183, 141, -1, 132, 140, 183, 137, 183, 141, -1, + 133, 140, 183, 137, 183, 137, 183, 141, -1, 134, + 140, 183, 137, 183, 137, 183, 141, -1, 185, 137, + 183, -1, 183, -1, 29, -1, 30, -1, 188, -1, + -1, 189, -1, 188, 189, -1, -1, 28, 190, 208, + -1, -1, 27, 191, 209, -1, 58, 57, 195, -1, + 21, -1, 160, 17, 177, -1, 160, 17, 8, -1, + -1, 160, 186, 183, 192, 174, -1, -1, 160, 161, + 186, 183, 193, 174, -1, -1, 160, 162, 186, 177, + 194, 174, -1, 47, 197, -1, 54, 136, 198, -1, + 20, -1, 52, -1, 51, -1, 49, 136, 196, -1, + 50, 136, 4, -1, 48, 136, 20, -1, 67, 136, + 20, -1, 142, 199, 144, -1, 199, 137, 20, -1, + 20, -1, -1, 18, -1, 20, -1, 200, -1, -1, + 202, 137, 177, 167, 201, -1, 177, 167, 201, -1, + 202, -1, 202, 137, 34, -1, 34, -1, -1, 165, + 179, 200, 140, 203, 141, 169, 173, 170, -1, 25, + -1, 147, -1, 164, 204, 205, -1, 26, -1, 148, + -1, 215, 207, -1, 163, 204, -1, -1, 59, -1, + 3, -1, 4, -1, 7, -1, 23, -1, 24, -1, + 35, -1, 36, -1, 22, -1, 145, 185, 146, -1, + 184, -1, 57, 210, 20, 137, 20, -1, 151, -1, + 200, -1, 212, -1, 211, -1, 177, 213, -1, 215, + 216, -1, 206, 216, -1, 217, 160, 218, -1, 217, + 220, -1, -1, 19, -1, 68, 214, -1, 68, 8, + -1, 69, 16, 213, -1, 69, 9, 213, 137, 16, + 213, 137, 16, 213, -1, 70, 158, 213, 137, 16, + 213, 142, 219, 144, -1, 70, 158, 213, 137, 16, + 213, 142, 144, -1, 71, 165, 179, 213, 140, 222, + 141, 169, 33, 16, 213, 72, 16, 213, -1, 72, + -1, 73, -1, 219, 158, 211, 137, 16, 213, -1, + 158, 211, 137, 16, 213, -1, 160, 225, -1, 177, + 142, 213, 137, 213, 144, -1, 221, 137, 142, 213, + 137, 213, 144, -1, 177, 213, 167, -1, 222, 137, + 177, 213, 167, -1, -1, -1, 223, 137, 214, -1, + 56, 55, -1, 55, -1, 152, 177, 213, 137, 213, + -1, 153, 177, 213, 137, 213, -1, 86, 156, 177, + 213, 137, 213, -1, 87, 157, 177, 213, 137, 213, + -1, 45, 214, -1, 155, 214, 137, 214, -1, 154, + 214, 33, 177, -1, 127, 214, 137, 214, 137, 214, + -1, 131, 214, 137, 177, -1, 132, 214, 137, 214, + -1, 133, 214, 137, 214, 137, 214, -1, 134, 214, + 137, 214, 137, 214, -1, 126, 221, -1, 224, 165, + 179, 213, 140, 222, 141, 169, -1, 227, -1, 32, + -1, -1, 108, 177, 171, -1, 108, 177, 137, 12, + 213, 171, -1, 109, 177, 171, -1, 109, 177, 137, + 12, 213, 171, -1, 110, 214, -1, 226, 111, 177, + 213, -1, 226, 112, 214, 137, 177, 213, -1, 113, + 177, 213, 223, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -1643,21 +1645,22 @@ static const unsigned short int yyrline[] = 1184, 1184, 1184, 1184, 1184, 1184, 1187, 1191, 1195, 1202, 1207, 1215, 1233, 1251, 1256, 1268, 1278, 1282, 1292, 1299, 1306, 1313, 1318, 1323, 1330, 1331, 1338, 1345, 1353, 1358, - 1369, 1397, 1413, 1442, 1470, 1491, 1506, 1518, 1525, 1588, - 1598, 1608, 1614, 1620, 1624, 1628, 1636, 1650, 1671, 1679, - 1685, 1696, 1701, 1706, 1715, 1721, 1727, 1736, 1740, 1748, - 1748, 1759, 1764, 1772, 1773, 1777, 1777, 1781, 1781, 1784, - 1787, 1799, 1823, 1834, 1834, 1843, 1843, 1851, 1851, 1861, - 1864, 1870, 1883, 1884, 1886, 1890, 1899, 1903, 1908, 1910, - 1915, 1920, 1929, 1929, 1930, 1930, 1932, 1942, 1953, 1957, - 1966, 1975, 1980, 2085, 2085, 2087, 2095, 2095, 2097, 2102, - 2113, 2117, 2122, 2126, 2130, 2134, 2138, 2142, 2146, 2150, - 2154, 2179, 2183, 2197, 2201, 2207, 2207, 2213, 2222, 2226, - 2235, 2246, 2255, 2267, 2280, 2284, 2288, 2293, 2302, 2321, - 2330, 2397, 2401, 2408, 2419, 2432, 2441, 2452, 2462, 2470, - 2478, 2481, 2482, 2489, 2493, 2498, 2519, 2536, 2549, 2562, - 2575, 2584, 2597, 2605, 2612, 2618, 2624, 2630, 2645, 2708, - 2713, 2717, 2724, 2731, 2739, 2746, 2754, 2762, 2776, 2793 + 1369, 1397, 1413, 1442, 1470, 1495, 1514, 1539, 1558, 1570, + 1577, 1640, 1650, 1660, 1666, 1672, 1676, 1680, 1688, 1702, + 1723, 1731, 1737, 1748, 1753, 1758, 1767, 1773, 1779, 1788, + 1792, 1800, 1800, 1811, 1816, 1824, 1825, 1829, 1829, 1833, + 1833, 1836, 1839, 1851, 1875, 1886, 1886, 1895, 1895, 1903, + 1903, 1913, 1916, 1922, 1935, 1936, 1938, 1942, 1951, 1955, + 1960, 1962, 1967, 1972, 1981, 1981, 1982, 1982, 1984, 1994, + 2005, 2009, 2018, 2027, 2032, 2137, 2137, 2139, 2147, 2147, + 2149, 2154, 2165, 2169, 2174, 2178, 2182, 2186, 2190, 2194, + 2198, 2202, 2206, 2231, 2235, 2249, 2253, 2259, 2259, 2265, + 2274, 2278, 2287, 2298, 2307, 2319, 2332, 2336, 2340, 2345, + 2354, 2373, 2382, 2449, 2453, 2460, 2471, 2484, 2493, 2504, + 2514, 2522, 2530, 2533, 2534, 2541, 2545, 2550, 2571, 2588, + 2601, 2614, 2627, 2636, 2649, 2657, 2664, 2670, 2676, 2682, + 2697, 2760, 2765, 2769, 2776, 2783, 2791, 2798, 2806, 2814, + 2828, 2845 }; #endif @@ -1748,20 +1751,21 @@ static const unsigned char yyr1[] = 177, 177, 177, 177, 177, 177, 177, 177, 177, 178, 179, 179, 180, 180, 181, 181, 181, 181, 182, 182, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 184, 184, 184, 184, - 184, 184, 184, 184, 184, 184, 184, 185, 185, 186, - 186, 187, 187, 188, 188, 190, 189, 191, 189, 189, - 189, 189, 189, 192, 189, 193, 189, 194, 189, 189, - 189, 195, 196, 196, 197, 197, 197, 197, 198, 199, - 199, 199, 200, 200, 201, 201, 202, 202, 203, 203, - 203, 203, 204, 205, 205, 206, 207, 207, 208, 209, - 210, 210, 211, 211, 211, 211, 211, 211, 211, 211, - 211, 211, 211, 212, 212, 213, 213, 214, 215, 215, - 216, 217, 217, 217, 218, 218, 218, 218, 218, 218, - 218, 218, 218, 219, 219, 220, 221, 221, 222, 222, - 222, 223, 223, 224, 224, 225, 225, 225, 225, 225, + 183, 183, 183, 183, 183, 183, 183, 183, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 185, + 185, 186, 186, 187, 187, 188, 188, 190, 189, 19 |