mirror of
https://github.com/HChaZZY/Stockfish.git
synced 2025-12-22 18:17:02 +08:00
Copy killers in the movepicker
ss->killers can change while the movepicker is active. The reason ss->killers changes is related to the singular extension search in the moves loop that calls search<> recursively with ss instead of ss+1, effectively using the same stack entry for caller and callee. By making a copy of the killers, the movepicker does the right thing nevertheless. Tested as a bug fix STC: http://tests.stockfishchess.org/tests/view/58ff130f0ebc59035df33f37 LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 70845 W: 12752 L: 12716 D: 45377 LTC: http://tests.stockfishchess.org/tests/view/58ff48000ebc59035df33f3d LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 28368 W: 3730 L: 3619 D: 21019 Bench: 6465887 Closes #1085
This commit is contained in:
committed by
Joona Kiiski
parent
49a9d4cf99
commit
b1b19343cd
@@ -111,6 +111,7 @@ private:
|
||||
|
||||
const Position& pos;
|
||||
const Search::Stack* ss;
|
||||
Move killers[2];
|
||||
Move countermove;
|
||||
Depth depth;
|
||||
Move ttMove;
|
||||
|
||||
Reference in New Issue
Block a user