X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fbitboard.h;h=a8c0afbcd3cde49532b1ae95b13481a4b0a809f1;hb=3d2aab11d89493311e0908a9ee1a8288b9ff9b42;hp=cd6c280c8c444d9e349c1895b4c792ef8325d77d;hpb=c556fe1d716fcef3215c239f02b314ec7b42f0d1;p=stockfish diff --git a/src/bitboard.h b/src/bitboard.h index cd6c280c..a8c0afbc 100644 --- a/src/bitboard.h +++ b/src/bitboard.h @@ -21,9 +21,9 @@ #ifndef BITBOARD_H_INCLUDED #define BITBOARD_H_INCLUDED -#include "types.h" +#include -extern Bitboard pext(Bitboard b, Bitboard mask); +#include "types.h" namespace Bitboards { @@ -57,8 +57,6 @@ const Bitboard Rank6BB = Rank1BB << (8 * 5); const Bitboard Rank7BB = Rank1BB << (8 * 6); const Bitboard Rank8BB = Rank1BB << (8 * 7); -CACHE_LINE_ALIGNMENT - extern Bitboard RMasks[SQUARE_NB]; extern Bitboard RMagics[SQUARE_NB]; extern Bitboard* RAttacks[SQUARE_NB]; @@ -119,11 +117,11 @@ inline int square_distance(Square s1, Square s2) { } inline int file_distance(Square s1, Square s2) { - return abs(file_of(s1) - file_of(s2)); + return dist(file_of(s1), file_of(s2)); } inline int rank_distance(Square s1, Square s2) { - return abs(rank_of(s1) - rank_of(s2)); + return dist(rank_of(s1), rank_of(s2)); } @@ -244,7 +242,7 @@ FORCE_INLINE unsigned magic_index(Square s, Bitboard occ) { unsigned* const Shifts = Pt == ROOK ? RShifts : BShifts; if (HasPext) - return unsigned(pext(occ, Masks[s])); + return unsigned(_pext_u64(occ, Masks[s])); if (Is64Bit) return unsigned(((occ & Masks[s]) * Magics[s]) >> Shifts[s]);