Changeset: a2b7d4acb7d8 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/a2b7d4acb7d8 Modified Files: gdk/gdk_calc_private.h Branch: Aug2024 Log Message:
Fix for systems with __int128, no hge, no __has_builtin. I.e. our power8 system without hugeint. diffs (34 lines): diff --git a/gdk/gdk_calc_private.h b/gdk/gdk_calc_private.h --- a/gdk/gdk_calc_private.h +++ b/gdk/gdk_calc_private.h @@ -121,7 +121,7 @@ #define MUL4_WITH_CHECK(lft, rgt, TYPE3, dst, max, TYPE4, on_overflow) \ do { \ TYPE4 c = (TYPE4) (lft) * (rgt); \ - if (c < (TYPE4) -(max) /*|| c > (TYPE4) (max)*/) { \ + if (c < (TYPE4) -(max) || c > (TYPE4) (max)) { \ on_overflow; \ } else { \ (dst) = (TYPE3) c; \ @@ -132,12 +132,11 @@ /* integer version using Gnu CC builtin function for overflow check */ #define MULI4_WITH_CHECK(lft, rgt, TYPE3, dst, max, TYPE4, on_overflow) \ OP_WITH_CHECK(lft, rgt, dst, mul, max, on_overflow) -#define LNGMUL_CHECK(lft, rgt, dst, max, on_overflow) \ - OP_WITH_CHECK(lft, rgt, dst, mul, max, on_overflow) #else /* integer version using generic version */ #define MULI4_WITH_CHECK(lft, rgt, TYPE3, dst, max, TYPE4, on_overflow) \ MUL4_WITH_CHECK(lft, rgt, TYPE3, dst, max, TYPE4, on_overflow) +#endif #ifdef HAVE_HGE #define LNGMUL_CHECK(lft, rgt, dst, max, on_overflow) \ MULI4_WITH_CHECK(lft, rgt, lng, dst, max, hge, on_overflow) @@ -189,7 +188,6 @@ } \ } while (0) #endif /* HAVE_HGE */ -#endif #define MULF4_WITH_CHECK(lft, rgt, TYPE3, dst, max, TYPE4, on_overflow) \ MUL4_WITH_CHECK(lft, rgt, TYPE3, dst, max, TYPE4, on_overflow) _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org