Skip to content

Commit acafcc8

Browse files
committed
build bundles
1 parent 7cafb80 commit acafcc8

2 files changed

Lines changed: 66 additions & 64 deletions

File tree

libsql-ffi/bundled/SQLite3MultipleCiphers/src/sqlite3.c

Lines changed: 33 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -85261,9 +85261,9 @@ typedef u32 VectorDims;
8526185261
/*
8526285262
* Enumerate of supported vector types (0 omitted intentionally as we can use zero as "undefined" value)
8526385263
*/
85264-
#define VECTOR_TYPE_FLOAT32 1
85265-
#define VECTOR_TYPE_FLOAT64 2
85266-
#define VECTOR_TYPE_1BIT 3
85264+
#define VECTOR_TYPE_FLOAT32 1
85265+
#define VECTOR_TYPE_FLOAT64 2
85266+
#define VECTOR_TYPE_FLOAT1BIT 3
8526785267

8526885268
#define VECTOR_FLAGS_STATIC 1
8526985269

@@ -210999,7 +210999,7 @@ size_t vectorDataSize(VectorType type, VectorDims dims){
210999210999
return dims * sizeof(float);
211000211000
case VECTOR_TYPE_FLOAT64:
211001211001
return dims * sizeof(double);
211002-
case VECTOR_TYPE_1BIT:
211002+
case VECTOR_TYPE_FLOAT1BIT:
211003211003
return (dims + 7) / 8;
211004211004
default:
211005211005
assert(0);
@@ -211072,7 +211072,7 @@ float vectorDistanceCos(const Vector *pVector1, const Vector *pVector2){
211072211072
return vectorF32DistanceCos(pVector1, pVector2);
211073211073
case VECTOR_TYPE_FLOAT64:
211074211074
return vectorF64DistanceCos(pVector1, pVector2);
211075-
case VECTOR_TYPE_1BIT:
211075+
case VECTOR_TYPE_FLOAT1BIT:
211076211076
return vector1BitDistanceHamming(pVector1, pVector2);
211077211077
default:
211078211078
assert(0);
@@ -211236,7 +211236,7 @@ static int vectorParseMeta(const unsigned char *pBlob, size_t nBlobSize, int *pT
211236211236
}
211237211237
*pDims = nBlobSize / sizeof(double);
211238211238
*pDataSize = nBlobSize;
211239-
}else if( *pType == VECTOR_TYPE_1BIT ){
211239+
}else if( *pType == VECTOR_TYPE_FLOAT1BIT ){
211240211240
if( nBlobSize == 0 || nBlobSize % 2 != 0 ){
211241211241
*pzErrMsg = sqlite3_mprintf("vector: 1bit vector blob length must be divisible by 2 and not be empty (excluding 'type'-byte): length=%d", nBlobSize);
211242211242
return SQLITE_ERROR;
@@ -211286,7 +211286,7 @@ int vectorParseSqliteBlobWithType(
211286211286
case VECTOR_TYPE_FLOAT64:
211287211287
vectorF64DeserializeFromBlob(pVector, pBlob, nDataSize);
211288211288
return 0;
211289-
case VECTOR_TYPE_1BIT:
211289+
case VECTOR_TYPE_FLOAT1BIT:
211290211290
vector1BitDeserializeFromBlob(pVector, pBlob, nDataSize);
211291211291
return 0;
211292211292
default:
@@ -211384,7 +211384,7 @@ void vectorDump(const Vector *pVector){
211384211384
case VECTOR_TYPE_FLOAT64:
211385211385
vectorF64Dump(pVector);
211386211386
break;
211387-
case VECTOR_TYPE_1BIT:
211387+
case VECTOR_TYPE_FLOAT1BIT:
211388211388
vector1BitDump(pVector);
211389211389
break;
211390211390
default:
@@ -211415,7 +211415,7 @@ static int vectorMetaSize(VectorType type, VectorDims dims){
211415211415
return 0;
211416211416
}else if( type == VECTOR_TYPE_FLOAT64 ){
211417211417
return 1;
211418-
}else if( type == VECTOR_TYPE_1BIT ){
211418+
}else if( type == VECTOR_TYPE_FLOAT1BIT ){
211419211419
nDataSize = vectorDataSize(type, dims);
211420211420
nMetaSize++; // one byte which specify amount of leftover bits
211421211421
if( nDataSize % 2 == 0 ){
@@ -211435,10 +211435,10 @@ static void vectorSerializeMeta(const Vector *pVector, size_t nDataSize, unsigne
211435211435
assert( nDataSize % 2 == 0 );
211436211436
assert( nBlobSize == nDataSize + 1 );
211437211437
pBlob[nBlobSize - 1] = VECTOR_TYPE_FLOAT64;
211438-
}else if( pVector->type == VECTOR_TYPE_1BIT ){
211438+
}else if( pVector->type == VECTOR_TYPE_FLOAT1BIT ){
211439211439
assert( nBlobSize % 2 == 1 );
211440211440
assert( nBlobSize >= 3 );
211441-
pBlob[nBlobSize - 1] = VECTOR_TYPE_1BIT;
211441+
pBlob[nBlobSize - 1] = VECTOR_TYPE_FLOAT1BIT;
211442211442
pBlob[nBlobSize - 2] = 8 * (nBlobSize - 1) - pVector->dims;
211443211443
}else{
211444211444
assert( 0 );
@@ -211475,7 +211475,7 @@ void vectorSerializeWithMeta(
211475211475
case VECTOR_TYPE_FLOAT64:
211476211476
vectorF64SerializeToBlob(pVector, pBlob, nDataSize);
211477211477
break;
211478-
case VECTOR_TYPE_1BIT:
211478+
case VECTOR_TYPE_FLOAT1BIT:
211479211479
vector1BitSerializeToBlob(pVector, pBlob, nDataSize);
211480211480
break;
211481211481
default:
@@ -211491,7 +211491,7 @@ size_t vectorSerializeToBlob(const Vector *pVector, unsigned char *pBlob, size_t
211491211491
return vectorF32SerializeToBlob(pVector, pBlob, nBlobSize);
211492211492
case VECTOR_TYPE_FLOAT64:
211493211493
return vectorF64SerializeToBlob(pVector, pBlob, nBlobSize);
211494-
case VECTOR_TYPE_1BIT:
211494+
case VECTOR_TYPE_FLOAT1BIT:
211495211495
return vector1BitSerializeToBlob(pVector, pBlob, nBlobSize);
211496211496
default:
211497211497
assert(0);
@@ -211520,7 +211520,7 @@ static void vectorConvertFromF32(const Vector *pFrom, Vector *pTo){
211520211520
for(i = 0; i < pFrom->dims; i++){
211521211521
dstF64[i] = src[i];
211522211522
}
211523-
}else if( pTo->type == VECTOR_TYPE_1BIT ){
211523+
}else if( pTo->type == VECTOR_TYPE_FLOAT1BIT ){
211524211524
dst1Bit = pTo->data;
211525211525
for(i = 0; i < pFrom->dims; i += 8){
211526211526
dst1Bit[i / 8] = 0;
@@ -211552,7 +211552,7 @@ static void vectorConvertFromF64(const Vector *pFrom, Vector *pTo){
211552211552
for(i = 0; i < pFrom->dims; i++){
211553211553
dstF32[i] = src[i];
211554211554
}
211555-
}else if( pTo->type == VECTOR_TYPE_1BIT ){
211555+
}else if( pTo->type == VECTOR_TYPE_FLOAT1BIT ){
211556211556
dst1Bit = pTo->data;
211557211557
for(i = 0; i < pFrom->dims; i += 8){
211558211558
dst1Bit[i / 8] = 0;
@@ -211576,7 +211576,7 @@ static void vectorConvertFrom1Bit(const Vector *pFrom, Vector *pTo){
211576211576

211577211577
assert( pFrom->dims == pTo->dims );
211578211578
assert( pFrom->type != pTo->type );
211579-
assert( pFrom->type == VECTOR_TYPE_1BIT );
211579+
assert( pFrom->type == VECTOR_TYPE_FLOAT1BIT );
211580211580

211581211581
src = pFrom->data;
211582211582
if( pTo->type == VECTOR_TYPE_FLOAT32 ){
@@ -211614,7 +211614,7 @@ void vectorConvert(const Vector *pFrom, Vector *pTo){
211614211614
vectorConvertFromF32(pFrom, pTo);
211615211615
}else if( pFrom->type == VECTOR_TYPE_FLOAT64 ){
211616211616
vectorConvertFromF64(pFrom, pTo);
211617-
}else if( pFrom->type == VECTOR_TYPE_1BIT ){
211617+
}else if( pFrom->type == VECTOR_TYPE_FLOAT1BIT ){
211618211618
vectorConvertFrom1Bit(pFrom, pTo);
211619211619
}else{
211620211620
assert( 0 );
@@ -211697,7 +211697,7 @@ static void vector1BitFunc(
211697211697
int argc,
211698211698
sqlite3_value **argv
211699211699
){
211700-
vectorFuncHintedType(context, argc, argv, VECTOR_TYPE_1BIT);
211700+
vectorFuncHintedType(context, argc, argv, VECTOR_TYPE_FLOAT1BIT);
211701211701
}
211702211702

211703211703
/*
@@ -211884,7 +211884,7 @@ void vector1BitDump(const Vector *pVec){
211884211884
u8 *elems = pVec->data;
211885211885
unsigned i;
211886211886

211887-
assert( pVec->type == VECTOR_TYPE_1BIT );
211887+
assert( pVec->type == VECTOR_TYPE_FLOAT1BIT );
211888211888

211889211889
printf("f1bit: [");
211890211890
for(i = 0; i < pVec->dims; i++){
@@ -211906,7 +211906,7 @@ size_t vector1BitSerializeToBlob(
211906211906
u8 *pPtr = pBlob;
211907211907
unsigned i;
211908211908

211909-
assert( pVector->type == VECTOR_TYPE_1BIT );
211909+
assert( pVector->type == VECTOR_TYPE_FLOAT1BIT );
211910211910
assert( pVector->dims <= MAX_VECTOR_SZ );
211911211911
assert( nBlobSize >= (pVector->dims + 7) / 8 );
211912211912

@@ -211953,8 +211953,8 @@ int vector1BitDistanceHamming(const Vector *v1, const Vector *v2){
211953211953
int i, len8, len32, offset8;
211954211954

211955211955
assert( v1->dims == v2->dims );
211956-
assert( v1->type == VECTOR_TYPE_1BIT );
211957-
assert( v2->type == VECTOR_TYPE_1BIT );
211956+
assert( v1->type == VECTOR_TYPE_FLOAT1BIT );
211957+
assert( v2->type == VECTOR_TYPE_FLOAT1BIT );
211958211958

211959211959
len8 = (v1->dims + 7) / 8;
211960211960
len32 = v1->dims / 32;
@@ -211976,7 +211976,7 @@ void vector1BitDeserializeFromBlob(
211976211976
){
211977211977
u8 *elems = pVector->data;
211978211978

211979-
assert( pVector->type == VECTOR_TYPE_1BIT );
211979+
assert( pVector->type == VECTOR_TYPE_FLOAT1BIT );
211980211980
assert( 0 <= pVector->dims && pVector->dims <= MAX_VECTOR_SZ );
211981211981
assert( nBlobSize >= (pVector->dims + 7) / 8 );
211982211982

@@ -212494,7 +212494,7 @@ int diskAnnCreateIndex(
212494212494
}
212495212495
}
212496212496
neighbours = vectorIdxParamsGetU64(pParams, VECTOR_COMPRESS_NEIGHBORS_PARAM_ID);
212497-
if( neighbours == VECTOR_TYPE_1BIT && metric != VECTOR_METRIC_TYPE_COS ){
212497+
if( neighbours == VECTOR_TYPE_FLOAT1BIT && metric != VECTOR_METRIC_TYPE_COS ){
212498212498
*pzErrMsg = "1-bit compression available only for cosine metric";
212499212499
return SQLITE_ERROR;
212500212500
}
@@ -213738,7 +213738,7 @@ int diskAnnOpenIndex(
213738213738
if( compressNeighbours == 0 ){
213739213739
pIndex->nEdgeVectorType = pIndex->nNodeVectorType;
213740213740
pIndex->nEdgeVectorSize = pIndex->nNodeVectorSize;
213741-
}else if( compressNeighbours == VECTOR_TYPE_1BIT ){
213741+
}else if( compressNeighbours == VECTOR_TYPE_FLOAT1BIT ){
213742213742
pIndex->nEdgeVectorType = compressNeighbours;
213743213743
pIndex->nEdgeVectorSize = vectorDataSize(compressNeighbours, pIndex->nVectorDims);
213744213744
}else{
@@ -214541,8 +214541,8 @@ static struct VectorColumnType VECTOR_COLUMN_TYPES[] = {
214541214541
{ "F32_BLOB", VECTOR_TYPE_FLOAT32 },
214542214542
{ "FLOAT64", VECTOR_TYPE_FLOAT64 },
214543214543
{ "F64_BLOB", VECTOR_TYPE_FLOAT64 },
214544-
{ "FLOAT1BIT", VECTOR_TYPE_1BIT },
214545-
{ "F1BIT_BLOB", VECTOR_TYPE_1BIT },
214544+
{ "FLOAT1BIT", VECTOR_TYPE_FLOAT1BIT },
214545+
{ "F1BIT_BLOB", VECTOR_TYPE_FLOAT1BIT },
214546214546
};
214547214547

214548214548
/*
@@ -214558,10 +214558,11 @@ struct VectorParamName {
214558214558
};
214559214559

214560214560
static struct VectorParamName VECTOR_PARAM_NAMES[] = {
214561-
{ "type", VECTOR_INDEX_TYPE_PARAM_ID, 0, "diskann", VECTOR_INDEX_TYPE_DISKANN },
214562-
{ "metric", VECTOR_METRIC_TYPE_PARAM_ID, 0, "cosine", VECTOR_METRIC_TYPE_COS },
214563-
{ "metric", VECTOR_METRIC_TYPE_PARAM_ID, 0, "l2", VECTOR_METRIC_TYPE_L2 },
214564-
{ "compress_neighbors", VECTOR_COMPRESS_NEIGHBORS_PARAM_ID, 0, "1bit", VECTOR_TYPE_1BIT },
214561+
{ "type", VECTOR_INDEX_TYPE_PARAM_ID, 0, "diskann", VECTOR_INDEX_TYPE_DISKANN },
214562+
{ "metric", VECTOR_METRIC_TYPE_PARAM_ID, 0, "cosine", VECTOR_METRIC_TYPE_COS },
214563+
{ "metric", VECTOR_METRIC_TYPE_PARAM_ID, 0, "l2", VECTOR_METRIC_TYPE_L2 },
214564+
{ "compress_neighbors", VECTOR_COMPRESS_NEIGHBORS_PARAM_ID, 0, "float1bit", VECTOR_TYPE_FLOAT1BIT },
214565+
{ "compress_neighbors", VECTOR_COMPRESS_NEIGHBORS_PARAM_ID, 0, "float32", VECTOR_TYPE_FLOAT32 },
214565214566
{ "alpha", VECTOR_PRUNING_ALPHA_PARAM_ID, 2, 0, 0 },
214566214567
{ "search_l", VECTOR_SEARCH_L_PARAM_ID, 1, 0, 0 },
214567214568
{ "insert_l", VECTOR_INSERT_L_PARAM_ID, 1, 0, 0 },
@@ -215121,7 +215122,7 @@ int vectorIndexSearch(
215121215122
rc = SQLITE_ERROR;
215122215123
goto out;
215123215124
}
215124-
assert( type == VECTOR_TYPE_FLOAT32 || type == VECTOR_TYPE_FLOAT64 || type == VECTOR_TYPE_1BIT );
215125+
assert( type == VECTOR_TYPE_FLOAT32 || type == VECTOR_TYPE_FLOAT64 || type == VECTOR_TYPE_FLOAT1BIT );
215125215126

215126215127
pVector = vectorAlloc(type, dims);
215127215128
if( pVector == NULL ){

0 commit comments

Comments
 (0)