X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fsearch.cpp;h=cf7e411d8504e2c2cba05869d91aaccdafcd137a;hp=ce8c4b7a0d782625d76113d863bf7e26e5c774c7;hb=6aa9308f08bc76b0e3615dde65de7782a6761fa3;hpb=805afcbf3d5db39c85b759232cfb99ab0a250311 diff --git a/src/search.cpp b/src/search.cpp index ce8c4b7a..cf7e411d 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -788,9 +788,8 @@ namespace { } // Step 9. ProbCut (skipped when in check) - // If we have a very good capture (i.e. SEE > seeValues[captured_piece_type]) - // and a reduced search returns a value much above beta, we can (almost) - // safely prune the previous move. + // If we have a good enough capture and a reduced search returns a value + // much above beta, we can (almost) safely prune the previous move. if ( !PvNode && depth >= 5 * ONE_PLY && abs(beta) < VALUE_MATE_IN_MAX_PLY) @@ -802,7 +801,7 @@ namespace { assert((ss-1)->currentMove != MOVE_NONE); assert((ss-1)->currentMove != MOVE_NULL); - MovePicker mp(pos, ttMove, PieceValue[MG][pos.captured_piece_type()]); + MovePicker mp(pos, ttMove, rbeta - ss->staticEval); while ((move = mp.next_move()) != MOVE_NONE) if (pos.legal(move)) @@ -883,7 +882,7 @@ moves_loop: // When in check search starts from here moved_piece = pos.moved_piece(move); givesCheck = type_of(move) == NORMAL && !pos.discovered_check_candidates() - ? pos.check_info().checkSquares[type_of(pos.piece_on(from_sq(move)))] & to_sq(move) + ? pos.check_squares(type_of(pos.piece_on(from_sq(move)))) & to_sq(move) : pos.gives_check(move); moveCountPruning = depth < 16 * ONE_PLY @@ -1285,7 +1284,7 @@ moves_loop: // When in check search starts from here assert(is_ok(move)); givesCheck = type_of(move) == NORMAL && !pos.discovered_check_candidates() - ? pos.check_info().checkSquares[type_of(pos.piece_on(from_sq(move)))] & to_sq(move) + ? pos.check_squares(type_of(pos.piece_on(from_sq(move)))) & to_sq(move) : pos.gives_check(move); // Futility pruning