Rafael Nadal emphasised his status as the favourite to win the US Open with a straight-sets win against a spirited Diego Schwartzman.
The world No 2 squandered double-break leads in the first and second sets as Schwartzman rallied each time to regain parity, only for the Spaniard to win both sets.
Nadal eventually defeated the Argentine 20th seed 6-4 7-5 6-2 on the Arthur Ashe Stadium after two hours and 47 minutes to close in on a fourth title at Flushing Meadows.
The Spaniard will face Italian Matteo Berrettini in the last four on Friday after the 24th seed reached his first Grand Slam semi-final with a five-set victory against Gael Monfils.
Nadal will move within one of Roger Federer’s record of 20 Grand Slam singles titles in men’s tennis and three clear of world No 1 Novak Djokovic if he wins his next two matches.
“It was straight sets but a big challenge,” Nadal said. “To see myself in the situation to lose both breaks in a row was tough.
“But I’m super happy with the way I accepted the challenge. Here I am, semi-finals, it means everything to me.
“Physically I’m fine. Today was a heavy day, big humidity, and I sweat a lot. I had some big moments at the end of the second set and beginning of the third, but the last few games I felt good again.
“Berrettini? I saw him play. He has big serves, big forehands, and is super confident. He makes big steps forward every week so it will be a big challenge. But now is the moment to keep going.”
Nadal was wayward with his forehand in the opening two sets from a dominant position as he made hard work of commanding positions at 4-0 and 5-1 in each.
But the three-time champion recovered his composure to win the pivotal points at the decisive stages to ensure he held a two-sets-to-love lead.
Nadal received treatment early in the third set by the trainer for a left forearm concern, but fears injury might thwart his pursuit of the title eased as he won the final four games of the match.
“Physically I am fine,” added Nadal. “Today was a very heavy day. Big humidity. I am this kind of player where I sweat a bit.