]> git.sesse.net Git - stockfish/blobdiff - src/pawns.cpp
Calculate min distance between king and his pawns
[stockfish] / src / pawns.cpp
index 049e73bf9fb3e41e41ee5e1ee325d93b8b82143a..f71e2a3970f8cbd520e8567ec7d6729126b05eb8 100644 (file)
@@ -261,6 +261,11 @@ Score PawnEntry::update_safety(const Position& pos, Square ksq) {
 
   kingSquares[Us] = ksq;
   castleRights[Us] = pos.can_castle(Us);
+  minKPdistance[Us] = 0;
+
+  Bitboard pawns = pos.pieces(Us, PAWN);
+  if (pawns)
+      while (!(DistanceRingsBB[ksq][minKPdistance[Us]++] & pawns)) {}
 
   if (relative_rank(Us, ksq) > RANK_4)
       return kingSafety[Us] = SCORE_ZERO;