mirror of
https://github.com/sockspls/badfish
synced 2025-04-30 08:43:09 +00:00
Change exclusion key setup
Should depend on which move is excluded. This allow us to remove the dedicated Position::exclusion_key(). STC: LLR: 2.95 (-2.94,2.94) [-3.00,1.00] Total: 59814 W: 11136 L: 11083 D: 37595 LTC: LLR: 2.96 (-2.94,2.94) [-3.00,1.00] Total: 31023 W: 4187 L: 4080 D: 22756 bench 7553379
This commit is contained in:
parent
7f2eb10e93
commit
13b4444d9e
3 changed files with 1 additions and 6 deletions
|
@ -40,11 +40,8 @@ namespace Zobrist {
|
|||
Key enpassant[FILE_NB];
|
||||
Key castling[CASTLING_RIGHT_NB];
|
||||
Key side;
|
||||
Key exclusion;
|
||||
}
|
||||
|
||||
Key Position::exclusion_key() const { return st->key ^ Zobrist::exclusion; }
|
||||
|
||||
namespace {
|
||||
|
||||
const string PieceToChar(" PNBRQK pnbrqk");
|
||||
|
@ -132,7 +129,6 @@ void Position::init() {
|
|||
}
|
||||
|
||||
Zobrist::side = rng.rand<Key>();
|
||||
Zobrist::exclusion = rng.rand<Key>();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -150,7 +150,6 @@ public:
|
|||
// Accessing hash keys
|
||||
Key key() const;
|
||||
Key key_after(Move m) const;
|
||||
Key exclusion_key() const;
|
||||
Key material_key() const;
|
||||
Key pawn_key() const;
|
||||
|
||||
|
|
|
@ -622,7 +622,7 @@ namespace {
|
|||
// search to overwrite a previous full search TT value, so we use a different
|
||||
// position key in case of an excluded move.
|
||||
excludedMove = ss->excludedMove;
|
||||
posKey = excludedMove ? pos.exclusion_key() : pos.key();
|
||||
posKey = pos.key() ^ Key(excludedMove);
|
||||
tte = TT.probe(posKey, ttHit);
|
||||
ttValue = ttHit ? value_from_tt(tte->value(), ss->ply) : VALUE_NONE;
|
||||
ttMove = rootNode ? thisThread->rootMoves[thisThread->PVIdx].pv[0]
|
||||
|
|
Loading…
Add table
Reference in a new issue