// Pawn penalties
constexpr Score Isolated = S(13, 16);
constexpr Score Backward = S(17, 11);
- constexpr Score Doubled = S(13, 40);
+ constexpr Score Doubled = S(13, 40);
// Connected pawn bonus by opposed, phalanx, #support and rank
Score Connected[2][2][3][RANK_NB];
MainThread* mainThread = (this == Threads.main() ? Threads.main() : nullptr);
double timeReduction = 1.0;
Color us = rootPos.side_to_move();
+ bool failedLow;
std::memset(ss-4, 0, 7 * sizeof(Stack));
for (int i = 4; i > 0; i--)
beta = VALUE_INFINITE;
if (mainThread)
- mainThread->bestMoveChanges = 0, mainThread->failedLow = false;
+ mainThread->bestMoveChanges = 0, failedLow = false;
size_t multiPV = Options["MultiPV"];
Skill skill(Options["Skill Level"]);
// Age out PV variability metric
if (mainThread)
- mainThread->bestMoveChanges *= 0.517, mainThread->failedLow = false;
+ mainThread->bestMoveChanges *= 0.517, failedLow = false;
// Save the last iteration's scores before first PV line is searched and
// all the move scores except the (new) PV are set to -VALUE_INFINITE.
if (mainThread)
{
- mainThread->failedLow = true;
+ failedLow = true;
Threads.stopOnPonderhit = false;
}
}
&& !Threads.stop
&& !Threads.stopOnPonderhit)
{
- const int F[] = { mainThread->failedLow,
+ const int F[] = { failedLow,
bestValue - mainThread->previousScore };
int improvingFactor = std::max(246, std::min(832, 306 + 119 * F[0] - 6 * F[1]));
constexpr bool PvNode = NT == PV;
const bool rootNode = PvNode && ss->ply == 0;
- // Check if we have an upcoming move which draws by repetition, or
+ // Check if we have an upcoming move which draws by repetition, or
// if the opponent had an alternative move earlier to this position.
if ( pos.rule50_count() >= 3
&& alpha < VALUE_DRAW
{
// Quiet best move: update move sorting heuristics
if (!pos.capture_or_promotion(bestMove))
- update_quiet_stats(pos, ss, bestMove, quietsSearched, quietCount,
- stat_bonus(depth + (bestValue > beta + PawnValueMg ? ONE_PLY : DEPTH_ZERO)));
+ update_quiet_stats(pos, ss, bestMove, quietsSearched, quietCount,
+ stat_bonus(depth + (bestValue > beta + PawnValueMg ? ONE_PLY : DEPTH_ZERO)));
else
update_capture_stats(pos, bestMove, capturesSearched, captureCount, stat_bonus(depth + ONE_PLY));