X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fmovegen.cpp;h=f83dded7c4bea3d5d15429ba45f08b18fa597bdc;hb=eddfd46a1016c544cc0f18600677fe121f3cbbff;hp=edb36feabd796f83b2c0c9e2fa6cca25d7c69f6a;hpb=e68e135771f8ba4a94ef76b61c342bf2a52ee461;p=stockfish diff --git a/src/movegen.cpp b/src/movegen.cpp index edb36fea..f83dded7 100644 --- a/src/movegen.cpp +++ b/src/movegen.cpp @@ -476,10 +476,10 @@ namespace { Square from; Bitboard b; + const Square* ptr = pos.piece_list_begin(us, Piece); - for (int i = 0, e = pos.piece_count(us, Piece); i < e; i++) + while ((from = *ptr++) != SQ_NONE) { - from = pos.piece_list(us, Piece, i); b = pos.attacks_from(from) & target; SERIALIZE_MOVES(b); } @@ -502,10 +502,10 @@ namespace { Color us, Bitboard target, Bitboard pinned) { Square from; Bitboard b; + const Square* ptr = pos.piece_list_begin(us, Piece); - for (int i = 0, e = pos.piece_count(us, Piece); i < e; i++) + while ((from = *ptr++) != SQ_NONE) { - from = pos.piece_list(us, Piece, i); if (pinned && bit_is_set(pinned, from)) continue;