Reduce the number of calls to memset() in sqlite3DbMallocZero().
FossilOrigin-Name: cede2bf8e42ac140a8cc75a1d173083f543ba467
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
C Fix\stest\sfile\svtabH.test\sso\sthat\sit\sworks\swith\sSQLITE_ENABLE_ICU\sbuilds.
|
C Reduce\sthe\snumber\sof\scalls\sto\smemset()\sin\ssqlite3DbMallocZero().
|
||||||
D 2016-01-08T08:35:14.576
|
D 2016-01-08T12:46:39.818
|
||||||
F Makefile.in 7c8cc4c2f0179efc6fa9492141d1fb65f4807054
|
F Makefile.in 7c8cc4c2f0179efc6fa9492141d1fb65f4807054
|
||||||
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
|
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
|
||||||
F Makefile.msc e45d8b9b56dfa3f2cd860b2c28bd9d304513b042
|
F Makefile.msc e45d8b9b56dfa3f2cd860b2c28bd9d304513b042
|
||||||
@@ -286,7 +286,7 @@ F src/ctime.c 60e135af364d777a9ab41c97e5e89cd224da6198
|
|||||||
F src/date.c e4655393bb403fa310eef66cc4583d75d4d7fd93
|
F src/date.c e4655393bb403fa310eef66cc4583d75d4d7fd93
|
||||||
F src/dbstat.c ffd63fc8ba7541476ced189b95e95d7f2bc63f78
|
F src/dbstat.c ffd63fc8ba7541476ced189b95e95d7f2bc63f78
|
||||||
F src/delete.c 00af9f08a15ddc5cba5962d3d3e5bf2d67b2e7da
|
F src/delete.c 00af9f08a15ddc5cba5962d3d3e5bf2d67b2e7da
|
||||||
F src/expr.c 38790e65d1219f2b7dc26458f39a5252fe7c60cd
|
F src/expr.c fe55c489362d1429c364e98c877514f4455f45a6
|
||||||
F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb
|
F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb
|
||||||
F src/fkey.c e18b3dff7d47c7bcac5ac4fc178a89b9fd322b44
|
F src/fkey.c e18b3dff7d47c7bcac5ac4fc178a89b9fd322b44
|
||||||
F src/func.c cf5e10af9125b245f1b962e8ba4d520a37818795
|
F src/func.c cf5e10af9125b245f1b962e8ba4d520a37818795
|
||||||
@@ -333,7 +333,7 @@ F src/printf.c af589a27b7d40f6f4f704e9eea99f02f18ad6d32
|
|||||||
F src/random.c ba2679f80ec82c4190062d756f22d0c358180696
|
F src/random.c ba2679f80ec82c4190062d756f22d0c358180696
|
||||||
F src/resolve.c a83b41104e6ff69855d03cd0aaa09e93927ec39f
|
F src/resolve.c a83b41104e6ff69855d03cd0aaa09e93927ec39f
|
||||||
F src/rowset.c eccf6af6d620aaa4579bd3b72c1b6395d9e9fa1e
|
F src/rowset.c eccf6af6d620aaa4579bd3b72c1b6395d9e9fa1e
|
||||||
F src/select.c f8fded11fc443a9f5a73cc5db069d06b34460e2f
|
F src/select.c d84c091185bc160c349e8bf460ebd084dbd77e64
|
||||||
F src/shell.c ed71dc7679e6f087a3f1ea3f9dae4b0fae7209c3
|
F src/shell.c ed71dc7679e6f087a3f1ea3f9dae4b0fae7209c3
|
||||||
F src/sqlite.h.in 7d87d71b9a4689c51fa092f48f16590ff71558e3
|
F src/sqlite.h.in 7d87d71b9a4689c51fa092f48f16590ff71558e3
|
||||||
F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad
|
F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad
|
||||||
@@ -1406,7 +1406,7 @@ F tool/vdbe_profile.tcl 246d0da094856d72d2c12efec03250d71639d19f
|
|||||||
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
|
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
|
||||||
F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b
|
F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b
|
||||||
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
||||||
P af5c7714e993f060841f1e893f754ddf3870e6d0
|
P 19c1f4483e3df7fa1e9ac7c8a510fa1c906ac7c7
|
||||||
R 98f692bc8cb5477e05091b4586394805
|
R 3c7ff6f52f3aab7d6a4fdba1fa3eda2d
|
||||||
U dan
|
U drh
|
||||||
Z fe651ce5a28b2d87f751c475fd148bf4
|
Z 6a7b8518ac5ee1faeba157e0f460fa55
|
||||||
|
|||||||
+1
-1
@@ -1 +1 @@
|
|||||||
19c1f4483e3df7fa1e9ac7c8a510fa1c906ac7c7
|
cede2bf8e42ac140a8cc75a1d173083f543ba467
|
||||||
+2
-1
@@ -461,8 +461,9 @@ Expr *sqlite3ExprAlloc(
|
|||||||
assert( iValue>=0 );
|
assert( iValue>=0 );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pNew = sqlite3DbMallocZero(db, sizeof(Expr)+nExtra);
|
pNew = sqlite3DbMallocRaw(db, sizeof(Expr)+nExtra);
|
||||||
if( pNew ){
|
if( pNew ){
|
||||||
|
memset(pNew, 0, sizeof(Expr));
|
||||||
pNew->op = (u8)op;
|
pNew->op = (u8)op;
|
||||||
pNew->iAgg = -1;
|
pNew->iAgg = -1;
|
||||||
if( pToken ){
|
if( pToken ){
|
||||||
|
|||||||
+11
-6
@@ -111,29 +111,34 @@ Select *sqlite3SelectNew(
|
|||||||
Select *pNew;
|
Select *pNew;
|
||||||
Select standin;
|
Select standin;
|
||||||
sqlite3 *db = pParse->db;
|
sqlite3 *db = pParse->db;
|
||||||
pNew = sqlite3DbMallocZero(db, sizeof(*pNew) );
|
pNew = sqlite3DbMallocRaw(db, sizeof(*pNew) );
|
||||||
if( pNew==0 ){
|
if( pNew==0 ){
|
||||||
assert( db->mallocFailed );
|
assert( db->mallocFailed );
|
||||||
pNew = &standin;
|
pNew = &standin;
|
||||||
memset(pNew, 0, sizeof(*pNew));
|
|
||||||
}
|
}
|
||||||
if( pEList==0 ){
|
if( pEList==0 ){
|
||||||
pEList = sqlite3ExprListAppend(pParse, 0, sqlite3Expr(db,TK_ASTERISK,0));
|
pEList = sqlite3ExprListAppend(pParse, 0, sqlite3Expr(db,TK_ASTERISK,0));
|
||||||
}
|
}
|
||||||
pNew->pEList = pEList;
|
pNew->pEList = pEList;
|
||||||
|
pNew->op = TK_SELECT;
|
||||||
|
pNew->selFlags = selFlags;
|
||||||
|
pNew->iLimit = 0;
|
||||||
|
pNew->iOffset = 0;
|
||||||
|
pNew->addrOpenEphm[0] = -1;
|
||||||
|
pNew->addrOpenEphm[1] = -1;
|
||||||
|
pNew->nSelectRow = 0;
|
||||||
if( pSrc==0 ) pSrc = sqlite3DbMallocZero(db, sizeof(*pSrc));
|
if( pSrc==0 ) pSrc = sqlite3DbMallocZero(db, sizeof(*pSrc));
|
||||||
pNew->pSrc = pSrc;
|
pNew->pSrc = pSrc;
|
||||||
pNew->pWhere = pWhere;
|
pNew->pWhere = pWhere;
|
||||||
pNew->pGroupBy = pGroupBy;
|
pNew->pGroupBy = pGroupBy;
|
||||||
pNew->pHaving = pHaving;
|
pNew->pHaving = pHaving;
|
||||||
pNew->pOrderBy = pOrderBy;
|
pNew->pOrderBy = pOrderBy;
|
||||||
pNew->selFlags = selFlags;
|
pNew->pPrior = 0;
|
||||||
pNew->op = TK_SELECT;
|
pNew->pNext = 0;
|
||||||
pNew->pLimit = pLimit;
|
pNew->pLimit = pLimit;
|
||||||
pNew->pOffset = pOffset;
|
pNew->pOffset = pOffset;
|
||||||
|
pNew->pWith = 0;
|
||||||
assert( pOffset==0 || pLimit!=0 || pParse->nErr>0 || db->mallocFailed!=0 );
|
assert( pOffset==0 || pLimit!=0 || pParse->nErr>0 || db->mallocFailed!=0 );
|
||||||
pNew->addrOpenEphm[0] = -1;
|
|
||||||
pNew->addrOpenEphm[1] = -1;
|
|
||||||
if( db->mallocFailed ) {
|
if( db->mallocFailed ) {
|
||||||
clearSelect(db, pNew, pNew!=&standin);
|
clearSelect(db, pNew, pNew!=&standin);
|
||||||
pNew = 0;
|
pNew = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user