Changeset: 2c49803bf7c7 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/2c49803bf7c7
Modified Files:
monetdb5/modules/mal/txtsim.c
sql/server/rel_optimize_sel.c
Branch: default
Log Message:
The "official" (portable) way of writing a uint64_t constant uses UINT64_C().
diffs (49 lines):
diff --git a/monetdb5/modules/mal/txtsim.c b/monetdb5/modules/mal/txtsim.c
--- a/monetdb5/modules/mal/txtsim.c
+++ b/monetdb5/modules/mal/txtsim.c
@@ -462,10 +462,10 @@ popcount64(uint64_t x)
return (int) __popcnt64(x);
#endif
#else
- x = (x & 0x5555555555555555ULL) + ((x >> 1) & 0x5555555555555555ULL);
- x = (x & 0x3333333333333333ULL) + ((x >> 2) & 0x3333333333333333ULL);
- x = (x & 0x0F0F0F0F0F0F0F0FULL) + ((x >> 4) & 0x0F0F0F0F0F0F0F0FULL);
- return (int) ((x * 0x0101010101010101ULL) >> 56);
+ x = (x & UINT64_C(0x5555555555555555)) + ((x >> 1) &
UINT64_C(0x5555555555555555));
+ x = (x & UINT64_C(0x3333333333333333)) + ((x >> 2) &
UINT64_C(0x3333333333333333));
+ x = (x & UINT64_C(0x0F0F0F0F0F0F0F0F)) + ((x >> 4) &
UINT64_C(0x0F0F0F0F0F0F0F0F));
+ return (int) ((x * UINT64_C(0x0101010101010101)) >> 56);
#endif
}
@@ -501,10 +501,10 @@ str_alphabet_bitmap(str_item *s)
{
int i;
- s->abm = 0ULL;
+ s->abm = UINT64_C(0);
for (i = 0; i < s->len; i++)
- s->abm |= 1ULL << (s->cp_sequence[i] % 64);
+ s->abm |= UINT64_C(1) << (s->cp_sequence[i] % 64);
s->abm_popcount = popcount64(s->abm);
}
diff --git a/sql/server/rel_optimize_sel.c b/sql/server/rel_optimize_sel.c
--- a/sql/server/rel_optimize_sel.c
+++ b/sql/server/rel_optimize_sel.c
@@ -2056,10 +2056,10 @@ popcount64(uint64_t x)
return (uint32_t) __popcnt64(x);
#endif
#else
- x = (x & 0x5555555555555555ULL) + ((x >> 1) & 0x5555555555555555ULL);
- x = (x & 0x3333333333333333ULL) + ((x >> 2) & 0x3333333333333333ULL);
- x = (x & 0x0F0F0F0F0F0F0F0FULL) + ((x >> 4) & 0x0F0F0F0F0F0F0F0FULL);
- return (x * 0x0101010101010101ULL) >> 56;
+ x = (x & UINT64_C(0x5555555555555555)) + ((x >> 1) &
UINT64_C(0x5555555555555555));
+ x = (x & UINT64_C(0x3333333333333333)) + ((x >> 2) &
UINT64_C(0x3333333333333333));
+ x = (x & UINT64_C(0x0F0F0F0F0F0F0F0F)) + ((x >> 4) &
UINT64_C(0x0F0F0F0F0F0F0F0F));
+ return (x * UINT64_C(0x0101010101010101)) >> 56;
#endif
}
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]