Lines Matching defs:aOp
15927 VdbeOp *aOp; /* Array of opcodes for sub-program */
15928 int nOp; /* Elements in aOp[] */
16284 SQLITE_PRIVATE VdbeOp *sqlite3VdbeAddOpList(Vdbe*, int nOp, VdbeOpList const *aOp,int iLineno);
19130 int szOpAlloc; /* Bytes of memory space allocated for Vdbe.aOp[] */
22581 Op *aOp; /* Program instructions for parent frame */
22594 int nOp; /* Size of aOp array */
22853 Op *aOp; /* Space to hold the virtual machine's program */
22855 int nOpAlloc; /* Slots allocated for aOp[] */
52532 SQLITE_PRIVATE int sqlite3BitvecBuiltinTest(int sz, int *aOp){
52552 while( (op = aOp[pc])!=0 ){
52558 i = aOp[pc+2] - 1;
52559 aOp[pc+2] += aOp[pc+3];
52570 if( (--aOp[pc+1]) > 0 ) nx = 0;
82564 memset(&p->aOp, 0, sizeof(Vdbe)-offsetof(Vdbe,aOp));
82689 ** Resize the Vdbe.aOp array so that it is at least nOp elements larger
82694 ** SQLITE_NOMEM. In this case Vdbe.aOp and Vdbe.nOpAlloc remain
82726 pNew = sqlite3DbRealloc(p->db, v->aOp, nNew*sizeof(Op));
82730 v->aOp = pNew;
82785 assert( p->aOp!=0 );
82787 pOp = &p->aOp[i];
82801 sqlite3VdbePrintOp(0, i, &p->aOp[i]);
82802 test_addop_breakpoint(i, &p->aOp[i]);
83039 VdbeOp *pOp = &p->aOp[addr];
83142 if( ALWAYS(p->aOp[i].opcode==OP_Expire) ){
83143 p->aOp[1].opcode = OP_Noop;
83178 Op *aOp;
83184 aOp = v->aOp;
83187 aOp = p->apSub[p->iSub-1]->aOp;
83192 pRet = &aOp[p->iAddr];
83351 pOp = &p->aOp[p->nOp-1];
83352 assert( p->aOp[0].opcode==OP_Init );
83393 assert( (pOp - p->aOp) >= 3 );
83418 assert( pOp>p->aOp );
83468 pOp = &v->aOp[iFirst];
83485 VdbeOp *pX = &v->aOp[j];
83548 assert( p->aOp[i].opcode!=OP_ResultRow );
83576 VdbeOp *aOp = p->aOp;
83577 assert( aOp && !p->db->mallocFailed );
83584 p->aOp = 0;
83585 return aOp;
83598 VdbeOpList const *aOp, /* The opcodes to be added */
83608 pFirst = pOut = &p->aOp[p->nOp];
83609 for(i=0; i<nOp; i++, aOp++, pOut++){
83610 pOut->opcode = aOp->opcode;
83611 pOut->p1 = aOp->p1;
83612 pOut->p2 = aOp->p2;
83613 assert( aOp->p2>=0 );
83614 if( (sqlite3OpcodeProperty[aOp->opcode] & OPFLG_JUMP)!=0 && aOp->p2>0 ){
83617 pOut->p3 = aOp->p3;
83631 sqlite3VdbePrintOp(0, i+p->nOp, &p->aOp[i+p->nOp]);
83689 if( p->nOp>0 ) p->aOp[p->nOp-1].p5 = p5;
83727 assert( p->aOp[addr].opcode==OP_Once
83728 || p->aOp[addr].opcode==OP_If
83729 || p->aOp[addr].opcode==OP_FkIfZero );
83730 assert( p->aOp[addr].p4type==0 );
83808 ** Free the space allocated for aOp and any p4 values allocated for the
83809 ** opcodes contained within. If aOp is not NULL it is assumed to contain
83812 static void vdbeFreeOpArray(sqlite3 *db, Op *aOp, int nOp){
83815 if( aOp ){
83816 Op *pOp = &aOp[nOp-1];
83822 if( pOp==aOp ) break;
83825 sqlite3DbNNFreeNN(db, aOp);
83853 pOp = &p->aOp[addr];
83866 if( p->nOp>0 && p->aOp[p->nOp-1].opcode==op ){
83937 sqlite3VdbeChangeP4(p, (int)(pOp - p->aOp), zP4, n);
83950 assert( p->aOp!=0 || db->mallocFailed );
83960 pOp = &p->aOp[addr];
83996 pOp = &p->aOp[p->nOp-1];
84024 assert( p->nOp>0 || p->aOp==0 );
84025 assert( p->aOp==0 || p->aOp[p->nOp-1].zComment==0 || p->pParse->nErr>0 );
84027 assert( p->aOp );
84028 sqlite3DbFree(p->db, p->aOp[p->nOp-1].zComment);
84029 p->aOp[p->nOp-1].zComment = sqlite3VMPrintf(p->db, zFormat, ap);
84082 return &p->aOp[addr];
84641 Op *aOp = 0; /* Opcode array */
84674 aOp = p->aOp;
84686 aOp = apSub[j]->aOp;
84694 if( pSub!=0 && aOp[i].p4type==P4_SUBPROGRAM ){
84698 if( apSub[j]==aOp[i].p4.pProgram ) break;
84707 apSub[nSub++] = aOp[i].p4.pProgram;
84710 nRow += aOp[i].p4.pProgram->nOp;
84716 Op *pOp = aOp + i;
84724 if( aOp[i].opcode==OP_Explain ) break;
84725 if( aOp[i].opcode==OP_Init && iPc>1 ) break;
84730 *paOp = aOp;
84781 Op *aOp; /* Array of opcodes */
84814 rc = sqlite3VdbeNextOpcode(p, pSub, p->explain==2, &p->pc, &i, &aOp);
84817 pOp = aOp + i;
84873 const VdbeOp *pOp = &p->aOp[0];
84892 pOp = &p->aOp[0];
84990 p->aOp[i].cnt = 0;
84991 p->aOp[i].cycles = 0;
85053 x.pSpace = &((u8*)p->aOp)[n]; /* Unused opcode memory */
85191 v->aOp = pFrame->aOp;
86007 fprintf(out, "%02x", p->aOp[i].opcode);
86023 p->aOp[i].cnt,
86024 p->aOp[i].cycles,
86025 p->aOp[i].cnt>0 ? p->aOp[i].cycles/p->aOp[i].cnt : 0
86028 sqlite3VdbePrintOp(out, i, &p->aOp[i]);
86108 vdbeFreeOpArray(db, pSub->aOp, pSub->nOp);
86116 vdbeFreeOpArray(db, p->aOp, p->nOp);
87730 pOp = pCtx->pVdbe->aOp + pCtx->iOp;
90044 *(const char**)pOut = p->aOp[ pScan->addrExplain ].p4.z;
90052 *(int*)pOut = p->aOp[ pScan->addrExplain ].p1;
91042 Op *aOp = p->aOp; /* Copy of p->aOp */
91043 Op *pOp = aOp; /* Current operation */
91106 sqlite3VdbePrintOp(stdout, i, &aOp[i]);
91111 if( aOp[i].opcode==OP_Explain ){
91113 printf("%s\n", aOp[i].p4.z);
91122 for(pOp=&aOp[p->pc]; 1; pOp++){
91127 assert( pOp>=aOp && pOp<&aOp[p->nOp]);
91133 if( p->anExec ) p->anExec[(int)(pOp-aOp)]++;
91140 sqlite3VdbePrintOp(stdout, (int)(pOp - aOp), pOp);
91141 test_trace_breakpoint((int)(pOp - aOp),pOp,p);
91255 assert( pOp->p2 < (int)(pOp - aOp) );
91257 pOp = &aOp[pOp->p2 - 2];
91264 pOp = &aOp[pOp->p2 - 1];
91310 pIn1->u.i = (int)(pOp-aOp);
91341 pOp = &aOp[pIn1->u.i];
91374 pOp = &aOp[pOp->p2 - 1];
91391 pCaller = &aOp[pIn1->u.i];
91394 pOp = &aOp[pCaller->p2 - 1];
91418 pIn1->u.i = (int)(pOp - aOp);
91420 pOp = &aOp[pcDest];
91498 pcx = p->aOp[pcx].p2-1;
91500 aOp = p->aOp;
91502 pOp = &aOp[pcx];
91523 pcx = (int)(pOp - aOp);
91985 p->pc = (int)(pOp - aOp) + 1;
92636 for(iAddr = (int)(pOp - aOp) - 1; ALWAYS(iAddr>=0); iAddr--){
92637 if( aOp[iAddr].opcode==OP_ReleaseReg ) continue;
92638 assert( aOp[iAddr].opcode==OP_Lt || aOp[iAddr].opcode==OP_Gt );
92703 assert( pOp>aOp );
92764 pOp = &aOp[pOp->p2 - 1];
92770 assert( pOp>aOp && pOp[-1].opcode==OP_Compare );
92772 VdbeBranchTaken(0,4); pOp = &aOp[pOp->p1 - 1];
92774 VdbeBranchTaken(1,4); pOp = &aOp[pOp->p2 - 1];
92776 VdbeBranchTaken(2,4); pOp = &aOp[pOp->p3 - 1];
92909 assert( p->aOp[0].opcode==OP_Init );
92911 iAddr = (int)(pOp - p->aOp);
92918 if( p->aOp[0].p1==pOp->p1 ){
92924 pOp->p1 = p->aOp[0].p1;
93449 if( aOp[0].p3>0 ){
93450 pOp = &aOp[aOp[0].p3-1];
94081 p->pc = (int)(pOp - aOp);
94200 p->pc = (int)(pOp - aOp);
94290 p->pc = (int)(pOp - aOp);
95255 assert( pOp->p2>=(int)(pOp-aOp)+2 );
95259 assert( pOp[1].p1==aOp[pOp->p2-1].p1 );
95260 assert( pOp[1].p2==aOp[pOp->p2-1].p2 );
95261 assert( pOp[1].p3==aOp[pOp->p2-1].p3 );
95262 assert( aOp[pOp->p2-1].opcode==OP_IdxGT
95263 || aOp[pOp->p2-1].opcode==OP_IdxGE );
95264 testcase( aOp[pOp->p2-1].opcode==OP_IdxGE );
95267 assert( pOp->p2==(int)(pOp-aOp)+2 );
95268 assert( aOp[pOp->p2-1].opcode==OP_SeekGE );
97509 ** program stored in SubProgram.aOp. As well as these, one memory
97533 pFrame->pc = (int)(pOp - aOp);
97538 pFrame->aOp = p->aOp;
97559 assert( (int)(pOp - aOp)==pFrame->pc );
97578 p->aOp = aOp = pProgram->aOp;
97594 pOp = &aOp[-1];
97615 pIn = &pFrame->aMem[pOp->p1 + pFrame->aOp[pFrame->pc].p1];
97864 pCtx->iOp = (int)(pOp - aOp);
98966 assert( pOp==p->aOp || pOp->opcode==OP_Trace );
99010 if( p->aOp[i].opcode==OP_Once ) p->aOp[i].p1 = 0;
99146 assert( pOp>=&aOp[-1] && pOp<&aOp[p->nOp-1] );
99183 if( aOp[0].opcode==OP_Trace ){
99184 zTrace = aOp[0].p4.z;
99198 (int)(pOp - aOp), p->zSql, p->zErrMsg);
99328 assert( v->aOp[v->pc].opcode==OP_NotExists );
99534 VdbeOp *aOp;
99541 aOp = sqlite3VdbeAddOpList(v, ArraySize(openBlob), openBlob, iLn);
99547 assert( aOp!=0 );
99550 aOp[0].opcode = OP_Noop;
99552 aOp[0].p1 = iDb;
99553 aOp[0].p2 = pTab->tnum;
99554 aOp[0].p3 = wrFlag;
99562 if( wrFlag ) aOp[1].opcode = OP_OpenWrite;
99563 aOp[1].p2 = pTab->tnum;
99564 aOp[1].p3 = iDb;
99573 aOp[1].p4type = P4_INT32;
99574 aOp[1].p4.i = pTab->nCol+1;
99575 aOp[3].p2 = pTab->nCol;
102584 Op *aOp; /* Operand array */
102717 &pCur->aOp);
102720 pCur->aOp = 0;
102731 return pCur->aOp==0;
102745 Op *pOp = pCur->aOp + pCur->iAddr;
102814 Op *aOp = pCur->aOp;
102815 assert( aOp[0].opcode==OP_Init );
102816 assert( aOp[0].p4.z==0 || strncmp(aOp[0].p4.z,"-" "- ",3)==0 );
102819 }else if( aOp[0].p4.z!=0 ){
102820 sqlite3_result_text(ctx, aOp[0].p4.z+3, -1, SQLITE_STATIC);
124746 pOp = &context->pVdbe->aOp[context->iOp-1];
129084 VdbeOp *aOp;
129090 aOp = sqlite3VdbeAddOpList(v, ArraySize(autoInc), autoInc, iLn);
129091 if( aOp==0 ) break;
129092 aOp[0].p2 = memId;
129093 aOp[0].p3 = memId+2;
129094 aOp[2].p3 = memId;
129095 aOp[3].p1 = memId-1;
129096 aOp[3].p3 = memId;
129097 aOp[3].p5 = SQLITE_JUMPIFNULL;
129098 aOp[4].p2 = memId+1;
129099 aOp[5].p3 = memId;
129100 aOp[6].p1 = memId;
129101 aOp[7].p2 = memId+2;
129102 aOp[7].p1 = memId;
129103 aOp[10].p2 = memId;
129144 VdbeOp *aOp;
129154 aOp = sqlite3VdbeAddOpList(v, ArraySize(autoIncEnd), autoIncEnd, iLn);
129155 if( aOp==0 ) break;
129156 aOp[0].p1 = memId+1;
129157 aOp[1].p2 = memId+1;
129158 aOp[2].p1 = memId-1;
129159 aOp[2].p3 = iRec;
129160 aOp[3].p2 = iRec;
129161 aOp[3].p3 = memId+1;
129162 aOp[3].p5 = OPFLAG_APPEND;
134775 VdbeOp *aOp;
134780 aOp = sqlite3VdbeAddOpList(v, ArraySize(getCacheSize), getCacheSize, iLn);
134781 if( ONLY_IF_REALLOC_STRESS(aOp==0) ) break;
134782 aOp[0].p1 = iDb;
134783 aOp[1].p1 = iDb;
134784 aOp[6].p1 = SQLITE_DEFAULT_CACHE_SIZE;
135040 VdbeOp *aOp;
135043 aOp = sqlite3VdbeAddOpList(v, ArraySize(setMeta6), setMeta6, iLn);
135044 if( ONLY_IF_REALLOC_STRESS(aOp==0) ) break;
135045 aOp[0].p1 = iDb;
135046 aOp[1].p1 = iDb;
135047 aOp[2].p2 = iAddr+4;
135048 aOp[4].p1 = iDb;
135049 aOp[4].p3 = eAuto - 1;
136290 VdbeOp *aOp;
136292 aOp = sqlite3VdbeAddOpList(v, ArraySize(endCode), endCode, iLn);
136293 if( aOp ){
136294 aOp[0].p2 = 1-mxErr;
136295 aOp[2].p4type = P4_STATIC;
136296 aOp[2].p4.z = "ok";
136297 aOp[5].p4type = P4_STATIC;
136298 aOp[5].p4.z = (char*)sqlite3ErrStr(SQLITE_CORRUPT);
136417 VdbeOp *aOp;
136419 aOp = sqlite3VdbeAddOpList(v, ArraySize(setCookie), setCookie, 0);
136420 if( ONLY_IF_REALLOC_STRESS(aOp==0) ) break;
136421 aOp[0].p1 = iDb;
136422 aOp[1].p1 = iDb;
136423 aOp[1].p2 = iCookie;
136424 aOp[1].p3 = sqlite3Atoi(zRight);
136425 aOp[1].p5 = 1;
136429 aOp[1].opcode = OP_Noop;
136438 VdbeOp *aOp;
136440 aOp = sqlite3VdbeAddOpList(v, ArraySize(readCookie),readCookie,0);
136441 if( ONLY_IF_REALLOC_STRESS(aOp==0) ) break;
136442 aOp[0].p1 = iDb;
136443 aOp[1].p1 = iDb;
136444 aOp[1].p3 = iCookie;
147603 pProgram->aOp = sqlite3VdbeTakeOpArray(v, &pProgram->nOp, &pTop->nMaxArg);
155059 } aOp[] = {
155085 for(i=0; i<ArraySize(aOp); i++){
155087 if( sqlite3StrICmp(pExpr->u.zToken, aOp[i].zOp)==0 ){
155088 *peOp2 = aOp[i].eOp2;
164609 static int aOp[] = { OP_Ge, OP_Ge, OP_Gt, OP_Ge, OP_Ge };
164631 sqlite3VdbeAddOp3(v, aOp[eCond], regZero, sqlite3VdbeCurrentAddr(v)+2, reg);