X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fmovepick.cpp;h=d9fe8d2cf329c2cf4fe109efec6f0225f329611d;hp=c90f8df1e6d398e2cf7f7ab3a4ae63be7c4f3dc1;hb=16abc165d84b390c175ade5d1b19b1dab703129b;hpb=0a0ea36e25b2f6fff8859e02027c5842edeccc03 diff --git a/src/movepick.cpp b/src/movepick.cpp index c90f8df1..d9fe8d2c 100644 --- a/src/movepick.cpp +++ b/src/movepick.cpp @@ -97,7 +97,7 @@ MovePicker::MovePicker(const Position& p, bool pv, Move ttm, phaseIndex = (noCaptures ? NoMovesPhaseIndex : QsearchWithoutChecksPhaseIndex); dc = p.discovered_check_candidates(us); - pinned = p.pinned_pieces(p.side_to_move()); + pinned = p.pinned_pieces(us); finished = false; } @@ -130,7 +130,7 @@ Move MovePicker::get_next_move() { if (ttMove != MOVE_NONE) { assert(move_is_ok(ttMove)); - if (move_is_legal(pos, ttMove)) + if (move_is_legal(pos, ttMove, pinned)) return ttMove; } break; @@ -139,7 +139,7 @@ Move MovePicker::get_next_move() { if (mateKiller != MOVE_NONE) { assert(move_is_ok(mateKiller)); - if (move_is_legal(pos, mateKiller)) + if (move_is_legal(pos, mateKiller, pinned)) return mateKiller; } break; @@ -162,7 +162,7 @@ Move MovePicker::get_next_move() { case PH_EVASIONS: assert(pos.is_check()); - numOfMoves = generate_evasions(pos, moves); + numOfMoves = generate_evasions(pos, moves, pinned); score_evasions(); movesPicked = 0; break; @@ -174,7 +174,7 @@ Move MovePicker::get_next_move() { break; case PH_QCHECKS: - numOfMoves = generate_checks(pos, moves); + numOfMoves = generate_checks(pos, moves, dc); movesPicked = 0; break;