diff options
| author | Adam <adammegarules1@gmail.com> | 2026-08-18 21:10:04 +0200 |
|---|---|---|
| committer | Adam <adammegarules1@gmail.com> | 2026-08-18 21:10:04 +0200 |
| commit | d510e0a23ad67a12d993792751c4c23b07f2e8c7 (patch) | |
| tree | dd67b1073e621ea1400cc83ca52370711b95b049 /magic_finder.c | |
| parent | a4024e15a807e26ddad04d6804742fab0d6c8c96 (diff) | |
refactor(all):
Diffstat (limited to 'magic_finder.c')
| -rw-r--r-- | magic_finder.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/magic_finder.c b/magic_finder.c index 50c4279..ee21587 100644 --- a/magic_finder.c +++ b/magic_finder.c @@ -4,6 +4,8 @@ #include <string.h> #include <time.h> +// TODO: make magic bitboards use diffrent shift for each magic number (maybe) + static int popcount(uint64_t b) { return __builtin_popcountll(b); } static uint64_t computeRookMask(int sq) { @@ -165,11 +167,13 @@ int main(int argc, char *argv[]) { uint64_t rookMags[64], bishopMags[64]; uint64_t rookMasks[64], bishopMasks[64]; - fprintf(stderr, "Finding per-square rook magics (shift %d, table size %llu)...\n", + fprintf(stderr, + "Finding per-square rook magics (shift %d, table size %llu)...\n", shift, (unsigned long long)(1ULL << (64 - shift))); for (int sq = 0; sq < 64; sq++) { rookMasks[sq] = computeRookMask(sq); - if (!findMagic(rookMasks[sq], computeRookAttacks, sq, shift, &rookMags[sq])) { + if (!findMagic(rookMasks[sq], computeRookAttacks, sq, shift, + &rookMags[sq])) { fprintf(stderr, "FAILED to find rook magic for square %d\n", sq); return 1; } |
