/// measured in megabytes. Transposition table consists of a power of 2 number
/// of clusters and each cluster consists of TTClusterSize number of TTEntry.
-void TranspositionTable::resize(uint64_t mbSize) {
+void TranspositionTable::resize(size_t mbSize) {
- assert(msb((mbSize * 1024 * 1024) / sizeof(TTCluster)) < 32);
-
- uint32_t newClusterCount = 1 << msb((mbSize * 1024 * 1024) / sizeof(TTCluster));
+ size_t newClusterCount = size_t(1) << msb((mbSize * 1024 * 1024) / sizeof(TTCluster));
if (newClusterCount == clusterCount)
return;
for (unsigned i = 0; i < TTClusterSize; ++i, ++tte)
if (tte->key16 == key16)
{
- tte->genBound8 = generation | tte->bound(); // Refresh
+ tte->genBound8 = uint8_t(generation | tte->bound()); // Refresh
return tte;
}