From fb2fdb21d387d35df0f40cc5196cebb4d36ed2ee Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Tue, 28 Jun 2011 18:01:51 +0100 Subject: [PATCH] Retire find_checkers() No functional change. Signed-off-by: Marco Costalba --- src/position.cpp | 17 ++--------------- src/position.h | 1 - 2 files changed, 2 insertions(+), 16 deletions(-) diff --git a/src/position.cpp b/src/position.cpp index b57cc3c7..e526885e 100644 --- a/src/position.cpp +++ b/src/position.cpp @@ -207,7 +207,7 @@ void Position::from_fen(const string& fen, bool isChess960) { // Various initialisations chess960 = isChess960; - find_checkers(); + st->checkersBB = attackers_to(king_square(sideToMove)) & pieces(opposite_color(sideToMove)); st->key = compute_key(); st->pawnKey = compute_pawn_key(); @@ -493,19 +493,6 @@ bool Position::move_attacks_square(Move m, Square s) const { } -/// Position::find_checkers() computes the checkersBB bitboard, which -/// contains a nonzero bit for each checking piece (0, 1 or 2). It -/// currently works by calling Position::attackers_to, which is probably -/// inefficient. Consider rewriting this function to use the last move -/// played, like in non-bitboard versions of Glaurung. - -void Position::find_checkers() { - - Color us = side_to_move(); - st->checkersBB = attackers_to(king_square(us)) & pieces(opposite_color(us)); -} - - /// Position::pl_move_is_legal() tests whether a pseudo-legal move is legal bool Position::pl_move_is_legal(Move m, Bitboard pinned) const { @@ -1807,7 +1794,7 @@ void Position::flip() { st->epSquare = flip_square(pos.st->epSquare); // Checkers - find_checkers(); + st->checkersBB = attackers_to(king_square(sideToMove)) & pieces(opposite_color(sideToMove)); // Hash keys st->key = compute_key(); diff --git a/src/position.h b/src/position.h index 79406d52..cdc43364 100644 --- a/src/position.h +++ b/src/position.h @@ -252,7 +252,6 @@ private: 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(); template Bitboard hidden_checkers(Color c) const; -- 2.39.2