Changeset: dac8e6bc69e3 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/dac8e6bc69e3
Modified Files:
        gdk/gdk_calc.c
Branch: Jan2022
Log Message:

Can't use llroundl to round long double to int128 since we'd loose bits.


diffs (20 lines):

diff --git a/gdk/gdk_calc.c b/gdk/gdk_calc.c
--- a/gdk/gdk_calc.c
+++ b/gdk/gdk_calc.c
@@ -6756,10 +6756,16 @@ typedef long double ldouble;
 #ifdef TRUNCATE_NUMBERS
 #define rounddbl(x)    (x)
 #else
+#ifdef HAVE_HGE
+/* can't round to hge via lng since we might loose significant bits, so
+ * just keep it long double */
+#define rounddbl(x)    roundl(x)
+#else
 /* round long double to long long int in one go */
 #define rounddbl(x)    llroundl(x)
 #endif
 #endif
+#endif
 
 #define absbte(x)      abs(x)
 #define abssht(x)      abs(x)
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to