X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fposition.h;h=ded55d7b80d99b6ee56267b3ce7237b6ed0aa74a;hp=baf49705db7a6e00034a9ed9f561f267fda9b9cc;hb=1e032ece92da0085000cfdde28cab05029dedce3;hpb=1d1b7df7c6b3496d1a3fe926cadf25d91e1558f6 diff --git a/src/position.h b/src/position.h index baf49705..ded55d7b 100644 --- a/src/position.h +++ b/src/position.h @@ -171,6 +171,9 @@ private: // Initialization helpers (used while setting up a position) void clear(); void set_castling_right(Color c, Square rfrom); + void compute_keys(StateInfo* si) const; + void compute_non_pawn_material(StateInfo* si) const; + Score compute_psq_score() const; // Helper functions void do_castling(Square kfrom, Square kto, Square rfrom, Square rto); @@ -179,15 +182,6 @@ private: void remove_piece(Square s, Color c, PieceType pt); void move_piece(Square from, Square to, Color c, PieceType pt); - // Computing hash keys from scratch (for initialization and debugging) - Key compute_key() const; - Key compute_pawn_key() const; - Key compute_material_key() const; - - // Computing incremental evaluation scores and material counts - Score compute_psq_score() const; - Value compute_non_pawn_material(Color c) const; - // Board and pieces Piece board[SQUARE_NB]; Bitboard byTypeBB[PIECE_TYPE_NB]; @@ -292,7 +286,7 @@ inline Square Position::castling_rook_square(CastlingRight cr) const { template inline Bitboard Position::attacks_from(Square s) const { - return Pt == BISHOP || Pt == ROOK ? attacks_bb(s, pieces()) + return Pt == BISHOP || Pt == ROOK ? attacks_bb(s, byTypeBB[ALL_PIECES]) : Pt == QUEEN ? attacks_from(s) | attacks_from(s) : StepAttacksBB[Pt][s]; }