Don't update killers for evasions
authorMarco Costalba <mcostalba@gmail.com>
Thu, 8 Dec 2011 16:54:37 +0000 (17:54 +0100)
committerMarco Costalba <mcostalba@gmail.com>
Sat, 24 Dec 2011 08:25:20 +0000 (09:25 +0100)
We don't use killers to order evasions, so it
seems natural do not consider an evasion cut-off
move as a possible killer. Test shows almost no
change, as it should be becuase this is a really
tiny change, but neverthless seems the correct
thing to do.

After 11893 games
Mod vs Orig 1773 - 1696 - 8424 ELO +2 (+-3.4)

Idea from Critter.

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

index 9393db6505f106db0eb7b57ecc034444cefa34df..0ca539ae235797afa29867368938a3a948f0aaab 100644 (file)
@@ -1141,7 +1141,9 @@ split_point_start: // At split points actual search starts from here
         TT.store(posKey, value_to_tt(bestValue, ss->ply), vt, depth, move, ss->eval, ss->evalMargin);
 
         // Update killers and history for non capture cut-off moves
-        if (bestValue >= beta && !pos.is_capture_or_promotion(move))
+        if (    bestValue >= beta
+            && !pos.is_capture_or_promotion(move)
+            && !inCheck)
         {
             if (move != ss->killers[0])
             {