Entering a pawn endgame is no more dangerous
authorMarco Costalba <mcostalba@gmail.com>
Tue, 2 Jul 2013 05:24:17 +0000 (07:24 +0200)
committerMarco Costalba <mcostalba@gmail.com>
Tue, 2 Jul 2013 05:24:17 +0000 (07:24 +0200)
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

src/search.cpp

index bf33a136b6f8364ead77831d46e399ae4c0837f5..e1b7a1d7cfb8f7ee57787bb6c411b1cd6f1dbf64 100644 (file)
@@ -820,12 +820,7 @@ split_point_start: // At split points actual search starts from here
       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)