]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Import the automatic comment generating changes from trunk.
authordrh <drh@noemail.net>
Tue, 29 Oct 2013 20:47:26 +0000 (20:47 +0000)
committerdrh <drh@noemail.net>
Tue, 29 Oct 2013 20:47:26 +0000 (20:47 +0000)
FossilOrigin-Name: 8bb51da1305d5e35c7b75bbb176c21e04ea2a48a

1  2 
manifest
manifest.uuid
src/vdbe.c
src/vdbeaux.c

diff --cc manifest
index f2dbc032dbe96134512dc356de11336028f75c2d,5cb15b27334c6ae45c1c8e2e02efe7f878506280..a17919ee098c5eef5da3cf8e4cdb3ece9bbdc832
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Improved\scomments\son\sthe\sconstraint\schecking\slogic.
- D 2013-10-29T16:14:35.997
 -C Automatically\sgenerated\scomments\son\smany\sVDBE\sopcodes\swhen\sin\sSQLITE_DEBUG\nmost.\s\sComments\sderive\sfrom\sthe\s"Synopsis:"\sfield\sadded\sto\seach\sopcode\ndefinition\sin\svdbe.c.
 -D 2013-10-29T20:40:47.279
++C Import\sthe\sautomatic\scomment\sgenerating\schanges\sfrom\strunk.
++D 2013-10-29T20:47:26.079
  F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
  F Makefile.in 0522b53cdc1fcfc18f3a98e0246add129136c654
  F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@@ -275,17 -275,17 +275,17 @@@ F src/test_vfstrace.c 34b544e80ba7fb77b
  F src/test_wsd.c 41cadfd9d97fe8e3e4e44f61a4a8ccd6f7ca8fe9
  F src/tokenize.c 70061085a51f2f4fc15ece94f32c03bcb78e63b2
  F src/trigger.c ba0a883cd536b7dfdd4df3733001f5372a4299da
 -F src/update.c f5182157f5d0d0a97bc5f5e3c9bdba0dfbe08f08
 +F src/update.c e39378bc5ed0c42e80624229703e59b5c7a4d50a
  F src/utf.c 6fc6c88d50448c469c5c196acf21617a24f90269
  F src/util.c 2fa6c821d28bbdbeec1b2a7b091a281c9ef8f918
 -F src/vacuum.c f313bc97123a4dd4bfd3f50a00c4d44c08a5b1b7
 -F src/vdbe.c 3d0bd1f8a3ebec1c253c5050c1008bffcbcb21eb
 +F src/vacuum.c 3728d74919d4fb1356f9e9a13e27773db60b7179
- F src/vdbe.c 7d23d61c84cb1116e36a70b050f2a4ae1a2aaae3
++F src/vdbe.c cb3df2d7b2ebadf22a39efcfb12a1277e273616e
  F src/vdbe.h 4f554b5627f26710c4c36d919110a3fc611ca5c4
 -F src/vdbeInt.h ff57f67aee1ba26a3a47e786533dab155ab6dad6
 +F src/vdbeInt.h 42dcff74dbeb2b071e569b53f885fc9c2e4b4cb0
  F src/vdbeapi.c 93a22a9ba2abe292d5c2cf304d7eb2e894dde0ed
- F src/vdbeaux.c 4ccdfd27f97fec98385f53fc8c880f1873137d95
 -F src/vdbeaux.c e670a2bd8bf7ba10fad63b9264c5d723c38f02d0
 -F src/vdbeblob.c 5dc79627775bd9a9b494dd956e26297946417d69
 -F src/vdbemem.c 649933bad3e922465b726eaf85c72a75acba2ab7
++F src/vdbeaux.c 3c36d92d3ad7225e0436474f4256243e5ceaeabb
 +F src/vdbeblob.c ef973d8d9f8170015343dd8824f795da675caa87
 +F src/vdbemem.c 6087553f2c61c06c8e1ab3959a60e174d6240c98
  F src/vdbesort.c 3937e06b2a0e354500e17dc206ef4c35770a5017
  F src/vdbetrace.c e7ec40e1999ff3c6414424365d5941178966dcbc
  F src/vtab.c 5a423b042eb1402ef77697d03d6a67378d97bc8d
