diff options
author | drh <drh@noemail.net> | 2019-04-05 20:56:46 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2019-04-05 20:56:46 +0000 |
commit | f1722baaf80218bcad87597803510c4e214a5811 (patch) | |
tree | 0015de1f897c455bd62129d55e0c6fbd1c3986e4 /src/wherecode.c | |
parent | 6cf3009f6c92f91ecdf6de8a969e6febc0df09bc (diff) | |
download | sqlite-f1722baaf80218bcad87597803510c4e214a5811.tar.gz sqlite-f1722baaf80218bcad87597803510c4e214a5811.zip |
Eliminate the tool/addopcodes.tcl script. The purpose of that script was to
keep the number of parser codes below 256 in order to save parser table space.
But we have long since blown through that ceiling so the addopcodes.tcl script
was just needless complexity. There is no longer any reason to keep it around.
FossilOrigin-Name: d272819298083ebbde57962a2938925b1aaa1caf03e48bb3ea26ad91e0461d84
Diffstat (limited to 'src/wherecode.c')
-rw-r--r-- | src/wherecode.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/wherecode.c b/src/wherecode.c index 51fc7a52e..f71069018 100644 --- a/src/wherecode.c +++ b/src/wherecode.c @@ -1967,7 +1967,12 @@ Bitmask sqlite3WhereCodeOneLoopStart( pAndExpr = sqlite3ExprAnd(db, pAndExpr, pExpr); } if( pAndExpr ){ - pAndExpr = sqlite3PExpr(pParse, TK_AND|TKFLG_DONTFOLD, 0, pAndExpr); + /* The extra 0x10000 bit on the opcode is masked off and does not + ** become part of the new Expr.op. However, it does make the + ** op==TK_AND comparison inside of sqlite3PExpr() false, and this + ** prevents sqlite3PExpr() from implementing AND short-circuit + ** optimization, which we do not want here. */ + pAndExpr = sqlite3PExpr(pParse, TK_AND|0x10000, 0, pAndExpr); } } |