From: drh Date: Sat, 15 Aug 2020 21:55:14 +0000 (+0000) Subject: Avoid unnecessary calls to the sqlite3GetVdbe() routine. Add assert() X-Git-Tag: version-3.34.0~144 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f0b41745c5142a4c1c8ad311a4b15330284264c8;p=thirdparty%2Fsqlite.git Avoid unnecessary calls to the sqlite3GetVdbe() routine. Add assert() statements to prove each call is unnecessary. FossilOrigin-Name: 86d3790caf92e9cb7a9aaaa110f309b4b6945ac30cfd53fc3e5aa1ec3075ada5 --- diff --git a/manifest b/manifest index 9b479bfa56..444664d2aa 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Omit\sthe\sunnecessary\snot-NULL\scheck\son\sthe\supper\sbound\sof\sa\sforward\sindex\nrange\sscan.\s\sThe\ssubsequent\sOP_IdxGT\swill\salways\scatch\sthe\sNULL.\s\sSimilarly,\nomit\sthe\snot-NULL\scheck\son\sthe\slower\sbound\sof\sa\sreverse\sindex\srange\sscan,\nas\sthe\sSeekLE\sopcode\swill\sdisallow\sthe\sNULL. -D 2020-08-15T19:58:59.495 +C Avoid\sunnecessary\scalls\sto\sthe\ssqlite3GetVdbe()\sroutine.\s\sAdd\sassert()\nstatements\sto\sprove\seach\scall\sis\sunnecessary. +D 2020-08-15T21:55:14.374 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -479,7 +479,7 @@ F src/btmutex.c 8acc2f464ee76324bf13310df5692a262b801808984c1b79defb2503bbafadb6 F src/btree.c 1439fd9b45d4d1883c53752daef42af489adaa1a1508fa39dedbc9c80ea21a2f F src/btree.h 7af72bbb4863c331c8f6753277ab40ee67d2a2125a63256d5c25489722ec162b F src/btreeInt.h 83166f6daeb91062b6ae9ee6247b3ad07e40eba58f3c05ba9e8dedad4ab1ea38 -F src/build.c dbdaee54ffef924a070eb6202017e10d6be56baab953ef0a8e714a6def683198 +F src/build.c 20637935b1e340c91c1f977f0806a647cf37d4404f0dc9d85a0ada2a97321e6c F src/callback.c d0b853dd413255d2e337b34545e54d888ea02f20da5ad0e63585b389624c4a6c F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e F src/ctime.c e98518d2d3d4029a13c805e07313fb60c877be56db76e90dd5f3af73085d0ce6 @@ -496,7 +496,7 @@ F src/hash.c 8d7dda241d0ebdafb6ffdeda3149a412d7df75102cecfc1021c98d6219823b19 F src/hash.h 9d56a9079d523b648774c1784b74b89bd93fac7b365210157482e4319a468f38 F src/hwtime.h cb1d7e3e1ed94b7aa6fde95ae2c2daccc3df826be26fc9ed7fd90d1750ae6144 F src/in-operator.md 10cd8f4bcd225a32518407c2fb2484089112fd71 -F src/insert.c 957254a2d0542597455d0d4c640e4e3f3eea8c6d78f04582df03dfc626f07925 +F src/insert.c 38abe677d1fbcdf30e58f335a85aa1f6cab131335128a4b32e069c5c784f961d F src/legacy.c d7874bc885906868cd51e6c2156698f2754f02d9eee1bae2d687323c3ca8e5aa F src/loadext.c 436af4968c6954d304fce9efa12719367bd8f37b19b93b71d6ad607e85adbb47 F src/main.c 09580279145f27f3db206ef44dcb3a8875a42644230f79c7e54aff35e71668f0 @@ -1879,7 +1879,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 7fee0b1075d622835dc6828c061be516102da9e2809f52d9ab7c4bbef7dfb871 -R 4ca85f2291e05990c70f5c4c2f0f7c45 +P e51ecadcbdef5ce6e41d68412aee70aa4a1416c850358a6fa7e9a1ab443e719d +R efbcf9be3b3a890db43b8ca127b0dc88 U drh -Z c2f4d1de0fc44fa1e0f3e0d1d11812a8 +Z e7716cf2731eceb23b87ee8b9b7f7346 diff --git a/manifest.uuid b/manifest.uuid index 4dbdaad191..c8a17a0977 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -e51ecadcbdef5ce6e41d68412aee70aa4a1416c850358a6fa7e9a1ab443e719d \ No newline at end of file +86d3790caf92e9cb7a9aaaa110f309b4b6945ac30cfd53fc3e5aa1ec3075ada5 \ No newline at end of file diff --git a/src/build.c b/src/build.c index aa0f919bc6..5d71b96690 100644 --- a/src/build.c +++ b/src/build.c @@ -90,9 +90,7 @@ void sqlite3TableLock( */ static void codeTableLocks(Parse *pParse){ int i; - Vdbe *pVdbe; - - pVdbe = sqlite3GetVdbe(pParse); + Vdbe *pVdbe = pParse->pVdbe; assert( pVdbe!=0 ); /* sqlite3GetVdbe cannot fail: VDBE already allocated */ for(i=0; inTableLock; i++){ diff --git a/src/insert.c b/src/insert.c index 789b3b6634..a4759ea766 100644 --- a/src/insert.c +++ b/src/insert.c @@ -1531,7 +1531,7 @@ void sqlite3GenerateConstraintChecks( isUpdate = regOldData!=0; db = pParse->db; - v = sqlite3GetVdbe(pParse); + v = pParse->pVdbe; assert( v!=0 ); assert( pTab->pSelect==0 ); /* This table is not a VIEW */ nCol = pTab->nCol; @@ -2304,7 +2304,7 @@ void sqlite3CompleteInsertion( || update_flags==(OPFLAG_ISUPDATE|OPFLAG_SAVEPOSITION) ); - v = sqlite3GetVdbe(pParse); + v = pParse->pVdbe; assert( v!=0 ); assert( pTab->pSelect==0 ); /* This table is not a VIEW */ for(i=0, pIdx=pTab->pIndex; pIdx; pIdx=pIdx->pNext, i++){ @@ -2405,7 +2405,7 @@ int sqlite3OpenTableAndIndices( return 0; } iDb = sqlite3SchemaToIndex(pParse->db, pTab->pSchema); - v = sqlite3GetVdbe(pParse); + v = pParse->pVdbe; assert( v!=0 ); if( iBase<0 ) iBase = pParse->nTab; iDataCur = iBase++;