From 3b14b17664b30933e55d0fb1c8248ddab8b49110 Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Sun, 13 Jan 2013 12:34:31 +0100 Subject: [PATCH 1/1] Simplify a condition in search() And rearrange best value update in case of SpNode. No functional change. --- src/search.cpp | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/search.cpp b/src/search.cpp index dc82d34d..b3f66c6a 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -902,7 +902,7 @@ split_point_start: // At split points actual search starts from here continue; } - pvMove = PvNode ? moveCount == 1 : false; + pvMove = PvNode && moveCount == 1; ss->currentMove = move; if (!SpNode && !captureOrPromotion && playedMoveCount < 64) movesSearched[playedMoveCount++] = move; @@ -994,24 +994,21 @@ split_point_start: // At split points actual search starts from here if (value > bestValue) { - bestValue = value; - if (SpNode) sp->bestValue = value; + bestValue = SpNode ? sp->bestValue = value : value; if (value > alpha) { - bestMove = move; - if (SpNode) sp->bestMove = move; + bestMove = SpNode ? sp->bestMove = move : move; - if (PvNode && value < beta) - { - alpha = value; // Update alpha here! Always alpha < beta - if (SpNode) sp->alpha = value; - } + if (PvNode && value < beta) // Update alpha! Always alpha < beta + alpha = SpNode ? sp->alpha = value : value; else { assert(value >= beta); // Fail high - if (SpNode) sp->cutoff = true; + if (SpNode) + sp->cutoff = true; + break; } } -- 2.39.2