From ebe021f6a5da63cf0e31da89d4c21e9b5f673fcd Mon Sep 17 00:00:00 2001 From: VoyagerOne Date: Sun, 2 Apr 2017 20:31:52 -0700 Subject: [PATCH 1/1] Don't update TT at excluded move ply STC: LLR: 2.96 (-2.94,2.94) [0.00,5.00] Total: 38906 W: 7125 L: 6835 D: 24946 LTC: LLR: 2.95 (-2.94,2.94) [0.00,5.00] Total: 28600 W: 3752 L: 3543 D: 21305 Bench: 6861050 Closes #1048 --- src/search.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/search.cpp b/src/search.cpp index 7029ae03..d555b62e 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1125,10 +1125,11 @@ moves_loop: // When in check search starts from here && cm_ok) update_cm_stats(ss-1, pos.piece_on(prevSq), prevSq, stat_bonus(depth)); - tte->save(posKey, value_to_tt(bestValue, ss->ply), - bestValue >= beta ? BOUND_LOWER : - PvNode && bestMove ? BOUND_EXACT : BOUND_UPPER, - depth, bestMove, ss->staticEval, TT.generation()); + if(!excludedMove) + tte->save(posKey, value_to_tt(bestValue, ss->ply), + bestValue >= beta ? BOUND_LOWER : + PvNode && bestMove ? BOUND_EXACT : BOUND_UPPER, + depth, bestMove, ss->staticEval, TT.generation()); assert(bestValue > -VALUE_INFINITE && bestValue < VALUE_INFINITE); -- 2.39.2