- // A pawn move is a promotion iff the destination square is
- // on the 8/1th rank.
- if (( (square_rank(to) == RANK_8 && us == WHITE)
- ||(square_rank(to) == RANK_1 && us != WHITE)) != bool(move_is_promotion(m)))
- return false;
-
- // The promotion piece, if any, must be valid
- if (move_promotion_piece(m) > QUEEN || move_promotion_piece(m) == PAWN)
+ // We have already handled promotion moves, so destination
+ // cannot be on the 8/1th rank.
+ if (square_rank(to) == RANK_8 || square_rank(to) == RANK_1)