X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fposition.h;h=766a84518c3f5a1f3bac447a119cd4788f1a0d8d;hb=9446dd6da335932b747c0ca2522da9970bb0956e;hp=0aac1c36609a19c5dcaba5e9e0f739209c9c4bdf;hpb=a4a0ffce711962c0b04b35998c3c06491be373bf;p=stockfish diff --git a/src/position.h b/src/position.h index 0aac1c36..766a8451 100644 --- a/src/position.h +++ b/src/position.h @@ -100,7 +100,7 @@ enum Phase { struct StateInfo { Key pawnKey, materialKey; - int castleRights, rule50, pliesFromNull; + int castleRights, rule50, gamePly, pliesFromNull; Square epSquare; Score value; Value npMaterial[2]; @@ -228,9 +228,6 @@ public: // Information about pawns bool pawn_is_passed(Color c, Square s) const; - static bool pawn_is_passed(Bitboard theirPawns, Color c, Square s); - static bool pawn_is_isolated(Bitboard ourPawns, Square s); - static bool pawn_is_doubled(Bitboard ourPawns, Color c, Square s); // Weak squares bool square_is_weak(Square s, Color c) const; @@ -293,7 +290,7 @@ private: void allow_ooo(Color c); // Helper functions for doing and undoing moves - void do_capture_move(Bitboard& key, PieceType capture, Color them, Square to, bool ep); + void do_capture_move(Key& key, PieceType capture, Color them, Square to, bool ep); void do_castle_move(Move m); void undo_castle_move(Move m); void find_checkers(); @@ -326,7 +323,6 @@ private: // Other info Color sideToMove; - int gamePly; Key history[MaxGameLength]; int castleRightsMask[64]; StateInfo startState; @@ -337,7 +333,6 @@ private: static Key zobrist[2][8][64]; static Key zobEp[64]; static Key zobCastle[16]; - static Key zobMaterial[2][8][16]; static Key zobSideToMove; static Score PieceSquareTable[16][64]; static Key zobExclusion; @@ -485,20 +480,8 @@ inline bool Position::pawn_is_passed(Color c, Square s) const { return !(pieces(PAWN, opposite_color(c)) & passed_pawn_mask(c, s)); } -inline bool Position::pawn_is_passed(Bitboard theirPawns, Color c, Square s) { - return !(theirPawns & passed_pawn_mask(c, s)); -} - -inline bool Position::pawn_is_isolated(Bitboard ourPawns, Square s) { - return !(ourPawns & neighboring_files_bb(s)); -} - -inline bool Position::pawn_is_doubled(Bitboard ourPawns, Color c, Square s) { - return ourPawns & squares_behind(c, s); -} - inline bool Position::square_is_weak(Square s, Color c) const { - return !(pieces(PAWN, c) & outpost_mask(opposite_color(c), s)); + return !(pieces(PAWN, opposite_color(c)) & attack_span_mask(c, s)); } inline Key Position::get_key() const {