X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fmovepick.cpp;h=04fa40d625ba8212a4dceb2ed0278a966a5b7fe5;hb=4b8a7f2793f0d7dd46d2804cd5f46ccdb080da12;hp=8f3f65b165d2c8d65031aecf6046001623a54f92;hpb=811037c8457fc46dba267e70192d3cd38676249f;p=stockfish diff --git a/src/movepick.cpp b/src/movepick.cpp index 8f3f65b1..04fa40d6 100644 --- a/src/movepick.cpp +++ b/src/movepick.cpp @@ -56,7 +56,7 @@ namespace { /// move ordering is at the current node. MovePicker::MovePicker(const Position& p, Move ttm, Depth d, const History& h, - SearchStack* ss, Value beta) : pos(p), H(h) { + SearchStack* ss, Value beta) : pos(p), H(h), depth(d) { captureThreshold = 0; badCaptures = moves + MAX_MOVES; @@ -162,7 +162,8 @@ void MovePicker::go_next_phase() { case PH_NONCAPTURES_2: curMove = lastMove; lastMove = lastNonCapture; - insertion_sort(curMove, lastMove); + if (depth >= 3 * ONE_PLY) + insertion_sort(curMove, lastMove); return; case PH_BAD_CAPTURES: @@ -223,11 +224,11 @@ void MovePicker::score_captures() { for (MoveStack* cur = moves; cur != lastMove; cur++) { m = cur->move; + cur->score = pos.midgame_value_of_piece_on(move_to(m)) + - pos.type_of_piece_on(move_from(m)); + if (move_is_promotion(m)) - cur->score = QueenValueMidgame; - else - cur->score = pos.midgame_value_of_piece_on(move_to(m)) - - pos.type_of_piece_on(move_from(m)); + cur->score += QueenValueMidgame; } }