Skip a couple of popcount in previous patch
[stockfish] / src / evaluate.cpp
index dd26e46986e9ad7fb57829ddf4ed5f3992f349cc..aeaae07f10720114be0986e93b91d37f6ee41200 100644 (file)
@@ -171,6 +171,9 @@ namespace {
   // right to castle.
   const Value TrappedRookPenalty = Value(180);
 
   // right to castle.
   const Value TrappedRookPenalty = Value(180);
 
+  // Penalty for bishop with pawns on the same coloured squares
+  const Score BishopPawnsPenalty = make_score(8, 12);
+
   // Penalty for a bishop on a1/h1 (a8/h8 for black) which is trapped by
   // a friendly pawn on b2/g2 (b7/g7 for black). This can obviously only
   // happen in Chess960 games.
   // Penalty for a bishop on a1/h1 (a8/h8 for black) which is trapped by
   // a friendly pawn on b2/g2 (b7/g7 for black). This can obviously only
   // happen in Chess960 games.
@@ -584,7 +587,7 @@ Value do_evaluate(const Position& pos, Value& margin) {
 
         // Penalty for bishop with same coloured pawns
         if (Piece == BISHOP)
 
         // Penalty for bishop with same coloured pawns
         if (Piece == BISHOP)
-            score -= make_score(8, 12) * ei.pi->same_colored_pawn_count(s, Us); 
+            score -= BishopPawnsPenalty * ei.pi->pawns_on_same_color_squares(Us, s);
 
         // Bishop and knight outposts squares
         if (    (Piece == BISHOP || Piece == KNIGHT)
 
         // Bishop and knight outposts squares
         if (    (Piece == BISHOP || Piece == KNIGHT)