X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fbitboard.h;h=c957a40fe23d61296a0e094bf36bd44581cda5d6;hp=bef6467560bc7efcb122514954686ea5c61b3e93;hb=e06a117d5e78ec4edc051f2b161d36559f784d37;hpb=b1b19343cd1f5ec65084dc11a0a0b4d5ece2a24b;ds=sidebyside diff --git a/src/bitboard.h b/src/bitboard.h index bef64675..c957a40f 100644 --- a/src/bitboard.h +++ b/src/bitboard.h @@ -66,7 +66,6 @@ extern Bitboard FileBB[FILE_NB]; extern Bitboard RankBB[RANK_NB]; extern Bitboard AdjacentFilesBB[FILE_NB]; extern Bitboard InFrontBB[COLOR_NB][RANK_NB]; -extern Bitboard StepAttacksBB[PIECE_NB][SQUARE_NB]; extern Bitboard BetweenBB[SQUARE_NB][SQUARE_NB]; extern Bitboard LineBB[SQUARE_NB][SQUARE_NB]; extern Bitboard DistanceRingBB[SQUARE_NB][8]; @@ -74,6 +73,7 @@ extern Bitboard ForwardBB[COLOR_NB][SQUARE_NB]; extern Bitboard PassedPawnMask[COLOR_NB][SQUARE_NB]; extern Bitboard PawnAttackSpan[COLOR_NB][SQUARE_NB]; extern Bitboard PseudoAttacks[PIECE_TYPE_NB][SQUARE_NB]; +extern Bitboard PawnAttacks[COLOR_NB][SQUARE_NB]; /// Overloads of bitwise operators between a Bitboard and a Square for testing @@ -246,14 +246,16 @@ inline Bitboard attacks_bb(Square s, Bitboard occupied) { return (Pt == ROOK ? RookAttacks : BishopAttacks)[s][magic_index(s, occupied)]; } -inline Bitboard attacks_bb(Piece pc, Square s, Bitboard occupied) { +inline Bitboard attacks_bb(PieceType pt, Square s, Bitboard occupied) { - switch (type_of(pc)) + assert(pt != PAWN); + + switch (pt) { case BISHOP: return attacks_bb(s, occupied); case ROOK : return attacks_bb(s, occupied); case QUEEN : return attacks_bb(s, occupied) | attacks_bb(s, occupied); - default : return StepAttacksBB[pc][s]; + default : return PseudoAttacks[pt][s]; } }