mirror of
https://github.com/HChaZZY/Stockfish.git
synced 2025-12-17 15:46:24 +08:00
Split killer moves from non-captures
In MovePicker consider killer moves as a separate phase from non-capture picking. Note that this change guarantees that killer1 is always tried before killer2. Until now, because scoring difference of the two moves was just 1 point, if psqt tables of killer1 gave a lower value then killer2, the latter was tried as first. After 999 games at 1+0 we have Mod vs Orig: +245 =527 -227 +6 ELO Not a lot but patch is anyhow something worth to have. Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
@@ -392,7 +392,6 @@ bool move_is_legal(const Position& pos, const Move m, Bitboard pinned) {
|
||||
assert(pinned == pos.pinned_pieces(pos.side_to_move()));
|
||||
|
||||
Color us = pos.side_to_move();
|
||||
Color them = opposite_color(us);
|
||||
Square from = move_from(m);
|
||||
Piece pc = pos.piece_on(from);
|
||||
|
||||
@@ -401,6 +400,7 @@ bool move_is_legal(const Position& pos, const Move m, Bitboard pinned) {
|
||||
if (color_of_piece(pc) != us)
|
||||
return false;
|
||||
|
||||
Color them = opposite_color(us);
|
||||
Square to = move_to(m);
|
||||
|
||||
// En passant moves
|
||||
|
||||
Reference in New Issue
Block a user