mirror of
https://github.com/sockspls/badfish
synced 2025-05-01 01:03:09 +00:00
Revert all the SEE stuff
The speed up seems to introduce some functionality change. Revert to original master for now. bench: 4769737
This commit is contained in:
parent
7b0b463720
commit
2ed56f4d5f
1 changed files with 10 additions and 8 deletions
|
@ -79,8 +79,6 @@ PieceType min_attacker(const Bitboard* bb, const Square& to, const Bitboard& stm
|
||||||
if (Pt == ROOK || Pt == QUEEN)
|
if (Pt == ROOK || Pt == QUEEN)
|
||||||
attackers |= attacks_bb<ROOK>(to, occupied) & (bb[ROOK] | bb[QUEEN]);
|
attackers |= attacks_bb<ROOK>(to, occupied) & (bb[ROOK] | bb[QUEEN]);
|
||||||
|
|
||||||
attackers &= occupied; // Remove the just found attacker
|
|
||||||
|
|
||||||
return (PieceType)Pt;
|
return (PieceType)Pt;
|
||||||
}
|
}
|
||||||
return min_attacker<Pt+1>(bb, to, stmAttackers, occupied, attackers);
|
return min_attacker<Pt+1>(bb, to, stmAttackers, occupied, attackers);
|
||||||
|
@ -1197,21 +1195,25 @@ int Position::see(Move m, int asymmThreshold) const {
|
||||||
do {
|
do {
|
||||||
assert(slIndex < 32);
|
assert(slIndex < 32);
|
||||||
|
|
||||||
if (captured == KING) // Stop before processing a king capture
|
|
||||||
{
|
|
||||||
swapList[slIndex++] = QueenValueMg * 16;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add the new entry to the swap list
|
// Add the new entry to the swap list
|
||||||
swapList[slIndex] = -swapList[slIndex - 1] + PieceValue[MG][captured];
|
swapList[slIndex] = -swapList[slIndex - 1] + PieceValue[MG][captured];
|
||||||
slIndex++;
|
slIndex++;
|
||||||
|
|
||||||
// Locate and remove the next least valuable attacker
|
// Locate and remove the next least valuable attacker
|
||||||
captured = min_attacker<PAWN>(byTypeBB, to, stmAttackers, occupied, attackers);
|
captured = min_attacker<PAWN>(byTypeBB, to, stmAttackers, occupied, attackers);
|
||||||
|
attackers &= occupied; // Remove the just found attacker
|
||||||
stm = ~stm;
|
stm = ~stm;
|
||||||
stmAttackers = attackers & pieces(stm);
|
stmAttackers = attackers & pieces(stm);
|
||||||
|
|
||||||
|
if (captured == KING)
|
||||||
|
{
|
||||||
|
// Stop before processing a king capture
|
||||||
|
if (stmAttackers)
|
||||||
|
swapList[slIndex++] = QueenValueMg * 16;
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
} while (stmAttackers);
|
} while (stmAttackers);
|
||||||
|
|
||||||
// If we are doing asymmetric SEE evaluation and the same side does the first
|
// If we are doing asymmetric SEE evaluation and the same side does the first
|
||||||
|
|
Loading…
Add table
Reference in a new issue