mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 16:53:09 +00:00
Remove advanced_pawn_push()
Continuation of work by @topologist: we now do futility pruning and movecount pruning in qsearch() for pawn pushes up to the 7th rank. So the condition to avoid the pruning is if the move is a promotion or not. This allows to get rid of the advanced_pawn_push() function in position.h alltogether. Passed STC https://tests.stockfishchess.org/tests/view/6048c5842433018de7a387e6 LLR: 2.93 (-2.94,2.94) {-1.25,0.25} Total: 34424 W: 3081 L: 3015 D: 28328 Ptnml(0-2): 110, 2442, 12052, 2488, 120 Passed LTC https://tests.stockfishchess.org/tests/view/6048f7d22433018de7a387f0 LLR: 2.94 (-2.94,2.94) {-0.75,0.25} Total: 142024 W: 5170 L: 5202 D: 131652 Ptnml(0-2): 50, 4678, 61613, 4596, 75 Closes https://github.com/official-stockfish/Stockfish/pull/3390 Bench: 4339126
This commit is contained in:
parent
830f597134
commit
d58e83695f
2 changed files with 1 additions and 7 deletions
|
@ -128,7 +128,6 @@ public:
|
||||||
bool capture(Move m) const;
|
bool capture(Move m) const;
|
||||||
bool capture_or_promotion(Move m) const;
|
bool capture_or_promotion(Move m) const;
|
||||||
bool gives_check(Move m) const;
|
bool gives_check(Move m) const;
|
||||||
bool advanced_pawn_push(Move m) const;
|
|
||||||
Piece moved_piece(Move m) const;
|
Piece moved_piece(Move m) const;
|
||||||
Piece captured_piece() const;
|
Piece captured_piece() const;
|
||||||
|
|
||||||
|
@ -310,11 +309,6 @@ inline bool Position::pawn_passed(Color c, Square s) const {
|
||||||
return !(pieces(~c, PAWN) & passed_pawn_span(c, s));
|
return !(pieces(~c, PAWN) & passed_pawn_span(c, s));
|
||||||
}
|
}
|
||||||
|
|
||||||
inline bool Position::advanced_pawn_push(Move m) const {
|
|
||||||
return type_of(moved_piece(m)) == PAWN
|
|
||||||
&& relative_rank(sideToMove, to_sq(m)) > RANK_6;
|
|
||||||
}
|
|
||||||
|
|
||||||
inline int Position::pawns_on_same_color_squares(Color c, Square s) const {
|
inline int Position::pawns_on_same_color_squares(Color c, Square s) const {
|
||||||
return popcount(pieces(c, PAWN) & ((DarkSquares & s) ? DarkSquares : ~DarkSquares));
|
return popcount(pieces(c, PAWN) & ((DarkSquares & s) ? DarkSquares : ~DarkSquares));
|
||||||
}
|
}
|
||||||
|
|
|
@ -1579,7 +1579,7 @@ moves_loop: // When in check, search starts from here
|
||||||
if ( bestValue > VALUE_TB_LOSS_IN_MAX_PLY
|
if ( bestValue > VALUE_TB_LOSS_IN_MAX_PLY
|
||||||
&& !givesCheck
|
&& !givesCheck
|
||||||
&& futilityBase > -VALUE_KNOWN_WIN
|
&& futilityBase > -VALUE_KNOWN_WIN
|
||||||
&& !pos.advanced_pawn_push(move))
|
&& type_of(move) != PROMOTION)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (moveCount > 2)
|
if (moveCount > 2)
|
||||||
|
|
Loading…
Add table
Reference in a new issue