X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fevaluate.cpp;h=745d1a3009c2dd64b5ae8ccce68d739bb4804a85;hp=4419a64bedab3e6f586fc6386e1e373e01b2cd33;hb=a492a9dd079d95faf136a744ff6d47a3d109ad68;hpb=875a8079bc142ca92027b07427d72c03fe5268a5 diff --git a/src/evaluate.cpp b/src/evaluate.cpp index 4419a64b..745d1a30 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -453,7 +453,7 @@ namespace { // Increase bonus if supported by pawn, especially if the opponent has // no minor piece which can exchange the outpost piece. - if (bonus && bit_is_set(ei.attackedBy[Us][PAWN], s)) + if (bonus && (ei.attackedBy[Us][PAWN] & s)) { if ( !pos.pieces(KNIGHT, Them) && !(same_color_squares(s) & pos.pieces(BISHOP, Them))) @@ -514,7 +514,7 @@ namespace { // Decrease score if we are attacked by an enemy pawn. Remaining part // of threat evaluation must be done later when we have full attack info. - if (bit_is_set(ei.attackedBy[Them][PAWN], s)) + if (ei.attackedBy[Them][PAWN] & s) score -= ThreatenedByPawnPenalty[Piece]; // Bishop and knight outposts squares @@ -944,7 +944,7 @@ namespace { // Check if (without even considering any obstacles) we're too far away or doubled if ( pliesToQueen[winnerSide] + 3 <= pliesToGo || (squares_in_front_of(loserSide, s) & pos.pieces(PAWN, loserSide))) - xor_bit(&candidates, s); + candidates ^= s; } // If any candidate is already a passed pawn it _may_ promote in time. We give up.