From fd8e88427b1268bfddc0b2ab72f639f758b7be0b Mon Sep 17 00:00:00 2001 From: protonspring Date: Wed, 3 Jun 2020 18:06:49 -0600 Subject: [PATCH] small speed-up in movegen pass color as a template parameter. closes https://github.com/official-stockfish/Stockfish/pull/2715 No functional change. --- src/movegen.cpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/movegen.cpp b/src/movegen.cpp index 81b8c929..b57f41a9 100644 --- a/src/movegen.cpp +++ b/src/movegen.cpp @@ -179,13 +179,12 @@ namespace { } - template - ExtMove* generate_moves(const Position& pos, ExtMove* moveList, Color us, - Bitboard target) { + template + ExtMove* generate_moves(const Position& pos, ExtMove* moveList, Bitboard target) { static_assert(Pt != KING && Pt != PAWN, "Unsupported piece type in generate_moves()"); - const Square* pl = pos.squares(us); + const Square* pl = pos.squares(Us); for (Square from = *pl; from != SQ_NONE; from = *++pl) { @@ -195,7 +194,7 @@ namespace { && !(attacks_bb(from) & target & pos.check_squares(Pt))) continue; - if (pos.blockers_for_king(~us) & from) + if (pos.blockers_for_king(~Us) & from) continue; } @@ -240,10 +239,10 @@ namespace { } moveList = generate_pawn_moves(pos, moveList, target); - moveList = generate_moves(pos, moveList, Us, target); - moveList = generate_moves(pos, moveList, Us, target); - moveList = generate_moves< ROOK, Checks>(pos, moveList, Us, target); - moveList = generate_moves< QUEEN, Checks>(pos, moveList, Us, target); + moveList = generate_moves(pos, moveList, target); + moveList = generate_moves(pos, moveList, target); + moveList = generate_moves(pos, moveList, target); + moveList = generate_moves(pos, moveList, target); if (Type != QUIET_CHECKS && Type != EVASIONS) { -- 2.39.2