After testing does not seem to increase ELO.
Indeed Glaurung is a little bit weaker, so revert.
Signed-off-by: Marco Costalba <mcostalba@gmail.com>
bool singleReply = (isCheck && mp.number_of_moves() == 1);
bool moveIsCheck = pos.move_is_check(move, dcCandidates);
bool singleReply = (isCheck && mp.number_of_moves() == 1);
bool moveIsCheck = pos.move_is_check(move, dcCandidates);
- bool moveIsGoodCapture = (mp.current_move_type() == MovePicker::PH_GOOD_CAPTURES);
+ bool moveIsCapture = pos.move_is_capture(move);
bool moveIsPassedPawnPush = pos.move_is_passed_pawn_push(move);
movesSearched[moveCount++] = ss[ply].currentMove = move;
bool moveIsPassedPawnPush = pos.move_is_passed_pawn_push(move);
movesSearched[moveCount++] = ss[ply].currentMove = move;
// Futility pruning
if ( useFutilityPruning
&& ext == Depth(0)
// Futility pruning
if ( useFutilityPruning
&& ext == Depth(0)
&& !moveIsPassedPawnPush
&& !move_promotion(move))
{
&& !moveIsPassedPawnPush
&& !move_promotion(move))
{
if ( depth >= 2*OnePly
&& ext == Depth(0)
&& moveCount >= LMRNonPVMoves
if ( depth >= 2*OnePly
&& ext == Depth(0)
&& moveCount >= LMRNonPVMoves
&& !move_promotion(move)
&& !moveIsPassedPawnPush
&& !move_is_castle(move)
&& !move_promotion(move)
&& !moveIsPassedPawnPush
&& !move_is_castle(move)
assert(threat == MOVE_NONE || move_is_ok(threat));
assert(!move_promotion(m));
assert(!pos.move_is_check(m));
assert(threat == MOVE_NONE || move_is_ok(threat));
assert(!move_promotion(m));
assert(!pos.move_is_check(m));
+ assert(!pos.move_is_capture(m));
assert(!pos.move_is_passed_pawn_push(m));
assert(d >= OnePly);
assert(!pos.move_is_passed_pawn_push(m));
assert(d >= OnePly);