X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fposition.h;h=403ce398ddbbcfe93669de28422f23e1577a61f6;hp=34e2f7eef16d0fdb9df11f043087801f3b33aa3d;hb=820c5c25b649d6bdd51bed14a16efdc11719b588;hpb=6c898a10be75bc2c295a7dca7f72e51e76ec8293 diff --git a/src/position.h b/src/position.h index 34e2f7ee..403ce398 100644 --- a/src/position.h +++ b/src/position.h @@ -115,6 +115,7 @@ public: Bitboard attacks_from(PieceType pt, Square s) const; template Bitboard attacks_from(Square s) const; template Bitboard attacks_from(Square s, Color c) const; + template Bitboard pawn_attacks(Bitboard b) const; Bitboard slider_blockers(Bitboard sliders, Square s, Bitboard& pinners) const; // Properties of moves @@ -288,6 +289,12 @@ inline Bitboard Position::attacks_from(PieceType pt, Square s) const { return attacks_bb(pt, s, byTypeBB[ALL_PIECES]); } +template +inline Bitboard Position::pawn_attacks(Bitboard b) const { + return c == WHITE ? shift(b) | shift(b) + : shift(b) | shift(b); +} + inline Bitboard Position::attackers_to(Square s) const { return attackers_to(s, byTypeBB[ALL_PIECES]); }