X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Ftt.h;h=1caa277e821ac0463110fe0df6487b74f7e20f79;hp=81bfd3b267385c2d50951c02d3736f5cf1601a32;hb=481eda4ca0121cfa16f5a29f364ca30ee2852409;hpb=c698362680d7d66801be100e20346bbbf4ec5c4f diff --git a/src/tt.h b/src/tt.h index 81bfd3b2..1caa277e 100644 --- a/src/tt.h +++ b/src/tt.h @@ -1,7 +1,7 @@ /* Stockfish, a UCI chess playing engine derived from Glaurung 2.1 Copyright (C) 2004-2008 Tord Romstad (Glaurung author) - Copyright (C) 2008-2012 Marco Costalba, Joona Kiiski, Tord Romstad + Copyright (C) 2008-2013 Marco Costalba, Joona Kiiski, Tord Romstad Stockfish is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -85,7 +85,7 @@ class TranspositionTable { static const unsigned ClusterSize = 4; // A cluster is 64 Bytes public: - ~TranspositionTable() { delete [] entries; } + ~TranspositionTable() { free(mem); } void new_search() { generation++; } TTEntry* probe(const Key key) const; @@ -96,8 +96,9 @@ public: void store(const Key key, Value v, Bound type, Depth d, Move m, Value statV, Value kingD); private: - uint32_t clusterMask; - TTEntry* entries; + uint32_t hashMask; + TTEntry* table; + void* mem; uint8_t generation; // Size must be not bigger then TTEntry::generation8 }; @@ -110,7 +111,7 @@ extern TranspositionTable TT; inline TTEntry* TranspositionTable::first_entry(const Key key) const { - return entries + ((uint32_t)key & clusterMask) * ClusterSize; + return table + ((uint32_t)key & hashMask); }