X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fpawns.cpp;h=135633a3ab9f74d8f1e6654983df16d781a92365;hb=cbb1a8ed31679fe32d2694448a10b031390a32b3;hp=e1952b60260d8a8a55666450f923f4d41a8d73ce;hpb=cd782c11ec8e765e3a323e422cea19d7d053a07c;p=stockfish
diff --git a/src/pawns.cpp b/src/pawns.cpp
index e1952b60..135633a3 100644
--- a/src/pawns.cpp
+++ b/src/pawns.cpp
@@ -17,6 +17,7 @@
along with this program. If not, see .
*/
+#include
#include
#include "bitboard.h"
@@ -134,7 +135,7 @@ namespace {
// be backward. If there are friendly pawns behind on adjacent files
// or if can capture an enemy pawn it cannot be backward either.
if ( !(passed | isolated | chain)
- && !(ourPawns & attack_span_mask(Them, s))
+ && !(ourPawns & pawn_attack_span(Them, s))
&& !(pos.attacks_from(s, Us) & theirPawns))
{
// We now know that there are no friendly pawns beside or behind this
@@ -153,15 +154,15 @@ namespace {
backward = (b | shift_bb(b)) & theirPawns;
}
- assert(opposed | passed | (attack_span_mask(Us, s) & theirPawns));
+ assert(opposed | passed | (pawn_attack_span(Us, s) & theirPawns));
// A not passed pawn is a candidate to become passed if it is free to
// advance and if the number of friendly pawns beside or behind this
// pawn on adjacent files is higher or equal than the number of
// enemy pawns in the forward direction on the adjacent files.
candidate = !(opposed | passed | backward | isolated)
- && (b = attack_span_mask(Them, s + pawn_push(Us)) & ourPawns) != 0
- && popcount(b) >= popcount(attack_span_mask(Us, s) & theirPawns);
+ && (b = pawn_attack_span(Them, s + pawn_push(Us)) & ourPawns) != 0
+ && popcount(b) >= popcount(pawn_attack_span(Us, s) & theirPawns);
// Passed pawns will be properly scored in evaluation because we need
// full attack info to evaluate passed pawns. Only the frontmost passed
@@ -220,7 +221,7 @@ Value Entry::shelter_storm(const Position& pos, Square ksq) {
const Color Them = (Us == WHITE ? BLACK : WHITE);
Value safety = MaxSafetyBonus;
- Bitboard b = pos.pieces(PAWN) & (in_front_bb(Us, ksq) | rank_bb(ksq));
+ Bitboard b = pos.pieces(PAWN) & (in_front_bb(Us, rank_of(ksq)) | rank_bb(ksq));
Bitboard ourPawns = b & pos.pieces(Us) & ~rank_bb(ksq);
Bitboard theirPawns = b & pos.pieces(Them);
Rank rkUs, rkThem;