diff options
Diffstat (limited to 'src/chess.h')
| -rwxr-xr-x | src/chess.h | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/src/chess.h b/src/chess.h index f39a956..41c8734 100755 --- a/src/chess.h +++ b/src/chess.h @@ -659,8 +659,8 @@ typedef struct _POSITION // Per-color pawn location bitboard -- same incremental-maintenance // idea as bbPieces above, but for pawns (which bbPieces - // deliberately excludes). Exists so _BuildOccupiedBB (see.c) can - // build full-board occupancy via two ORs instead of looping + // deliberately excludes). Exists so full-board occupancy + // (pos->bbOccupied below) can be built via two ORs instead of looping // cPawns[2][8] (up to 16 iterations) on every call -- see // board_representation/MIGRATION.md section 3. Also the single // source of truth for pawn locations used by pawn eval @@ -671,6 +671,23 @@ typedef struct _POSITION // this field directly instead. BITBOARD bbPawns[2]; + // Full-board occupancy (both colors, every piece including pawns + // and kings) -- same incremental-maintenance idea as bbPieces/ + // bbPawns above, added 2026-09-05 per board_representation/ + // EVAL.md section 0 (was previously only on MOVE_STACK, rebuilt + // on demand via _BuildFullOccupiedBB at many independent call + // sites in generate.c/movesup.c/see.c, and needed again by the + // planned eval.c mobility rewrite -- one incrementally-maintained + // copy here replaces all of that). Maintained by move.c's + // SlidePiece/SlidePawn/LiftPiece/PlacePiece (and their + // WithoutSigs variants) at the same sites that already maintain + // bbPieces/bbPawns, unconditionally (no per-color/per-type branch + // needed, unlike those). _BuildFullOccupiedBB(pos) (generate.c) + // remains as the from-scratch ground truth used to verify this + // field stays in sync (see VerifyPositionConsistency, board.c), + // not as something callers should call directly anymore. + BITBOARD bbOccupied; + ULONG uWhiteSqBishopCount[2]; // num bishops on white squares SCORE iMaterialBalance[2]; // material balance |
