1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-05-01 17:19:36 +00:00

Do not probe syzygy bases when castling is possible

Almost no functional change. Bench is unchanged.

Resolves #230
Resolves #573
This commit is contained in:
Joona Kiiski 2016-01-20 15:24:21 +00:00 committed by Joona Kiiski
parent 28933a580e
commit 8c3a5bbc52

View file

@ -256,8 +256,9 @@ void MainThread::search() {
} }
else else
{ {
if (TB::Cardinality >= rootPos.count<ALL_PIECES>(WHITE) if ( TB::Cardinality >= rootPos.count<ALL_PIECES>(WHITE)
+ rootPos.count<ALL_PIECES>(BLACK)) + rootPos.count<ALL_PIECES>(BLACK)
&& !rootPos.can_castle(ANY_CASTLING))
{ {
// If the current root position is in the tablebases, then RootMoves // If the current root position is in the tablebases, then RootMoves
// contains only moves that preserve the draw or the win. // contains only moves that preserve the draw or the win.
@ -691,7 +692,8 @@ namespace {
if ( piecesCnt <= TB::Cardinality if ( piecesCnt <= TB::Cardinality
&& (piecesCnt < TB::Cardinality || depth >= TB::ProbeDepth) && (piecesCnt < TB::Cardinality || depth >= TB::ProbeDepth)
&& pos.rule50_count() == 0) && pos.rule50_count() == 0
&& !pos.can_castle(ANY_CASTLING))
{ {
int found, v = Tablebases::probe_wdl(pos, &found); int found, v = Tablebases::probe_wdl(pos, &found);