From: drh Date: Tue, 19 Nov 2013 13:55:34 +0000 (+0000) Subject: Minor performance improvement to sqlite3SerialTypeGet(). X-Git-Tag: version-3.8.2~73 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c138dafe88b1d9ed28668fd828750cacac4c8aff;p=thirdparty%2Fsqlite.git Minor performance improvement to sqlite3SerialTypeGet(). FossilOrigin-Name: 17e8524fc05aa1e6074c19a8ccccc5ab5883103a --- diff --git a/manifest b/manifest index f97a14f179..c865825202 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Change\sNoop-comments\sin\swhere.c\sinto\sModule-comments,\sso\sthat\sthey\sare\nomitting\swithout\sSQLITE_ENABLE_MODULE_COMMENTS. -D 2013-11-19T12:33:23.661 +C Minor\sperformance\simprovement\sto\ssqlite3SerialTypeGet(). +D 2013-11-19T13:55:34.757 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 8a07bebafbfda0eb67728f4bd15a36201662d1a1 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -284,7 +284,7 @@ F src/vdbe.c 5573893423aec2d64871e8d504fadbcdaad39fed F src/vdbe.h c06f0813f853566457ce9cfb1a4a4bc39a5da644 F src/vdbeInt.h 62eb680327011f3a4b0336642b0ca9d6ecc6eb91 F src/vdbeapi.c 93a22a9ba2abe292d5c2cf304d7eb2e894dde0ed -F src/vdbeaux.c dd0f6ab9dc159911facfc0a7a2164af44779bdda +F src/vdbeaux.c 91f9e1fb59561fa7ba312b518b6123982c912d6c F src/vdbeblob.c d883398f7260725147dbf5b40c2b61332aee47f9 F src/vdbemem.c cc529bbf4f13e4e181bdb446bf6e6962ab030b4b F src/vdbesort.c 9d83601f9d6243fe70dd0169a2820c5ddfd48147 @@ -1140,7 +1140,7 @@ F tool/vdbe-compress.tcl f12c884766bd14277f4fcedcae07078011717381 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01 F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff -P 57158d9daf4d777411fffb1c1d20d89b291d9214 -R 4e071f5e12e1562d0bddca81679884f9 +P 3e577f40183c56e60866d8382b044688a1b77eaf +R 9b965afdaedc9147b48bd003e56ae3cc U drh -Z a3df5d2252057bf6401f296b034ac821 +Z 24ee7b128cc14b239861141ccdef04d6 diff --git a/manifest.uuid b/manifest.uuid index fe9187568e..84c9771b22 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -3e577f40183c56e60866d8382b044688a1b77eaf \ No newline at end of file +17e8524fc05aa1e6074c19a8ccccc5ab5883103a \ No newline at end of file diff --git a/src/vdbeaux.c b/src/vdbeaux.c index 166cf7508f..dc284b54ae 100644 --- a/src/vdbeaux.c +++ b/src/vdbeaux.c @@ -2966,15 +2966,12 @@ u32 sqlite3VdbeSerialGet( return 0; } default: { + static const u16 aFlag[] = { MEM_Blob|MEM_Ephem, MEM_Str|MEM_Ephem }; u32 len = (serial_type-12)/2; pMem->z = (char *)buf; pMem->n = len; pMem->xDel = 0; - if( serial_type&0x01 ){ - pMem->flags = MEM_Str | MEM_Ephem; - }else{ - pMem->flags = MEM_Blob | MEM_Ephem; - } + pMem->flags = aFlag[serial_type&1]; return len; } }