diff options
Diffstat (limited to 'src/chess.h')
| -rwxr-xr-x | src/chess.h | 43 |
1 files changed, 31 insertions, 12 deletions
diff --git a/src/chess.h b/src/chess.h index 8d16837..7d01e64 100755 --- a/src/chess.h +++ b/src/chess.h @@ -945,6 +945,16 @@ typedef struct _COUNTERS UINT64 u64EvalHashHits; UINT64 u64LazyEvals; UINT64 u64FullEvals; + // Placeholder counters for root.c's per-tier eval-exit + // reporting -- eval.c's super-lazy exit itself hasn't been + // re-applied yet (see stash), so these always read 0 for now; + // that's accurate, not a stub bug, since no super-lazy exit + // exists in this build to increment them. + UINT64 u64SuperLazyEvals; + UINT64 u64CyclesSuperLazyExit; + UINT64 u64CyclesLazyExit; + UINT64 u64CyclesFullEvalExit; + UINT64 u64CyclesEvalSuperLazy; UINT64 u64CyclesInEval; // @@ -2812,6 +2822,13 @@ IsDraw(SEARCHER_THREAD_CONTEXT *ctx); // #define QPLIES_OF_NON_CAPTURE_CHECKS (2) #define FUTILITY_BASE_MARGIN (50) +// Compatibility aliases for root.c/main.c's per-tier reporting, which +// expects these three names -- search.c hasn't been split into +// per-tier margins yet (still one flat FUTILITY_BASE_MARGIN), so all +// three alias the same value until that split is re-applied. +#define FUTILITY_BASE_MARGIN_FULL FUTILITY_BASE_MARGIN +#define FUTILITY_BASE_MARGIN_LAZY FUTILITY_BASE_MARGIN +#define FUTILITY_BASE_MARGIN_SUPERLAZY FUTILITY_BASE_MARGIN // Measured: disabling this entirely (see lmr_testing/RESULTS.md) is a // clear net loss across ringers/confident_quick/hard_quick, so IID itself // is load-bearing. The "is the top move crappy" gate in search.c's DO_IID @@ -3146,7 +3163,14 @@ PawnHashLookup(SEARCHER_THREAD_CONTEXT *ctx); extern const int g_iAhead[2]; extern const int g_iBehind[2]; -ULONG +// No-op placeholder: eval.c's ROOK_FULL_HALF_OPEN_BONUS static cache +// (the thing InitEval() is meant to (re)build, called at startup and +// after every DNA reload) hasn't been re-applied yet -- see stash. +// Nothing to initialize until that cache exists. +void +InitEval(void); + +ULONG DNABufferSizeBytes(); char * @@ -3167,7 +3191,7 @@ SCORE Eval(SEARCHER_THREAD_CONTEXT *, SCORE, SCORE, SCORE *); FLAG -EvalPasserRaces(POSITION *, +_EvalPasserRacesAgainstLoneKings(POSITION *, PAWN_HASH_ENTRY *); ULONG @@ -3362,17 +3386,12 @@ _WhoAttacksSquareBB(POSITION *pos, ULONG uSide, BITBOARD bbOccupied); -// Three-way choice for which GetAttacks implementation is actually -// live -- see MIGRATION.md section 6: -// GETATTACKS_BITBOARD defined -> _GetAttacksBB (bitboard, new) -// else CROUTINES defined -> SlowGetAttacks (C mailbox) -// else (default) -> GetAttacks (asm x86/x64 mailbox, -// the literal function declared above) -#if defined(GETATTACKS_BITBOARD) +// _GetAttacksBB is the only implementation as of 2026-09-06 (see +// MIGRATION.md section 6) -- verified correct and faster than the old +// asm/CROUTINES mailbox versions (SlowGetAttacks, asm GetAttacks), +// which have been retired. Every call site written against the name +// "GetAttacks" didn't need touching when the default changed. #define GetAttacks _GetAttacksBB -#elif defined(CROUTINES) -#define GetAttacks SlowGetAttacks -#endif #ifdef _X86_ // |