@@@ -1127,7 -1126,7 +1127,7 @@@ F tool/vdbe-compress.tcl f12c884766bd14
  F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
  F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01
  F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff
- P 9f8191d1d833acaaf612fdff8cc6bd544c042986
- R 1ffaeb4130b0ebfe6aa0338f8dfd6db1
 -P 3a9e3ed94bf617f00c48009b1a6d348a8f23a3cf
 -R cc5dfe91a476c5736a19ee6bb40f8034
++P 141a38a7a636e3e4255b59c27df4a1b3d6f26e97 5f310c6a22b8bb5f860296074aee130c14101681
++R 092c8ad63995bcb3387c2f88e6abbbb4
  U drh
- Z 4dc4c03fad5693ab5ce15641b23c251b
 -Z 873c3bf640fe9fcbf6a7225bea069855
++Z 2daff0292132d8122decef0d377e8179
diff --cc manifest.uuid
index e55b1428f58a94b0592784a291caf4a9ec7a6785,f417371d330e905e2932f14d401304c3301a4a22..bc00d078462243303ab956f8137795af4dbe928c
@@@ -1,1 -1,1 +1,1 @@@
- 141a38a7a636e3e4255b59c27df4a1b3d6f26e97
 -5f310c6a22b8bb5f860296074aee130c14101681
