Austria's Dominic Thiem dumped seven-times champion Rafael Nadal out of the Italian Open 6-4 6-3 on Friday to reach the semi-finals, but will have to wait to find out his opponent at the Foro Italico.
The Austrian will face either world number two Novak Djokovic or Argentina's Juan Martin del Potro, whose quarter-final was suspended till Saturday after rain halted play with the Serb leading del Potro 6-1 1-2.
Beaten twice by Nadal in the space of a month, in the Barcelona and Madrid Open finals, Thiem took his revenge by handing the 30-year-old Spaniard a first clay court defeat of the season in Rome.
The upset, after one hour and 51 minutes, ended Nadal's 17-match unbeaten run on clay.
The aggressive eighth seed had Nadal rattled from the start and broke the Spaniard in the first and fifth games to go 5-1 up before Nadal fought back to 5-4.
Thiem then broke for a 4-3 lead in the second set with successive backhand and forehand winners and held on to leave Nadal serving in vain to stay in the match. The Austrian clinched victory on his first matchpoint as Nadal hit wide.
The Spaniard will now focus on the French Open, where he will be aiming for a 10th title at Roland Garros.
Despite the loss to Thiem, Nadal's current form makes him the favourite heading into the second Grand Slam of the year.
“I’m very happy with how I played during these four weeks and now remains Roland Garros,” said Nadal.
Rising German star Alexander Zverev earlier reached the semi-finals with a 7-6(4) 6-1 defeat of world number six Milos Raonic.
Zverev, 20, will face John Isner for a place in the final after the American beat Croatian Marin Cilic 7-6(3) 2-6 7-6(2).
"It's another stepping stone in my career," Zverev told the ATP's website. "I feel like I have played very well today. I returned very well.
"So I'm happy to be in the semis and playing John tomorrow, who I know very well from our Saddlebrook (Florida) days. It's going to be a great match."