summaryrefslogtreecommitdiff
path: root/src/testsearch.c
diff options
context:
space:
mode:
authorScott Gasch <[email protected]>2026-10-14 11:16:06 -0700
committerScott Gasch <[email protected]>2026-10-14 11:16:06 -0700
commit3845a082df2fd0d1bd059dd4c22c922067be826a (patch)
tree01f7059b7d1d7e7f0495a281512a6ac1610a280b /src/testsearch.c
parent3d54c2cc82366040f00d5901f80dbe4e9d7bfe10 (diff)
Remove dead EFP references left over from its removal
EFP (extended futility pruning) was removed from Search()'s move loop in favor of LMP's joint FH% table, but several comments, a dead counter (u64EFPPruned, never incremented anywhere), and two unused defines (EFP_FH_MIN_SAMPLES/EFP_FH_PRUNE_THRESHOLD_PCT_THOUSANDTHS) were left behind claiming EFP still gates something. Clean these up: - Delete u64EFPPruned (COUNTERS and g_Options) and its dead reader/writer in root.c. - Delete the two unused EFP_FH_* defines in search.c, and the stale fAnyMoveEFPPruned comment describing a branch that no longer skips a store. - Fix dangling prose references to EFP in generate.c, chess.h, searchsup.c, and testsearch.c that describe present-tense behavior EFP no longer participates in, preserving the historical rationale where it's still relevant (e.g. why EstimateHangingMaterialCp can return a negative value). Deliberately left alone (flagged for a separate decision, not a clear delete): script.c's still-live JOINT_EXTRA_VERIFY calibration labels ("EFP tier1/tier2"), search.c's _PostReduceDepthBucketEfpAligned (same live mechanism, name only), searchsup.c's LMP_BASE_MOVENUM/ LMP_PER_PLY_MOVENUM dead macros (kept pending a real floor/ceiling decision), and PLY_INFO.iPositional[2] (now write-only, but removing it touches Eval()'s call signature everywhere). Comment/dead-code only, no logic touched. Co-Authored-By: Claude Sonnet 5 <[email protected]>
Diffstat (limited to 'src/testsearch.c')
-rw-r--r--src/testsearch.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/testsearch.c b/src/testsearch.c
index afd2733..8c67819 100644
--- a/src/testsearch.c
+++ b/src/testsearch.c
@@ -154,7 +154,7 @@ TestSearch(void)
// MaintainDynamicMoveOrdering does) still leaves real accumulated
// evidence behind. Search is not a pure function of (position, depth)
// in the presence of that evidence: a move's own GetMoveFailHighPct
-// Thousandths reading (feeding GetLMRReduction/ShouldLatePrune/EFP)
+// Thousandths reading (feeding GetLMRReduction/ShouldLatePrune)
// depends on it, and it accumulates LIVE during a search as sibling/
// cousin nodes are visited -- so two calls that visit nodes in a
// different order (which a warm vs. cold hash table, by design, makes
@@ -198,7 +198,7 @@ _FixedDepthSearchScore(SEARCHER_THREAD_CONTEXT *ctx,
// *transparent* (changes performance, never the answer) and that this
// is checkable by comparing scores across searches that visit
// different subsets of the tree -- does not hold in this engine and
-// cannot be patched into holding. EFP/LMR pruning decisions depend on
+// cannot be patched into holding. LMP/LMR pruning decisions depend on
// GLOBAL, LIVE-ACCUMULATING evidence tables (g_HistoryCounters,
// g_ContinuationHistory, g_FailHighs) that update as a side effect of
// actually VISITING a node, not as a side effect of that node's final