++8bb51da1305d5e35c7b75bbb176c21e04ea2a48a
diff --cc src/vdbe.c
index 67a9a7bf58b45ced7e1e0a12a912a0e6b825346e,0fd344c0c4e941ba10e7362a98643627dc8feb09..f0400a64dc392a1a6bb3c923df29a896cdba46c2
@@@ -3616,10 -3667,9 +3667,11 @@@ case OP_Seek: {    /* in2 *
  ** Cursor P1 is on an index btree.  If the record identified by P3 and P4
  ** is a prefix of any entry in P1 then a jump is made to P2 and
  ** P1 is left pointing at the matching entry.
 +**
 +** See also: NotFound, NoConflict, NotExists. SeekGe
  */
  /* Opcode: NotFound P1 P2 P3 P4 *
+ ** Synopsis: key=r[P3] N=P4
  **
  ** If P4==0 then register P3 holds a blob constructed by MakeRecord.  If
  ** P4>0 then register P3 is the first of P4 registers that form an unpacked
@@@ -3726,18 -3744,107 +3778,19 @@@ case OP_Found: {        /* jump, in3 *
    break;
  }
  
 -/* Opcode: IsUnique P1 P2 P3 P4 *
 -**
 -** Cursor P1 is open on an index b-tree - that is to say, a btree which
 -** no data and where the key are records generated by OP_MakeRecord with
 -** the list field being the integer ROWID of the entry that the index
 -** entry refers to.
 -**
 -** The P3 register contains an integer record number. Call this record 
 -** number R. Register P4 is the first in a set of N contiguous registers
 -** that make up an unpacked index key that can be used with cursor P1.
 -** The value of N can be inferred from the cursor. N includes the rowid
 -** value appended to the end of the index record. This rowid value may
 -** or may not be the same as R.
 -**
 -** If any of the N registers beginning with register P4 contains a NULL
 -** value, jump immediately to P2.
 -**
 -** Otherwise, this instruction checks if cursor P1 contains an entry
 -** where the first (N-1) fields match but the rowid value at the end
 -** of the index entry is not R. If there is no such entry, control jumps
 -** to instruction P2. Otherwise, the rowid of the conflicting index
 -** entry is copied to register P3 and control falls through to the next
 -** instruction.
 -**
 -** See also: NotFound, NotExists, Found
 -*/
 -case OP_IsUnique: {        /* jump, in3 */
 -  u16 ii;
 -  VdbeCursor *pCx;
 -  BtCursor *pCrsr;
 -  u16 nField;
 -  Mem *aMx;
 -  UnpackedRecord r;                  /* B-Tree index search key */
 -  i64 R;                             /* Rowid stored in register P3 */
 -
 -  pIn3 = &aMem[pOp->p3];
 -  aMx = &aMem[pOp->p4.i];
 -  /* Assert that the values of parameters P1 and P4 are in range. */
 -  assert( pOp->p4type==P4_INT32 );
 -  assert( pOp->p4.i>0 && pOp->p4.i<=(p->nMem-p->nCursor) );
 -  assert( pOp->p1>=0 && pOp->p1<p->nCursor );
 -
 -  /* Find the index cursor. */
 -  pCx = p->apCsr[pOp->p1];
 -  assert( pCx->deferredMoveto==0 );
 -  pCx->seekResult = 0;
 -  pCx->cacheStatus = CACHE_STALE;
 -  pCrsr = pCx->pCursor;
 -
 -  /* If any of the values are NULL, take the jump. */
 -  nField = pCx->pKeyInfo->nField;
 -  for(ii=0; ii<nField; ii++){
 -    if( aMx[ii].flags & MEM_Null ){
 -      pc = pOp->p2 - 1;
 -      pCrsr = 0;
 -      break;
 -    }
 -  }
 -  assert( (aMx[nField].flags & MEM_Null)==0 );
 -
 -  if( pCrsr!=0 ){
 -    /* Populate the index search key. */
 -    r.pKeyInfo = pCx->pKeyInfo;
 -    r.nField = nField + 1;
 -    r.flags = UNPACKED_PREFIX_SEARCH;
 -    r.aMem = aMx;
 -#ifdef SQLITE_DEBUG
 -    { int i; for(i=0; i<r.nField; i++) assert( memIsValid(&r.aMem[i]) ); }
 -#endif
 -
 -    /* Extract the value of R from register P3. */
 -    sqlite3VdbeMemIntegerify(pIn3);
 -    R = pIn3->u.i;
 -
 -    /* Search the B-Tree index. If no conflicting record is found, jump
 -    ** to P2. Otherwise, copy the rowid of the conflicting record to
 -    ** register P3 and fall through to the next instruction.  */
 -    rc = sqlite3BtreeMovetoUnpacked(pCrsr, &r, 0, 0, &pCx->seekResult);
 -    if( (r.flags & UNPACKED_PREFIX_SEARCH) || r.rowid==R ){
 -      pc = pOp->p2 - 1;
 -    }else{
 -      pIn3->u.i = r.rowid;
 -    }
 -  }
 -  break;
 -}
 -
  /* Opcode: NotExists P1 P2 P3 * *
+ ** Synopsis: intkey=r[P3]
  **
 -** Use the content of register P3 as an integer key.  If a record 
 -** with that key does not exist in table of P1, then jump to P2. 
 -** If the record does exist, then fall through.  The cursor is left 
 -** pointing to the record if it exists.
 +** P1 is the index of a cursor open on an SQL table btree (with integer
 +** keys).  P3 is an integer rowid.  If P1 does not contain a record with
 +** rowid P3 then jump immediately to P2.  If P1 does contain a record
 +** with rowid P3 then leave the cursor pointing at that record and fall
 +** through to the next instruction.
  **
 -** The difference between this operation and NotFound is that this
 -** operation assumes the key is an integer and that P1 is a table whereas
 -** NotFound assumes key is a blob constructed from MakeRecord and
 -** P1 is an index.
 +** The OP_NotFound opcode performs the same operation on index btrees
 +** (with arbitrary multi-value keys).
  **
 -** See also: Found, NotFound, IsUnique
 +** See also: Found, NotFound, NoConflict
  */
  case OP_NotExists: {        /* jump, in3 */
    VdbeCursor *pC;
diff --cc src/vdbeaux.c
Simple merge