From 2f5aaf7de670b489e6a9635ae22713ed48e9f156 Mon Sep 17 00:00:00 2001 From: Marco Costalba Date: Sat, 8 Feb 2014 13:21:50 +0100 Subject: [PATCH] Rewrite previous patch removing the macro No functional change. --- src/search.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/search.cpp b/src/search.cpp index 95f1332e..0b57c1fe 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -51,12 +51,6 @@ using std::string; using Eval::evaluate; using namespace Search; -// Fast wrapper for common case of pos.gives_check() -#define FAST_GIVES_CHECK(pos, m, ci) \ - ((type_of(m) == NORMAL && ci.dcCandidates == 0) \ - ? (ci.checkSq[type_of(pos.piece_on(from_sq(m)))] & to_sq(m)) \ - : pos.gives_check(m, ci)) - namespace { // Set to true to force running with one thread. Used for debugging @@ -760,7 +754,11 @@ moves_loop: // When in check and at SpNode search starts from here ext = DEPTH_ZERO; captureOrPromotion = pos.capture_or_promotion(move); - givesCheck = FAST_GIVES_CHECK(pos, move, ci); + + givesCheck = type_of(move) == NORMAL && !ci.dcCandidates + ? ci.checkSq[type_of(pos.piece_on(from_sq(move)))] & to_sq(move) + : pos.gives_check(move, ci); + dangerous = givesCheck || type_of(move) != NORMAL || pos.advanced_pawn_push(move); @@ -1140,7 +1138,9 @@ moves_loop: // When in check and at SpNode search starts from here { assert(is_ok(move)); - givesCheck = FAST_GIVES_CHECK(pos, move, ci); + givesCheck = type_of(move) == NORMAL && !ci.dcCandidates + ? ci.checkSq[type_of(pos.piece_on(from_sq(move)))] & to_sq(move) + : pos.gives_check(move, ci); // Futility pruning if ( !PvNode -- 2.39.2