Changeset: e355db1f2f40 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e355db1f2f40
Modified Files:
        monetdb5/modules/mosaic/mosaic_linear.c
        monetdb5/modules/mosaic/mosaic_prefix.c
Branch: mosaic
Log Message:

Code clean up: Use macro's.


diffs (57 lines):

diff --git a/monetdb5/modules/mosaic/mosaic_linear.c 
b/monetdb5/modules/mosaic/mosaic_linear.c
--- a/monetdb5/modules/mosaic/mosaic_linear.c
+++ b/monetdb5/modules/mosaic/mosaic_linear.c
@@ -142,22 +142,7 @@ MOSestimate_linear(MOStask task)
        case TYPE_sht: Estimate(sht); break;
        case TYPE_int: Estimate(int); break;
        case TYPE_oid: Estimate(oid); break;
-       case TYPE_lng: {
-               lng *v = ((lng*) task->src)+task->start, val = *v++;
-               lng step = *v - val;
-               BUN limit = task->stop - task->start > MOSAICMAXCNT? 
MOSAICMAXCNT: task->stop - task->start;
-               if( task->range[MOSAIC_LINEAR] > task->start + 1){
-                       i = task->range[MOSAIC_LINEAR] - task->start;
-                       if (i * sizeof(lng) <= wordaligned( MosaicBlkSize + 2 * 
sizeof(lng),lng)) return 0.0;
-                       factor = ((flt) i * sizeof(lng))/ 
wordaligned(MosaicBlkSize + 2 * sizeof(lng),lng);
-                       return factor;
-               }
-               for( i=1; i < limit; i++, val = *v, v++) if ( *v - val != step) 
break;
-               if(i * sizeof(lng) <= wordaligned( MosaicBlkSize + 2 * 
sizeof(lng),lng)) return 0.0;
-               if( task->dst + wordaligned(MosaicBlkSize + 2 * 
sizeof(lng),lng) >= task->bsrc->tmosaic->base + task->bsrc->tmosaic->size) 
return 0.0;
-               factor = ( (flt)i * sizeof(lng))/wordaligned( MosaicBlkSize + 2 
* sizeof(lng),lng);
-       }
-; break;
+       case TYPE_lng: Estimate(lng); break;
        case TYPE_flt: Estimate(flt); break;
        case TYPE_dbl: Estimate(dbl); break;
 #ifdef HAVE_HGE
diff --git a/monetdb5/modules/mosaic/mosaic_prefix.c 
b/monetdb5/modules/mosaic/mosaic_prefix.c
--- a/monetdb5/modules/mosaic/mosaic_prefix.c
+++ b/monetdb5/modules/mosaic/mosaic_prefix.c
@@ -849,25 +849,7 @@ MOSprojection_prefix( MOStask task)
                case TYPE_int: projection_prefix(int, unsigned int); break;
                case TYPE_lng: projection_prefix(lng, ulng); break;
                case TYPE_oid: projection_prefix(oid, ulng); break;
-               case TYPE_flt: //projection_prefix(flt, unsigned int); break;
-{      flt *r;
-    unsigned int *dst =  (unsigned int*)  MOScodevector(task);
-    unsigned int mask = *dst++, val  =  *dst++,v;
-    flt value;
-       bits = (int) val & (~mask);
-       val = val & mask;
-       base = (BitVector) dst;
-       r= (flt*) task->src;
-       for(; first < last; first++,i++){
-               MOSskipit();
-               v = val | decompress(base,i,bits);
-               value =  (flt) ((unsigned int)val |(unsigned int) v);
-               *r++ = value;
-               task->cnt++;
-       }
-       task->src = (char*) r;
-}
-break;
+               case TYPE_flt: projection_prefix(flt, unsigned int); break;
                case TYPE_dbl: projection_prefix(dbl, ulng); break;
 #ifdef HAVE_HGE
                case TYPE_hge: projection_prefix(hge, unsigned long long); 
break;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to