A simplification of the 'dangerous' definition.
Seems neutral at reverse test at long TC
master vs patch
LLR: -2.96 (-2.94,2.94)
Total: 16974 W: 3122 L: 3139 D: 10713
bench:
4689029
givesCheck = pos.move_gives_check(move, ci);
dangerous = givesCheck
|| pos.is_passed_pawn_push(move)
givesCheck = pos.move_gives_check(move, ci);
dangerous = givesCheck
|| pos.is_passed_pawn_push(move)
- || type_of(move) == CASTLE
- || ( captureOrPromotion // Entering a pawn endgame?
- && type_of(pos.piece_on(to_sq(move))) != PAWN
- && type_of(move) == NORMAL
- && ( pos.non_pawn_material(WHITE) + pos.non_pawn_material(BLACK)
- - PieceValue[MG][pos.piece_on(to_sq(move))] == VALUE_ZERO));
+ || type_of(move) == CASTLE;
// Step 12. Extend checks and, in PV nodes, also dangerous moves
if (PvNode && dangerous)
// Step 12. Extend checks and, in PV nodes, also dangerous moves
if (PvNode && dangerous)