Rome - Germany's Alexander Zverev kept his Italian Open title defence on track but needed eight match points to get past Briton Kyle Edmund and reach the quarter-finals.
Zverev won through 7-5, 7-6 (13/11) and will play Belgian David Goffin for a place in the last four.
Ninth seed Goffin advanced after Argentine fifth seed Juan Martin del Potro retired while trailing 6-2, 4-5 with a groin injury.
For 21-year-old Zverev it was an 11th consecutive win after back-to-back title runs at Munich and Madrid.
Results from the ATP and WTA Masters tournament in Rome on Thursday (x denotes seeded player):
Simona Halep (ROU x1) bt Madison Keys (USA x13) -- walkover
Maria Sharapova (RUS) bt Daria Gavrilova (AUS) 6-3, 6-4
Jelena Ostapenko (LAT x5) bt Johanna Konta (GBR) 2-6, 6-3, 6-4
Angelique Kerber (GER x11) bt Maria Sakkari (GRE) 6-1, 6-1
Elina Svitolina (UKR x4) bt Daria Kasatkina (RUS x14) 0-6, 6-3, 6-2
Anett Kontaveit (EST) bt Venus Williams (USA x8) 6-2, 7-6 (7/3)
Rafael Nadal (ESP x1) bt Denis Shapovalov (CAN) 6-4, 6-1
Fabio Fognini (ITA) bt Peter Gojowczyk (GER) 6-4, 6-4
Pablo Carreno Busta (ESP x10) bt Aljaz Bedene (SLO) 6-4, 6-7 (3/7), 6-2
Marin Cilic (CRO x4) bt Benoit Paire (FRA) 6-3, 6-4
David Goffin (BEL x9) bt Juan Martin del Potro (ARG x5) 6-2, 4-5 -- retired
Alexander Zverev (GER x2) bt Kyle Edmund (GBR) 7-5, 7-6 (13/11)