pLevel           117873 ext/sqlite3/libsqlite/sqlite3.c   WhereLevel *pLevel          /* Write new index here */
pLevel           117907 ext/sqlite3/libsqlite/sqlite3.c   pLoop = pLevel->pWLoop;
pLevel           118012 ext/sqlite3/libsqlite/sqlite3.c   assert( pLevel->iIdxCur>=0 );
pLevel           118013 ext/sqlite3/libsqlite/sqlite3.c   pLevel->iIdxCur = pParse->nTab++;
pLevel           118014 ext/sqlite3/libsqlite/sqlite3.c   sqlite3VdbeAddOp2(v, OP_OpenAutoindex, pLevel->iIdxCur, nKeyCol+1);
pLevel           118020 ext/sqlite3/libsqlite/sqlite3.c   addrTop = sqlite3VdbeAddOp1(v, OP_Rewind, pLevel->iTabCur); VdbeCoverage(v);
pLevel           118027 ext/sqlite3/libsqlite/sqlite3.c   sqlite3GenerateIndexKey(pParse, pIdx, pLevel->iTabCur, regRecord, 0, 0, 0, 0);
pLevel           118028 ext/sqlite3/libsqlite/sqlite3.c   sqlite3VdbeAddOp2(v, OP_IdxInsert, pLevel->iIdxCur, regRecord);
pLevel           118031 ext/sqlite3/libsqlite/sqlite3.c   sqlite3VdbeAddOp2(v, OP_Next, pLevel->iTabCur, addrTop+1); VdbeCoverage(v);
pLevel           118885 ext/sqlite3/libsqlite/sqlite3.c static void disableTerm(WhereLevel *pLevel, WhereTerm *pTerm){
pLevel           118889 ext/sqlite3/libsqlite/sqlite3.c       && (pLevel->iLeftJoin==0 || ExprHasProperty(pTerm->pExpr, EP_FromJoin))
pLevel           118890 ext/sqlite3/libsqlite/sqlite3.c       && (pLevel->notReady & pTerm->prereqAll)==0
pLevel           118959 ext/sqlite3/libsqlite/sqlite3.c   WhereLevel *pLevel, /* The level of the FROM clause we are working on */
pLevel           118979 ext/sqlite3/libsqlite/sqlite3.c     WhereLoop *pLoop = pLevel->pWLoop;
pLevel           119002 ext/sqlite3/libsqlite/sqlite3.c     if( pLevel->u.in.nIn==0 ){
pLevel           119003 ext/sqlite3/libsqlite/sqlite3.c       pLevel->addrNxt = sqlite3VdbeMakeLabel(v);
pLevel           119005 ext/sqlite3/libsqlite/sqlite3.c     pLevel->u.in.nIn++;
pLevel           119006 ext/sqlite3/libsqlite/sqlite3.c     pLevel->u.in.aInLoop =
pLevel           119007 ext/sqlite3/libsqlite/sqlite3.c        sqlite3DbReallocOrFree(pParse->db, pLevel->u.in.aInLoop,
pLevel           119008 ext/sqlite3/libsqlite/sqlite3.c                               sizeof(pLevel->u.in.aInLoop[0])*pLevel->u.in.nIn);
pLevel           119009 ext/sqlite3/libsqlite/sqlite3.c     pIn = pLevel->u.in.aInLoop;
pLevel           119011 ext/sqlite3/libsqlite/sqlite3.c       pIn += pLevel->u.in.nIn - 1;
pLevel           119021 ext/sqlite3/libsqlite/sqlite3.c       pLevel->u.in.nIn = 0;
pLevel           119025 ext/sqlite3/libsqlite/sqlite3.c   disableTerm(pLevel, pTerm);
pLevel           119076 ext/sqlite3/libsqlite/sqlite3.c   WhereLevel *pLevel,   /* Which nested loop of the FROM we are coding */
pLevel           119093 ext/sqlite3/libsqlite/sqlite3.c   pLoop = pLevel->pWLoop;
pLevel           119112 ext/sqlite3/libsqlite/sqlite3.c     int iIdxCur = pLevel->iIdxCur;
pLevel           119118 ext/sqlite3/libsqlite/sqlite3.c     pLevel->addrSkip = sqlite3VdbeAddOp4Int(v, (bRev?OP_SeekLT:OP_SeekGT),
pLevel           119141 ext/sqlite3/libsqlite/sqlite3.c     r1 = codeEqualityTerm(pParse, pTerm, pLevel, j, bRev, regBase+j);
pLevel           119155 ext/sqlite3/libsqlite/sqlite3.c         sqlite3VdbeAddOp2(v, OP_IsNull, regBase+j, pLevel->addrBrk);
pLevel           119251 ext/sqlite3/libsqlite/sqlite3.c   WhereLevel *pLevel,             /* Scan to write OP_Explain opcode for */
pLevel           119261 ext/sqlite3/libsqlite/sqlite3.c     struct SrcList_item *pItem = &pTabList->a[pLevel->iFrom];
pLevel           119272 ext/sqlite3/libsqlite/sqlite3.c     pLoop = pLevel->pWLoop;
pLevel           119398 ext/sqlite3/libsqlite/sqlite3.c   WhereLevel *pLevel,     /* The loop that contains the LIKE operator */
pLevel           119403 ext/sqlite3/libsqlite/sqlite3.c     assert( pLevel->iLikeRepCntr>0 );
pLevel           119408 ext/sqlite3/libsqlite/sqlite3.c     pOp->p3 = pLevel->iLikeRepCntr;
pLevel           119427 ext/sqlite3/libsqlite/sqlite3.c   WhereLevel *pLevel;  /* The where level to be coded */
pLevel           119444 ext/sqlite3/libsqlite/sqlite3.c   pLevel = &pWInfo->a[iLevel];
pLevel           119445 ext/sqlite3/libsqlite/sqlite3.c   pLoop = pLevel->pWLoop;
pLevel           119446 ext/sqlite3/libsqlite/sqlite3.c   pTabItem = &pWInfo->pTabList->a[pLevel->iFrom];
pLevel           119448 ext/sqlite3/libsqlite/sqlite3.c   pLevel->notReady = notReady & ~getMask(&pWInfo->sMaskSet, iCur);
pLevel           119464 ext/sqlite3/libsqlite/sqlite3.c   addrBrk = pLevel->addrBrk = pLevel->addrNxt = sqlite3VdbeMakeLabel(v);
pLevel           119465 ext/sqlite3/libsqlite/sqlite3.c   addrCont = pLevel->addrCont = sqlite3VdbeMakeLabel(v);
pLevel           119471 ext/sqlite3/libsqlite/sqlite3.c   if( pLevel->iFrom>0 && (pTabItem[0].jointype & JT_LEFT)!=0 ){
pLevel           119472 ext/sqlite3/libsqlite/sqlite3.c     pLevel->iLeftJoin = ++pParse->nMem;
pLevel           119473 ext/sqlite3/libsqlite/sqlite3.c     sqlite3VdbeAddOp2(v, OP_Integer, 0, pLevel->iLeftJoin);
pLevel           119481 ext/sqlite3/libsqlite/sqlite3.c     pLevel->p2 =  sqlite3VdbeAddOp2(v, OP_Yield, regYield, addrBrk);
pLevel           119484 ext/sqlite3/libsqlite/sqlite3.c     pLevel->op = OP_Goto;
pLevel           119498 ext/sqlite3/libsqlite/sqlite3.c     addrNotFound = pLevel->addrBrk;
pLevel           119504 ext/sqlite3/libsqlite/sqlite3.c         codeEqualityTerm(pParse, pTerm, pLevel, j, bRev, iTarget);
pLevel           119505 ext/sqlite3/libsqlite/sqlite3.c         addrNotFound = pLevel->addrNxt;
pLevel           119519 ext/sqlite3/libsqlite/sqlite3.c         disableTerm(pLevel, pLoop->aLTerm[j]);
pLevel           119522 ext/sqlite3/libsqlite/sqlite3.c     pLevel->op = OP_VNext;
pLevel           119523 ext/sqlite3/libsqlite/sqlite3.c     pLevel->p1 = iCur;
pLevel           119524 ext/sqlite3/libsqlite/sqlite3.c     pLevel->p2 = sqlite3VdbeCurrentAddr(v);
pLevel           119545 ext/sqlite3/libsqlite/sqlite3.c     iRowidReg = codeEqualityTerm(pParse, pTerm, pLevel, 0, bRev, iReleaseReg);
pLevel           119547 ext/sqlite3/libsqlite/sqlite3.c     addrNxt = pLevel->addrNxt;
pLevel           119554 ext/sqlite3/libsqlite/sqlite3.c     pLevel->op = OP_Noop;
pLevel           119607 ext/sqlite3/libsqlite/sqlite3.c       disableTerm(pLevel, pStart);
pLevel           119627 ext/sqlite3/libsqlite/sqlite3.c       disableTerm(pLevel, pEnd);
pLevel           119630 ext/sqlite3/libsqlite/sqlite3.c     pLevel->op = bRev ? OP_Prev : OP_Next;
pLevel           119631 ext/sqlite3/libsqlite/sqlite3.c     pLevel->p1 = iCur;
pLevel           119632 ext/sqlite3/libsqlite/sqlite3.c     pLevel->p2 = start;
pLevel           119633 ext/sqlite3/libsqlite/sqlite3.c     assert( pLevel->p5==0 );
pLevel           119711 ext/sqlite3/libsqlite/sqlite3.c     iIdxCur = pLevel->iIdxCur;
pLevel           119751 ext/sqlite3/libsqlite/sqlite3.c         pLevel->iLikeRepCntr = ++pParse->nMem;
pLevel           119756 ext/sqlite3/libsqlite/sqlite3.c                           pLevel->iLikeRepCntr);
pLevel           119758 ext/sqlite3/libsqlite/sqlite3.c         pLevel->addrLikeRep = sqlite3VdbeCurrentAddr(v);
pLevel           119773 ext/sqlite3/libsqlite/sqlite3.c     regBase = codeAllEqualityTerms(pParse,pLevel,bRev,nExtraReg,&zStartAff);
pLevel           119776 ext/sqlite3/libsqlite/sqlite3.c     addrNxt = pLevel->addrNxt;
pLevel           119802 ext/sqlite3/libsqlite/sqlite3.c       whereLikeOptimizationStringFixup(v, pLevel, pRangeStart);
pLevel           119848 ext/sqlite3/libsqlite/sqlite3.c       whereLikeOptimizationStringFixup(v, pLevel, pRangeEnd);
pLevel           119870 ext/sqlite3/libsqlite/sqlite3.c     pLevel->p2 = sqlite3VdbeCurrentAddr(v);
pLevel           119883 ext/sqlite3/libsqlite/sqlite3.c     disableTerm(pLevel, pRangeStart);
pLevel           119884 ext/sqlite3/libsqlite/sqlite3.c     disableTerm(pLevel, pRangeEnd);
pLevel           119907 ext/sqlite3/libsqlite/sqlite3.c       pLevel->op = OP_Noop;
pLevel           119909 ext/sqlite3/libsqlite/sqlite3.c       pLevel->op = OP_Prev;
pLevel           119911 ext/sqlite3/libsqlite/sqlite3.c       pLevel->op = OP_Next;
pLevel           119913 ext/sqlite3/libsqlite/sqlite3.c     pLevel->p1 = iIdxCur;
pLevel           119914 ext/sqlite3/libsqlite/sqlite3.c     pLevel->p3 = (pLoop->wsFlags&WHERE_UNQ_WANTED)!=0 ? 1:0;
pLevel           119916 ext/sqlite3/libsqlite/sqlite3.c       pLevel->p5 = SQLITE_STMTSTATUS_FULLSCAN_STEP;
pLevel           119918 ext/sqlite3/libsqlite/sqlite3.c       assert( pLevel->p5==0 );
pLevel           119988 ext/sqlite3/libsqlite/sqlite3.c     pLevel->op = OP_Return;
pLevel           119989 ext/sqlite3/libsqlite/sqlite3.c     pLevel->p1 = regReturn;
pLevel           120007 ext/sqlite3/libsqlite/sqlite3.c         memcpy(&pOrTab->a[k], &origSrc[pLevel[k].iFrom], sizeof(pOrTab->a[k]));
pLevel           120096 ext/sqlite3/libsqlite/sqlite3.c               pParse, pOrTab, &pSubWInfo->a[0], iLevel, pLevel->iFrom, 0
pLevel           120194 ext/sqlite3/libsqlite/sqlite3.c     pLevel->u.pCovidx = pCov;
pLevel           120195 ext/sqlite3/libsqlite/sqlite3.c     if( pCov ) pLevel->iIdxCur = iCovCur;
pLevel           120201 ext/sqlite3/libsqlite/sqlite3.c     sqlite3VdbeAddOp2(v, OP_Goto, 0, pLevel->addrBrk);
pLevel           120205 ext/sqlite3/libsqlite/sqlite3.c     if( !untestedTerms ) disableTerm(pLevel, pTerm);
pLevel           120219 ext/sqlite3/libsqlite/sqlite3.c       pLevel->op = OP_Noop;
pLevel           120221 ext/sqlite3/libsqlite/sqlite3.c       pLevel->op = aStep[bRev];
pLevel           120222 ext/sqlite3/libsqlite/sqlite3.c       pLevel->p1 = iCur;
pLevel           120223 ext/sqlite3/libsqlite/sqlite3.c       pLevel->p2 = 1 + sqlite3VdbeAddOp2(v, aStart[bRev], iCur, addrBrk);
pLevel           120226 ext/sqlite3/libsqlite/sqlite3.c       pLevel->p5 = SQLITE_STMTSTATUS_FULLSCAN_STEP;
pLevel           120231 ext/sqlite3/libsqlite/sqlite3.c   pLevel->addrVisit = sqlite3VdbeCurrentAddr(v);
pLevel           120243 ext/sqlite3/libsqlite/sqlite3.c     if( (pTerm->prereqAll & pLevel->notReady)!=0 ){
pLevel           120251 ext/sqlite3/libsqlite/sqlite3.c     if( pLevel->iLeftJoin && !ExprHasProperty(pE, EP_FromJoin) ){
pLevel           120255 ext/sqlite3/libsqlite/sqlite3.c       assert( pLevel->iLikeRepCntr>0 );
pLevel           120256 ext/sqlite3/libsqlite/sqlite3.c       skipLikeAddr = sqlite3VdbeAddOp1(v, OP_IfNot, pLevel->iLikeRepCntr);
pLevel           120278 ext/sqlite3/libsqlite/sqlite3.c     if( pLevel->iLeftJoin ) continue;
pLevel           120281 ext/sqlite3/libsqlite/sqlite3.c     assert( (pTerm->prereqRight & pLevel->notReady)!=0 );
pLevel           120300 ext/sqlite3/libsqlite/sqlite3.c   if( pLevel->iLeftJoin ){
pLevel           120301 ext/sqlite3/libsqlite/sqlite3.c     pLevel->addrFirst = sqlite3VdbeCurrentAddr(v);
pLevel           120302 ext/sqlite3/libsqlite/sqlite3.c     sqlite3VdbeAddOp2(v, OP_Integer, 1, pLevel->iLeftJoin);
pLevel           120309 ext/sqlite3/libsqlite/sqlite3.c       if( (pTerm->prereqAll & pLevel->notReady)!=0 ){
pLevel           120319 ext/sqlite3/libsqlite/sqlite3.c   return pLevel->notReady;
pLevel           120481 ext/sqlite3/libsqlite/sqlite3.c       WhereLevel *pLevel = &pWInfo->a[i];
pLevel           120482 ext/sqlite3/libsqlite/sqlite3.c       if( pLevel->pWLoop && (pLevel->pWLoop->wsFlags & WHERE_IN_ABLE) ){
pLevel           120483 ext/sqlite3/libsqlite/sqlite3.c         sqlite3DbFree(db, pLevel->u.in.aInLoop);
pLevel           122397 ext/sqlite3/libsqlite/sqlite3.c     WhereLevel *pLevel = pWInfo->a + iLoop;
pLevel           122398 ext/sqlite3/libsqlite/sqlite3.c     pLevel->pWLoop = pWLoop = pFrom->aLoop[iLoop];
pLevel           122399 ext/sqlite3/libsqlite/sqlite3.c     pLevel->iFrom = pWLoop->iTab;
pLevel           122400 ext/sqlite3/libsqlite/sqlite3.c     pLevel->iTabCur = pWInfo->pTabList->a[pLevel->iFrom].iCursor;
pLevel           122636 ext/sqlite3/libsqlite/sqlite3.c   WhereLevel *pLevel;        /* A single level in pWInfo->a[] */
pLevel           122906 ext/sqlite3/libsqlite/sqlite3.c   for(ii=0, pLevel=pWInfo->a; ii<nTabList; ii++, pLevel++){
pLevel           122911 ext/sqlite3/libsqlite/sqlite3.c     pTabItem = &pTabList->a[pLevel->iFrom];
pLevel           122914 ext/sqlite3/libsqlite/sqlite3.c     pLoop = pLevel->pWLoop;
pLevel           122935 ext/sqlite3/libsqlite/sqlite3.c       assert( pTabItem->iCursor==pLevel->iTabCur );
pLevel           122960 ext/sqlite3/libsqlite/sqlite3.c         iIndexCur = pLevel->iTabCur;
pLevel           122978 ext/sqlite3/libsqlite/sqlite3.c       pLevel->iIdxCur = iIndexCur;
pLevel           123007 ext/sqlite3/libsqlite/sqlite3.c     pLevel = &pWInfo->a[ii];
pLevel           123008 ext/sqlite3/libsqlite/sqlite3.c     wsFlags = pLevel->pWLoop->wsFlags;
pLevel           123010 ext/sqlite3/libsqlite/sqlite3.c     if( (pLevel->pWLoop->wsFlags & WHERE_AUTO_INDEX)!=0 ){
pLevel           123012 ext/sqlite3/libsqlite/sqlite3.c                 &pTabList->a[pLevel->iFrom], notReady, pLevel);
pLevel           123017 ext/sqlite3/libsqlite/sqlite3.c         pParse, pTabList, pLevel, ii, pLevel->iFrom, wctrlFlags
pLevel           123019 ext/sqlite3/libsqlite/sqlite3.c     pLevel->addrBody = sqlite3VdbeCurrentAddr(v);
pLevel           123021 ext/sqlite3/libsqlite/sqlite3.c     pWInfo->iContinue = pLevel->addrCont;
pLevel           123023 ext/sqlite3/libsqlite/sqlite3.c       addScanStatus(v, pTabList, pLevel, addrExplain);
pLevel           123048 ext/sqlite3/libsqlite/sqlite3.c   WhereLevel *pLevel;
pLevel           123059 ext/sqlite3/libsqlite/sqlite3.c     pLevel = &pWInfo->a[i];
pLevel           123060 ext/sqlite3/libsqlite/sqlite3.c     pLoop = pLevel->pWLoop;
pLevel           123061 ext/sqlite3/libsqlite/sqlite3.c     sqlite3VdbeResolveLabel(v, pLevel->addrCont);
pLevel           123062 ext/sqlite3/libsqlite/sqlite3.c     if( pLevel->op!=OP_Noop ){
pLevel           123063 ext/sqlite3/libsqlite/sqlite3.c       sqlite3VdbeAddOp3(v, pLevel->op, pLevel->p1, pLevel->p2, pLevel->p3);
pLevel           123064 ext/sqlite3/libsqlite/sqlite3.c       sqlite3VdbeChangeP5(v, pLevel->p5);
pLevel           123066 ext/sqlite3/libsqlite/sqlite3.c       VdbeCoverageIf(v, pLevel->op==OP_Next);
pLevel           123067 ext/sqlite3/libsqlite/sqlite3.c       VdbeCoverageIf(v, pLevel->op==OP_Prev);
pLevel           123068 ext/sqlite3/libsqlite/sqlite3.c       VdbeCoverageIf(v, pLevel->op==OP_VNext);
pLevel           123070 ext/sqlite3/libsqlite/sqlite3.c     if( pLoop->wsFlags & WHERE_IN_ABLE && pLevel->u.in.nIn>0 ){
pLevel           123073 ext/sqlite3/libsqlite/sqlite3.c       sqlite3VdbeResolveLabel(v, pLevel->addrNxt);
pLevel           123074 ext/sqlite3/libsqlite/sqlite3.c       for(j=pLevel->u.in.nIn, pIn=&pLevel->u.in.aInLoop[j-1]; j>0; j--, pIn--){
pLevel           123083 ext/sqlite3/libsqlite/sqlite3.c     sqlite3VdbeResolveLabel(v, pLevel->addrBrk);
pLevel           123084 ext/sqlite3/libsqlite/sqlite3.c     if( pLevel->addrSkip ){
pLevel           123085 ext/sqlite3/libsqlite/sqlite3.c       sqlite3VdbeAddOp2(v, OP_Goto, 0, pLevel->addrSkip);
pLevel           123087 ext/sqlite3/libsqlite/sqlite3.c       sqlite3VdbeJumpHere(v, pLevel->addrSkip);
pLevel           123088 ext/sqlite3/libsqlite/sqlite3.c       sqlite3VdbeJumpHere(v, pLevel->addrSkip-2);
pLevel           123090 ext/sqlite3/libsqlite/sqlite3.c     if( pLevel->addrLikeRep ){
pLevel           123092 ext/sqlite3/libsqlite/sqlite3.c       if( sqlite3VdbeGetOp(v, pLevel->addrLikeRep-1)->p1 ){
pLevel           123097 ext/sqlite3/libsqlite/sqlite3.c       sqlite3VdbeAddOp2(v, op, pLevel->iLikeRepCntr, pLevel->addrLikeRep);
pLevel           123100 ext/sqlite3/libsqlite/sqlite3.c     if( pLevel->iLeftJoin ){
pLevel           123101 ext/sqlite3/libsqlite/sqlite3.c       addr = sqlite3VdbeAddOp1(v, OP_IfPos, pLevel->iLeftJoin); VdbeCoverage(v);
pLevel           123108 ext/sqlite3/libsqlite/sqlite3.c         sqlite3VdbeAddOp1(v, OP_NullRow, pLevel->iIdxCur);
pLevel           123110 ext/sqlite3/libsqlite/sqlite3.c       if( pLevel->op==OP_Return ){
pLevel           123111 ext/sqlite3/libsqlite/sqlite3.c         sqlite3VdbeAddOp2(v, OP_Gosub, pLevel->p1, pLevel->addrFirst);
pLevel           123113 ext/sqlite3/libsqlite/sqlite3.c         sqlite3VdbeAddOp2(v, OP_Goto, 0, pLevel->addrFirst);
pLevel           123118 ext/sqlite3/libsqlite/sqlite3.c                      pWInfo->pTabList->a[pLevel->iFrom].pTab->zName));
pLevel           123127 ext/sqlite3/libsqlite/sqlite3.c   for(i=0, pLevel=pWInfo->a; i<pWInfo->nLevel; i++, pLevel++){
pLevel           123131 ext/sqlite3/libsqlite/sqlite3.c     struct SrcList_item *pTabItem = &pTabList->a[pLevel->iFrom];
pLevel           123134 ext/sqlite3/libsqlite/sqlite3.c     pLoop = pLevel->pWLoop;
pLevel           123142 ext/sqlite3/libsqlite/sqlite3.c       k = pLevel->addrBody;
pLevel           123145 ext/sqlite3/libsqlite/sqlite3.c         if( pOp->p1!=pLevel->iTabCur ) continue;
pLevel           123175 ext/sqlite3/libsqlite/sqlite3.c        && pLevel->iIdxCur!=pWInfo->aiCurOnePass[1]
pLevel           123177 ext/sqlite3/libsqlite/sqlite3.c         sqlite3VdbeAddOp1(v, OP_Close, pLevel->iIdxCur);
pLevel           123195 ext/sqlite3/libsqlite/sqlite3.c       pIdx = pLevel->u.pCovidx;
pLevel           123199 ext/sqlite3/libsqlite/sqlite3.c       k = pLevel->addrBody;
pLevel           123202 ext/sqlite3/libsqlite/sqlite3.c         if( pOp->p1!=pLevel->iTabCur ) continue;
pLevel           123213 ext/sqlite3/libsqlite/sqlite3.c             pOp->p1 = pLevel->iIdxCur;
pLevel           123217 ext/sqlite3/libsqlite/sqlite3.c           pOp->p1 = pLevel->iIdxCur;