X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fpawns.cpp;h=0a88c9f1ba37b07a3738800fea6d11f0c003ec09;hp=095126d451964942b26b6a79d5118e606d524b31;hb=893a08a8c2eac3c2e7d2216b51811cc7378e2239;hpb=a858b5a84e8702390adee4388034c57570e65fee diff --git a/src/pawns.cpp b/src/pawns.cpp index 095126d4..0a88c9f1 100644 --- a/src/pawns.cpp +++ b/src/pawns.cpp @@ -18,6 +18,7 @@ along with this program. If not, see . */ +#include #include #include "bitboard.h" @@ -175,14 +176,14 @@ Value Entry::evaluate_shelter(const Position& pos, Square ksq) { constexpr Color Them = (Us == WHITE ? BLACK : WHITE); constexpr Direction Down = (Us == WHITE ? SOUTH : NORTH); - constexpr Bitboard BlockRanks = (Us == WHITE ? Rank1BB | Rank2BB : Rank8BB | Rank7BB); + constexpr Bitboard BlockSquares = (Rank1BB | Rank2BB | Rank7BB | Rank8BB) + & (FileABB | FileHBB); Bitboard b = pos.pieces(PAWN) & ~forward_ranks_bb(Them, ksq); Bitboard ourPawns = b & pos.pieces(Us); Bitboard theirPawns = b & pos.pieces(Them); - Value safety = (shift(theirPawns) & (FileABB | FileHBB) & BlockRanks & ksq) ? - Value(374) : Value(5); + Value safety = (shift(theirPawns) & BlockSquares & ksq) ? Value(374) : Value(5); File center = clamp(file_of(ksq), FILE_B, FILE_G); for (File f = File(center - 1); f <= File(center + 1); ++f)