Speedup splat_moves on avx512icl

STC
```
LLR: 5.45 (-2.94,2.94) <0.00,2.00>
Total: 612192 W: 158602 L: 157260 D: 296330
Ptnml(0-2): 1634, 67783, 166027, 68911, 1741
```

@Torom measured:
```
sf_base =  2380902 +/-   1016 (95%)
sf_test =  2391426 +/-   1065 (95%)
diff    =    10524 +/-   1336 (95%)
speedup = 0.44203% +/- 0.056% (95%)
```

I've verified that `_mm512_slli_epi16(v, 0)` gets optimized out in GCC
9+ and clang 4+. Added constants to types.h so that people messing
around with the layout of `Move` don't have to know about this part of
the code.

closes https://github.com/official-stockfish/Stockfish/pull/6670

No functional change
This commit is contained in:
anematode
2026-03-18 20:49:20 +01:00
committed by Disservin
parent add173263d
commit d173a0655d
3 changed files with 27 additions and 39 deletions
+3
View File
@@ -473,6 +473,9 @@ class Move {
std::size_t operator()(const Move& m) const { return make_key(m.data); }
};
static constexpr int FromSqShift = 6;
static constexpr int ToSqShift = 0;
protected:
std::uint16_t data;
};