From: dan Date: Wed, 11 Apr 2018 14:11:53 +0000 (+0000) Subject: Minor simplification to internal function generateSortTail(). X-Git-Tag: version-3.24.0~156 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d6189eafa4d0290f644819f091a2138ce8d2f647;p=thirdparty%2Fsqlite.git Minor simplification to internal function generateSortTail(). FossilOrigin-Name: f32cdb41ca213cfcfe0bb5bfe56930d43e55525fa5640274b00f1ccce7f69634 --- diff --git a/manifest b/manifest index 4d2685944b..4739c8e9b2 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Include\sthe\s'sqlite3rebaser_'\sAPIs\sin\sthe\sWindows\s'.def'\sfile. -D 2018-04-10T18:56:21.837 +C Minor\ssimplification\sto\sinternal\sfunction\sgenerateSortTail(). +D 2018-04-11T14:11:53.499 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F Makefile.in 7016fc56c6b9bfe5daac4f34be8be38d8c0b5fab79ccbfb764d3b23bf1c6fff3 @@ -491,7 +491,7 @@ F src/printf.c d3b7844ddeb11fbbdd38dd84d09c9c1ac171d21fb038473c3aa97981201cc660 F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384 F src/resolve.c 66c73fcb7719b8ff0e841b58338f13604ff3e2b50a723f9b8f383595735262f6 F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac -F src/select.c dfcd77a9bec9d2bcb221ed93c153cb38cc609faa6404e2dc0ae9491aac110112 +F src/select.c 41e857c107be5fb972b87a4cbb948c8b1191f339c1e32a65742581573932e119 F src/shell.c.in cc960721e56ebc1a78773bb5d2f5608b54275f945cbe49e4afe919d6888062a7 F src/sqlite.h.in e0be726ea6e4e6571724d39d242472ecd8bd1ba6f84ade88e1641bde98a6d02b F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 @@ -1717,7 +1717,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 4bb2294022060e61de7da5c227a69ccd846ba330e31626ebcd59a94efd148b3b -R cf8331c45ba4583fd3f926761aab3520 -U mistachkin -Z 052337a7502d1a648ca59d978c462084 +P 56e4965f7ac850c59596120878434f5ef023e77919ef9416d20812eac764bac1 +R 48bda25c5666e906d4ef80813706fd24 +U dan +Z 085cbe7783541af0757121e42293d25a diff --git a/manifest.uuid b/manifest.uuid index 332ccafbd2..961ddab67e 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -56e4965f7ac850c59596120878434f5ef023e77919ef9416d20812eac764bac1 \ No newline at end of file +f32cdb41ca213cfcfe0bb5bfe56930d43e55525fa5640274b00f1ccce7f69634 \ No newline at end of file diff --git a/src/select.c b/src/select.c index 4ee752173a..3e765c8464 100644 --- a/src/select.c +++ b/src/select.c @@ -1247,7 +1247,6 @@ static void generateSortTail( int iCol; int nKey; int iSortTab; /* Sorter cursor to read from */ - int nSortData; /* Trailing values to read from sorter */ int i; int bSeq; /* True if sorter record includes seq. no. */ struct ExprList_item *aOutEx = p->pEList->a; @@ -1262,11 +1261,9 @@ static void generateSortTail( if( eDest==SRT_Output || eDest==SRT_Coroutine || eDest==SRT_Mem ){ regRowid = 0; regRow = pDest->iSdst; - nSortData = nColumn; }else{ regRowid = sqlite3GetTempReg(pParse); regRow = sqlite3GetTempRange(pParse, nColumn); - nSortData = nColumn; } nKey = pOrderBy->nExpr - pSort->nOBSat; if( pSort->sortFlags & SORTFLAG_UseSorter ){ @@ -1275,7 +1272,7 @@ static void generateSortTail( if( pSort->labelBkOut ){ addrOnce = sqlite3VdbeAddOp0(v, OP_Once); VdbeCoverage(v); } - sqlite3VdbeAddOp3(v, OP_OpenPseudo, iSortTab, regSortOut, nKey+1+nSortData); + sqlite3VdbeAddOp3(v, OP_OpenPseudo, iSortTab, regSortOut, nKey+1+nColumn); if( addrOnce ) sqlite3VdbeJumpHere(v, addrOnce); addr = 1 + sqlite3VdbeAddOp2(v, OP_SorterSort, iTab, addrBreak); VdbeCoverage(v); @@ -1288,10 +1285,10 @@ static void generateSortTail( iSortTab = iTab; bSeq = 1; } - for(i=0, iCol=nKey+bSeq-1; i=0; i--){ + for(i=nColumn-1; i>=0; i--){ int iRead; if( aOutEx[i].u.x.iOrderByCol ){ iRead = aOutEx[i].u.x.iOrderByCol-1;