summaryrefslogtreecommitdiff
path: root/ext/pdo_sqlite/sqlite/src/insert.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/pdo_sqlite/sqlite/src/insert.c')
-rw-r--r--ext/pdo_sqlite/sqlite/src/insert.c20
1 files changed, 8 insertions, 12 deletions
diff --git a/ext/pdo_sqlite/sqlite/src/insert.c b/ext/pdo_sqlite/sqlite/src/insert.c
index 52ac2e55ca..37f9f4ee57 100644
--- a/ext/pdo_sqlite/sqlite/src/insert.c
+++ b/ext/pdo_sqlite/sqlite/src/insert.c
@@ -372,13 +372,13 @@ void sqlite3Insert(
** of the program jumps to it. Create the temporary table, then jump
** back up and execute the SELECT code above.
*/
- sqlite3VdbeChangeP2(v, iInitCode, sqlite3VdbeCurrentAddr(v));
+ sqlite3VdbeJumpHere(v, iInitCode);
sqlite3VdbeAddOp(v, OP_OpenVirtual, srcTab, 0);
sqlite3VdbeAddOp(v, OP_SetNumColumns, srcTab, nColumn);
sqlite3VdbeAddOp(v, OP_Goto, 0, iSelectLoop);
sqlite3VdbeResolveLabel(v, iCleanup);
}else{
- sqlite3VdbeChangeP2(v, iInitCode, sqlite3VdbeCurrentAddr(v));
+ sqlite3VdbeJumpHere(v, iInitCode);
}
}else{
/* This is the case if the data for the INSERT is coming from a VALUES
@@ -470,8 +470,7 @@ void sqlite3Insert(
*/
if( db->flags & SQLITE_CountRows ){
iCntMem = pParse->nMem++;
- sqlite3VdbeAddOp(v, OP_Integer, 0, 0);
- sqlite3VdbeAddOp(v, OP_MemStore, iCntMem, 1);
+ sqlite3VdbeAddOp(v, OP_MemInt, 0, iCntMem);
}
/* Open tables and indices if there are no row triggers */
@@ -817,7 +816,6 @@ void sqlite3GenerateConstraintChecks(
Index *pIdx;
int seenReplace = 0;
int jumpInst1=0, jumpInst2;
- int contAddr;
int hasTwoRowids = (isUpdate && rowidChng);
v = sqlite3GetVdbe(pParse);
@@ -867,7 +865,7 @@ void sqlite3GenerateConstraintChecks(
break;
}
}
- sqlite3VdbeChangeP2(v, addr, sqlite3VdbeCurrentAddr(v));
+ sqlite3VdbeJumpHere(v, addr);
}
/* Test all CHECK constraints
@@ -921,10 +919,9 @@ void sqlite3GenerateConstraintChecks(
break;
}
}
- contAddr = sqlite3VdbeCurrentAddr(v);
- sqlite3VdbeChangeP2(v, jumpInst2, contAddr);
+ sqlite3VdbeJumpHere(v, jumpInst2);
if( isUpdate ){
- sqlite3VdbeChangeP2(v, jumpInst1, contAddr);
+ sqlite3VdbeJumpHere(v, jumpInst1);
sqlite3VdbeAddOp(v, OP_Dup, nCol+1, 1);
sqlite3VdbeAddOp(v, OP_MoveGe, base, 0);
}
@@ -1018,11 +1015,10 @@ void sqlite3GenerateConstraintChecks(
break;
}
}
- contAddr = sqlite3VdbeCurrentAddr(v);
#if NULL_DISTINCT_FOR_UNIQUE
- sqlite3VdbeChangeP2(v, jumpInst1, contAddr);
+ sqlite3VdbeJumpHere(v, jumpInst1);
#endif
- sqlite3VdbeChangeP2(v, jumpInst2, contAddr);
+ sqlite3VdbeJumpHere(v, jumpInst2);
}
}