X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fbitboard.cpp;h=bc8d5c3d93664f9b0a543d9e990817a86802728c;hp=dd12dd3ad509775276ebee5345836b9b194ce35b;hb=29076043e073c3d6e3b90b0809afc2a0af57e5e1;hpb=59c85346d28f96ae69e172ff7187ccfbbf78d180 diff --git a/src/bitboard.cpp b/src/bitboard.cpp index dd12dd3a..bc8d5c3d 100644 --- a/src/bitboard.cpp +++ b/src/bitboard.cpp @@ -451,27 +451,19 @@ namespace { void init_sliding_attacks(Bitboard attacks[], int attackIndex[], Bitboard mask[], const int shift[], const Bitboard mult[], int deltas[][2]) { + Bitboard b, v; + int i, j, index; - for (int i = 0, index = 0; i < 64; i++) + for (i = index = 0; i < 64; i++) { attackIndex[i] = index; mask[i] = sliding_attacks(i, 0, deltas, 1, 6, 1, 6); - -#if defined(IS_64BIT) - int j = (1 << (64 - shift[i])); -#else - int j = (1 << (32 - shift[i])); -#endif + j = 1 << ((CpuIs64Bit ? 64 : 32) - shift[i]); for (int k = 0; k < j; k++) { - Bitboard b = index_to_bitboard(k, mask[i]); - -#if defined(IS_64BIT) - Bitboard v = b * mult[i]; -#else - unsigned v = int(b) * int(mult[i]) ^ int(b >> 32) * int(mult[i] >> 32); -#endif + b = index_to_bitboard(k, mask[i]); + v = CpuIs64Bit ? b * mult[i] : unsigned(b * mult[i] ^ (b >> 32) * (mult[i] >> 32)); attacks[index + (v >> shift[i])] = sliding_attacks(i, b, deltas, 0, 7, 0, 7); } index += j;