No functional change.
Signed-off-by: Marco Costalba <mcostalba@gmail.com>
bool is_legal() const;
bool is_immediate_draw() const;
bool is_immediate_win() const;
- Bitboard wk_attacks() const { return NonSlidingAttacksBB[WK][whiteKingSquare]; }
- Bitboard bk_attacks() const { return NonSlidingAttacksBB[BK][blackKingSquare]; }
- Bitboard pawn_attacks() const { return NonSlidingAttacksBB[WP][pawnSquare]; }
+ Bitboard wk_attacks() const { return StepAttacksBB[WK][whiteKingSquare]; }
+ Bitboard bk_attacks() const { return StepAttacksBB[BK][blackKingSquare]; }
+ Bitboard pawn_attacks() const { return StepAttacksBB[WP][pawnSquare]; }
Square whiteKingSquare, blackKingSquare, pawnSquare;
Color sideToMove;
Bitboard SetMaskBB[65];
Bitboard ClearMaskBB[65];
-Bitboard NonSlidingAttacksBB[16][64];
+Bitboard StepAttacksBB[16][64];
Bitboard BetweenBB[64][64];
Bitboard SquaresInFrontMask[2][64];
namespace {
void init_masks();
- void init_non_sliding_attacks();
+ void init_step_attacks();
void init_pseudo_attacks();
void init_between_bitboards();
Bitboard index_to_bitboard(int index, Bitboard mask);
int bishopDeltas[4][2] = {{1,1},{-1,1},{1,-1},{-1,-1}};
init_masks();
- init_non_sliding_attacks();
+ init_step_attacks();
init_sliding_attacks(RAttacks, RAttackIndex, RMask, RShift, RMult, rookDeltas);
init_sliding_attacks(BAttacks, BAttackIndex, BMask, BShift, BMult, bishopDeltas);
init_pseudo_attacks();
BitCount8Bit[b] = (uint8_t)count_1s<CNT32>(b);
}
- void init_non_sliding_attacks() {
+ void init_step_attacks() {
const int step[][9] = {
{0},
Square to = s + Square(step[pc][k]);
if (square_is_ok(to) && square_distance(s, to) < 3)
- set_bit(&NonSlidingAttacksBB[pc][s], to);
+ set_bit(&StepAttacksBB[pc][s], to);
}
}
extern Bitboard SetMaskBB[65];
extern Bitboard ClearMaskBB[65];
-extern Bitboard NonSlidingAttacksBB[16][64];
+extern Bitboard StepAttacksBB[16][64];
extern Bitboard BetweenBB[64][64];
extern Bitboard SquaresInFrontMask[2][64];
case WB: case BB: return attacks_from<BISHOP>(s);
case WR: case BR: return attacks_from<ROOK>(s);
case WQ: case BQ: return attacks_from<QUEEN>(s);
- default: return NonSlidingAttacksBB[p][s];
+ default: return StepAttacksBB[p][s];
}
}
case WB: case BB: return bishop_attacks_bb(s, occ);
case WR: case BR: return rook_attacks_bb(s, occ);
case WQ: case BQ: return bishop_attacks_bb(s, occ) | rook_attacks_bb(s, occ);
- default: return NonSlidingAttacksBB[p][s];
+ default: return StepAttacksBB[p][s];
}
}
template<>
inline Bitboard Position::attacks_from<PAWN>(Square s, Color c) const {
- return NonSlidingAttacksBB[make_piece(c, PAWN)][s];
+ return StepAttacksBB[make_piece(c, PAWN)][s];
}
template<PieceType Piece> // Knight and King and white pawns
inline Bitboard Position::attacks_from(Square s) const {
- return NonSlidingAttacksBB[Piece][s];
+ return StepAttacksBB[Piece][s];
}
template<>