From: drh Date: Fri, 1 Aug 2014 15:51:36 +0000 (+0000) Subject: Clean up the IN operator code generation logic to make it easier to reason X-Git-Tag: version-3.8.6~41 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5c3e9cf9de273e236833bf2465f67f26a348c116;p=thirdparty%2Fsqlite.git Clean up the IN operator code generation logic to make it easier to reason about. In the process, improve code generation to omit some unused OP_Null operations. FossilOrigin-Name: 7c6fbcfe6ed5739e8e4639b7b123fbf9828cbfc0 --- 5c3e9cf9de273e236833bf2465f67f26a348c116 diff --cc manifest index f13081bfc1,76ab0745e9..d534cb249b --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C Enhance\sthe\sPRAGMA\sintegrity_check\scommand\sto\sdetect\sUNIQUE\sand\sNOT\sNULL\nconstraint\sviolations. - D 2014-08-01T01:40:33.869 -C The\sidea\sof\scoding\sIN\soperator\swith\sa\sshort\slist\son\sthe\sRHS\sas\san\sOR\sexpression\nturns\sout\sto\sbe\shelpful.\s\sIf\sthe\slist\sis\sof\slength\s1\sor\s2,\sthe\sOR\sexpression\nis\svery\sslightly\sfaster,\sbut\sthe\sephemeral\stable\sapproach\sis\sclearly\sbetter\sfor\nall\slist\slengths\sgreater\sthan\s2.\s\sBetter\sto\skeep\sthe\scode\ssimple. -D 2014-08-01T15:34:36.551 ++C Clean\sup\sthe\sIN\soperator\scode\sgeneration\slogic\sto\smake\sit\seasier\sto\sreason\nabout.\s\sIn\sthe\sprocess,\simprove\scode\sgeneration\sto\somit\ssome\sunused\sOP_Null\noperations. ++D 2014-08-01T15:51:36.528 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5eb79e334a5de69c87740edd56af6527dd219308 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@@ -1185,7 -1185,7 +1185,8 @@@ F tool/vdbe_profile.tcl 67746953071a9f8 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f - P e75b26ee357bb3d3c1a539b05d633ebf314726d7 - R 50d518176c08d9fef67243df4085599b -P ee0fd6aaf94cda1dce3fe752bfe3b0f83e0043f1 ++P 9abcf2698c09f4f6a44a68e74f9f6b538f3253d6 e13175d3579e1045165bab091b3b28951d691704 + R b49330a02feffafe84f051ae1dbb9076 ++T +closed e13175d3579e1045165bab091b3b28951d691704 U drh - Z ae546b77e53655a859301e9ce422b440 -Z f695386e744e4159654587b52ac0d789 ++Z e21436d3fd2e7daacda65f50d724cf15 diff --cc manifest.uuid index 087d6ad801,9b33d2f23a..06cf7d6673 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 9abcf2698c09f4f6a44a68e74f9f6b538f3253d6 -e13175d3579e1045165bab091b3b28951d691704 ++7c6fbcfe6ed5739e8e4639b7b123fbf9828cbfc0