Changeset: af7d73d614b9 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=af7d73d614b9
Modified Files:
        gdk/gdk_analytic_func.c
Branch: Jun2020
Log Message:

Cleaning my own mess. Use ATOMbasetype macro to know the internal storage of a 
type. Time types now use the faster route on the window functions 
implementations. Sorry people


diffs (111 lines):

diff --git a/gdk/gdk_analytic_func.c b/gdk/gdk_analytic_func.c
--- a/gdk/gdk_analytic_func.c
+++ b/gdk/gdk_analytic_func.c
@@ -66,10 +66,7 @@ GDKanalyticaldiff(BAT *r, BAT *b, BAT *p
        BUN i, cnt = BATcount(b);
        bit *restrict rb = (bit *) Tloc(r, 0), *restrict np = p ? (bit *) 
Tloc(p, 0) : NULL;
 
-       switch (tpe) {
-       case TYPE_bit:
-               ANALYTICAL_DIFF_IMP(bit);
-               break;
+       switch (ATOMbasetype(tpe)) {
        case TYPE_bte:
                ANALYTICAL_DIFF_IMP(bte);
                break;
@@ -299,10 +296,7 @@ GDKanalyticalfirst(BAT *r, BAT *b, BAT *
        start = (lng *) Tloc(s, 0);
        end = (lng *) Tloc(e, 0);
 
-       switch (tpe) {
-       case TYPE_bit:
-               ANALYTICAL_FIRST_IMP(bit);
-               break;
+       switch (ATOMbasetype(tpe)) {
        case TYPE_bte:
                ANALYTICAL_FIRST_IMP(bte);
                break;
@@ -371,10 +365,7 @@ GDKanalyticallast(BAT *r, BAT *b, BAT *s
        start = (lng *) Tloc(s, 0);
        end = (lng *) Tloc(e, 0);
 
-       switch (tpe) {
-       case TYPE_bit:
-               ANALYTICAL_LAST_IMP(bit);
-               break;
+       switch (ATOMbasetype(tpe)) {
        case TYPE_bte:
                ANALYTICAL_LAST_IMP(bte);
                break;
@@ -543,10 +534,7 @@ GDKanalyticalnthvalue(BAT *r, BAT *b, BA
                default:
                        goto nosupport;
                }
-               switch (tp1) {
-               case TYPE_bit:
-                       ANALYTICAL_NTHVALUE_IMP_SINGLE_FIXED(bit);
-                       break;
+               switch (ATOMbasetype(tp1)) {
                case TYPE_bte:
                        ANALYTICAL_NTHVALUE_IMP_SINGLE_FIXED(bte);
                        break;
@@ -589,10 +577,7 @@ GDKanalyticalnthvalue(BAT *r, BAT *b, BA
                }
                }
        } else {
-               switch (tp1) {
-               case TYPE_bit:
-                       ANALYTICAL_NTHVALUE_CALC_FIXED(bit);
-                       break;
+               switch (ATOMbasetype(tp1)) {
                case TYPE_bte:
                        ANALYTICAL_NTHVALUE_CALC_FIXED(bte);
                        break;
@@ -721,10 +706,7 @@ GDKanalyticallag(BAT *r, BAT *b, BAT *p,
 
        assert(default_value);
 
-       switch (tpe) {
-       case TYPE_bit:
-               ANALYTICAL_LAG_IMP(bit);
-               break;
+       switch (ATOMbasetype(tpe)) {
        case TYPE_bte:
                ANALYTICAL_LAG_IMP(bte);
                break;
@@ -864,10 +846,7 @@ GDKanalyticallead(BAT *r, BAT *b, BAT *p
 
        assert(default_value);
 
-       switch (tpe) {
-       case TYPE_bit:
-               ANALYTICAL_LEAD_IMP(bit);
-               break;
+       switch (ATOMbasetype(tpe)) {
        case TYPE_bte:
                ANALYTICAL_LEAD_IMP(bte);
                break;
@@ -972,10 +951,7 @@ GDKanalytical##OP(BAT *r, BAT *b, BAT *s
        start = (lng*)Tloc(s, 0);                                       \
        end = (lng*)Tloc(e, 0);                                         \
                                                                        \
-       switch (tpe) {                                                  \
-       case TYPE_bit:                                                  \
-               ANALYTICAL_MIN_MAX_CALC(bit, IMP);                      \
-               break;                                                  \
+       switch (ATOMbasetype(tpe)) {                            \
        case TYPE_bte:                                                  \
                ANALYTICAL_MIN_MAX_CALC(bte, IMP);                      \
                break;                                                  \
@@ -1068,10 +1044,7 @@ GDKanalyticalcount(BAT *r, BAT *b, BAT *
                for (; i < cnt; i++, rb++)
                        *rb = (end[i] > start[i]) ? (end[i] - start[i]) : 0;
        } else {
-               switch (tpe) {
-               case TYPE_bit:
-                       ANALYTICAL_COUNT_NO_NIL_FIXED_SIZE_IMP(bit);
-                       break;
+               switch (ATOMbasetype(tpe)) {
                case TYPE_bte:
                        ANALYTICAL_COUNT_NO_NIL_FIXED_SIZE_IMP(bte);
                        break;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to