diff --git a/src/search.cpp b/src/search.cpp index f2363162..990cbae3 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -982,10 +982,6 @@ moves_loop: // When in check, search starts here Depth r = reduction(improving, depth, moveCount, delta); - // Decrease reduction if position is or has been on the PV (*Scaler) - if (ss->ttPv) - r -= 1037 + (ttData.value > alpha) * 965 + (ttData.depth >= depth) * 960; - // Step 14. Pruning at shallow depth. // Depth conditions are important for mate finding. if (!rootNode && pos.non_pawn_material(us) && !is_loss(bestValue)) @@ -1146,6 +1142,9 @@ moves_loop: // When in check, search starts here uint64_t nodeCount = rootNode ? uint64_t(nodes) : 0; // Decrease reduction for PvNodes (*Scaler) + if (ss->ttPv) + r -= 1037 + (ttData.value > alpha) * 965 + (ttData.depth >= depth) * 960; + if (PvNode) r -= 1018;