X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fmovepick.cpp;h=643c8368ca4cf1c28cbf4baa447aa88b5eb0248e;hp=a54398c0844726394fe4cc4cc32e3ba8222f54a0;hb=c65d67feb53895a34423cc2043edc69741f2ba92;hpb=bc6faf633e7f4d2c998f434a41ecfc9b80047607 diff --git a/src/movepick.cpp b/src/movepick.cpp index a54398c0..643c8368 100644 --- a/src/movepick.cpp +++ b/src/movepick.cpp @@ -75,7 +75,7 @@ MovePicker::MovePicker(const Position& p, Move ttm, Depth d, const HistoryStats& assert(d > DEPTH_ZERO); - cur = end = moves = pos.this_thread()->get_moves_array(); + cur = end = moves; endBadCaptures = moves + MAX_MOVES - 1; countermoves = cm; ss = s; @@ -91,11 +91,10 @@ MovePicker::MovePicker(const Position& p, Move ttm, Depth d, const HistoryStats& } MovePicker::MovePicker(const Position& p, Move ttm, Depth d, const HistoryStats& h, - Square sq) : pos(p), history(h) { + Square sq) : pos(p), history(h), cur(moves), end(moves) { assert(d <= DEPTH_ZERO); - cur = end = moves = pos.this_thread()->get_moves_array(); if (p.checkers()) stage = EVASION; @@ -124,11 +123,10 @@ MovePicker::MovePicker(const Position& p, Move ttm, Depth d, const HistoryStats& } MovePicker::MovePicker(const Position& p, Move ttm, const HistoryStats& h, PieceType pt) - : pos(p), history(h) { + : pos(p), history(h), cur(moves), end(moves) { assert(!pos.checkers()); - cur = end = moves = pos.this_thread()->get_moves_array(); stage = PROBCUT; // In ProbCut we generate only captures better than parent's captured piece @@ -141,7 +139,6 @@ MovePicker::MovePicker(const Position& p, Move ttm, const HistoryStats& h, Piece end += (ttMove != MOVE_NONE); } -MovePicker::~MovePicker() { pos.this_thread()->free_moves_array(); } /// score() assign a numerical move ordering score to each move in a move list. /// The moves with highest scores will be picked first.