From 04be84e0e296d0829aa838c512fc95bf495ce629 Mon Sep 17 00:00:00 2001 From: mstembera Date: Mon, 14 Mar 2016 20:49:25 -0700 Subject: [PATCH] Simplify Safe Checks STC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 11796 W: 2211 L: 2074 D: 7511 LTC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 14324 W: 1935 L: 1806 D: 10583 Bench: 8075202 Resolves #600 --- src/evaluate.cpp | 32 ++++++++------------------------ 1 file changed, 8 insertions(+), 24 deletions(-) diff --git a/src/evaluate.cpp b/src/evaluate.cpp index d0401432..b380dbf0 100644 --- a/src/evaluate.cpp +++ b/src/evaluate.cpp @@ -424,36 +424,20 @@ namespace { b2 = pos.attacks_from(ksq) & safe; // Enemy queen safe checks - b = (b1 | b2) & ei.attackedBy[Them][QUEEN]; - if (b) - { - attackUnits += QueenCheck * popcount(b); - score -= Checked; - } + if ((b1 | b2) & ei.attackedBy[Them][QUEEN]) + attackUnits += QueenCheck, score -= Checked; // Enemy rooks safe checks - b = b1 & ei.attackedBy[Them][ROOK]; - if (b) - { - attackUnits += RookCheck * popcount(b); - score -= Checked; - } + if (b1 & ei.attackedBy[Them][ROOK]) + attackUnits += RookCheck, score -= Checked; // Enemy bishops safe checks - b = b2 & ei.attackedBy[Them][BISHOP]; - if (b) - { - attackUnits += BishopCheck * popcount(b); - score -= Checked; - } + if (b2 & ei.attackedBy[Them][BISHOP]) + attackUnits += BishopCheck, score -= Checked; // Enemy knights safe checks - b = pos.attacks_from(ksq) & ei.attackedBy[Them][KNIGHT] & safe; - if (b) - { - attackUnits += KnightCheck * popcount(b); - score -= Checked; - } + if (pos.attacks_from(ksq) & ei.attackedBy[Them][KNIGHT] & safe) + attackUnits += KnightCheck, score -= Checked; // Finally, extract the king danger score from the KingDanger[] // array and subtract the score from the evaluation. -- 2.39.2