/* fallthrough */
case QUIET:
- while ( cur < endMoves
- && (!skipQuiets || cur->value >= VALUE_ZERO))
- {
- move = *cur++;
-
- if ( move != ttMove
- && move != killers[0]
- && move != killers[1]
- && move != countermove)
- return move;
- }
+ if (!skipQuiets)
+ while (cur < endMoves)
+ {
+ move = *cur++;
+
+ if ( move != ttMove
+ && move != killers[0]
+ && move != killers[1]
+ && move != countermove)
+ return move;
+ }
++stage;
cur = moves; // Point to beginning of bad captures
/* fallthrough */
case QSEARCH_RECAPTURES:
cur = moves;
endMoves = generate<CAPTURES>(pos, cur);
- score<CAPTURES>();
++stage;
/* fallthrough */
case QRECAPTURES:
while (cur < endMoves)
{
- move = pick_best(cur++, endMoves);
+ move = *cur++;
if (to_sq(move) == recaptureSquare)
return move;
}