- // Fail High
- if ( (tte->type() & BOUND_LOWER)
- && ttValue >= beta
- && tte->depth() >= depth
- && ttValue != VALUE_NONE) // Only in case of TT access race
- {
- // Update killers, we assume ttMove caused a cut-off
- if ( ttMove
- && !pos.is_capture_or_promotion(ttMove)
- && ttMove != ss->killers[0])
- {
- ss->killers[1] = ss->killers[0];
- ss->killers[0] = ttMove;
- }
- TT.refresh(tte);
- ss->currentMove = ttMove; // Can be MOVE_NONE
- return ttValue;
- }