X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fbitboard.cpp;h=073487e99cf252a02f9ed6656a31578048264279;hp=de28e03a05c4ef345ab0d89db30d206046811637;hb=b706165527b5449fefa20bb31ac66d0274b066ea;hpb=6963c3802d73c61396af32eb7fc6a4e4a76763ae diff --git a/src/bitboard.cpp b/src/bitboard.cpp index de28e03a..073487e9 100644 --- a/src/bitboard.cpp +++ b/src/bitboard.cpp @@ -56,6 +56,7 @@ Bitboard RookPseudoAttacks[64]; Bitboard QueenPseudoAttacks[64]; uint8_t BitCount8Bit[256]; +int SquareDistance[64][64]; namespace { @@ -154,6 +155,13 @@ Square pop_1st_bit(Bitboard* bb) { void init_bitboards() { + for (Bitboard b = 0; b < 256; b++) + BitCount8Bit[b] = (uint8_t)count_1s(b); + + for (Square s1 = SQ_A1; s1 <= SQ_H8; s1++) + for (Square s2 = SQ_A1; s2 <= SQ_H8; s2++) + SquareDistance[s1][s2] = Max(file_distance(s1, s2), rank_distance(s1, s2)); + SquaresByColorBB[DARK] = 0xAA55AA55AA55AA55ULL; SquaresByColorBB[LIGHT] = ~SquaresByColorBB[DARK]; @@ -194,9 +202,6 @@ void init_bitboards() { AttackSpanMask[c][s] = in_front_bb(c, s) & neighboring_files_bb(s); } - for (Bitboard b = 0; b < 256; b++) - BitCount8Bit[b] = (uint8_t)count_1s(b); - for (int i = 0; i < 64; i++) if (!CpuIs64Bit) // Matt Taylor's folding trick for 32 bit systems {