Move depth computation out of fail low loop
authorMarco Costalba <mcostalba@gmail.com>
Fri, 6 Aug 2010 21:30:50 +0000 (22:30 +0100)
committerMarco Costalba <mcostalba@gmail.com>
Fri, 6 Aug 2010 21:30:50 +0000 (22:30 +0100)
In root_search() we can compute depth at the beginning
once and for all.

Spotted by Ralph Stoesser.

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
src/search.cpp

index 2ab983970dcceb8f8466db7398b875ef9962709c..fff00026c6cdad7380c32d1e4b53471f65efae05 100644 (file)
@@ -715,6 +715,7 @@ namespace {
     alpha = *alphaPtr;
     beta = *betaPtr;
     isCheck = pos.is_check();
+    depth = (Iteration - 2) * OnePly + InitialDepth;
 
     // Step 1. Initialize node (polling is omitted at root)
     ss->currentMove = ss->bestMove = MOVE_NONE;
@@ -764,7 +765,6 @@ namespace {
             captureOrPromotion = pos.move_is_capture_or_promotion(move);
 
             // Step 11. Decide the new search depth
-            depth = (Iteration - 2) * OnePly + InitialDepth;
             ext = extension<PV>(pos, move, captureOrPromotion, moveIsCheck, false, false, &dangerous);
             newDepth = depth + ext;