Changeset: 55b1b7c5df83 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=55b1b7c5df83
Modified Files:
        clients/Tests/exports.stable.out
        monetdb5/modules/mal/pqueue.c
        monetdb5/modules/mal/pqueue.h
        monetdb5/modules/mal/pqueue.mal
Branch: int128
Log Message:

added int128 / "hge" support in monetdb5/modules/mal/pqueue.*


diffs (153 lines):

diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -1869,6 +1869,8 @@ str PQdequeue_dblmax(int *ret, int *bid)
 str PQdequeue_dblmin(int *ret, int *bid);
 str PQdequeue_fltmax(int *ret, int *bid);
 str PQdequeue_fltmin(int *ret, int *bid);
+str PQdequeue_hgemax(int *ret, int *bid);
+str PQdequeue_hgemin(int *ret, int *bid);
 str PQdequeue_intmax(int *ret, int *bid);
 str PQdequeue_intmin(int *ret, int *bid);
 str PQdequeue_lngmax(int *ret, int *bid);
@@ -1887,6 +1889,8 @@ str PQenqueue_dblmax(int *ret, int *bid,
 str PQenqueue_dblmin(int *ret, int *bid, oid *idx, dbl *el);
 str PQenqueue_fltmax(int *ret, int *bid, oid *idx, flt *el);
 str PQenqueue_fltmin(int *ret, int *bid, oid *idx, flt *el);
+str PQenqueue_hgemax(int *ret, int *bid, oid *idx, hge *el);
+str PQenqueue_hgemin(int *ret, int *bid, oid *idx, hge *el);
 str PQenqueue_intmax(int *ret, int *bid, oid *idx, int *el);
 str PQenqueue_intmin(int *ret, int *bid, oid *idx, int *el);
 str PQenqueue_lngmax(int *ret, int *bid, oid *idx, lng *el);
@@ -1906,6 +1910,8 @@ str PQmovedowntop_dblmax(int *ret, int *
 str PQmovedowntop_dblmin(int *ret, int *bid);
 str PQmovedowntop_fltmax(int *ret, int *bid);
 str PQmovedowntop_fltmin(int *ret, int *bid);
+str PQmovedowntop_hgemax(int *ret, int *bid);
+str PQmovedowntop_hgemin(int *ret, int *bid);
 str PQmovedowntop_intmax(int *ret, int *bid);
 str PQmovedowntop_intmin(int *ret, int *bid);
 str PQmovedowntop_lngmax(int *ret, int *bid);
@@ -1924,6 +1930,8 @@ str PQtopn2_dblmax(int *ret, int *aid, i
 str PQtopn2_dblmin(int *ret, int *aid, int *bid, wrd *N);
 str PQtopn2_fltmax(int *ret, int *aid, int *bid, wrd *N);
 str PQtopn2_fltmin(int *ret, int *aid, int *bid, wrd *N);
+str PQtopn2_hgemax(int *ret, int *aid, int *bid, wrd *N);
+str PQtopn2_hgemin(int *ret, int *aid, int *bid, wrd *N);
 str PQtopn2_intmax(int *ret, int *aid, int *bid, wrd *N);
 str PQtopn2_intmin(int *ret, int *aid, int *bid, wrd *N);
 str PQtopn2_lngmax(int *ret, int *aid, int *bid, wrd *N);
@@ -1942,6 +1950,8 @@ str PQtopn_dblmax(int *ret, int *bid, wr
 str PQtopn_dblmin(int *ret, int *bid, wrd *N);
 str PQtopn_fltmax(int *ret, int *bid, wrd *N);
 str PQtopn_fltmin(int *ret, int *bid, wrd *N);
+str PQtopn_hgemax(int *ret, int *bid, wrd *N);
+str PQtopn_hgemin(int *ret, int *bid, wrd *N);
 str PQtopn_intmax(int *ret, int *bid, wrd *N);
 str PQtopn_intmin(int *ret, int *bid, wrd *N);
 str PQtopn_lngmax(int *ret, int *bid, wrd *N);
@@ -1960,6 +1970,8 @@ str PQtopreplace_dblmax(int *ret, int *b
 str PQtopreplace_dblmin(int *ret, int *bid, oid *idx, dbl *el);
 str PQtopreplace_fltmax(int *ret, int *bid, oid *idx, flt *el);
 str PQtopreplace_fltmin(int *ret, int *bid, oid *idx, flt *el);
+str PQtopreplace_hgemax(int *ret, int *bid, oid *idx, hge *el);
+str PQtopreplace_hgemin(int *ret, int *bid, oid *idx, hge *el);
 str PQtopreplace_intmax(int *ret, int *bid, oid *idx, int *el);
 str PQtopreplace_intmin(int *ret, int *bid, oid *idx, int *el);
 str PQtopreplace_lngmax(int *ret, int *bid, oid *idx, lng *el);
@@ -1978,6 +1990,8 @@ str PQutopn2_dblmax(int *ret, int *aid, 
 str PQutopn2_dblmin(int *ret, int *aid, int *bid, wrd *N);
 str PQutopn2_fltmax(int *ret, int *aid, int *bid, wrd *N);
 str PQutopn2_fltmin(int *ret, int *aid, int *bid, wrd *N);
+str PQutopn2_hgemax(int *ret, int *aid, int *bid, wrd *N);
+str PQutopn2_hgemin(int *ret, int *aid, int *bid, wrd *N);
 str PQutopn2_intmax(int *ret, int *aid, int *bid, wrd *N);
 str PQutopn2_intmin(int *ret, int *aid, int *bid, wrd *N);
 str PQutopn2_lngmax(int *ret, int *aid, int *bid, wrd *N);
@@ -1996,6 +2010,8 @@ str PQutopn_dblmax(int *ret, int *bid, w
 str PQutopn_dblmin(int *ret, int *bid, wrd *N);
 str PQutopn_fltmax(int *ret, int *bid, wrd *N);
 str PQutopn_fltmin(int *ret, int *bid, wrd *N);
+str PQutopn_hgemax(int *ret, int *bid, wrd *N);
+str PQutopn_hgemin(int *ret, int *bid, wrd *N);
 str PQutopn_intmax(int *ret, int *bid, wrd *N);
 str PQutopn_intmin(int *ret, int *bid, wrd *N);
 str PQutopn_lngmax(int *ret, int *bid, wrd *N);
diff --git a/monetdb5/modules/mal/pqueue.c b/monetdb5/modules/mal/pqueue.c
--- a/monetdb5/modules/mal/pqueue.c
+++ b/monetdb5/modules/mal/pqueue.c
@@ -393,6 +393,10 @@ pqueueimpl_minmax(oid, oidmin, >)
 pqueueimpl_minmax(oid, oidmax, >)
 pqueueimpl_minmax(lng, lngmin, <)
 pqueueimpl_minmax(lng, lngmax, >)
+#ifdef HAVE_HGE
+pqueueimpl_minmax(hge, hgemin, <)
+pqueueimpl_minmax(hge, hgemax, >)
+#endif
 pqueueimpl_minmax(flt, fltmin, <)
 pqueueimpl_minmax(flt, fltmax, >)
 pqueueimpl_minmax(dbl, dblmin, <)
@@ -1248,6 +1252,9 @@ PQminmax(int)
 PQminmax(oid)
 PQminmax(wrd)
 PQminmax(lng)
+#ifdef HAVE_HGE
+PQminmax(hge)
+#endif
 PQminmax(flt)
 PQminmax(dbl)
 PQimpl2(any, min)
diff --git a/monetdb5/modules/mal/pqueue.h b/monetdb5/modules/mal/pqueue.h
--- a/monetdb5/modules/mal/pqueue.h
+++ b/monetdb5/modules/mal/pqueue.h
@@ -154,6 +154,28 @@ pqueue_export str PQutopn_lngmax(int *re
 pqueue_export str PQtopn2_lngmax(int *ret, int *aid, int *bid, wrd *N);
 pqueue_export str PQutopn2_lngmax(int *ret, int *aid, int *bid, wrd *N);
 
+#ifdef HAVE_HGE
+pqueue_export str PQenqueue_hgemin(int *ret, int *bid, oid *idx, hge *el);
+pqueue_export str PQtopreplace_hgemin(int *ret, int *bid, oid *idx, hge *el);
+pqueue_export str PQmovedowntop_hgemin(int *ret, int *bid);
+pqueue_export str PQdequeue_hgemin(int *ret, int *bid);
+
+pqueue_export str PQtopn_hgemin(int *ret, int *bid, wrd *N);
+pqueue_export str PQutopn_hgemin(int *ret, int *bid, wrd *N);
+pqueue_export str PQtopn2_hgemin(int *ret, int *aid, int *bid, wrd *N);
+pqueue_export str PQutopn2_hgemin(int *ret, int *aid, int *bid, wrd *N);
+
+pqueue_export str PQenqueue_hgemax(int *ret, int *bid, oid *idx, hge *el);
+pqueue_export str PQtopreplace_hgemax(int *ret, int *bid, oid *idx, hge *el);
+pqueue_export str PQmovedowntop_hgemax(int *ret, int *bid);
+pqueue_export str PQdequeue_hgemax(int *ret, int *bid);
+
+pqueue_export str PQtopn_hgemax(int *ret, int *bid, wrd *N);
+pqueue_export str PQutopn_hgemax(int *ret, int *bid, wrd *N);
+pqueue_export str PQtopn2_hgemax(int *ret, int *aid, int *bid, wrd *N);
+pqueue_export str PQutopn2_hgemax(int *ret, int *aid, int *bid, wrd *N);
+#endif
+
 pqueue_export str PQenqueue_fltmin(int *ret, int *bid, oid *idx, flt *el);
 pqueue_export str PQtopreplace_fltmin(int *ret, int *bid, oid *idx, flt *el);
 pqueue_export str PQmovedowntop_fltmin(int *ret, int *bid);
diff --git a/monetdb5/modules/mal/pqueue.mal b/monetdb5/modules/mal/pqueue.mal
--- a/monetdb5/modules/mal/pqueue.mal
+++ b/monetdb5/modules/mal/pqueue.mal
@@ -95,6 +95,18 @@ command dequeue_max(h:bat[:oid,:lng]) ad
 command topn_max(t:bat[:oid,:lng], n:wrd) :bat[:oid,:oid] address 
PQtopn_lngmax;
 command utopn_max(t:bat[:oid,:lng], n:wrd) :bat[:oid,:oid] address 
PQutopn_lngmax;
 
+command enqueue_min(h:bat[:oid,:hge], id:oid, value:hge) address 
PQenqueue_hgemin;
+command topreplace_min(h:bat[:oid,:hge], id:oid, value:hge) address 
PQtopreplace_hgemin;
+command dequeue_min(h:bat[:oid,:hge]) address PQdequeue_hgemin;
+command topn_min(t:bat[:oid,:hge], n:wrd) :bat[:oid,:oid] address 
PQtopn_hgemin;
+command utopn_min(t:bat[:oid,:hge], n:wrd) :bat[:oid,:oid] address 
PQutopn_hgemin;
+
+command enqueue_max(h:bat[:oid,:hge], id:oid, value:hge) address 
PQenqueue_hgemax;
+command topreplace_max(h:bat[:oid,:hge], id:oid, value:hge) address 
PQtopreplace_hgemax;
+command dequeue_max(h:bat[:oid,:hge]) address PQdequeue_hgemax;
+command topn_max(t:bat[:oid,:hge], n:wrd) :bat[:oid,:oid] address 
PQtopn_hgemax;
+command utopn_max(t:bat[:oid,:hge], n:wrd) :bat[:oid,:oid] address 
PQutopn_hgemax;
+
 command enqueue_min(h:bat[:oid,:flt], id:oid, value:flt) address 
PQenqueue_fltmin;
 command topreplace_min(h:bat[:oid,:flt], id:oid, value:flt) address 
PQtopreplace_fltmin;
 command dequeue_min(h:bat[:oid,:flt]) address PQdequeue_fltmin;
_______________________________________________
checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to