From 2700acaacdedf5450cbcf8ba4c2a9f7d153fe71b Mon Sep 17 00:00:00 2001 From: drh Date: Thu, 8 Dec 2016 01:38:24 +0000 Subject: [PATCH] More changes to take advantage of the sqlite3VdbeAppendP4() method. FossilOrigin-Name: 83bc5e40af9b20afeed008bf3e2669b7ac9e2dc8 --- manifest | 14 +++++++------- manifest.uuid | 2 +- src/insert.c | 5 +++-- src/select.c | 8 ++++---- 4 files changed, 15 insertions(+), 14 deletions(-) diff --git a/manifest b/manifest index e81d777796..aad62e3fe5 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\sthe\ssqlite3VdbeAppendP4()\smethod\sfor\sadding\sP4\scontent\sto\sthe\smost\srecently\ncoded\sinstruction. -D 2016-12-07T21:35:55.152 +C More\schanges\sto\stake\sadvantage\sof\sthe\ssqlite3VdbeAppendP4()\smethod. +D 2016-12-08T01:38:24.218 F Makefile.in 7639c6a09da11a9c7c6f2630fc981ee588d1072d F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc b8ca53350ae545e3562403d5da2a69cec79308da @@ -350,7 +350,7 @@ F src/hash.c 63d0ee752a3b92d4695b2b1f5259c4621b2cfebd F src/hash.h ab34c5c54a9e9de2e790b24349ba5aab3dbb4fd4 F src/hwtime.h 747c1bbe9df21a92e9c50f3bbec1de841dc5e5da F src/in-operator.md 10cd8f4bcd225a32518407c2fb2484089112fd71 -F src/insert.c 4f92d50c588009c46aef4016a8ae4c3c70133621 +F src/insert.c 91ba5d0143e66479081536ebbaff1850ec9f57d9 F src/legacy.c 75d3023be8f0d2b99d60f905090341a03358c58e F src/loadext.c 5d6642d141c07d366e43d359e94ec9de47add41d F src/main.c c0daeb1f716de3e93c573aeed6b164faeddee772 @@ -388,7 +388,7 @@ F src/printf.c f94da4935d1dd25420ac50c6745db1deb35e07c1 F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384 F src/resolve.c bb070cf5f23611c44ab7e4788803684e385fc3fb F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac -F src/select.c 0e4920c4ab7b5751473a1b457ff7d57f4b54e288 +F src/select.c b4bd43e1233c87e8a7cf66150421997b0396417e F src/shell.c 9597efa50a4a27bc6440ad99cbcd7fff6957f514 F src/sqlite.h.in e8e2d108d82647f0a812fdb74accf91c1ec08ddc F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 @@ -1536,7 +1536,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 3954f83798ed78527280c9db6360c62a5134b9ec -R 868d7a6f4c3cd694f9e2b539e54ae53a +P 28883e8f3e92a8015fb5f6c8ae8580833931543d +R 1e20aaec5c4813580d21f8e842d1cbfd U drh -Z c03069fde6cdcd0dcb352e80d6595c45 +Z d1f3c66819deb29754aa3e44d8d64780 diff --git a/manifest.uuid b/manifest.uuid index f752cae81f..e18fdf10e9 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -28883e8f3e92a8015fb5f6c8ae8580833931543d \ No newline at end of file +83bc5e40af9b20afeed008bf3e2669b7ac9e2dc8 \ No newline at end of file diff --git a/src/insert.c b/src/insert.c index 0885a40f30..27e05d4de6 100644 --- a/src/insert.c +++ b/src/insert.c @@ -1305,8 +1305,9 @@ void sqlite3GenerateConstraintChecks( case OE_Fail: { char *zMsg = sqlite3MPrintf(db, "%s.%s", pTab->zName, pTab->aCol[i].zName); - sqlite3VdbeAddOp4(v, OP_HaltIfNull, SQLITE_CONSTRAINT_NOTNULL, onError, - regNewData+1+i, zMsg, P4_DYNAMIC); + sqlite3VdbeAddOp3(v, OP_HaltIfNull, SQLITE_CONSTRAINT_NOTNULL, onError, + regNewData+1+i); + sqlite3VdbeAppendP4(v, zMsg, P4_DYNAMIC); sqlite3VdbeChangeP5(v, P5_ConstraintNotNull); VdbeCoverage(v); break; diff --git a/src/select.c b/src/select.c index 71977c5f78..e63ef837e9 100644 --- a/src/select.c +++ b/src/select.c @@ -4721,8 +4721,8 @@ static void finalizeAggFunctions(Parse *pParse, AggInfo *pAggInfo){ for(i=0, pF=pAggInfo->aFunc; inFunc; i++, pF++){ ExprList *pList = pF->pExpr->x.pList; assert( !ExprHasProperty(pF->pExpr, EP_xIsSelect) ); - sqlite3VdbeAddOp4(v, OP_AggFinal, pF->iMem, pList ? pList->nExpr : 0, 0, - (void*)pF->pFunc, P4_FUNCDEF); + sqlite3VdbeAddOp2(v, OP_AggFinal, pF->iMem, pList ? pList->nExpr : 0); + sqlite3VdbeAppendP4(v, pF->pFunc, P4_FUNCDEF); } } @@ -4773,8 +4773,8 @@ static void updateAccumulator(Parse *pParse, AggInfo *pAggInfo){ if( regHit==0 && pAggInfo->nAccumulator ) regHit = ++pParse->nMem; sqlite3VdbeAddOp4(v, OP_CollSeq, regHit, 0, 0, (char *)pColl, P4_COLLSEQ); } - sqlite3VdbeAddOp4(v, OP_AggStep0, 0, regAgg, pF->iMem, - (void*)pF->pFunc, P4_FUNCDEF); + sqlite3VdbeAddOp3(v, OP_AggStep0, 0, regAgg, pF->iMem); + sqlite3VdbeAppendP4(v, pF->pFunc, P4_FUNCDEF); sqlite3VdbeChangeP5(v, (u8)nArg); sqlite3ExprCacheAffinityChange(pParse, regAgg, nArg); sqlite3ReleaseTempRange(pParse, regAgg, nArg); -- 2.47.2