From: Marco Costalba Date: Mon, 31 Dec 2012 15:28:40 +0000 (+0100) Subject: Remove some obsolete asserts on TT values X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=193741218c79692578a25424b7f554a5a2b12f95;ds=sidebyside Remove some obsolete asserts on TT values Now that insert_pv_in_tt() stores VALUE_NONE in TT's position evaluation those 2 asserts are obselete. No functional change. --- diff --git a/src/search.cpp b/src/search.cpp index dcd4a5ed..c574058d 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -584,15 +584,9 @@ namespace { else if (tte) { - // Following asserts are valid only in single thread condition because - // TT access is always racy and its contents cannot be trusted. - assert(tte->static_value() != VALUE_NONE || Threads.size() > 1); - assert(ttValue != VALUE_NONE || tte->type() == BOUND_NONE || Threads.size() > 1); - - ss->staticEval = eval = tte->static_value(); - ss->evalMargin = tte->static_value_margin(); - - if (eval == VALUE_NONE || ss->evalMargin == VALUE_NONE) // Due to a race + // Never assume anything on values stored in TT + if ( (ss->staticEval = eval = tte->static_value()) == VALUE_NONE + ||(ss->evalMargin = tte->static_value_margin()) == VALUE_NONE) eval = ss->staticEval = evaluate(pos, ss->evalMargin); // Can ttValue be used as a better position evaluation? @@ -1175,12 +1169,9 @@ split_point_start: // At split points actual search starts from here } else if (tte) { - assert(tte->static_value() != VALUE_NONE || Threads.size() > 1); - - ss->staticEval = bestValue = tte->static_value(); - ss->evalMargin = tte->static_value_margin(); - - if (ss->staticEval == VALUE_NONE || ss->evalMargin == VALUE_NONE) // Due to a race + // Never assume anything on values stored in TT + if ( (ss->staticEval = bestValue = tte->static_value()) == VALUE_NONE + ||(ss->evalMargin = tte->static_value_margin()) == VALUE_NONE) ss->staticEval = bestValue = evaluate(pos, ss->evalMargin); } else