mirror of
https://github.com/HChaZZY/Stockfish.git
synced 2025-12-20 17:16:33 +08:00
Retire ss->bestMove
And introduce SPlitPoint bestMove to pass back the best move after a split point. This allow to define as const the search stack passed to split. No functional change. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
10
src/thread.h
10
src/thread.h
@@ -34,9 +34,9 @@ const int MAX_SPLITPOINTS_PER_THREAD = 8;
|
||||
|
||||
struct SplitPoint {
|
||||
|
||||
// Const data after splitPoint has been setup
|
||||
SplitPoint* parent;
|
||||
// Const data after split point has been setup
|
||||
const Position* pos;
|
||||
const Search::Stack* ss;
|
||||
Depth depth;
|
||||
Value beta;
|
||||
int nodeType;
|
||||
@@ -45,7 +45,8 @@ struct SplitPoint {
|
||||
|
||||
// Const pointers to shared data
|
||||
MovePicker* mp;
|
||||
Search::Stack* ss;
|
||||
SplitPoint* parent;
|
||||
|
||||
|
||||
// Shared data
|
||||
Lock lock;
|
||||
@@ -53,6 +54,7 @@ struct SplitPoint {
|
||||
volatile int64_t nodes;
|
||||
volatile Value alpha;
|
||||
volatile Value bestValue;
|
||||
volatile Move bestMove;
|
||||
volatile int moveCount;
|
||||
volatile bool cutoff;
|
||||
};
|
||||
@@ -116,7 +118,7 @@ public:
|
||||
const std::set<Move>& = std::set<Move>(), bool async = false);
|
||||
|
||||
template <bool Fake>
|
||||
Value split(Position& pos, Search::Stack* ss, Value alpha, Value beta, Value bestValue,
|
||||
Value split(Position& pos, Search::Stack* ss, Value alpha, Value beta, Value bestValue, Move* bestMove,
|
||||
Depth depth, Move threatMove, int moveCount, MovePicker* mp, int nodeType);
|
||||
private:
|
||||
friend struct Thread;
|
||||
|
||||
Reference in New Issue
Block a user