mirror of
https://github.com/opelly27/Stockfish.git
synced 2026-05-20 02:47:45 +00:00
Use a const pointer-to-member array for attacks
Allow the compiler to optimize member function access. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
+7
-10
@@ -48,21 +48,18 @@ Key Position::zobSideToMove;
|
||||
Value Position::MgPieceSquareTable[16][64];
|
||||
Value Position::EgPieceSquareTable[16][64];
|
||||
|
||||
Piece_attacks_fn piece_attacks_fn[7];
|
||||
const Piece_attacks_fn piece_attacks_fn[] =
|
||||
{ 0, 0,
|
||||
&Position::knight_attacks,
|
||||
&Position::bishop_attacks,
|
||||
&Position::rook_attacks,
|
||||
&Position::queen_attacks,
|
||||
&Position::king_attacks };
|
||||
|
||||
////
|
||||
//// Functions
|
||||
////
|
||||
|
||||
void init_piece_attacks_fn() {
|
||||
|
||||
piece_attacks_fn[KNIGHT] = &Position::knight_attacks;
|
||||
piece_attacks_fn[BISHOP] = &Position::bishop_attacks;
|
||||
piece_attacks_fn[ROOK] = &Position::rook_attacks;
|
||||
piece_attacks_fn[QUEEN] = &Position::queen_attacks;
|
||||
piece_attacks_fn[KING] = &Position::king_attacks;
|
||||
}
|
||||
|
||||
/// Constructors
|
||||
|
||||
Position::Position(const Position &pos) {
|
||||
|
||||
Reference in New Issue
Block a user