From: Marco Costalba Date: Mon, 21 Apr 2014 18:54:55 +0000 (+0200) Subject: Revert "Generalize shift_bb() to handle double pushes" X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=a66e6e5ad903218a612fdaaf027999b9d48a0294;hp=56273fca1edc51ffa0efc73715609f428c000c97 Revert "Generalize shift_bb() to handle double pushes" Seems to intorduce some compiler warning as reported by Gary. Warning seems bogus, but revert anyhow. No functional change. --- diff --git a/src/bitboard.h b/src/bitboard.h index 888e9690..98142683 100644 --- a/src/bitboard.h +++ b/src/bitboard.h @@ -130,9 +130,10 @@ inline int rank_distance(Square s1, Square s2) { template inline Bitboard shift_bb(Bitboard b) { - return Delta == DELTA_NE ? (b & ~FileHBB) << 9 : Delta == DELTA_SE ? (b & ~FileHBB) >> 7 + return Delta == DELTA_N ? b << 8 : Delta == DELTA_S ? b >> 8 + : Delta == DELTA_NE ? (b & ~FileHBB) << 9 : Delta == DELTA_SE ? (b & ~FileHBB) >> 7 : Delta == DELTA_NW ? (b & ~FileABB) << 7 : Delta == DELTA_SW ? (b & ~FileABB) >> 9 - : Delta > 0 ? b << Delta : b >> -Delta; + : 0; } diff --git a/src/evaluate.cpp b/src/evaluate.cpp index b1422ac6..8eb03648 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -702,9 +702,7 @@ namespace { template int evaluate_space(const Position& pos, const EvalInfo& ei) { - const Color Them = (Us == WHITE ? BLACK : WHITE); - const Square Down = (Us == WHITE ? DELTA_S : DELTA_N); - const Square DownDown = (Us == WHITE ? DELTA_SS : DELTA_NN); + const Color Them = (Us == WHITE ? BLACK : WHITE); // Find the safe squares for our pieces inside the area defined by // SpaceMask[]. A square is unsafe if it is attacked by an enemy @@ -716,8 +714,8 @@ namespace { // Find all squares which are at most three squares behind some friendly pawn Bitboard behind = pos.pieces(Us, PAWN); - behind |= shift_bb< Down>(behind); - behind |= shift_bb(behind); + behind |= (Us == WHITE ? behind >> 8 : behind << 8); + behind |= (Us == WHITE ? behind >> 16 : behind << 16); // Since SpaceMask[Us] is fully on our half of the board assert(unsigned(safe >> (Us == WHITE ? 32 : 0)) == 0);