X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Ftt.h;h=c7c39e90cc9918d3cddb8611a12d8e66ffbf63a8;hp=3484f0eb46163895d9dca72b47a70bd6e6fa5453;hb=293c44bc09587259818a82e1d2afb511e552badd;hpb=fe3352665b2dfc6c339136856c782057a5c5476e diff --git a/src/tt.h b/src/tt.h index 3484f0eb..c7c39e90 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() { delete [] table; } void new_search() { generation++; } TTEntry* probe(const Key key) const; @@ -96,8 +96,8 @@ public: void store(const Key key, Value v, Bound type, Depth d, Move m, Value statV, Value kingD); private: - size_t size; - TTEntry* entries; + uint32_t hashMask; + TTEntry* table; uint8_t generation; // Size must be not bigger then TTEntry::generation8 }; @@ -110,7 +110,7 @@ extern TranspositionTable TT; inline TTEntry* TranspositionTable::first_entry(const Key key) const { - return entries + ((uint32_t)key & (size - 1)) * ClusterSize; + return table + ((uint32_t)key & hashMask); }