Changeset: fce7769eb1fe for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=fce7769eb1fe
Modified Files:
        gdk/gdk_calc_compare.h
Branch: int128
Log Message:

added int128 / "hge" support in gdk/gdk_calc_compare.h


diffs (156 lines):

diff --git a/gdk/gdk_calc_compare.h b/gdk/gdk_calc_compare.h
--- a/gdk/gdk_calc_compare.h
+++ b/gdk/gdk_calc_compare.h
@@ -110,6 +110,14 @@ op_typeswitchloop(const void *lft, int t
                        else
                                BINARY_3TYPE_FUNC(bte, lng, TPE, OP);
                        break;
+#ifdef HAVE_HGE
+               case TYPE_hge:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(bte, hge, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(bte, hge, TPE, OP);
+                       break;
+#endif
                case TYPE_flt:
                        if (nonil)
                                BINARY_3TYPE_FUNC_nonil(bte, flt, TPE, OP);
@@ -158,6 +166,14 @@ op_typeswitchloop(const void *lft, int t
                        else
                                BINARY_3TYPE_FUNC(sht, lng, TPE, OP);
                        break;
+#ifdef HAVE_HGE
+               case TYPE_hge:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(sht, hge, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(sht, hge, TPE, OP);
+                       break;
+#endif
                case TYPE_flt:
                        if (nonil)
                                BINARY_3TYPE_FUNC_nonil(sht, flt, TPE, OP);
@@ -209,6 +225,14 @@ op_typeswitchloop(const void *lft, int t
                        else
                                BINARY_3TYPE_FUNC(int, lng, TPE, OP);
                        break;
+#ifdef HAVE_HGE
+               case TYPE_hge:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(int, hge, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(int, hge, TPE, OP);
+                       break;
+#endif
                case TYPE_flt:
                        if (nonil)
                                BINARY_3TYPE_FUNC_nonil(int, flt, TPE, OP);
@@ -260,6 +284,14 @@ op_typeswitchloop(const void *lft, int t
                        else
                                BINARY_3TYPE_FUNC(lng, lng, TPE, OP);
                        break;
+#ifdef HAVE_HGE
+               case TYPE_hge:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(lng, hge, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(lng, hge, TPE, OP);
+                       break;
+#endif
                case TYPE_flt:
                        if (nonil)
                                BINARY_3TYPE_FUNC_nonil(lng, flt, TPE, OP);
@@ -276,6 +308,62 @@ op_typeswitchloop(const void *lft, int t
                        goto unsupported;
                }
                break;
+#ifdef HAVE_HGE
+       case TYPE_hge:
+               switch (tp2) {
+               case TYPE_bte:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(hge, bte, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(hge, bte, TPE, OP);
+                       break;
+               case TYPE_sht:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(hge, sht, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(hge, sht, TPE, OP);
+                       break;
+               case TYPE_int:
+#if SIZEOF_WRD == SIZEOF_INT
+               case TYPE_wrd:
+#endif
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(hge, int, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(hge, int, TPE, OP);
+                       break;
+               case TYPE_lng:
+#if SIZEOF_WRD == SIZEOF_LNG
+               case TYPE_wrd:
+#endif
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(hge, lng, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(hge, lng, TPE, OP);
+                       break;
+               case TYPE_hge:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(hge, hge, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(hge, hge, TPE, OP);
+                       break;
+               case TYPE_flt:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(hge, flt, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(hge, flt, TPE, OP);
+                       break;
+               case TYPE_dbl:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(hge, dbl, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(hge, dbl, TPE, OP);
+                       break;
+               default:
+                       goto unsupported;
+               }
+               break;
+#endif
        case TYPE_flt:
                switch (tp2) {
                case TYPE_bte:
@@ -308,6 +396,14 @@ op_typeswitchloop(const void *lft, int t
                        else
                                BINARY_3TYPE_FUNC(flt, lng, TPE, OP);
                        break;
+#ifdef HAVE_HGE
+               case TYPE_hge:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(flt, hge, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(flt, hge, TPE, OP);
+                       break;
+#endif
                case TYPE_flt:
                        if (nonil)
                                BINARY_3TYPE_FUNC_nonil(flt, flt, TPE, OP);
@@ -356,6 +452,14 @@ op_typeswitchloop(const void *lft, int t
                        else
                                BINARY_3TYPE_FUNC(dbl, lng, TPE, OP);
                        break;
+#ifdef HAVE_HGE
+               case TYPE_hge:
+                       if (nonil)
+                               BINARY_3TYPE_FUNC_nonil(dbl, hge, TPE, OP);
+                       else
+                               BINARY_3TYPE_FUNC(dbl, hge, TPE, OP);
+                       break;
+#endif
                case TYPE_flt:
                        if (nonil)
                                BINARY_3TYPE_FUNC_nonil(dbl, flt, TPE, OP);
_______________________________________________
checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to