mirror of
https://github.com/official-stockfish/Stockfish.git
synced 2026-07-23 05:07:14 +00:00
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:
@@ -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;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user