aboutsummaryrefslogtreecommitdiff
path: root/src/wherecode.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2018-08-04 15:53:55 +0000
committerdrh <drh@noemail.net>2018-08-04 15:53:55 +0000
commit8c607191320f828c28418fc42fc64e21f1e3e911 (patch)
tree2550c6ee5e4ba4b5c1e36343c3002f4d9841f320 /src/wherecode.c
parent38ee2d9197a7a3c0e1c3567f2d99554e6e77f2c4 (diff)
downloadsqlite-8c607191320f828c28418fc42fc64e21f1e3e911.tar.gz
sqlite-8c607191320f828c28418fc42fc64e21f1e3e911.zip
Further logic simplifications that flow out of the omission of the column cache.
FossilOrigin-Name: 7d9072b027cc28dd8ecf5e2686d821017997445c15124eebe2839984622af4db
Diffstat (limited to 'src/wherecode.c')
-rw-r--r--src/wherecode.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/wherecode.c b/src/wherecode.c
index 38fa89ffc..6b819da66 100644
--- a/src/wherecode.c
+++ b/src/wherecode.c
@@ -1969,23 +1969,23 @@ Bitmask sqlite3WhereCodeOneLoopStart(
** row will be skipped in subsequent sub-WHERE clauses.
*/
if( (pWInfo->wctrlFlags & WHERE_DUPLICATES_OK)==0 ){
- int r;
int iSet = ((ii==pOrWc->nTerm-1)?-1:ii);
if( HasRowid(pTab) ){
- r = sqlite3ExprCodeGetColumn(pParse, pTab, -1, iCur, regRowid, 0);
+ sqlite3ExprCodeGetColumnOfTable(v, pTab, iCur, -1, regRowid);
jmp1 = sqlite3VdbeAddOp4Int(v, OP_RowSetTest, regRowset, 0,
- r,iSet);
+ regRowid, iSet);
VdbeCoverage(v);
}else{
Index *pPk = sqlite3PrimaryKeyIndex(pTab);
int nPk = pPk->nKeyCol;
int iPk;
+ int r;
/* Read the PK into an array of temp registers. */
r = sqlite3GetTempRange(pParse, nPk);
for(iPk=0; iPk<nPk; iPk++){
int iCol = pPk->aiColumn[iPk];
- sqlite3ExprCodeGetColumnToReg(pParse, pTab, iCol, iCur, r+iPk);
+ sqlite3ExprCodeGetColumnOfTable(v, pTab, iCur, iCol, r+iPk);
}
/* Check if the temp table already contains this key. If so,