X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fpawns.cpp;h=8b44587f6962ccfc0e05ca1a7b91e4a15d84a85e;hp=47f74f84ee77888d60dacf0e03251977d3cc82ff;hb=cccf3c815c2f2be884fac4248a2be91b6823df8a;hpb=e6310b3469b07b6bbecf8d8f75367a655090f22b diff --git a/src/pawns.cpp b/src/pawns.cpp index 47f74f84..8b44587f 100644 --- a/src/pawns.cpp +++ b/src/pawns.cpp @@ -116,7 +116,7 @@ namespace { Bitboard ourPawns = pos.pieces(Us , PAWN); Bitboard theirPawns = pos.pieces(Them, PAWN); - e->passedPawns[Us] = 0; + e->passedPawns[Us] = e->pawnAttacksSpan[Us] = 0; e->kingSquares[Us] = SQ_NONE; e->semiopenFiles[Us] = 0xFF; e->pawnAttacks[Us] = shift_bb(ourPawns) | shift_bb(ourPawns); @@ -133,6 +133,8 @@ namespace { // This file cannot be semi-open e->semiopenFiles[Us] &= ~(1 << f); + e->pawnAttacksSpan[Us] |= pawn_attack_span(Us, s); + // Flag the pawn neighbours = ourPawns & adjacent_files_bb(f); doubled = ourPawns & forward_bb(Us, s); @@ -243,6 +245,7 @@ Entry* probe(const Position& pos) { e->key = key; e->score = evaluate(pos, e) - evaluate(pos, e); + e->asymmetry = popcount(e->semiopenFiles[WHITE] ^ e->semiopenFiles[BLACK]); return e; }