X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Ftt.cpp;h=010bdc954e60b0b0a438fdf2bdc417b3a65c0cef;hp=55aad112af3c252d6006265132e8cb657d70d5f6;hb=6fe36d13de0ec25a8d35ca256dacee8b854856be;hpb=06a5b602dc32e5dcbb00f32968f1c18004ec93a2 diff --git a/src/tt.cpp b/src/tt.cpp index 55aad112..010bdc95 100644 --- a/src/tt.cpp +++ b/src/tt.cpp @@ -53,11 +53,9 @@ TranspositionTable::~TranspositionTable() { /// TranspositionTable::set_size sets the size of the transposition table, /// measured in megabytes. -void TranspositionTable::set_size(unsigned mbSize) { +void TranspositionTable::set_size(size_t mbSize) { - assert(mbSize >= 4 && mbSize <= 4096); - - unsigned newSize = 1024; + size_t newSize = 1024; // We store a cluster of ClusterSize number of TTEntry for each position // and newSize is the maximum number of storable positions. @@ -208,7 +206,9 @@ void TranspositionTable::insert_pv(const Position& pos, Move pv[]) { for (int i = 0; pv[i] != MOVE_NONE; i++) { - store(p.get_key(), VALUE_NONE, VALUE_TYPE_NONE, Depth(-127*OnePly), pv[i]); + TTEntry *tte = retrieve(p.get_key()); + if (!tte || tte->move() != pv[i]) + store(p.get_key(), VALUE_NONE, VALUE_TYPE_NONE, Depth(-127*OnePly), pv[i]); p.do_move(pv[i], st); } }