mirror of https://github.com/sqlite/sqlite
Remove some cruft from the VDBE. Bring comments up to date. (CVS 2888)
FossilOrigin-Name: 41aef6496a10c81e1095408dc8f69740d6ea7627
This commit is contained in:
parent
d59ba6ce61
commit
6f58f7069b
12
manifest
12
manifest
|
@ -1,5 +1,5 @@
|
|||
C Reduce\smemory\srequirements\sfor\sORDER\sBY\scombined\swith\sLIMIT.\s\sTicket\s#1586.\s(CVS\s2887)
|
||||
D 2006-01-08T05:02:55
|
||||
C Remove\ssome\scruft\sfrom\sthe\sVDBE.\s\sBring\scomments\sup\sto\sdate.\s(CVS\s2888)
|
||||
D 2006-01-08T05:26:41
|
||||
F Makefile.in c79fbdaa264c6afcd435f2fb492551de5a8cf80d
|
||||
F Makefile.linux-gcc aee18d8a05546dcf1888bd4547e442008a49a092
|
||||
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
|
||||
|
@ -84,7 +84,7 @@ F src/update.c 29ba0385c8639803cd8e6e616e99096a0bc10443
|
|||
F src/utf.c b7bffac4260177ae7f83c01d025fe0f5ed70ce71
|
||||
F src/util.c 8a3ef3c1b345cdadcee33ce4537c63bb0fda0ed8
|
||||
F src/vacuum.c a7301804d4f849da0ce9d869219c71c6d621c34e
|
||||
F src/vdbe.c 87a796e2889283b681be71076fa6b6318561f2bd
|
||||
F src/vdbe.c 21a1cb8500e5482aa4b670ce4788b7474d3b8bb7
|
||||
F src/vdbe.h 8729a4ee16ff9aeab2af9667df3cf300ff978e13
|
||||
F src/vdbeInt.h 5451cf71f229e366ac543607c0a17f36e5737ea9
|
||||
F src/vdbeapi.c 7335569b1bad946ba53892384b4b1534e877b1ee
|
||||
|
@ -335,7 +335,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9
|
|||
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
|
||||
F www/version3.tcl a99cf5f6d8bd4d5537584a2b342f0fb9fa601d8b
|
||||
F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
|
||||
P 0ae461313c1642a49a9f6cda608c42c7c0053ce4
|
||||
R 79c569a066edb0857c89ee545cff9b3e
|
||||
P 55e703ecac6e03d7364c2d919ba18d7293d6b7f6
|
||||
R b966bf179439ff438aedbc30041f68e4
|
||||
U drh
|
||||
Z e2eb2297d27afb66b9b69713714cfa42
|
||||
Z 3ef314255d1b0a31cdba3fda0e06ec3c
|
||||
|
|
|
@ -1 +1 @@
|
|||
55e703ecac6e03d7364c2d919ba18d7293d6b7f6
|
||||
41aef6496a10c81e1095408dc8f69740d6ea7627
|
33
src/vdbe.c
33
src/vdbe.c
|
@ -43,7 +43,7 @@
|
|||
** in this file for details. If in doubt, do not deviate from existing
|
||||
** commenting and indentation practices when changing or adding code.
|
||||
**
|
||||
** $Id: vdbe.c,v 1.516 2006/01/07 18:48:26 drh Exp $
|
||||
** $Id: vdbe.c,v 1.517 2006/01/08 05:26:41 drh Exp $
|
||||
*/
|
||||
#include "sqliteInt.h"
|
||||
#include "os.h"
|
||||
|
@ -4277,14 +4277,12 @@ case OP_MemMax: { /* no-push */
|
|||
}
|
||||
#endif /* SQLITE_OMIT_AUTOINCREMENT */
|
||||
|
||||
/* Opcode: MemIncr P1 P2 *
|
||||
/* Opcode: MemIncr P1 * *
|
||||
**
|
||||
** Increment the integer valued memory cell P1 by 1. If P2 is not zero
|
||||
** and the result after the increment is exactly 0, then jump
|
||||
** to P2.
|
||||
** Increment the integer valued memory cell P1 by 1.
|
||||
**
|
||||
** This instruction throws an error if the memory cell is not initially
|
||||
** an integer.
|
||||
** It is illegal to use this instruction on a memory cell that does
|
||||
** not contain an integer. An assertion fault will result if you try.
|
||||
*/
|
||||
case OP_MemIncr: { /* no-push */
|
||||
int i = pOp->p1;
|
||||
|
@ -4293,24 +4291,25 @@ case OP_MemIncr: { /* no-push */
|
|||
pMem = &p->aMem[i];
|
||||
assert( pMem->flags==MEM_Int );
|
||||
pMem->i++;
|
||||
if( pOp->p2>0 && pMem->i==0 ){
|
||||
pc = pOp->p2 - 1;
|
||||
}
|
||||
assert( pOp->p2==0 );
|
||||
break;
|
||||
}
|
||||
|
||||
/* Opcode: IfMemPos P1 P2 *
|
||||
**
|
||||
** If the value of memory cell P1 is 1 or greater, jump to P2. If
|
||||
** the memory cell holds an integer of 0 or less or if it holds something
|
||||
** that is not an integer, then fall thru.
|
||||
** the memory cell holds an integer of 0 or less.
|
||||
**
|
||||
** It is illegal to use this instruction on a memory cell that does
|
||||
** not contain an integer. An assertion fault will result if you try.
|
||||
*/
|
||||
case OP_IfMemPos: { /* no-push */
|
||||
int i = pOp->p1;
|
||||
Mem *pMem;
|
||||
assert( i>=0 && i<p->nMem );
|
||||
pMem = &p->aMem[i];
|
||||
if( pMem->flags==MEM_Int && pMem->i>0 ){
|
||||
assert( pMem->flags==MEM_Int );
|
||||
if( pMem->i>0 ){
|
||||
pc = pOp->p2 - 1;
|
||||
}
|
||||
break;
|
||||
|
@ -4318,14 +4317,18 @@ case OP_IfMemPos: { /* no-push */
|
|||
|
||||
/* Opcode: IfMemZero P1 P2 *
|
||||
**
|
||||
** If the value of memory cell P1 is exactly 0, jump to P2.
|
||||
** If the value of memory cell P1 is exactly 0, jump to P2.
|
||||
**
|
||||
** It is illegal to use this instruction on a memory cell that does
|
||||
** not contain an integer. An assertion fault will result if you try.
|
||||
*/
|
||||
case OP_IfMemZero: { /* no-push */
|
||||
int i = pOp->p1;
|
||||
Mem *pMem;
|
||||
assert( i>=0 && i<p->nMem );
|
||||
pMem = &p->aMem[i];
|
||||
if( pMem->flags==MEM_Int && pMem->i==0 ){
|
||||
assert( pMem->flags==MEM_Int );
|
||||
if( pMem->i==0 ){
|
||||
pc = pOp->p2 - 1;
|
||||
}
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue