-inline bool Position::passed_pawn_push(Move m) const {
-
- return type_of(moved_piece(m)) == PAWN
- && pawn_passed(sideToMove, to_sq(m));
+inline bool Position::advanced_pawn_push(Move m) const {
+ return pieces(PAWN) & TheirHalf[sideToMove] & from_sq(m);