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