mirror of
https://github.com/sqlite/sqlite.git
synced 2025-11-15 11:41:13 +03:00
Streamline the processing of the AND operator. Slightly smaller and faster.
FossilOrigin-Name: 7713996aa99ce6dd35b5a2db74dd26658fb8d9817169b2a7531cdef6edb41403
This commit is contained in:
@@ -999,7 +999,7 @@ static void codeCursorHint(
|
||||
}
|
||||
|
||||
/* If we survive all prior tests, that means this term is worth hinting */
|
||||
pExpr = sqlite3ExprAnd(db, pExpr, sqlite3ExprDup(db, pTerm->pExpr, 0));
|
||||
pExpr = sqlite3ExprAnd(pParse, pExpr, sqlite3ExprDup(db, pTerm->pExpr, 0));
|
||||
}
|
||||
if( pExpr!=0 ){
|
||||
sWalker.xExprCallback = codeCursorHintFixExpr;
|
||||
@@ -1964,7 +1964,7 @@ Bitmask sqlite3WhereCodeOneLoopStart(
|
||||
if( (pWC->a[iTerm].eOperator & WO_ALL)==0 ) continue;
|
||||
testcase( pWC->a[iTerm].wtFlags & TERM_ORINFO );
|
||||
pExpr = sqlite3ExprDup(db, pExpr, 0);
|
||||
pAndExpr = sqlite3ExprAnd(db, pAndExpr, pExpr);
|
||||
pAndExpr = sqlite3ExprAnd(pParse, pAndExpr, pExpr);
|
||||
}
|
||||
if( pAndExpr ){
|
||||
/* The extra 0x10000 bit on the opcode is masked off and does not
|
||||
|
||||
Reference in New Issue
Block a user