SQLite

Check-in [2ce625fdbe]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Work around an optimization issue with the MSVC compiler for ARM.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | sessions-3.7.14
Files: files | file ages | folders
SHA1: 2ce625fdbee78b2acbe3aa19b01ff92241c0d598
User & Date: drh 2012-10-03 18:26:39.323
Context
2012-10-04
22:45
Merge the 3.7.14.1 release including the fix for the LEFT JOIN problem into the sessions branch. (Leaf check-in: 17644c0e33 user: drh tags: sessions-3.7.14)
2012-10-03
18:26
Work around an optimization issue with the MSVC compiler for ARM. (check-in: 2ce625fdbe user: drh tags: sessions-3.7.14)
18:20
A branch off of the sessions branch corresponding to release 3.7.14. (check-in: 86633e01fe user: drh tags: sessions-3.7.14)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/btree.c.
5918
5919
5920
5921
5922
5923
5924



5925
5926
5927
5928
5929
5930
5931
** size of a cell stored within an internal node is always less than 1/4
** of the page-size, the aOvflSpace[] buffer is guaranteed to be large
** enough for all overflow cells.
**
** If aOvflSpace is set to a null pointer, this function returns 
** SQLITE_NOMEM.
*/



static int balance_nonroot(
  MemPage *pParent,               /* Parent page of siblings being balanced */
  int iParentIdx,                 /* Index of "the page" in pParent */
  u8 *aOvflSpace,                 /* page-size bytes of space for parent ovfl */
  int isRoot,                     /* True if pParent is a root-page */
  int bBulk                       /* True if this call is part of a bulk load */
){







>
>
>







5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
** size of a cell stored within an internal node is always less than 1/4
** of the page-size, the aOvflSpace[] buffer is guaranteed to be large
** enough for all overflow cells.
**
** If aOvflSpace is set to a null pointer, this function returns 
** SQLITE_NOMEM.
*/
#if defined(_MSC_VER) && _MSC_VER >= 1700 && defined(_M_ARM)
#pragma optimize("", off)
#endif
static int balance_nonroot(
  MemPage *pParent,               /* Parent page of siblings being balanced */
  int iParentIdx,                 /* Index of "the page" in pParent */
  u8 *aOvflSpace,                 /* page-size bytes of space for parent ovfl */
  int isRoot,                     /* True if pParent is a root-page */
  int bBulk                       /* True if this call is part of a bulk load */
){
6548
6549
6550
6551
6552
6553
6554



6555
6556
6557
6558
6559
6560
6561
  }
  for(i=0; i<nNew; i++){
    releasePage(apNew[i]);
  }

  return rc;
}





/*
** This function is called when the root page of a b-tree structure is
** overfull (has one or more overflow pages).
**
** A new child page is allocated and the contents of the current root







>
>
>







6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
  }
  for(i=0; i<nNew; i++){
    releasePage(apNew[i]);
  }

  return rc;
}
#if defined(_MSC_VER) && _MSC_VER >= 1700 && defined(_M_ARM)
#pragma optimize("", on)
#endif


/*
** This function is called when the root page of a b-tree structure is
** overfull (has one or more overflow pages).
**
** A new child page is allocated and the contents of the current root