Garbine Muguruza flashed some impressive form ahead of her French Open title defence with a 6-2 3-6 6-2 win over Venus Williams on Friday to reach the semifinals of the Italian Open in Rome.
The Spanish third seed, who reached the Rome semi-finals last year before going on to win her sole career grand slam, will next face eighth seeded Ukrainian Elina Svitolina, who earlier upset Czech second seed Karolina Pliskova 6-2 7-6(9).
Muguruza used a solid forehand to power through the first set during which she hit just eight unforced errors but gave up 20 in the second as Williams forced a decider.
The Spaniard fell behind in the third set before responding immediately with a break. She clinched the match when seven-times grand slam champion Williams sent a forehand wide.
With the win, world No 7 Muguruza will return to the top five in the rankings and be guaranteed a top-four seeding at Roland Garros for the year's second grand slam.
In other action, Romanian sixth seed Simona Halep swept into the semifinals of the Italian Open in Rome by beating Estonian qualifier Anett Kontaveit 6-2 6-4 on Friday.
She will now play Dutch 15th seed Kiki Bertens, who saw off Australian qualifier Daria Gavrilova 6-3 6-3, in Saturday's semi-final on the red Foro Italico clay.
"Today was a good match, but I can say that I could finish earlier in the second set," said Halep, who raced to a 3-0 lead in the first set and broke Kontaveit in the opening game of the second before winning.
"But she turned it a little bit around ... she came back for a few games, and she played really, really well."