mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-08 14:02:16 +03:00
Avoid unnecessary calls to sqlite3VdbeSerialType() from within
sqlite3VdbeSerialPut(). FossilOrigin-Name: 079c04a5013074b68f7d90f1ce8bf8e7092ad8a2
This commit is contained in:
18
manifest
18
manifest
@@ -1,5 +1,5 @@
|
|||||||
C In\sthe\sOP_MakeRecord\sopcode,\sfactor\sout\saffinity\schanges\sinto\sseparate\sloop,\nfor\sa\sslight\sperformance\sadvantage.
|
C Avoid\sunnecessary\scalls\sto\ssqlite3VdbeSerialType()\sfrom\swithin\nsqlite3VdbeSerialPut().
|
||||||
D 2013-12-10T20:53:01.865
|
D 2013-12-10T21:38:08.728
|
||||||
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
|
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
|
||||||
F Makefile.in e1a9b4258bbde53f5636f4e238c65b7e11459e2b
|
F Makefile.in e1a9b4258bbde53f5636f4e238c65b7e11459e2b
|
||||||
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
|
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
|
||||||
@@ -280,13 +280,13 @@ F src/update.c d1c2477dcf14d90999d1935af4efb4806553250b
|
|||||||
F src/utf.c 6fc6c88d50448c469c5c196acf21617a24f90269
|
F src/utf.c 6fc6c88d50448c469c5c196acf21617a24f90269
|
||||||
F src/util.c 76ed0519296e3f62e97e57dab1999e34184c8e49
|
F src/util.c 76ed0519296e3f62e97e57dab1999e34184c8e49
|
||||||
F src/vacuum.c 3728d74919d4fb1356f9e9a13e27773db60b7179
|
F src/vacuum.c 3728d74919d4fb1356f9e9a13e27773db60b7179
|
||||||
F src/vdbe.c c5b17309048f28ff79e0b65aeb72d365a3a415a1
|
F src/vdbe.c 02fac31f3921b0238d0ca72c90db31eb0c91e358
|
||||||
F src/vdbe.h c06f0813f853566457ce9cfb1a4a4bc39a5da644
|
F src/vdbe.h c06f0813f853566457ce9cfb1a4a4bc39a5da644
|
||||||
F src/vdbeInt.h 7e38eef8f4bd7141e1638b0eacaebf9bc41b26bc
|
F src/vdbeInt.h e103e9223787cb11e0de48cefb1cdb9fef18e2e8
|
||||||
F src/vdbeapi.c 93a22a9ba2abe292d5c2cf304d7eb2e894dde0ed
|
F src/vdbeapi.c 93a22a9ba2abe292d5c2cf304d7eb2e894dde0ed
|
||||||
F src/vdbeaux.c d64bc2a057e77aef3e2a4bc6670b80f516a36d55
|
F src/vdbeaux.c a66fde9e0ecf1d8b7fe60162d28bb6b95f2f6c30
|
||||||
F src/vdbeblob.c 8cd05a5630e6d5563ad017bf82edaf812b28acde
|
F src/vdbeblob.c 8cd05a5630e6d5563ad017bf82edaf812b28acde
|
||||||
F src/vdbemem.c a381254caef0d102b091923a309c4c3a06a65393
|
F src/vdbemem.c dedc9ee05a9d5f7c4913ee623db8d41bdb24363f
|
||||||
F src/vdbesort.c 9d83601f9d6243fe70dd0169a2820c5ddfd48147
|
F src/vdbesort.c 9d83601f9d6243fe70dd0169a2820c5ddfd48147
|
||||||
F src/vdbetrace.c e7ec40e1999ff3c6414424365d5941178966dcbc
|
F src/vdbetrace.c e7ec40e1999ff3c6414424365d5941178966dcbc
|
||||||
F src/vtab.c 21b932841e51ebd7d075e2d0ad1415dce8d2d5fd
|
F src/vtab.c 21b932841e51ebd7d075e2d0ad1415dce8d2d5fd
|
||||||
@@ -1146,7 +1146,7 @@ F tool/vdbe-compress.tcl f12c884766bd14277f4fcedcae07078011717381
|
|||||||
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
|
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
|
||||||
F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01
|
F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01
|
||||||
F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff
|
F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff
|
||||||
P 48ecf18774ba9572d86696c60d87007a619d9f53
|
P 1c6ee9b85f61e5cdb5d9b7815cddf526dc78aaa7
|
||||||
R 8c35d8f315102eab592f6f641be2ff5b
|
R 362b67923e10115892fb8388984a2dc3
|
||||||
U drh
|
U drh
|
||||||
Z ddd4b5e4f3e2f25b93fe4a6cd498d64a
|
Z 43fa988f600d23d399ec0be485c6471b
|
||||||
|
@@ -1 +1 @@
|
|||||||
1c6ee9b85f61e5cdb5d9b7815cddf526dc78aaa7
|
079c04a5013074b68f7d90f1ce8bf8e7092ad8a2
|
@@ -2662,7 +2662,7 @@ case OP_MakeRecord: {
|
|||||||
do{
|
do{
|
||||||
serial_type = sqlite3VdbeSerialType(pRec, file_format);
|
serial_type = sqlite3VdbeSerialType(pRec, file_format);
|
||||||
i += putVarint32(&zNewRecord[i], serial_type); /* serial type */
|
i += putVarint32(&zNewRecord[i], serial_type); /* serial type */
|
||||||
j += sqlite3VdbeSerialPut(&zNewRecord[j], pRec, file_format); /* content */
|
j += sqlite3VdbeSerialPut(&zNewRecord[j], pRec, serial_type, file_format);
|
||||||
}while( (++pRec)<=pLast );
|
}while( (++pRec)<=pLast );
|
||||||
assert( i==nHdr );
|
assert( i==nHdr );
|
||||||
assert( j==nByte );
|
assert( j==nByte );
|
||||||
|
@@ -389,7 +389,7 @@ void sqlite3VdbePrintOp(FILE*, int, Op*);
|
|||||||
#endif
|
#endif
|
||||||
u32 sqlite3VdbeSerialTypeLen(u32);
|
u32 sqlite3VdbeSerialTypeLen(u32);
|
||||||
u32 sqlite3VdbeSerialType(Mem*, int);
|
u32 sqlite3VdbeSerialType(Mem*, int);
|
||||||
u32 sqlite3VdbeSerialPut(unsigned char*, Mem*, int);
|
u32 sqlite3VdbeSerialPut(unsigned char*, Mem*, u32, int);
|
||||||
u32 sqlite3VdbeSerialGet(const unsigned char*, u32, Mem*);
|
u32 sqlite3VdbeSerialGet(const unsigned char*, u32, Mem*);
|
||||||
void sqlite3VdbeDeleteAuxData(Vdbe*, int, int);
|
void sqlite3VdbeDeleteAuxData(Vdbe*, int, int);
|
||||||
|
|
||||||
|
@@ -2835,8 +2835,7 @@ static u64 floatSwap(u64 in){
|
|||||||
** of bytes in the zero-filled tail is included in the return value only
|
** of bytes in the zero-filled tail is included in the return value only
|
||||||
** if those bytes were zeroed in buf[].
|
** if those bytes were zeroed in buf[].
|
||||||
*/
|
*/
|
||||||
u32 sqlite3VdbeSerialPut(u8 *buf, Mem *pMem, int file_format){
|
u32 sqlite3VdbeSerialPut(u8 *buf, Mem *pMem, u32 serial_type, int file_format){
|
||||||
u32 serial_type = sqlite3VdbeSerialType(pMem, file_format);
|
|
||||||
u32 len;
|
u32 len;
|
||||||
|
|
||||||
/* Integer and Real */
|
/* Integer and Real */
|
||||||
|
@@ -1219,7 +1219,7 @@ static void recordFunc(
|
|||||||
}else{
|
}else{
|
||||||
aRet[0] = nSerial+1;
|
aRet[0] = nSerial+1;
|
||||||
sqlite3PutVarint(&aRet[1], iSerial);
|
sqlite3PutVarint(&aRet[1], iSerial);
|
||||||
sqlite3VdbeSerialPut(&aRet[1+nSerial], argv[0], file_format);
|
sqlite3VdbeSerialPut(&aRet[1+nSerial], argv[0], iSerial, file_format);
|
||||||
sqlite3_result_blob(context, aRet, nRet, SQLITE_TRANSIENT);
|
sqlite3_result_blob(context, aRet, nRet, SQLITE_TRANSIENT);
|
||||||
sqlite3DbFree(db, aRet);
|
sqlite3DbFree(db, aRet);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user