return (p[0]<<8) + p[1];
}
static void readCoord(u8 *p, RtreeCoord *pCoord){
+#if defined(SQLITE_BYTEORDER) && SQLITE_BYTEORDER==1234
+ memcpy(&pCoord->u, p, 4);
+ pCoord->u = ((pCoord->u>>24)&0xff)|((pCoord->u>>8)&0xff00)|
+ ((pCoord->u&0xff)<<24)|((pCoord->u&0xff00)<<8);
+#elif defined(SQLITE_BYTEORDER) && SQLITE_BYTEORDER==4321
+ memcpy(&pCoord->u, p, 4);
+#else
pCoord->u = (
(((u32)p[0]) << 24) +
(((u32)p[1]) << 16) +
(((u32)p[2]) << 8) +
(((u32)p[3]) << 0)
);
+#endif
}
static i64 readInt64(u8 *p){
return (
){
u8 *pData;
RtreeCoord *pCoord;
- int ii;
+ int ii = 0;
pCell->iRowid = nodeGetRowid(pRtree, pNode, iCell);
pData = pNode->zData + (12 + pRtree->nBytesPerCell*iCell);
pCoord = pCell->aCoord;
+ do{
+ readCoord(pData, &pCoord[ii]);
+ readCoord(pData+4, &pCoord[ii+1]);
+ pData += 8;
+ ii += 2;
+ }while( ii<pRtree->nDim*2 );
+#if 0
for(ii=0; ii<pRtree->nDim*2; ii++){
readCoord(&pData[ii*4], &pCoord[ii]);
}
+#endif
}
-C Improved\scomments\son\sthe\sstatGet()\simplementation\sin\sANALYZE.\s\sNo\schanges\nto\scode.
-D 2017-02-01T01:34:15.043
+C More\sRTREE\sperformance\soptimizations\srelated\sto\sdecoding\svalues.
+D 2017-02-01T02:25:28.535
F Makefile.in 5f415e7867296d678fed2e6779aea10c1318b4bc
F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
F Makefile.msc b8ca53350ae545e3562403d5da2a69cec79308da
F ext/rbu/sqlite3rbu.h 6fb6294c34a9ca93b5894a33bca530c6f08decba
F ext/rbu/test_rbu.c 5aa22616afac6f71ebd3d9bc9bf1006cfabcca88
F ext/rtree/README 6315c0d73ebf0ec40dedb5aa0e942bc8b54e3761
-F ext/rtree/rtree.c 81fea8b100c6195f8a42119109d6ec2016e613f3
+F ext/rtree/rtree.c f66b3d232ea98285548107caaac55f110a0b6709
F ext/rtree/rtree.h 834dbcb82dc85b2481cde6a07cdadfddc99e9b9e
F ext/rtree/rtree1.test 42dadfc7b44a436cd74a1bebc0b9b689e4eaf7ec
F ext/rtree/rtree2.test acbb3a4ce0f4fbc2c304d2b4b784cfa161856bba
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 0bf7b51896ec441f62490964c7a44a3c75c6b7e2
-R bb550435b988e435dcc2fd1779602487
+P 9663eea2a16bb4eec71476d307a3722a768308c3
+R 5d2055e5a67aa8455e161eeb4945e6a1
U drh
-Z 36c251bda157d6101f2fb97842697f89
+Z 3923bc85bfbb1c570a9230cd663fc66b