X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fsearch.cpp;h=75b6bd0caefd42ebf5f4c2c7bced970b88d66074;hb=8b45b603271f8d85ac6fbf4e7cfd68c8da06a3cd;hp=695d4ae540ee432412de71c7791b564c0b717459;hpb=5c20f59788c30cdfc5b1d16dae125ab394c5145c;p=stockfish diff --git a/src/search.cpp b/src/search.cpp index 695d4ae5..75b6bd0c 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1080,7 +1080,7 @@ namespace { { // Try to reduce non-pv search depth by one ply if move seems not problematic, // if the move fails high will be re-searched at full depth. - if ( depth >= 2*OnePly + if ( depth >= 3*OnePly && moveCount >= LMRPVMoves && !dangerous && !moveIsCapture @@ -1251,6 +1251,9 @@ namespace { if (value_is_mate(nullValue)) { + if (nullValue == value_mated_in(ply + 2)) + mateThreat = true; + /* Do not return unproven mates */ } else if (nullValue >= beta) @@ -1269,9 +1272,6 @@ namespace { // move which was reduced. If a connection is found, return a fail // low score (which will cause the reduced move to fail high in the // parent node, which will trigger a re-search with full depth). - if (nullValue == value_mated_in(ply + 2)) - mateThreat = true; - ss[ply].threatMove = ss[ply + 1].currentMove; if ( depth < ThreatDepth && ss[ply - 1].reduction @@ -1364,7 +1364,7 @@ namespace { // Try to reduce non-pv search depth by one ply if move seems not problematic, // if the move fails high will be re-searched at full depth. - if ( depth >= 2*OnePly + if ( depth >= 3*OnePly && moveCount >= LMRNonPVMoves && !dangerous && !moveIsCapture @@ -1492,7 +1492,6 @@ namespace { else if (tte && tte->type() == VALUE_TYPE_EVAL) { // Use the cached evaluation score if possible - assert(tte->value() == evaluate(pos, ei, threadID)); assert(ei.futilityMargin == Value(0)); staticValue = tte->value();