X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fmovegen.cpp;h=64da7359f3b2e80d32c208aa7eb542c34adf873c;hp=64c44f28a0eba0d4d985854339e3aa50bd2f130f;hb=b6b8c62ba517b566facd3297c7bd7f161b891e2b;hpb=db57b5f8f474973c5d9128c6444973733043215f;ds=sidebyside diff --git a/src/movegen.cpp b/src/movegen.cpp index 64c44f28..64da7359 100644 --- a/src/movegen.cpp +++ b/src/movegen.cpp @@ -91,19 +91,19 @@ namespace { template inline Bitboard move_pawns(Bitboard p) { - return Delta == DELTA_N ? p << 8 : Delta == DELTA_S ? p >> 8 : - Delta == DELTA_NE ? p << 9 : Delta == DELTA_SE ? p >> 7 : - Delta == DELTA_NW ? p << 7 : Delta == DELTA_SW ? p >> 9 : p; + return Delta == DELTA_N ? p << 8 + : Delta == DELTA_S ? p >> 8 + : Delta == DELTA_NE ? (p & ~FileHBB) << 9 + : Delta == DELTA_SE ? (p & ~FileHBB) >> 7 + : Delta == DELTA_NW ? (p & ~FileABB) << 7 + : Delta == DELTA_SW ? (p & ~FileABB) >> 9 : p; } template inline MoveStack* generate_pawn_captures(MoveStack* mlist, Bitboard pawns, Bitboard target) { - const Bitboard TFileABB = ( Delta == DELTA_NE - || Delta == DELTA_SE ? FileABB : FileHBB); - - Bitboard b = move_pawns(pawns) & target & ~TFileABB; + Bitboard b = move_pawns(pawns) & target; SERIALIZE_PAWNS(b, -Delta); return mlist; } @@ -112,14 +112,8 @@ namespace { template inline MoveStack* generate_promotions(MoveStack* mlist, Bitboard pawnsOn7, Bitboard target, Square ksq) { - const Bitboard TFileABB = ( Delta == DELTA_NE - || Delta == DELTA_SE ? FileABB : FileHBB); - Bitboard b = move_pawns(pawnsOn7) & target; - if (Delta != DELTA_N && Delta != DELTA_S) - b &= ~TFileABB; - while (b) { Square to = pop_1st_bit(&b);