From aafc732bcbfbf847e2ce15bb5371902c1801de36 Mon Sep 17 00:00:00 2001 From: Disservin Date: Sat, 29 Mar 2025 11:42:26 +0100 Subject: [PATCH] Silence "may be used uninitialized" GCC warning Helps gcc silence the warning about ``` warning: 'added' may be used uninitialized [-Wmaybe-uninitialized] const IndexType offsetA0 = TransformedFeatureDimensions * added[0]; ``` closes https://github.com/official-stockfish/Stockfish/pull/5950 No functional change --- src/nnue/nnue_accumulator.cpp | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/nnue/nnue_accumulator.cpp b/src/nnue/nnue_accumulator.cpp index 0a3d95ad4..d693cc031 100644 --- a/src/nnue/nnue_accumulator.cpp +++ b/src/nnue/nnue_accumulator.cpp @@ -25,13 +25,25 @@ #include "../bitboard.h" #include "../position.h" #include "../types.h" -#include "nnue_architecture.h" #include "network.h" +#include "nnue_architecture.h" #include "nnue_common.h" #include "nnue_feature_transformer.h" namespace Stockfish::Eval::NNUE { +#if defined(__GNUC__) && !defined(__clang__) + #define sf_assume(cond) \ + do \ + { \ + if (!(cond)) \ + __builtin_unreachable(); \ + } while (0) +#else + // do nothing for other compilers + #define sf_assume(cond) +#endif + namespace { template(&(computed.*accPtr).accumulation[Perspective][0]);