From 340e9ea5096fb1c8e4a0914827f1af1d30075039 Mon Sep 17 00:00:00 2001 From: Sebastian Buchwald Date: Thu, 22 Nov 2018 23:50:03 +0100 Subject: [PATCH 1/1] Use emplace_back() in TB code The patch was tested for correctness by running bench with and without the change against current master, and the tablebase hit numbers were found to be identical in both cases. See the pull request comments for details: https://github.com/official-stockfish/Stockfish/pull/1826 No functional change. --- src/syzygy/tbprobe.cpp | 2 +- src/tt.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/syzygy/tbprobe.cpp b/src/syzygy/tbprobe.cpp index 8f1ac15f..d0b59f05 100644 --- a/src/syzygy/tbprobe.cpp +++ b/src/syzygy/tbprobe.cpp @@ -1277,7 +1277,7 @@ void Tablebases::init(const std::string& paths) { continue; // First on diagonal, second above else if (!off_A1H8(s1) && !off_A1H8(s2)) - bothOnDiagonal.push_back(std::make_pair(idx, s2)); + bothOnDiagonal.emplace_back(idx, s2); else MapKK[idx][s2] = code++; diff --git a/src/tt.cpp b/src/tt.cpp index 53e78595..716d13e0 100644 --- a/src/tt.cpp +++ b/src/tt.cpp @@ -84,7 +84,7 @@ void TranspositionTable::clear() { for (size_t idx = 0; idx < Options["Threads"]; idx++) { - threads.push_back(std::thread([this, idx]() { + threads.emplace_back([this, idx]() { // Thread binding gives faster search on systems with a first-touch policy if (Options["Threads"] > 8) @@ -97,7 +97,7 @@ void TranspositionTable::clear() { stride : clusterCount - start; std::memset(&table[start], 0, len * sizeof(Cluster)); - })); + }); } for (std::thread& th: threads) -- 2.39.2